JIT - fctidz: Properly saturate

This commit is contained in:
Dr. Chat
2017-03-06 01:06:32 -06:00
parent d8ed251ad1
commit 098d23c3d4
2 changed files with 117 additions and 0 deletions

View File

@@ -95,3 +95,100 @@ test_fctiwz_10:
# blr
# #_ REGISTER_OUT f0 0xfff4000000000000
# #_ REGISTER_OUT f1 0x0000000080000000
# +0
test_fctidz_1:
#_ REGISTER_IN f0 0x0000000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x0000000000000000
#_ REGISTER_OUT f1 0x0000000000000000
# -0
test_fctidz_2:
#_ REGISTER_IN f0 0x8000000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x8000000000000000
#_ REGISTER_OUT f1 0x0000000000000000
# smallest positive subnormal
test_fctidz_3:
#_ REGISTER_IN f0 0x0000000000000001
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x0000000000000001
#_ REGISTER_OUT f1 0x0000000000000000
# largest subnormal
test_fctidz_4:
#_ REGISTER_IN f0 0x000fffffffffffff
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x000fffffffffffff
#_ REGISTER_OUT f1 0x0000000000000000
# +1
test_fctidz_5:
#_ REGISTER_IN f0 0x3ff0000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x3ff0000000000000
#_ REGISTER_OUT f1 0x0000000000000001
# -1
test_fctidz_6:
#_ REGISTER_IN f0 0xbff0000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0xbff0000000000000
#_ REGISTER_OUT f1 0xffffffffffffffff
# -(2^31)
test_fctidz_7:
#_ REGISTER_IN f0 0xc1e0000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0xc1e0000000000000
#_ REGISTER_OUT f1 0xffffffff80000000
# 2^31 - 1
test_fctidz_8:
#_ REGISTER_IN f0 0x41dfffffffc00000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x41dfffffffc00000
#_ REGISTER_OUT f1 0x000000007fffffff
# +infinity
test_fctidz_9:
#_ REGISTER_IN f0 0x7ff0000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0x7ff0000000000000
#_ REGISTER_OUT f1 0x7fffffffffffffff
# -infinity
test_fctidz_10:
#_ REGISTER_IN f0 0xfff0000000000000
fctidz f1, f0
blr
#_ REGISTER_OUT f0 0xfff0000000000000
#_ REGISTER_OUT f1 0x8000000000000000
# TODO(DrChat): Xenia doesn't handle NaNs yet.
# # QNaN
# test_fctidz_11:
# #_ REGISTER_IN f0 0xfff8000000000000
# fctidz f1, f0
# blr
# #_ REGISTER_OUT f0 0xfff8000000000000
# #_ REGISTER_OUT f1 0x8000000000000000
#
# # SNaN
# test_fctidz_12:
# #_ REGISTER_IN f0 0xfff4000000000000
# fctidz f1, f0
# blr
# #_ REGISTER_OUT f0 0xfff4000000000000
# #_ REGISTER_OUT f1 0x8000000000000000