Commit Graph

2737 Commits

Author SHA1 Message Date
bjorn3
45b6cd6a8a Fix a crash for 11 single byte fields passed through the C abi
Fixes #1234
2022-06-28 14:32:31 +00:00
bjorn3
c1ac2df0c3 Allow building the sysroot with --emit llvm-ir 2022-06-28 11:55:37 +02:00
bjorn3
56c5c09618 Run regalloc checker on CI
This would have caught the issue that required releasing Cranelift 0.85.1
2022-06-28 11:53:40 +02:00
bjorn3
f060ae9d3d Update to Cranelift 0.85.1
This fixes a miscompilation
2022-06-28 11:52:21 +02:00
Nicholas Nethercote
f516ba2240 Update smallvec to 1.8.1.
This pulls in https://github.com/servo/rust-smallvec/pull/282, which
gives some small wins for rustc.
2022-06-27 08:48:55 +10:00
bjorn3
8a4557e01c Update for changes to the rustc test suite 2022-06-23 14:32:08 +00:00
bjorn3
439c323f9c Disable DWARF debuginfo on Windows
Windows uses PDB instead of DWARF and using DWARF debuginfo causes the linker to give an error
2022-06-23 16:06:46 +02:00
bjorn3
7c5fbacaf9 Update Cranelift to 0.85.0 2022-06-23 15:19:54 +02:00
bjorn3
6d5e8f3843 Adopt for "Remove dereferencing of Box from codegen" 2022-06-23 15:01:46 +02:00
bjorn3
c58a11e935 Rustup to rustc 1.63.0-nightly (10f4ce324 2022-06-22) 2022-06-23 14:58:55 +02:00
bjorn3
473e80eb28 Sync from rust 10f4ce324b 2022-06-23 14:52:31 +02:00
bors
92749f04c6 Auto merge of #98098 - bjorn3:archive_refactor, r=michaelwoerister
Remove the source archive functionality of ArchiveWriter

We now build archives through strictly additive means rather than taking an existing archive and potentially substracting parts. This is simpler and makes it easier to swap out the archive writer in https://github.com/rust-lang/rust/pull/97485.
2022-06-21 16:24:56 +00:00
bjorn3
73b3ae0b8a Remove the source archive functionality of ArchiveWriter
We now build archives through strictly additive means rather than taking
an existing archive and potentially substracting parts.
2022-06-19 12:56:31 +00:00
bjorn3
abb9b60f09 Fix "Remove src_files and remove_file" 2022-06-19 12:56:31 +00:00
Matthias Krüger
5543d22de2 Rollup merge of #98165 - WaffleLapkin:once_things_renamings, r=m-ou-se
once cell renamings

This PR does the renamings proposed in https://github.com/rust-lang/rust/issues/74465#issuecomment-1153703128

- Move/rename `lazy::{OnceCell, Lazy}` to `cell::{OnceCell, LazyCell}`
- Move/rename `lazy::{SyncOnceCell, SyncLazy}` to `sync::{OnceLock, LazyLock}`

(I used `Lazy...` instead of `...Lazy` as it seems to be more consistent, easier to pronounce, etc)

```@rustbot``` label +T-libs-api -T-libs
2022-06-19 00:17:13 +02:00
Yuki Okushi
449b309f2b Rollup merge of #97675 - nvzqz:unsized-needs-drop, r=dtolnay
Make `std::mem::needs_drop` accept `?Sized`

This change attempts to make `needs_drop` work with types like `[u8]` and `str`.

This enables code in types like `Arc<T>` that was not possible before, such as https://github.com/rust-lang/rust/pull/97676.
2022-06-17 07:16:55 +09:00
Maybe Waffle
6d8c45064b Move/rename lazy::Sync{OnceCell,Lazy} to sync::{Once,Lazy}Lock 2022-06-16 19:54:42 +04:00
bjorn3
fc0c753c2d Remove src_files and remove_file
They only apply to the main source archive and their role can be
fulfilled through the skip argument of add_archive too.
2022-06-14 15:11:14 +00:00
b-naber
9096b3e44f implement valtrees as the type-system representation for constant values 2022-06-14 16:07:11 +02:00
bjorn3
c431540544 Rustup to rustc 1.63.0-nightly (ca122c7eb 2022-06-13) 2022-06-14 12:34:26 +02:00
Nicholas Nethercote
ce2b3a9b4c Rename the ConstS::val field as kind.
And likewise for the `Const::val` method.

