Commit ae3a0ff2d1

Benjamin Feng <benjamin.feng@glassdoor.com>
2021-04-10 02:17:03
_start assembly for ppc
1 parent b409acc
Changed files (1)
lib
lib/std/start.zig
@@ -197,6 +197,16 @@ fn _start() callconv(.Naked) noreturn {
                 : [argc] "={sp}" (-> [*]usize)
             );
         },
+        .powerpc => {
+            argc_argv_ptr = asm volatile (
+                \\ mr 3, 1
+                \\ li 0, 0
+                \\ mtlr 0
+                : [argc] "={r3}" (-> [*]usize)
+                :
+                : "r0", "r3"
+            );
+        },
         .powerpc64le => {
             // Setup the initial stack frame and clear the back chain pointer.
             // TODO: Support powerpc64 (big endian) on ELFv2.