blob: 631eb9f078e6cf7383b9bb962d1a49de8ec352d3 [file] [log] [blame]
Chris Lattnerd52e1b02006-08-27 22:47:14 +00001; RUN: llvm-as < %s | opt -analyze -datastructure-gc -dsgc-dspass=td -dsgc-check-flags=X:GM
Chris Lattner69134dc2003-06-30 15:17:39 +00002
3%G = internal global int 5
4
5implementation
6
7internal void %leaf(int *%X) {
8 store int 0, int* %X
9 ret void
10}
Chris Lattner7d63ac62003-07-01 16:28:32 +000011internal void %leaf2(int* %X) { ret void }
Chris Lattner69134dc2003-06-30 15:17:39 +000012
13internal void %intermediate(void(int*)* %Fn, int* %Ptr) {
14 call void %Fn(int* %Ptr)
15 ret void
16}
17
18int %main() {
19 call void %intermediate(void(int*)* %leaf, int* %G)
Chris Lattner7d63ac62003-07-01 16:28:32 +000020 call void %intermediate(void(int*)* %leaf2, int* %G)
21 call void %intermediate(void(int*)* %leaf, int* %G)
22 call void %intermediate(void(int*)* %leaf2, int* %G)
Chris Lattner69134dc2003-06-30 15:17:39 +000023 ret int 0
24}