81 lines
905 B
Plaintext
81 lines
905 B
Plaintext
# sh testcase for float -*- Asm -*-
|
|
# mach: all
|
|
# as: -isa=shcompact
|
|
# ld: -m shelf32
|
|
|
|
.include "compact/testutils.inc"
|
|
|
|
start
|
|
|
|
pos:
|
|
mov #3, r0
|
|
lds r0, fpul
|
|
float fpul, fr7
|
|
|
|
# Check the result.
|
|
fldi1 fr0
|
|
fldi1 fr1
|
|
fadd fr0, fr1
|
|
fadd fr0, fr1
|
|
fcmp/eq fr1, fr7
|
|
bf wrong
|
|
|
|
neg:
|
|
mov #3, r0
|
|
neg r0, r0
|
|
lds r0, fpul
|
|
float fpul, fr7
|
|
|
|
# Check the result.
|
|
fldi1 fr0
|
|
fldi1 fr1
|
|
fadd fr0, fr1
|
|
fadd fr0, fr1
|
|
fneg fr1
|
|
fcmp/eq fr1, fr7
|
|
bf wrong
|
|
|
|
bra double
|
|
nop
|
|
|
|
wrong:
|
|
fail
|
|
|
|
double:
|
|
mov #3, r0
|
|
lds r0, fpul
|
|
_setpr
|
|
float fpul, dr8
|
|
_clrpr
|
|
# check the result.
|
|
fldi1 fr0
|
|
fldi1 fr1
|
|
fadd fr0, fr1
|
|
fadd fr0, fr1
|
|
_s2d fr1, dr2
|
|
fcmp/eq dr2, dr8
|
|
bf wrong
|
|
|
|
dneg:
|
|
mov #3, r0
|
|
neg r0, r0
|
|
lds r0, fpul
|
|
_setpr
|
|
float fpul, dr8
|
|
_clrpr
|
|
# check the result.
|
|
fldi1 fr0
|
|
fldi1 fr1
|
|
fadd fr0, fr1
|
|
fadd fr0, fr1
|
|
fneg fr1
|
|
_s2d fr1, dr2
|
|
fcmp/eq dr2, dr8
|
|
bf wrong
|
|
|
|
okay:
|
|
pass
|
|
|
|
wrong2:
|
|
fail
|