mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
Fix problem with insertion point for ADJCALLSTACKDOWN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17733 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -789,10 +789,9 @@ void V8ISel::visitCallInst(CallInst &I) {
|
|||||||
const unsigned *OAREnd = &OutgoingArgRegs[6];
|
const unsigned *OAREnd = &OutgoingArgRegs[6];
|
||||||
const unsigned *OAR = &OutgoingArgRegs[0];
|
const unsigned *OAR = &OutgoingArgRegs[0];
|
||||||
unsigned ArgOffset = 68;
|
unsigned ArgOffset = 68;
|
||||||
|
if (extraStack) BuildMI (BB, V8::ADJCALLSTACKDOWN, 1).addImm (extraStack);
|
||||||
for (unsigned i = 1; i < I.getNumOperands (); ++i) {
|
for (unsigned i = 1; i < I.getNumOperands (); ++i) {
|
||||||
unsigned ArgReg = getReg (I.getOperand (i));
|
unsigned ArgReg = getReg (I.getOperand (i));
|
||||||
if (i == 7 && extraStack)
|
|
||||||
BuildMI (BB, V8::ADJCALLSTACKDOWN, 1).addImm (extraStack);
|
|
||||||
if (getClassB (I.getOperand (i)->getType ()) < cLong) {
|
if (getClassB (I.getOperand (i)->getType ()) < cLong) {
|
||||||
// Schlep it over into the incoming arg register
|
// Schlep it over into the incoming arg register
|
||||||
if (ArgOffset < 92) {
|
if (ArgOffset < 92) {
|
||||||
|
@@ -789,10 +789,9 @@ void V8ISel::visitCallInst(CallInst &I) {
|
|||||||
const unsigned *OAREnd = &OutgoingArgRegs[6];
|
const unsigned *OAREnd = &OutgoingArgRegs[6];
|
||||||
const unsigned *OAR = &OutgoingArgRegs[0];
|
const unsigned *OAR = &OutgoingArgRegs[0];
|
||||||
unsigned ArgOffset = 68;
|
unsigned ArgOffset = 68;
|
||||||
|
if (extraStack) BuildMI (BB, V8::ADJCALLSTACKDOWN, 1).addImm (extraStack);
|
||||||
for (unsigned i = 1; i < I.getNumOperands (); ++i) {
|
for (unsigned i = 1; i < I.getNumOperands (); ++i) {
|
||||||
unsigned ArgReg = getReg (I.getOperand (i));
|
unsigned ArgReg = getReg (I.getOperand (i));
|
||||||
if (i == 7 && extraStack)
|
|
||||||
BuildMI (BB, V8::ADJCALLSTACKDOWN, 1).addImm (extraStack);
|
|
||||||
if (getClassB (I.getOperand (i)->getType ()) < cLong) {
|
if (getClassB (I.getOperand (i)->getType ()) < cLong) {
|
||||||
// Schlep it over into the incoming arg register
|
// Schlep it over into the incoming arg register
|
||||||
if (ArgOffset < 92) {
|
if (ArgOffset < 92) {
|
||||||
|
Reference in New Issue
Block a user