blob: b9940db157f75bfec7a7eb98cb214a38f6c0ecf1 [file] [log] [blame]
; This test was failing because the globals X and Y are marked incomplete
; in the TD graph for %test
; XFAIL: *
; RUN: llvm-as < %s | opt -no-aa -ds-aa -load-vn -gcse -instcombine | llvm-dis | not grep seteq
%X = internal global int 20
%Y = internal global int* null
implementation
internal bool %test(int** %P) {
%A = load int** %P ;; We know P == Y!
%B = load int** %Y ;; B = A
%c = seteq int* %A, %B ;; Always true
ret bool %c
}
int %main() {
store int* %X, int** %Y
call bool %test(int** %Y)
ret int 0
}