1 ; RUN: llc < %s -O2 -mtriple=powerpc-linux-musl | FileCheck %s
2 ; RUN: llc < %s -O2 -mtriple=powerpc64-linux-musl | FileCheck %s
3 ; RUN: llc < %s -O2 -mtriple=powerpc64le-linux-musl | FileCheck %s
5 define fp128 @addkf3(fp128 %a, fp128 %b) {
12 define fp128 @subkf3(fp128 %a, fp128 %b) {
13 ; CHECK-LABEL: subkf3:
15 %1 = fsub fp128 %a, %b
19 define fp128 @mulkf3(fp128 %a, fp128 %b) {
20 ; CHECK-LABEL: mulkf3:
22 %1 = fmul fp128 %a, %b
26 define fp128 @divkf3(fp128 %a, fp128 %b) {
27 ; CHECK-LABEL: divkf3:
29 %1 = fdiv fp128 %a, %b
33 define fp128 @extendsfkf2(float %a) {
34 ; CHECK-LABEL: extendsfkf2:
35 ; CHECK: __extendsfkf2
36 %1 = fpext float %a to fp128
40 define fp128 @extenddfkf2(double %a) {
41 ; CHECK-LABEL: extenddfkf2:
42 ; CHECK: __extenddfkf2
43 %1 = fpext double %a to fp128
47 define float @trunckfsf2(fp128 %a) {
48 ; CHECK-LABEL: trunckfsf2:
50 %1 = fptrunc fp128 %a to float
54 define double @trunckfdf2(fp128 %a) {
55 ; CHECK-LABEL: trunckfdf2:
57 %1 = fptrunc fp128 %a to double
61 define i32 @fixkfsi(fp128 %a) {
62 ; CHECK-LABEL: fixkfsi:
64 %1 = fptosi fp128 %a to i32
68 define i64 @fixkfdi(fp128 %a) {
69 ; CHECK-LABEL: fixkfdi:
71 %1 = fptosi fp128 %a to i64
75 define i32 @fixunskfsi(fp128 %a) {
76 ; CHECK-LABEL: fixunskfsi:
78 %1 = fptoui fp128 %a to i32
82 define i64 @fixunskfdi(fp128 %a) {
83 ; CHECK-LABEL: fixunskfdi:
85 %1 = fptoui fp128 %a to i64
89 define fp128 @floatsikf(i32 %a) {
90 ; CHECK-LABEL: floatsikf:
92 %1 = sitofp i32 %a to fp128
96 define fp128 @floatdikf(i64 %a) {
97 ; CHECK-LABEL: floatdikf:
99 %1 = sitofp i64 %a to fp128
103 define fp128 @floatunsikf(i32 %a) {
104 ; CHECK-LABEL: floatunsikf:
105 ; CHECK: __floatunsikf
106 %1 = uitofp i32 %a to fp128
110 define fp128 @floatundikf(i64 %a) {
111 ; CHECK-LABEL: floatundikf:
112 ; CHECK: __floatundikf
113 %1 = uitofp i64 %a to fp128
117 define i1 @test_eqkf2(fp128 %a, fp128 %b) {
118 ; CHECK-LABEL: test_eqkf2:
120 %1 = fcmp oeq fp128 %a, %b
124 define i1 @test_nekf2(fp128 %a, fp128 %b) {
125 ; CHECK-LABEL: test_nekf2:
127 %1 = fcmp une fp128 %a, %b
131 define i1 @test_gekf2(fp128 %a, fp128 %b) {
132 ; CHECK-LABEL: test_gekf2:
134 %1 = fcmp oge fp128 %a, %b
138 define i1 @test_ltkf2(fp128 %a, fp128 %b) {
139 ; CHECK-LABEL: test_ltkf2:
141 %1 = fcmp olt fp128 %a, %b
145 define i1 @test_lekf2(fp128 %a, fp128 %b) {
146 ; CHECK-LABEL: test_lekf2:
148 %1 = fcmp ole fp128 %a, %b
152 define i1 @test_gtkf2(fp128 %a, fp128 %b) {
153 ; CHECK-LABEL: test_gtkf2:
155 %1 = fcmp ogt fp128 %a, %b
159 define i1 @test_unordkf2(fp128 %a, fp128 %b) {
160 ; CHECK-LABEL: test_unordkf2:
162 %1 = fcmp uno fp128 %a, %b