authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-11-24 08:18:41+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-11-24 08:19:15+01:00
logaa19e71a27a653b01908f334077fd23905a0d291
tree1fca15726b74e6788f3f0a371a2f39e17fa2fd42
parent62074ec61b132073106f85fe60386d086bded544
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

zig.h: Add zig_trap() and zig_breakpoint() implementations for Hexagon.


1 files changed, 4 insertions(+), 0 deletions(-)

lib/zig.h+4
...@@ -256,6 +256,8 @@ typedef char bool;...@@ -256,6 +256,8 @@ typedef char bool;
256#define zig_trap() __asm__ volatile("udf #0xfe")256#define zig_trap() __asm__ volatile("udf #0xfe")
257#elif defined(__arm__) || defined(__aarch64__)257#elif defined(__arm__) || defined(__aarch64__)
258#define zig_trap() __asm__ volatile("udf #0xfdee")258#define zig_trap() __asm__ volatile("udf #0xfdee")
259#elif defined(__hexagon__)
260#define zig_trap() __asm__ volatile("r27:26 = memd(#0xbadc0fee)")
259#elif defined(__loongarch__) || defined(__powerpc__)261#elif defined(__loongarch__) || defined(__powerpc__)
260#define zig_trap() __asm__ volatile(".word 0x0")262#define zig_trap() __asm__ volatile(".word 0x0")
261#elif defined(__mips__)263#elif defined(__mips__)
...@@ -280,6 +282,8 @@ typedef char bool;...@@ -280,6 +282,8 @@ typedef char bool;
280#define zig_breakpoint() __asm__ volatile("bkpt #0x0")282#define zig_breakpoint() __asm__ volatile("bkpt #0x0")
281#elif defined(__aarch64__)283#elif defined(__aarch64__)
282#define zig_breakpoint() __asm__ volatile("brk #0xf000")284#define zig_breakpoint() __asm__ volatile("brk #0xf000")
285#elif defined(__hexagon__)
286#define zig_breakpoint() __asm__ volatile("brkpt")
283#elif defined(__loongarch__)287#elif defined(__loongarch__)
284#define zig_breakpoint() __asm__ volatile("break 0x0")288#define zig_breakpoint() __asm__ volatile("break 0x0")
285#elif defined(__mips__)289#elif defined(__mips__)