| Jingwei Zhang | 5d4f0e6 | 2014-10-31 18:29:18 +0800 | [diff] [blame] | 1 | /* | 
 | 2 | Copyright (c) 2014, Intel Corporation | 
 | 3 | All rights reserved. | 
 | 4 |  | 
 | 5 | Redistribution and use in source and binary forms, with or without | 
 | 6 | modification, are permitted provided that the following conditions are met: | 
 | 7 |  | 
 | 8 |     * Redistributions of source code must retain the above copyright notice, | 
 | 9 |     * this list of conditions and the following disclaimer. | 
 | 10 |  | 
 | 11 |     * Redistributions in binary form must reproduce the above copyright notice, | 
 | 12 |     * this list of conditions and the following disclaimer in the documentation | 
 | 13 |     * and/or other materials provided with the distribution. | 
 | 14 |  | 
 | 15 |     * Neither the name of Intel Corporation nor the names of its contributors | 
 | 16 |     * may be used to endorse or promote products derived from this software | 
 | 17 |     * without specific prior written permission. | 
 | 18 |  | 
 | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | 
 | 20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 
 | 21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 
 | 22 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR | 
 | 23 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 
 | 24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 
 | 25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | 
 | 26 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
 | 27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | 
 | 28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
 | 29 | */ | 
 | 30 |  | 
 | 31 | /******************************************************************************/ | 
 | 32 | //                     ALGORITHM DESCRIPTION | 
 | 33 | //                     --------------------- | 
 | 34 | // | 
 | 35 | // Description: | 
 | 36 | //  Let K = 64 (table size). | 
 | 37 | // | 
 | 38 | //  Four sub-domains: | 
 | 39 | //    1. |x| < 1/(2*K) | 
 | 40 | //      expm1(x) ~ P(x) | 
 | 41 | //    2. 1/(2*K) <= |x| <= 56*log(2) | 
 | 42 | //       x       x/log(2)    n | 
 | 43 | //      e - 1 = 2         = 2 * T[j] * (1 + P(y)) - 1 | 
 | 44 | //    3. 56*log(2) < x < MAX_LOG | 
 | 45 | //       x       x   x/log(2)    n | 
 | 46 | //      e - 1 ~ e = 2         = 2 * T[j] * (1 + P(y)) | 
 | 47 | //    4. x < -56*log(2) | 
 | 48 | //       x            x | 
 | 49 | //      e - 1 = -1 + e ~ -1 | 
 | 50 | //    where | 
 | 51 | //       x = m*log(2)/K + y,    y in [-log(2)/K..log(2)/K] | 
 | 52 | //       m = n*K + j,           m,n,j - signed integer, j in [-K/2..K/2] | 
 | 53 | //                  j/K | 
 | 54 | //       values of 2   are tabulated as T[j] = T_hi[j] ( 1 + T_lo[j]). | 
 | 55 | // | 
 | 56 | //       P(y) is a minimax polynomial approximation of exp(x)-1 | 
 | 57 | //       on small interval [-log(2)/K..log(2)/K] (were calculated by Maple V). | 
 | 58 | // | 
 | 59 | //    In case 3, to avoid problems with arithmetic overflow and underflow, | 
 | 60 | //              n                        n1  n2 | 
 | 61 | //    value of 2  is safely computed as 2 * 2 where n1 in [-BIAS/2..BIAS/2] | 
 | 62 | //    and BIAS is a value of exponent bias. | 
 | 63 | // | 
 | 64 | // Special cases: | 
 | 65 | //  expm1(NaN) is NaN | 
 | 66 | //  expm1(+INF) is +INF | 
 | 67 | //  expm1(-INF) is -1 | 
 | 68 | //  expm1(x) is x for subnormals | 
 | 69 | //  for finite argument, only expm1(0)=0 is exact. | 
 | 70 | //  For IEEE double | 
 | 71 | //    if x > 709.782712893383973096 then expm1(x) overflow | 
 | 72 | // | 
 | 73 | /******************************************************************************/ | 
 | 74 |  | 
 | 75 | #include <private/bionic_asm.h> | 
 | 76 | # -- Begin  static_func | 
 | 77 |         .text | 
 | 78 |         .align __bionic_asm_align | 
 | 79 |         .type static_func, @function | 
 | 80 | static_func: | 
 | 81 | ..B1.1: | 
 | 82 |         call      ..L2 | 
 | 83 | ..L2: | 
 | 84 |         popl      %eax | 
 | 85 |         lea       _GLOBAL_OFFSET_TABLE_+[. - ..L2](%eax), %eax | 
 | 86 |         lea       static_const_table@GOTOFF(%eax), %eax | 
 | 87 |         ret | 
 | 88 |         .size   static_func,.-static_func | 
 | 89 | # -- End  static_func | 
 | 90 |  | 
 | 91 | # -- Begin  expm1 | 
 | 92 | ENTRY(expm1) | 
 | 93 | # parameter 1: 8 + %ebp | 
 | 94 | ..B2.1: | 
 | 95 | ..B2.2: | 
 | 96 |         pushl     %ebp | 
 | 97 |         movl      %esp, %ebp | 
 | 98 |         subl      $120, %esp | 
 | 99 |         movl      %ebx, 64(%esp) | 
 | 100 |         call      static_func | 
 | 101 |         movl      %eax, %ebx | 
 | 102 |         movsd     128(%esp), %xmm0 | 
 | 103 |         unpcklpd  %xmm0, %xmm0 | 
 | 104 |         movapd    64(%ebx), %xmm1 | 
 | 105 |         movapd    48(%ebx), %xmm6 | 
 | 106 |         movapd    80(%ebx), %xmm2 | 
 | 107 |         movapd    96(%ebx), %xmm3 | 
 | 108 |         pextrw    $3, %xmm0, %eax | 
 | 109 |         andl      $32767, %eax | 
 | 110 |         movl      $16527, %edx | 
 | 111 |         subl      %eax, %edx | 
 | 112 |         subl      $16304, %eax | 
 | 113 |         orl       %eax, %edx | 
 | 114 |         cmpl      $-2147483648, %edx | 
 | 115 |         jae       .L_2TAG_PACKET_0.0.2 | 
 | 116 |         mulpd     %xmm0, %xmm1 | 
 | 117 |         addpd     %xmm6, %xmm1 | 
 | 118 |         movapd    %xmm1, %xmm7 | 
 | 119 |         subpd     %xmm6, %xmm1 | 
 | 120 |         mulpd     %xmm1, %xmm2 | 
 | 121 |         movapd    112(%ebx), %xmm4 | 
 | 122 |         mulpd     %xmm1, %xmm3 | 
 | 123 |         movapd    128(%ebx), %xmm5 | 
 | 124 |         subpd     %xmm2, %xmm0 | 
 | 125 |         movd      %xmm7, %eax | 
 | 126 |         movl      %eax, %ecx | 
 | 127 |         andl      $63, %ecx | 
 | 128 |         shll      $4, %ecx | 
 | 129 |         sarl      $6, %eax | 
 | 130 |         movl      %eax, %edx | 
 | 131 |         subpd     %xmm3, %xmm0 | 
 | 132 |         movapd    160(%ebx,%ecx), %xmm2 | 
 | 133 |         movsd     144(%ebx), %xmm3 | 
 | 134 |         mulpd     %xmm0, %xmm4 | 
 | 135 |         movapd    %xmm0, %xmm1 | 
 | 136 |         mulpd     %xmm0, %xmm0 | 
 | 137 |         mulsd     %xmm0, %xmm3 | 
 | 138 |         addpd     %xmm4, %xmm5 | 
 | 139 |         mulsd     %xmm0, %xmm0 | 
 | 140 |         movapd    %xmm2, %xmm4 | 
 | 141 |         unpckhpd  %xmm2, %xmm2 | 
 | 142 |         movdqa    16(%ebx), %xmm6 | 
 | 143 |         pand      %xmm6, %xmm7 | 
 | 144 |         movdqa    32(%ebx), %xmm6 | 
 | 145 |         paddq     %xmm6, %xmm7 | 
 | 146 |         psllq     $46, %xmm7 | 
 | 147 |         mulsd     %xmm0, %xmm3 | 
 | 148 |         mulpd     %xmm5, %xmm0 | 
 | 149 |         addl      $894, %edx | 
 | 150 |         cmpl      $1916, %edx | 
 | 151 |         ja        .L_2TAG_PACKET_1.0.2 | 
 | 152 |         addsd     %xmm3, %xmm0 | 
 | 153 |         xorpd     %xmm3, %xmm3 | 
 | 154 |         movl      $16368, %eax | 
 | 155 |         pinsrw    $3, %eax, %xmm3 | 
 | 156 |         orpd      %xmm7, %xmm2 | 
 | 157 |         mulsd     %xmm4, %xmm7 | 
 | 158 |         movapd    %xmm3, %xmm6 | 
 | 159 |         addsd     %xmm1, %xmm3 | 
 | 160 |         pextrw    $3, %xmm2, %edx | 
 | 161 |         pshufd    $238, %xmm0, %xmm5 | 
 | 162 |         psrlq     $38, %xmm3 | 
 | 163 |         psllq     $38, %xmm3 | 
 | 164 |         movapd    %xmm2, %xmm4 | 
 | 165 |         subsd     %xmm3, %xmm6 | 
 | 166 |         addsd     %xmm5, %xmm0 | 
 | 167 |         addsd     %xmm6, %xmm1 | 
 | 168 |         addsd     %xmm7, %xmm4 | 
 | 169 |         mulsd     %xmm3, %xmm7 | 
 | 170 |         mulsd     %xmm2, %xmm3 | 
 | 171 |         xorpd     %xmm5, %xmm5 | 
 | 172 |         movl      $16368, %eax | 
 | 173 |         pinsrw    $3, %eax, %xmm5 | 
 | 174 |         addsd     %xmm1, %xmm0 | 
 | 175 |         movl      $17184, %ecx | 
 | 176 |         subl      %edx, %ecx | 
 | 177 |         subl      $16256, %edx | 
 | 178 |         orl       %edx, %ecx | 
 | 179 |         jl        .L_2TAG_PACKET_2.0.2 | 
 | 180 |         mulsd     %xmm4, %xmm0 | 
 | 181 |         subsd     %xmm5, %xmm3 | 
 | 182 |         addsd     %xmm7, %xmm0 | 
 | 183 |         addsd     %xmm3, %xmm0 | 
 | 184 | .L_2TAG_PACKET_3.0.2: | 
 | 185 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 186 | .L_2TAG_PACKET_2.0.2: | 
 | 187 |         cmpl      $0, %edx | 
 | 188 |         jl        .L_2TAG_PACKET_5.0.2 | 
 | 189 |         mulsd     %xmm4, %xmm0 | 
 | 190 |         subsd     %xmm5, %xmm7 | 
 | 191 |         addsd     %xmm7, %xmm0 | 
 | 192 |         addsd     %xmm3, %xmm0 | 
 | 193 |         jmp       .L_2TAG_PACKET_3.0.2 | 
 | 194 | .L_2TAG_PACKET_5.0.2: | 
 | 195 |         mulsd     %xmm4, %xmm0 | 
 | 196 |         addsd     %xmm7, %xmm0 | 
 | 197 |         addsd     %xmm3, %xmm0 | 
 | 198 |         subsd     %xmm5, %xmm0 | 
 | 199 |         jmp       .L_2TAG_PACKET_3.0.2 | 
 | 200 | .L_2TAG_PACKET_1.0.2: | 
 | 201 |         movl      132(%esp), %ecx | 
 | 202 |         addsd     %xmm0, %xmm1 | 
 | 203 |         unpckhpd  %xmm0, %xmm0 | 
 | 204 |         addsd     %xmm1, %xmm0 | 
 | 205 |         cmpl      $0, %ecx | 
 | 206 |         jl        .L_2TAG_PACKET_6.0.2 | 
 | 207 |         fstcw     24(%esp) | 
 | 208 |         movzwl    24(%esp), %edx | 
 | 209 |         orl       $768, %edx | 
 | 210 |         movw      %dx, 28(%esp) | 
 | 211 |         fldcw     28(%esp) | 
 | 212 |         movl      %eax, %edx | 
 | 213 |         sarl      $1, %eax | 
 | 214 |         subl      %eax, %edx | 
 | 215 |         movdqa    (%ebx), %xmm6 | 
 | 216 |         pandn     %xmm2, %xmm6 | 
 | 217 |         addl      $1023, %eax | 
 | 218 |         movd      %eax, %xmm3 | 
 | 219 |         psllq     $52, %xmm3 | 
 | 220 |         orpd      %xmm3, %xmm6 | 
 | 221 |         mulsd     %xmm3, %xmm4 | 
 | 222 |         movsd     %xmm0, 8(%esp) | 
 | 223 |         fldl      8(%esp) | 
 | 224 |         movsd     %xmm6, 16(%esp) | 
 | 225 |         fldl      16(%esp) | 
 | 226 |         movsd     %xmm4, 16(%esp) | 
 | 227 |         fldl      16(%esp) | 
 | 228 |         addl      $1023, %edx | 
 | 229 |         movd      %edx, %xmm4 | 
 | 230 |         psllq     $52, %xmm4 | 
 | 231 |         faddp     %st, %st(1) | 
 | 232 |         fmul      %st, %st(1) | 
 | 233 |         faddp     %st, %st(1) | 
 | 234 |         movsd     %xmm4, 8(%esp) | 
 | 235 |         fldl      8(%esp) | 
 | 236 |         fmulp     %st, %st(1) | 
 | 237 |         fstpl     8(%esp) | 
 | 238 |         movsd     8(%esp), %xmm0 | 
 | 239 |         fldcw     24(%esp) | 
 | 240 |         pextrw    $3, %xmm0, %ecx | 
 | 241 |         andl      $32752, %ecx | 
 | 242 |         cmpl      $32752, %ecx | 
 | 243 |         jae       .L_2TAG_PACKET_7.0.2 | 
 | 244 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 245 |         cmpl      $-2147483648, %ecx | 
 | 246 |         jb        .L_2TAG_PACKET_7.0.2 | 
 | 247 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 248 | .L_2TAG_PACKET_7.0.2: | 
 | 249 |         movl      $41, %edx | 
 | 250 | .L_2TAG_PACKET_8.0.2: | 
 | 251 |         movsd     %xmm0, (%esp) | 
 | 252 |         movsd     128(%esp), %xmm0 | 
 | 253 |         fldl      (%esp) | 
 | 254 |         jmp       .L_2TAG_PACKET_9.0.2 | 
 | 255 | .L_2TAG_PACKET_10.0.2: | 
 | 256 |         cmpl      $2146435072, %eax | 
 | 257 |         jae       .L_2TAG_PACKET_11.0.2 | 
 | 258 |         movsd     1272(%ebx), %xmm0 | 
 | 259 |         mulsd     %xmm0, %xmm0 | 
 | 260 |         movl      $41, %edx | 
 | 261 |         jmp       .L_2TAG_PACKET_8.0.2 | 
 | 262 | .L_2TAG_PACKET_11.0.2: | 
 | 263 |         movl      132(%esp), %eax | 
 | 264 |         movl      128(%esp), %edx | 
 | 265 |         movl      %eax, %ecx | 
 | 266 |         andl      $2147483647, %eax | 
 | 267 |         cmpl      $2146435072, %eax | 
 | 268 |         ja        .L_2TAG_PACKET_12.0.2 | 
 | 269 |         cmpl      $0, %edx | 
 | 270 |         jne       .L_2TAG_PACKET_12.0.2 | 
 | 271 |         cmpl      $0, %ecx | 
 | 272 |         jl        .L_2TAG_PACKET_13.0.2 | 
 | 273 |         movsd     1256(%ebx), %xmm0 | 
 | 274 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 275 | .L_2TAG_PACKET_13.0.2: | 
 | 276 |         jmp       .L_2TAG_PACKET_6.0.2 | 
 | 277 | .L_2TAG_PACKET_12.0.2: | 
 | 278 |         movsd     128(%esp), %xmm0 | 
 | 279 |         addsd     %xmm0, %xmm0 | 
 | 280 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 281 | .L_2TAG_PACKET_14.0.2: | 
 | 282 |         addl      $16304, %eax | 
 | 283 |         cmpl      $15504, %eax | 
 | 284 |         jb        .L_2TAG_PACKET_15.0.2 | 
 | 285 |         movapd    1184(%ebx), %xmm2 | 
 | 286 |         pshufd    $68, %xmm0, %xmm1 | 
 | 287 |         movapd    1200(%ebx), %xmm3 | 
 | 288 |         movapd    1216(%ebx), %xmm4 | 
 | 289 |         movsd     1232(%ebx), %xmm5 | 
 | 290 |         mulsd     %xmm1, %xmm1 | 
 | 291 |         xorpd     %xmm6, %xmm6 | 
 | 292 |         movl      $16352, %eax | 
 | 293 |         pinsrw    $3, %eax, %xmm6 | 
 | 294 |         mulpd     %xmm0, %xmm2 | 
 | 295 |         xorpd     %xmm7, %xmm7 | 
 | 296 |         movl      $16368, %edx | 
 | 297 |         pinsrw    $3, %edx, %xmm7 | 
 | 298 |         addpd     %xmm3, %xmm2 | 
 | 299 |         mulsd     %xmm1, %xmm5 | 
 | 300 |         pshufd    $228, %xmm1, %xmm3 | 
 | 301 |         mulpd     %xmm1, %xmm1 | 
 | 302 |         mulsd     %xmm0, %xmm6 | 
 | 303 |         mulpd     %xmm0, %xmm2 | 
 | 304 |         addpd     %xmm4, %xmm2 | 
 | 305 |         movapd    %xmm7, %xmm4 | 
 | 306 |         addsd     %xmm6, %xmm7 | 
 | 307 |         mulpd     %xmm3, %xmm1 | 
 | 308 |         psrlq     $27, %xmm7 | 
 | 309 |         psllq     $27, %xmm7 | 
 | 310 |         movsd     1288(%ebx), %xmm3 | 
 | 311 |         subsd     %xmm7, %xmm4 | 
 | 312 |         mulpd     %xmm1, %xmm2 | 
 | 313 |         addsd     %xmm4, %xmm6 | 
 | 314 |         pshufd    $238, %xmm2, %xmm1 | 
 | 315 |         addsd     %xmm2, %xmm6 | 
 | 316 |         andpd     %xmm0, %xmm3 | 
 | 317 |         movapd    %xmm0, %xmm4 | 
 | 318 |         addsd     %xmm6, %xmm1 | 
 | 319 |         subsd     %xmm3, %xmm0 | 
 | 320 |         addsd     %xmm5, %xmm1 | 
 | 321 |         mulsd     %xmm7, %xmm3 | 
 | 322 |         mulsd     %xmm7, %xmm0 | 
 | 323 |         mulsd     %xmm1, %xmm4 | 
 | 324 |         addsd     %xmm4, %xmm0 | 
 | 325 |         addsd     %xmm3, %xmm0 | 
 | 326 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 327 | .L_2TAG_PACKET_15.0.2: | 
 | 328 |         cmpl      $16, %eax | 
 | 329 |         jae       .L_2TAG_PACKET_3.0.2 | 
 | 330 |         movapd    %xmm0, %xmm2 | 
 | 331 |         movd      %xmm0, %eax | 
 | 332 |         psrlq     $31, %xmm2 | 
 | 333 |         movd      %xmm2, %ecx | 
 | 334 |         orl       %ecx, %eax | 
 | 335 |         je        .L_2TAG_PACKET_3.0.2 | 
 | 336 |         movl      $16, %edx | 
 | 337 |         xorpd     %xmm1, %xmm1 | 
 | 338 |         pinsrw    $3, %edx, %xmm1 | 
 | 339 |         mulsd     %xmm1, %xmm1 | 
 | 340 |         movl      $42, %edx | 
 | 341 |         jmp       .L_2TAG_PACKET_8.0.2 | 
 | 342 | .L_2TAG_PACKET_0.0.2: | 
 | 343 |         cmpl      $0, %eax | 
 | 344 |         jl        .L_2TAG_PACKET_14.0.2 | 
 | 345 |         movl      132(%esp), %eax | 
 | 346 |         cmpl      $1083179008, %eax | 
 | 347 |         jge       .L_2TAG_PACKET_10.0.2 | 
 | 348 |         cmpl      $-1048576, %eax | 
 | 349 |         jae       .L_2TAG_PACKET_11.0.2 | 
 | 350 | .L_2TAG_PACKET_6.0.2: | 
 | 351 |         xorpd     %xmm0, %xmm0 | 
 | 352 |         movl      $49136, %eax | 
 | 353 |         pinsrw    $3, %eax, %xmm0 | 
 | 354 |         jmp       .L_2TAG_PACKET_4.0.2 | 
 | 355 | .L_2TAG_PACKET_4.0.2: | 
 | 356 |         movsd     %xmm0, 48(%esp) | 
 | 357 |         fldl      48(%esp) | 
 | 358 | .L_2TAG_PACKET_9.0.2: | 
 | 359 |         movl      64(%esp), %ebx | 
 | 360 |         movl      %ebp, %esp | 
 | 361 |         popl      %ebp | 
 | 362 |         ret        | 
 | 363 | ..B2.3: | 
 | 364 | END(expm1) | 
 | 365 | # -- End  expm1 | 
 | 366 |  | 
 | 367 | # Start file scope ASM | 
