diff options
Diffstat (limited to 'sim/testsuite/bfin/c_dsp32alu_rh_rnd12_m.s')
-rw-r--r-- | sim/testsuite/bfin/c_dsp32alu_rh_rnd12_m.s | 258 |
1 files changed, 258 insertions, 0 deletions
diff --git a/sim/testsuite/bfin/c_dsp32alu_rh_rnd12_m.s b/sim/testsuite/bfin/c_dsp32alu_rh_rnd12_m.s new file mode 100644 index 00000000000..daf114a690f --- /dev/null +++ b/sim/testsuite/bfin/c_dsp32alu_rh_rnd12_m.s @@ -0,0 +1,258 @@ +//Original:/proj/frio/dv/testcases/core/c_dsp32alu_rh_rnd12_m/c_dsp32alu_rh_rnd12_m.dsp +// Spec Reference: dsp32alu dreg (half) +# mach: bfin + +.include "testutils.inc" + start + + imm32 r0, 0x45678ad1; + imm32 r1, 0x2789ab1d; + imm32 r2, 0xf4445545; + imm32 r3, 0x46667767; + imm32 r4, 0xe678891b; + imm32 r5, 0x6f89ab1d; + imm32 r6, 0x7444d565; + imm32 r7, 0x8666b797; + R0.H = R0 - R0 (RND12); + R1.H = R0 - R1 (RND12); + R2.H = R0 - R2 (RND12); + R3.H = R0 - R3 (RND12); + R4.H = R0 - R4 (RND12); + R5.H = R0 - R5 (RND12); + R6.H = R0 - R6 (RND12); + R7.H = R0 - R7 (RND12); + CHECKREG r0, 0x00008AD1; + CHECKREG r1, 0x8000AB1D; + CHECKREG r2, 0x7fff5545; + CHECKREG r3, 0x80007767; + CHECKREG r4, 0x7fff891B; + CHECKREG r5, 0x8000AB1D; + CHECKREG r6, 0x8000D565; + CHECKREG r7, 0x7fffB797; + + imm32 r0, 0xd5678911; + imm32 r1, 0x2789ab1d; + imm32 r2, 0xa4445515; + imm32 r3, 0x46667717; + imm32 r4, 0x5b78891b; + imm32 r5, 0x6789ab1d; + imm32 r6, 0x74e45515; + imm32 r7, 0x86a6b777; + R0.H = R1 - R0 (RND12); + R1.H = R1 - R1 (RND12); + R2.H = R1 - R2 (RND12); + R3.H = R1 - R3 (RND12); + R4.H = R1 - R4 (RND12); + R5.H = R1 - R5 (RND12); + R6.H = R1 - R6 (RND12); + R7.H = R1 - R7 (RND12); + CHECKREG r0, 0x7fff8911; + CHECKREG r1, 0x0000AB1D; + CHECKREG r2, 0x7fff5515; + CHECKREG r3, 0x80007717; + CHECKREG r4, 0x8000891B; + CHECKREG r5, 0x8000AB1D; + CHECKREG r6, 0x80005515; + CHECKREG r7, 0x7fffB777; + + imm32 r0, 0xa5678091; + imm32 r1, 0x2789ab1d; + imm32 r2, 0xb4445515; + imm32 r3, 0x46667717; + imm32 r4, 0xd678891b; + imm32 r5, 0x6e89ab4d; + imm32 r6, 0x74445567; + imm32 r7, 0x86967757; + R0.H = R2 - R0 (RND12); + R1.H = R2 - R1 (RND12); + R2.H = R2 - R2 (RND12); + R3.H = R2 - R3 (RND12); + R4.H = R2 - R4 (RND12); + R5.H = R2 - R5 (RND12); + R6.H = R2 - R6 (RND12); + R7.H = R2 - R7 (RND12); + CHECKREG r0, 0x7fff8091; + CHECKREG r1, 0x8000AB1D; + CHECKREG r2, 0x00005515; + CHECKREG r3, 0x80007717; + CHECKREG r4, 0x7fff891B; + CHECKREG r5, 0x8000AB4D; + CHECKREG r6, 0x80005567; + CHECKREG r7, 0x7fff7757; + + imm32 r0, 0x35678991; + imm32 r1, 0x2789ab8d; + imm32 r2, 0xd4445515; + imm32 r3, 0x46667737; + imm32 r4, 0x5678891b; + imm32 r5, 0xeab9ab4d; + imm32 r6, 0x744e5515; + imm32 r7, 0x866e747f; + R0.H = R3 - R0 (RND12); + R1.H = R3 - R1 (RND12); + R2.H = R3 - R2 (RND12); + R3.H = R3 - R3 (RND12); + R4.H = R3 - R4 (RND12); + R5.H = R3 - R5 (RND12); + R6.H = R3 - R6 (RND12); + R7.H = R3 - R7 (RND12); + CHECKREG r0, 0x7fff8991; + CHECKREG r1, 0x7fffAB8D; + CHECKREG r2, 0x7fff5515; + CHECKREG r3, 0x00007737; + CHECKREG r4, 0x8000891B; + CHECKREG r5, 0x7fffAB4D; + CHECKREG r6, 0x80005515; + CHECKREG r7, 0x7fff747F; + + imm32 r0, 0xe5678931; + imm32 r1, 0x2789ab1d; + imm32 r2, 0x34e45555; + imm32 r3, 0xd6667767; + imm32 r4, 0x5675891b; + imm32 r5, 0x6789abfd; + imm32 r6, 0xa4465515; + imm32 r7, 0x8b66e7b7; + R0.H = R4 - R0 (RND12); + R1.H = R4 - R1 (RND12); + R2.H = R4 - R2 (RND12); + R3.H = R4 - R3 (RND12); + R4.H = R4 - R4 (RND12); + R5.H = R4 - R5 (RND12); + R6.H = R4 - R6 (RND12); + R7.H = R4 - R7 (RND12); + CHECKREG r0, 0x7fff8931; + CHECKREG r1, 0x7fffAB1D; + CHECKREG r2, 0x7fff5555; + CHECKREG r3, 0x7fff7767; + CHECKREG r4, 0x0000891B; + CHECKREG r5, 0x8000ABFD; + CHECKREG r6, 0x7fff5515; + CHECKREG r7, 0x7fffE7B7; + + imm32 r0, 0x35678931; + imm32 r1, 0x2789ab4d; + imm32 r2, 0x3e445585; + imm32 r3, 0x46667717; + imm32 r4, 0xe6f8899b; + imm32 r5, 0x6789db1d; + imm32 r6, 0xf44a5515; + imm32 r7, 0x866b77b7; + R0.H = R5 - R0 (RND12); + R1.H = R5 - R1 (RND12); + R2.H = R5 - R2 (RND12); + R3.H = R5 - R3 (RND12); + R4.H = R5 - R4 (RND12); + R5.H = R5 - R5 (RND12); + R6.H = R5 - R6 (RND12); + R7.H = R5 - R7 (RND12); + CHECKREG r0, 0x7fff8931; + CHECKREG r1, 0x7fffAB4D; + CHECKREG r2, 0x7fff5585; + CHECKREG r3, 0x7fff7717; + CHECKREG r4, 0x7fff899B; + CHECKREG r5, 0x0000DB1D; + CHECKREG r6, 0x7fff5515; + CHECKREG r7, 0x7fff77B7; + + imm32 r0, 0xb5678911; + imm32 r1, 0xc789ab1d; + imm32 r2, 0x3ab45515; + imm32 r3, 0x466b7717; + imm32 r4, 0x4678e91b; + imm32 r5, 0x6789af1d; + imm32 r6, 0xf4445515; + imm32 r7, 0x86e6f777; + R0.H = R6 - R0 (RND12); + R1.H = R6 - R1 (RND12); + R2.H = R6 - R2 (RND12); + R3.H = R6 - R3 (RND12); + R4.H = R6 - R4 (RND12); + R5.H = R6 - R5 (RND12); + R6.H = R6 - R6 (RND12); + R7.H = R6 - R7 (RND12); + CHECKREG r0, 0x7fff8911; + CHECKREG r1, 0x7fffAB1D; + CHECKREG r2, 0x80005515; + CHECKREG r3, 0x80007717; + CHECKREG r4, 0x8000E91B; + CHECKREG r5, 0x8000AF1D; + CHECKREG r6, 0x00005515; + CHECKREG r7, 0x7fffF777; + + imm32 r0, 0xab678051; + imm32 r1, 0x2c89a26d; + imm32 r2, 0x34d455f5; + imm32 r3, 0x466e7717; + imm32 r4, 0x567f89bb; + imm32 r5, 0x6789ab1d; + imm32 r6, 0x744e55a5; + imm32 r7, 0x8666ab77; + R0.H = R7 - R0 (RND12); + R1.H = R7 - R1 (RND12); + R2.H = R7 - R2 (RND12); + R3.H = R7 - R3 (RND12); + R4.H = R7 - R4 (RND12); + R5.H = R7 - R5 (RND12); + R6.H = R7 - R6 (RND12); + R7.H = R7 - R7 (RND12); + CHECKREG r0, 0x80008051; + CHECKREG r1, 0x8000A26D; + CHECKREG r2, 0x800055F5; + CHECKREG r3, 0x80007717; + CHECKREG r4, 0x800089BB; + CHECKREG r5, 0x8000AB1D; + CHECKREG r6, 0x800055A5; + CHECKREG r7, 0x0000AB77; + + imm32 r0, 0x15678901; + imm32 r1, 0x2789abad; + imm32 r2, 0x34445515; + imm32 r3, 0x466677d7; + imm32 r4, 0x5678891b; + imm32 r5, 0x6789ab1d; + imm32 r6, 0x74445535; + imm32 r7, 0x86667747; + R6.H = R2 - R3 (RND12); + R1.H = R4 - R5 (RND12); + R5.H = R7 - R2 (RND12); + R3.H = R0 - R0 (RND12); + R0.H = R3 - R4 (RND12); + R2.H = R5 - R7 (RND12); + R7.H = R6 - R7 (RND12); + R4.H = R1 - R6 (RND12); + CHECKREG r0, 0x80008901; + CHECKREG r1, 0x8000ABAD; + CHECKREG r2, 0x99a35515; + CHECKREG r3, 0x000077D7; + CHECKREG r4, 0x0005891B; + CHECKREG r5, 0x8000AB1D; + CHECKREG r6, 0x80005535; + CHECKREG r7, 0x999e7747; + + imm32 r0, 0x15678121; + imm32 r1, 0x2789ab3d; + imm32 r2, 0x34445565; + imm32 r3, 0x4d667797; + imm32 r4, 0x567889ab; + imm32 r5, 0x67beabbd; + imm32 r6, 0x7b445515; + imm32 r7, 0x86d6e777; + R3.H = R4 - R0 (RND12); + R1.H = R6 - R3 (RND12); + R4.H = R3 - R2 (RND12); + R6.H = R7 - R1 (RND12); + R2.H = R5 - R4 (RND12); + R7.H = R2 - R7 (RND12); + R0.H = R1 - R6 (RND12); + R5.H = R0 - R5 (RND12); + CHECKREG r0, 0x7fff8121; + CHECKREG r1, 0xb44eAB3D; + CHECKREG r2, 0x80005565; + CHECKREG r3, 0x7fff7797; + CHECKREG r4, 0x7fff89AB; + CHECKREG r5, 0x7fffABBD; + CHECKREG r6, 0x80005515; + CHECKREG r7, 0x9297E777; + + pass |