Commit Graph

99 Commits

Author SHA1 Message Date
bjorn3
b56d4ab66b Update portable-simd test 2023-04-25 12:32:24 +00:00
bjorn3
4ece6d0e44 Minor build perf optimization 2023-04-13 13:29:00 +00:00
bjorn3
4435686a48 Fix warnings when building the build system in rust's CI 2023-04-13 13:17:01 +00:00
bjorn3
c0f2b10e15 Skip building crates without tests for regex
regex-capi and regex-debug don't have any tests. Nor do they contain any
code that is useful to test with cg_clif.
2023-03-26 14:07:51 +00:00
bjorn3
5b1268d16b Update portable-simd
This avoids building wasm-bindgen-test on non-wasm targets, reducing
test time.
2023-03-26 13:44:21 +00:00
bjorn3
ae0a22cb89 Update regex to fix FreeBSD tests
Fixes #1360
2023-03-21 14:52:03 +00:00
bjorn3
b88e129915 Avoid a duplicate "[TEST] rust-random/rand" 2023-02-26 17:37:29 +00:00
bjorn3
c615e9248a Run tests for all crates in the regex workspace 2023-02-26 17:35:53 +00:00
bjorn3
b193419ec7 Allow multiple threads and panicking tests when testing regex
I guess this was a leftover from very early in the development of
cg_clif. Allowing multiple threads significantly improves performance,
while panicking tests can run now thanks to -Zpanic-abort-tests.
2023-02-26 16:50:08 +00:00
bjorn3
19ed2139a3 Remove no longer necessary code removing "[codegen mono items]" from test output 2023-02-26 14:34:36 +00:00
bjorn3
5e6cde150e Remove --cap-lint warn from regex test 2023-02-26 14:34:36 +00:00
bjorn3
7a864c8ef5 Update test repo versions 2023-02-26 14:34:28 +00:00
bjorn3
aea3bd6641 Re-enable DataflowConstProp for standard library builds 2023-02-26 13:01:47 +00:00
bjorn3
a45a81a6a2 Patch coretests separately from the standard library source 2023-02-26 12:15:25 +00:00
bjorn3
f79601fbb0 Reduce verbosity of rand testing 2023-02-25 18:01:42 +00:00
bjorn3
26d0d255ce Reduce verbosity of libcore testing 2023-02-25 17:48:45 +00:00
bjorn3
916a6c17df Update portable-simd 2023-02-19 17:46:51 +00:00
bjorn3
98ddd69aae Add wrappers to dist/bin/ too in addition to dist/
Rust's build system since recently expects rustc to be in a bin/
directory if it is specified using the rustc option in config.toml.
2023-02-19 15:28:01 +00:00
bjorn3
8ed6baa749 Rustup to rustc 1.69.0-nightly (2d14db321 2023-02-15) 2023-02-17 18:42:33 +01:00
bjorn3
9491031f9a Rustup to rustc 1.69.0-nightly (0416b1a6f 2023-02-14) 2023-02-17 18:42:14 +01:00
bjorn3
761a91ade8 Build CI dist artifacts without debug assertions
This significantly improves performance. For example for the
simple-raytracer benchmark it goes from a 13% improvement over LLVM to
39% improvement over LLVM.
2023-02-04 11:31:17 +00:00
bjorn3
efb92a1ae8 Use packed debuginfo for the sysroot on macOS
This reduces the sysroot size
2023-02-03 20:02:15 +00:00
bjorn3
79f4cc0822 Run y.rs bench in CI 2023-01-31 18:14:54 +00:00
bjorn3
d1024b6560 Fix y.rs bench 2023-01-31 17:44:29 +00:00
bjorn3
3ba9b13490 Don't download abi-cafe and simple-raytracer in ./y.rs prepare
Instead download them on the fly
2023-01-27 18:44:19 +00:00
bjorn3
4e87f13054 Fix a couple of TOCTOU occurences 2023-01-19 15:58:40 +00:00
bjorn3
7095783268 Only run abi-cafe on cg_clif's CI 2023-01-16 11:21:37 +00:00
bjorn3
0f4df8fb0e Eliminate a couple of extra calls
This is an additional 17% improvement on ./y.rs compile --sysroot none