Because its type is called `ConstKind`. Also `val` is a confusing name
because `ConstKind` is an enum with seven variants, one of which is
called `Value`. Also, this gives consistency with `TyS` and `PredicateS`
which have `kind` fields.

The commit also renames a few `Const` variables from `val` to `c`, to
avoid confusion with the `ConstKind::Value` variant.
2022-06-14 13:06:44 +10:00
bjorn3
ec841f58d3 Fix running rustc tests
There are still two failures due to incorrect test annotations
2022-06-09 14:56:53 +00:00
bjorn3
a298c6908e Mark extern rust-cold calls as cold 2022-06-09 15:30:23 +02:00
bjorn3
875ffa19b1 Rustup to rustc 1.63.0-nightly (7466d5492 2022-06-08) 2022-06-09 15:25:44 +02:00
bjorn3
74f3916a77 Sync from rust be16c6166f 2022-06-09 15:18:41 +02:00
bors
b867d41ed4 Auto merge of #97825 - Dylan-DPC:rollup-ya51k1k, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #97058 (Various refactors to the incr comp workproduct handling)
 - #97301 (Allow unstable items to be re-exported unstably without requiring the feature be enabled)
 - #97738 (Fix ICEs from zsts within unsized types with non-zero offsets)
 - #97771 (Remove SIGIO reference on Haiku)
 - #97808 (Add some unstable target features for the wasm target codegen)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2022-06-07 11:08:58 +00:00
bors
d8bd0a950d Auto merge of #97512 - scottmcm:add-coldcc, r=nagisa,lcnr
Add support for emitting functions with `coldcc` to LLVM

The eventual goal is to try using this for things like the internal panicking stuff, to see whether it helps.
2022-06-07 08:12:45 +00: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
Nikolai Vazquez
eb5f23737b Fix unsized field order 2022-06-03 12:58:36 -04:00
Nikolai Vazquez
7a8b96f89d Make std::mem::needs_drop accept ?Sized 2022-06-03 03:28:19 -04:00
bjorn3
d628444e48 Remove workaround for bytecodealliance/wasmtime#3963 2022-06-02 20:50:45 +02:00
Ralf Jung
ede985e8b8 add cast kind of from_exposed_addr (int-to-ptr casts) 2022-06-02 10:46:13 -04:00
Ralf Jung
722c724a95 rename PointerAddress → PointerExposeAddress 2022-06-01 14:08:17 -04:00
Tomasz Miąsko
e60087505e Add a pointer to address cast kind
A pointer to address cast are often special-cased.
Introduce a dedicated cast kind to make them easy distinguishable.
2022-05-31 00:00:00 +00:00
Scott McMurray
4ee48c09ee Use CallConv::Cold in cranelift for extern "rust-cold" 2022-05-30 00:19:24 -07:00
Scott McMurray
e2f90f7f74 Add support for emitting functions with coldcc in LLVM
The eventual goal is to try using this for things like the internal panicking stuff, to see whether it helps.
2022-05-30 00:19:23 -07:00
5225225
d27ec6c86d Add flag for stricter checks on uninit/zeroed 2022-05-24 14:26:52 +01:00
Jakob Degen
5011ae46a1 Refactor call terminator to always hold a destination place 2022-05-23 17:49:04 -04:00
bjorn3
e97e40de22 Update rust-analyzer configuration 2022-05-22 20:35:24 +02:00
bjorn3
814ed4fa53 Rustup to rustc 1.63.0-nightly (c06728704 2022-05-19) 2022-05-20 18:19:15 +02:00
bjorn3
6c9a06e37d Update Cranelift and object 2022-05-20 16:44:20 +02:00
bjorn3
7a10059268 Fix symbol tables in case of multiple object files with the same name
Fixes #1228
2022-05-18 18:18:11 +02:00
bjorn3
01ab51bb16 Rustup to rustc 1.63.0-nightly (c52b9c10b 2022-05-16) 2022-05-17 11:39:43 +02:00
bjorn3
715533e936 Merge branch 'sync_from_rust' 2022-05-15 12:39:16 +02:00
bjorn3
d9025cebac Merge commit '63734fcdd718cca089f84c42f3a42c0096cfd431' into sync_cg_clif-2022-05-15 2022-05-15 12:32:19 +02:00
bjorn3
63734fcdd7 Rustup to rustc 1.62.0-nightly (70b3681bf 2022-05-14) 2022-05-15 12:26:21 +02:00
bjorn3
e5ff9f1b6d Sync from rust e1ec3260d7 2022-05-15 12:25:32 +02:00