bjorn3
20e9a1372b
Provide default MetadataLoader
2021-06-04 13:20:04 +02:00
bjorn3
b10a442405
Provide a default provide* implementation for CodegenBackend
...
Both cg_llvm and cg_clif don't override it. cg_spirv does override it,
so it needs to be preserved.
2021-06-04 13:20:04 +02:00
Camille Gillot
d8d6a5aee0
Revert "Reduce the amount of untracked state in TyCtxt"
2021-06-01 09:05:22 +02:00
Camille GILLOT
228f1c549d
Drop metadata_encoding_version.
2021-05-30 20:05:46 +02:00
bjorn3
d6b03451e6
Merge commit '40dd3e2b7089b5e96714e064b731f6dbf17c61a9' into sync_cg_clif-2021-05-27
2021-05-27 13:08:14 +02:00
bors
a5da29cf8f
Auto merge of #83640 - bjorn3:shared_metadata_reader, r=nagisa
...
Use the object crate for metadata reading
This allows sharing the metadata reader between cg_llvm, cg_clif and other codegen backends.
This is not currently useful for rlib reading with cg_spirv ([rust-gpu](https://github.com/EmbarkStudios/rust-gpu/ )) as it uses tar rather than ar as .rlib format, but it is useful for dylib reading required for loading proc macros. (cc `@eddyb)`
The object crate is already trusted as dependency of libstd through backtrace. As far as I know it supports reading all object file formats used by targets for which we support rust dylibs with crate metadata, but I am not certain. If this happens to not be the case, I could keep using LLVM for reading dylib metadata.
Marked as WIP for a perf run and as it is based on #83637 .
2021-05-14 12:58:58 +00:00
bors
809722dc13
Auto merge of #83610 - bjorn3:driver_cleanup, r=cjgillot
...
rustc_driver cleanup
Best reviewed one commit at a time.
2021-05-12 08:38:03 +00:00
bjorn3
62f64af430
Use the object crate for metadata reading
2021-05-07 18:48:58 +02:00
bjorn3
55dbf17bb5
Pass target_cpu to LinkerInfo::new instead of link_binary
...
This is one step towards separating the linking code from codegen backends
2021-05-02 18:00:20 +02:00
Erin Power
ee570b1302
Sync rustc_codegen_cranelift 'ddd4ce25535cf71203ba3700896131ce55fde795'
2021-04-30 14:49:58 +02:00
bjorn3
07968a001d
Merge commit '0969bc6dde001e01e7e1f58c8ccd7750f8a49ae1' into sync_cg_clif-2021-03-29
2021-03-29 10:45:09 +02:00
kadmin
d674d3dad8
Clean up todos
...
Also add some span_bugs where it is unreachable
2021-03-09 19:31:31 +00:00
kadmin
83e6251f21
Update cranelift
2021-03-09 16:54:14 +00:00
bors
7f020206e8
Auto merge of #82727 - oli-obk:shrinkmem, r=pnkfelix
...
Test the effect of shrinking the size of Rvalue by 16 bytes
r? `@ghost`
2021-03-08 08:39:24 +00:00
bjorn3
27886cd6b6
Merge commit '9a0c32934ebe376128230aa8da3275697b2053e7' into sync_cg_clif-2021-03-05
2021-03-05 19:12:59 +01:00
Oli Scherer
b63df38a98
Shrink the size of Rvalue by 16 bytes
2021-03-05 09:33:01 +00:00
Jacob Pratt
260a5d4d64
Stabilize str_split_once
2021-02-09 23:17:11 -05:00
bjorn3
a75f9bc3be
Merge commit 'd556c56f792756dd7cfec742b9f2e07612dc10f4' into sync_cg_clif-2021-02-01
2021-02-01 10:11:46 +01:00
LeSeulArtichaut
c3d7dc93dc
Use ty::{IntTy,UintTy,FloatTy} in rustc
2021-01-18 21:09:30 +01:00
bjorn3
77f74ed070
Merge commit 'dbee13661efa269cb4cd57bb4c6b99a19732b484' into sync_cg_clif-2020-12-27
2020-12-27 10:30:38 +01:00
bjorn3
285c7c66dc
Merge commit '03f01bbe901d60b71cf2c5ec766aef5e532ab79d' into update_cg_clif-2020-11-01
2020-11-03 11:00:04 +01:00
bjorn3
4971028775
Rustup to rustc 1.49.0-nightly ( dd7fc54eb
2020-10-15)
2020-10-16 09:35:48 +02:00
bjorn3
a233646dfc
Rustup to rustc 1.49.0-nightly ( e160e5cb8
2020-10-14)
2020-10-15 10:34:13 +02:00
bjorn3
e0002c1892
Remove MIR dump on panic
...
I haven't used it for a long time and it adds a lot of noise to the
panic print.
2020-10-11 13:24:14 +02:00
bjorn3
0a5968dfd2
Use the new cranelift-module interface
...
This updates Cranelift to include bytecodealliance/wasmtime#2249
2020-10-08 19:00:21 +02:00
bjorn3
3fc673d0a9
Rustup to rustc 1.49.0-nightly ( beb5ae474
2020-10-04)
2020-10-05 11:12:41 +02:00
bjorn3
426e55709c
Replace CG_CLIF_JIT with --jit
2020-09-29 18:41:59 +02:00
bjorn3
51f816f2a7
Rustfmt
2020-09-16 16:58:58 +02:00
bjorn3
044470a726
Remove hashbrown usage
...
drain_filter is now supported on nightly
2020-09-15 21:00:04 +02:00
bjorn3
4bb25c3e4a
Fix dylib metadata writing
...
Rustc switched from flate2 to snappy
2020-09-05 11:00:34 +02:00
bjorn3
217b3818b7
Rustup to rustc 1.48.0-nightly ( c59199efc
2020-09-04)
2020-09-05 10:38:49 +02:00
CohenArthur
4e685a512e
fmt: Run cargo fmt since it is available
2020-08-28 12:10:48 +02:00
bjorn3
e64f523b27
Evaluate all mir.required_consts and report any errors
...
Fixes #981
2020-08-20 16:51:36 +02:00
bjorn3
7752718e5b
Update target_feature_whitelist
2020-08-19 18:52:56 +02:00
bjorn3
0703e98bf6
Remove cg_clif fake target feature
2020-08-15 21:04:33 +02:00
bjorn3
240e178532
Don't panic on io errors
...
Fixes #920
2020-08-08 16:14:11 +02:00
bjorn3
3e4ddca409
Rustup to rustc 1.47.0-nightly ( f9d422ea7
2020-08-04)
2020-08-05 13:55:27 +02:00
bjorn3
e02ffdf795
Use nehalem instead of haswell as target cpu
2020-07-25 16:15:42 +02:00
bjorn3
abc99c6259
Allow storing SIMD vectors in SSA values
2020-07-25 12:16:41 +02:00
bjorn3
c9d5e7da58
Rustup to rustc 1.46.0-nightly ( 9d09331e0
2020-07-12)
2020-07-13 19:32:31 +02:00
bjorn3
726e329f46
Add basic inline asm support for x86_64
2020-07-10 21:34:26 +02:00
bjorn3
35701d8caa
Move global_asm into CodegenCx
2020-07-09 19:24:53 +02:00
bjorn3
893497c93e
Infer the path of toolchain binaries from the linker path
2020-07-09 18:55:46 +02:00
bjorn3
ac77371852
Add a feature flag for the JIT
2020-07-09 14:23:00 +02:00
bjorn3
4ada18fd77
Add sess.abort_if_errors() to link
2020-07-03 16:43:59 +02:00
bjorn3
b79102c933
Disable "LTO is not supported" warning for sysroot build
2020-06-20 19:14:58 +02:00
bjorn3
eb8fd197ab
Prelude cleanup
2020-06-20 18:44:49 +02:00
bjorn3
431cebdca1
Introduce #[cfg(target_feature = "cg_clif")]
2020-06-20 16:22:03 +02:00
bjorn3
eb5ce4e92a
Remove FunctionDebugContext
2020-06-13 17:03:34 +02:00
bjorn3
16b5dac463
Remove all non-tcx references from CodegenCx
2020-06-12 21:15:13 +02:00