llvm-6502/test/Analysis/BasicAA/2003-04-22-GEPProblem.ll
2006-12-02 04:23:10 +00:00

16 lines
373 B
LLVM

; RUN: llvm-upgrade < %s | llvm-as | opt -load-vn -gcse -instcombine | llvm-dis | grep sub
; BasicAA was incorrectly concluding that P1 and P2 didn't conflict!
int %test(int *%Ptr, long %V) {
%P2 = getelementptr int* %Ptr, long 1
%P1 = getelementptr int* %Ptr, long %V
%X = load int* %P1
store int 5, int* %P2
%Y = load int* %P1
%Z = sub int %X, %Y
ret int %Z
}