authorgravatar for thatlemon@gmail.comLemonBoy <thatlemon@gmail.com> 2021-04-20 22:04:48+02:00
committergravatar for thatlemon@gmail.comLemonBoy <thatlemon@gmail.com> 2021-04-21 16:31:29+02:00
logd82eb8dd404b5971d3469bdd1a5ed6907fbbb281
treeb44819c67628aaf7c6ff6e884d1878892fc28576
parentc8753aceef07161aa9b7d2eab75524042bcbc8bb

std: Split syscall parameters for PowerPC targets


2 files changed, 8 insertions(+), 0 deletions(-)

lib/std/os/linux.zig+1
...@@ -52,6 +52,7 @@ pub fn getauxval(index: usize) usize {...@@ -52,6 +52,7 @@ pub fn getauxval(index: usize) usize {
52// Some architectures (and some syscalls) require 64bit parameters to be passed52// Some architectures (and some syscalls) require 64bit parameters to be passed
53// in a even-aligned register pair.53// in a even-aligned register pair.
54const require_aligned_register_pair =54const require_aligned_register_pair =
55 std.Target.current.cpu.arch.isPPC() or
55 std.Target.current.cpu.arch.isMIPS() or56 std.Target.current.cpu.arch.isMIPS() or
56 std.Target.current.cpu.arch.isARM() or57 std.Target.current.cpu.arch.isARM() or
57 std.Target.current.cpu.arch.isThumb();58 std.Target.current.cpu.arch.isThumb();
lib/std/target.zig+7
...@@ -800,6 +800,13 @@ pub const Target = struct {...@@ -800,6 +800,13 @@ pub const Target = struct {
800 };800 };
801 }801 }
802802
803 pub fn isPPC(arch: Arch) bool {
804 return switch (arch) {
805 .powerpc, .powerpcle => true,
806 else => false,
807 };
808 }
809
803 pub fn isPPC64(arch: Arch) bool {810 pub fn isPPC64(arch: Arch) bool {
804 return switch (arch) {811 return switch (arch) {
805 .powerpc64, .powerpc64le => true,812 .powerpc64, .powerpc64le => true,