rust/compiler/rustc_codegen_ssa/src/traits
Matthias Krüger d774fbea7c
Rollup merge of #119365 - nbdd0121:asm-goto, r=Amanieu
Add asm goto support to `asm!`

Tracking issue: #119364

This PR implements asm-goto support, using the syntax described in "future possibilities" section of [RFC2873](https://rust-lang.github.io/rfcs/2873-inline-asm.html#asm-goto).

Currently I have only implemented the `label` part, not the `fallthrough` part (i.e. fallthrough is implicit). This doesn't reduce the expressive though, since you can use label-break to get arbitrary control flow or simply set a value and rely on jump threading optimisation to get the desired control flow. I can add that later if deemed necessary.

r? ``@Amanieu``
cc ``@ojeda``
2024-03-08 08:19:17 +01:00
..
abi.rs Merge apply_attrs_callsite into call and invoke 2022-10-01 17:01:31 +00:00
asm.rs Implement asm goto for LLVM and GCC backend 2024-02-24 18:50:09 +00:00
backend.rs Make CodegenBackend::join_codegen infallible. 2024-02-17 10:51:35 +11:00
builder.rs introduce and use ptradd/inbounds_ptradd instead of gep 2024-02-26 22:45:53 -05:00
consts.rs cg_ssa: remove pointee types and pointercast/bitcast-of-ptr 2023-07-29 13:18:20 -04:00
coverageinfo.rs Remove trait CoverageInfoMethods, since non-LLVM backends don't need it 2023-07-05 20:40:40 +10:00
debuginfo.rs Deduplicate inlined function debug info, but create a new lexical scope to child subsequent scopes and variables from colliding 2023-09-01 14:27:21 -07:00
declare.rs Remove DeclareMethods 2020-09-18 13:11:59 +02:00
intrinsic.rs Teach llvm backend how to fall back to default bodies 2024-02-12 17:50:39 +00:00
misc.rs Remove several unused methods from MiscMethods 2022-10-01 16:45:07 +00:00
mod.rs Implement printing to file in llvm_util 2023-07-20 11:04:31 -07:00
statics.rs Only compile #[used] as llvm.compiler.used for ELF targets 2022-05-11 01:29:56 -07:00
type_.rs Auto merge of #121665 - erikdesjardins:ptradd, r=nikic 2024-03-03 22:21:53 +00:00
write.rs Rename many DiagCtxt arguments. 2023-12-18 16:06:22 +11:00