xref: /llvm-project/llvm/test/ExecutionEngine/Orc/trivial-reference-to-global-variable.ll (revision 563ce9aa4ab22f10e0aa2799a3562a65a629ad0a)
1*563ce9aaSLang Hames; Check that we can execute a program that makes a single reference to an
2*563ce9aaSLang Hames; external linkage global variable that is initialized to a non-zero value.
3*563ce9aaSLang Hames;
4*563ce9aaSLang Hames; Failure may indicate a problem with data-section or GOT handling.
5*563ce9aaSLang Hames;
6*563ce9aaSLang Hames; RUN: %lli %s
7*563ce9aaSLang Hames
8*563ce9aaSLang Hames@X = global i32 1
9*563ce9aaSLang Hames
10*563ce9aaSLang Hamesdefine i32 @main(i32 %argc, i8** %argv) {
11*563ce9aaSLang Hamesentry:
12*563ce9aaSLang Hames  %0 = load i32, i32* @X
13*563ce9aaSLang Hames  %1 = icmp ne i32 %0, 1
14*563ce9aaSLang Hames  %2 = zext i1 %1 to i32
15*563ce9aaSLang Hames  ret i32 %2
16*563ce9aaSLang Hames}
17