summary refs log tree commit diff
path: root/compiler/rustc_ast_lowering/src/asm.rs
AgeCommit message (Collapse)AuthorLines
2022-02-18asm: Allow the use of r8-r14 as clobbers on Thumb1Amanieu d'Antras-5/+6
Previously these were entirely disallowed, except for r11 which was allowed by accident.
2022-02-10Fix incorrect register conflict detection in asm!Amanieu d'Antras-1/+3
This would previously incorrectly reject two subregisters that were distinct but part of the same larger register, for example `al` and `ah`.
2022-01-17Pass target_features set instead of has_feature closurebjorn3-2/+2
This avoids unnecessary monomorphizations in codegen backends
2022-01-17Use Symbol for target features in asm handlingbjorn3-3/+3
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-1/+6
the current target.
2021-12-03add `unwind_asm` feature gate for `may_unwind` optioncynecx-0/+11
2021-11-10Add support for specifying multiple clobber_abi in `asm!`asquared31415-7/+40
Allow multiple clobber_abi in asm Update docs Fix aarch64 test Combine abis Emit duplicate ABI error, empty ABI list error multiple clobber_abi
2021-11-07Add features gates for experimental asm featuresAmanieu d'Antras-4/+46
2021-10-26Remove unnecessary check for registersYuki Okushi-3/+1
`is_clobber()` already checks if `reg` is a register and the both values should be the same.
2021-10-26Fix some typosYuki Okushi-2/+2
2021-10-07make #[target_feature] work with `asm` register classesasquared31415-62/+2
2021-08-29ast_lowering: Introduce `lower_span` for catching all spans entering HIRVadim Petrochenkov-4/+9
2021-08-24Move `named_asm_labels` to a HIR lintasquared31415-1/+3
2021-08-12Add support for clobber_abi to asm!Amanieu d'Antras-1/+55
2021-07-10Add clobber-only register classes for asm!Amanieu d'Antras-0/+16
These are needed to properly express a function call ABI using a clobber list, even though we don't support passing actual values into/out of these registers.
2021-05-13Clarify error message when both asm! and global_asm! are unsupportedAmanieu d'Antras-1/+2
2021-05-13Add support for const operands and options to global_asm!Amanieu d'Antras-0/+328
On x86, the default syntax is also switched to Intel to match asm!