llvm/test/CodeGen/SPARC/missinglabel.ll
Kyle Butt 546c8eba34 Codegen: Fix broken assumption in Tail Merge.
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
2016-06-24 18:16:36 +00:00

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
}