[ARM] Split large truncating MVE stores
[llvm-complete.git] / test / CodeGen / MIR / X86 / fastmath.mir
blob0b5c7ff1d388a56501b6c5528b62c0ec9843abc3
1 # RUN: llc -march=x86-64 -run-pass none -o - %s | FileCheck %s
2 # This test ensures that the MIR parser parses the fast math instruction flags.
4 ...
5 ---
6 name:            baz
7 body: |
8   bb.0.entry:
9     liveins: $xmm0
10   
11     ; CHECK:     %0:fr32 = COPY $xmm0
12     %0:fr32 = COPY $xmm0
13     ; CHECK:     %1:fr32 = nnan VMULSSrr %0, %0
14     %1:fr32 = nnan VMULSSrr %0, %0
15     ; CHECK:     %2:fr32 = ninf VMULSSrr %1, %1
16     %2:fr32 = ninf VMULSSrr %1, %1
17     ; CHECK:     %3:fr32 = nsz VMULSSrr %2, %2
18     %3:fr32 = nsz VMULSSrr %2, %2
19     ; CHECK:     %4:fr32 = arcp VMULSSrr %3, %3
20     %4:fr32 = arcp VMULSSrr %3, %3
21     ; CHECK:     %5:fr32 = contract VMULSSrr %4, %4
22     %5:fr32 = contract VMULSSrr %4, %4
23     ; CHECK:     %6:fr32 = afn VMULSSrr %5, %5
24     %6:fr32 = afn VMULSSrr %5, %5
25     ; CHECK:     %7:fr32 = reassoc VMULSSrr %6, %6
26     %7:fr32 = reassoc VMULSSrr %6, %6
27     ; CHECK:     %8:fr32 = nsz arcp contract afn reassoc VMULSSrr %7, %7
28     %8:fr32 = nsz arcp contract afn reassoc VMULSSrr %7, %7
29     ; CHECK:     %9:fr32 = contract afn reassoc VMULSSrr %8, %8
30     %9:fr32 = contract afn reassoc VMULSSrr %8, %8
31     ; CHECK:     $xmm0 = COPY %9
32     $xmm0 = COPY %9
33     ; CHECK:     RET 0, $xmm0
34     RET 0, $xmm0
36 ...