1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc -mcpu=pwr9 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
3; RUN:   -mtriple=powerpc64le-unknown-unknown -verify-machineinstrs < %s | \
4; RUN:   FileCheck %s --check-prefix=P9
5; RUN: llc -mcpu=pwr8 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
6; RUN:   -mtriple=powerpc64le-unknown-unknown -verify-machineinstrs < %s | \
7; RUN:   FileCheck %s
8; RUN: llc -mcpu=pwr8 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr \
9; RUN:   -mtriple=powerpc64le-unknown-unknown -verify-machineinstrs < %s \
10; RUN:   --enable-unsafe-fp-math | FileCheck %s --check-prefix=FAST
11
12define dso_local <2 x double> @test_rint_v2f64(<2 x double> %d) local_unnamed_addr {
13; P9-LABEL: test_rint_v2f64:
14; P9:       # %bb.0: # %entry
15; P9-NEXT:    xvrdpic v2, v2
16; P9-NEXT:    blr
17;
18; CHECK-LABEL: test_rint_v2f64:
19; CHECK:       # %bb.0: # %entry
20; CHECK-NEXT:    xvrdpic v2, v2
21; CHECK-NEXT:    blr
22;
23; FAST-LABEL: test_rint_v2f64:
24; FAST:       # %bb.0: # %entry
25; FAST-NEXT:    xvrdpic v2, v2
26; FAST-NEXT:    blr
27entry:
28  %0 = tail call <2 x double> @llvm.rint.v2f64(<2 x double> %d)
29  ret <2 x double> %0
30}
31
32declare <2 x double> @llvm.rint.v2f64(<2 x double>)
33
34
35define dso_local <4 x float> @test_rint_v4f32(<4 x float> %d) local_unnamed_addr {
36; P9-LABEL: test_rint_v4f32:
37; P9:       # %bb.0: # %entry
38; P9-NEXT:    xvrspic v2, v2
39; P9-NEXT:    blr
40;
41; CHECK-LABEL: test_rint_v4f32:
42; CHECK:       # %bb.0: # %entry
43; CHECK-NEXT:    xvrspic v2, v2
44; CHECK-NEXT:    blr
45;
46; FAST-LABEL: test_rint_v4f32:
47; FAST:       # %bb.0: # %entry
48; FAST-NEXT:    xvrspic v2, v2
49; FAST-NEXT:    blr
50entry:
51  %0 = tail call <4 x float> @llvm.rint.v4f32(<4 x float> %d)
52  ret <4 x float> %0
53}
54
55declare <4 x float> @llvm.rint.v4f32(<4 x float>)
56