Commit Graph

1419 Commits

Author SHA1 Message Date
beetrees
f26221a936 Refactor float Primitives to a separate Float type 2024-05-06 14:56:10 +01:00
bors
efa15ebfef Auto merge of #123441 - saethlin:fixed-len-file-names, r=oli-obk
Stabilize the size of incr comp object file names

The current implementation does not produce stable-length paths, and we create the paths in a way that makes our allocation behavior is nondeterministic. I think `@eddyb` fixed a number of other cases like this in the past, and this PR fixes another one. Whether that actually matters I have no idea, but we still have bimodal behavior in rustc-perf and the non-uniformity in `find` and `ls` was bothering me.

I've also removed the truncation of the mangled CGU names. Before this PR incr comp paths look like this:
```
target/debug/incremental/scratch-38izrrq90cex7/s-gux6gz0ow8-1ph76gg-ewe1xj434l26w9up5bedsojpd/261xgo1oqnd90ry5.o
```
And after, they look like this:
```
target/debug/incremental/scratch-035omutqbfkbw/s-gux6borni0-16r3v1j-6n64tmwqzchtgqzwwim5amuga/55v2re42sztc8je9bva6g8ft3.o
```

On the one hand, I'm sure this will break some people's builds because they're on Windows and only a few bytes from the path length limit. But if we're that seriously worried about the length of our file names, I have some other ideas on how to make them smaller. And last time I deleted some hash truncations from the compiler, there was a huge drop in the number if incremental compilation ICEs that were reported: https://github.com/rust-lang/rust/pull/110367https://github.com/rust-lang/rust/pull/110367

---

Upon further reading, this PR actually fixes a bug. This comment says the CGU names are supposed to be a fixed-length hash, and before this PR they aren't: ca7d34efa9/compiler/rustc_monomorphize/src/partitioning.rs (L445-L448)
2024-05-03 17:41:48 +00:00
antoyo
d7c8e0fb43
Merge pull request #510 from GuillaumeGomez/fmt-cmd
Add `fmt` command
2024-05-03 08:07:47 -04:00
Guillaume Gomez
7e369b314b Simplify fmt check in CI 2024-05-03 11:52:47 +02:00
Guillaume Gomez
bd7c57b8cd Add fmt command 2024-05-03 11:52:47 +02:00
Guillaume Gomez
aee803b542
Merge pull request #512 from rust-lang/fix/tests
Fix segfault in tests due to a bug in libc 0.2.154
2024-05-03 00:05:22 +02:00
Antoni Boucher
5166efc3eb Fix segfault in tests due to a bug in libc 0.2.154
We now keep the Cargo.lock to fix the version of libc to 0.2.153.
2024-05-02 17:29:07 -04:00
Matthias Krüger
7ed351a508 Rollup merge of #124624 - WaffleLapkin:old_unit, r=fmease
Use `tcx.types.unit` instead of `Ty::new_unit(tcx)`

I don't think there is any need for the function, given that we can just access the `.types`, similarly to all other primitives?
2024-05-02 19:42:50 +02:00
Waffle Lapkin
3ea32a746d Inline & delete Ty::new_unit, since it's just a field access 2024-05-02 17:49:23 +02:00
Mark Rousskov
2b875f0927 Step bootstrap cfgs 2024-05-01 22:19:11 -04:00
antoyo
f557bc4680
Merge pull request #509 from GuillaumeGomez/signal-swallowing
Stop swallowing signals in build_system when running sub-commands
2024-05-01 10:29:14 -04:00
Guillaume Gomez
766f59d7f2 Stop swallowing signals in build_system when running sub-commands 2024-05-01 15:56:47 +02:00
antoyo
0f87072fdf
Merge pull request #508 from rust-lang/fix/aarch64
Some more fixes and workarounds for Aarch64
2024-04-29 11:34:59 -04:00
Antoni Boucher
9ed0543964 Some more fixes and workarounds for Aarch64 2024-04-29 11:07:54 -04:00
Guillaume Gomez
a79c5766e9
Merge pull request #507 from GuillaumeGomez/change-ci-download-urls
Download artifacts from `rust-lang/gcc` instead of old `antoyo/gcc`
2024-04-28 16:17:04 +02:00
Guillaume Gomez
4267ff0656 Download artifacts from rust-lang/gcc instead of old antoyo/gcc 2024-04-26 14:02:19 +02:00
antoyo
d408f23622
Merge pull request #504 from rust-lang/fix/aarch64
Some fixes for aarch64
2024-04-24 20:37:34 -04:00
Antoni Boucher
65e8717e45 Some fixes for aarch64 2024-04-24 20:15:15 -04:00
antoyo
01b0fb7b56
Merge pull request #494 from darcagn/custom_rustlib
Modify build_system's prepare stage to allow for custom sysroot source path
2024-04-24 19:25:38 -04:00
darc
04932ea22f Modify build_system's prepare stage to allow for custom sysroot source path 2024-04-24 16:53:44 -05:00
Oli Scherer
df0639b6e1 Error on using yield without also using #[coroutine] on the closure
And suggest adding the `#[coroutine]` to the closure
2024-04-24 08:05:29 +00:00
bors
752af44fc4 Auto merge of #122053 - erikdesjardins:alloca, r=nikic
Stop using LLVM struct types for alloca

The alloca type has no semantic meaning, only the size (and alignment, but we specify it explicitly) matter. Using `[N x i8]` is a more direct way to specify that we want `N` bytes, and avoids relying on LLVM's struct layout. It is likely that a future LLVM version will change to an untyped alloca representation.