| Christopher Ferris | 6e86146 | 2015-03-14 12:17:45 -0700 | [diff] [blame] | 368 | ALIAS_SYMBOL(expm1l, expm1); | 
| Jingwei Zhang | 5d4f0e6 | 2014-10-31 18:29:18 +0800 | [diff] [blame] | 369 | # End file scope ASM | 
 | 370 | 	.section .rodata, "a" | 
 | 371 | 	.align 16 | 
 | 372 | 	.align 16 | 
 | 373 | static_const_table: | 
 | 374 | 	.long	0 | 
 | 375 | 	.long	4293918720 | 
 | 376 | 	.long	0 | 
 | 377 | 	.long	4293918720 | 
 | 378 | 	.long	4294967232 | 
 | 379 | 	.long	0 | 
 | 380 | 	.long	4294967232 | 
 | 381 | 	.long	0 | 
 | 382 | 	.long	65472 | 
 | 383 | 	.long	0 | 
 | 384 | 	.long	65472 | 
 | 385 | 	.long	0 | 
 | 386 | 	.long	0 | 
 | 387 | 	.long	1127743488 | 
 | 388 | 	.long	0 | 
 | 389 | 	.long	1127743488 | 
 | 390 | 	.long	1697350398 | 
 | 391 | 	.long	1079448903 | 
 | 392 | 	.long	1697350398 | 
 | 393 | 	.long	1079448903 | 
 | 394 | 	.long	4277796864 | 
 | 395 | 	.long	1065758274 | 
 | 396 | 	.long	4277796864 | 
 | 397 | 	.long	1065758274 | 
 | 398 | 	.long	3164486458 | 
 | 399 | 	.long	1025308570 | 
 | 400 | 	.long	3164486458 | 
 | 401 | 	.long	1025308570 | 
 | 402 | 	.long	1963358694 | 
 | 403 | 	.long	1065423121 | 
 | 404 | 	.long	1431655765 | 
 | 405 | 	.long	1069897045 | 
 | 406 | 	.long	1431655765 | 
 | 407 | 	.long	1067799893 | 
 | 408 | 	.long	0 | 
 | 409 | 	.long	1071644672 | 
 | 410 | 	.long	381774871 | 
 | 411 | 	.long	1062650220 | 
 | 412 | 	.long	381774871 | 
 | 413 | 	.long	1062650220 | 
 | 414 | 	.long	0 | 
 | 415 | 	.long	0 | 
 | 416 | 	.long	0 | 
 | 417 | 	.long	0 | 
 | 418 | 	.long	1000070955 | 
 | 419 | 	.long	1042145304 | 
 | 420 | 	.long	1040187392 | 
 | 421 | 	.long	11418 | 
 | 422 | 	.long	988267849 | 
 | 423 | 	.long	1039500660 | 
 | 424 | 	.long	3539992576 | 
 | 425 | 	.long	22960 | 
 | 426 | 	.long	36755401 | 
 | 427 | 	.long	1042114290 | 
 | 428 | 	.long	402653184 | 
 | 429 | 	.long	34629 | 
 | 430 | 	.long	3634769483 | 
 | 431 | 	.long	1042178627 | 
 | 432 | 	.long	1820327936 | 
 | 433 | 	.long	46424 | 
 | 434 | 	.long	2155991225 | 
 | 435 | 	.long	1041560680 | 
 | 436 | 	.long	847249408 | 
 | 437 | 	.long	58348 | 
 | 438 | 	.long	2766913307 | 
 | 439 | 	.long	1039293264 | 
 | 440 | 	.long	3489660928 | 
 | 441 | 	.long	70401 | 
 | 442 | 	.long	3651174602 | 
 | 443 | 	.long	1040488175 | 
 | 444 | 	.long	2927624192 | 
 | 445 | 	.long	82586 | 
 | 446 | 	.long	3073892131 | 
 | 447 | 	.long	1042240606 | 
 | 448 | 	.long	1006632960 | 
 | 449 | 	.long	94904 | 
 | 450 | 	.long	1328391742 | 
 | 451 | 	.long	1042019037 | 
 | 452 | 	.long	3942645760 | 
 | 453 | 	.long	107355 | 
 | 454 | 	.long	2650893825 | 
 | 455 | 	.long	1041903210 | 
 | 456 | 	.long	822083584 | 
 | 457 | 	.long	119943 | 
 | 458 | 	.long	2397289153 | 
 | 459 | 	.long	1041802037 | 
 | 460 | 	.long	2281701376 | 
 | 461 | 	.long	132667 | 
 | 462 | 	.long	430997175 | 
 | 463 | 	.long	1042110606 | 
 | 464 | 	.long	1845493760 | 
 | 465 | 	.long	145530 | 
 | 466 | 	.long	1230936525 | 
 | 467 | 	.long	1041801015 | 
 | 468 | 	.long	1702887424 | 
 | 469 | 	.long	158533 | 
 | 470 | 	.long	740675935 | 
 | 471 | 	.long	1040178913 | 
 | 472 | 	.long	4110417920 | 
 | 473 | 	.long	171677 | 
 | 474 | 	.long	3489810261 | 
 | 475 | 	.long	1041825986 | 
 | 476 | 	.long	2793406464 | 
 | 477 | 	.long	184965 | 
 | 478 | 	.long	2532600530 | 
 | 479 | 	.long	1040767882 | 
 | 480 | 	.long	167772160 | 
 | 481 | 	.long	198398 | 
 | 482 | 	.long	3542557060 | 
 | 483 | 	.long	1041827263 | 
 | 484 | 	.long	2986344448 | 
 | 485 | 	.long	211976 | 
 | 486 | 	.long	1401563777 | 
 | 487 | 	.long	1041061093 | 
 | 488 | 	.long	922746880 | 
 | 489 | 	.long	225703 | 
 | 490 | 	.long	3129406026 | 
 | 491 | 	.long	1041852413 | 
 | 492 | 	.long	880803840 | 
 | 493 | 	.long	239579 | 
 | 494 | 	.long	900993572 | 
 | 495 | 	.long	1039283234 | 
 | 496 | 	.long	1275068416 | 
 | 497 | 	.long	253606 | 
 | 498 | 	.long	2115029358 | 
 | 499 | 	.long	1042140042 | 
 | 500 | 	.long	562036736 | 
 | 501 | 	.long	267786 | 
 | 502 | 	.long	1086643152 | 
 | 503 | 	.long	1041785419 | 
 | 504 | 	.long	1610612736 | 
 | 505 | 	.long	282120 | 
 | 506 | 	.long	82864366 | 
 | 507 | 	.long	1041256244 | 
 | 508 | 	.long	3045064704 | 
 | 509 | 	.long	296610 | 
 | 510 | 	.long	2392968152 | 
 | 511 | 	.long	1040913683 | 
 | 512 | 	.long	3573547008 | 
 | 513 | 	.long	311258 | 
 | 514 | 	.long	2905856183 | 
 | 515 | 	.long	1040002214 | 
 | 516 | 	.long	1988100096 | 
 | 517 | 	.long	326066 | 
 | 518 | 	.long	3742008261 | 
 | 519 | 	.long	1040011137 | 
 | 520 | 	.long	1451229184 | 
 | 521 | 	.long	341035 | 
 | 522 | 	.long	863393794 | 
 | 523 | 	.long	1040880621 | 
 | 524 | 	.long	914358272 | 
 | 525 | 	.long	356167 | 
 | 526 | 	.long	1446136837 | 
 | 527 | 	.long	1041372426 | 
 | 528 | 	.long	3707764736 | 
 | 529 | 	.long	371463 | 
 | 530 | 	.long	927855201 | 
 | 531 | 	.long	1040617636 | 
 | 532 | 	.long	360710144 | 
 | 533 | 	.long	386927 | 
 | 534 | 	.long	1492679939 | 
 | 535 | 	.long	1041050306 | 
 | 536 | 	.long	2952790016 | 
 | 537 | 	.long	402558 | 
 | 538 | 	.long	608827001 | 
 | 539 | 	.long	1041582217 | 
 | 540 | 	.long	2181038080 | 
 | 541 | 	.long	418360 | 
 | 542 | 	.long	606260204 | 
 | 543 | 	.long	1042271987 | 
 | 544 | 	.long	1711276032 | 
 | 545 | 	.long	434334 | 
 | 546 | 	.long	3163044019 | 
 | 547 | 	.long	1041843851 | 
 | 548 | 	.long	1006632960 | 
 | 549 | 	.long	450482 | 
 | 550 | 	.long	4148747325 | 
 | 551 | 	.long	1041962972 | 
 | 552 | 	.long	3900702720 | 
 | 553 | 	.long	466805 | 
 | 554 | 	.long	802924201 | 
 | 555 | 	.long	1041275378 | 
 | 556 | 	.long	1442840576 | 
 | 557 | 	.long	483307 | 
 | 558 | 	.long	3052749833 | 
 | 559 | 	.long	1041940577 | 
 | 560 | 	.long	1937768448 | 
 | 561 | 	.long	499988 | 
 | 562 | 	.long	2216116399 | 
 | 563 | 	.long	1041486744 | 
 | 564 | 	.long	914358272 | 
 | 565 | 	.long	516851 | 
 | 566 | 	.long	2729697836 | 
 | 567 | 	.long	1041445764 | 
 | 568 | 	.long	2566914048 | 
 | 569 | 	.long	533897 | 
 | 570 | 	.long	540608356 | 
 | 571 | 	.long	1041310907 | 
 | 572 | 	.long	2600468480 | 
 | 573 | 	.long	551129 | 
 | 574 | 	.long	2916344493 | 
 | 575 | 	.long	1040535661 | 
 | 576 | 	.long	1107296256 | 
 | 577 | 	.long	568549 | 
 | 578 | 	.long	731391814 | 
 | 579 | 	.long	1039497014 | 
 | 580 | 	.long	2566914048 | 
 | 581 | 	.long	586158 | 
 | 582 | 	.long	1024722704 | 
 | 583 | 	.long	1041461625 | 
 | 584 | 	.long	2961178624 | 
 | 585 | 	.long	603959 | 
 | 586 | 	.long	3806831748 | 
 | 587 | 	.long	1041732499 | 
 | 588 | 	.long	2675965952 | 
 | 589 | 	.long	621954 | 
 | 590 | 	.long	238953304 | 
 | 591 | 	.long	1040316488 | 
 | 592 | 	.long	2189426688 | 
 | 593 | 	.long	640145 | 
 | 594 | 	.long	749123235 | 
 | 595 | 	.long	1041725785 | 
 | 596 | 	.long	2063597568 | 
 | 597 | 	.long	658534 | 
 | 598 | 	.long	1168187977 | 
 | 599 | 	.long	1041175214 | 
 | 600 | 	.long	2986344448 | 
 | 601 | 	.long	677123 | 
 | 602 | 	.long	3506096399 | 
 | 603 | 	.long	1042186095 | 
 | 604 | 	.long	1426063360 | 
 | 605 | 	.long	695915 | 
 | 606 | 	.long	1470221620 | 
 | 607 | 	.long	1041675499 | 
 | 608 | 	.long	2566914048 | 
 | 609 | 	.long	714911 | 
 | 610 | 	.long	3182425146 | 
 | 611 | 	.long	1041483134 | 
 | 612 | 	.long	3087007744 | 
 | 613 | 	.long	734114 | 
 | 614 | 	.long	3131698208 | 
 | 615 | 	.long	1042208657 | 
 | 616 | 	.long	4068474880 | 
 | 617 | 	.long	753526 | 
 | 618 | 	.long	2300504125 | 
 | 619 | 	.long	1041428596 | 
 | 620 | 	.long	2415919104 | 
 | 621 | 	.long	773150 | 
 | 622 | 	.long	2290297931 | 
 | 623 | 	.long	1037388400 | 
 | 624 | 	.long	3716153344 | 
 | 625 | 	.long	792987 | 
 | 626 | 	.long	3532148223 | 
 | 627 | 	.long	1041626194 | 
 | 628 | 	.long	771751936 | 
 | 629 | 	.long	813041 | 
 | 630 | 	.long	1161884404 | 
 | 631 | 	.long	1042015258 | 
 | 632 | 	.long	3699376128 | 
 | 633 | 	.long	833312 | 
 | 634 | 	.long	876383176 | 
 | 635 | 	.long	1037968878 | 
 | 636 | 	.long	1241513984 | 
 | 637 | 	.long	853805 | 
 | 638 | 	.long	3379986796 | 
 | 639 | 	.long	1042213153 | 
 | 640 | 	.long	3699376128 | 
 | 641 | 	.long	874520 | 
 | 642 | 	.long	1545797737 | 
 | 643 | 	.long	1041681569 | 
 | 644 | 	.long	58720256 | 
 | 645 | 	.long	895462 | 
 | 646 | 	.long	2925146801 | 
 | 647 | 	.long	1042212567 | 
 | 648 | 	.long	855638016 | 
 | 649 | 	.long	916631 | 
 | 650 | 	.long	1316627971 | 
 | 651 | 	.long	1038516204 | 
 | 652 | 	.long	3883925504 | 
 | 653 | 	.long	938030 | 
 | 654 | 	.long	3267869137 | 
 | 655 | 	.long	1040337004 | 
 | 656 | 	.long	2726297600 | 
 | 657 | 	.long	959663 | 
 | 658 | 	.long	3720868999 | 
 | 659 | 	.long	1041782409 | 
 | 660 | 	.long	3992977408 | 
 | 661 | 	.long	981531 | 
 | 662 | 	.long	433316142 | 
 | 663 | 	.long	1041994064 | 
 | 664 | 	.long	1526726656 | 
 | 665 | 	.long	1003638 | 
 | 666 | 	.long	781232103 | 
 | 667 | 	.long	1040093400 | 
 | 668 | 	.long	2172649472 | 
 | 669 | 	.long	1025985 | 
 | 670 | 	.long	2773927732 | 
 | 671 | 	.long	1053236707 | 
 | 672 | 	.long	381774871 | 
 | 673 | 	.long	1062650220 | 
 | 674 | 	.long	379653899 | 
 | 675 | 	.long	1056571845 | 
 | 676 | 	.long	286331153 | 
 | 677 | 	.long	1065423121 | 
 | 678 | 	.long	436314138 | 
 | 679 | 	.long	1059717536 | 
 | 680 | 	.long	1431655765 | 
 | 681 | 	.long	1067799893 | 
 | 682 | 	.long	1431655765 | 
 | 683 | 	.long	1069897045 | 
 | 684 | 	.long	0 | 
 | 685 | 	.long	1071644672 | 
 | 686 | 	.long	0 | 
 | 687 | 	.long	1072693248 | 
 | 688 | 	.long	0 | 
 | 689 | 	.long	2146435072 | 
 | 690 | 	.long	0 | 
 | 691 | 	.long	0 | 
 | 692 | 	.long	4294967295 | 
 | 693 | 	.long	2146435071 | 
 | 694 | 	.long	0 | 
 | 695 | 	.long	1048576 | 
 | 696 | 	.long	4227858432 | 
 | 697 | 	.long	4294967295 | 
 | 698 | 	.type	static_const_table,@object | 
 | 699 | 	.size	static_const_table,1296 | 
 | 700 | 	.data | 
| Stephen Hines | c68ec15 | 2020-08-21 12:12:46 -0700 | [diff] [blame] | 701 | 	.section .note.GNU-stack, "",@progbits | 
| Jingwei Zhang | 5d4f0e6 | 2014-10-31 18:29:18 +0800 | [diff] [blame] | 702 | # End |