; This test makes sure that these instructions are properly eliminated.
;

; RUN: if as < %s | opt -instcombine -dce | dis | grep phi
; RUN: then exit 1
; RUN: else exit 0
; RUN: fi

implementation

int "test1"(int %A) {
BB0:	br label %BB1
BB1:
	%B = phi int [%A, %BB0]     ; Combine away one argument PHI nodes
	ret int %B
}


; This test makes sure that these instructions are properly eliminated.
;

; RUN: if as < %s | opt -instcombine -die | dis | grep phi
; RUN: then exit 1
; RUN: else exit 0
; RUN: fi

implementation

int "test1"(int %A, bool %b) {
BB0:    br bool %b, label %BB1, label %BB2
BB1:
        %B = phi int [%A, %BB0]     ; Combine away one argument PHI nodes
        ret int %B
BB2:
        ret int %A
}


Make the testcase more interesting so that DCE does not eliminate it. Use DIE instead of DCE anyway
Make the testcase more interesting so that DCE does not eliminate it.
Use DIE instead of DCE anyway


git-svn-id: 0ff597fd157e6f4fc38580e8d64ab130330d2411@2500 91177308-0d34-0410-b5e6-96231b3b80d8
