Add unstable -Zdefault-hidden-visibility
cmdline flag for rustc
.
The new flag has been described in the Major Change Proposal at https://github.com/rust-lang/compiler-team/issues/656
This commit is contained in:
parent
56d25ba5ea
commit
981c4e3ce6
10 changed files with 66 additions and 8 deletions
|
@ -76,7 +76,7 @@ pub(crate) unsafe fn codegen(
|
|||
// __rust_alloc_error_handler_should_panic
|
||||
let name = OomStrategy::SYMBOL;
|
||||
let ll_g = llvm::LLVMRustGetOrInsertGlobal(llmod, name.as_ptr().cast(), name.len(), i8);
|
||||
if tcx.sess.target.default_hidden_visibility {
|
||||
if tcx.sess.default_hidden_visibility() {
|
||||
llvm::LLVMRustSetVisibility(ll_g, llvm::Visibility::Hidden);
|
||||
}
|
||||
let val = tcx.sess.opts.unstable_opts.oom.should_panic();
|
||||
|
@ -85,7 +85,7 @@ pub(crate) unsafe fn codegen(
|
|||
|
||||
let name = NO_ALLOC_SHIM_IS_UNSTABLE;
|
||||
let ll_g = llvm::LLVMRustGetOrInsertGlobal(llmod, name.as_ptr().cast(), name.len(), i8);
|
||||
if tcx.sess.target.default_hidden_visibility {
|
||||
if tcx.sess.default_hidden_visibility() {
|
||||
llvm::LLVMRustSetVisibility(ll_g, llvm::Visibility::Hidden);
|
||||
}
|
||||
let llval = llvm::LLVMConstInt(i8, 0, False);
|
||||
|
@ -130,7 +130,7 @@ fn create_wrapper_function(
|
|||
None
|
||||
};
|
||||
|
||||
if tcx.sess.target.default_hidden_visibility {
|
||||
if tcx.sess.default_hidden_visibility() {
|
||||
llvm::LLVMRustSetVisibility(llfn, llvm::Visibility::Hidden);
|
||||
}
|
||||
if tcx.sess.must_emit_unwind_tables() {
|
||||
|
|
|
@ -84,7 +84,7 @@ impl<'ll, 'tcx> CodegenCx<'ll, 'tcx> {
|
|||
fn_type: &'ll Type,
|
||||
) -> &'ll Value {
|
||||
// Declare C ABI functions with the visibility used by C by default.
|
||||
let visibility = if self.tcx.sess.target.default_hidden_visibility {
|
||||
let visibility = if self.tcx.sess.default_hidden_visibility() {
|
||||
llvm::Visibility::Hidden
|
||||
} else {
|
||||
llvm::Visibility::Default
|
||||
|
@ -107,7 +107,7 @@ impl<'ll, 'tcx> CodegenCx<'ll, 'tcx> {
|
|||
unnamed: llvm::UnnamedAddr,
|
||||
fn_type: &'ll Type,
|
||||
) -> &'ll Value {
|
||||
let visibility = if self.tcx.sess.target.default_hidden_visibility {
|
||||
let visibility = if self.tcx.sess.default_hidden_visibility() {
|
||||
llvm::Visibility::Hidden
|
||||
} else {
|
||||
llvm::Visibility::Default
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue