[LLVM][IR] Use splat syntax when printing ConstantExpr based splats. (#116856)
[llvm-project.git] / llvm / test / Transforms / NewGVN / pr43441.ll
bloba5f711dbd69e5f81ef55b9e38bc0cfb188ae2e04
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
2 ; RUN: opt -passes=newgvn -S < %s | FileCheck %s
4 target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
5 target triple = "x86_64-unknown-linux-gnu"
7 define dso_local void @print_long_format() #0 {
8 ; CHECK-LABEL: define dso_local void @print_long_format(
9 ; CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
10 ; CHECK-NEXT:  entry:
11 ; CHECK-NEXT:    switch i32 undef, label [[SW_DEFAULT:%.*]] [
12 ; CHECK-NEXT:      i32 1, label [[SW_BB:%.*]]
13 ; CHECK-NEXT:      i32 0, label [[SW_BB19:%.*]]
14 ; CHECK-NEXT:      i32 2, label [[SW_BB23:%.*]]
15 ; CHECK-NEXT:    ]
16 ; CHECK:       sw.bb:
17 ; CHECK-NEXT:    unreachable
18 ; CHECK:       sw.bb19:
19 ; CHECK-NEXT:    br i1 undef, label [[IF_THEN37:%.*]], label [[IF_END50:%.*]]
20 ; CHECK:       sw.bb23:
21 ; CHECK-NEXT:    unreachable
22 ; CHECK:       sw.default:
23 ; CHECK-NEXT:    unreachable
24 ; CHECK:       if.then37:
25 ; CHECK-NEXT:    unreachable
26 ; CHECK:       if.end50:
27 ; CHECK-NEXT:    [[CALL180:%.*]] = call i32 @timespec_cmp() #[[ATTR2:[0-9]+]]
28 ; CHECK-NEXT:    ret void
30 entry:
31   switch i32 undef, label %sw.default [
32   i32 1, label %sw.bb
33   i32 0, label %sw.bb19
34   i32 2, label %sw.bb23
35   ]
37 sw.bb:                                            ; preds = %entry
38   unreachable
40 sw.bb19:                                          ; preds = %entry
41   br i1 undef, label %if.then37, label %if.end50
43 sw.bb23:                                          ; preds = %entry
44   unreachable
46 sw.default:                                       ; preds = %entry
47   unreachable
49 if.then37:                                        ; preds = %sw.bb19
50   unreachable
52 if.end50:                                         ; preds = %sw.bb19
53   %call180 = call i32 @timespec_cmp() #2
54   %cmp181 = icmp slt i32 %call180, 0
55   ret void
58 ; Function Attrs: writeonly
59 declare dso_local i32 @timespec_cmp() #1
61 attributes #0 = { "use-soft-float"="false" }
62 attributes #1 = { writeonly }
63 attributes #2 = { nounwind readonly }