brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · d367988 Raw
78 lines · plain
1; RUN: llc < %s -mtriple=i686-pc-linux-gnu -asm-verbose=false \2; RUN: -relocation-model=pic | FileCheck %s3 4@thread_var = thread_local global i32 42, align 45@thread_alias = thread_local(localdynamic) alias i32, ptr @thread_var6 7; CHECK-LABEL: get_thread_var8define ptr @get_thread_var() {9; CHECK: leal    thread_var@TLSGD10  ret ptr @thread_var11}12 13; CHECK-LABEL: get_thread_alias14define ptr @get_thread_alias() {15; CHECK: leal    thread_alias@TLSLD16  ret ptr @thread_alias17}18 19@bar = global i32 4220 21; CHECK-DAG: .globl	foo122@foo1 = alias i32, ptr @bar23 24; CHECK-DAG: .globl	foo225@foo2 = alias i32, ptr @bar26 27%FunTy = type i32()28 29define i32 @foo_f() {30  ret i32 031}32; CHECK-DAG: .weak	bar_f33@bar_f = weak alias %FunTy, ptr @foo_f34 35@bar_l = linkonce_odr alias i32, ptr @bar36; CHECK-DAG: .weak	bar_l37 38@bar_i = internal alias i32, ptr @bar39 40; CHECK-DAG: .globl	A41@A = alias i64, ptr @bar42 43; CHECK-DAG: .globl	bar_h44; CHECK-DAG: .hidden	bar_h45@bar_h = hidden alias i32, ptr @bar46 47; CHECK-DAG: .globl	bar_p48; CHECK-DAG: .protected	bar_p49@bar_p = protected alias i32, ptr @bar50 51; CHECK-DAG: test2 = bar+452@test2 = alias i32, getelementptr(i32, ptr @bar, i32 1)53 54; CHECK-DAG: test3 = 4255@test3 = alias i32, inttoptr(i32 42 to ptr)56 57; CHECK-DAG: test4 = bar58@test4 = alias i32, inttoptr(i64 ptrtoint (ptr @bar to i64) to ptr)59 60; CHECK-DAG: test5 = test2-bar61@test5 = alias i32, inttoptr(i32 sub (i32 ptrtoint (ptr @test2 to i32),62                                 i32 ptrtoint (ptr @bar to i32)) to ptr)63 64; CHECK-DAG: .globl	test65define i32 @test() {66entry:67   %tmp = load i32, ptr @foo168   %tmp1 = load i32, ptr @foo269   %tmp0 = load i32, ptr @bar_i70   %tmp2 = call i32 @foo_f()71   %tmp3 = add i32 %tmp, %tmp272   %tmp4 = call i32 @bar_f()73   %tmp5 = add i32 %tmp3, %tmp474   %tmp6 = add i32 %tmp1, %tmp575   %tmp7 = add i32 %tmp6, %tmp076   ret i32 %tmp777}78