Skip to content

Commit 0247c6a

Browse files
Experiment: Don't merge vtables.
1 parent 31d754a commit 0247c6a

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

compiler/rustc_codegen_llvm/src/consts.rs

+8-1
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,14 @@ impl<'ll> CodegenCx<'ll, '_> {
241241
};
242242
llvm::LLVMSetInitializer(gv, cv);
243243
set_global_alignment(self, gv, align);
244-
llvm::SetUnnamedAddress(gv, llvm::UnnamedAddr::Global);
244+
245+
// Experiment: What's the impact of making vtables unmergable?
246+
if kind == Some("vtable") {
247+
llvm::SetUnnamedAddress(gv, llvm::UnnamedAddr::No);
248+
} else {
249+
llvm::SetUnnamedAddress(gv, llvm::UnnamedAddr::Global);
250+
}
251+
245252
gv
246253
}
247254
}

0 commit comments

Comments
 (0)