forked from GitHub/gf-core
bugfix in GNU lightning for ARM
This commit is contained in:
@@ -127,7 +127,7 @@ arm_patch_arguments(struct jit_local_state* jitl)
|
|||||||
else
|
else
|
||||||
size = sizeof(int);
|
size = sizeof(int);
|
||||||
u.i = jitl->arguments[index];
|
u.i = jitl->arguments[index];
|
||||||
if (jit_thumb_p()) {
|
#ifdef USE_THUMB_CODE
|
||||||
code2thumb(thumb.s[0], thumb.s[1], u.s[0], u.s[1]);
|
code2thumb(thumb.s[0], thumb.s[1], u.s[0], u.s[1]);
|
||||||
switch (thumb.i & 0xfff00f00) {
|
switch (thumb.i & 0xfff00f00) {
|
||||||
case ARM_CC_AL|ARM_VSTR|ARM_P:
|
case ARM_CC_AL|ARM_VSTR|ARM_P:
|
||||||
@@ -218,8 +218,7 @@ arm_patch_arguments(struct jit_local_state* jitl)
|
|||||||
goto thumb_stri;
|
goto thumb_stri;
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
#else
|
||||||
else {
|
|
||||||
switch (u.i[0] & 0xfff00f00) {
|
switch (u.i[0] & 0xfff00f00) {
|
||||||
case ARM_CC_AL|ARM_VSTR|ARM_P:
|
case ARM_CC_AL|ARM_VSTR|ARM_P:
|
||||||
if (jit_hardfp_p()) {
|
if (jit_hardfp_p()) {
|
||||||
@@ -296,9 +295,10 @@ arm_patch_arguments(struct jit_local_state* jitl)
|
|||||||
goto arm_stri;
|
goto arm_stri;
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
#endif
|
||||||
offset += size;
|
offset += size;
|
||||||
}
|
}
|
||||||
|
|
||||||
jitl->reglist = ((1 << ioff) - 1) & 0xf;
|
jitl->reglist = ((1 << ioff) - 1) & 0xf;
|
||||||
if (jitl->stack_length < offset) {
|
if (jitl->stack_length < offset) {
|
||||||
jitl->stack_length = offset;
|
jitl->stack_length = offset;
|
||||||
|
|||||||
Reference in New Issue
Block a user