Commit Graph

2593 Commits

Author SHA1 Message Date
bjorn3
11007c02f7 Use fma(f) libm function for simd_fma intrinsic 2022-03-25 20:42:58 +01:00
bjorn3
3c030e2425 Fix NaN handling of simd float min and max operations 2022-03-25 20:25:11 +01:00
bjorn3
f3d97cce27 Fix saturating float casts test
Fixes #737
2022-03-25 19:32:14 +01:00
bjorn3
e336e1bccf Rustup to rustc 1.61.0-nightly (63b8f01bb 2022-03-24) 2022-03-25 17:28:39 +01:00
bjorn3
90999c4e9f Sync from rust 903427b2e8 2022-03-25 17:19:19 +01:00
bjorn3
cf1149fb38 Update list of ignored rustc tests 2022-03-22 12:35:49 +01:00
bjorn3
998fef8119 Rustup to rustc 1.61.0-nightly (3c17c84a3 2022-03-21) 2022-03-22 12:02:50 +01:00
bjorn3
1bd90f8644 Don't declare test_variadic_fnptr with two conflicting signatures
It is UB for LLVM and results in a compile error for Cranelift
2022-03-20 21:09:35 +01:00
bjorn3
26972c944b Merge branch 'sync_from_rust' 2022-03-20 16:56:00 +01:00
bjorn3
d1904e5855 Merge commit '370c397ec9169809e5ad270079712e0043514240' into sync_cg_clif-2022-03-20 2022-03-20 16:55:21 +01:00
bjorn3
370c397ec9 Run part of the simd test suite 2022-03-20 12:14:24 +01:00
bjorn3
636fb020c4 Ignore rustc tests with needs-unwind directive 2022-03-20 12:14:24 +01:00
bjorn3
e7e5016207 Move test and clarify problem of some other tests 2022-03-20 12:14:24 +01:00
bjorn3
215905cdc8 Wrap write_mir_fn call in with_no_trimmed_paths!() 2022-03-20 12:14:05 +01:00
bjorn3
8afa50c482 Rustup to rustc 1.61.0-nightly (1bfe40d11 2022-03-18) 2022-03-19 13:36:25 +01:00
bjorn3
670ee7ec28 Sync from rust 3153584170 2022-03-19 13:28:22 +01:00
bjorn3
ef4512b7dc Codegen 128bit atomic loads and stores for compiler builtins as trap
128bit atomics are unstable and only enabled on AArch64 and x86_64 macOS.
Cranelift doesn't support 128bit atomics yet.
2022-03-19 12:56:03 +01:00
bjorn3
31329f9841 Enable rand based libcore tests
Part of #806
2022-03-18 21:19:37 +01:00
bjorn3
6b0c411fe7 Cleanup rand test disable patch 2022-03-18 20:59:51 +01:00
bjorn3
dab7fc6155 Remove no longer necessary rand patch 2022-03-18 20:51:53 +01:00
bjorn3
70390a969d
Merge pull request #1221 from bjorn3/run_more_rustc_tests
Run more rustc tests
2022-03-18 19:32:45 +01:00
bjorn3
afd59464a9 Reorganize test list 2022-03-18 16:38:28 +01:00
bjorn3
d1c8cf76b0 Run tests with warnings 2022-03-18 15:38:58 +01:00
bjorn3
fc80e8b970 Re-enable fixed tests 2022-03-18 14:46:40 +01:00
bors
86daae2e6b Auto merge of #88098 - Amanieu:oom_panic, r=nagisa
Implement -Z oom=panic

