about summary refs log tree commit diff
path: root/src/librustc_target
AgeCommit message (Collapse)AuthorLines
2020-05-01Auto merge of #71623 - petrochenkov:localink, r=estebankbors-4/+0
Disable localization for all linkers We previously disabled non-English output from `link.exe` due to encoding issues (#35785). In https://github.com/rust-lang/rust/pull/70740 it was pointed out that it also prevents correct inspection of the linker output, which we have to do occasionally. So this PR disables localization for all linkers.
2020-04-27Disable localization for all linkersVadim Petrochenkov-4/+0
2020-04-26rustc_target: Stop using "string typing" for TLS modelsVadim Petrochenkov-11/+61
Introduce `enum TlsModel` instead.
2020-04-26rustc_target: Stop using "string typing" for relocation modelsVadim Petrochenkov-42/+103
Introduce `enum RelocModel` instead.
2020-04-24Avoid unused Option::map resultsJosh Stone-18/+19
These are changes that would be needed if we add `#[must_use]` to `Option::map`, per #71484.
2020-04-16rustc_target::abi: add Primitive variant to FieldsShape.Ana-Maria Mihalache-9/+29
2020-04-16Rollup merge of #71145 - pfmooney:illumos-triple, r=nagisaDylan DPC-0/+75
Add illumos triple This fixes rust-lang/rust#55553 and adds support for `illumos` as a `target_os` on `x86_64`. In addition to the compile spec and libstd additions, several library dependencies have been bumped in order to permit working builds of cargo and rustup for the new target. Work originally started by @jasonbking, with subsequent additions by @pfmooney and @jclulow.
2020-04-14Add illumos triplePatrick Mooney-0/+75
Co-Authored-By: Jason King <jason.brian.king@gmail.com> Co-Authored-By: Joshua M. Clulow <jmc@oxide.computer>
2020-04-13Address review commentsVadim Petrochenkov-4/+1
2020-04-13rustc_target: Introduce `msvc_base`Vadim Petrochenkov-48/+59
and inherit both `windows_msvc_base` and `uefi_msvc_base` from it.
2020-04-13rustc_target: Inherit `windows_uwp_gnu_base` from `windows_gnu_base`Vadim Petrochenkov-21/+13
2020-04-13rustc_target: Inherit `windows_uwp_msvc_base` from `windows_msvc_base`Vadim Petrochenkov-41/+9
2020-04-13rustc_target: Remove some useless importsVadim Petrochenkov-25/+0
2020-04-13rustc_target: `windows(_uwp)_base` -> `windows(_uwp)_gnu_base`Vadim Petrochenkov-9/+9
The old naming is from ancient times when there was no MSVC support. Also `uefi_base` -> `uefi_msvc_base`. It will inherit from `msvc_base` in a future commit, plus a GNU UEFI target is also potentially possible.
2020-04-13linker: Pass `/NODEFAULTLIB` in a more regular wayVadim Petrochenkov-3/+20
2020-04-13rustc_target: Move tests into a separate unconfigured fileVadim Petrochenkov-43/+48
as much as possible.
2020-04-13rustc_target: Make sure lld-link is treated as link.exe by defaultVadim Petrochenkov-62/+102
The differences if they are discovered will need to be explicitly documented
2020-04-13Auto merge of #71023 - mati865:mingw-unwind-linking-cleanup, r=Amanieubors-2/+2
[windows] Add testscase for self-contained executables and fix pthread linking Fixes https://github.com/rust-lang/rust/issues/71061
2020-04-12[windows-gnu] Link pthread staticallyMateusz Mikuła-2/+2
2020-04-09Fix staticlib name for *-pc-windows-gnu targetsMateusz Mikuła-2/+2
2020-04-06Rollup merge of #70704 - ↵Mazdak Farrokhzad-8/+2
danielframpton:aarch64-windows-panic-unwind-default, r=alexcrichton Make panic unwind the default for aarch64-*-windows-msvc targets With the llvm fixes from rust-lang/llvm-project#45 (included as a submodule change) we can enable unwinding by default for these targets. Fixes #65313 There are still a small number of test failures for which we can open individual issues. r? @alexcrichton
2020-04-04rustc_target: Rely on default value of `no_default_libraries` moreVadim Petrochenkov-4/+0
2020-04-03Make panic unwind the default for aarch64-*-windows-msvc targetsDaniel Frampton-8/+2
2020-04-03Replace max/min_value() with MAX/MIN assoc constsLinus Färnstrand-1/+1
2020-04-01Rollup merge of #70616 - anyska:fieldplacement-rename, r=oli-obkDylan DPC-27/+27
rustc_target::abi: rename FieldPlacement to FieldsShape. Originally suggested by @eddyb.
2020-04-01Rollup merge of #70547 - wesleywiser:extract_can_unwind, r=eddybMazdak Farrokhzad-0/+2
Add `can_unwind` field to `FnAbi` This is a pure refactoring with no behavior changes. Extracted out of #70467 r? @eddyb
2020-04-01Rollup merge of #70605 - Amanieu:pthread_msvcrt, r=varkorDylan DPC-0/+2
Add missing -lmsvcrt on mingw after -lpthread Fixes #70316
2020-03-31rustc_target::abi: rename FieldPlacement to FieldsShape.Ana-Maria Mihalache-27/+27
2020-03-31more clippy fixesMatthias Krüger-2/+2
use is_empty() instead of len comparison (clippy::len_zero) use if let instead of while let loop that never loops (clippy::never_loop) remove redundant returns (clippy::needless_return) remove redundant closures (clippy::redundant_closure) use if let instead of match and wildcard pattern (clippy::single_match) don't repeat field names redundantly (clippy::redundant_field_names)
2020-03-31Add missing -lmsvcrt on mingw after -lpthreadAmanieu d'Antras-0/+2
Fixes #70316
2020-03-30Add `can_unwind` field to `FnAbi`Wesley Wiser-0/+2
This is a pure refactoring with no behavior changes.
2020-03-30Use if let instead of match when only matching a single variant ↵Matthias Krüger-13/+8
(clippy::single_match) Makes code more compact and reduces nestig.
2020-03-30rustc -> rustc_middle part 1Mazdak Farrokhzad-1/+1
2020-03-29Rollup merge of #69702 - anyska:tylayout-rename, r=oli-obkDylan DPC-134/+133
Rename TyLayout to TyAndLayout.
2020-03-27Rename TyLayout to TyAndLayout.Ana-Maria Mihalache-134/+133
2020-03-27Remove `no_integrated_as` mode.Nicholas Nethercote-9/+0
Specifically, remove both `-Z no_integrated_as` and `TargetOptions::no_integrated_as`. The latter was only used for the `msp430_none_elf` platform, for which it's no longer required.
2020-03-26Rollup merge of #70384 - nnethercote:refactor-object-file-handling, ↵Dylan DPC-6/+0
r=alexcrichton Refactor object file handling Some preliminary clean-ups that grease the path to #66961. r? @alexcrichton
2020-03-25Rollup merge of #69700 - anyska:layout-details-rename, r=oli-obkDylan DPC-12/+13
Rename LayoutDetails to just Layout.
2020-03-25Rename LayoutDetails to just Layout.Ana-Maria Mihalache-12/+13
2020-03-25add usize methods for Size gettersRalf Jung-0/+10
2020-03-25make Size::from* methods generic in the integer type they acceptRalf Jung-5/+6
2020-03-25miri: avoid a bunch of casts by offering usized-based field indexingRalf Jung-1/+2
2020-03-25Remove `TargetOptions::embed_bitcode`.Nicholas Nethercote-6/+0
It's unused by any existing targets, and soon we'll be embedding full bitcode by default anyway.
2020-03-23Split long derive lists into two derive attributes.Ana-Maria Mihalache-13/+2
2020-03-21remove unused unit values (clippy::unused_unit)Matthias Krüger-20/+6
2020-03-21don't convert results to options just for matching (clippy::if_let_some_result)Matthias Krüger-2/+2
2020-03-21Rollup merge of #70189 - RalfJung:is_signed, r=eddybMazdak Farrokhzad-1/+1
Abi::is_signed: assert that we are a Scalar A bit more sanity checking, suggested by @eddyb. This makes this method actually "safer" than `TyS::is_signed`, so I made sure Miri consistently uses the `Abi` version. Though I am not sure if this would have caught the mistake where the layout of a zero-sized enum was asked for its sign. r? @eddyb
2020-03-20Abi::is_signed: assert that we are a ScalarRalf Jung-1/+1
2020-03-20Rollup merge of #69768 - oli-obk:union_field_ice, r=eddyb,RalfJungYuki Okushi-1/+4
Compute the correct layout for variants of uninhabited enums r? @eddyb cc @RalfJung fixes #69191 cc #69763
2020-03-17Add requisite feature gates for const assertDylan MacKenzie-0/+3