MIPS/resources/2021/soft/func/inst/n35_srl.S
2021-06-18 15:43:51 +08:00

324 lines
15 KiB
ArmAsm

#include <asm.h>
#include <regdef.h>
#include <inst_test.h>
LEAF(n35_srl_test)
.set noreorder
addiu s0, s0 ,1
li s2, 0x00
###test inst
TEST_SRL(0x8e8ffce0, 0x00000002, 0x23a3ff38)
TEST_SRL(0x49291230, 0x0000000f, 0x00009252)
TEST_SRL(0x25da68a0, 0x00000004, 0x025da68a)
TEST_SRL(0xecacf656, 0x0000000e, 0x0003b2b3)
TEST_SRL(0xe7bfc848, 0x0000001f, 0x00000001)
TEST_SRL(0x00115809, 0x0000001f, 0x00000000)
TEST_SRL(0x7a886604, 0x00000019, 0x0000003d)
TEST_SRL(0x7fe7a7de, 0x0000000f, 0x0000ffcf)
TEST_SRL(0x76c29838, 0x00000005, 0x03b614c1)
TEST_SRL(0xa93f5944, 0x00000011, 0x0000549f)
TEST_SRL(0x5ec1c900, 0x0000001f, 0x00000000)
TEST_SRL(0x6098e740, 0x00000006, 0x0182639d)
TEST_SRL(0x91816b68, 0x00000019, 0x00000048)
TEST_SRL(0x9bca3384, 0x00000013, 0x00001379)
TEST_SRL(0xc3895628, 0x0000000e, 0x00030e25)
TEST_SRL(0x8fe99e00, 0x00000003, 0x11fd33c0)
TEST_SRL(0xcae38c68, 0x0000000f, 0x000195c7)
TEST_SRL(0xe2c828e8, 0x0000000b, 0x001c5905)
TEST_SRL(0x4b95ed24, 0x00000004, 0x04b95ed2)
TEST_SRL(0x3047310f, 0x0000000d, 0x00018239)
TEST_SRL(0x6ef26b90, 0x00000000, 0x6ef26b90)
TEST_SRL(0x15f0f288, 0x0000000a, 0x00057c3c)
TEST_SRL(0x2c6d99c8, 0x0000000b, 0x00058db3)
TEST_SRL(0x438ee8fa, 0x00000017, 0x00000087)
TEST_SRL(0xeff68344, 0x00000001, 0x77fb41a2)
TEST_SRL(0x0d1542d0, 0x00000001, 0x068aa168)
TEST_SRL(0xe8095d20, 0x0000000d, 0x0007404a)
TEST_SRL(0xafdd2416, 0x00000003, 0x15fba482)
TEST_SRL(0x3d6bdbfc, 0x00000017, 0x0000007a)
TEST_SRL(0x31be3200, 0x00000012, 0x00000c6f)
TEST_SRL(0x96872aa0, 0x00000017, 0x0000012d)
TEST_SRL(0xdccd5e68, 0x00000013, 0x00001b99)
TEST_SRL(0x8c8c32ca, 0x00000013, 0x00001191)
TEST_SRL(0x3ab9a2d6, 0x00000013, 0x00000757)
TEST_SRL(0x6277fc92, 0x00000008, 0x006277fc)
TEST_SRL(0x29b43f27, 0x0000001a, 0x0000000a)
TEST_SRL(0xa1c2d700, 0x0000001f, 0x00000001)
TEST_SRL(0x284fab97, 0x00000011, 0x00001427)
TEST_SRL(0x13dc3d58, 0x00000015, 0x0000009e)
TEST_SRL(0xfeec8f70, 0x00000007, 0x01fdd91e)
TEST_SRL(0xbe676615, 0x0000001b, 0x00000017)
TEST_SRL(0xeb19335a, 0x00000014, 0x00000eb1)
TEST_SRL(0xcc5bcb06, 0x00000008, 0x00cc5bcb)
TEST_SRL(0xd390a600, 0x00000019, 0x00000069)
TEST_SRL(0x155f8f7c, 0x00000015, 0x000000aa)
TEST_SRL(0x3be81cbb, 0x00000011, 0x00001df4)
TEST_SRL(0x3f327950, 0x0000000d, 0x0001f993)
TEST_SRL(0x523d93ea, 0x0000001d, 0x00000002)
TEST_SRL(0x029fd640, 0x0000000a, 0x0000a7f5)
TEST_SRL(0x966fa4dc, 0x00000009, 0x004b37d2)
TEST_SRL(0x6d7c8c68, 0x0000001c, 0x00000006)
TEST_SRL(0x49388980, 0x00000007, 0x00927113)
TEST_SRL(0xd95e0458, 0x00000004, 0x0d95e045)
TEST_SRL(0xfe5259f1, 0x00000017, 0x000001fc)
TEST_SRL(0xadff20c0, 0x00000000, 0xadff20c0)
TEST_SRL(0xad4a8872, 0x00000002, 0x2b52a21c)
TEST_SRL(0xac747dce, 0x00000001, 0x563a3ee7)
TEST_SRL(0x45cf2481, 0x0000000f, 0x00008b9e)
TEST_SRL(0xd220e6d8, 0x0000000c, 0x000d220e)
TEST_SRL(0xfc073b24, 0x00000001, 0x7e039d92)
TEST_SRL(0x9e493883, 0x00000000, 0x9e493883)
TEST_SRL(0x8d028cd0, 0x0000000a, 0x002340a3)
TEST_SRL(0x66ff6a59, 0x00000017, 0x000000cd)
TEST_SRL(0xffc9bfa4, 0x0000001c, 0x0000000f)
TEST_SRL(0xb7cc2258, 0x0000000c, 0x000b7cc2)
TEST_SRL(0x6b318f8c, 0x00000018, 0x0000006b)
TEST_SRL(0xca806bd4, 0x00000000, 0xca806bd4)
TEST_SRL(0xdf80ebb0, 0x0000001f, 0x00000001)
TEST_SRL(0x15de26d8, 0x00000012, 0x00000577)
TEST_SRL(0xb1204d16, 0x0000001b, 0x00000016)
TEST_SRL(0x29aa3074, 0x0000000f, 0x00005354)
TEST_SRL(0x8cfd9d90, 0x00000003, 0x119fb3b2)
TEST_SRL(0x92fe81b8, 0x00000015, 0x00000497)
TEST_SRL(0x351f10b4, 0x0000001c, 0x00000003)
TEST_SRL(0xc0d371af, 0x00000006, 0x03034dc6)
TEST_SRL(0x1f72d53c, 0x00000009, 0x000fb96a)
TEST_SRL(0x5afe9f52, 0x00000004, 0x05afe9f5)
TEST_SRL(0xc5007654, 0x0000001c, 0x0000000c)
TEST_SRL(0xdf34c906, 0x00000005, 0x06f9a648)
TEST_SRL(0x1ba693e2, 0x00000002, 0x06e9a4f8)
TEST_SRL(0xbb4723a4, 0x0000000a, 0x002ed1c8)
TEST_SRL(0x1912074c, 0x0000001a, 0x00000006)
TEST_SRL(0xa441c500, 0x00000013, 0x00001488)
TEST_SRL(0x94171c81, 0x0000001e, 0x00000002)
TEST_SRL(0x9183d7ce, 0x00000018, 0x00000091)
TEST_SRL(0x129c8a70, 0x00000016, 0x0000004a)
TEST_SRL(0xbf4118f0, 0x00000016, 0x000002fd)
TEST_SRL(0x84860eec, 0x0000000d, 0x00042430)
TEST_SRL(0x95173198, 0x0000000b, 0x0012a2e6)
TEST_SRL(0xe1d73a20, 0x0000000b, 0x001c3ae7)
TEST_SRL(0x247358ec, 0x0000000b, 0x00048e6b)
TEST_SRL(0x73c52105, 0x00000014, 0x0000073c)
TEST_SRL(0xd905fa84, 0x0000000f, 0x0001b20b)
TEST_SRL(0xe78314d8, 0x00000011, 0x000073c1)
TEST_SRL(0x55851990, 0x0000001c, 0x00000005)
TEST_SRL(0x3bac0f11, 0x00000007, 0x0077581e)
TEST_SRL(0x568deaa8, 0x00000017, 0x000000ad)
TEST_SRL(0x7f3cf4a0, 0x0000000c, 0x0007f3cf)
TEST_SRL(0xdb0421e6, 0x00000009, 0x006d8210)
TEST_SRL(0x3bdb98c0, 0x00000008, 0x003bdb98)
TEST_SRL(0x5475f578, 0x00000010, 0x00005475)
TEST_SRL(0x6908094a, 0x00000003, 0x0d210129)
TEST_SRL(0xded0771c, 0x0000001f, 0x00000001)
TEST_SRL(0x10be9685, 0x00000003, 0x0217d2d0)
TEST_SRL(0xba0e47fa, 0x0000000f, 0x0001741c)
TEST_SRL(0x5a8bfd48, 0x0000000f, 0x0000b517)
TEST_SRL(0xa2b8964e, 0x0000001e, 0x00000002)
TEST_SRL(0xc1c816c0, 0x0000001e, 0x00000003)
TEST_SRL(0xd035e940, 0x00000006, 0x0340d7a5)
TEST_SRL(0x42df91ac, 0x0000000c, 0x00042df9)
TEST_SRL(0xfeddd2dc, 0x0000001d, 0x00000007)
TEST_SRL(0x47712ac2, 0x00000016, 0x0000011d)
TEST_SRL(0x736cddf8, 0x00000001, 0x39b66efc)
TEST_SRL(0x9f86657e, 0x00000014, 0x000009f8)
TEST_SRL(0x8b3e6480, 0x0000001b, 0x00000011)
TEST_SRL(0x0d5a849c, 0x00000015, 0x0000006a)
TEST_SRL(0x49b80128, 0x00000009, 0x0024dc00)
TEST_SRL(0xbbbbf940, 0x00000004, 0x0bbbbf94)
TEST_SRL(0x2ef10c70, 0x0000001f, 0x00000000)
TEST_SRL(0x26008fee, 0x00000000, 0x26008fee)
TEST_SRL(0x68faf2e6, 0x00000012, 0x00001a3e)
TEST_SRL(0xb08f704f, 0x00000003, 0x1611ee09)
TEST_SRL(0x679f7248, 0x0000000e, 0x00019e7d)
TEST_SRL(0x345cd56a, 0x0000000d, 0x0001a2e6)
TEST_SRL(0x2394e93c, 0x0000000b, 0x0004729d)
TEST_SRL(0xdd1e22b0, 0x00000003, 0x1ba3c456)
TEST_SRL(0x93dd33eb, 0x00000002, 0x24f74cfa)
TEST_SRL(0x5a72cb08, 0x00000018, 0x0000005a)
TEST_SRL(0xda4e4434, 0x0000001c, 0x0000000d)
TEST_SRL(0x0cd952a0, 0x00000002, 0x033654a8)
TEST_SRL(0x7da4fba4, 0x00000008, 0x007da4fb)
TEST_SRL(0x17d14b64, 0x00000013, 0x000002fa)
TEST_SRL(0x3deae382, 0x00000003, 0x07bd5c70)
TEST_SRL(0x5db91e00, 0x00000006, 0x0176e478)
TEST_SRL(0xa13b5140, 0x00000018, 0x000000a1)
TEST_SRL(0x4b125b37, 0x00000005, 0x025892d9)
TEST_SRL(0x2821de00, 0x00000010, 0x00002821)
TEST_SRL(0xa1e10762, 0x00000013, 0x0000143c)
TEST_SRL(0xbd6ea4d8, 0x0000001b, 0x00000017)
TEST_SRL(0x1751c2f2, 0x00000013, 0x000002ea)
TEST_SRL(0x5746f770, 0x00000011, 0x00002ba3)
TEST_SRL(0x18f47ec0, 0x0000000a, 0x00063d1f)
TEST_SRL(0x18377db1, 0x00000013, 0x00000306)
TEST_SRL(0x9612ed20, 0x00000017, 0x0000012c)
TEST_SRL(0x3ff833c1, 0x00000002, 0x0ffe0cf0)
TEST_SRL(0x90de3f60, 0x00000003, 0x121bc7ec)
TEST_SRL(0x0fcdca28, 0x00000003, 0x01f9b945)
TEST_SRL(0xd42d71c0, 0x00000017, 0x000001a8)
TEST_SRL(0x5de13940, 0x0000000a, 0x0017784e)
TEST_SRL(0xf6a0da2a, 0x00000016, 0x000003da)
TEST_SRL(0x9960cb98, 0x00000012, 0x00002658)
TEST_SRL(0x48c70640, 0x00000013, 0x00000918)
TEST_SRL(0x6ade3a10, 0x00000018, 0x0000006a)
TEST_SRL(0xa818867c, 0x0000001f, 0x00000001)
TEST_SRL(0x21742cc4, 0x00000011, 0x000010ba)
TEST_SRL(0xa991afba, 0x0000001e, 0x00000002)
TEST_SRL(0x1044822e, 0x0000001f, 0x00000000)
TEST_SRL(0x594eb0c9, 0x0000000c, 0x000594eb)
TEST_SRL(0xcab845e0, 0x0000001a, 0x00000032)
TEST_SRL(0xb885f1b0, 0x00000019, 0x0000005c)
TEST_SRL(0xbb4da25e, 0x0000001c, 0x0000000b)
TEST_SRL(0x9913d5a8, 0x00000001, 0x4c89ead4)
TEST_SRL(0xdeb2a9ac, 0x0000000b, 0x001bd655)
TEST_SRL(0x0ceceeef, 0x00000007, 0x0019d9dd)
TEST_SRL(0xc689d515, 0x00000014, 0x00000c68)
TEST_SRL(0x5322069a, 0x00000000, 0x5322069a)
TEST_SRL(0xc01153e0, 0x00000008, 0x00c01153)
TEST_SRL(0x8ad531ce, 0x0000001e, 0x00000002)
TEST_SRL(0x7cbe7e40, 0x0000001c, 0x00000007)
TEST_SRL(0x248cac4c, 0x0000001b, 0x00000004)
TEST_SRL(0x193c9e68, 0x00000009, 0x000c9e4f)
TEST_SRL(0x96fcb75e, 0x00000016, 0x0000025b)
TEST_SRL(0x7c66d8a8, 0x00000017, 0x000000f8)
TEST_SRL(0x97c68582, 0x00000013, 0x000012f8)
TEST_SRL(0x67e9d088, 0x00000016, 0x0000019f)
TEST_SRL(0xac7ca5f0, 0x00000017, 0x00000158)
TEST_SRL(0x36ea27a0, 0x00000018, 0x00000036)
TEST_SRL(0x8edc8558, 0x0000001c, 0x00000008)
TEST_SRL(0xc81762b0, 0x00000012, 0x00003205)
TEST_SRL(0x07643feb, 0x00000002, 0x01d90ffa)
TEST_SRL(0x03cb5a9a, 0x00000019, 0x00000001)
TEST_SRL(0x5f6e9b04, 0x0000000e, 0x00017dba)
TEST_SRL(0xf9381ef8, 0x0000000d, 0x0007c9c0)
TEST_SRL(0x9f2ae4bd, 0x0000000a, 0x0027cab9)
TEST_SRL(0xfccd6510, 0x00000003, 0x1f99aca2)
TEST_SRL(0xf4d022a3, 0x0000001d, 0x00000007)
TEST_SRL(0xd01e1628, 0x00000000, 0xd01e1628)
TEST_SRL(0x50d2eb64, 0x00000017, 0x000000a1)
TEST_SRL(0xf7fe1380, 0x0000000a, 0x003dff84)
TEST_SRL(0x3f208b00, 0x0000001d, 0x00000001)
TEST_SRL(0xb050fbc4, 0x00000005, 0x058287de)
TEST_SRL(0xd7cf9260, 0x00000018, 0x000000d7)
TEST_SRL(0xc9f5e6f8, 0x0000000d, 0x00064faf)
TEST_SRL(0x13c13f3c, 0x00000014, 0x0000013c)
TEST_SRL(0x5609a2fa, 0x00000005, 0x02b04d17)
TEST_SRL(0x82b7b880, 0x00000002, 0x20adee20)
TEST_SRL(0x10e01b20, 0x00000019, 0x00000008)
TEST_SRL(0x54c74415, 0x00000012, 0x00001531)
TEST_SRL(0x4bcc116e, 0x0000000f, 0x00009798)
TEST_SRL(0x644c3ef8, 0x00000016, 0x00000191)
TEST_SRL(0x48d18780, 0x00000000, 0x48d18780)
TEST_SRL(0xb4bf57b8, 0x00000000, 0xb4bf57b8)
TEST_SRL(0x71000c2b, 0x00000000, 0x71000c2b)
TEST_SRL(0xccaebba5, 0x00000000, 0xccaebba5)
TEST_SRL(0x35d5c040, 0x00000000, 0x35d5c040)
TEST_SRL(0xbbafbe33, 0x00000000, 0xbbafbe33)
TEST_SRL(0x3098b297, 0x00000000, 0x3098b297)
TEST_SRL(0x840418eb, 0x00000000, 0x840418eb)
TEST_SRL(0x9889fdd0, 0x00000000, 0x9889fdd0)
TEST_SRL(0xeb662556, 0x00000000, 0xeb662556)
TEST_SRL(0xd92dd10e, 0x00000000, 0xd92dd10e)
TEST_SRL(0xeb6240b4, 0x00000000, 0xeb6240b4)
TEST_SRL(0x79368c54, 0x00000000, 0x79368c54)
TEST_SRL(0xfdaa8940, 0x00000000, 0xfdaa8940)
TEST_SRL(0xf3e99110, 0x00000000, 0xf3e99110)
TEST_SRL(0x05260ce8, 0x00000000, 0x05260ce8)
TEST_SRL(0x9d3f7cee, 0x00000000, 0x9d3f7cee)
TEST_SRL(0xae5fb658, 0x00000000, 0xae5fb658)
TEST_SRL(0x316638e8, 0x00000000, 0x316638e8)
TEST_SRL(0x5251b1e0, 0x00000000, 0x5251b1e0)
TEST_SRL(0xa1ca69a0, 0x00000000, 0xa1ca69a0)
TEST_SRL(0x02086f98, 0x00000000, 0x02086f98)
TEST_SRL(0x266ef6d8, 0x00000000, 0x266ef6d8)
TEST_SRL(0xf57bd214, 0x00000000, 0xf57bd214)
TEST_SRL(0xddce5bbc, 0x00000000, 0xddce5bbc)
TEST_SRL(0x6f276284, 0x00000000, 0x6f276284)
TEST_SRL(0x59c04a2c, 0x00000000, 0x59c04a2c)
TEST_SRL(0xaa2f0e2a, 0x00000000, 0xaa2f0e2a)
TEST_SRL(0xee783ae8, 0x00000000, 0xee783ae8)
TEST_SRL(0x3e2275b4, 0x00000000, 0x3e2275b4)
TEST_SRL(0x553adec3, 0x00000000, 0x553adec3)
TEST_SRL(0x8189671d, 0x00000000, 0x8189671d)
TEST_SRL(0xcab12b0e, 0x00000000, 0xcab12b0e)
TEST_SRL(0xd5916d44, 0x00000000, 0xd5916d44)
TEST_SRL(0x29d542b4, 0x00000000, 0x29d542b4)
TEST_SRL(0x62738600, 0x00000000, 0x62738600)
TEST_SRL(0xce753aa8, 0x00000000, 0xce753aa8)
TEST_SRL(0xb145be00, 0x00000000, 0xb145be00)
TEST_SRL(0xb56d9f5e, 0x00000000, 0xb56d9f5e)
TEST_SRL(0x880f0d04, 0x00000000, 0x880f0d04)
TEST_SRL(0x8a4d6fa0, 0x00000000, 0x8a4d6fa0)
TEST_SRL(0x217aa622, 0x00000000, 0x217aa622)
TEST_SRL(0xa80fa30b, 0x00000000, 0xa80fa30b)
TEST_SRL(0x3eb636b0, 0x00000000, 0x3eb636b0)
TEST_SRL(0xed86d00a, 0x00000000, 0xed86d00a)
TEST_SRL(0xdf7334a0, 0x00000000, 0xdf7334a0)
TEST_SRL(0x03e1477c, 0x00000000, 0x03e1477c)
TEST_SRL(0xfd67f422, 0x00000000, 0xfd67f422)
TEST_SRL(0x38b1ac50, 0x00000000, 0x38b1ac50)
TEST_SRL(0x1acb5040, 0x00000000, 0x1acb5040)
TEST_SRL(0x00000000, 0x00000009, 0x00000000)
TEST_SRL(0x00000000, 0x0000000c, 0x00000000)
TEST_SRL(0x00000000, 0x00000003, 0x00000000)
TEST_SRL(0x00000000, 0x0000000c, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x0000000f, 0x00000000)
TEST_SRL(0x00000000, 0x00000016, 0x00000000)
TEST_SRL(0x00000000, 0x00000006, 0x00000000)
TEST_SRL(0x00000000, 0x00000013, 0x00000000)
TEST_SRL(0x00000000, 0x00000017, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x0000000d, 0x00000000)
TEST_SRL(0x00000000, 0x00000017, 0x00000000)
TEST_SRL(0x00000000, 0x0000000f, 0x00000000)
TEST_SRL(0x00000000, 0x00000011, 0x00000000)
TEST_SRL(0x00000000, 0x0000000d, 0x00000000)
TEST_SRL(0x00000000, 0x00000019, 0x00000000)
TEST_SRL(0x00000000, 0x0000000b, 0x00000000)
TEST_SRL(0x00000000, 0x00000008, 0x00000000)
TEST_SRL(0x00000000, 0x0000000c, 0x00000000)
TEST_SRL(0x00000000, 0x00000013, 0x00000000)
TEST_SRL(0x00000000, 0x00000002, 0x00000000)
TEST_SRL(0x00000000, 0x00000014, 0x00000000)
TEST_SRL(0x00000000, 0x00000007, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x0000000a, 0x00000000)
TEST_SRL(0x00000000, 0x0000000f, 0x00000000)
TEST_SRL(0x00000000, 0x00000018, 0x00000000)
TEST_SRL(0x00000000, 0x00000009, 0x00000000)
TEST_SRL(0x00000000, 0x0000000a, 0x00000000)
TEST_SRL(0x00000000, 0x00000017, 0x00000000)
TEST_SRL(0x00000000, 0x0000001c, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x00000000, 0x00000000)
TEST_SRL(0x00000000, 0x0000001f, 0x00000000)
TEST_SRL(0x00000000, 0x00000013, 0x00000000)
TEST_SRL(0x00000000, 0x00000013, 0x00000000)
TEST_SRL(0x00000000, 0x00000016, 0x00000000)
TEST_SRL(0x00000000, 0x00000004, 0x00000000)
TEST_SRL(0x00000000, 0x00000018, 0x00000000)
TEST_SRL(0x00000000, 0x00000002, 0x00000000)
TEST_SRL(0x00000000, 0x0000001d, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x00000010, 0x00000000)
TEST_SRL(0x00000000, 0x00000018, 0x00000000)
TEST_SRL(0x00000000, 0x00000009, 0x00000000)
TEST_SRL(0x00000000, 0x0000001a, 0x00000000)
TEST_SRL(0x00000000, 0x0000001c, 0x00000000)
TEST_SRL(0x00000000, 0x00000018, 0x00000000)
TEST_SRL(0x00000000, 0x00000004, 0x00000000)
TEST_SRL(0x00000000, 0x00000000, 0x00000000)
###detect exception
bne s2, zero, inst_error
nop
###score ++
addiu s3, s3, 1
###output (s0<<24)|s3
inst_error:
sll t1, s0, 24
or t0, t1, s3
sw t0, 0(s1)
jr ra
nop
END(n35_srl_test)