1 # fr30 testcase for muluh $Rj,$Ri
4 .include "testutils.inc"
13 mvi_h_gr 0xdead0003,r7 ; multiply small numbers
14 mvi_h_gr 0xbeef0002,r8
15 set_cc 0x09 ; Set mask opposite of expected
20 mvi_h_gr 0xdead0001,r7 ; multiply by 1
21 mvi_h_gr 0xbeef0002,r8
22 set_cc 0x08 ; Set mask opposite of expected
27 mvi_h_gr 0xdead0002,r7 ; multiply by 1
28 mvi_h_gr 0xbeef0001,r8
29 set_cc 0x09 ; Set mask opposite of expected
34 mvi_h_gr 0xdead0000,r7 ; multiply by 0
35 mvi_h_gr 0xbeef0002,r8
36 set_cc 0x09 ; Set mask opposite of expected
41 mvi_h_gr 0xdead0002,r7 ; multiply by 0
42 mvi_h_gr 0xbeef0000,r8
43 set_cc 0x08 ; Set mask opposite of expected
48 mvi_h_gr 0xdead3fff,r7 ; 15 bit result
49 mvi_h_gr 0xbeef0002,r8
50 set_cc 0x09 ; Set mask opposite of expected
53 test_h_dr 0x00007ffe,mdl
55 mvi_h_gr 0xdead4000,r7 ; 16 bit result
56 mvi_h_gr 0xbeef0002,r8
57 set_cc 0x08 ; Set mask opposite of expected
60 test_h_dr 0x00008000,mdl
62 mvi_h_gr 0xdead8000,r7 ; 17 bit result
63 mvi_h_gr 0xbeef0002,r8
64 set_cc 0x0b ; Set mask opposite of expected
67 test_h_dr 0x00010000,mdl
69 mvi_h_gr 0xdead7fff,r7 ; max positive result
70 mvi_h_gr 0xbeef7fff,r8
71 set_cc 0x0b ; Set mask opposite of expected
74 test_h_dr 0x3fff0001,mdl
76 mvi_h_gr 0xdead8000,r7 ; max positive result
77 mvi_h_gr 0xbeef8000,r8
78 set_cc 0x0b ; Set mask opposite of expected
81 test_h_dr 0x40000000,mdl
83 mvi_h_gr 0xdeadffff,r7 ; max positive result
84 mvi_h_gr 0xbeefffff,r8
85 set_cc 0x07 ; Set mask opposite of expected
88 test_h_dr 0xfffe0001,mdl