diff options
| author | Wolfram Sang <wsa@kernel.org> | 2023-04-24 12:50:20 +0200 |
|---|---|---|
| committer | Wolfram Sang <wsa@kernel.org> | 2023-04-24 12:50:20 +0200 |
| commit | 38c87827ffd3c7e1dd61eee9a7dea13d487dc2ed (patch) | |
| tree | e6bd1c3ae56823874a736c1512409c123c9a4219 /tools/testing/selftests/sigaltstack/current_stack_pointer.h | |
| parent | 9496fffcb28f39e0352779a0199b6e61861c9221 (diff) | |
| parent | d663d93bb47e7ab45602b227701022d8aa16040a (diff) | |
Merge branch 'i2c/for-current' into i2c/for-mergewindow
This should have been in 6.3, but sadly I missed it.
Diffstat (limited to 'tools/testing/selftests/sigaltstack/current_stack_pointer.h')
| -rw-r--r-- | tools/testing/selftests/sigaltstack/current_stack_pointer.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/testing/selftests/sigaltstack/current_stack_pointer.h b/tools/testing/selftests/sigaltstack/current_stack_pointer.h new file mode 100644 index 000000000000..ea9bdf3a90b1 --- /dev/null +++ b/tools/testing/selftests/sigaltstack/current_stack_pointer.h @@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#if __alpha__ +register unsigned long sp asm("$30"); +#elif __arm__ || __aarch64__ || __csky__ || __m68k__ || __mips__ || __riscv +register unsigned long sp asm("sp"); +#elif __i386__ +register unsigned long sp asm("esp"); +#elif __loongarch64 +register unsigned long sp asm("$sp"); +#elif __ppc__ +register unsigned long sp asm("r1"); +#elif __s390x__ +register unsigned long sp asm("%15"); +#elif __sh__ +register unsigned long sp asm("r15"); +#elif __x86_64__ +register unsigned long sp asm("rsp"); +#elif __XTENSA__ +register unsigned long sp asm("a1"); +#else +#error "implement current_stack_pointer equivalent" +#endif |
