rust/compiler/rustc_codegen_ssa/src
bors db2f9759f4 Auto merge of #122671 - Mark-Simulacrum:const-panic-msg, r=Nilstrieb
Codegen const panic messages as function calls

This skips emitting extra arguments at every callsite (of which there
can be many). For a librustc_driver build with overflow checks enabled,
this cuts 0.7MB from the resulting shared library (see [perf]).

A sample improvement from nightly:

```
        leaq    str.0(%rip), %rdi
        leaq    .Lalloc_d6aeb8e2aa19de39a7f0e861c998af13(%rip), %rdx
        movl    $25, %esi
        callq   *_ZN4core9panicking5panic17h17cabb89c5bcc999E@GOTPCREL(%rip)
```

to this PR:

```
        leaq    .Lalloc_d6aeb8e2aa19de39a7f0e861c998af13(%rip), %rdi
        callq   *_RNvNtNtCsduqIKoij8JB_4core9panicking11panic_const23panic_const_div_by_zero@GOTPCREL(%rip)
```

[perf]: https://perf.rust-lang.org/compare.html?start=a7e4de13c1785819f4d61da41f6704ed69d5f203&end=64fbb4f0b2d621ff46d559d1e9f5ad89a8d7789b&stat=instructions:u
2024-03-29 00:24:01 +00:00
..
back Rollup merge of #122842 - pacak:explicit_name, r=michaelwoerister 2024-03-25 17:05:32 +01:00
debuginfo Programmatically convert some of the pat ctors 2024-03-22 11:13:29 -04:00
mir Auto merge of #122671 - Mark-Simulacrum:const-panic-msg, r=Nilstrieb 2024-03-29 00:24:01 +00:00
traits Rollup merge of #122937 - Zalathar:unbox, r=oli-obk 2024-03-24 17:08:16 +01:00
assert_module_sources.rs Rename IntoDiagnosticArg as IntoDiagArg. 2024-03-11 09:12:19 +11:00
base.rs CFI: Use Instance at callsites 2024-03-23 18:30:39 +00:00
codegen_attrs.rs Fix misleading message when using a named constant as a struct alignment/pack 2024-03-02 23:15:39 +08:00
common.rs Handle calls to upstream monomorphizations in compiler_builtins 2024-03-16 15:22:05 -04:00
errors.rs Handle calls to upstream monomorphizations in compiler_builtins 2024-03-16 15:22:05 -04:00
lib.rs Stabilize associated type bounds 2024-03-08 20:56:25 +00:00
meth.rs use ptradd for vtable indexing 2024-03-10 22:47:30 -04:00
mono_item.rs Fix ICE: global_asm!() Don't Panic When Unable to Evaluate Constant 2024-03-18 11:35:40 -04:00
size_of_val.rs CFI: Use Instance at callsites 2024-03-23 18:30:39 +00:00
target_features.rs Bump indexmap 2024-02-13 21:03:34 +00:00