From d852c15546add6a8a54be154559a377563ebfe18 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 3 Dec 2002 20:30:12 +0000 Subject: [PATCH] Fix instsel for calls git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4891 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/InstSelectSimple.cpp | 5 ++--- lib/Target/X86/X86ISelSimple.cpp | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/lib/Target/X86/InstSelectSimple.cpp b/lib/Target/X86/InstSelectSimple.cpp index 10fdf0f911d..04827f03fcc 100644 --- a/lib/Target/X86/InstSelectSimple.cpp +++ b/lib/Target/X86/InstSelectSimple.cpp @@ -389,10 +389,9 @@ ISel::visitCallInst (CallInst & CI) { // Push the arguments on the stack in reverse order, as specified by // the ABI. - for (unsigned i = CI.getNumOperands (); i >= 1; --i) + for (unsigned i = CI.getNumOperands()-1; i >= 1; --i) { Value *v = CI.getOperand (i); - unsigned argReg = getReg (v); switch (getClass (v->getType ())) { case cByte: @@ -404,7 +403,7 @@ ISel::visitCallInst (CallInst & CI) break; case cInt: case cFloat: - BuildMI (BB, X86::PUSHr32, 1).addReg (argReg); + BuildMI (BB, X86::PUSHr32, 1).addReg(getReg(v)); break; default: // FIXME: long/ulong/double args not handled. diff --git a/lib/Target/X86/X86ISelSimple.cpp b/lib/Target/X86/X86ISelSimple.cpp index 10fdf0f911d..04827f03fcc 100644 --- a/lib/Target/X86/X86ISelSimple.cpp +++ b/lib/Target/X86/X86ISelSimple.cpp @@ -389,10 +389,9 @@ ISel::visitCallInst (CallInst & CI) { // Push the arguments on the stack in reverse order, as specified by // the ABI. - for (unsigned i = CI.getNumOperands (); i >= 1; --i) + for (unsigned i = CI.getNumOperands()-1; i >= 1; --i) { Value *v = CI.getOperand (i); - unsigned argReg = getReg (v); switch (getClass (v->getType ())) { case cByte: @@ -404,7 +403,7 @@ ISel::visitCallInst (CallInst & CI) break; case cInt: case cFloat: - BuildMI (BB, X86::PUSHr32, 1).addReg (argReg); + BuildMI (BB, X86::PUSHr32, 1).addReg(getReg(v)); break; default: // FIXME: long/ulong/double args not handled. -- 2.11.0