bjorn3
33e73091f8
Don't mark unwind ebbs as cold
...
This fixes the code_layout optimization, as it would previously try to
move non-existing ebbs.
Fixes #877
2020-02-01 16:47:35 +01:00
bjorn3
52d183ead6
Update smallvec to 1.2.0
2020-02-01 12:35:45 +01:00
bjorn3
8150f737c0
Rustup to rustc 1.42.0-nightly ( cd1ef390e
2020-01-31)
2020-02-01 12:35:03 +01:00
bjorn3
f12c0d8ac7
Update thiserror
2020-01-29 11:32:59 +01:00
bjorn3
7ec6bb21b6
Update Cranelift
2020-01-29 11:31:17 +01:00
bjorn3
9cdea312cf
Rustup to rustc 1.42.0-nightly ( 3761dcd34
2020-01-28)
2020-01-29 11:21:29 +01:00
dependabot-preview[bot]
2ad2ea7343
Merge pull request #883 from bjorn3/dependabot/cargo/cranelift-codegen-9a578c1
2020-01-27 08:07:20 +00:00
dependabot-preview[bot]
09c97475fb
Bump cranelift-codegen from 93e3bc1
to 9a578c1
...
Bumps [cranelift-codegen](https://github.com/bytecodealliance/cranelift ) from `93e3bc1` to `9a578c1`.
- [Release notes](https://github.com/bytecodealliance/cranelift/releases )
- [Commits](93e3bc1998...9a578c1092
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-27 05:09:35 +00:00
bjorn3
d821f154c5
Disable the code_layout optimization
...
When compiling libcore, it causes ebb params to be dropped for a certain function
2020-01-25 17:55:48 +01:00
bjorn3
92d4356130
Add #[cfg(debug_assertions)] to write_clif_file
...
This silences a warning in release mode
2020-01-25 17:54:49 +01:00
bjorn3
8de317dd8f
Update compiler_builtins
2020-01-25 17:24:45 +01:00
bjorn3
74c7a7b7c5
Replace unimplemented! with unreachable! when it will never be supported
2020-01-25 16:24:48 +01:00
bjorn3
242f2e3c75
Fix correctness of optimization
2020-01-25 16:24:15 +01:00
bjorn3
9cfb9470c5
Allow unsized types as function parameters
2020-01-25 16:23:54 +01:00
bjorn3
bcb469e147
Remove outdated troubleshooting section
...
The nightly version is pinned since recently
2020-01-25 12:28:22 +01:00
bjorn3
eec023eb85
Rustup to rustc 1.42.0-nightly ( c2d141df5
2020-01-24)
2020-01-25 12:01:35 +01:00
bjorn3
1db38c0dfc
Re-introduce FnBox
2020-01-22 20:24:17 +01:00
bjorn3
85ce626865
Improve PlaceElem::Subslice handling
2020-01-22 20:10:00 +01:00
bjorn3
ddd3d95a7e
Make atomic instructions atomic using a global lock
2020-01-22 20:09:55 +01:00
bjorn3
a3f378754b
Warn when using LTO
2020-01-22 20:06:05 +01:00
bjorn3
aa5c49cf2f
Make unused stack slots zero sized in stack2reg
2020-01-22 18:57:36 +01:00
bjorn3
167c7f2201
Don't force static refs to const memory
2020-01-22 18:56:50 +01:00
bjorn3
c4acc78e4d
Allow more types in CValue::const_val
2020-01-22 18:56:36 +01:00
bjorn3
83f6ef1558
Rustup to rustc 1.42.0-nightly ( 689fca01c
2020-01-17)
2020-01-22 18:09:20 +01:00
bjorn3
3197971095
Update dependencies
2020-01-22 18:09:00 +01:00
bjorn3
24fd604540
Update Cranelift
...
As basic blocks now work, they are enabled.
2020-01-22 18:04:11 +01:00
dependabot-preview[bot]
41d34b54a9
Merge pull request #872 from bjorn3/dependabot/cargo/cranelift-codegen-062e984
2020-01-20 06:35:05 +00:00
dependabot-preview[bot]
98fc3b0c27
Bump cranelift-codegen from 3268b0d
to 062e984
...
Bumps [cranelift-codegen](https://github.com/bytecodealliance/cranelift ) from `3268b0d` to `062e984`.
- [Release notes](https://github.com/bytecodealliance/cranelift/releases )
- [Commits](3268b0d11f...062e984cdd
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 05:11:56 +00:00
bjorn3
160dcefab8
Correct commit message in rustup.sh
2020-01-15 20:20:30 +01:00
bjorn3
6a246dca93
rustc 1.42.0-nightly ( 31dd4f4ac
2020-01-13)
2020-01-15 20:04:33 +01:00
bjorn3
31403cf50a
Add rustup script
2020-01-15 19:56:25 +01:00
bjorn3
99407a4057
Display warning when overriding default rustc version in cargo.sh
2020-01-15 19:56:18 +01:00
Andrew Chin
a288a5ea06
Store nightly snapshot in rust-toolchain file, and use it in cargo.sh
...
The rust-toolchain file can also store an exact nightly snapshot
(instead of just "nightly"), so we can store whatever snapshot that
rustc_codegen_cranelift is known to work with.
This also lets us add a new feature to `cargo.sh` to let it use the
exact same nightly snapshot as cg_clif. If there's a nightly compiler
mismatch, you get a confusing error message like:
error: couldn't load codegen backend "librustc_codegen_cranelift.so":
"librustc_driver-681e2b4f66c73d3e.so: cannot open
shared object file: No such file or directory"
So doing this automatically in cargo.sh is useful.
2020-01-15 12:05:18 -05:00
bjorn3
e798f98bb4
Fix debug build
2020-01-15 13:18:54 +01:00
bjorn3
217beab62a
Reduce the amount of calls to layout_of
2020-01-15 13:18:54 +01:00
bjorn3
0669a49b10
Use release mode instead of debug mode in the readme
...
cc #865
2020-01-15 11:53:24 +01:00
bjorn3
09b44f5d25
Reduce visibility
2020-01-14 17:11:06 +01:00
bjorn3
29fafb44b1
Optimize .debug_line generation
...
This reduces the amount of time spent in .debug_line generation by about 50%
Fixes #807
2020-01-14 16:11:23 +01:00
bjorn3
4fbb45c3f3
Update gimli to 0.20.0
2020-01-14 14:19:43 +01:00
bjorn3
3311c1f7fe
Remove some depencencies
2020-01-14 14:16:06 +01:00
bjorn3
b22b184969
Update Cranelift
2020-01-14 13:55:08 +01:00
bjorn3
b44d6311ca
Rustup to rustc 1.42.0-nightly ( 3ebcfa145
2020-01-12)
2020-01-14 12:29:04 +01:00
bjorn3
c74b306037
Move all cold code to the end of the function
...
Fixes #836
Benchmark #1 : simple-raytracer/raytracer_cg_clif
Time (mean ± σ): 9.250 s ± 0.056 s [User: 9.213 s, System: 0.015 s]
Range (min … max): 9.151 s … 9.348 s 20 runs
Benchmark #2 : simple-raytracer/raytracer_cg_clif_cold_separated
Time (mean ± σ): 9.179 s ± 0.101 s [User: 9.141 s, System: 0.016 s]
Range (min … max): 9.070 s … 9.473 s 20 runs
Summary
'simple-raytracer/raytracer_cg_clif_cold_separated' ran
1.01 ± 0.01 times faster than 'simple-raytracer/raytracer_cg_clif'
2020-01-11 17:57:18 +01:00
bjorn3
38797f8bad
Implement #[track_caller]
...
Fixes #848
2020-01-11 17:10:42 +01:00
bjorn3
fed3b26563
Don't panic on reported const eval errors
2020-01-11 14:28:18 +01:00
bjorn3
2a082209a6
Fix PlaceElem::Subslice length computation
2020-01-11 14:28:18 +01:00
bjorn3
0080f55df2
Fix build
2020-01-11 14:27:39 +01:00
bjorn3
9dad9cf88d
Improve build time for build scripts in release mode
2020-01-10 14:21:45 +01:00
bjorn3
70c9b3b35b
Better self profiling integration
2020-01-10 14:16:27 +01:00
bjorn3
d65ba25ba7
Remove faerie support
2020-01-10 13:30:21 +01:00