По какой-то причине, когда я пытаюсь скомпилировать этот кусок кода, компилятор говоритsyscall.s:72:invalid constant (0x172) after fixup
:
.globl _mach_msg_trap$MACH
_mach_msg_trap$MACH:
stmfd sp!, {r4,r7}
mov r7, #370 /* this is line 72 */
svc 0
ldmfd sp!, {r4, r7}
bx lr
Я не знаю, почему это происходит. Когда я помещаю меньшую константу в r7
, все работает нормально. Но с более высокими номерами выдает эту ошибку. Я временно исправил это, выполнив mov r7, #300
и add r7, #70
, что дало желаемый эффект. Однако до сих пор не уверен, что вызвало ошибку.