From ca29178bb900624443d7a30b6b7ba3c0921d5123 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 29 Jun 2003 22:35:55 +0000 Subject: [PATCH] This node should not be incomplete! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6984 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../DSGraph/2003-06-29-IncompleteTDPass.ll | 26 +++++++++++++++++++ test/Analysis/DSGraph/PhysicalSubtyping.ll | 18 +++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 test/Analysis/DSGraph/2003-06-29-IncompleteTDPass.ll create mode 100644 test/Analysis/DSGraph/PhysicalSubtyping.ll diff --git a/test/Analysis/DSGraph/2003-06-29-IncompleteTDPass.ll b/test/Analysis/DSGraph/2003-06-29-IncompleteTDPass.ll new file mode 100644 index 00000000000..4b146a15924 --- /dev/null +++ b/test/Analysis/DSGraph/2003-06-29-IncompleteTDPass.ll @@ -0,0 +1,26 @@ +; RUN: analyze %s -datastructure-gc -dsgc-dspass=td -dsgc-abort-if-incomplete=Ptr + + + +int %main() { + call void %A() + call void %B() + ret int 0 +} + +internal void %A() { + %V = malloc int + call void %Callee(int* %V) + ret void +} + +internal void %B() { + %V = malloc int + call void %Callee(int* %V) + ret void +} + +internal void %Callee(int* %Ptr) { + load int* %Ptr + ret void +} diff --git a/test/Analysis/DSGraph/PhysicalSubtyping.ll b/test/Analysis/DSGraph/PhysicalSubtyping.ll new file mode 100644 index 00000000000..d9ac454522f --- /dev/null +++ b/test/Analysis/DSGraph/PhysicalSubtyping.ll @@ -0,0 +1,18 @@ +; Test to check for support for "physical subtyping" +; +; RUN: analyze %s -datastructure-gc -dsgc-abort-if-any-collapsed +; +%S = type { int } +%T = type { int, float, double } + +int %main() { + %A = alloca %S + %Ap = getelementptr %S* %A, long 0, ubyte 0 + %B = alloca %T + %Bp = getelementptr %T* %B, long 0, ubyte 0 + %C = alloca int* + + store int* %Ap, int** %C + store int* %Bp, int** %C + ret int 0 +}