blob: 6622eb2ea3e808d9b974a339062f079eab8f1e36 [file] [log] [blame]
Chris Lattner44466172003-07-25 21:09:20 +00001; RUN: analyze %s -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}