This PR removes the `#[rustc_allocator_nounwind]` attribute on `alloc_error_handler` which allows it to unwind with a panic instead of always aborting. This is then used to implement `-Z oom=panic` as per RFC 2116 (tracking issue #43596).

Perf and binary size tests show negligible impact.
2022-03-18 03:01:46 +00:00
bjorn3
ce577f7f12 Fix and re-enable some rustc tests
* Set `config.opts.trimmed_def_paths` to `GoodPath` to trim def paths in
  error messages as expected by the rustc test suite
* Fix `$SRC_DIR` normalization for out of tree compiled standard library
2022-03-17 20:59:39 +01:00
bjorn3
9a8da8c64a Slightly speed up building of y.rs 2022-03-16 19:21:24 +01:00
mark
c56a10ca3b rustc_error: make ErrorReported impossible to construct
There are a few places were we have to construct it, though, and a few
places that are more invasive to change. To do this, we create a
constructor with a long obvious name.
2022-03-16 10:35:24 -05:00
bjorn3
64bc2352ee Silence warning 2022-03-16 12:05:02 +01:00
bjorn3
d08d32fa5d Trim down alloc_system.rs
It is used only by a single test. Also remove the dependency on the libc
crate.
2022-03-15 19:25:42 +01:00
bjorn3
5c666ea7ec Remove some unused feature gates 2022-03-15 19:25:33 +01:00
bjorn3
88c3719c68 Avoid once_cell unstable feature in cg_clif.rs 2022-03-15 19:25:33 +01:00
bjorn3
a900a5229a Download tarballs from github instead of cloning full repos
This saves 40-50s on CI as the repo history can be skipped
2022-03-15 12:44:06 +01:00
bjorn3
af008bdc66 Rustup to rustc 1.61.0-nightly (285fa7ecd 2022-03-14) 2022-03-15 11:21:42 +01:00
bjorn3
4ba83cbfca
Merge pull request #1220 from bjorn3/dont_print_on_trap
Replace a lot of print+trap with plain trap
2022-03-14 12:51:47 +01:00
bjorn3
d8e7501584 Replace a lot of print+trap with plain trap
This reduces binary sizes by a decent amount:

libstd.so: 17% reduction
mini_core_hello_world: 27% reduction
simple-raytracer: 27% reduction

This also improves compile time of simple-raytracer by 0.5s (4% +- 2%)
In addition it is also a pre-requisite for building standalone binaries.
2022-03-14 12:02:36 +01:00
bjorn3
90f8aefe71 Mark cold blocks 2022-03-13 19:36:40 +01:00
bjorn3
7eb454124f Update list of ignores rustc tests 2022-03-13 19:24:57 +01:00
bjorn3
a48fea6dda Add and remove some fixmes 2022-03-13 17:58:02 +01:00
bjorn3
fef517eae7 Remove almost all remaining feature gates
Only rustc_private is still enabled as cg_clif by definition needs to
use internal rustc api's.
2022-03-13 17:55:55 +01:00
bjorn3
cfc1a2cd68 Remove decl_macro usage
This reduces the amount of unstable features used by cg_clif
2022-03-13 15:19:48 +01:00
bjorn3
e937265673 Rustup to rustc 1.61.0-nightly (f103b2969 2022-03-12) 2022-03-13 15:04:33 +01:00
bjorn3
6e42ca187f Sync from rust 4800c7816e 2022-03-13 14:39:10 +01:00
Nicholas Nethercote
e439761b8f Improve AdtDef interning.
This commit makes `AdtDef` use `Interned`. Much the commit is tedious
changes to introduce getter functions. The interesting changes are in
`compiler/rustc_middle/src/ty/adt.rs`.
2022-03-11 13:31:24 +11:00
bjorn3
d2026d679e Update Cranelift to 0.82.1
This fixes a miscompilation
2022-03-10 14:50:09 +01:00
bjorn3
54920ff25e Add missing clif ir comment 2022-03-09 19:33:55 +01:00
bjorn3
01ffb98db5 Update dependencies 2022-03-08 20:08:50 +01:00
bjorn3
3ccf12acdd Update Cranelift to 0.82.0 2022-03-08 20:01:48 +01:00
bjorn3
401b03443b Fix Box deref for non-ZST allocators 2022-03-08 20:00:11 +01:00
bjorn3
5841caa6ef Fix compiletest compilation 2022-03-08 12:13:33 +01:00