diff options
Diffstat (limited to 'libgloss/arm/crt0.S')
-rw-r--r-- | libgloss/arm/crt0.S | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/libgloss/arm/crt0.S b/libgloss/arm/crt0.S index 35c306be0..48f3d6b1d 100644 --- a/libgloss/arm/crt0.S +++ b/libgloss/arm/crt0.S @@ -296,9 +296,10 @@ __change_mode: movs r1, r0 #else movs r0, #AngelSWI_Reason_GetCmdLine - adr r1, .LC30 /* Space for command line */ + ldr r1, .LC30 /* Space for command line */ AngelSWIAsm AngelSWI ldr r1, .LC30 + ldr r1, [r1] #endif /* Parse string at r1 */ movs r0, #0 /* count of arguments so far */ @@ -505,8 +506,7 @@ change_back: #endif #ifdef ARM_RDI_MONITOR .LC30: - .word CommandLine - .word 255 + .word AngelSWIArgs .LC31: .word __end__ @@ -519,6 +519,9 @@ HeapLimit: .word 0 __stack_base__: .word 0 StackLimit: .word 0 CommandLine: .space 256,0 /* Maximum length of 255 chars handled. */ +AngelSWIArgs: + .word CommandLine + .word 255 #endif #ifdef __pe__ |