[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AArch64 / GlobalISel / regbank-intrinsic-trunc.mir
blobc89cedd2af7307009eb517d0f500418935273bd9
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc %s -verify-machineinstrs -mtriple aarch64-unknown-unknown -run-pass=regbankselect -o - | FileCheck %s
4 ...
5 ---
6 name:            test_f32.intrinsic_trunc
7 alignment:       4
8 legalized:       true
9 tracksRegLiveness: true
10 frameInfo:
11   maxCallFrameSize: 0
12 machineFunctionInfo: {}
13 body:             |
14   bb.0:
15     liveins: $s0
17     ; CHECK-LABEL: name: test_f32.intrinsic_trunc
18     ; CHECK: liveins: $s0
19     ; CHECK: [[COPY:%[0-9]+]]:fpr(s32) = COPY $s0
20     ; CHECK: [[INTRINSIC_TRUNC:%[0-9]+]]:fpr(s32) = G_INTRINSIC_TRUNC [[COPY]]
21     ; CHECK: $s0 = COPY [[INTRINSIC_TRUNC]](s32)
22     ; CHECK: RET_ReallyLR implicit $s0
23     %0:_(s32) = COPY $s0
24     %1:_(s32) = G_INTRINSIC_TRUNC %0
25     $s0 = COPY %1(s32)
26     RET_ReallyLR implicit $s0
28 ...
29 ---
30 name:            test_f64.intrinsic_trunc
31 alignment:       4
32 legalized:       true
33 tracksRegLiveness: true
34 frameInfo:
35   maxCallFrameSize: 0
36 machineFunctionInfo: {}
37 body:             |
38   bb.0:
39     liveins: $d0
41     ; CHECK-LABEL: name: test_f64.intrinsic_trunc
42     ; CHECK: liveins: $d0
43     ; CHECK: [[COPY:%[0-9]+]]:fpr(s64) = COPY $d0
44     ; CHECK: [[INTRINSIC_TRUNC:%[0-9]+]]:fpr(s64) = G_INTRINSIC_TRUNC [[COPY]]
45     ; CHECK: $d0 = COPY [[INTRINSIC_TRUNC]](s64)
46     ; CHECK: RET_ReallyLR implicit $d0
47     %0:_(s64) = COPY $d0
48     %1:_(s64) = G_INTRINSIC_TRUNC %0
49     $d0 = COPY %1(s64)
50     RET_ReallyLR implicit $d0