rust/compiler/rustc_codegen_cranelift/src
bors 1689a5a531 Auto merge of #122597 - pacak:master, r=bjorn3
Show files produced by `--emit foo` in json artifact notifications

Right now it is possible to ask `rustc` to save some intermediate representation into one or more files with `--emit=foo`, but figuring out what exactly was produced is difficult. This pull request adds information about `llvm_ir` and `asm` intermediate files into notifications produced by `--json=artifacts`.

Related discussion: https://internals.rust-lang.org/t/easier-access-to-files-generated-by-emit-foo/20477

Motivation - `cargo-show-asm` parses those intermediate files and presents them in a user friendly way, but right now I have to apply some dirty hacks. Hacks make behavior confusing: https://github.com/hintron/computer-enhance/issues/35

This pull request introduces a new behavior: now `rustc` will emit a new artifact notification for every artifact type user asked to `--emit`, for example for `--emit asm` those will include all the `.s` files.

Most users won't notice this behavior, to be affected by it all of the following must hold:
- user must use `rustc` binary directly (when `cargo` invokes `rustc` - it consumes artifact notifications and doesn't emit anything)
- user must specify both `--emit xxx` and `--json artifacts`
- user must refuse to handle unknown artifact types
- user must disable incremental compilation (or deal with it better than cargo does, or use a workaround like `save-temps`) in order not to hit #88829 / #89149
2024-06-04 00:05:56 +00:00
..
abi Omit non-needs_drop drop_in_place in vtables 2024-05-27 16:26:56 -04:00
debuginfo debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
driver Auto merge of #122597 - pacak:master, r=bjorn3 2024-06-04 00:05:56 +00:00
intrinsics cg_clif: support simd_ctpop 2024-05-19 18:50:42 -07:00
optimize Merge commit '598f090956' into sync_cg_clif-2023-01-24 2023-01-24 18:56:42 +01:00
allocator.rs Merge commit '81dc066758' into sync_cg_clif-2023-10-09 2023-10-09 08:52:46 +00:00
analyze.rs remove redundant imports 2023-12-10 10:56:22 +08:00
archive.rs remove useless lifetime of ArchiveBuilder 2024-02-26 22:37:04 +08:00
base.rs Rollup merge of #124251 - scottmcm:unop-ptr-metadata, r=oli-obk 2024-05-29 03:25:07 +01:00
cast.rs Merge commit '93a5433f17' into sync_cg_clif-2023-10-24 2023-10-24 12:22:23 +00:00
codegen_i128.rs Remove Rvalue::CheckedBinaryOp 2024-05-17 20:33:02 -07:00
common.rs Refactor float Primitives to a separate Float type 2024-05-06 14:56:10 +01:00
compiler_builtins.rs Merge commit 'dec0daa8f6' into sync_cg_clif-2023-03-15 2023-03-15 14:41:48 +00:00
concurrency_limiter.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
config.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
constant.rs Add an intrinsic for ptr::metadata 2024-05-28 09:28:51 -07:00
discriminant.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
global_asm.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
inline_asm.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
lib.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
linkage.rs Sync rustc_codegen_cranelift 'ddd4ce2553' 2021-04-30 14:49:58 +02:00
main_shim.rs Merge commit '3270432f4b' into sync_cg_clif-2024-05-13 2024-05-13 13:26:33 +00:00
num.rs Remove Rvalue::CheckedBinaryOp 2024-05-17 20:33:02 -07:00
pointer.rs Merge commit '81dc066758' into sync_cg_clif-2023-10-09 2023-10-09 08:52:46 +00:00
pretty_clif.rs Rename EarlyErrorHandler as EarlyDiagCtxt. 2023-12-18 16:06:21 +11:00
toolchain.rs Merge commit 'e9d1a0a7b0' into sync_cg_clif-2022-08-24 2022-08-24 18:40:58 +02:00
trap.rs Merge commit '8830dccd1d' into sync_cg_clif-2023-06-15 2023-06-15 17:56:01 +00:00
unsize.rs Make builtin_deref just return a Ty 2024-05-09 22:55:00 -04:00
value_and_place.rs Add an intrinsic for ptr::metadata 2024-05-28 09:28:51 -07:00
vtable.rs Make builtin_deref just return a Ty 2024-05-09 22:55:00 -04:00