Skip to content

Commit 4cc025d

Browse files
committed
Scale back changes made
1 parent 315750a commit 4cc025d

19 files changed

+45
-1444
lines changed

mk/cfg/x86_64-pc-windows-msvc.mk

+7-12
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,24 @@
11
# x86_64-pc-windows-msvc configuration
2-
CROSS_PREFIX_x86_64-pc-windows-msvc=
32
CC_x86_64-pc-windows-msvc=cl
43
LINK_x86_64-pc-windows-msvc=link
5-
CXX_x86_64-pc-windows-msvc=g++
6-
CPP_x86_64-pc-windows-msvc=gcc -E
4+
CXX_x86_64-pc-windows-msvc=cl
5+
CPP_x86_64-pc-windows-msvc=cl
76
AR_x86_64-pc-windows-msvc=llvm-ar
87
CFG_LIB_NAME_x86_64-pc-windows-msvc=$(1).dll
98
CFG_STATIC_LIB_NAME_x86_64-pc-windows-msvc=$(1).lib
109
CFG_LIB_GLOB_x86_64-pc-windows-msvc=$(1)-*.dll
1110
CFG_LIB_DSYM_GLOB_x86_64-pc-windows-msvc=$(1)-*.dylib.dSYM
12-
CFG_JEMALLOC_CFLAGS_x86_64-pc-windows-msvc := $(CFLAGS)
13-
CFG_GCCISH_CFLAGS_x86_64-pc-windows-msvc := $(CFLAGS)
14-
CFG_GCCISH_CXXFLAGS_x86_64-pc-windows-msvc := -fno-rtti $(CXXFLAGS)
15-
CFG_GCCISH_LINK_FLAGS_x86_64-pc-windows-msvc := -shared -g -m64
11+
CFG_JEMALLOC_CFLAGS_x86_64-pc-windows-msvc :=
12+
CFG_GCCISH_CFLAGS_x86_64-pc-windows-msvc :=
13+
CFG_GCCISH_CXXFLAGS_x86_64-pc-windows-msvc :=
14+
CFG_GCCISH_LINK_FLAGS_x86_64-pc-windows-msvc :=
1615
CFG_GCCISH_DEF_FLAG_x86_64-pc-windows-msvc :=
17-
CFG_GCCISH_PRE_LIB_FLAGS_x86_64-pc-windows-msvc :=
18-
CFG_GCCISH_POST_LIB_FLAGS_x86_64-pc-windows-msvc :=
19-
CFG_DEF_SUFFIX_x86_64-pc-windows-msvc := .windows.def
2016
CFG_LLC_FLAGS_x86_64-pc-windows-msvc :=
2117
CFG_INSTALL_NAME_x86_64-pc-windows-msvc =
2218
CFG_EXE_SUFFIX_x86_64-pc-windows-msvc := .exe
2319
CFG_WINDOWSY_x86_64-pc-windows-msvc := 1
2420
CFG_UNIXY_x86_64-pc-windows-msvc :=
25-
CFG_PATH_MUNGE_x86_64-pc-windows-msvc :=
2621
CFG_LDPATH_x86_64-pc-windows-msvc :=
2722
CFG_RUN_x86_64-pc-windows-msvc=$(2)
2823
CFG_RUN_TARG_x86_64-pc-windows-msvc=$(call CFG_RUN_x86_64-pc-windows-msvc,,$(2))
29-
CFG_GNU_TRIPLE_x86_64-pc-windows-msvc := x86_64-w64-mingw32
24+
CFG_GNU_TRIPLE_x86_64-pc-windows-msvc := x86_64-pc-windows-msvc

mk/platform.mk

+9-9
Original file line numberDiff line numberDiff line change
@@ -145,15 +145,15 @@ FIND_COMPILER = $(word 1,$(1:ccache=))
145145
define CFG_MAKE_TOOLCHAIN
146146
# Prepend the tools with their prefix if cross compiling
147147
ifneq ($(CFG_BUILD),$(1))
148-
CC_$(1)=$(CROSS_PREFIX_$(1))$(CC_$(1))
149-
CXX_$(1)=$(CROSS_PREFIX_$(1))$(CXX_$(1))
150-
CPP_$(1)=$(CROSS_PREFIX_$(1))$(CPP_$(1))
151-
AR_$(1)=$(CROSS_PREFIX_$(1))$(AR_$(1))
152-
LINK_$(1)=$(CROSS_PREFIX_$(1))$(LINK_$(1))
153-
RUSTC_CROSS_FLAGS_$(1)=-C linker=$$(call FIND_COMPILER,$$(LINK_$(1))) \
154-
-C ar=$$(call FIND_COMPILER,$$(AR_$(1))) $(RUSTC_CROSS_FLAGS_$(1))
155-
156-
RUSTC_FLAGS_$(1)=$$(RUSTC_CROSS_FLAGS_$(1)) $(RUSTC_FLAGS_$(1))
148+
CC_$(1)=$(CROSS_PREFIX_$(1))$(CC_$(1))
149+
CXX_$(1)=$(CROSS_PREFIX_$(1))$(CXX_$(1))
150+
CPP_$(1)=$(CROSS_PREFIX_$(1))$(CPP_$(1))
151+
AR_$(1)=$(CROSS_PREFIX_$(1))$(AR_$(1))
152+
LINK_$(1)=$(CROSS_PREFIX_$(1))$(LINK_$(1))
153+
RUSTC_CROSS_FLAGS_$(1)=-C linker=$$(call FIND_COMPILER,$$(LINK_$(1))) \
154+
-C ar=$$(call FIND_COMPILER,$$(AR_$(1))) $(RUSTC_CROSS_FLAGS_$(1))
155+
156+
RUSTC_FLAGS_$(1)=$$(RUSTC_CROSS_FLAGS_$(1)) $(RUSTC_FLAGS_$(1))
157157
endif
158158

