@@ -1688,13 +1688,9 @@ define void @t28_invoke_ret_value_is_used_in_phi_node() personality i8* bitcast
1688
1688
; CHECK-LABEL: @t28_invoke_ret_value_is_used_in_phi_node(
1689
1689
; CHECK-NEXT: entry:
1690
1690
; CHECK-NEXT: [[C0:%.*]] = call i1 @cond()
1691
- ; CHECK-NEXT: br i1 [[C0]], label [[IF_THEN0:%.*]], label [[IF_ELSE:%.*]]
1692
- ; CHECK: if.then0:
1693
- ; CHECK-NEXT: [[V0:%.*]] = invoke i32 @returning_maybe_throw()
1694
- ; CHECK-NEXT: to label [[INVOKE_CONT:%.*]] unwind label [[LPAD:%.*]]
1691
+ ; CHECK-NEXT: br i1 [[C0]], label [[IF_THEN1_INVOKE:%.*]], label [[IF_ELSE:%.*]]
1695
1692
; CHECK: invoke.cont:
1696
- ; CHECK-NEXT: [[PHI:%.*]] = phi i32 [ [[V0]], [[IF_THEN0]] ], [ [[V1:%.*]], [[IF_THEN1:%.*]] ]
1697
- ; CHECK-NEXT: call void @consume(i32 [[PHI]])
1693
+ ; CHECK-NEXT: call void @consume(i32 [[TMP0:%.*]])
1698
1694
; CHECK-NEXT: call void @sideeffect()
1699
1695
; CHECK-NEXT: unreachable
1700
1696
; CHECK: lpad:
@@ -1704,10 +1700,10 @@ define void @t28_invoke_ret_value_is_used_in_phi_node() personality i8* bitcast
1704
1700
; CHECK-NEXT: resume { i8*, i32 } [[EH]]
1705
1701
; CHECK: if.else:
1706
1702
; CHECK-NEXT: [[C1:%.*]] = call i1 @cond()
1707
- ; CHECK-NEXT: br i1 [[C1]], label [[IF_THEN1 ]], label [[IF_END:%.*]]
1708
- ; CHECK: if.then1:
1709
- ; CHECK-NEXT: [[V1 ]] = invoke i32 @returning_maybe_throw()
1710
- ; CHECK-NEXT: to label [[INVOKE_CONT]] unwind label [[LPAD]]
1703
+ ; CHECK-NEXT: br i1 [[C1]], label [[IF_THEN1_INVOKE ]], label [[IF_END:%.*]]
1704
+ ; CHECK: if.then1.invoke :
1705
+ ; CHECK-NEXT: [[TMP0 ]] = invoke i32 @returning_maybe_throw()
1706
+ ; CHECK-NEXT: to label [[INVOKE_CONT:%.* ]] unwind label [[LPAD:%.* ]]
1711
1707
; CHECK: if.end:
1712
1708
; CHECK-NEXT: call void @sideeffect()
1713
1709
; CHECK-NEXT: ret void
@@ -1933,15 +1929,10 @@ define void @t32_invoke_ret_value_is_used_in_phi_node_other_phi_is_fine() person
1933
1929
; CHECK-LABEL: @t32_invoke_ret_value_is_used_in_phi_node_other_phi_is_fine(
1934
1930
; CHECK-NEXT: entry:
1935
1931
; CHECK-NEXT: [[C0:%.*]] = call i1 @cond()
1936
- ; CHECK-NEXT: br i1 [[C0]], label [[IF_THEN0:%.*]], label [[IF_ELSE:%.*]]
1937
- ; CHECK: if.then0:
1938
- ; CHECK-NEXT: [[V0:%.*]] = invoke i32 @returning_maybe_throw()
1939
- ; CHECK-NEXT: to label [[INVOKE_CONT:%.*]] unwind label [[LPAD:%.*]]
1932
+ ; CHECK-NEXT: br i1 [[C0]], label [[IF_THEN1_INVOKE:%.*]], label [[IF_ELSE:%.*]]
1940
1933
; CHECK: invoke.cont:
1941
- ; CHECK-NEXT: [[PHI0:%.*]] = phi i32 [ [[V0]], [[IF_THEN0]] ], [ [[V1:%.*]], [[IF_THEN1:%.*]] ]
1942
- ; CHECK-NEXT: [[PHI1:%.*]] = phi i32 [ 0, [[IF_THEN0]] ], [ 0, [[IF_THEN1]] ]
1943
- ; CHECK-NEXT: call void @consume(i32 [[PHI0]])
1944
- ; CHECK-NEXT: call void @consume(i32 [[PHI1]])
1934
+ ; CHECK-NEXT: call void @consume(i32 [[TMP0:%.*]])
1935
+ ; CHECK-NEXT: call void @consume(i32 0)
1945
1936
; CHECK-NEXT: call void @sideeffect()
1946
1937
; CHECK-NEXT: unreachable
1947
1938
; CHECK: lpad:
@@ -1951,10 +1942,10 @@ define void @t32_invoke_ret_value_is_used_in_phi_node_other_phi_is_fine() person
1951
1942
; CHECK-NEXT: resume { i8*, i32 } [[EH]]
1952
1943
; CHECK: if.else:
1953
1944
; CHECK-NEXT: [[C1:%.*]] = call i1 @cond()
1954
- ; CHECK-NEXT: br i1 [[C1]], label [[IF_THEN1 ]], label [[IF_END:%.*]]
1955
- ; CHECK: if.then1:
1956
- ; CHECK-NEXT: [[V1 ]] = invoke i32 @returning_maybe_throw()
1957
- ; CHECK-NEXT: to label [[INVOKE_CONT]] unwind label [[LPAD]]
1945
+ ; CHECK-NEXT: br i1 [[C1]], label [[IF_THEN1_INVOKE ]], label [[IF_END:%.*]]
1946
+ ; CHECK: if.then1.invoke :
1947
+ ; CHECK-NEXT: [[TMP0 ]] = invoke i32 @returning_maybe_throw()
1948
+ ; CHECK-NEXT: to label [[INVOKE_CONT:%.* ]] unwind label [[LPAD:%.* ]]
1958
1949
; CHECK: if.end:
1959
1950
; CHECK-NEXT: call void @sideeffect()
1960
1951
; CHECK-NEXT: ret void
0 commit comments