authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-10-06 17:26:40+02:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2024-10-06 17:26:40+02:00
log148b5b4c7806a694084f1e6f9514b0333cb75c6a
treec007c9dbe9a3b5155c5e7d639378e695019902bf
parentece265b1c23202adedfdfdbbcb537ba4e81801d1
parent665d0157d5f333ebc6b353703e77661b11bcac8c
signaturebadge-check Signed by PGP key B5690EEEBB952194

Merge pull request #21608 from mikdusan/ppc64

ppc64: get further along into system bootstrap

2 files changed, 6 insertions(+), 5 deletions(-)

lib/std/os/linux/powerpc64.zig+5-5
...@@ -48,7 +48,7 @@ pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {...@@ -48,7 +48,7 @@ pub fn syscall2(number: SYS, arg1: usize, arg2: usize) usize {
48 : [number] "{r0}" (@intFromEnum(number)),48 : [number] "{r0}" (@intFromEnum(number)),
49 [arg1] "{r3}" (arg1),49 [arg1] "{r3}" (arg1),
50 [arg2] "{r4}" (arg2),50 [arg2] "{r4}" (arg2),
51 : "memory", "cr0", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"51 : "memory", "cr0", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"
52 );52 );
53}53}
5454
...@@ -63,7 +63,7 @@ pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {...@@ -63,7 +63,7 @@ pub fn syscall3(number: SYS, arg1: usize, arg2: usize, arg3: usize) usize {
63 [arg1] "{r3}" (arg1),63 [arg1] "{r3}" (arg1),
64 [arg2] "{r4}" (arg2),64 [arg2] "{r4}" (arg2),
65 [arg3] "{r5}" (arg3),65 [arg3] "{r5}" (arg3),
66 : "memory", "cr0", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"66 : "memory", "cr0", "r6", "r7", "r8", "r9", "r10", "r11", "r12"
67 );67 );
68}68}
6969
...@@ -79,7 +79,7 @@ pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize)...@@ -79,7 +79,7 @@ pub fn syscall4(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize)
79 [arg2] "{r4}" (arg2),79 [arg2] "{r4}" (arg2),
80 [arg3] "{r5}" (arg3),80 [arg3] "{r5}" (arg3),
81 [arg4] "{r6}" (arg4),81 [arg4] "{r6}" (arg4),
82 : "memory", "cr0", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"82 : "memory", "cr0", "r7", "r8", "r9", "r10", "r11", "r12"
83 );83 );
84}84}
8585
...@@ -96,7 +96,7 @@ pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize,...@@ -96,7 +96,7 @@ pub fn syscall5(number: SYS, arg1: usize, arg2: usize, arg3: usize, arg4: usize,
96 [arg3] "{r5}" (arg3),96 [arg3] "{r5}" (arg3),
97 [arg4] "{r6}" (arg4),97 [arg4] "{r6}" (arg4),
98 [arg5] "{r7}" (arg5),98 [arg5] "{r7}" (arg5),
99 : "memory", "cr0", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"99 : "memory", "cr0", "r8", "r9", "r10", "r11", "r12"
100 );100 );
101}101}
102102
...@@ -122,7 +122,7 @@ pub fn syscall6(...@@ -122,7 +122,7 @@ pub fn syscall6(
122 [arg4] "{r6}" (arg4),122 [arg4] "{r6}" (arg4),
123 [arg5] "{r7}" (arg5),123 [arg5] "{r7}" (arg5),
124 [arg6] "{r8}" (arg6),124 [arg6] "{r8}" (arg6),
125 : "memory", "cr0", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12"125 : "memory", "cr0", "r9", "r10", "r11", "r12"
126 );126 );
127}127}
128128
lib/std/start.zig+1
...@@ -391,6 +391,7 @@ fn _start() callconv(.Naked) noreturn {...@@ -391,6 +391,7 @@ fn _start() callconv(.Naked) noreturn {
391 \\ stdu 0, -32(1)391 \\ stdu 0, -32(1)
392 \\ mtlr 0392 \\ mtlr 0
393 \\ b %[posixCallMainAndExit]393 \\ b %[posixCallMainAndExit]
394 \\ nop
394 ,395 ,
395 .s390x =>396 .s390x =>
396 // Set up the stack frame (register save area and cleared back-chain slot).397 // Set up the stack frame (register save area and cleared back-chain slot).