Commit Graph

4456 Commits

Author SHA1 Message Date
bjorn3
d515e881a7 Disable f16 and f128 in compiler-builtins when running rustc tests 2024-08-09 15:51:43 +00:00
bjorn3
d61b0e782f Rustup to rustc 1.82.0-nightly (3e9bd8b56 2024-08-08) 2024-08-09 15:38:46 +00:00
Nicholas Nethercote
b8b3a9328f Shrink TyKind::FnPtr.
By splitting the `FnSig` within `TyKind::FnPtr` into `FnSigTys` and
`FnHeader`, which can be packed more efficiently. This reduces the size
of the hot `TyKind` type from 32 bytes to 24 bytes on 64-bit platforms.
This reduces peak memory usage by a few percent on some benchmarks. It
also reduces cache misses and page faults similarly, though this doesn't
translate to clear cycles or wall-time improvements on CI.
2024-08-09 14:33:25 +10:00
bjorn3
a2f3413922
Merge pull request #1524 from dpaoliello/rawdylib
Add support for raw-dylib
2024-08-08 23:45:20 +02:00
Daniel Paoliello
2756bd6ff7 Add support for raw-dylib 2024-08-08 13:51:58 -07:00
bjorn3
fdc6a5562b Fix rustc test suite 2024-08-08 21:54:20 +02:00
bjorn3
60ffec8b4a Rustup to rustc 1.82.0-nightly (8b3870784 2024-08-07) 2024-08-08 19:25:20 +00:00
Michael Goulet
e96ece7c0b Rename struct_tail_erasing_lifetimes to struct_tail_for_codegen 2024-08-08 12:15:16 -04:00
bjorn3
82605c4b5c Sync from rust 8b3870784f 2024-08-08 14:55:59 +00:00
bjorn3
14d020f88d Remove no longer used vendor intrinsic implementations 2024-08-07 10:00:13 +00:00
bjorn3
76f615ef1f Rustup to rustc 1.82.0-nightly (60d146580 2024-08-06) 2024-08-07 09:54:55 +00:00
bjorn3
6ef49b2ea3 Run abi-cafe tests for pull requests too 2024-08-07 09:35:31 +00:00
bjorn3
52f1ea4915 Don't skip running abi-cafe tests that give SIGILL on Windows 2024-08-05 19:13:52 +00:00
bjorn3
747adbdbe8
Merge pull request #1515 from lqd/abi-cafe
enable abi-cafe tests on `aarch64-apple-darwin`
2024-08-05 19:14:01 +02:00
Rémy Rakic
1f19cdf659 mark busted tests for aarch64-apple-darwin and aarch64-unknown-linux-gnu 2024-08-05 16:44:30 +00:00
Rémy Rakic
b3df6dcb60 ensure the download folder exists when running abi-cafe 2024-08-05 16:19:58 +00:00
Ralf Jung
80a7d5f61d nontemporal_store: make sure that the intrinsic is truly just a hint 2024-08-05 10:57:14 +02:00
Rémy Rakic
9ad44ba737 enable abi-cafe tests on aarch64-apple-darwin 2024-08-04 08:44:40 +00:00
bjorn3
395181c9bf
Merge pull request #1523 from rust-lang/update_abi_cafe
Update abi-cafe
2024-08-02 20:20:05 +02:00
bjorn3
e52af665f5 Update abi-cafe
This has found a couple of new abi issues. I also had to disable the
abi-cafe tests for the MinGW target as one of these abi issues causes a
hang and abi-cafe doesn't yet support timeouts.
2024-08-02 18:08:29 +00:00
bjorn3
c48b010845 Implement x86 _mm_sqrt_ss vendor intrinsic 2024-08-02 16:24:08 +02:00
bjorn3
9bad4b620f Fix rustc test suite 2024-08-02 16:06:02 +02:00
bjorn3
7bdafb5f6a Rustup to rustc 1.82.0-nightly (8e86c9567 2024-08-01) 2024-08-02 11:40:01 +00:00
bjorn3
e47c930f08 Sync from rust 8e86c95671 2024-08-02 11:24:34 +00:00
bjorn3
f340c81caa Statically enable a couple of target features always enabled on arm64 macOS
Ring fails to compile when they are not statically enabled when
compiling for macOS.

Fixes rust-lang/rustc_codegen_cranelift#1522
2024-07-31 15:33:58 +02:00
bjorn3
37da264107 Move computation of decorated names out of the create_dll_import_lib method 2024-07-30 10:32:32 +00:00
bjorn3
161d2476d5 Move temp file name generation out of the create_dll_import_lib method 2024-07-30 10:10:41 +00:00
bors
d35f63e303 Auto merge of #125016 - nicholasbishop:bishop-cb-112, r=tgross35
Update compiler_builtins to 0.1.114

The `weak-intrinsics` feature was removed from compiler_builtins in https://github.com/rust-lang/compiler-builtins/pull/598, so dropped the `compiler-builtins-weak-intrinsics` feature from alloc/std/sysroot.

