bjorn3
e95a300630
Use TrapCode::UnreachableCodeReached in trap_unreachable
2020-02-07 21:38:30 +01:00
bjorn3
bae0d9bb72
[OPT] Don't call monomorphize from clif_type
2020-02-07 20:27:37 +01:00
bjorn3
5204a98398
Remove the sudo key from .travis.yml
...
It has been deprecated and doesn't have any effect anymore
2020-02-07 13:55:02 +01:00
bjorn3
01f6f40ac2
Rustup to rustc 1.43.0-nightly ( 442ae7f04
2020-02-06)
2020-02-07 13:49:48 +01:00
bjorn3
fbe36ad68a
Revert "Use CachingSourceMapView::byte_pos_to_line_and_col instead of SourceMap::lookup_char_pos"
...
This reverts commit eb4fc45310
.
It caused a panic while compiling simple-raytracer
2020-02-03 21:36:36 +01:00
bjorn3
eb4fc45310
Use CachingSourceMapView::byte_pos_to_line_and_col instead of SourceMap::lookup_char_pos
...
The former calculates byte offsets instead of char offsets. It is faster
to calculate byte offsets than char offsets. Also most DWARF producers
and consumers use byte offsets instead of char offsets.
2020-02-03 21:05:18 +01:00
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