mirror of
https://github.com/corda/corda.git
synced 2025-01-21 03:55:00 +00:00
fix arm and powerpc build
This commit is contained in:
parent
68d28eab2e
commit
a9e2984aaf
12
src/arm.h
12
src/arm.h
@ -206,7 +206,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
++ stackIndex;
|
++ stackIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(stack + stackIndex, arguments + ai, 8);
|
memcpy(RUNTIME_ARRAY_BODY(stack) + stackIndex, arguments + ai, 8);
|
||||||
stackIndex += 8 / BytesPerWord;
|
stackIndex += 8 / BytesPerWord;
|
||||||
}
|
}
|
||||||
ai += 8 / BytesPerWord;
|
ai += 8 / BytesPerWord;
|
||||||
@ -219,7 +219,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
} else if (vfpIndex < VfpCount) {
|
} else if (vfpIndex < VfpCount) {
|
||||||
vfpTable[vfpIndex++] = arguments[ai];
|
vfpTable[vfpIndex++] = arguments[ai];
|
||||||
} else {
|
} else {
|
||||||
stack[stackIndex++] = arguments[ai];
|
RUNTIME_ARRAY_BODY(stack)[stackIndex++] = arguments[ai];
|
||||||
}
|
}
|
||||||
++ ai;
|
++ ai;
|
||||||
break;
|
break;
|
||||||
@ -231,7 +231,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
and gprIndex + Alignment == GprCount)
|
and gprIndex + Alignment == GprCount)
|
||||||
{
|
{
|
||||||
gprTable[gprIndex++] = arguments[ai];
|
gprTable[gprIndex++] = arguments[ai];
|
||||||
stack[stackIndex++] = arguments[ai + 1];
|
RUNTIME_ARRAY_BODY(stack)[stackIndex++] = arguments[ai + 1];
|
||||||
} else {
|
} else {
|
||||||
if (gprIndex % Alignment) {
|
if (gprIndex % Alignment) {
|
||||||
++gprIndex;
|
++gprIndex;
|
||||||
@ -246,7 +246,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
++stackIndex;
|
++stackIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(stack + stackIndex, arguments + ai, 8);
|
memcpy(RUNTIME_ARRAY_BODY(stack) + stackIndex, arguments + ai, 8);
|
||||||
stackIndex += 8 / BytesPerWord;
|
stackIndex += 8 / BytesPerWord;
|
||||||
}
|
}
|
||||||
ai += 8 / BytesPerWord;
|
ai += 8 / BytesPerWord;
|
||||||
@ -256,7 +256,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
if (gprIndex < GprCount) {
|
if (gprIndex < GprCount) {
|
||||||
gprTable[gprIndex++] = arguments[ai];
|
gprTable[gprIndex++] = arguments[ai];
|
||||||
} else {
|
} else {
|
||||||
stack[stackIndex++] = arguments[ai];
|
RUNTIME_ARRAY_BODY(stack)[stackIndex++] = arguments[ai];
|
||||||
}
|
}
|
||||||
++ ai;
|
++ ai;
|
||||||
} break;
|
} break;
|
||||||
@ -274,7 +274,7 @@ dynamicCall(void* function, uintptr_t* arguments, uint8_t* argumentTypes,
|
|||||||
|
|
||||||
unsigned stackSize = stackIndex*BytesPerWord + ((stackIndex & 1) << 2);
|
unsigned stackSize = stackIndex*BytesPerWord + ((stackIndex & 1) << 2);
|
||||||
return vmNativeCall
|
return vmNativeCall
|
||||||
(function, stackSize, stack, stackIndex * BytesPerWord,
|
(function, stackSize, RUNTIME_ARRAY_BODY(stack), stackIndex * BytesPerWord,
|
||||||
(gprIndex ? gprTable : 0),
|
(gprIndex ? gprTable : 0),
|
||||||
(vfpIndex ? vfpTable : 0), returnType);
|
(vfpIndex ? vfpTable : 0), returnType);
|
||||||
}
|
}
|
||||||
|
@ -2236,14 +2236,6 @@ class MyArchitecture: public Assembler::Architecture {
|
|||||||
virtual int framePointerOffset() {
|
virtual int framePointerOffset() {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual lir::BinaryOperation hasBinaryIntrinsic(Thread*, object) {
|
|
||||||
return lir::NoBinaryOperation;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual lir::TernaryOperation hasTernaryIntrinsic(Thread*, object) {
|
|
||||||
return lir::NoTernaryOperation;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual bool alwaysCondensed(lir::BinaryOperation) {
|
virtual bool alwaysCondensed(lir::BinaryOperation) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -2240,14 +2240,6 @@ class MyArchitecture: public Assembler::Architecture {
|
|||||||
virtual int framePointerOffset() {
|
virtual int framePointerOffset() {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual lir::BinaryOperation hasBinaryIntrinsic(Thread*, object) {
|
|
||||||
return lir::NoBinaryOperation;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual lir::TernaryOperation hasTernaryIntrinsic(Thread*, object) {
|
|
||||||
return lir::NoTernaryOperation;
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual bool alwaysCondensed(lir::BinaryOperation) {
|
virtual bool alwaysCondensed(lir::BinaryOperation) {
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
Reference in New Issue
Block a user