mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-23 19:59:57 +00:00
546c8eba34
Tail merge was making the assumption that a layout successor or predecessor was always a cfg successor/predecessor. Remove that assumption. Changes to tests are necessary because the errant cfg edges were preventing optimizations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273700 91177308-0d34-0410-b5e6-96231b3b80d8
24 lines
470 B
LLVM
24 lines
470 B
LLVM
; RUN: llc < %s -verify-machineinstrs | FileCheck %s
|
|
target datalayout = "E-m:e-i64:64-n32:64-S128"
|
|
target triple = "sparc64-unknown-linux-gnu"
|
|
|
|
define void @f() align 2 {
|
|
entry:
|
|
; CHECK: %xcc, .LBB0_2
|
|
%cmp = icmp eq i64 undef, 0
|
|
br i1 %cmp, label %targetblock, label %cond.false
|
|
|
|
cond.false:
|
|
unreachable
|
|
|
|
; CHECK: .LBB0_2: ! %targetblock
|
|
targetblock:
|
|
br i1 undef, label %cond.false.i83, label %exit.i85
|
|
|
|
cond.false.i83:
|
|
unreachable
|
|
|
|
exit.i85:
|
|
unreachable
|
|
}
|