forked from OSchip/llvm-project
43 lines
1.8 KiB
LLVM
43 lines
1.8 KiB
LLVM
; RUN: llc -march=mips64 -mcpu=mips64 -target-abi=n32 -relocation-model=pic < \
|
|
; RUN: %s | FileCheck %s -check-prefixes=ALL,N32,HARD-FLOAT
|
|
; RUN: llc -march=mips64el -mcpu=mips64 -target-abi=n32 -relocation-model=pic < \
|
|
; RUN: %s | FileCheck %s -check-prefixes=ALL,N32,HARD-FLOAT
|
|
|
|
; RUN: llc -march=mips64 -mcpu=mips64 -target-abi=n64 -relocation-model=pic < \
|
|
; RUN: %s | FileCheck %s -check-prefixes=ALL,N64,HARD-FLOAT
|
|
; RUN: llc -march=mips64el -mcpu=mips64 -target-abi=n64 -relocation-model=pic \
|
|
; RUN: < %s | FileCheck %s -check-prefixes=ALL,N64,HARD-FLOAT
|
|
|
|
; RUN: llc -march=mips64 -mcpu=mips64 -mattr=+soft-float -target-abi=n32 \
|
|
; RUN: -relocation-model=pic < %s | FileCheck %s -check-prefixes=ALL,N32,SOFT-FLOAT
|
|
; RUN: llc -march=mips64el -mcpu=mips64 -mattr=+soft-float -target-abi=n32 \
|
|
; RUN: -relocation-model=pic < %s | FileCheck %s -check-prefixes=ALL,N32,SOFT-FLOAT
|
|
|
|
; RUN: llc -march=mips64 -mcpu=mips64 -mattr=+soft-float -target-abi=n64 < %s \
|
|
; RUN: -relocation-model=pic | FileCheck %s \
|
|
; RUN: -check-prefixes=ALL,N64,SOFT-FLOAT
|
|
; RUN: llc -march=mips64el -mcpu=mips64 -mattr=+soft-float -target-abi=n64 < \
|
|
; RUN: %s -relocation-model=pic | FileCheck %s \
|
|
; RUN: -check-prefixes=ALL,N64,SOFT-FLOAT
|
|
|
|
@fp128 = global fp128 zeroinitializer
|
|
|
|
define void @roundl_call(fp128 %value) {
|
|
entry:
|
|
; ALL-LABEL: roundl_call:
|
|
; N32: lw $25, %call16(roundl)($gp)
|
|
; N64: ld $25, %call16(roundl)($gp)
|
|
|
|
; SOFT-FLOAT: sd $4, 8(${{[0-9]+}})
|
|
; SOFT-FLOAT: sd $2, 0(${{[0-9]+}})
|
|
|
|
; HARD-FLOAT: sdc1 $f2, 8(${{[0-9]+}})
|
|
; HARD-FLOAT: sdc1 $f0, 0(${{[0-9]+}})
|
|
|
|
%call = call fp128 @roundl(fp128 %value)
|
|
store fp128 %call, fp128* @fp128
|
|
ret void
|
|
}
|
|
|
|
declare fp128 @roundl(fp128) nounwind readnone
|