Sync from rust f2a11a25378293e41cfcb00dbf67c524ffd79b39

This commit is contained in:
bjorn3 2020-11-13 18:47:37 +01:00
commit 753e6bcd5f
7 changed files with 15 additions and 17 deletions

View File

@ -63,9 +63,9 @@ impl<'a> ArchiveBuilder<'a> for ArArchiveBuilder<'a> {
sess, sess,
dst: output.to_path_buf(), dst: output.to_path_buf(),
lib_search_paths: archive_search_paths(sess), lib_search_paths: archive_search_paths(sess),
use_gnu_style_archive: sess.target.options.archive_format == "gnu", use_gnu_style_archive: sess.target.archive_format == "gnu",
// FIXME fix builtin ranlib on macOS // FIXME fix builtin ranlib on macOS
no_builtin_ranlib: sess.target.options.is_like_osx, no_builtin_ranlib: sess.target.is_like_osx,
src_archives, src_archives,
entries, entries,

View File

@ -27,8 +27,8 @@ impl rustc_driver::Callbacks for CraneliftPassesCallbacks {
config.opts.cg.panic = Some(PanicStrategy::Abort); config.opts.cg.panic = Some(PanicStrategy::Abort);
config.opts.debugging_opts.panic_abort_tests = true; config.opts.debugging_opts.panic_abort_tests = true;
config.opts.maybe_sysroot = Some( config.opts.maybe_sysroot = Some(
config.opts.maybe_sysroot.clone().unwrap_or( config.opts.maybe_sysroot.clone().unwrap_or_else(
std::env::current_exe() || std::env::current_exe()
.unwrap() .unwrap()
.parent() .parent()
.unwrap() .unwrap()

View File

@ -361,13 +361,11 @@ impl<'tcx, M: Module> FunctionCx<'_, 'tcx, M> {
where where
T: TypeFoldable<'tcx> + Copy, T: TypeFoldable<'tcx> + Copy,
{ {
if let Some(substs) = self.instance.substs_for_mir_body() { self.instance.subst_mir_and_normalize_erasing_regions(
self.tcx self.tcx,
.subst_and_normalize_erasing_regions(substs, ty::ParamEnv::reveal_all(), value) ty::ParamEnv::reveal_all(),
} else { value
self.tcx )
.normalize_erasing_regions(ty::ParamEnv::reveal_all(), *value)
}
} }
pub(crate) fn clif_type(&self, ty: Ty<'tcx>) -> Option<Type> { pub(crate) fn clif_type(&self, ty: Ty<'tcx>) -> Option<Type> {

View File

@ -50,7 +50,7 @@ impl<'tcx> DebugContext<'tcx> {
// TODO: this should be configurable // TODO: this should be configurable
// macOS doesn't seem to support DWARF > 3 // macOS doesn't seem to support DWARF > 3
// 5 version is required for md5 file hash // 5 version is required for md5 file hash
version: if tcx.sess.target.options.is_like_osx { version: if tcx.sess.target.is_like_osx {
3 3
} else { } else {
// FIXME change to version 5 once the gdb and lldb shipping with the latest debian // FIXME change to version 5 once the gdb and lldb shipping with the latest debian

View File

@ -324,8 +324,8 @@ fn codegen_global_asm(tcx: TyCtxt<'_>, cgu_name: &str, global_asm: &str) {
} }
if cfg!(not(feature = "inline_asm")) if cfg!(not(feature = "inline_asm"))
|| tcx.sess.target.options.is_like_osx || tcx.sess.target.is_like_osx
|| tcx.sess.target.options.is_like_windows || tcx.sess.target.is_like_windows
{ {
if global_asm.contains("__rust_probestack") { if global_asm.contains("__rust_probestack") {
return; return;

View File

@ -101,7 +101,7 @@ pub(crate) fn write_metadata<P: WriteMetadata>(
product.add_rustc_section( product.add_rustc_section(
rustc_middle::middle::exported_symbols::metadata_symbol_name(tcx), rustc_middle::middle::exported_symbols::metadata_symbol_name(tcx),
compressed, compressed,
tcx.sess.target.options.is_like_osx, tcx.sess.target.is_like_osx,
); );
metadata metadata

View File

@ -91,7 +91,7 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
} else if stem == "link" || stem == "lld-link" { } else if stem == "link" || stem == "lld-link" {
LinkerFlavor::Msvc LinkerFlavor::Msvc
} else if stem == "lld" || stem == "rust-lld" { } else if stem == "lld" || stem == "rust-lld" {
LinkerFlavor::Lld(sess.target.options.lld_flavor) LinkerFlavor::Lld(sess.target.lld_flavor)
} else { } else {
// fall back to the value in the target spec // fall back to the value in the target spec
sess.target.linker_flavor sess.target.linker_flavor
@ -115,7 +115,7 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
if let Some(ret) = infer_from( if let Some(ret) = infer_from(
sess, sess,
sess.target.options.linker.clone().map(PathBuf::from), sess.target.linker.clone().map(PathBuf::from),
Some(sess.target.linker_flavor), Some(sess.target.linker_flavor),
) { ) {
return ret; return ret;