zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 95e135a8cb614f1ef8a8bbe38717fc533c2c2cef (tree)
parent fca776f8f5f6c31e66ddf8e858483b718618fbdf
Author: Mitchell Hashimoto <mitchell.hashimoto@gmail.com>
Date:   Mon, 24 Oct 2022 15:30:00 -0700

std: valgrind client request support for aarch64

Diffstat:
Mlib/std/valgrind.zig | 15++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/lib/std/valgrind.zig b/lib/std/valgrind.zig @@ -30,10 +30,23 @@ pub fn doClientRequest(default: usize, request: usize, a1: usize, a2: usize, a3: : "cc", "memory" ); }, + .aarch64 => { + return asm volatile ( + \\ mov x3, %[default] + \\ mov x4, %[ptr] + \\ ror x12, x12, #3 ; ror x12, x12, #13 + \\ ror x12, x12, #51 ; ror x12, x12, #61 + \\ orr x10, x10, x10 + \\ mov %[ret], x3 + : [ret] "=r" (-> usize), + : [default] "r" (default), + [ptr] "r" (&[_]usize{ request, a1, a2, a3, a4, a5 }), + : "cc", "memory", "x3", "x4" + ); + }, // ppc32 // ppc64 // arm - // arm64 // s390x // mips32 // mips64