1 ; RUN: opt -S -lowertypetests < %s | FileCheck %s
3 target datalayout = "e-p:64:64"
4 target triple = "x86_64-unknown-linux"
6 ; CHECK: @0 = private constant { i32, [0 x i8], i32 } { i32 1, [0 x i8] zeroinitializer, i32 2 }
7 ; CHECK: @f1 = alias void (), void ()* @.cfi.jumptable
8 ; CHECK: @f2 = alias void (), bitcast ([8 x i8]* getelementptr inbounds ([2 x [8 x i8]], [2 x [8 x i8]]* bitcast (void ()* @.cfi.jumptable to [2 x [8 x i8]]*), i64 0, i64 1) to void ()*)
9 ; CHECK: @g1 = alias i32, getelementptr inbounds ({ i32, [0 x i8], i32 }, { i32, [0 x i8], i32 }* @0, i32 0, i32 0)
10 ; CHECK: @g2 = alias i32, getelementptr inbounds ({ i32, [0 x i8], i32 }, { i32, [0 x i8], i32 }* @0, i32 0, i32 2)
26 define void @jt2(i8* nest, ...) {
27 musttail call void (...) @llvm.icall.branch.funnel(
29 i32* @g1, void ()* @g1f,
30 i32* @g2, void ()* @g2f,
36 define void @jt3(i8* nest, ...) {
37 musttail call void (...) @llvm.icall.branch.funnel(
39 void ()* @f1, void ()* @f1,
40 void ()* @f2, void ()* @f2,
46 declare void @llvm.icall.branch.funnel(...)