xref: /llvm-project/llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/float_constants.ll (revision 89baeaef2fa9a2441d087a218ac82e11a5d4e548)
11af05df3SPetar Avramovic; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
21af05df3SPetar Avramovic; RUN: llc  -O0 -mtriple=mipsel-linux-gnu -global-isel -verify-machineinstrs %s -o -| FileCheck %s -check-prefixes=MIPS32,FP32
31af05df3SPetar Avramovic; RUN: llc  -O0 -mtriple=mipsel-linux-gnu -mattr=+fp64,+mips32r2 -global-isel -verify-machineinstrs %s -o -| FileCheck %s -check-prefixes=MIPS32,FP64
41af05df3SPetar Avramovic
51af05df3SPetar Avramovicdefine float @e_single_precision() {
61af05df3SPetar Avramovic; MIPS32-LABEL: e_single_precision:
71af05df3SPetar Avramovic; MIPS32:       # %bb.0: # %entry
81af05df3SPetar Avramovic; MIPS32-NEXT:    lui $1, 16429
91af05df3SPetar Avramovic; MIPS32-NEXT:    ori $1, $1, 63572
101af05df3SPetar Avramovic; MIPS32-NEXT:    mtc1 $1, $f0
111af05df3SPetar Avramovic; MIPS32-NEXT:    jr $ra
121af05df3SPetar Avramovic; MIPS32-NEXT:    nop
131af05df3SPetar Avramovicentry:
141af05df3SPetar Avramovic  ret float 0x4005BF0A80000000
151af05df3SPetar Avramovic}
161af05df3SPetar Avramovic
171af05df3SPetar Avramovicdefine double @e_double_precision() {
181af05df3SPetar Avramovic; FP32-LABEL: e_double_precision:
191af05df3SPetar Avramovic; FP32:       # %bb.0: # %entry
201af05df3SPetar Avramovic; FP32-NEXT:    lui $1, 16389
21*89baeaefSMatt Arsenault; FP32-NEXT:    ori $2, $1, 48906
22*89baeaefSMatt Arsenault; FP32-NEXT:    lui $1, 35604
23*89baeaefSMatt Arsenault; FP32-NEXT:    ori $1, $1, 22377
24*89baeaefSMatt Arsenault; FP32-NEXT:    mtc1 $1, $f0
25*89baeaefSMatt Arsenault; FP32-NEXT:    mtc1 $2, $f1
261af05df3SPetar Avramovic; FP32-NEXT:    jr $ra
271af05df3SPetar Avramovic; FP32-NEXT:    nop
281af05df3SPetar Avramovic;
291af05df3SPetar Avramovic; FP64-LABEL: e_double_precision:
301af05df3SPetar Avramovic; FP64:       # %bb.0: # %entry
311af05df3SPetar Avramovic; FP64-NEXT:    lui $1, 16389
32*89baeaefSMatt Arsenault; FP64-NEXT:    ori $2, $1, 48906
33*89baeaefSMatt Arsenault; FP64-NEXT:    lui $1, 35604
34*89baeaefSMatt Arsenault; FP64-NEXT:    ori $1, $1, 22377
35*89baeaefSMatt Arsenault; FP64-NEXT:    mtc1 $1, $f0
36*89baeaefSMatt Arsenault; FP64-NEXT:    mthc1 $2, $f0
371af05df3SPetar Avramovic; FP64-NEXT:    jr $ra
381af05df3SPetar Avramovic; FP64-NEXT:    nop
391af05df3SPetar Avramovicentry:
401af05df3SPetar Avramovic  ret double 0x4005BF0A8B145769
411af05df3SPetar Avramovic}
42