blob: 2b4fb85db9bfd1811129a9b9e2bb298c5883a3dd [file] [log] [blame]
Chris Lattner69134dc2003-06-30 15:17:39 +00001; RUN: analyze %s -datastructure-gc -dsgc-dspass=td -dsgc-abort-if-incomplete=X
2
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}