In https://github.com/rust-lang/compiler-builtins/pull/593, some builtins for f16/f128 were added. These don't work for all compiler backends, so add a `compiler-builtins-no-f16-f128` feature and disable it for cranelift and gcc.
2024-07-29 07:41:33 +00:00
Nicholas Bishop
5cd1e8d9ab Update compiler_builtins to 0.1.114
The `weak-intrinsics` feature was removed from compiler_builtins in
https://github.com/rust-lang/compiler-builtins/pull/598, so dropped the
`compiler-builtins-weak-intrinsics` feature from alloc/std/sysroot.

In https://github.com/rust-lang/compiler-builtins/pull/593, some
builtins for f16/f128 were added. These don't work for all compiler
backends, so add a `compiler-builtins-no-f16-f128` feature and disable
it for cranelift and gcc. Also disable it for LLVM targets that don't
support it.
2024-07-28 20:43:07 -04:00
Nicholas Nethercote
ea9f491696 Reformat use declarations.
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
2024-07-29 08:26:52 +10:00
Nicholas Nethercote
b00404e1a1 Update use declarations formatting options.
As decided in rust-lang/compiler-team#750.

Use declarations are currently wildly inconsistent because rustfmt is
quite unopinionated about how they should be formatted. The
`rustfmt.toml` additions makes rustfmt more opinionated, which avoids
the need for any decision when adding new use declarations to a file.

This commit only updates `rustfmt.toml` and
`compiler/rustc_codegen_cranelift/rustfmt.toml`. The next commit will do
the reformatting.
2024-07-29 08:26:08 +10:00
Slanterns
62a0c22ca9 stabilize is_sorted 2024-07-28 03:11:54 +08:00
bjorn3
68b99fcb91 Rustup to rustc 1.82.0-nightly (7c2012d0e 2024-07-26) 2024-07-27 17:22:59 +00:00
bjorn3
aaffce98e2 Sync from rust 7c2012d0ec 2024-07-27 17:16:14 +00:00
bjorn3
39bc103817 Fix rustc test suite 2024-07-25 16:17:24 +00:00
bjorn3
d768359716 Rustup to rustc 1.82.0-nightly (c1a6199e9 2024-07-24) 2024-07-25 15:16:41 +00:00
bjorn3
f73c411ec2 Sync from rust c1a6199e9d 2024-07-25 15:08:19 +00:00
bjorn3
b2e612f204 Update Cranelift to 0.110.1 2024-07-25 14:50:02 +00:00
GnomedDev
486f5b5059 Use Cow<'static, str> for InlineAsmTemplatePiece::String 2024-07-24 21:11:55 +01:00
许杰友 Jieyou Xu (Joe)
f85d741d6f Rollup merge of #127177 - bjorn3:arm64_macos_cg_clif, r=Mark-Simulacrum
Distribute rustc_codegen_cranelift for arm64 macOS

Support for arm64 macOS has been added to rustc_codegen_cranelift recently.

Fixes https://github.com/rust-lang/rustc_codegen_cranelift/issues/1502
2024-07-22 16:44:02 +08:00
beetrees
4fb3c4bf86
Fix handling of large alignments in write_cvalue_maybe_transmute (#1521) 2024-07-21 13:13:58 +02:00
beetrees
b70ad2defd
Remove unneeded libcalls from codegen_i128.rs 2024-07-20 21:18:30 +01:00
bjorn3
b929b68a5b
Remove the RUSTFLAGS enable method from Readme.md
It is a worse option than using `CARGO_PROFILE_DEV_CODEGEN_BACKEND`.
When using `--target` it doesn't apply to build scripts and proc macros.
It also overrides any `RUSTFLAGS` you may have set in an env var or
cargo config.
2024-07-20 15:26:46 +02:00
Matthias Krüger
0c9ba01011 Rollup merge of #127779 - momvart:should_codegen_hook, r=cjgillot
Add a hook for `should_codegen_locally`

This PR lifts the module-local function `should_codegen_locally` to `TyCtxt` as a hook.
In addition to monomorphization, this function is used for checking the dependency of `compiler_builtins` on other libraries. Moving this function to the hooks also makes overriding it possible for the tools that use the rustc interface.
2024-07-20 13:24:52 +02:00
Yuri Astrakhan
c1c13bd07c Avoid ref when using format! in compiler
Clean up a few minor refs in `format!` macro, as it has a performance cost. Apparently the compiler is unable to inline `format!("{}", &variable)`, and does a run-time double-reference instead (format macro already does one level referencing).  Inlining format args prevents accidental `&` misuse.
2024-07-19 14:52:07 -04:00
Trevor Gross
25dce8f92b Rollup merge of #124033 - bjorn3:ar_archive_writer_0_3_0, r=davidtwco
Sync ar_archive_writer to LLVM 18.1.3

From LLVM 15.0.0-rc3. This adds support for COFF archives containing Arm64EC object files and has various fixes for AIX big archive files.
2024-07-16 16:15:13 -05:00
Chai T. Rex
580cdfa6a7 Added project-specific Zed IDE settings
Created `.zed/settings.json` with all the settings from
`.vscode/settings.json`.
2024-07-16 11:14:04 -04:00
Mohammad Omidvar
c01fe3ceac Move compiler_builtin check to the use case 2024-07-15 23:43:52 +00:00
Rémy Rakic
5203b7e10d
Set rustup profile to minimal (#1516) 2024-07-14 16:59:06 +02:00
bjorn3
cceadba338 Merge branch 'sync_from_rust' 2024-07-13 18:40:39 +00:00