| ... | @@ -197,6 +197,16 @@ fn _start() callconv(.Naked) noreturn { | ... | @@ -197,6 +197,16 @@ fn _start() callconv(.Naked) noreturn { |
| 197 | : [argc] "={sp}" (-> [*]usize) | 197 | : [argc] "={sp}" (-> [*]usize) |
| 198 | ); | 198 | ); |
| 199 | }, | 199 | }, |
| | 200 | .powerpc => { |
| | 201 | argc_argv_ptr = asm volatile ( |
| | 202 | \\ mr 3, 1 |
| | 203 | \\ li 0, 0 |
| | 204 | \\ mtlr 0 |
| | 205 | : [argc] "={r3}" (-> [*]usize) |
| | 206 | : |
| | 207 | : "r0", "r3" |
| | 208 | ); |
| | 209 | }, |
| 200 | .powerpc64le => { | 210 | .powerpc64le => { |
| 201 | // Setup the initial stack frame and clear the back chain pointer. | 211 | // Setup the initial stack frame and clear the back chain pointer. |
| 202 | // TODO: Support powerpc64 (big endian) on ELFv2. | 212 | // TODO: Support powerpc64 (big endian) on ELFv2. |