Split out from #121577.

r? `@ghost`
2024-04-24 03:00:44 +00:00
Matthias Krüger
79d217fcf1 Rollup merge of #124003 - WaffleLapkin:dellvmization, r=scottmcm,RalfJung,antoyo
Dellvmize some intrinsics (use `u32` instead of `Self` in some integer intrinsics)

This implements https://github.com/rust-lang/compiler-team/issues/693 minus what was implemented in #123226.

Note: I decided to _not_ change `shl`/... builder methods, as it just doesn't seem worth it.

r? ``@scottmcm``
2024-04-23 20:17:51 +02:00
Ben Kimock
2d082aedf7 Stabilize the size of incr comp object file names 2024-04-22 10:50:07 -04:00
antoyo
41839175b0
Merge pull request #498 from rust-lang/fix/pass-indirect-with-params
Fix PassMode::Indirect with params
2024-04-22 09:44:46 -04:00
Antoni Boucher
f9a0c3fb0f Fix PassMode::Indirect with params 2024-04-22 09:14:28 -04:00
许杰友 Jieyou Xu (Joe)
224285d9fc Rollup merge of #123967 - RalfJung:static_mut_refs, r=Nilstrieb
static_mut_refs: use raw pointers to remove the remaining FIXME

Using `SyncUnsafeCell` would not make a lot of sense IMO.
2024-04-20 21:45:35 +01:00
Maybe Waffle
dd50f454c8 Fixup rustc_codegen_gcc test signature 2024-04-20 12:18:21 +00:00
antoyo
4a52f9579a
Merge pull request #500 from rust-lang/fix/type-kind
Implement more type kinds
2024-04-19 21:53:40 -04:00
antoyo
9941c3590d
Merge pull request #499 from rust-lang/fix/unreachable-in-get_fn
Fix panic when calling get_fn for a variable
2024-04-19 21:26:48 -04:00
Antoni Boucher
89ee0f997c Implement more type kinds 2024-04-19 21:23:56 -04:00
antoyo
e26e7aeb9a
Merge pull request #497 from rust-lang/fix/add-block-to-imported-main-function
Fix check for main function already declared
2024-04-19 21:20:16 -04:00
Antoni Boucher
9b628f8e82 Fix panic when calling get_fn for a variable 2024-04-19 20:57:40 -04:00
Antoni Boucher
7cd561efd6 Fix check for main function already declared 2024-04-19 20:55:59 -04:00
bors
0f17e5ae23 Auto merge of #117919 - daxpedda:wasm-c-abi, r=wesleywiser
Introduce perma-unstable `wasm-c-abi` flag

Now that `wasm-bindgen` v0.2.88 supports the spec-compliant C ABI, the idea is to switch to that in a future version of Rust. In the meantime it would be good to let people test and play around with it.

This PR introduces a new perma-unstable `-Zwasm-c-abi` compiler flag, which switches to the new spec-compliant C ABI when targeting `wasm32-unknown-unknown`.

Alternatively, we could also stabilize this and then deprecate it when we switch. I will leave this to the Rust maintainers to decide.

This is a companion PR to #117918, but they could be merged independently.
MCP: https://github.com/rust-lang/compiler-team/issues/703
Tracking issue: https://github.com/rust-lang/rust/issues/122532
2024-04-19 03:35:10 +00:00
antoyo
ab7d138d16
Merge pull request #493 from darcagn/master
Fix passing custom CG_RUSTFLAGS when building sysroot
2024-04-17 18:11:52 -04:00
Gerson
6e5395a414
Updating readme instructions (#489) 2024-04-17 11:31:18 -04:00
darc
50a0d5b816 Fix passing custom CG_RUSTFLAGS when building sysroot 2024-04-17 10:02:10 -05:00
antoyo
56a022f5e5
Merge pull request #492 from antoyo/master
Sync fork
2024-04-17 08:26:57 -04:00
antoyo
f3ff769dd5
Merge pull request #18 from GuillaumeGomez/default-download
Default to `download-gccjit` instead of `gcc-path`
2024-04-17 07:40:57 -04:00
アレーク
5584f5f1a2
updated build system script commands (#490)
updated build system script commands
2024-04-16 23:59:47 +02:00
Ralf Jung
6f36e82594 static_mut_refs: use raw pointers to remove the remaining FIXME 2024-04-15 18:45:56 +02:00
Guillaume Gomez
a3cd6e7a31 Default to download-gccjit instead of gcc-path 2024-04-13 21:31:57 +02:00
Erik Desjardins
50a147152d restore location in gcc alloca codegen 2024-04-12 08:36:22 -04:00
Erik Desjardins
4ea338942b use [N x i8] for alloca types 2024-04-11 21:42:35 -04:00
Scott McMurray
cccf379a5b Put PlaceValue into OperandValue::Ref, rather than 3 tuple fields 2024-04-11 00:10:10 -07:00
Scott McMurray
b9b05d5a23 Make PlaceRef hold a PlaceValue for the non-layout fields (like OperandRef does) 2024-04-11 00:10:10 -07:00
Shashank Trivedi
8692192582
build sysroot flag (#16) 2024-04-10 08:23:51 -04:00
antoyo
7531a22bbe
Merge pull request #486 from antoyo/master
Merge fork
2024-04-07 08:56:18 -04:00
antoyo
c7f1d5d409
Merge pull request #15 from GuillaumeGomez/add-rustc-command
Add rustc command to build system
2024-04-06 23:05:10 -04:00