From d353c45eafd1754f0c37bdc8960635e98a60e2db Mon Sep 17 00:00:00 2001 From: Marina Yatsina Date: Tue, 11 Aug 2015 11:28:10 +0000 Subject: [PATCH] [X86] Fix REPE, REPZ, REPNZ for intel syntax REPE, REPZ, REPNZ, REPNE should have mnemonics for Intel syntax as well. Currently using these instructions causes compilation errors for Intel syntax. Differential Revision: http://reviews.llvm.org/D11794 llvm-svn: 244584 --- llvm/lib/Target/X86/X86InstrInfo.td | 6 +++--- llvm/test/MC/X86/intel-syntax.s | 13 +++++++++++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td index 8e1d5b7..fff094d 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.td +++ b/llvm/lib/Target/X86/X86InstrInfo.td @@ -2540,9 +2540,9 @@ def : MnemonicAlias<"pusha", "pushaw", "att">, Requires<[In16BitMode]>; def : MnemonicAlias<"popa", "popal", "att">, Requires<[In32BitMode]>; def : MnemonicAlias<"pusha", "pushal", "att">, Requires<[In32BitMode]>; -def : MnemonicAlias<"repe", "rep", "att">; -def : MnemonicAlias<"repz", "rep", "att">; -def : MnemonicAlias<"repnz", "repne", "att">; +def : MnemonicAlias<"repe", "rep">; +def : MnemonicAlias<"repz", "rep">; +def : MnemonicAlias<"repnz", "repne">; def : MnemonicAlias<"ret", "retw", "att">, Requires<[In16BitMode]>; def : MnemonicAlias<"ret", "retl", "att">, Requires<[In32BitMode]>; diff --git a/llvm/test/MC/X86/intel-syntax.s b/llvm/test/MC/X86/intel-syntax.s index 98bec04..8be9642 100644 --- a/llvm/test/MC/X86/intel-syntax.s +++ b/llvm/test/MC/X86/intel-syntax.s @@ -688,3 +688,16 @@ imul rbx, 123 // CHECK: imulw $123, %bx // CHECK: imull $123, %ebx // CHECK: imulq $123, %rbx + +repe cmpsb +repz cmpsb +repne cmpsb +repnz cmpsb +// CHECK: rep +// CHECK: cmpsb %es:(%rdi), (%rsi) +// CHECK: rep +// CHECK: cmpsb %es:(%rdi), (%rsi) +// CHECK: repne +// CHECK: cmpsb %es:(%rdi), (%rsi) +// CHECK: repne +// CHECK: cmpsb %es:(%rdi), (%rsi) -- 2.7.4