bjorn3
49987faf87
Fix rustc test suite
2023-10-19 13:20:25 +00:00
bjorn3
b972010887
Fix CG_CLIF_DISABLE_INCR_CACHE
2023-10-19 12:44:27 +00:00
bjorn3
3c0d3f2bf1
Fix review comments
2023-10-09 18:39:43 +00:00
bjorn3
e006e2c9c6
Remove cgu_reuse_tracker from Session
...
This removes a bit of global mutable state
2023-10-09 18:39:41 +00:00
bjorn3
ed2f5baba6
Reuse determine_cgu_reuse from cg_ssa in cg_clif
2023-10-09 18:38:50 +00:00
bjorn3
5d85a24442
Merge commit '81dc066758ec150b43822d4a0c84aae20fe10f40' into sync_cg_clif-2023-10-09
2023-10-09 08:52:46 +00:00
John Kåre Alsaker
4f6e9fd8d3
Remove verbose_generic_activity_with_arg
2023-09-10 17:47:16 +02:00
Andrew Xie
f8cde5884d
Updated cranelift codegen to reflect modified trait signature
2023-06-04 21:54:38 -04:00
Nicholas Nethercote
a4c49374cb
Restrict From<S>
for {D,Subd}iagnosticMessage
.
...
Currently a `{D,Subd}iagnosticMessage` can be created from any type that
impls `Into<String>`. That includes `&str`, `String`, and `Cow<'static,
str>`, which are reasonable. It also includes `&String`, which is pretty
weird, and results in many places making unnecessary allocations for
patterns like this:
```
self.fatal(&format!(...))
```
This creates a string with `format!`, takes a reference, passes the
reference to `fatal`, which does an `into()`, which clones the
reference, doing a second allocation. Two allocations for a single
string, bleh.
This commit changes the `From` impls so that you can only create a
`{D,Subd}iagnosticMessage` from `&str`, `String`, or `Cow<'static,
str>`. This requires changing all the places that currently create one
from a `&String`. Most of these are of the `&format!(...)` form
described above; each one removes an unnecessary static `&`, plus an
allocation when executed. There are also a few places where the existing
use of `&String` was more reasonable; these now just use `clone()` at
the call site.
As well as making the code nicer and more efficient, this is a step
towards possibly using `Cow<'static, str>` in
`{D,Subd}iagnosticMessage::{Str,Eager}`. That would require changing
the `From<&'a str>` impls to `From<&'static str>`, which is doable, but
I'm not yet sure if it's worthwhile.
2023-05-03 08:44:39 +10:00
bjorn3
8bf550e616
Merge commit 'ef07e8e60f994ec014d049a95591426fb92ebb79' into sync_cg_clif-2023-04-29
2023-04-29 12:00:43 +00:00
bjorn3
7b3bd56ed9
Merge commit 'dec0daa8f6d0a0e1c702f169abb6bf3eee198c67' into sync_cg_clif-2023-03-15
2023-03-15 14:41:48 +00:00
Maybe Waffle
f58bd0e290
if $c:expr { Some($r:expr) } else { None }
=>> $c.then(|| $r)
2023-02-16 15:26:00 +00:00
bjorn3
56951e4f2b
Merge commit '7d53619064ab7045c383644cb445052d2a3d46db' into sync_cg_clif-2023-02-09
2023-02-09 12:38:16 +01:00
bjorn3
b67610f98a
Merge commit '598f0909568a51de8a2d1148f55a644fd8dffad0' into sync_cg_clif-2023-01-24
2023-01-24 18:56:42 +01:00
bjorn3
9950bd1dc5
Merge commit '266e96785ab71834b917bf474f130a6d8fdecd4b' into sync_cg_clif-2022-10-23
2022-10-23 16:22:55 +02:00
bjorn3
cfef0a4f8d
Merge commit 'e9d1a0a7b0b28dd422f1a790ccde532acafbf193' into sync_cg_clif-2022-08-24
2022-08-24 18:40:58 +02:00
Joshua Nelson
b2ae24e6a1
Rename debugging_opts
to unstable_opts
...
This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`).
Rename it to be more clear.
2022-07-13 17:47:06 -05:00
David Wood
69d0c1e9ac
incr: cache dwarf objects in work products
...
Cache DWARF objects alongside object files in work products when those
exist so that DWARF object files are available for thorin in packed mode
in incremental scenarios.
Signed-off-by: David Wood <david.wood@huawei.com>
2022-07-06 11:15:13 +01:00
bjorn3
3d8e854604
Make saved_file field of WorkProduct non-optional
...
A WorkProduct without a saved file is useless
2022-06-06 12:39:32 +00:00
bjorn3
bbb850931f
Factor Option out of copy_cgu_workproduct_to_incr_comp_cache_dir call
...
This improves clarity of the code a bit
2022-06-06 12:38:38 +00:00
bjorn3
5a1a111b52
Avoid an unnecessary clone for copy_cgu_workproduct_to_incr_comp_cache_dir calls
2022-06-06 12:32:08 +00:00
bjorn3
d5cb2bee82
Rename CodegenUnit::work_product to previous_work_product
...
It returns the previous work product or panics if there is none. This rename
makes the purpose of this method clearer.
2022-06-06 12:30:10 +00:00
Loïc BRANSTETT
69046fa8fd
Cleanup after some refactoring in rustc_target
2022-04-03 21:29:57 +02:00
bjorn3
b5cbb87e62
Merge commit '35d9c6bf256968e1b40e0d554607928bdf9cebea' into sync_cg_clif-2022-02-23
2022-02-23 11:49:34 +01:00
bjorn3
a5a14258e5
Merge commit '40b00f4200fbdeefd11815398cb46394b8cb0a5e' into sync_cg_clif-2021-12-30
2021-12-30 14:53:41 +01:00
bjorn3
799e067912
Merge commit '97e504549371d7640cf011d266e3c17394fdddac' into sync_cg_clif-2021-12-20
2021-12-20 18:56:35 +01:00
Nicholas Nethercote
93511d926f
Remove unnecessary sigils around Symbol::as_str()
calls.
2021-12-15 17:32:14 +11:00
Camille GILLOT
7879119e6a
Make hash_result an Option.
2021-10-20 18:29:18 +02:00
Camille GILLOT
04f3839596
Move EncodedMetadata to rustc_metadata.
2021-09-30 19:41:32 +02:00
bjorn3
5d3b8e7c1b
Merge commit '61667dedf55e3e5aa584f7ae2bd0471336b92ce9' into sync_cg_clif-2021-09-19
2021-09-19 13:56:58 +02:00
bjorn3
e6049759d0
Use in_incr_comp_dir_sess in cg_clif
2021-09-02 12:29:12 +02:00
bjorn3
fb92375755
Merge commit '3a31c6d8272c14388a34622193baf553636fe470' into sync_cg_clif-2021-07-07
2021-07-07 11:14:20 +02:00
bjorn3
135edbf4ba
Move LinkerInfo into CrateInfo
2021-07-06 15:31:38 +02:00
bjorn3
dbdeafbc26
Move crate_name field from OngoingCodegen to CrateInfo
2021-06-04 13:20:05 +02:00
bjorn3
646c6043a7
Move windows_subsystem field from CodegenResults to CrateInfo
2021-06-04 13:20:04 +02:00
bjorn3
d6b03451e6
Merge commit '40dd3e2b7089b5e96714e064b731f6dbf17c61a9' into sync_cg_clif-2021-05-27
2021-05-27 13:08:14 +02:00
bors
3c53005949
Auto merge of #85178 - cjgillot:local-crate, r=oli-obk
...
Remove CrateNum parameter for queries that only work on local crate
The pervasive `CrateNum` parameter is a remnant of the multi-crate rustc idea.
Using `()` as query key in those cases avoids having to worry about the validity of the query key.
2021-05-17 01:42:03 +00:00
Amanieu d'Antras
d342a3490b
Add support for const operands and options to global_asm!
...
On x86, the default syntax is also switched to Intel to match asm!
2021-05-13 22:31:57 +01:00
Camille GILLOT
915d766307
Use () for codegen queries.
2021-05-12 13:58:46 +02:00
bors
809722dc13
Auto merge of #83610 - bjorn3:driver_cleanup, r=cjgillot
...
rustc_driver cleanup
Best reviewed one commit at a time.
2021-05-12 08:38:03 +00:00
bjorn3
55dbf17bb5
Pass target_cpu to LinkerInfo::new instead of link_binary
...
This is one step towards separating the linking code from codegen backends
2021-05-02 18:00:20 +02:00
Erin Power
ee570b1302
Sync rustc_codegen_cranelift 'ddd4ce25535cf71203ba3700896131ce55fde795'
2021-04-30 14:49:58 +02:00
bjorn3
07968a001d
Merge commit '0969bc6dde001e01e7e1f58c8ccd7750f8a49ae1' into sync_cg_clif-2021-03-29
2021-03-29 10:45:09 +02:00
bjorn3
27886cd6b6
Merge commit '9a0c32934ebe376128230aa8da3275697b2053e7' into sync_cg_clif-2021-03-05
2021-03-05 19:12:59 +01:00
Camille GILLOT
702676bfff
Use a QueryContext for try_mark_green.
2021-02-19 17:51:56 +01:00
Camille GILLOT
fe8d11bb99
Use an ItemId inside mir::GlobalAsm.
2021-02-15 19:24:58 +01:00
bjorn3
a75f9bc3be
Merge commit 'd556c56f792756dd7cfec742b9f2e07612dc10f4' into sync_cg_clif-2021-02-01
2021-02-01 10:11:46 +01:00
bjorn3
77f74ed070
Merge commit 'dbee13661efa269cb4cd57bb4c6b99a19732b484' into sync_cg_clif-2020-12-27
2020-12-27 10:30:38 +01:00
David Wood
5f6c32af15
cg_clif: fix build with split dwarf
...
This commit makes minor changes to the cranelift backend so that it can
build given changes in cg_ssa for Split DWARF.
Signed-off-by: David Wood <david@davidtw.co>
2020-12-16 10:33:48 +00:00
bjorn3
d404840788
Merge commit '5988bbd24aa87732bfa1d111ba00bcdaa22c481a' into sync_cg_clif-2020-11-27
2020-11-27 20:48:53 +01:00