[llvm-branch-commits] [llvm-branch] r98861 - in /llvm/branches/Apple/Morbo: ./ lib/Target/X86/X86MCCodeEmitter.cpp test/MC/AsmParser/X86/x86_64-new-encoder.s

Bill Wendling isanbard at gmail.com
Thu Mar 18 13:18:49 PDT 2010


Author: void
Date: Thu Mar 18 15:18:49 2010
New Revision: 98861

URL: http://llvm.org/viewvc/llvm-project?rev=98861&view=rev
Log:
$ svn merge -c 98855 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r98855 into '.':
U    test/MC/AsmParser/X86/x86_64-new-encoder.s
U    lib/Target/X86/X86MCCodeEmitter.cpp


Modified:
    llvm/branches/Apple/Morbo/   (props changed)
    llvm/branches/Apple/Morbo/lib/Target/X86/X86MCCodeEmitter.cpp
    llvm/branches/Apple/Morbo/test/MC/AsmParser/X86/x86_64-new-encoder.s

Propchange: llvm/branches/Apple/Morbo/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar 18 15:18:49 2010
@@ -1,2 +1,2 @@
 /llvm/branches/Apple/Hermes:96832,96835,96858,96870,96876,96879
-/llvm/trunk:98602,98604,98612,98615-98616,98675,98686,98743-98744,98773,98778,98780,98810,98835,98839
+/llvm/trunk:98602,98604,98612,98615-98616,98675,98686,98743-98744,98773,98778,98780,98810,98835,98839,98855

Modified: llvm/branches/Apple/Morbo/lib/Target/X86/X86MCCodeEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Morbo/lib/Target/X86/X86MCCodeEmitter.cpp?rev=98861&r1=98860&r2=98861&view=diff
==============================================================================
--- llvm/branches/Apple/Morbo/lib/Target/X86/X86MCCodeEmitter.cpp (original)
+++ llvm/branches/Apple/Morbo/lib/Target/X86/X86MCCodeEmitter.cpp Thu Mar 18 15:18:49 2010
@@ -278,7 +278,10 @@
     // Emit the normal disp32 encoding.
     EmitByte(ModRMByte(2, RegOpcodeField, 4), CurByte, OS);
     ForceDisp32 = true;
-  } else if (Disp.getImm() == 0 && BaseReg != X86::EBP) {
+  } else if (Disp.getImm() == 0 &&
+             // Base reg can't be anything that ends up with '5' as the base
+             // reg, it is the magic [*] nomenclature that indicates no base.
+             BaseRegNo != N86::EBP) {
     // Emit no displacement ModR/M byte
     EmitByte(ModRMByte(0, RegOpcodeField, 4), CurByte, OS);
   } else if (isDisp8(Disp.getImm())) {

Modified: llvm/branches/Apple/Morbo/test/MC/AsmParser/X86/x86_64-new-encoder.s
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Morbo/test/MC/AsmParser/X86/x86_64-new-encoder.s?rev=98861&r1=98860&r2=98861&view=diff
==============================================================================
--- llvm/branches/Apple/Morbo/test/MC/AsmParser/X86/x86_64-new-encoder.s (original)
+++ llvm/branches/Apple/Morbo/test/MC/AsmParser/X86/x86_64-new-encoder.s Thu Mar 18 15:18:49 2010
@@ -35,3 +35,7 @@
 // CHECK:  fixup A - offset: 3, value: _foo at GOTPCREL, kind: reloc_riprel_4byte_movq_load
 movq _foo at GOTPCREL(%rip), %rax
 
+
+// CHECK: movq	(%r13,%rax,8), %r13
+// CHECK:  encoding: [0x4d,0x8b,0x6c,0xc5,0x00]
+movq 0x00(%r13,%rax,8),%r13





More information about the llvm-branch-commits mailing list