rust/tests/assembly/asm
Jubilee Young 0c157b51d3 aarch64-linux: Default to FramePointer::NonLeaf
For aarch64-apple and aarch64-windows, platform docs state that code
must use frame pointers correctly. This is because the AAPCS64 mandates
that a platform specify its frame pointer conformance requirements:
- Apple: https://developer.apple.com/documentation/xcode/writing-arm64-code-for-apple-platforms#Respect-the-purpose-of-specific-CPU-registers
- Windows: https://learn.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions?view=msvc-170#integer-registers
- AAPCS64: 4492d1570e/aapcs64/aapcs64.rst (the-frame-pointer)

Unwinding code either requires unwind tables or frame pointers, and
on aarch64 the expectation is that one can use frame pointers for this.
Most Linux targets represent a motley variety of possible distributions,
so it is unclear who to defer to on conformance, other than perhaps Arm.
In the absence of a specific edict for a given aarch64-linux target,
Rust will assume aarch64-linux targets use non-leaf frame pointers.
This reflects what compilers like clang do.
2025-05-17 06:42:46 +02:00
..
aarch64-el2vmsa.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
aarch64-modifiers.rs tests/assembly: use -Copt-level=3 instead of -O 2025-02-08 19:02:32 -08:00
aarch64-outline-atomics.rs tests/assembly: use -Copt-level=3 instead of -O 2025-02-08 19:02:32 -08:00
aarch64-types.rs aarch64-linux: Default to FramePointer::NonLeaf 2025-05-17 06:42:46 +02:00
arm-modifiers.rs tests/assembly: use -Copt-level=3 instead of -O 2025-02-08 19:02:32 -08:00
arm-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
avr-modifiers.rs Create a generic AVR target: avr-none 2025-02-19 19:01:51 +01:00
avr-types.rs Create a generic AVR target: avr-none 2025-02-19 19:01:51 +01:00
bpf-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
comments.rs Move remaining inline assembly test files into asm directory 2024-11-01 22:12:55 +09:00
global_asm.rs stabilize asm_const 2024-08-13 23:18:31 +02:00
hexagon-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
inline-asm-avx.rs Run rustfmt on tests/assembly/. 2024-05-30 16:15:46 +10:00
loongarch-type.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
m68k-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
mips-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
msp430-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
nvptx-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
powerpc-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
riscv-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
s390x-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
sparc-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
wasm-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00
x86-modifiers.rs tests/assembly: use -Copt-level=3 instead of -O 2025-02-08 19:02:32 -08:00
x86-types.rs tests/assembly/asm: Remove uses of rustc_attrs and lang_items features by using minicore 2024-12-18 02:59:07 +09:00