xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/GC/badrootproto.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: not llvm-as < %s >& /dev/null
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker	%list = type { i32, %list* }
4*9880d681SAndroid Build Coastguard Worker	%meta = type opaque
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Worker; This usage is invalid now; instead, objects must be bitcast to i8* for input
7*9880d681SAndroid Build Coastguard Worker; to the gc intrinsics.
8*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.gcroot(%list*, %meta*)
9*9880d681SAndroid Build Coastguard Worker
10*9880d681SAndroid Build Coastguard Workerdefine void @root() gc "example" {
11*9880d681SAndroid Build Coastguard Worker	%x.var = alloca i8*
12*9880d681SAndroid Build Coastguard Worker	call void @llvm.gcroot(i8** %x.var, %meta* null)
13*9880d681SAndroid Build Coastguard Worker}
14