llvm-6502/test/Verifier/gcread-ptrptr.ll
Gordon Henriksen 8c33da5dc4 Fix for PR1633: Verifier doesn't fully verify GC intrinsics
LLVM now enforces the following prototypes for the write barriers:

<ty>* @llvm.gcread(<ty2>*, <ty>**)
void @llvm.gcwrite(<ty>*, <ty2>*, <ty>**)

And for @llvm.gcroot, the first stack slot is verified to be an alloca or a 
bitcast of an alloca.

Fixes test/CodeGen/Generic/GC/lower_gcroot.ll, which violated these.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42051 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-17 20:30:04 +00:00

14 lines
218 B
LLVM

; RUN: not llvm-as < %s
; PR1633
%meta = type { i8* }
%obj = type { %meta* }
declare %obj* @llvm.gcread(%obj*, %obj*)
define %obj* @f() {
entry:
%x = call %obj* @llvm.gcread(%obj* null, %obj* null)
ret %obj* %x
}