mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
1368b914e9
Now that all port tests live under testsuite/sim/*/, and none live in testsuite/ directly, flatten the structure by moving all of the dirs under testsuite/sim/ to testsuite/ directly. We need to stop passing --tool to dejagnu so that it searches all dirs and not just ones that start with "sim". Since we have no other dirs in this tree, and no plans to add any, should be fine.
147 lines
2.2 KiB
ArmAsm
147 lines
2.2 KiB
ArmAsm
# mach: aarch64
|
|
|
|
# Check the FP compare instructions: fcmps, fcmpzs, fcmpes, fcmpzes, fcmpd,
|
|
# fcmpzd, fcmped, fcmpzed.
|
|
# For 1 operand compares, check 0, 1, -1, +Inf, -Inf.
|
|
# For 2 operand compares, check 1/1, 1/-2, -1/2, +Inf/+Inf, +Inf/-Inf.
|
|
# FIXME: Check for qNaN and sNaN when exception raising support added.
|
|
|
|
.include "testutils.inc"
|
|
|
|
start
|
|
fmov s0, wzr
|
|
fcmp s0, #0.0
|
|
bne .Lfailure
|
|
fcmpe s0, #0.0
|
|
bne .Lfailure
|
|
fmov d0, xzr
|
|
fcmp d0, #0.0
|
|
bne .Lfailure
|
|
fcmpe d0, #0.0
|
|
bne .Lfailure
|
|
|
|
fmov s0, #1.0
|
|
fcmp s0, #0.0
|
|
blo .Lfailure
|
|
fcmpe s0, #0.0
|
|
blo .Lfailure
|
|
fmov d0, #1.0
|
|
fcmp d0, #0.0
|
|
blo .Lfailure
|
|
fcmpe d0, #0.0
|
|
blo .Lfailure
|
|
|
|
fmov s0, #-1.0
|
|
fcmp s0, #0.0
|
|
bpl .Lfailure
|
|
fcmpe s0, #0.0
|
|
bpl .Lfailure
|
|
fmov d0, #-1.0
|
|
fcmp d0, #0.0
|
|
bpl .Lfailure
|
|
fcmpe d0, #0.0
|
|
bpl .Lfailure
|
|
|
|
fmov s0, #1.0
|
|
fmov s1, wzr
|
|
fdiv s0, s0, s1
|
|
fcmp s0, #0.0
|
|
blo .Lfailure
|
|
fcmpe s0, #0.0
|
|
blo .Lfailure
|
|
fmov d0, #1.0
|
|
fmov d1, xzr
|
|
fdiv d0, d0, d1
|
|
fcmp d0, #0.0
|
|
blo .Lfailure
|
|
fcmpe d0, #0.0
|
|
blo .Lfailure
|
|
|
|
fmov s0, #-1.0
|
|
fmov s1, wzr
|
|
fdiv s0, s0, s1
|
|
fcmp s0, #0.0
|
|
bpl .Lfailure
|
|
fcmpe s0, #0.0
|
|
bpl .Lfailure
|
|
fmov d0, #-1.0
|
|
fmov d1, xzr
|
|
fdiv d0, d0, d1
|
|
fcmp d0, #0.0
|
|
bpl .Lfailure
|
|
fcmpe d0, #0.0
|
|
bpl .Lfailure
|
|
|
|
fmov s0, #1.0
|
|
fmov s1, #1.0
|
|
fcmp s0, s1
|
|
bne .Lfailure
|
|
fcmpe s0, s1
|
|
bne .Lfailure
|
|
fmov d0, #1.0
|
|
fmov d1, #1.0
|
|
fcmp d0, d1
|
|
bne .Lfailure
|
|
fcmpe d0, d1
|
|
bne .Lfailure
|
|
|
|
fmov s0, #1.0
|
|
fmov s1, #-2.0
|
|
fcmp s0, s1
|
|
blo .Lfailure
|
|
fcmpe s0, s1
|
|
blo .Lfailure
|
|
fmov d0, #1.0
|
|
fmov d1, #-2.0
|
|
fcmp d0, d1
|
|
blo .Lfailure
|
|
fcmpe d0, d1
|
|
blo .Lfailure
|
|
|
|
fmov s0, #-1.0
|
|
fmov s1, #2.0
|
|
fcmp s0, s1
|
|
bpl .Lfailure
|
|
fcmpe s0, s1
|
|
bpl .Lfailure
|
|
fmov d0, #-1.0
|
|
fmov d1, #2.0
|
|
fcmp d0, d1
|
|
bpl .Lfailure
|
|
fcmpe d0, d1
|
|
bpl .Lfailure
|
|
|
|
fmov s0, #1.0
|
|
fmov s1, wzr
|
|
fdiv s0, s0, s1
|
|
fcmp s0, s0
|
|
bne .Lfailure
|
|
fcmpe s0, s0
|
|
bne .Lfailure
|
|
fmov s1, #-1.0
|
|
fmov s2, wzr
|
|
fdiv s1, s1, s2
|
|
fcmp s0, s1
|
|
blo .Lfailure
|
|
fcmpe s0, s1
|
|
blo .Lfailure
|
|
|
|
fmov d0, #1.0
|
|
fmov d1, xzr
|
|
fdiv d0, d0, d1
|
|
fcmp d0, d0
|
|
bne .Lfailure
|
|
fcmpe d0, d0
|
|
bne .Lfailure
|
|
fmov d1, #-1.0
|
|
fmov d2, xzr
|
|
fdiv d1, d1, d2
|
|
fcmp d0, d1
|
|
blo .Lfailure
|
|
fcmpe d0, d1
|
|
blo .Lfailure
|
|
|
|
pass
|
|
.Lfailure:
|
|
fail
|