blob: 2c77a607a20105f883f3531871d2bac38d443c65 [file] [log] [blame]
Zlatko Buljanfba68932016-03-14 12:50:23 +00001; RUN: llc -march=mips64 -mcpu=mips64 -target-abi=n32 < %s | FileCheck %s \
2; RUN: -check-prefix=ALL -check-prefix=N32 -check-prefix=HARD-FLOAT
3; RUN: llc -march=mips64el -mcpu=mips64 -target-abi=n32 < %s | FileCheck %s \
4; RUN: -check-prefix=ALL -check-prefix=N32 -check-prefix=HARD-FLOAT
5
6; RUN: llc -march=mips64 -mcpu=mips64 -target-abi=n64 < %s | FileCheck %s \
7; RUN: -check-prefix=ALL -check-prefix=N64 -check-prefix=HARD-FLOAT
8; RUN: llc -march=mips64el -mcpu=mips64 -target-abi=n64 < %s | FileCheck %s \
9; RUN: -check-prefix=ALL -check-prefix=N64 -check-prefix=HARD-FLOAT
10
11; RUN: llc -march=mips64 -mcpu=mips64 -mattr=+soft-float -target-abi=n32 < %s \
12; RUN: | FileCheck %s -check-prefix=ALL -check-prefix=N32 \
13; RUN: -check-prefix=SOFT-FLOAT
14; RUN: llc -march=mips64el -mcpu=mips64 -mattr=+soft-float -target-abi=n32 < \
15; RUN: %s | FileCheck %s -check-prefix=ALL -check-prefix=N32 \
16; RUN: -check-prefix=SOFT-FLOAT
17
18; RUN: llc -march=mips64 -mcpu=mips64 -mattr=+soft-float -target-abi=n64 < %s \
19; RUN: | FileCheck %s -check-prefix=ALL -check-prefix=N64 \
20; RUN: -check-prefix=SOFT-FLOAT
21; RUN: llc -march=mips64el -mcpu=mips64 -mattr=+soft-float -target-abi=n64 < \
22; RUN: %s | FileCheck %s -check-prefix=ALL -check-prefix=N64 \
23; RUN: -check-prefix=SOFT-FLOAT
24
25@fp128 = global fp128 zeroinitializer
26
27define void @roundl_call(fp128 %value) {
28entry:
29; ALL-LABEL: roundl_call:
30; N32: lw $25, %call16(roundl)($gp)
31; N64: ld $25, %call16(roundl)($gp)
32
33; SOFT-FLOAT: sd $4, 8(${{[0-9]+}})
34; SOFT-FLOAT: sd $2, 0(${{[0-9]+}})
35
36; HARD-FLOAT: sdc1 $f2, 8(${{[0-9]+}})
37; HARD-FLOAT: sdc1 $f0, 0(${{[0-9]+}})
38
39 %call = call fp128 @roundl(fp128 %value)
40 store fp128 %call, fp128* @fp128
41 ret void
42}
43
44declare fp128 @roundl(fp128) nounwind readnone