aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-10-03 19:34:18 +0000
committerChris Lattner <sabre@nondot.org>2004-10-03 19:34:18 +0000
commit0fa206615ae25d3a9120a1d7e61667c88cba3ae1 (patch)
treea625e482d4b4f92d1caf46840b9c6993f1feee9c /lib
parentc28d7ad257bbba300d5cd5fb6443dd0c7c0322ad (diff)
downloadexternal_llvm-0fa206615ae25d3a9120a1d7e61667c88cba3ae1.zip
external_llvm-0fa206615ae25d3a9120a1d7e61667c88cba3ae1.tar.gz
external_llvm-0fa206615ae25d3a9120a1d7e61667c88cba3ae1.tar.bz2
Add initial support for variants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16635 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/Target.td12
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/Target/Target.td b/lib/Target/Target.td
index 7219395..522a46c 100644
--- a/lib/Target/Target.td
+++ b/lib/Target/Target.td
@@ -188,6 +188,14 @@ class AsmWriter {
// InstFormatName - AsmWriters can specify the name of the format string to
// print instructions with.
string InstFormatName = "AsmString";
+
+ // Variant - AsmWriters can be of multiple different variants. Variants are
+ // used to support targets that need to emit assembly code in ways that are
+ // mostly the same for different targets, but have minor differences in
+ // syntax. If the asmstring contains {|} characters in them, this integer
+ // will specify which alternative to use. For example "{x|y|z}" with Variant
+ // == 1, will expand to "y".
+ int Variant = 0;
}
def DefaultAsmWriter : AsmWriter;
@@ -207,8 +215,8 @@ class Target {
// InstructionSet - Instruction set description for this target.
InstrInfo InstructionSet;
- // AssemblyWriter - The AsmWriter instance to use for this target.
- AsmWriter AssemblyWriter = DefaultAsmWriter;
+ // AssemblyWriters - The AsmWriter instances available for this target.
+ list<AsmWriter> AssemblyWriters = [DefaultAsmWriter];
}