Kyle McMartin | efb80e7 | 2007-10-18 00:06:26 -0700 | [diff] [blame] | 1 | /* 32 and 64-bit millicode, original author Hewlett-Packard |
| 2 | adapted for gcc by Paul Bame <bame@debian.org> |
| 3 | and Alan Modra <alan@linuxcare.com.au>. |
| 4 | |
| 5 | Copyright 2001, 2002, 2003 Free Software Foundation, Inc. |
| 6 | |
| 7 | This file is part of GCC and is released under the terms of |
| 8 | of the GNU General Public License as published by the Free Software |
| 9 | Foundation; either version 2, or (at your option) any later version. |
| 10 | See the file COPYING in the top-level GCC source directory for a copy |
| 11 | of the license. */ |
| 12 | |
| 13 | #include "milli.h" |
| 14 | |
| 15 | #ifdef L_mulI |
| 16 | /* VERSION "@(#)$$mulI $ Revision: 12.4 $ $ Date: 94/03/17 17:18:51 $" */ |
| 17 | /****************************************************************************** |
| 18 | This routine is used on PA2.0 processors when gcc -mno-fpregs is used |
| 19 | |
| 20 | ROUTINE: $$mulI |
| 21 | |
| 22 | |
| 23 | DESCRIPTION: |
| 24 | |
| 25 | $$mulI multiplies two single word integers, giving a single |
| 26 | word result. |
| 27 | |
| 28 | |
| 29 | INPUT REGISTERS: |
| 30 | |
| 31 | arg0 = Operand 1 |
| 32 | arg1 = Operand 2 |
| 33 | r31 == return pc |
| 34 | sr0 == return space when called externally |
| 35 | |
| 36 | |
| 37 | OUTPUT REGISTERS: |
| 38 | |
| 39 | arg0 = undefined |
| 40 | arg1 = undefined |
| 41 | ret1 = result |
| 42 | |
| 43 | OTHER REGISTERS AFFECTED: |
| 44 | |
| 45 | r1 = undefined |
| 46 | |
| 47 | SIDE EFFECTS: |
| 48 | |
| 49 | Causes a trap under the following conditions: NONE |
| 50 | Changes memory at the following places: NONE |
| 51 | |
| 52 | PERMISSIBLE CONTEXT: |
| 53 | |
| 54 | Unwindable |
| 55 | Does not create a stack frame |
| 56 | Is usable for internal or external microcode |
| 57 | |
| 58 | DISCUSSION: |
| 59 | |
| 60 | Calls other millicode routines via mrp: NONE |
| 61 | Calls other millicode routines: NONE |
| 62 | |
| 63 | ***************************************************************************/ |
| 64 | |
| 65 | |
| 66 | #define a0 %arg0 |
| 67 | #define a1 %arg1 |
| 68 | #define t0 %r1 |
| 69 | #define r %ret1 |
| 70 | |
| 71 | #define a0__128a0 zdep a0,24,25,a0 |
| 72 | #define a0__256a0 zdep a0,23,24,a0 |
| 73 | #define a1_ne_0_b_l0 comb,<> a1,0,LREF(l0) |
| 74 | #define a1_ne_0_b_l1 comb,<> a1,0,LREF(l1) |
| 75 | #define a1_ne_0_b_l2 comb,<> a1,0,LREF(l2) |
| 76 | #define b_n_ret_t0 b,n LREF(ret_t0) |
| 77 | #define b_e_shift b LREF(e_shift) |
| 78 | #define b_e_t0ma0 b LREF(e_t0ma0) |
| 79 | #define b_e_t0 b LREF(e_t0) |
| 80 | #define b_e_t0a0 b LREF(e_t0a0) |
| 81 | #define b_e_t02a0 b LREF(e_t02a0) |
| 82 | #define b_e_t04a0 b LREF(e_t04a0) |
| 83 | #define b_e_2t0 b LREF(e_2t0) |
| 84 | #define b_e_2t0a0 b LREF(e_2t0a0) |
| 85 | #define b_e_2t04a0 b LREF(e2t04a0) |
| 86 | #define b_e_3t0 b LREF(e_3t0) |
| 87 | #define b_e_4t0 b LREF(e_4t0) |
| 88 | #define b_e_4t0a0 b LREF(e_4t0a0) |
| 89 | #define b_e_4t08a0 b LREF(e4t08a0) |
| 90 | #define b_e_5t0 b LREF(e_5t0) |
| 91 | #define b_e_8t0 b LREF(e_8t0) |
| 92 | #define b_e_8t0a0 b LREF(e_8t0a0) |
| 93 | #define r__r_a0 add r,a0,r |
| 94 | #define r__r_2a0 sh1add a0,r,r |
| 95 | #define r__r_4a0 sh2add a0,r,r |
| 96 | #define r__r_8a0 sh3add a0,r,r |
| 97 | #define r__r_t0 add r,t0,r |
| 98 | #define r__r_2t0 sh1add t0,r,r |
| 99 | #define r__r_4t0 sh2add t0,r,r |
| 100 | #define r__r_8t0 sh3add t0,r,r |
| 101 | #define t0__3a0 sh1add a0,a0,t0 |
| 102 | #define t0__4a0 sh2add a0,0,t0 |
| 103 | #define t0__5a0 sh2add a0,a0,t0 |
| 104 | #define t0__8a0 sh3add a0,0,t0 |
| 105 | #define t0__9a0 sh3add a0,a0,t0 |
| 106 | #define t0__16a0 zdep a0,27,28,t0 |
| 107 | #define t0__32a0 zdep a0,26,27,t0 |
| 108 | #define t0__64a0 zdep a0,25,26,t0 |
| 109 | #define t0__128a0 zdep a0,24,25,t0 |
| 110 | #define t0__t0ma0 sub t0,a0,t0 |
| 111 | #define t0__t0_a0 add t0,a0,t0 |
| 112 | #define t0__t0_2a0 sh1add a0,t0,t0 |
| 113 | #define t0__t0_4a0 sh2add a0,t0,t0 |
| 114 | #define t0__t0_8a0 sh3add a0,t0,t0 |
| 115 | #define t0__2t0_a0 sh1add t0,a0,t0 |
| 116 | #define t0__3t0 sh1add t0,t0,t0 |
| 117 | #define t0__4t0 sh2add t0,0,t0 |
| 118 | #define t0__4t0_a0 sh2add t0,a0,t0 |
| 119 | #define t0__5t0 sh2add t0,t0,t0 |
| 120 | #define t0__8t0 sh3add t0,0,t0 |
| 121 | #define t0__8t0_a0 sh3add t0,a0,t0 |
| 122 | #define t0__9t0 sh3add t0,t0,t0 |
| 123 | #define t0__16t0 zdep t0,27,28,t0 |
| 124 | #define t0__32t0 zdep t0,26,27,t0 |
| 125 | #define t0__256a0 zdep a0,23,24,t0 |
| 126 | |
| 127 | |
| 128 | SUBSPA_MILLI |
| 129 | ATTR_MILLI |
| 130 | .align 16 |
| 131 | .proc |
| 132 | .callinfo millicode |
| 133 | .export $$mulI,millicode |
| 134 | GSYM($$mulI) |
| 135 | combt,<<= a1,a0,LREF(l4) /* swap args if unsigned a1>a0 */ |
| 136 | copy 0,r /* zero out the result */ |
| 137 | xor a0,a1,a0 /* swap a0 & a1 using the */ |
| 138 | xor a0,a1,a1 /* old xor trick */ |
| 139 | xor a0,a1,a0 |
| 140 | LSYM(l4) |
| 141 | combt,<= 0,a0,LREF(l3) /* if a0>=0 then proceed like unsigned */ |
| 142 | zdep a1,30,8,t0 /* t0 = (a1&0xff)<<1 ********* */ |
| 143 | sub,> 0,a1,t0 /* otherwise negate both and */ |
| 144 | combt,<=,n a0,t0,LREF(l2) /* swap back if |a0|<|a1| */ |
| 145 | sub 0,a0,a1 |
| 146 | movb,tr,n t0,a0,LREF(l2) /* 10th inst. */ |
| 147 | |
| 148 | LSYM(l0) r__r_t0 /* add in this partial product */ |
| 149 | LSYM(l1) a0__256a0 /* a0 <<= 8 ****************** */ |
| 150 | LSYM(l2) zdep a1,30,8,t0 /* t0 = (a1&0xff)<<1 ********* */ |
| 151 | LSYM(l3) blr t0,0 /* case on these 8 bits ****** */ |
| 152 | extru a1,23,24,a1 /* a1 >>= 8 ****************** */ |
| 153 | |
| 154 | /*16 insts before this. */ |
| 155 | /* a0 <<= 8 ************************** */ |
| 156 | LSYM(x0) a1_ne_0_b_l2 ! a0__256a0 ! MILLIRETN ! nop |
| 157 | LSYM(x1) a1_ne_0_b_l1 ! r__r_a0 ! MILLIRETN ! nop |
| 158 | LSYM(x2) a1_ne_0_b_l1 ! r__r_2a0 ! MILLIRETN ! nop |
| 159 | LSYM(x3) a1_ne_0_b_l0 ! t0__3a0 ! MILLIRET ! r__r_t0 |
| 160 | LSYM(x4) a1_ne_0_b_l1 ! r__r_4a0 ! MILLIRETN ! nop |
| 161 | LSYM(x5) a1_ne_0_b_l0 ! t0__5a0 ! MILLIRET ! r__r_t0 |
| 162 | LSYM(x6) t0__3a0 ! a1_ne_0_b_l1 ! r__r_2t0 ! MILLIRETN |
| 163 | LSYM(x7) t0__3a0 ! a1_ne_0_b_l0 ! r__r_4a0 ! b_n_ret_t0 |
| 164 | LSYM(x8) a1_ne_0_b_l1 ! r__r_8a0 ! MILLIRETN ! nop |
| 165 | LSYM(x9) a1_ne_0_b_l0 ! t0__9a0 ! MILLIRET ! r__r_t0 |
| 166 | LSYM(x10) t0__5a0 ! a1_ne_0_b_l1 ! r__r_2t0 ! MILLIRETN |
| 167 | LSYM(x11) t0__3a0 ! a1_ne_0_b_l0 ! r__r_8a0 ! b_n_ret_t0 |
| 168 | LSYM(x12) t0__3a0 ! a1_ne_0_b_l1 ! r__r_4t0 ! MILLIRETN |
| 169 | LSYM(x13) t0__5a0 ! a1_ne_0_b_l0 ! r__r_8a0 ! b_n_ret_t0 |
| 170 | LSYM(x14) t0__3a0 ! t0__2t0_a0 ! b_e_shift ! r__r_2t0 |
| 171 | LSYM(x15) t0__5a0 ! a1_ne_0_b_l0 ! t0__3t0 ! b_n_ret_t0 |
| 172 | LSYM(x16) t0__16a0 ! a1_ne_0_b_l1 ! r__r_t0 ! MILLIRETN |
| 173 | LSYM(x17) t0__9a0 ! a1_ne_0_b_l0 ! t0__t0_8a0 ! b_n_ret_t0 |
| 174 | LSYM(x18) t0__9a0 ! a1_ne_0_b_l1 ! r__r_2t0 ! MILLIRETN |
| 175 | LSYM(x19) t0__9a0 ! a1_ne_0_b_l0 ! t0__2t0_a0 ! b_n_ret_t0 |
| 176 | LSYM(x20) t0__5a0 ! a1_ne_0_b_l1 ! r__r_4t0 ! MILLIRETN |
| 177 | LSYM(x21) t0__5a0 ! a1_ne_0_b_l0 ! t0__4t0_a0 ! b_n_ret_t0 |
| 178 | LSYM(x22) t0__5a0 ! t0__2t0_a0 ! b_e_shift ! r__r_2t0 |
| 179 | LSYM(x23) t0__5a0 ! t0__2t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 180 | LSYM(x24) t0__3a0 ! a1_ne_0_b_l1 ! r__r_8t0 ! MILLIRETN |
| 181 | LSYM(x25) t0__5a0 ! a1_ne_0_b_l0 ! t0__5t0 ! b_n_ret_t0 |
| 182 | LSYM(x26) t0__3a0 ! t0__4t0_a0 ! b_e_shift ! r__r_2t0 |
| 183 | LSYM(x27) t0__3a0 ! a1_ne_0_b_l0 ! t0__9t0 ! b_n_ret_t0 |
| 184 | LSYM(x28) t0__3a0 ! t0__2t0_a0 ! b_e_shift ! r__r_4t0 |
| 185 | LSYM(x29) t0__3a0 ! t0__2t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 186 | LSYM(x30) t0__5a0 ! t0__3t0 ! b_e_shift ! r__r_2t0 |
| 187 | LSYM(x31) t0__32a0 ! a1_ne_0_b_l0 ! t0__t0ma0 ! b_n_ret_t0 |
| 188 | LSYM(x32) t0__32a0 ! a1_ne_0_b_l1 ! r__r_t0 ! MILLIRETN |
| 189 | LSYM(x33) t0__8a0 ! a1_ne_0_b_l0 ! t0__4t0_a0 ! b_n_ret_t0 |
| 190 | LSYM(x34) t0__16a0 ! t0__t0_a0 ! b_e_shift ! r__r_2t0 |
| 191 | LSYM(x35) t0__9a0 ! t0__3t0 ! b_e_t0 ! t0__t0_8a0 |
| 192 | LSYM(x36) t0__9a0 ! a1_ne_0_b_l1 ! r__r_4t0 ! MILLIRETN |
| 193 | LSYM(x37) t0__9a0 ! a1_ne_0_b_l0 ! t0__4t0_a0 ! b_n_ret_t0 |
| 194 | LSYM(x38) t0__9a0 ! t0__2t0_a0 ! b_e_shift ! r__r_2t0 |
| 195 | LSYM(x39) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 196 | LSYM(x40) t0__5a0 ! a1_ne_0_b_l1 ! r__r_8t0 ! MILLIRETN |
| 197 | LSYM(x41) t0__5a0 ! a1_ne_0_b_l0 ! t0__8t0_a0 ! b_n_ret_t0 |
| 198 | LSYM(x42) t0__5a0 ! t0__4t0_a0 ! b_e_shift ! r__r_2t0 |
| 199 | LSYM(x43) t0__5a0 ! t0__4t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 200 | LSYM(x44) t0__5a0 ! t0__2t0_a0 ! b_e_shift ! r__r_4t0 |
| 201 | LSYM(x45) t0__9a0 ! a1_ne_0_b_l0 ! t0__5t0 ! b_n_ret_t0 |
| 202 | LSYM(x46) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__t0_a0 |
| 203 | LSYM(x47) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__t0_2a0 |
| 204 | LSYM(x48) t0__3a0 ! a1_ne_0_b_l0 ! t0__16t0 ! b_n_ret_t0 |
| 205 | LSYM(x49) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__t0_4a0 |
| 206 | LSYM(x50) t0__5a0 ! t0__5t0 ! b_e_shift ! r__r_2t0 |
| 207 | LSYM(x51) t0__9a0 ! t0__t0_8a0 ! b_e_t0 ! t0__3t0 |
| 208 | LSYM(x52) t0__3a0 ! t0__4t0_a0 ! b_e_shift ! r__r_4t0 |
| 209 | LSYM(x53) t0__3a0 ! t0__4t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 210 | LSYM(x54) t0__9a0 ! t0__3t0 ! b_e_shift ! r__r_2t0 |
| 211 | LSYM(x55) t0__9a0 ! t0__3t0 ! b_e_t0 ! t0__2t0_a0 |
| 212 | LSYM(x56) t0__3a0 ! t0__2t0_a0 ! b_e_shift ! r__r_8t0 |
| 213 | LSYM(x57) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__3t0 |
| 214 | LSYM(x58) t0__3a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__4t0_a0 |
| 215 | LSYM(x59) t0__9a0 ! t0__2t0_a0 ! b_e_t02a0 ! t0__3t0 |
| 216 | LSYM(x60) t0__5a0 ! t0__3t0 ! b_e_shift ! r__r_4t0 |
| 217 | LSYM(x61) t0__5a0 ! t0__3t0 ! b_e_t0 ! t0__4t0_a0 |
| 218 | LSYM(x62) t0__32a0 ! t0__t0ma0 ! b_e_shift ! r__r_2t0 |
| 219 | LSYM(x63) t0__64a0 ! a1_ne_0_b_l0 ! t0__t0ma0 ! b_n_ret_t0 |
| 220 | LSYM(x64) t0__64a0 ! a1_ne_0_b_l1 ! r__r_t0 ! MILLIRETN |
| 221 | LSYM(x65) t0__8a0 ! a1_ne_0_b_l0 ! t0__8t0_a0 ! b_n_ret_t0 |
| 222 | LSYM(x66) t0__32a0 ! t0__t0_a0 ! b_e_shift ! r__r_2t0 |
| 223 | LSYM(x67) t0__8a0 ! t0__4t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 224 | LSYM(x68) t0__8a0 ! t0__2t0_a0 ! b_e_shift ! r__r_4t0 |
| 225 | LSYM(x69) t0__8a0 ! t0__2t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 226 | LSYM(x70) t0__64a0 ! t0__t0_4a0 ! b_e_t0 ! t0__t0_2a0 |
| 227 | LSYM(x71) t0__9a0 ! t0__8t0 ! b_e_t0 ! t0__t0ma0 |
| 228 | LSYM(x72) t0__9a0 ! a1_ne_0_b_l1 ! r__r_8t0 ! MILLIRETN |
| 229 | LSYM(x73) t0__9a0 ! t0__8t0_a0 ! b_e_shift ! r__r_t0 |
| 230 | LSYM(x74) t0__9a0 ! t0__4t0_a0 ! b_e_shift ! r__r_2t0 |
| 231 | LSYM(x75) t0__9a0 ! t0__4t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 232 | LSYM(x76) t0__9a0 ! t0__2t0_a0 ! b_e_shift ! r__r_4t0 |
| 233 | LSYM(x77) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 234 | LSYM(x78) t0__9a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__2t0_a0 |
| 235 | LSYM(x79) t0__16a0 ! t0__5t0 ! b_e_t0 ! t0__t0ma0 |
| 236 | LSYM(x80) t0__16a0 ! t0__5t0 ! b_e_shift ! r__r_t0 |
| 237 | LSYM(x81) t0__9a0 ! t0__9t0 ! b_e_shift ! r__r_t0 |
| 238 | LSYM(x82) t0__5a0 ! t0__8t0_a0 ! b_e_shift ! r__r_2t0 |
| 239 | LSYM(x83) t0__5a0 ! t0__8t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 240 | LSYM(x84) t0__5a0 ! t0__4t0_a0 ! b_e_shift ! r__r_4t0 |
| 241 | LSYM(x85) t0__8a0 ! t0__2t0_a0 ! b_e_t0 ! t0__5t0 |
| 242 | LSYM(x86) t0__5a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__2t0_a0 |
| 243 | LSYM(x87) t0__9a0 ! t0__9t0 ! b_e_t02a0 ! t0__t0_4a0 |
| 244 | LSYM(x88) t0__5a0 ! t0__2t0_a0 ! b_e_shift ! r__r_8t0 |
| 245 | LSYM(x89) t0__5a0 ! t0__2t0_a0 ! b_e_t0 ! t0__8t0_a0 |
| 246 | LSYM(x90) t0__9a0 ! t0__5t0 ! b_e_shift ! r__r_2t0 |
| 247 | LSYM(x91) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__2t0_a0 |
| 248 | LSYM(x92) t0__5a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__2t0_a0 |
| 249 | LSYM(x93) t0__32a0 ! t0__t0ma0 ! b_e_t0 ! t0__3t0 |
| 250 | LSYM(x94) t0__9a0 ! t0__5t0 ! b_e_2t0 ! t0__t0_2a0 |
| 251 | LSYM(x95) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__5t0 |
| 252 | LSYM(x96) t0__8a0 ! t0__3t0 ! b_e_shift ! r__r_4t0 |
| 253 | LSYM(x97) t0__8a0 ! t0__3t0 ! b_e_t0 ! t0__4t0_a0 |
| 254 | LSYM(x98) t0__32a0 ! t0__3t0 ! b_e_t0 ! t0__t0_2a0 |
| 255 | LSYM(x99) t0__8a0 ! t0__4t0_a0 ! b_e_t0 ! t0__3t0 |
| 256 | LSYM(x100) t0__5a0 ! t0__5t0 ! b_e_shift ! r__r_4t0 |
| 257 | LSYM(x101) t0__5a0 ! t0__5t0 ! b_e_t0 ! t0__4t0_a0 |
| 258 | LSYM(x102) t0__32a0 ! t0__t0_2a0 ! b_e_t0 ! t0__3t0 |
| 259 | LSYM(x103) t0__5a0 ! t0__5t0 ! b_e_t02a0 ! t0__4t0_a0 |
| 260 | LSYM(x104) t0__3a0 ! t0__4t0_a0 ! b_e_shift ! r__r_8t0 |
| 261 | LSYM(x105) t0__5a0 ! t0__4t0_a0 ! b_e_t0 ! t0__5t0 |
| 262 | LSYM(x106) t0__3a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__4t0_a0 |
| 263 | LSYM(x107) t0__9a0 ! t0__t0_4a0 ! b_e_t02a0 ! t0__8t0_a0 |
| 264 | LSYM(x108) t0__9a0 ! t0__3t0 ! b_e_shift ! r__r_4t0 |
| 265 | LSYM(x109) t0__9a0 ! t0__3t0 ! b_e_t0 ! t0__4t0_a0 |
| 266 | LSYM(x110) t0__9a0 ! t0__3t0 ! b_e_2t0 ! t0__2t0_a0 |
| 267 | LSYM(x111) t0__9a0 ! t0__4t0_a0 ! b_e_t0 ! t0__3t0 |
| 268 | LSYM(x112) t0__3a0 ! t0__2t0_a0 ! b_e_t0 ! t0__16t0 |
| 269 | LSYM(x113) t0__9a0 ! t0__4t0_a0 ! b_e_t02a0 ! t0__3t0 |
| 270 | LSYM(x114) t0__9a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__3t0 |
| 271 | LSYM(x115) t0__9a0 ! t0__2t0_a0 ! b_e_2t0a0 ! t0__3t0 |
| 272 | LSYM(x116) t0__3a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__4t0_a0 |
| 273 | LSYM(x117) t0__3a0 ! t0__4t0_a0 ! b_e_t0 ! t0__9t0 |
| 274 | LSYM(x118) t0__3a0 ! t0__4t0_a0 ! b_e_t0a0 ! t0__9t0 |
| 275 | LSYM(x119) t0__3a0 ! t0__4t0_a0 ! b_e_t02a0 ! t0__9t0 |
| 276 | LSYM(x120) t0__5a0 ! t0__3t0 ! b_e_shift ! r__r_8t0 |
| 277 | LSYM(x121) t0__5a0 ! t0__3t0 ! b_e_t0 ! t0__8t0_a0 |
| 278 | LSYM(x122) t0__5a0 ! t0__3t0 ! b_e_2t0 ! t0__4t0_a0 |
| 279 | LSYM(x123) t0__5a0 ! t0__8t0_a0 ! b_e_t0 ! t0__3t0 |
| 280 | LSYM(x124) t0__32a0 ! t0__t0ma0 ! b_e_shift ! r__r_4t0 |
| 281 | LSYM(x125) t0__5a0 ! t0__5t0 ! b_e_t0 ! t0__5t0 |
| 282 | LSYM(x126) t0__64a0 ! t0__t0ma0 ! b_e_shift ! r__r_2t0 |
| 283 | LSYM(x127) t0__128a0 ! a1_ne_0_b_l0 ! t0__t0ma0 ! b_n_ret_t0 |
| 284 | LSYM(x128) t0__128a0 ! a1_ne_0_b_l1 ! r__r_t0 ! MILLIRETN |
| 285 | LSYM(x129) t0__128a0 ! a1_ne_0_b_l0 ! t0__t0_a0 ! b_n_ret_t0 |
| 286 | LSYM(x130) t0__64a0 ! t0__t0_a0 ! b_e_shift ! r__r_2t0 |
| 287 | LSYM(x131) t0__8a0 ! t0__8t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 288 | LSYM(x132) t0__8a0 ! t0__4t0_a0 ! b_e_shift ! r__r_4t0 |
| 289 | LSYM(x133) t0__8a0 ! t0__4t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 290 | LSYM(x134) t0__8a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__2t0_a0 |
| 291 | LSYM(x135) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__3t0 |
| 292 | LSYM(x136) t0__8a0 ! t0__2t0_a0 ! b_e_shift ! r__r_8t0 |
| 293 | LSYM(x137) t0__8a0 ! t0__2t0_a0 ! b_e_t0 ! t0__8t0_a0 |
| 294 | LSYM(x138) t0__8a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__4t0_a0 |
| 295 | LSYM(x139) t0__8a0 ! t0__2t0_a0 ! b_e_2t0a0 ! t0__4t0_a0 |
| 296 | LSYM(x140) t0__3a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__5t0 |
| 297 | LSYM(x141) t0__8a0 ! t0__2t0_a0 ! b_e_4t0a0 ! t0__2t0_a0 |
| 298 | LSYM(x142) t0__9a0 ! t0__8t0 ! b_e_2t0 ! t0__t0ma0 |
| 299 | LSYM(x143) t0__16a0 ! t0__9t0 ! b_e_t0 ! t0__t0ma0 |
| 300 | LSYM(x144) t0__9a0 ! t0__8t0 ! b_e_shift ! r__r_2t0 |
| 301 | LSYM(x145) t0__9a0 ! t0__8t0 ! b_e_t0 ! t0__2t0_a0 |
| 302 | LSYM(x146) t0__9a0 ! t0__8t0_a0 ! b_e_shift ! r__r_2t0 |
| 303 | LSYM(x147) t0__9a0 ! t0__8t0_a0 ! b_e_t0 ! t0__2t0_a0 |
| 304 | LSYM(x148) t0__9a0 ! t0__4t0_a0 ! b_e_shift ! r__r_4t0 |
| 305 | LSYM(x149) t0__9a0 ! t0__4t0_a0 ! b_e_t0 ! t0__4t0_a0 |
| 306 | LSYM(x150) t0__9a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__2t0_a0 |
| 307 | LSYM(x151) t0__9a0 ! t0__4t0_a0 ! b_e_2t0a0 ! t0__2t0_a0 |
| 308 | LSYM(x152) t0__9a0 ! t0__2t0_a0 ! b_e_shift ! r__r_8t0 |
| 309 | LSYM(x153) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__8t0_a0 |
| 310 | LSYM(x154) t0__9a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__4t0_a0 |
| 311 | LSYM(x155) t0__32a0 ! t0__t0ma0 ! b_e_t0 ! t0__5t0 |
| 312 | LSYM(x156) t0__9a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__2t0_a0 |
| 313 | LSYM(x157) t0__32a0 ! t0__t0ma0 ! b_e_t02a0 ! t0__5t0 |
| 314 | LSYM(x158) t0__16a0 ! t0__5t0 ! b_e_2t0 ! t0__t0ma0 |
| 315 | LSYM(x159) t0__32a0 ! t0__5t0 ! b_e_t0 ! t0__t0ma0 |
| 316 | LSYM(x160) t0__5a0 ! t0__4t0 ! b_e_shift ! r__r_8t0 |
| 317 | LSYM(x161) t0__8a0 ! t0__5t0 ! b_e_t0 ! t0__4t0_a0 |
| 318 | LSYM(x162) t0__9a0 ! t0__9t0 ! b_e_shift ! r__r_2t0 |
| 319 | LSYM(x163) t0__9a0 ! t0__9t0 ! b_e_t0 ! t0__2t0_a0 |
| 320 | LSYM(x164) t0__5a0 ! t0__8t0_a0 ! b_e_shift ! r__r_4t0 |
| 321 | LSYM(x165) t0__8a0 ! t0__4t0_a0 ! b_e_t0 ! t0__5t0 |
| 322 | LSYM(x166) t0__5a0 ! t0__8t0_a0 ! b_e_2t0 ! t0__2t0_a0 |
| 323 | LSYM(x167) t0__5a0 ! t0__8t0_a0 ! b_e_2t0a0 ! t0__2t0_a0 |
| 324 | LSYM(x168) t0__5a0 ! t0__4t0_a0 ! b_e_shift ! r__r_8t0 |
| 325 | LSYM(x169) t0__5a0 ! t0__4t0_a0 ! b_e_t0 ! t0__8t0_a0 |
| 326 | LSYM(x170) t0__32a0 ! t0__t0_2a0 ! b_e_t0 ! t0__5t0 |
| 327 | LSYM(x171) t0__9a0 ! t0__2t0_a0 ! b_e_t0 ! t0__9t0 |
| 328 | LSYM(x172) t0__5a0 ! t0__4t0_a0 ! b_e_4t0 ! t0__2t0_a0 |
| 329 | LSYM(x173) t0__9a0 ! t0__2t0_a0 ! b_e_t02a0 ! t0__9t0 |
| 330 | LSYM(x174) t0__32a0 ! t0__t0_2a0 ! b_e_t04a0 ! t0__5t0 |
| 331 | LSYM(x175) t0__8a0 ! t0__2t0_a0 ! b_e_5t0 ! t0__2t0_a0 |
| 332 | LSYM(x176) t0__5a0 ! t0__4t0_a0 ! b_e_8t0 ! t0__t0_a0 |
| 333 | LSYM(x177) t0__5a0 ! t0__4t0_a0 ! b_e_8t0a0 ! t0__t0_a0 |
| 334 | LSYM(x178) t0__5a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__8t0_a0 |
| 335 | LSYM(x179) t0__5a0 ! t0__2t0_a0 ! b_e_2t0a0 ! t0__8t0_a0 |
| 336 | LSYM(x180) t0__9a0 ! t0__5t0 ! b_e_shift ! r__r_4t0 |
| 337 | LSYM(x181) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__4t0_a0 |
| 338 | LSYM(x182) t0__9a0 ! t0__5t0 ! b_e_2t0 ! t0__2t0_a0 |
| 339 | LSYM(x183) t0__9a0 ! t0__5t0 ! b_e_2t0a0 ! t0__2t0_a0 |
| 340 | LSYM(x184) t0__5a0 ! t0__9t0 ! b_e_4t0 ! t0__t0_a0 |
| 341 | LSYM(x185) t0__9a0 ! t0__4t0_a0 ! b_e_t0 ! t0__5t0 |
| 342 | LSYM(x186) t0__32a0 ! t0__t0ma0 ! b_e_2t0 ! t0__3t0 |
| 343 | LSYM(x187) t0__9a0 ! t0__4t0_a0 ! b_e_t02a0 ! t0__5t0 |
| 344 | LSYM(x188) t0__9a0 ! t0__5t0 ! b_e_4t0 ! t0__t0_2a0 |
| 345 | LSYM(x189) t0__5a0 ! t0__4t0_a0 ! b_e_t0 ! t0__9t0 |
| 346 | LSYM(x190) t0__9a0 ! t0__2t0_a0 ! b_e_2t0 ! t0__5t0 |
| 347 | LSYM(x191) t0__64a0 ! t0__3t0 ! b_e_t0 ! t0__t0ma0 |
| 348 | LSYM(x192) t0__8a0 ! t0__3t0 ! b_e_shift ! r__r_8t0 |
| 349 | LSYM(x193) t0__8a0 ! t0__3t0 ! b_e_t0 ! t0__8t0_a0 |
| 350 | LSYM(x194) t0__8a0 ! t0__3t0 ! b_e_2t0 ! t0__4t0_a0 |
| 351 | LSYM(x195) t0__8a0 ! t0__8t0_a0 ! b_e_t0 ! t0__3t0 |
| 352 | LSYM(x196) t0__8a0 ! t0__3t0 ! b_e_4t0 ! t0__2t0_a0 |
| 353 | LSYM(x197) t0__8a0 ! t0__3t0 ! b_e_4t0a0 ! t0__2t0_a0 |
| 354 | LSYM(x198) t0__64a0 ! t0__t0_2a0 ! b_e_t0 ! t0__3t0 |
| 355 | LSYM(x199) t0__8a0 ! t0__4t0_a0 ! b_e_2t0a0 ! t0__3t0 |
| 356 | LSYM(x200) t0__5a0 ! t0__5t0 ! b_e_shift ! r__r_8t0 |
| 357 | LSYM(x201) t0__5a0 ! t0__5t0 ! b_e_t0 ! t0__8t0_a0 |
| 358 | LSYM(x202) t0__5a0 ! t0__5t0 ! b_e_2t0 ! t0__4t0_a0 |
| 359 | LSYM(x203) t0__5a0 ! t0__5t0 ! b_e_2t0a0 ! t0__4t0_a0 |
| 360 | LSYM(x204) t0__8a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__3t0 |
| 361 | LSYM(x205) t0__5a0 ! t0__8t0_a0 ! b_e_t0 ! t0__5t0 |
| 362 | LSYM(x206) t0__64a0 ! t0__t0_4a0 ! b_e_t02a0 ! t0__3t0 |
| 363 | LSYM(x207) t0__8a0 ! t0__2t0_a0 ! b_e_3t0 ! t0__4t0_a0 |
| 364 | LSYM(x208) t0__5a0 ! t0__5t0 ! b_e_8t0 ! t0__t0_a0 |
| 365 | LSYM(x209) t0__5a0 ! t0__5t0 ! b_e_8t0a0 ! t0__t0_a0 |
| 366 | LSYM(x210) t0__5a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__5t0 |
| 367 | LSYM(x211) t0__5a0 ! t0__4t0_a0 ! b_e_2t0a0 ! t0__5t0 |
| 368 | LSYM(x212) t0__3a0 ! t0__4t0_a0 ! b_e_4t0 ! t0__4t0_a0 |
| 369 | LSYM(x213) t0__3a0 ! t0__4t0_a0 ! b_e_4t0a0 ! t0__4t0_a0 |
| 370 | LSYM(x214) t0__9a0 ! t0__t0_4a0 ! b_e_2t04a0 ! t0__8t0_a0 |
| 371 | LSYM(x215) t0__5a0 ! t0__4t0_a0 ! b_e_5t0 ! t0__2t0_a0 |
| 372 | LSYM(x216) t0__9a0 ! t0__3t0 ! b_e_shift ! r__r_8t0 |
| 373 | LSYM(x217) t0__9a0 ! t0__3t0 ! b_e_t0 ! t0__8t0_a0 |
| 374 | LSYM(x218) t0__9a0 ! t0__3t0 ! b_e_2t0 ! t0__4t0_a0 |
| 375 | LSYM(x219) t0__9a0 ! t0__8t0_a0 ! b_e_t0 ! t0__3t0 |
| 376 | LSYM(x220) t0__3a0 ! t0__9t0 ! b_e_4t0 ! t0__2t0_a0 |
| 377 | LSYM(x221) t0__3a0 ! t0__9t0 ! b_e_4t0a0 ! t0__2t0_a0 |
| 378 | LSYM(x222) t0__9a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__3t0 |
| 379 | LSYM(x223) t0__9a0 ! t0__4t0_a0 ! b_e_2t0a0 ! t0__3t0 |
| 380 | LSYM(x224) t0__9a0 ! t0__3t0 ! b_e_8t0 ! t0__t0_a0 |
| 381 | LSYM(x225) t0__9a0 ! t0__5t0 ! b_e_t0 ! t0__5t0 |
| 382 | LSYM(x226) t0__3a0 ! t0__2t0_a0 ! b_e_t02a0 ! t0__32t0 |
| 383 | LSYM(x227) t0__9a0 ! t0__5t0 ! b_e_t02a0 ! t0__5t0 |
| 384 | LSYM(x228) t0__9a0 ! t0__2t0_a0 ! b_e_4t0 ! t0__3t0 |
| 385 | LSYM(x229) t0__9a0 ! t0__2t0_a0 ! b_e_4t0a0 ! t0__3t0 |
| 386 | LSYM(x230) t0__9a0 ! t0__5t0 ! b_e_5t0 ! t0__t0_a0 |
| 387 | LSYM(x231) t0__9a0 ! t0__2t0_a0 ! b_e_3t0 ! t0__4t0_a0 |
| 388 | LSYM(x232) t0__3a0 ! t0__2t0_a0 ! b_e_8t0 ! t0__4t0_a0 |
| 389 | LSYM(x233) t0__3a0 ! t0__2t0_a0 ! b_e_8t0a0 ! t0__4t0_a0 |
| 390 | LSYM(x234) t0__3a0 ! t0__4t0_a0 ! b_e_2t0 ! t0__9t0 |
| 391 | LSYM(x235) t0__3a0 ! t0__4t0_a0 ! b_e_2t0a0 ! t0__9t0 |
| 392 | LSYM(x236) t0__9a0 ! t0__2t0_a0 ! b_e_4t08a0 ! t0__3t0 |
| 393 | LSYM(x237) t0__16a0 ! t0__5t0 ! b_e_3t0 ! t0__t0ma0 |
| 394 | LSYM(x238) t0__3a0 ! t0__4t0_a0 ! b_e_2t04a0 ! t0__9t0 |
| 395 | LSYM(x239) t0__16a0 ! t0__5t0 ! b_e_t0ma0 ! t0__3t0 |
| 396 | LSYM(x240) t0__9a0 ! t0__t0_a0 ! b_e_8t0 ! t0__3t0 |
| 397 | LSYM(x241) t0__9a0 ! t0__t0_a0 ! b_e_8t0a0 ! t0__3t0 |
| 398 | LSYM(x242) t0__5a0 ! t0__3t0 ! b_e_2t0 ! t0__8t0_a0 |
| 399 | LSYM(x243) t0__9a0 ! t0__9t0 ! b_e_t0 ! t0__3t0 |
| 400 | LSYM(x244) t0__5a0 ! t0__3t0 ! b_e_4t0 ! t0__4t0_a0 |
| 401 | LSYM(x245) t0__8a0 ! t0__3t0 ! b_e_5t0 ! t0__2t0_a0 |
| 402 | LSYM(x246) t0__5a0 ! t0__8t0_a0 ! b_e_2t0 ! t0__3t0 |
| 403 | LSYM(x247) t0__5a0 ! t0__8t0_a0 ! b_e_2t0a0 ! t0__3t0 |
| 404 | LSYM(x248) t0__32a0 ! t0__t0ma0 ! b_e_shift ! r__r_8t0 |
| 405 | LSYM(x249) t0__32a0 ! t0__t0ma0 ! b_e_t0 ! t0__8t0_a0 |
| 406 | LSYM(x250) t0__5a0 ! t0__5t0 ! b_e_2t0 ! t0__5t0 |
| 407 | LSYM(x251) t0__5a0 ! t0__5t0 ! b_e_2t0a0 ! t0__5t0 |
| 408 | LSYM(x252) t0__64a0 ! t0__t0ma0 ! b_e_shift ! r__r_4t0 |
| 409 | LSYM(x253) t0__64a0 ! t0__t0ma0 ! b_e_t0 ! t0__4t0_a0 |
| 410 | LSYM(x254) t0__128a0 ! t0__t0ma0 ! b_e_shift ! r__r_2t0 |
| 411 | LSYM(x255) t0__256a0 ! a1_ne_0_b_l0 ! t0__t0ma0 ! b_n_ret_t0 |
| 412 | /*1040 insts before this. */ |
| 413 | LSYM(ret_t0) MILLIRET |
| 414 | LSYM(e_t0) r__r_t0 |
| 415 | LSYM(e_shift) a1_ne_0_b_l2 |
| 416 | a0__256a0 /* a0 <<= 8 *********** */ |
| 417 | MILLIRETN |
| 418 | LSYM(e_t0ma0) a1_ne_0_b_l0 |
| 419 | t0__t0ma0 |
| 420 | MILLIRET |
| 421 | r__r_t0 |
| 422 | LSYM(e_t0a0) a1_ne_0_b_l0 |
| 423 | t0__t0_a0 |
| 424 | MILLIRET |
| 425 | r__r_t0 |
| 426 | LSYM(e_t02a0) a1_ne_0_b_l0 |
| 427 | t0__t0_2a0 |
| 428 | MILLIRET |
| 429 | r__r_t0 |
| 430 | LSYM(e_t04a0) a1_ne_0_b_l0 |
| 431 | t0__t0_4a0 |
| 432 | MILLIRET |
| 433 | r__r_t0 |
| 434 | LSYM(e_2t0) a1_ne_0_b_l1 |
| 435 | r__r_2t0 |
| 436 | MILLIRETN |
| 437 | LSYM(e_2t0a0) a1_ne_0_b_l0 |
| 438 | t0__2t0_a0 |
| 439 | MILLIRET |
| 440 | r__r_t0 |
| 441 | LSYM(e2t04a0) t0__t0_2a0 |
| 442 | a1_ne_0_b_l1 |
| 443 | r__r_2t0 |
| 444 | MILLIRETN |
| 445 | LSYM(e_3t0) a1_ne_0_b_l0 |
| 446 | t0__3t0 |
| 447 | MILLIRET |
| 448 | r__r_t0 |
| 449 | LSYM(e_4t0) a1_ne_0_b_l1 |
| 450 | r__r_4t0 |
| 451 | MILLIRETN |
| 452 | LSYM(e_4t0a0) a1_ne_0_b_l0 |
| 453 | t0__4t0_a0 |
| 454 | MILLIRET |
| 455 | r__r_t0 |
| 456 | LSYM(e4t08a0) t0__t0_2a0 |
| 457 | a1_ne_0_b_l1 |
| 458 | r__r_4t0 |
| 459 | MILLIRETN |
| 460 | LSYM(e_5t0) a1_ne_0_b_l0 |
| 461 | t0__5t0 |
| 462 | MILLIRET |
| 463 | r__r_t0 |
| 464 | LSYM(e_8t0) a1_ne_0_b_l1 |
| 465 | r__r_8t0 |
| 466 | MILLIRETN |
| 467 | LSYM(e_8t0a0) a1_ne_0_b_l0 |
| 468 | t0__8t0_a0 |
| 469 | MILLIRET |
| 470 | r__r_t0 |
| 471 | |
| 472 | .procend |
| 473 | .end |
| 474 | #endif |