159159
CFG_COMPILE_C_$(1) = $$(CC_$(1)) \

src/librustc/session/config.rs

-1
Original file line numberDiff line numberDiff line change
@@ -632,7 +632,6 @@ pub fn default_configuration(sess: &Session) -> ast::CrateConfig {
632632
let mut ret = vec![ // Target bindings.
633633
attr::mk_word_item(fam.clone()),
634634
mk(InternedString::new("target_os"), intern(os)),
635-
mk(InternedString::new("target_abi"), intern(abi)),
636635
mk(InternedString::new("target_family"), fam),
637636
mk(InternedString::new("target_arch"), intern(arch)),
638637
mk(InternedString::new("target_endian"), intern(end)),

src/librustc_back/target/aarch64_unknown_linux_gnu.rs

-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ pub fn target() -> Target {
2222
target_env: "gnu".to_string(),
2323
arch: "aarch64".to_string(),
2424
target_os: "linux".to_string(),
25-
target_abi: "".to_string(),
2625
options: base,
2726
}
2827
}

src/librustc_back/target/i686_unknown_linux_gnu.rs

-4
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,7 @@ pub fn target() -> Target {
2222
target_pointer_width: "32".to_string(),
2323
arch: "x86".to_string(),
2424
target_os: "linux".to_string(),
25-
<<<<<<< HEAD
2625
target_env: "gnu".to_string(),
27-
=======
28-
target_abi: "".to_string(),
29-
>>>>>>> 9f1453c... Very hacky MSVC hacks.
3026
options: base,
3127
}
3228
}

src/librustc_back/target/mod.rs

+1
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ mod freebsd_base;
5959
mod linux_base;
6060
mod openbsd_base;
6161
mod windows_base;
62+
mod windows_msvc_base;
6263

6364
/// Everything `rustc` knows about how to compile for a specific target.
6465
///

src/librustc_back/target/windows_msvc_base.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ use std::default::Default;
1313

1414
pub fn opts() -> TargetOptions {
1515
TargetOptions {
16-
// FIXME(#13846) this should be enabled for windows
17-
function_sections: false,
16+
function_sections: true,
1817
linker: "link".to_string(),
1918
dynamic_linking: true,
2019
executables: true,

src/librustc_back/target/x86_64_pc_windows_msvc.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ pub fn target() -> Target {
2424
target_pointer_width: "64".to_string(),
2525
arch: "x86_64".to_string(),
2626
target_os: "windows".to_string(),
27-
target_abi: "msvc".to_string(),
27+
target_env: "msvc".to_string(),
2828
options: base,
2929
}
3030
}

src/librustc_llvm/lib.rs

-14
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ pub use self::CallConv::*;
5555
pub use self::Visibility::*;
5656
pub use self::DiagnosticSeverity::*;
5757
pub use self::Linkage::*;
58-
pub use self::DLLStorageClass::*;
5958

6059
use std::ffi::CString;
6160
use std::cell::RefCell;
@@ -115,13 +114,6 @@ pub enum Linkage {
115114
CommonLinkage = 14,
116115
}
117116

118-
#[derive(Copy)]
119-
pub enum DLLStorageClass {
120-
DefaultStorageClass = 0,
121-
DLLImportStorageClass = 1,
122-
DLLExportStorageClass = 2,
123-
}
124-
125117
#[repr(C)]
126118
#[derive(Copy, Clone, Debug)]
127119
pub enum DiagnosticSeverity {
@@ -2133,12 +2125,6 @@ pub fn SetLinkage(global: ValueRef, link: Linkage) {
21332125
}
21342126
}
21352127

2136-
pub fn SetDLLStorageClass(global: ValueRef, storage_class: DLLStorageClass) {
2137-
unsafe {
2138-
LLVMRustSetDLLStorageClass(global, storage_class as c_uint);
2139-
}
2140-
}
2141-
21422128
pub fn SetUnnamedAddr(global: ValueRef, unnamed: bool) {
21432129
unsafe {
21442130
LLVMSetUnnamedAddr(global, unnamed as Bool);

src/librustc_trans/back/link.rs

+7-6
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,22 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
use super::archive::{ArchiveBuilder, ArchiveConfig, METADATA_FILENAME};
11+
use super::archive::{Archive, ArchiveBuilder, ArchiveConfig, METADATA_FILENAME};
12+
use super::archive;
13+
use super::rpath;
14+
use super::rpath::RPathConfig;
1215
use super::svh::Svh;
13-
14-
use super::link_gnu;
15-
use super::link_msvc;
16-
1716
use session::config;
17+
use session::config::NoDebugInfo;
1818
use session::config::{OutputFilenames, Input, OutputTypeBitcode, OutputTypeExe, OutputTypeObject};
1919
use session::search_paths::PathKind;
2020
use session::Session;
2121
use metadata::common::LinkMeta;
22-
use metadata::{encoder, cstore, csearch, creader};
22+
use metadata::{encoder, cstore, filesearch, csearch, creader};
2323
use metadata::filesearch::FileDoesntMatch;
2424
use trans::{CrateContext, CrateTranslation, gensym_name};
2525
use middle::ty::{self, Ty};
26+
use util::common::time;
2627
use util::ppaux;
2728
use util::sha2::{Digest, Sha256};
2829
use util::fs::fix_windows_verbatim_for_gcc;

0 commit comments

Comments
 (0)