summaryrefslogtreecommitdiffstats
path: root/ArmPkg/Library/SemihostLib/Arm/GccSemihost.S
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPkg/Library/SemihostLib/Arm/GccSemihost.S')
-rwxr-xr-xArmPkg/Library/SemihostLib/Arm/GccSemihost.S18
1 files changed, 9 insertions, 9 deletions
diff --git a/ArmPkg/Library/SemihostLib/Arm/GccSemihost.S b/ArmPkg/Library/SemihostLib/Arm/GccSemihost.S
index 4aa886182f..c9d13183f6 100755
--- a/ArmPkg/Library/SemihostLib/Arm/GccSemihost.S
+++ b/ArmPkg/Library/SemihostLib/Arm/GccSemihost.S
@@ -1,4 +1,4 @@
-#------------------------------------------------------------------------------
+#------------------------------------------------------------------------------
#
# Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
#
@@ -20,21 +20,21 @@ INTERWORK_FUNC(GccSemihostCall)
/*
Semihosting operation request mechanism
-
+
SVC 0x123456 in ARM state (for all architectures)
SVC 0xAB in Thumb state (excluding ARMv7-M)
BKPT 0xAB for ARMv7-M (Thumb-2 only)
-
- R0 - operation type
+
+ R0 - operation type
R1 - block containing all other parametes
-
- lr - must be saved as svc instruction will cause an svc exception and write
+
+ lr - must be saved as svc instruction will cause an svc exception and write
the svc lr register. That happens to be the one we are using, so we must
- save it or we will not be able to return.
+ save it or we will not be able to return.
*/
ASM_PFX(GccSemihostCall):
- stmfd sp!, {lr}
- svc #0x123456
+ stmfd sp!, {lr}
+ svc #0x123456
ldmfd sp!, {lr}
bx lr