Commit Graph

35 Commits

Author SHA1 Message Date
Alex Crichton
cc9c91d385 Pass --export-dynamic to LLD for wasm
This should handle recent symbol visibility changes happening, although
we'll likely want to tweak this in the future!
2018-11-25 20:27:18 -08:00
Alex Crichton
c86b1529a5 wasm: Pass --no-demangle to LLD
Our mangling scheme is not C++'s, so tell LLD to not demangle anything
so we can handle Rust-specific demangling ourselves.
2018-11-25 20:27:18 -08:00
Pietro Albini
6398df1520
Rollup merge of #56101 - frewsxcv:frewsxcv-dyn, r=steveklabnik
Incorporate `dyn` into more comments and docs.

r? @rust-lang/docs
2018-11-25 17:05:03 +01:00
bors
37961dbd2d Auto merge of #55959 - matthewjasper:remove-end-region, r=nikomatsakis
Cleanup from lexical MIR borrowck removal

Lexical MIR borrowck was removed months ago now, and `EndRegion`s are no longer used for MIRI verification.

* Remove `rustc::mir::StatementKind::EndRegion` and the `-Zemit_end_regions` flag
* Use `RegionVid` instead of `Region` in BorrowSet
* Rewrite drop generation to create fewer goto terminators.

r? @nikomatsakis
2018-11-25 03:00:30 +00:00
Corey Farwell
ebb1a48b41
Merge branch 'master' into frewsxcv-dyn 2018-11-23 14:09:08 -05:00
kennytm
e0025df3fd
Rollup merge of #56097 - ogoffart:union-abi, r=eddyb
Fix invalid bitcast taking bool out of a union represented as a scalar

As reported in https://github.com/rust-lang/rust/pull/54668#issuecomment-440186476
2018-11-24 01:31:56 +08:00
kennytm
1b707f78f5
Rollup merge of #56048 - bjorn3:cg_ssa_sysroot, r=eddyb
Add rustc_codegen_ssa to sysroot

Outside of rustc you are currently unable to use it.

r? @nikomatsakis (because you r+'ed #55627)
2018-11-24 01:31:53 +08:00
bors
6a2d1b4e15 Auto merge of #54071 - eddyb:alignsssss, r=oli-obk
rustc_target: separate out an individual alignment quantity type from Align.

Before this PR, `rustc_target::abi::Align` combined "power-of-two alignment quantity" semantics, with a distinction between ABI (required) and preferred alignment (by having two quantities).

After this PR, `Align` is only *one* such quantity, and a new `AbiAndPrefAlign` type is introduced to hold the pair of ABI and preferred `Align` quantities.

`Align` is used everywhere one quantity is necessary/sufficient, simplifying some of the code in codegen/miri, while `AbiAndPrefAlign` only in layout computation (to propagate preferred alignment).

r? @oli-obk cc @nagisa @RalfJung @nikomatsakis
2018-11-23 01:02:21 +00:00
bjorn3
d6d8a330f8 Add rustc_codegen_ssa to sysroot 2018-11-22 20:20:23 +01:00
Guillaume Gomez
6afecfd785
Rollup merge of #56106 - bjorn3:patch-1, r=alexcrichton
Remove some incorrect doc comments
2018-11-22 10:37:55 +01:00
Guillaume Gomez
b473157293
Rollup merge of #56067 - jethrogb:jb/sgx-target-spec, r=alexcrichton
Add SGX target to rustc

This adds the `x86_64-fortanix-unknown-sgx` target specification to the Rust compiler. See #56066 for more details about this target.
2018-11-22 10:37:53 +01:00
Eduard-Mihai Burtescu
5b4747ded7 rustc_target: avoid using AbiAndPrefAlign where possible. 2018-11-22 05:01:49 +02:00
Eduard-Mihai Burtescu
3ce8d444af rustc_target: separate out an individual Align from AbiAndPrefAlign. 2018-11-22 04:38:00 +02:00
Eduard-Mihai Burtescu
d56e892085 rustc_target: rename abi::Align to AbiAndPrefAlign. 2018-11-22 04:12:59 +02:00
Eduard-Mihai Burtescu
7683180be5 rustc: implement and use Default on more types. 2018-11-21 08:11:50 +02:00
Eduard-Mihai Burtescu
da622a3796 rustc: remove {FxHash,Node,DefId,HirId,ItemLocal}{Map,Set} "constructor" fns. 2018-11-21 07:27:02 +02:00
bjorn3
8a0909df79
Remove incorrect doc comment 2018-11-20 17:30:29 +01:00
Corey Farwell
033cbfec4d Incorporate dyn into more comments and docs. 2018-11-20 09:35:03 -05:00
Olivier Goffart
4c21f66c1d Add comments and rename a local variable 2018-11-20 13:24:41 +01:00
Olivier Goffart
86d41350c7 Fix invalid bitcast taking bool out of a union represented as a scalar
As reported in https://github.com/rust-lang/rust/pull/54668#issuecomment-440186476
2018-11-20 12:20:05 +01:00
Jethro Beekman
a44e446551 Add override_export_symbols option to Rust target specification 2018-11-19 23:24:43 +05:30
Matthew Jasper
b16985a354 Remove mir::StatementKind::EndRegion
Since lexical MIR borrow check is gone, and validation no longer uses
these, they can be removed.
2018-11-18 11:05:19 +00:00
Eduard-Mihai Burtescu
756f84d7ce [eddyb] rustc_codegen_llvm: remove unused parametrization of CodegenCx and Builder over Values. 2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
0b569249c8 [eddyb] rustc_codegen_ssa: rename interfaces to traits. 2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
d1410ada92 [eddyb] rustc_codegen_ssa: avoid a Clone bound on TargetMachine. 2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
9bb6663431 [eddyb] rustc_codegen_ssa: handle LLVM unsafety correctly. 2018-11-16 15:08:18 +02:00
Denis Merigoux
bf7f8cd3fc Added README explaining the refactoring 2018-11-16 15:08:18 +02:00
Denis Merigoux
b9e5cf99a9 Separating the back folder between backend-agnostic and LLVM-specific code 2018-11-16 15:08:18 +02:00
Denis Merigoux
b25b804013 Added default impl for DerivedTypeMethods + empty impl for Cranelift BaseTypeMethods 2018-11-16 15:08:18 +02:00
Denis Merigoux
54dd3a47fd All Builder methods now take &mut self instead of &self 2018-11-16 15:08:18 +02:00
Denis Merigoux
1ebdfbb026 Added some docs + start to &mut self builder methods 2018-11-16 15:08:18 +02:00
Denis Merigoux
015e4441f5 Finished moving backend-agnostic code to rustc_codegen_ssa 2018-11-16 15:08:18 +02:00
Denis Merigoux
c0a428ee70 Great separation of librustc_codegen_llvm: librustc_codegen_ssa compiles 2018-11-16 15:07:24 +02:00
Denis Merigoux
915382f730 Moved DeclareMethods, MiscMethods and StaticMethods 2018-11-16 14:55:47 +02:00
Denis Merigoux
c9f26c2155 Beginning of moving all backend-agnostic code to rustc_codegen_ssa 2018-11-16 14:55:42 +02:00