aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-11-01 23:07:52 +0000
committerChris Lattner <sabre@nondot.org>2010-11-01 23:07:52 +0000
commitefd8dadb4f5849e814fe9c2cf95f31efd28f48bd (patch)
treec4c23f171a63b60373954c9ce7cb4d60ad127239
parentb796bbb6de19872c0c1921b8b3f05206dd33c97d (diff)
rearrange a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117967 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrInfo.td105
1 files changed, 55 insertions, 50 deletions
diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td
index 2eaf328ffe..9908ade8c1 100644
--- a/lib/Target/X86/X86InstrInfo.td
+++ b/lib/Target/X86/X86InstrInfo.td
@@ -1255,58 +1255,9 @@ include "X86InstrSystem.td"
include "X86InstrCompiler.td"
//===----------------------------------------------------------------------===//
-// Assembler Aliases
+// Assembler Mnemonic Aliases
//===----------------------------------------------------------------------===//
-// movsx aliases
-def : InstAlias<(outs GR16:$dst), (ins GR8 :$src),
- "movsx $src, $dst",
- (MOVSX16rr8W GR16:$dst, GR8:$src)>;
-def : InstAlias<(outs GR16:$dst), (ins i8mem:$src),
- "movsx $src, $dst",
- (MOVSX16rm8W GR16:$dst, i8mem:$src)>;
-
-def : InstAlias<(outs GR32:$dst), (ins GR8 :$src),
- "movsx $src, $dst",
- (MOVSX32rr8 GR32:$dst, GR8:$src)>;
-def : InstAlias<(outs GR32:$dst), (ins GR16:$src),
- "movsx $src, $dst",
- (MOVSX32rr16 GR32:$dst, GR16:$src)>;
-
-def : InstAlias<(outs GR64:$dst), (ins GR8 :$src),
- "movsx $src, $dst",
- (MOVSX64rr8 GR64:$dst, GR8:$src)>;
-def : InstAlias<(outs GR64:$dst), (ins GR16:$src),
- "movsx $src, $dst",
- (MOVSX64rr16 GR64:$dst, GR16:$src)>;
-def : InstAlias<(outs GR64:$dst), (ins GR32:$src),
- "movsx $src, $dst",
- (MOVSX64rr32 GR64:$dst, GR32:$src)>;
-
-// movzx aliases
-def : InstAlias<(outs GR16:$dst), (ins GR8 :$src),
- "movzx $src, $dst",
- (MOVZX16rr8W GR16:$dst, GR8:$src)>;
-def : InstAlias<(outs GR16:$dst), (ins i8mem:$src),
- "movzx $src, $dst",
- (MOVZX16rm8W GR16:$dst, i8mem:$src)>;
-
-def : InstAlias<(outs GR32:$dst), (ins GR8 :$src),
- "movzx $src, $dst",
- (MOVZX32rr8 GR32:$dst, GR8:$src)>;
-def : InstAlias<(outs GR32:$dst), (ins GR16:$src),
- "movzx $src, $dst",
- (MOVZX32rr16 GR32:$dst, GR16:$src)>;
-
-def : InstAlias<(outs GR64:$dst), (ins GR8 :$src),
- "movzx $src, $dst",
- (MOVZX64rr8_Q GR64:$dst, GR8:$src)>;
-def : InstAlias<(outs GR64:$dst), (ins GR16:$src),
- "movzx $src, $dst",
- (MOVZX64rr16_Q GR64:$dst, GR16:$src)>;
-// Note: No GR32->GR64 movzx form.
-
-
def : MnemonicAlias<"call", "calll">, Requires<[In32BitMode]>;
def : MnemonicAlias<"call", "callq">, Requires<[In64BitMode]>;
@@ -1414,3 +1365,57 @@ defm : IntegerCondCodeMnemonicAlias<"cmov", "w">;
defm : IntegerCondCodeMnemonicAlias<"cmov", "l">;
defm : IntegerCondCodeMnemonicAlias<"cmov", "q">;
+
+//===----------------------------------------------------------------------===//
+// Assembler Instruction Aliases
+//===----------------------------------------------------------------------===//
+
+// movsx aliases
+def : InstAlias<(outs GR16:$dst), (ins GR8 :$src),
+ "movsx $src, $dst",
+ (MOVSX16rr8W GR16:$dst, GR8:$src)>;
+def : InstAlias<(outs GR16:$dst), (ins i8mem:$src),
+ "movsx $src, $dst",
+ (MOVSX16rm8W GR16:$dst, i8mem:$src)>;
+
+def : InstAlias<(outs GR32:$dst), (ins GR8 :$src),
+ "movsx $src, $dst",
+ (MOVSX32rr8 GR32:$dst, GR8:$src)>;
+def : InstAlias<(outs GR32:$dst), (ins GR16:$src),
+ "movsx $src, $dst",
+ (MOVSX32rr16 GR32:$dst, GR16:$src)>;
+
+def : InstAlias<(outs GR64:$dst), (ins GR8 :$src),
+ "movsx $src, $dst",
+ (MOVSX64rr8 GR64:$dst, GR8:$src)>;
+def : InstAlias<(outs GR64:$dst), (ins GR16:$src),
+ "movsx $src, $dst",
+ (MOVSX64rr16 GR64:$dst, GR16:$src)>;
+def : InstAlias<(outs GR64:$dst), (ins GR32:$src),
+ "movsx $src, $dst",
+ (MOVSX64rr32 GR64:$dst, GR32:$src)>;
+
+// movzx aliases
+def : InstAlias<(outs GR16:$dst), (ins GR8 :$src),
+ "movzx $src, $dst",
+ (MOVZX16rr8W GR16:$dst, GR8:$src)>;
+def : InstAlias<(outs GR16:$dst), (ins i8mem:$src),
+ "movzx $src, $dst",
+ (MOVZX16rm8W GR16:$dst, i8mem:$src)>;
+
+def : InstAlias<(outs GR32:$dst), (ins GR8 :$src),
+ "movzx $src, $dst",
+ (MOVZX32rr8 GR32:$dst, GR8:$src)>;
+def : InstAlias<(outs GR32:$dst), (ins GR16:$src),
+ "movzx $src, $dst",
+ (MOVZX32rr16 GR32:$dst, GR16:$src)>;
+
+def : InstAlias<(outs GR64:$dst), (ins GR8 :$src),
+ "movzx $src, $dst",
+ (MOVZX64rr8_Q GR64:$dst, GR8:$src)>;
+def : InstAlias<(outs GR64:$dst), (ins GR16:$src),
+ "movzx $src, $dst",
+ (MOVZX64rr16_Q GR64:$dst, GR16:$src)>;
+// Note: No GR32->GR64 movzx form.
+
+