about summary refs log tree commit diff
path: root/compiler/rustc_target/src/asm/arm.rs
AgeCommit message (Collapse)AuthorLines
2023-03-01Use FxIndexSet instead of FxHashSet for asm_target_features query.Michael Woerister-6/+6
2023-01-05Fix `uninlined_format_args` for some compiler cratesnils-1/+1
Convert all the crates that have had their diagnostic migration completed (except save_analysis because that will be deleted soon and apfloat because of the licensing problem).
2022-07-20Remove unused StableMap and StableSet types from rustc_data_structuresMichael Woerister-1/+1
2022-02-24ARM: Only allow using d16-d31 with asm! when supported by the targetAmanieu d'Antras-1/+4
Support can be determined by checking for the "d32" LLVM feature.
2022-02-21On ARM, use relocation_model to detect whether r9 should be reservedAmanieu d'Antras-9/+12
The previous approach of checking for the reserve-r9 target feature didn't actually work because LLVM only sets this feature very late when initializing the per-function subtarget.
2022-02-18asm: Allow the use of r8-r14 as clobbers on Thumb1Amanieu d'Antras-4/+13
Previously these were entirely disallowed, except for r11 which was allowed by accident.
2022-01-17Pass target_features set instead of has_feature closurebjorn3-11/+12
This avoids unnecessary monomorphizations in codegen backends
2022-01-17Use Symbol for target features in asm handlingbjorn3-12/+13
This saves a couple of Symbol::intern calls
2021-12-10asm: Allow using r9 (ARM) and x18 (AArch64) if they are not reserved byAmanieu d'Antras-2/+17
the current target.
2021-12-07Remove the reg_thumb register class for asm! on ARMAmanieu d'Antras-13/+24
Also restricts r8-r14 from being used on Thumb1 targets as per #90736.
2021-04-28Be stricter about rejecting LLVM reserved registers in asm!Amanieu d'Antras-1/+2
2021-04-05Disallow the use of high byte registes as operands on x86_64Amanieu d'Antras-2/+0
They are still allowed on x86 though. Fixes #83495
2020-11-08Collapse all uses of `target.options.foo` into `target.foo`Vadim Petrochenkov-1/+1
with an eye on merging `TargetOptions` into `Target`. `TargetOptions` as a separate structure is mostly an implementation detail of `Target` construction, all its fields logically belong to `Target` and available from `Target` through `Deref` impls.
2020-08-30mv compiler to compiler/mark-0/+298