102 Commits

Author SHA1 Message Date
bjorn3
1ceda5bb7e Remove unncesessary TryFrom and TryInto impls 2021-10-21 20:18:01 +02:00
bjorn3
eded369086 Update Cranelift
This version no longer has the old x86 backend
2021-10-01 15:37:48 +02:00
bjorn3
adc2793e7d Fix unused import warning
TryInto is part of the 2021 edition prelude
2021-09-27 11:20:04 +02:00
bjorn3
95f06887ea Sync from rust 73641cd23ba470c6b4dcd72b8d5f62d27c735254 2021-09-07 20:45:09 +02:00
bors
e7e930360c Auto merge of #88363 - michaelwoerister:remapped-diagnostics, r=estebank
Path remapping: Make behavior of diagnostics output dependent on presence of --remap-path-prefix.

This PR fixes a regression (#87745) with `--remap-path-prefix` where the flag stopped causing diagnostic messages to be remapped as well. The regression was introduced in https://github.com/rust-lang/rust/pull/83813 where we erroneously assumed that remapping of diagnostic messages was not desired anymore (because #70642 partially undid that functionality with nobody objecting).

The issue is fixed by making `--remap-path-prefix` remap diagnostic messages again, including for paths that have been remapped in upstream crates (e.g. the standard library). This means that "sysroot-localization" (implemented in #70642) is also disabled if `rustc` is invoked with `--remap-path-prefix`. The assumption is that once someone starts explicitly remapping paths they also don't want paths to their local Rust installation in their build output.

In the future we might want to give more fine-grained control over this behavior via compiler flags (see https://github.com/rust-lang/rfcs/pull/3127 for a related RFC). For now this PR is intended as a regression fix.

This PR is an alternative to https://github.com/rust-lang/rust/pull/88191, which makes diagnostic messages be remapped unconditionally. That approach, however, would effectively revert #70642.

Fixes https://github.com/rust-lang/rust/issues/87745.

cc `@cbeuw`
r? `@ghost`
2021-09-03 00:23:10 +00:00
bjorn3
0ff530eac8 Sync from rust 3ed6c1d23fd40f4367259a531465e809eb00ec27 2021-09-01 14:00:09 +02:00
Eduard-Mihai Burtescu
39e16da529 rustc_target: TyAndLayout::field should never error. 2021-08-30 00:44:09 +03:00
Michael Woerister
7753eda91a Path remapping: Make behavior of diagnostics output dependent on presence of --remap-path-prefix. 2021-08-27 11:50:44 +02:00
bjorn3
47e4a62ac5 Move all code out of backend.rs 2021-08-20 21:43:53 +02:00
bjorn3
14617516f8 Make {Debug,Unwind}Context::emit non-generic 2021-08-20 21:38:50 +02:00
Aaron Hill
1bfa59afe0 Update rustc_codegen_cratelift for working_dir change 2021-08-15 15:17:37 -05:00
bjorn3
d220159810 Merge commit '05677b6bd6c938ed760835d9b1f6514992654ae3' into sync_cg_clif-2021-08-06 2021-08-06 16:26:56 +02:00
bjorn3
fb92375755 Merge commit '3a31c6d8272c14388a34622193baf553636fe470' into sync_cg_clif-2021-07-07 2021-07-07 11:14:20 +02:00
Andy Wang
e162eeb1f0 Use local and remapped paths where appropriate 2021-05-05 15:31:28 +01:00
Andy Wang
5de83e7bd1 Revamp RealFileName public methods 2021-05-05 15:31:03 +01:00
Andy Wang
ac5272b3c7 Use RealFileName for Session::working_dir as it may also be remapped 2021-05-05 15:10:57 +01:00
Erin Power
0a1b87c9ce Merge commit '15c8d31392b9fbab3b3368b67acc4bbe5983115a' into cranelift-rebase 2021-04-30 18:46:59 +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
bjorn3
27886cd6b6 Merge commit '9a0c32934ebe376128230aa8da3275697b2053e7' into sync_cg_clif-2021-03-05 2021-03-05 19:12:59 +01:00
bjorn3
77f74ed070 Merge commit 'dbee13661efa269cb4cd57bb4c6b99a19732b484' into sync_cg_clif-2020-12-27 2020-12-27 10:30:38 +01:00
bjorn3
d404840788 Merge commit '5988bbd24aa87732bfa1d111ba00bcdaa22c481a' into sync_cg_clif-2020-11-27 2020-11-27 20:48:53 +01:00
Bastian Kauschke
56e63805be update cg_clif 2020-11-16 22:42:09 +01:00
Vadim Petrochenkov
e9c34b3cf8 Collapse all uses of target.options.foo into target.foo
with an eye on merging `TargetOptions` into `Target`.

`TargetOptions` as a separate structure is mostly an implementation detail of `Target` construction, all its fields logically belong to `Target` and available from `Target` through `Deref` impls.
2020-11-08 17:29:13 +03: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
c352f91b40 Rustfmt 2020-10-09 19:17:52 +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
c8699076f9 Document almost all modules
Fixes #1082
2020-09-23 15:13:49 +02:00
bjorn3
94f11cc3a8 Use pcrel pointers in .eh_frame
Fixes #1055
2020-09-23 13:44:32 +02:00
bjorn3
552991e17e Replace FxHashMap with IndexVec for local_map
Fixes #745
2020-09-16 18:45:19 +02:00
bjorn3
b8bbbe38d1 Remove cfg-if dependency 2020-09-16 16:57:52 +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
08fc673190 Handle SIMD vectors in CPlace::place_field 2020-07-25 12:28:24 +02:00
bjorn3
942039b232 Pass ByRef values at fixed stack offset for extern "C"
This makes it possible to build proc macros using cg_clif
2020-07-17 12:41:01 +02:00
bjorn3
a0580610b2 Use From::from instead of as where possible 2020-07-14 16:38:50 +02:00
bjorn3
ac77371852 Add a feature flag for the JIT 2020-07-09 14:23:00 +02:00
Santiago Pastorino
aa80ed0a2d
Store pairs in SSA 2020-07-02 19:23:21 -03:00
bjorn3
3227203fe6 Don't use a 1-to-1 mapping between mir local and cranelift_frontend variable 2020-06-27 14:29:28 +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
bjorn3
bc555764bd Update Cranelift 2020-06-05 12:40:33 +02:00
bjorn3
648b634e21 Rustup to rustc 1.45.0-nightly (56daaf669 2020-06-03) 2020-06-04 19:57:12 +02:00
bjorn3
47f0256d56 Update Cranelift 2020-05-25 13:04:36 +02:00
bjorn3
27cc90effa Improvements for latest Cranelift 2020-05-05 12:16:28 +02:00
bjorn3
020bcb31db Register frame table in JIT mode 2020-05-01 20:58:27 +02:00
bjorn3
4da6488d95 Always emit .eh_frame section 2020-05-01 19:21:29 +02:00
bjorn3
e7661d49c3 Implement .eh_frame writing 2020-04-25 18:23:31 +02:00
bjorn3
9d6f65ea14 Implement line debuginfo for AArch64 2020-04-25 17:29:09 +02:00