rust/compiler
Matthias Krüger d6a61daf60
Rollup merge of #140832 - workingjubilee:aarch64-linux-should-use-frame-pointers, r=compiler-errors
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 also use non-leaf frame pointers. This reflects what compilers like clang do.
2025-05-23 20:30:09 +02:00
..
rustc
rustc_abi Initial UnsafePinned/UnsafeUnpin impl [Part 1: Libs] 2025-04-13 01:11:04 -04:00
rustc_arena Introduce Arena::try_alloc_from_iter. 2025-04-19 01:13:18 +00:00
rustc_ast introduce common macro for MutVisitor and Visitor to dedup code 2025-05-19 21:21:03 +08:00
rustc_ast_ir
rustc_ast_lowering Rename kw::Empty as sym::empty. 2025-05-22 11:55:22 +10:00
rustc_ast_passes update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_ast_pretty Initial support for dynamically linked crates 2025-05-04 22:03:15 +03:00
rustc_attr_data_structures update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_attr_parsing collect doc alias as tips during resolution 2025-05-21 00:47:36 +08:00
rustc_baked_icu_data
rustc_borrowck Rollup merge of #139668 - matthewjasper:upper-bound-fix, r=compiler-errors 2025-05-22 16:02:26 +02:00
rustc_builtin_macros Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_codegen_cranelift Rename cfg_match! to cfg_select! 2025-05-20 21:16:23 +00:00
rustc_codegen_gcc Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_codegen_llvm Rollup merge of #140847 - Zalathar:unused-local-file, r=SparrowLii 2025-05-19 21:10:42 +10:00
rustc_codegen_ssa Rollup merge of #141376 - nnethercote:rename-kw-Empty, r=petrochenkov 2025-05-23 13:34:20 +02:00
rustc_const_eval Rollup merge of #140972 - Stypox:machine-tracing-flag, r=RalfJung 2025-05-20 20:57:26 +02:00
rustc_data_structures Rollup merge of #139668 - matthewjasper:upper-bound-fix, r=compiler-errors 2025-05-22 16:02:26 +02:00
rustc_driver
rustc_driver_impl compiler & tools: bump windows crate to dedupe versions 2025-05-17 15:26:38 +03:00
rustc_error_codes resolve: Support imports of associated types and glob imports from traits 2025-05-02 15:59:38 +03:00
rustc_error_messages update cfgs 2025-04-09 12:29:59 +01:00
rustc_errors compiler & tools: bump windows crate to dedupe versions 2025-05-17 15:26:38 +03:00
rustc_expand Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_feature Stabilize avx512_target_feature 2025-05-18 11:12:15 +05:30
rustc_fluent_macro update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_fs_util Retry if creating temp fails with access denied 2025-04-25 11:28:36 +00:00
rustc_graphviz
rustc_hashes
rustc_hir Rename kw::Empty as sym::empty. 2025-05-22 11:55:22 +10:00
rustc_hir_analysis Auto merge of #140553 - BoxyUwU:defer_type_system_ctfe, r=compiler-errors 2025-05-23 05:30:45 +00:00
rustc_hir_pretty update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_hir_typeck Rollup merge of #140218 - fmease:hirtylo-clean-up-path-low, r=compiler-errors 2025-05-22 16:02:28 +02:00
rustc_incremental Auto merge of #139758 - Zoxc:thread-local-graph, r=oli-obk 2025-05-07 12:39:54 +00:00
rustc_index Add copy_within to IndexSlice 2025-04-15 10:44:28 -04:00
rustc_index_macros In rustc_mir_tranform, iterate over index newtypes instead of ints 2025-04-12 11:53:07 +00:00
rustc_infer Fast path for register_region_obligation 2025-05-17 19:35:05 +00:00
rustc_interface Move -Zcrate-attr injection to just after crate root parsing 2025-05-21 14:32:40 +00:00
rustc_lexer Implement RFC 3503: frontmatters 2025-05-05 23:10:08 +08:00
rustc_lint Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_lint_defs make enabling the neon target feature a FCW 2025-05-22 12:19:25 +02:00
rustc_llvm Experimental cygwin support in rustc 2025-05-15 23:34:11 +08:00
rustc_log Allow linking rustc and rustdoc against the same single tracing crate 2025-05-03 10:18:50 -07:00
rustc_macros Allow trailing comma after argument in query definition 2025-05-20 10:22:08 +00:00
rustc_metadata Introduce tcx.anon_const_kind query 2025-05-21 20:20:19 +01:00
rustc_middle Auto merge of #140553 - BoxyUwU:defer_type_system_ctfe, r=compiler-errors 2025-05-23 05:30:45 +00:00
rustc_mir_build Rollup merge of #141357 - dianne:unhardcode-unpretty-thir-tree-body-expr, r=compiler-errors 2025-05-21 22:15:01 +02:00
rustc_mir_dataflow update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_mir_transform Rollup merge of #140967 - azhogin:azhogin/async-drop-poll-shim-for-error-dropee-fix, r=oli-obk 2025-05-23 13:34:17 +02:00
rustc_monomorphize Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_next_trait_solver Auto merge of #141396 - matthiaskrgr:rollup-feg050g, r=matthiaskrgr 2025-05-22 21:02:18 +00:00
rustc_parse Rollup merge of #141003 - clubby789:ternary-improve, r=compiler-errors 2025-05-16 07:19:41 +02:00
rustc_parse_format Remove duplicate impl of string unescape 2025-05-06 10:00:22 +00:00
rustc_passes Rename kw::Empty as sym::empty. 2025-05-22 11:55:22 +10:00
rustc_pattern_analysis Revert "Fix stack overflow in exhaustiveness due to recursive HIR opaque type values" 2025-05-20 10:09:01 +00:00
rustc_privacy Rollup merge of #140874 - mejrs:rads, r=WaffleLapkin 2025-05-19 13:24:54 +10:00
rustc_query_impl Auto merge of #140145 - Zoxc:job-server-proxy, r=SparrowLii 2025-05-01 04:11:52 +00:00
rustc_query_system Handle rustc_query_system cases of rustc::potential_query_instability lint 2025-05-14 08:59:55 +03:00
rustc_resolve Rollup merge of #141376 - nnethercote:rename-kw-Empty, r=petrochenkov 2025-05-23 13:34:20 +02:00
rustc_sanitizers update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
rustc_serialize Zero the buffer passed from write_with 2025-04-25 07:14:27 +02:00
rustc_session current_dll_path: fix mistake in assertion message 2025-05-19 20:20:54 +02:00
rustc_smir Rename Instance::new to Instance::new_raw and add a note that it is raw 2025-05-05 13:17:35 +00:00
rustc_span Rollup merge of #141376 - nnethercote:rename-kw-Empty, r=petrochenkov 2025-05-23 13:34:20 +02:00
rustc_symbol_mangling Rename kw::Empty as sym::empty. 2025-05-22 11:55:22 +10:00
rustc_target Rollup merge of #140832 - workingjubilee:aarch64-linux-should-use-frame-pointers, r=compiler-errors 2025-05-23 20:30:09 +02:00
rustc_trait_selection Auto merge of #140553 - BoxyUwU:defer_type_system_ctfe, r=compiler-errors 2025-05-23 05:30:45 +00:00
rustc_traits Querify coroutine_hidden_types 2025-05-20 11:50:25 +00:00
rustc_transmute Rollup merge of #140509 - tmiasko:merge-contiguous-ranges, r=jswrenn 2025-05-02 19:37:56 +02:00
rustc_ty_utils Rollup merge of #140926 - azhogin:azhogin/async-drop-coroutine-layout-returns-layout-error, r=oli-obk 2025-05-18 18:44:12 +02:00
rustc_type_ir Rollup merge of #141286 - compiler-errors:querify-coroutine, r=oli-obk 2025-05-22 16:02:31 +02:00
rustc_type_ir_macros Split TypeFolder and FallibleTypeFolder 2025-04-15 18:30:35 +00:00
stable_mir Change rustc_driver dependency on stable_mir crate 2025-04-30 15:39:52 -07:00