diff options
author | Owen Anderson <resistor@mac.com> | 2008-09-04 16:48:33 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2008-09-04 16:48:33 +0000 |
commit | a2a90a052147b467411873dbc94879ee4e41e969 (patch) | |
tree | be6319c6a7177dfe457be31c10a1c38519a49301 | |
parent | 404e854a4bc184d46c235708a901770dba1a903d (diff) | |
download | external_llvm-a2a90a052147b467411873dbc94879ee4e41e969.tar.gz external_llvm-a2a90a052147b467411873dbc94879ee4e41e969.tar.bz2 external_llvm-a2a90a052147b467411873dbc94879ee4e41e969.zip |
Fix the ordering of operands to the store (inverted relative to LLVM IR), and fix the testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55777 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/X86FastISel.cpp | 6 | ||||
-rw-r--r-- | test/CodeGen/X86/fast-isel-mem.ll | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/Target/X86/X86FastISel.cpp b/lib/Target/X86/X86FastISel.cpp index 51ef25a87c..f46777cd51 100644 --- a/lib/Target/X86/X86FastISel.cpp +++ b/lib/Target/X86/X86FastISel.cpp @@ -157,10 +157,10 @@ bool X86FastISel::X86SelectStore(Instruction* I) { X86AddressMode AM; if (Op1) // Address is in register. - AM.Base.Reg = Op0; + AM.Base.Reg = Op1; else AM.GV = cast<GlobalValue>(V); - addFullAddress(BuildMI(MBB, TII.get(Opc)), AM); + addFullAddress(BuildMI(MBB, TII.get(Opc)), AM).addReg(Op0); return true; } @@ -255,6 +255,8 @@ X86FastISel::TargetSelectInstruction(Instruction *I) { default: break; case Instruction::Load: return X86SelectLoad(I); + case Instruction::Store: + return X86SelectStore(I); } return false; diff --git a/test/CodeGen/X86/fast-isel-mem.ll b/test/CodeGen/X86/fast-isel-mem.ll index 5c39fb4017..ca175c48bf 100644 --- a/test/CodeGen/X86/fast-isel-mem.ll +++ b/test/CodeGen/X86/fast-isel-mem.ll @@ -1,5 +1,5 @@ ; RUN: llvm-as < %s | llc -fast-isel -mtriple=i386-apple-darwin -mattr=sse2 | \ -; RUN: grep mov | grep lazy_ptr | count 2 +; RUN: grep mov | grep lazy_ptr | count 1 @src = external global i32 |