aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/GC/badreadproto.ll
blob: 37672f804357487b26e3713fe714548f006205a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
; RUN: not llvm-as < %s >& /dev/null

	%list = type { i32, %list* }

; This usage is invalid now; instead, objects must be bitcast to i8* for input
; to the gc intrinsics.
declare %list* @llvm.gcread(%list*, %list**)

define %list* @tl(%list* %l) gc "example" {
	%hd.ptr = getelementptr %list, %list* %l, i32 0, i32 0
	%hd = call %list* @llvm.gcread(%list* %l, %list** %hd.ptr)
	ret i32 %tmp
}