Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / CodeGen / RISCV / rvv / vxrm.mir
blob64e191887e092c400a644752b86de11acf454001
1 # RUN: llc -mtriple=riscv64 -mattr=+v -verify-machineinstrs -stop-after prologepilog -o - %s | FileCheck %s --check-prefix=MIR
2 # RUN: llc -mtriple=riscv64 -mattr=+v -verify-machineinstrs -o - %s | FileCheck %s --check-prefix=ASM
4 ---
5 name:    verify_vxrm
6 tracksRegLiveness: true
7 body:     |
8   bb.0.entry:
9     liveins: $v8, $v9, $x10
11     ; MIR-LABEL: name: verify_vxrm
12     ; MIR: liveins: $v8, $v9, $x10
13     ; MIR-NEXT: {{  $}}
14     ; MIR-NEXT: dead $x0 = PseudoVSETVLI renamable $x10, 197 /* e8, mf8, ta, ma */, implicit-def $vl, implicit-def $vtype
15     ; MIR-NEXT: WriteVXRMImm 0, implicit-def $vxrm
16     ; MIR-NEXT: renamable $v8 = PseudoVAADD_VV_MF8 undef $v8, renamable $v8, renamable $v9, 0, $noreg, 3 /* e8 */, 0  /* tu, mu */, implicit $vl, implicit $vtype, implicit $vxrm
17     ; MIR-NEXT: PseudoRET implicit $v8
18     ; ASM-LABEL: verify_vxrm:
19     ; ASM:        # %bb.0:
20     ; ASM-NEXT:    vsetvli      zero, a0, e8, mf8, ta, ma
21     ; ASM-NEXT:    csrwi        vxrm, 0
22     ; ASM-NEXT:    vaadd.vv     v8, v8, v9
23     ; ASM-NEXT:    ret
24     %0:vr = COPY $v8
25     %1:vr = COPY $v9
26     dead $x0 = PseudoVSETVLI killed renamable $x10, 197 /* e8, mf8, ta, ma */, implicit-def $vl, implicit-def $vtype
27     %pt:vr = IMPLICIT_DEF
28     renamable $v8 = PseudoVAADD_VV_MF8 %pt, killed renamable $v8, killed renamable $v9, 0, $noreg, 3 /* e8 */, 0
29     PseudoRET implicit $v8
30 ...