blob: 483d2176e421f6d74312ca092058ae99b91068b7 [file] [log] [blame]
#include "macros.inc"
test_suite sext
#if XCHAL_HAVE_SEXT
test sext
movi a2, 0xffffff5a
movi a3, 0x0000005a
sext a4, a2, 7
assert eq, a3, a4
movi a2, 0x000000a5
movi a3, 0xffffffa5
sext a4, a2, 7
assert eq, a3, a4
movi a2, 0xfffffaa5
movi a3, 0x000000a5
sext a4, a2, 8
assert eq, a3, a4
movi a2, 0x0000055a
movi a3, 0xffffff5a
sext a4, a2, 8
assert eq, a3, a4
movi a2, 0xffff5a5a
movi a3, 0x00005a5a
sext a4, a2, 15
assert eq, a3, a4
movi a2, 0x0000a5a5
movi a3, 0xffffa5a5
sext a4, a2, 15
assert eq, a3, a4
movi a2, 0x00055a5a
movi a3, 0xffff5a5a
sext a4, a2, 16
assert eq, a3, a4
movi a2, 0x000aa5a5
movi a3, 0x0000a5a5
sext a4, a2, 16
assert eq, a3, a4
movi a2, 0x005a5a5a
movi a3, 0xffda5a5a
sext a4, a2, 22
assert eq, a3, a4
movi a2, 0xffa5a5a5
movi a3, 0x0025a5a5
sext a4, a2, 22
assert eq, a3, a4
test_end
test sext_same_rs
movi a2, 0xffffff5a
movi a3, 0x0000005a
sext a2, a2, 7
assert eq, a3, a2
movi a2, 0x000000a5
movi a3, 0xffffffa5
sext a2, a2, 7
assert eq, a3, a2
test_end
#endif
test_suite_end