[Evaluator] Examine alias when evaluating function call
This fixes PR38120
llvm-svn: 336702
diff --git a/llvm/test/Transforms/GlobalOpt/evaluate-call.ll b/llvm/test/Transforms/GlobalOpt/evaluate-call.ll
index 2721100..c045674 100644
--- a/llvm/test/Transforms/GlobalOpt/evaluate-call.ll
+++ b/llvm/test/Transforms/GlobalOpt/evaluate-call.ll
@@ -28,10 +28,12 @@
@llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @_GLOBAL__sub_I_main.cpp, i8* null }]
define internal void @__cxx_global_var_init() section "__TEXT,__StaticInit,regular,pure_instructions" {
- call void @_ZN1SC1Ev(%struct.S* @_s)
+ call void @_ZN1SC1Ev_alias(%struct.S* @_s)
ret void
}
+@_ZN1SC1Ev_alias = linkonce_odr unnamed_addr alias void (%struct.S*), void (%struct.S*)* @_ZN1SC1Ev
+
define linkonce_odr void @_ZN1SC1Ev(%struct.S*) unnamed_addr align 2 {
%2 = alloca %struct.S*, align 8
store %struct.S* %0, %struct.S** %2, align 8