; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
; RUN: opt -passes=newgvn -S < %s | FileCheck %s
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
define dso_local void @print_long_format() #0 {
; CHECK-LABEL: define dso_local void @print_long_format(
; CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
; CHECK-NEXT: entry:
; CHECK-NEXT: switch i32 undef, label [[SW_DEFAULT:%.*]] [
; CHECK-NEXT: i32 1, label [[SW_BB:%.*]]
; CHECK-NEXT: i32 0, label [[SW_BB19:%.*]]
; CHECK-NEXT: i32 2, label [[SW_BB23:%.*]]
; CHECK-NEXT: ]
; CHECK: sw.bb:
; CHECK-NEXT: unreachable
; CHECK: sw.bb19:
; CHECK-NEXT: br i1 undef, label [[IF_THEN37:%.*]], label [[IF_END50:%.*]]
; CHECK: sw.bb23:
; CHECK-NEXT: unreachable
; CHECK: sw.default:
; CHECK-NEXT: unreachable
; CHECK: if.then37:
; CHECK-NEXT: unreachable
; CHECK: if.end50:
; CHECK-NEXT: [[CALL180:%.*]] = call i32 @timespec_cmp() #[[ATTR2:[0-9]+]]
; CHECK-NEXT: ret void
;
entry:
switch i32 undef, label %sw.default [
i32 1, label %sw.bb
i32 0, label %sw.bb19
i32 2, label %sw.bb23
]
sw.bb: ; preds = %entry
unreachable
sw.bb19: ; preds = %entry
br i1 undef, label %if.then37, label %if.end50
sw.bb23: ; preds = %entry
unreachable
sw.default: ; preds = %entry
unreachable
if.then37: ; preds = %sw.bb19
unreachable
if.end50: ; preds = %sw.bb19
%call180 = call i32 @timespec_cmp() #2
%cmp181 = icmp slt i32 %call180, 0
ret void
}
; Function Attrs: writeonly
declare dso_local i32 @timespec_cmp() #1
attributes #0 = { "use-soft-float"="false" }
attributes #1 = { writeonly }
attributes #2 = { nounwind readonly }