#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 |