diff --git a/test/Analysis/BasicAA/2003-09-19-LocalArgument.ll b/test/Analysis/BasicAA/2003-09-19-LocalArgument.ll new file mode 100644 index 00000000000..90f7172e4ab --- /dev/null +++ b/test/Analysis/BasicAA/2003-09-19-LocalArgument.ll @@ -0,0 +1,12 @@ +; In this test, a local alloca cannot alias an incoming argument. + +; RUN: llvm-as < %s | opt -load-vn -gcse -instcombine | llvm-dis | not grep sub + +int %test(int* %P) { + %X = alloca int + %V1 = load int* %P + store int 0, int* %X + %V2 = load int* %P + %Diff = sub int %V1, %V2 + ret int %Diff +} diff --git a/test/Transforms/BasicAA/2003-09-19-LocalArgument.ll b/test/Transforms/BasicAA/2003-09-19-LocalArgument.ll new file mode 100644 index 00000000000..90f7172e4ab --- /dev/null +++ b/test/Transforms/BasicAA/2003-09-19-LocalArgument.ll @@ -0,0 +1,12 @@ +; In this test, a local alloca cannot alias an incoming argument. + +; RUN: llvm-as < %s | opt -load-vn -gcse -instcombine | llvm-dis | not grep sub + +int %test(int* %P) { + %X = alloca int + %V1 = load int* %P + store int 0, int* %X + %V2 = load int* %P + %Diff = sub int %V1, %V2 + ret int %Diff +}