Benchmark 1: ./y_before.bin build --sysroot none
  Time (mean ± σ):      1.533 s ±  0.022 s    [User: 1.411 s, System: 0.471 s]
  Range (min … max):    1.517 s …  1.589 s    10 runs

Benchmark 2: ./y_after.bin build --sysroot none
  Time (mean ± σ):      1.311 s ±  0.020 s    [User: 1.232 s, System: 0.428 s]
  Range (min … max):    1.298 s …  1.366 s    10 runs

Summary
  './y_after.bin build --sysroot none' ran
    1.17 ± 0.02 times faster than './y_before.bin build --sysroot none'
2023-01-15 15:20:36 +00:00
bjorn3
abcff71bec Significantly speed up assembling of sysroots
By avoiding some redundant rustc calls and stripping debuginfo for
wrappers. ./y.rs build --sysroot none now runs 44% faster.

Benchmark 1: ./y_before.bin build --sysroot none
  Time (mean ± σ):      2.200 s ±  0.038 s    [User: 2.140 s, System: 0.653 s]
  Range (min … max):    2.171 s …  2.303 s    10 runs

Benchmark 2: ./y_after.bin build --sysroot none
  Time (mean ± σ):      1.528 s ±  0.020 s    [User: 1.388 s, System: 0.490 s]
  Range (min … max):    1.508 s …  1.580 s    10 runs

Summary
  './y_after.bin build --sysroot none' ran
    1.44 ± 0.03 times faster than './y_before.bin build --sysroot none'
2023-01-15 14:14:13 +00:00
bjorn3
13197322ec Skip creating sysroot target dir if it will be empty 2023-01-14 18:45:47 +00:00
bjorn3
280dffd82c Build rtstartup for none sysroot too
Even mini_core needs it
2023-01-14 18:41:22 +00:00
bjorn3
fd83b27945 Port llvm sysroot building to SysrootTarget too and dedup some code 2023-01-14 18:25:43 +00:00
bjorn3
0ac4456351 Move rtstartup build to build_clif_sysroot_for_triple
Also pass build/rtstartup as sysroot when building the standard library
2023-01-14 17:51:54 +00:00
bjorn3
6f1e1775d3 Introduce SysrootTarget 2023-01-14 17:40:16 +00:00
bjorn3
c950f2265e Build rtstartup for MinGW from scratch
Rather than copying it from an existing sysroot
2023-01-14 17:02:21 +00:00
bjorn3
629eab79c1 Avoid hard-coded rustc when building wrappers 2023-01-14 14:18:11 +00:00
bjorn3
22c5249f68 Don't hard-code rustc path in get_rustc_version and get_default_sysroot 2023-01-14 14:18:11 +00:00
bjorn3
4dbafefe74 Return Compiler from build_sysroot 2023-01-14 14:18:11 +00:00
bjorn3
bbb7a3b9b9 Rename Compiler variables for clarity 2023-01-14 14:18:11 +00:00
bjorn3
fd1e824d88 Minor changes to the TestRunner::new signature 2023-01-14 14:18:11 +00:00
bjorn3
5e452ba616 Set RUSTC and RUSTDOC env vars to invalid values to catch forgetting to set them 2023-01-14 14:18:11 +00:00
bjorn3
a09712e0d2 Use fs::remove_dir_all instead of cargo clean 2023-01-14 14:18:11 +00:00
bjorn3
9bc113fb3c Minor consistency improvement 2023-01-14 14:18:11 +00:00
bjorn3
bdcbf47df3 Improve readme and build system help message 2023-01-13 16:34:43 +00:00
bjorn3
a3468770e3 Rustfmt 2023-01-13 16:13:26 +00:00
bjorn3
be8f656fac Pass --frozen to cargo to ensure ./y.rs prepare fetches all deps 2023-01-13 16:13:26 +00:00
bjorn3
957d78c479 Fetch all cargo dependencies in ./y.rs prepare 2023-01-13 15:40:22 +00:00
bjorn3
1a89507d7c Don't use the diff command in regex test
The output is small enough that getting a pretty diff isn't important.
In addition this reduces the amount of commands the build system depends
on.
2023-01-13 15:29:28 +00:00
bjorn3
890c61216a Set core.autocrlf=false in the build system instead of CI config 2023-01-13 15:29:26 +00:00
bjorn3
9a15db6dd0 Add git_command helper 2023-01-13 15:28:47 +00:00