Commit 78e581b86f

Alex Rønne Petersen <alex@alexrp.com>
2024-07-30 04:02:32
start: Copy the mips64 comment about gp to the mips32 code.
Also, don't incorrectly claim that it's only needed for dynamic linking/PIC.
1 parent 38e0f04
Changed files (1)
lib
lib/std/start.zig
@@ -293,6 +293,7 @@ fn _start() callconv(.Naked) noreturn {
             \\ .gpword .
             \\ .gpword %[posixCallMainAndExit]
             \\ 1:
+            // The `gp` register on MIPS serves a similar purpose to `r2` (ToC pointer) on PPC64.
             \\ lw $gp, 0($ra)
             \\ subu $gp, $ra, $gp
             \\ lw $25, 4($ra)
@@ -314,8 +315,6 @@ fn _start() callconv(.Naked) noreturn {
             \\ .gpdword %[posixCallMainAndExit]
             \\ 1:
             // The `gp` register on MIPS serves a similar purpose to `r2` (ToC pointer) on PPC64.
-            // We need to set it up in order for dynamically-linked / position-independent code to
-            // work.
             \\ ld $gp, 0($ra)
             \\ dsubu $gp, $ra, $gp
             \\ ld $25, 8($ra)