From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7852) id 60E0D3857C75; Tue, 8 Mar 2022 06:14:12 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 60E0D3857C75 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Sunil Pandey To: glibc-cvs@sourceware.org Subject: [glibc] x86_64: Fix svml_s_tanf16_core_avx512.S code formatting X-Act-Checkin: glibc X-Git-Author: Sunil K Pandey X-Git-Refname: refs/heads/master X-Git-Oldrev: a9f782823f211333409e3f39d3e29240693c9df1 X-Git-Newrev: fa2a051dd9e29ccd4ca87f898654f7d451a2833a Message-Id: <20220308061412.60E0D3857C75@sourceware.org> Date: Tue, 8 Mar 2022 06:14:12 +0000 (GMT) X-BeenThere: glibc-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Glibc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Mar 2022 06:14:12 -0000 https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fa2a051dd9e29ccd4ca87f898654f7d451a2833a commit fa2a051dd9e29ccd4ca87f898654f7d451a2833a Author: Sunil K Pandey Date: Mon Mar 7 10:47:14 2022 -0800 x86_64: Fix svml_s_tanf16_core_avx512.S code formatting This commit contains following formatting changes 1. Instructions proceeded by a tab. 2. Instruction less than 8 characters in length have a tab between it and the first operand. 3. Instruction greater than 7 characters in length have a space between it and the first operand. 4. Tabs after `#define`d names and their value. 5. 8 space at the beginning of line replaced by tab. 6. Indent comments with code. 7. Remove redundent .text section. 8. 1 space between line content and line comment. 9. Space after all commas. Reviewed-by: Noah Goldstein Diff: --- .../fpu/multiarch/svml_s_tanf16_core_avx512.S | 1633 ++++++++++---------- 1 file changed, 815 insertions(+), 818 deletions(-) diff --git a/sysdeps/x86_64/fpu/multiarch/svml_s_tanf16_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_s_tanf16_core_avx512.S index fc44c37d4a..f2a18f0b2c 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_s_tanf16_core_avx512.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_s_tanf16_core_avx512.S @@ -34,894 +34,891 @@ /* Offsets for data table __svml_stan_data_internal */ -#define _sInvPI_uisa 0 -#define _sPI1_uisa 64 -#define _sPI2_uisa 128 -#define _sPI3_uisa 192 -#define Th_tbl_uisa 256 -#define _sPC3_uisa 384 -#define _sPC5_uisa 448 -#define _sRangeReductionVal_uisa 512 -#define _sAbsMask 576 -#define _sRangeVal 640 -#define _sRShifter 704 -#define _sOne 768 -#define _sRangeReductionVal 832 -#define _sPI1 896 -#define _sPI2 960 -#define _sPI3 1024 +#define _sInvPI_uisa 0 +#define _sPI1_uisa 64 +#define _sPI2_uisa 128 +#define _sPI3_uisa 192 +#define Th_tbl_uisa 256 +#define _sPC3_uisa 384 +#define _sPC5_uisa 448 +#define _sRangeReductionVal_uisa 512 +#define _sAbsMask 576 +#define _sRangeVal 640 +#define _sRShifter 704 +#define _sOne 768 +#define _sRangeReductionVal 832 +#define _sPI1 896 +#define _sPI2 960 +#define _sPI3 1024 #include - .text - .section .text.exex512,"ax",@progbits + .section .text.exex512, "ax", @progbits ENTRY(_ZGVeN16v_tanf_skx) - pushq %rbp - cfi_def_cfa_offset(16) - movq %rsp, %rbp - cfi_def_cfa(6, 16) - cfi_offset(6, -16) - andq $-64, %rsp - subq $192, %rsp - xorl %edx, %edx - -/* Large values check */ - vmovups _sRangeReductionVal_uisa+__svml_stan_data_internal(%rip), %zmm10 - -/* - * - * Main path - * - * start arg. reduction - */ - vmovups _sRShifter+__svml_stan_data_internal(%rip), %zmm1 - vmovups _sPI1_uisa+__svml_stan_data_internal(%rip), %zmm4 - vmovups _sPI2_uisa+__svml_stan_data_internal(%rip), %zmm2 - vmovups _sPI3_uisa+__svml_stan_data_internal(%rip), %zmm3 - vmovaps %zmm0, %zmm11 - vandps _sAbsMask+__svml_stan_data_internal(%rip), %zmm11, %zmm0 - vcmpps $22, {sae}, %zmm10, %zmm0, %k6 - vmovups __svml_stan_data_internal(%rip), %zmm10 - -/* - * - * End of main path - */ - - kortestw %k6, %k6 - vfmadd213ps {rn-sae}, %zmm1, %zmm11, %zmm10 - vsubps {rn-sae}, %zmm1, %zmm10, %zmm5 - vfnmadd213ps {rn-sae}, %zmm11, %zmm5, %zmm4 - vfnmadd231ps {rn-sae}, %zmm5, %zmm2, %zmm4 - vfnmadd213ps {rn-sae}, %zmm4, %zmm3, %zmm5 - -/* Go to auxilary branch */ - jne L(AUX_BRANCH) - # LOE rbx r12 r13 r14 r15 edx zmm0 zmm5 zmm10 zmm11 k6 - -/* Return from auxilary branch - * for out of main path inputs - */ + pushq %rbp + cfi_def_cfa_offset(16) + movq %rsp, %rbp + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + andq $-64, %rsp + subq $192, %rsp + xorl %edx, %edx + + /* Large values check */ + vmovups _sRangeReductionVal_uisa+__svml_stan_data_internal(%rip), %zmm10 + + /* + * + * Main path + * + * start arg. reduction + */ + vmovups _sRShifter+__svml_stan_data_internal(%rip), %zmm1 + vmovups _sPI1_uisa+__svml_stan_data_internal(%rip), %zmm4 + vmovups _sPI2_uisa+__svml_stan_data_internal(%rip), %zmm2 + vmovups _sPI3_uisa+__svml_stan_data_internal(%rip), %zmm3 + vmovaps %zmm0, %zmm11 + vandps _sAbsMask+__svml_stan_data_internal(%rip), %zmm11, %zmm0 + vcmpps $22, {sae}, %zmm10, %zmm0, %k6 + vmovups __svml_stan_data_internal(%rip), %zmm10 + + /* + * + * End of main path + */ + + kortestw %k6, %k6 + vfmadd213ps {rn-sae}, %zmm1, %zmm11, %zmm10 + vsubps {rn-sae}, %zmm1, %zmm10, %zmm5 + vfnmadd213ps {rn-sae}, %zmm11, %zmm5, %zmm4 + vfnmadd231ps {rn-sae}, %zmm5, %zmm2, %zmm4 + vfnmadd213ps {rn-sae}, %zmm4, %zmm3, %zmm5 + + /* Go to auxilary branch */ + jne L(AUX_BRANCH) + # LOE rbx r12 r13 r14 r15 edx zmm0 zmm5 zmm10 zmm11 k6 + + /* Return from auxilary branch + * for out of main path inputs + */ L(AUX_BRANCH_RETURN): -/* Table lookup */ - vmovups Th_tbl_uisa+__svml_stan_data_internal(%rip), %zmm3 - vmovups _sPC3_uisa+__svml_stan_data_internal(%rip), %zmm0 - vmulps {rn-sae}, %zmm5, %zmm5, %zmm1 - vpermt2ps Th_tbl_uisa+64+__svml_stan_data_internal(%rip), %zmm10, %zmm3 - vmovups _sPC5_uisa+__svml_stan_data_internal(%rip), %zmm10 - vfmadd231ps {rn-sae}, %zmm1, %zmm10, %zmm0 - vmulps {rn-sae}, %zmm5, %zmm0, %zmm4 - vfmadd213ps {rn-sae}, %zmm5, %zmm1, %zmm4 - -/* - * Computer Denominator: - * sDenominator - sDlow ~= 1-(sTh+sTl)*(sP+sPlow) - */ - vmovups _sOne+__svml_stan_data_internal(%rip), %zmm5 - vmulps {rn-sae}, %zmm4, %zmm3, %zmm7 - -/* - * Compute Numerator: - * sNumerator + sNlow ~= sTh+sTl+sP+sPlow - */ - vaddps {rn-sae}, %zmm3, %zmm4, %zmm8 - vsubps {rn-sae}, %zmm7, %zmm5, %zmm9 - vsubps {rn-sae}, %zmm3, %zmm8, %zmm2 - -/* - * Now computes (sNumerator + sNlow)/(sDenominator - sDlow) - * Choose NR iteration instead of hardware division - */ - vrcp14ps %zmm9, %zmm14 - vsubps {rn-sae}, %zmm5, %zmm9, %zmm6 - vsubps {rn-sae}, %zmm2, %zmm4, %zmm13 - vmulps {rn-sae}, %zmm8, %zmm14, %zmm15 - vaddps {rn-sae}, %zmm7, %zmm6, %zmm12 - -/* One NR iteration to refine sQuotient */ - vfmsub213ps {rn-sae}, %zmm8, %zmm15, %zmm9 - vfnmadd213ps {rn-sae}, %zmm9, %zmm15, %zmm12 - vsubps {rn-sae}, %zmm13, %zmm12, %zmm0 - vfnmadd213ps {rn-sae}, %zmm15, %zmm14, %zmm0 - testl %edx, %edx - -/* Go to special inputs processing branch */ - jne L(SPECIAL_VALUES_BRANCH) - # LOE rbx r12 r13 r14 r15 edx zmm0 zmm11 - -/* Restore registers - * and exit the function - */ + /* Table lookup */ + vmovups Th_tbl_uisa+__svml_stan_data_internal(%rip), %zmm3 + vmovups _sPC3_uisa+__svml_stan_data_internal(%rip), %zmm0 + vmulps {rn-sae}, %zmm5, %zmm5, %zmm1 + vpermt2ps Th_tbl_uisa+64+__svml_stan_data_internal(%rip), %zmm10, %zmm3 + vmovups _sPC5_uisa+__svml_stan_data_internal(%rip), %zmm10 + vfmadd231ps {rn-sae}, %zmm1, %zmm10, %zmm0 + vmulps {rn-sae}, %zmm5, %zmm0, %zmm4 + vfmadd213ps {rn-sae}, %zmm5, %zmm1, %zmm4 + + /* + * Computer Denominator: + * sDenominator - sDlow ~= 1-(sTh+sTl)*(sP+sPlow) + */ + vmovups _sOne+__svml_stan_data_internal(%rip), %zmm5 + vmulps {rn-sae}, %zmm4, %zmm3, %zmm7 + + /* + * Compute Numerator: + * sNumerator + sNlow ~= sTh+sTl+sP+sPlow + */ + vaddps {rn-sae}, %zmm3, %zmm4, %zmm8 + vsubps {rn-sae}, %zmm7, %zmm5, %zmm9 + vsubps {rn-sae}, %zmm3, %zmm8, %zmm2 + + /* + * Now computes (sNumerator + sNlow)/(sDenominator - sDlow) + * Choose NR iteration instead of hardware division + */ + vrcp14ps %zmm9, %zmm14 + vsubps {rn-sae}, %zmm5, %zmm9, %zmm6 + vsubps {rn-sae}, %zmm2, %zmm4, %zmm13 + vmulps {rn-sae}, %zmm8, %zmm14, %zmm15 + vaddps {rn-sae}, %zmm7, %zmm6, %zmm12 + + /* One NR iteration to refine sQuotient */ + vfmsub213ps {rn-sae}, %zmm8, %zmm15, %zmm9 + vfnmadd213ps {rn-sae}, %zmm9, %zmm15, %zmm12 + vsubps {rn-sae}, %zmm13, %zmm12, %zmm0 + vfnmadd213ps {rn-sae}, %zmm15, %zmm14, %zmm0 + testl %edx, %edx + + /* Go to special inputs processing branch */ + jne L(SPECIAL_VALUES_BRANCH) + # LOE rbx r12 r13 r14 r15 edx zmm0 zmm11 + + /* Restore registers + * and exit the function + */ L(EXIT): - movq %rbp, %rsp - popq %rbp - cfi_def_cfa(7, 8) - cfi_restore(6) - ret - cfi_def_cfa(6, 16) - cfi_offset(6, -16) - -/* Branch to process - * special inputs - */ + movq %rbp, %rsp + popq %rbp + cfi_def_cfa(7, 8) + cfi_restore(6) + ret + cfi_def_cfa(6, 16) + cfi_offset(6, -16) + + /* Branch to process + * special inputs + */ L(SPECIAL_VALUES_BRANCH): - vmovups %zmm11, 64(%rsp) - vmovups %zmm0, 128(%rsp) - # LOE rbx r12 r13 r14 r15 edx zmm0 - - xorl %eax, %eax - # LOE rbx r12 r13 r14 r15 eax edx - - vzeroupper - movq %r12, 16(%rsp) - /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -176; DW_OP_plus) */ - .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 - movl %eax, %r12d - movq %r13, 8(%rsp) - /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ - .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 - movl %edx, %r13d - movq %r14, (%rsp) - /* DW_CFA_expression: r14 (r14) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ - .cfi_escape 0x10, 0x0e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 - # LOE rbx r15 r12d r13d - -/* Range mask - * bits check - */ + vmovups %zmm11, 64(%rsp) + vmovups %zmm0, 128(%rsp) + # LOE rbx r12 r13 r14 r15 edx zmm0 + + xorl %eax, %eax + # LOE rbx r12 r13 r14 r15 eax edx + + vzeroupper + movq %r12, 16(%rsp) + /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -176; DW_OP_plus) */ + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + movl %eax, %r12d + movq %r13, 8(%rsp) + /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + movl %edx, %r13d + movq %r14, (%rsp) + /* DW_CFA_expression: r14 (r14) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ + .cfi_escape 0x10, 0x0e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + # LOE rbx r15 r12d r13d + + /* Range mask + * bits check + */ L(RANGEMASK_CHECK): - btl %r12d, %r13d + btl %r12d, %r13d -/* Call scalar math function */ - jc L(SCALAR_MATH_CALL) - # LOE rbx r15 r12d r13d + /* Call scalar math function */ + jc L(SCALAR_MATH_CALL) + # LOE rbx r15 r12d r13d -/* Special inputs - * processing loop - */ + /* Special inputs + * processing loop + */ L(SPECIAL_VALUES_LOOP): - incl %r12d - cmpl $16, %r12d - -/* Check bits in range mask */ - jl L(RANGEMASK_CHECK) - # LOE rbx r15 r12d r13d - - movq 16(%rsp), %r12 - cfi_restore(12) - movq 8(%rsp), %r13 - cfi_restore(13) - movq (%rsp), %r14 - cfi_restore(14) - vmovups 128(%rsp), %zmm0 - -/* Go to exit */ - jmp L(EXIT) - /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -176; DW_OP_plus) */ - .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 - /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ - .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 - /* DW_CFA_expression: r14 (r14) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ - .cfi_escape 0x10, 0x0e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 - # LOE rbx r12 r13 r14 r15 zmm0 - -/* Scalar math fucntion call - * to process special input - */ + incl %r12d + cmpl $16, %r12d + + /* Check bits in range mask */ + jl L(RANGEMASK_CHECK) + # LOE rbx r15 r12d r13d + + movq 16(%rsp), %r12 + cfi_restore(12) + movq 8(%rsp), %r13 + cfi_restore(13) + movq (%rsp), %r14 + cfi_restore(14) + vmovups 128(%rsp), %zmm0 + + /* Go to exit */ + jmp L(EXIT) + /* DW_CFA_expression: r12 (r12) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -176; DW_OP_plus) */ + .cfi_escape 0x10, 0x0c, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x50, 0xff, 0xff, 0xff, 0x22 + /* DW_CFA_expression: r13 (r13) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -184; DW_OP_plus) */ + .cfi_escape 0x10, 0x0d, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x48, 0xff, 0xff, 0xff, 0x22 + /* DW_CFA_expression: r14 (r14) (DW_OP_lit8; DW_OP_minus; DW_OP_const4s: -64; DW_OP_and; DW_OP_const4s: -192; DW_OP_plus) */ + .cfi_escape 0x10, 0x0e, 0x0e, 0x38, 0x1c, 0x0d, 0xc0, 0xff, 0xff, 0xff, 0x1a, 0x0d, 0x40, 0xff, 0xff, 0xff, 0x22 + # LOE rbx r12 r13 r14 r15 zmm0 + + /* Scalar math fucntion call + * to process special input + */ L(SCALAR_MATH_CALL): - movl %r12d, %r14d - movss 64(%rsp,%r14,4), %xmm0 - call tanf@PLT - # LOE rbx r14 r15 r12d r13d xmm0 - - movss %xmm0, 128(%rsp,%r14,4) - -/* Process special inputs in loop */ - jmp L(SPECIAL_VALUES_LOOP) - cfi_restore(12) - cfi_restore(13) - cfi_restore(14) - # LOE rbx r15 r12d r13d - -/* Auxilary branch - * for out of main path inputs - */ + movl %r12d, %r14d + movss 64(%rsp, %r14, 4), %xmm0 + call tanf@PLT + # LOE rbx r14 r15 r12d r13d xmm0 -L(AUX_BRANCH): - vmovups _sRangeVal+__svml_stan_data_internal(%rip), %zmm6 + movss %xmm0, 128(%rsp, %r14, 4) -/* - * Get the (2^a / 2pi) mod 1 values from the table. - * Because doesn't have I-type gather, we need a trivial cast - */ - lea __svml_stan_reduction_data_internal(%rip), %rax - vmovups %zmm5, (%rsp) - vandps %zmm0, %zmm6, %zmm14 - vcmpps $0, {sae}, %zmm6, %zmm14, %k0 + /* Process special inputs in loop */ + jmp L(SPECIAL_VALUES_LOOP) + cfi_restore(12) + cfi_restore(13) + cfi_restore(14) + # LOE rbx r15 r12d r13d -/* - * Break the P_xxx and m into 16-bit chunks ready for - * the long multiplication via 16x16->32 multiplications - */ - vmovups .FLT_15(%rip), %zmm6 - kxnorw %k0, %k0, %k1 - kxnorw %k0, %k0, %k2 - kxnorw %k0, %k0, %k3 - kmovw %k0, %edx - vpandd .FLT_12(%rip), %zmm11, %zmm5 - vpsrld $23, %zmm5, %zmm7 - vpslld $1, %zmm7, %zmm8 - vpaddd %zmm7, %zmm8, %zmm9 - vpslld $2, %zmm9, %zmm4 - vpxord %zmm3, %zmm3, %zmm3 - vpxord %zmm15, %zmm15, %zmm15 - vpxord %zmm2, %zmm2, %zmm2 - vgatherdps (%rax,%zmm4), %zmm3{%k1} - vgatherdps 4(%rax,%zmm4), %zmm15{%k2} - vgatherdps 8(%rax,%zmm4), %zmm2{%k3} - vpsrld $16, %zmm3, %zmm5 - vpsrld $16, %zmm2, %zmm13 - -/* - * Also get the significand as an integer - * NB: adding in the integer bit is wrong for denorms! - * To make this work for denorms we should do something slightly different - */ - vpandd .FLT_13(%rip), %zmm11, %zmm0 - vpaddd .FLT_14(%rip), %zmm0, %zmm1 - vpsrld $16, %zmm15, %zmm0 - vpsrld $16, %zmm1, %zmm8 - vpandd %zmm6, %zmm3, %zmm9 - vpandd %zmm6, %zmm15, %zmm12 - vpandd %zmm6, %zmm2, %zmm7 - vpandd %zmm6, %zmm1, %zmm14 - -/* Now do the big multiplication and carry propagation */ - vpmulld %zmm9, %zmm8, %zmm4 - vpmulld %zmm0, %zmm8, %zmm3 - vpmulld %zmm12, %zmm8, %zmm2 - vpmulld %zmm13, %zmm8, %zmm1 - vpmulld %zmm7, %zmm8, %zmm8 - vpmulld %zmm5, %zmm14, %zmm7 - vpmulld %zmm9, %zmm14, %zmm5 - vpmulld %zmm0, %zmm14, %zmm9 - vpmulld %zmm12, %zmm14, %zmm0 - vpmulld %zmm13, %zmm14, %zmm12 - vpsrld $16, %zmm12, %zmm14 - vpsrld $16, %zmm0, %zmm13 - vpsrld $16, %zmm9, %zmm15 - vpsrld $16, %zmm5, %zmm12 - vpsrld $16, %zmm8, %zmm8 - vpaddd %zmm14, %zmm1, %zmm1 - vpaddd %zmm13, %zmm2, %zmm2 - vpaddd %zmm15, %zmm3, %zmm15 - vpaddd %zmm12, %zmm4, %zmm3 - vpandd %zmm6, %zmm0, %zmm13 - vpaddd %zmm1, %zmm13, %zmm4 - vpaddd %zmm4, %zmm8, %zmm14 - vpsrld $16, %zmm14, %zmm0 - vpandd %zmm6, %zmm9, %zmm9 - vpaddd %zmm2, %zmm9, %zmm1 - vpaddd %zmm1, %zmm0, %zmm8 - -/* - * Now round at the 2^-8 bit position for reduction mod pi/2^7 - * instead of the original 2pi (but still with the same 2pi scaling). - * Use a shifter of 2^15 + 2^14. - * The N we get is our final version; it has an offset of - * 2^8 because of the implicit integer bit, and anyway for negative - * starting value it's a 2s complement thing. But we need to mask - * off the exponent part anyway so it's fine. - */ - vmovups .FLT_18(%rip), %zmm1 - vpandd %zmm6, %zmm7, %zmm7 - vpaddd %zmm3, %zmm7, %zmm13 - vpsrld $16, %zmm8, %zmm3 - vpandd %zmm6, %zmm5, %zmm5 - vpaddd %zmm15, %zmm5, %zmm2 - vpaddd %zmm2, %zmm3, %zmm15 - vpsrld $16, %zmm15, %zmm12 - vpaddd %zmm13, %zmm12, %zmm5 - -/* Assemble reduced argument from the pieces */ - vpandd %zmm6, %zmm14, %zmm9 - vpandd %zmm6, %zmm15, %zmm7 - vpslld $16, %zmm5, %zmm6 - vpslld $16, %zmm8, %zmm5 - vpaddd %zmm7, %zmm6, %zmm4 - vpaddd %zmm9, %zmm5, %zmm9 - vpsrld $9, %zmm4, %zmm6 - -/* - * We want to incorporate the original sign now too. - * Do it here for convenience in getting the right N value, - * though we could wait right to the end if we were prepared - * to modify the sign of N later too. - * So get the appropriate sign mask now (or sooner). - */ - vpandd .FLT_16(%rip), %zmm11, %zmm0 - vpandd .FLT_21(%rip), %zmm9, %zmm13 - vpslld $5, %zmm13, %zmm14 - -/* - * Create floating-point high part, implicitly adding integer bit 1 - * Incorporate overall sign at this stage too. - */ - vpxord .FLT_17(%rip), %zmm0, %zmm8 - vpord %zmm8, %zmm6, %zmm2 - vaddps {rn-sae}, %zmm2, %zmm1, %zmm12 - vsubps {rn-sae}, %zmm1, %zmm12, %zmm3 - vsubps {rn-sae}, %zmm3, %zmm2, %zmm7 - -/* - * Create floating-point low and medium parts, respectively - * lo_17, ... lo_0, 0, ..., 0 - * hi_8, ... hi_0, lo_31, ..., lo_18 - * then subtract off the implicitly added integer bits, - * 2^-46 and 2^-23, respectively. - * Put the original sign into all of them at this stage. - */ - vpxord .FLT_20(%rip), %zmm0, %zmm6 - vpord %zmm6, %zmm14, %zmm15 - vpandd .FLT_23(%rip), %zmm4, %zmm4 - vsubps {rn-sae}, %zmm6, %zmm15, %zmm8 - vandps .FLT_26(%rip), %zmm11, %zmm15 - vpsrld $18, %zmm9, %zmm6 + /* Auxilary branch + * for out of main path inputs + */ -/* - * If the magnitude of the input is <= 2^-20, then - * just pass through the input, since no reduction will be needed and - * the main path will only work accurately if the reduced argument is - * about >= 2^-40 (which it is for all large pi multiples) - */ - vmovups .FLT_27(%rip), %zmm14 - vcmpps $26, {sae}, %zmm14, %zmm15, %k4 - vcmpps $22, {sae}, %zmm14, %zmm15, %k5 - vpxord .FLT_22(%rip), %zmm0, %zmm1 - vpslld $14, %zmm4, %zmm0 - vpord %zmm6, %zmm0, %zmm0 - vpord %zmm1, %zmm0, %zmm4 - vsubps {rn-sae}, %zmm1, %zmm4, %zmm2 - vpternlogd $255, %zmm6, %zmm6, %zmm6 - -/* Now add them up into 2 reasonably aligned pieces */ - vaddps {rn-sae}, %zmm2, %zmm7, %zmm13 - vsubps {rn-sae}, %zmm13, %zmm7, %zmm7 - vaddps {rn-sae}, %zmm7, %zmm2, %zmm3 - -/* - * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND - * Set sRp2 = _VRES_R^2 and then resume the original code. - */ - vmovups .FLT_28(%rip), %zmm2 - vaddps {rn-sae}, %zmm8, %zmm3, %zmm1 - vmovups .FLT_25(%rip), %zmm8 - -/* Grab our final N value as an integer, appropriately masked mod 2^8 */ - vpandd .FLT_19(%rip), %zmm12, %zmm5 - -/* - * Now multiply those numbers all by 2 pi, reasonably accurately. - * (RHi + RLo) * (pi_lead + pi_trail) ~= - * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead) - */ - vmovups .FLT_24(%rip), %zmm12 - vmulps {rn-sae}, %zmm12, %zmm13, %zmm0 - vmovaps %zmm12, %zmm9 - vfmsub213ps {rn-sae}, %zmm0, %zmm13, %zmm9 - vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm13 - vmovaps %zmm6, %zmm8 - vfmadd213ps {rn-sae}, %zmm13, %zmm12, %zmm1 - vpandnd %zmm15, %zmm15, %zmm8{%k4} - vpandnd %zmm15, %zmm15, %zmm6{%k5} - vandps %zmm11, %zmm6, %zmm14 - vandps %zmm0, %zmm8, %zmm15 - vandps %zmm1, %zmm8, %zmm12 - vorps %zmm15, %zmm14, %zmm6 - vpsrld $31, %zmm6, %zmm3 - vpsubd %zmm3, %zmm2, %zmm4 - vpaddd %zmm4, %zmm5, %zmm7 - vpsrld $2, %zmm7, %zmm13 - vpslld $2, %zmm13, %zmm9 - -/* - * - * End of large arguments path - * - * Merge results from main and large paths: - */ - vblendmps %zmm13, %zmm10, %zmm10{%k6} - vpsubd %zmm9, %zmm5, %zmm5 - vmovups .FLT_29(%rip), %zmm9 - vcvtdq2ps {rn-sae}, %zmm5, %zmm0 - vmovups .FLT_30(%rip), %zmm5 - vfmadd231ps {rn-sae}, %zmm0, %zmm5, %zmm12 - vmovups (%rsp), %zmm5 - vaddps {rn-sae}, %zmm6, %zmm12, %zmm6 - vfmadd213ps {rn-sae}, %zmm6, %zmm9, %zmm0 - vblendmps %zmm0, %zmm5, %zmm5{%k6} - -/* Return to main vector processing path */ - jmp L(AUX_BRANCH_RETURN) - # LOE rbx r12 r13 r14 r15 edx zmm5 zmm10 zmm11 +L(AUX_BRANCH): + vmovups _sRangeVal+__svml_stan_data_internal(%rip), %zmm6 + + /* + * Get the (2^a / 2pi) mod 1 values from the table. + * Because doesn't have I-type gather, we need a trivial cast + */ + lea __svml_stan_reduction_data_internal(%rip), %rax + vmovups %zmm5, (%rsp) + vandps %zmm0, %zmm6, %zmm14 + vcmpps $0, {sae}, %zmm6, %zmm14, %k0 + + /* + * Break the P_xxx and m into 16-bit chunks ready for + * the long multiplication via 16x16->32 multiplications + */ + vmovups .FLT_15(%rip), %zmm6 + kxnorw %k0, %k0, %k1 + kxnorw %k0, %k0, %k2 + kxnorw %k0, %k0, %k3 + kmovw %k0, %edx + vpandd .FLT_12(%rip), %zmm11, %zmm5 + vpsrld $23, %zmm5, %zmm7 + vpslld $1, %zmm7, %zmm8 + vpaddd %zmm7, %zmm8, %zmm9 + vpslld $2, %zmm9, %zmm4 + vpxord %zmm3, %zmm3, %zmm3 + vpxord %zmm15, %zmm15, %zmm15 + vpxord %zmm2, %zmm2, %zmm2 + vgatherdps (%rax, %zmm4), %zmm3{%k1} + vgatherdps 4(%rax, %zmm4), %zmm15{%k2} + vgatherdps 8(%rax, %zmm4), %zmm2{%k3} + vpsrld $16, %zmm3, %zmm5 + vpsrld $16, %zmm2, %zmm13 + + /* + * Also get the significand as an integer + * NB: adding in the integer bit is wrong for denorms! + * To make this work for denorms we should do something slightly different + */ + vpandd .FLT_13(%rip), %zmm11, %zmm0 + vpaddd .FLT_14(%rip), %zmm0, %zmm1 + vpsrld $16, %zmm15, %zmm0 + vpsrld $16, %zmm1, %zmm8 + vpandd %zmm6, %zmm3, %zmm9 + vpandd %zmm6, %zmm15, %zmm12 + vpandd %zmm6, %zmm2, %zmm7 + vpandd %zmm6, %zmm1, %zmm14 + + /* Now do the big multiplication and carry propagation */ + vpmulld %zmm9, %zmm8, %zmm4 + vpmulld %zmm0, %zmm8, %zmm3 + vpmulld %zmm12, %zmm8, %zmm2 + vpmulld %zmm13, %zmm8, %zmm1 + vpmulld %zmm7, %zmm8, %zmm8 + vpmulld %zmm5, %zmm14, %zmm7 + vpmulld %zmm9, %zmm14, %zmm5 + vpmulld %zmm0, %zmm14, %zmm9 + vpmulld %zmm12, %zmm14, %zmm0 + vpmulld %zmm13, %zmm14, %zmm12 + vpsrld $16, %zmm12, %zmm14 + vpsrld $16, %zmm0, %zmm13 + vpsrld $16, %zmm9, %zmm15 + vpsrld $16, %zmm5, %zmm12 + vpsrld $16, %zmm8, %zmm8 + vpaddd %zmm14, %zmm1, %zmm1 + vpaddd %zmm13, %zmm2, %zmm2 + vpaddd %zmm15, %zmm3, %zmm15 + vpaddd %zmm12, %zmm4, %zmm3 + vpandd %zmm6, %zmm0, %zmm13 + vpaddd %zmm1, %zmm13, %zmm4 + vpaddd %zmm4, %zmm8, %zmm14 + vpsrld $16, %zmm14, %zmm0 + vpandd %zmm6, %zmm9, %zmm9 + vpaddd %zmm2, %zmm9, %zmm1 + vpaddd %zmm1, %zmm0, %zmm8 + + /* + * Now round at the 2^-8 bit position for reduction mod pi/2^7 + * instead of the original 2pi (but still with the same 2pi scaling). + * Use a shifter of 2^15 + 2^14. + * The N we get is our final version; it has an offset of + * 2^8 because of the implicit integer bit, and anyway for negative + * starting value it's a 2s complement thing. But we need to mask + * off the exponent part anyway so it's fine. + */ + vmovups .FLT_18(%rip), %zmm1 + vpandd %zmm6, %zmm7, %zmm7 + vpaddd %zmm3, %zmm7, %zmm13 + vpsrld $16, %zmm8, %zmm3 + vpandd %zmm6, %zmm5, %zmm5 + vpaddd %zmm15, %zmm5, %zmm2 + vpaddd %zmm2, %zmm3, %zmm15 + vpsrld $16, %zmm15, %zmm12 + vpaddd %zmm13, %zmm12, %zmm5 + + /* Assemble reduced argument from the pieces */ + vpandd %zmm6, %zmm14, %zmm9 + vpandd %zmm6, %zmm15, %zmm7 + vpslld $16, %zmm5, %zmm6 + vpslld $16, %zmm8, %zmm5 + vpaddd %zmm7, %zmm6, %zmm4 + vpaddd %zmm9, %zmm5, %zmm9 + vpsrld $9, %zmm4, %zmm6 + + /* + * We want to incorporate the original sign now too. + * Do it here for convenience in getting the right N value, + * though we could wait right to the end if we were prepared + * to modify the sign of N later too. + * So get the appropriate sign mask now (or sooner). + */ + vpandd .FLT_16(%rip), %zmm11, %zmm0 + vpandd .FLT_21(%rip), %zmm9, %zmm13 + vpslld $5, %zmm13, %zmm14 + + /* + * Create floating-point high part, implicitly adding integer bit 1 + * Incorporate overall sign at this stage too. + */ + vpxord .FLT_17(%rip), %zmm0, %zmm8 + vpord %zmm8, %zmm6, %zmm2 + vaddps {rn-sae}, %zmm2, %zmm1, %zmm12 + vsubps {rn-sae}, %zmm1, %zmm12, %zmm3 + vsubps {rn-sae}, %zmm3, %zmm2, %zmm7 + + /* + * Create floating-point low and medium parts, respectively + * lo_17, ... lo_0, 0, ..., 0 + * hi_8, ... hi_0, lo_31, ..., lo_18 + * then subtract off the implicitly added integer bits, + * 2^-46 and 2^-23, respectively. + * Put the original sign into all of them at this stage. + */ + vpxord .FLT_20(%rip), %zmm0, %zmm6 + vpord %zmm6, %zmm14, %zmm15 + vpandd .FLT_23(%rip), %zmm4, %zmm4 + vsubps {rn-sae}, %zmm6, %zmm15, %zmm8 + vandps .FLT_26(%rip), %zmm11, %zmm15 + vpsrld $18, %zmm9, %zmm6 + + /* + * If the magnitude of the input is <= 2^-20, then + * just pass through the input, since no reduction will be needed and + * the main path will only work accurately if the reduced argument is + * about >= 2^-40 (which it is for all large pi multiples) + */ + vmovups .FLT_27(%rip), %zmm14 + vcmpps $26, {sae}, %zmm14, %zmm15, %k4 + vcmpps $22, {sae}, %zmm14, %zmm15, %k5 + vpxord .FLT_22(%rip), %zmm0, %zmm1 + vpslld $14, %zmm4, %zmm0 + vpord %zmm6, %zmm0, %zmm0 + vpord %zmm1, %zmm0, %zmm4 + vsubps {rn-sae}, %zmm1, %zmm4, %zmm2 + vpternlogd $255, %zmm6, %zmm6, %zmm6 + + /* Now add them up into 2 reasonably aligned pieces */ + vaddps {rn-sae}, %zmm2, %zmm7, %zmm13 + vsubps {rn-sae}, %zmm13, %zmm7, %zmm7 + vaddps {rn-sae}, %zmm7, %zmm2, %zmm3 + + /* + * The output is _VRES_R (high) + _VRES_E (low), and the integer part is _VRES_IND + * Set sRp2 = _VRES_R^2 and then resume the original code. + */ + vmovups .FLT_28(%rip), %zmm2 + vaddps {rn-sae}, %zmm8, %zmm3, %zmm1 + vmovups .FLT_25(%rip), %zmm8 + + /* Grab our final N value as an integer, appropriately masked mod 2^8 */ + vpandd .FLT_19(%rip), %zmm12, %zmm5 + + /* + * Now multiply those numbers all by 2 pi, reasonably accurately. + * (RHi + RLo) * (pi_lead + pi_trail) ~= + * RHi * pi_lead + (RHi * pi_trail + RLo * pi_lead) + */ + vmovups .FLT_24(%rip), %zmm12 + vmulps {rn-sae}, %zmm12, %zmm13, %zmm0 + vmovaps %zmm12, %zmm9 + vfmsub213ps {rn-sae}, %zmm0, %zmm13, %zmm9 + vfmadd213ps {rn-sae}, %zmm9, %zmm8, %zmm13 + vmovaps %zmm6, %zmm8 + vfmadd213ps {rn-sae}, %zmm13, %zmm12, %zmm1 + vpandnd %zmm15, %zmm15, %zmm8{%k4} + vpandnd %zmm15, %zmm15, %zmm6{%k5} + vandps %zmm11, %zmm6, %zmm14 + vandps %zmm0, %zmm8, %zmm15 + vandps %zmm1, %zmm8, %zmm12 + vorps %zmm15, %zmm14, %zmm6 + vpsrld $31, %zmm6, %zmm3 + vpsubd %zmm3, %zmm2, %zmm4 + vpaddd %zmm4, %zmm5, %zmm7 + vpsrld $2, %zmm7, %zmm13 + vpslld $2, %zmm13, %zmm9 + + /* + * + * End of large arguments path + * + * Merge results from main and large paths: + */ + vblendmps %zmm13, %zmm10, %zmm10{%k6} + vpsubd %zmm9, %zmm5, %zmm5 + vmovups .FLT_29(%rip), %zmm9 + vcvtdq2ps {rn-sae}, %zmm5, %zmm0 + vmovups .FLT_30(%rip), %zmm5 + vfmadd231ps {rn-sae}, %zmm0, %zmm5, %zmm12 + vmovups (%rsp), %zmm5 + vaddps {rn-sae}, %zmm6, %zmm12, %zmm6 + vfmadd213ps {rn-sae}, %zmm6, %zmm9, %zmm0 + vblendmps %zmm0, %zmm5, %zmm5{%k6} + + /* Return to main vector processing path */ + jmp L(AUX_BRANCH_RETURN) + # LOE rbx r12 r13 r14 r15 edx zmm5 zmm10 zmm11 END(_ZGVeN16v_tanf_skx) - .section .rodata, "a" - .align 64 + .section .rodata, "a" + .align 64 .FLT_12: - .long 0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000,0x7f800000 - .type .FLT_12,@object - .size .FLT_12,64 - .align 64 + .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 + .type .FLT_12, @object + .size .FLT_12, 64 + .align 64 .FLT_13: - .long 0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff,0x007fffff - .type .FLT_13,@object - .size .FLT_13,64 - .align 64 + .long 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff, 0x007fffff + .type .FLT_13, @object + .size .FLT_13, 64 + .align 64 .FLT_14: - .long 0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000,0x00800000 - .type .FLT_14,@object - .size .FLT_14,64 - .align 64 + .long 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000, 0x00800000 + .type .FLT_14, @object + .size .FLT_14, 64 + .align 64 .FLT_15: - .long 0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff,0x0000ffff - .type .FLT_15,@object - .size .FLT_15,64 - .align 64 + .long 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff, 0x0000ffff + .type .FLT_15, @object + .size .FLT_15, 64 + .align 64 .FLT_16: - .long 0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000,0x80000000 - .type .FLT_16,@object - .size .FLT_16,64 - .align 64 + .long 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000, 0x80000000 + .type .FLT_16, @object + .size .FLT_16, 64 + .align 64 .FLT_17: - .long 0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000,0x3f800000 - .type .FLT_17,@object - .size .FLT_17,64 - .align 64 + .long 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000 + .type .FLT_17, @object + .size .FLT_17, 64 + .align 64 .FLT_18: - .long 0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000,0x47400000 - .type .FLT_18,@object - .size .FLT_18,64 - .align 64 + .long 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000, 0x47400000 + .type .FLT_18, @object + .size .FLT_18, 64 + .align 64 .FLT_19: - .long 0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff,0x000000ff - .type .FLT_19,@object - .size .FLT_19,64 - .align 64 + .long 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff, 0x000000ff + .type .FLT_19, @object + .size .FLT_19, 64 + .align 64 .FLT_20: - .long 0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000,0x28800000 - .type .FLT_20,@object - .size .FLT_20,64 - .align 64 + .long 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000, 0x28800000 + .type .FLT_20, @object + .size .FLT_20, 64 + .align 64 .FLT_21: - .long 0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff,0x0003ffff - .type .FLT_21,@object - .size .FLT_21,64 - .align 64 + .long 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff, 0x0003ffff + .type .FLT_21, @object + .size .FLT_21, 64 + .align 64 .FLT_22: - .long 0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000,0x34000000 - .type .FLT_22,@object - .size .FLT_22,64 - .align 64 + .long 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000, 0x34000000 + .type .FLT_22, @object + .size .FLT_22, 64 + .align 64 .FLT_23: - .long 0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff,0x000001ff - .type .FLT_23,@object - .size .FLT_23,64 - .align 64 + .long 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff, 0x000001ff + .type .FLT_23, @object + .size .FLT_23, 64 + .align 64 .FLT_24: - .long 0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb,0x40c90fdb - .type .FLT_24,@object - .size .FLT_24,64 - .align 64 + .long 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb, 0x40c90fdb + .type .FLT_24, @object + .size .FLT_24, 64 + .align 64 .FLT_25: - .long 0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e,0xb43bbd2e - .type .FLT_25,@object - .size .FLT_25,64 - .align 64 + .long 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e, 0xb43bbd2e + .type .FLT_25, @object + .size .FLT_25, 64 + .align 64 .FLT_26: - .long 0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff,0x7fffffff - .type .FLT_26,@object - .size .FLT_26,64 - .align 64 + .long 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff + .type .FLT_26, @object + .size .FLT_26, 64 + .align 64 .FLT_27: - .long 0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000,0x35800000 - .type .FLT_27,@object - .size .FLT_27,64 - .align 64 + .long 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000, 0x35800000 + .type .FLT_27, @object + .size .FLT_27, 64 + .align 64 .FLT_28: - .long 0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002,0x00000002 - .type .FLT_28,@object - .size .FLT_28,64 - .align 64 + .long 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002, 0x00000002 + .type .FLT_28, @object + .size .FLT_28, 64 + .align 64 .FLT_29: - .long 0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb,0x3cc90fdb - .type .FLT_29,@object - .size .FLT_29,64 - .align 64 + .long 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb, 0x3cc90fdb + .type .FLT_29, @object + .size .FLT_29, 64 + .align 64 .FLT_30: - .long 0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e,0xb03bbd2e - .type .FLT_30,@object - .size .FLT_30,64 - .align 64 + .long 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e, 0xb03bbd2e + .type .FLT_30, @object + .size .FLT_30, 64 + .align 64 #ifdef __svml_stan_data_internal_typedef typedef unsigned int VUINT32; - typedef struct - { - __declspec(align(64)) VUINT32 _sInvPI_uisa[16][1]; - __declspec(align(64)) VUINT32 _sPI1_uisa[16][1]; - __declspec(align(64)) VUINT32 _sPI2_uisa[16][1]; - __declspec(align(64)) VUINT32 _sPI3_uisa[16][1]; - __declspec(align(64)) VUINT32 Th_tbl_uisa[32][1]; - __declspec(align(64)) VUINT32 _sPC3_uisa[16][1]; - __declspec(align(64)) VUINT32 _sPC5_uisa[16][1]; - __declspec(align(64)) VUINT32 _sRangeReductionVal_uisa[16][1]; - __declspec(align(64)) VUINT32 _sAbsMask[16][1]; - __declspec(align(64)) VUINT32 _sRangeVal[16][1]; - __declspec(align(64)) VUINT32 _sRShifter[16][1]; - __declspec(align(64)) VUINT32 _sOne[16][1]; - __declspec(align(64)) VUINT32 _sRangeReductionVal[16][1]; - __declspec(align(64)) VUINT32 _sPI1[16][1]; - __declspec(align(64)) VUINT32 _sPI2[16][1]; - __declspec(align(64)) VUINT32 _sPI3[16][1]; - } __svml_stan_data_internal; +typedef struct { + __declspec(align(64)) VUINT32 _sInvPI_uisa[16][1]; + __declspec(align(64)) VUINT32 _sPI1_uisa[16][1]; + __declspec(align(64)) VUINT32 _sPI2_uisa[16][1]; + __declspec(align(64)) VUINT32 _sPI3_uisa[16][1]; + __declspec(align(64)) VUINT32 Th_tbl_uisa[32][1]; + __declspec(align(64)) VUINT32 _sPC3_uisa[16][1]; + __declspec(align(64)) VUINT32 _sPC5_uisa[16][1]; + __declspec(align(64)) VUINT32 _sRangeReductionVal_uisa[16][1]; + __declspec(align(64)) VUINT32 _sAbsMask[16][1]; + __declspec(align(64)) VUINT32 _sRangeVal[16][1]; + __declspec(align(64)) VUINT32 _sRShifter[16][1]; + __declspec(align(64)) VUINT32 _sOne[16][1]; + __declspec(align(64)) VUINT32 _sRangeReductionVal[16][1]; + __declspec(align(64)) VUINT32 _sPI1[16][1]; + __declspec(align(64)) VUINT32 _sPI2[16][1]; + __declspec(align(64)) VUINT32 _sPI3[16][1]; +} __svml_stan_data_internal; #endif __svml_stan_data_internal: - /* UISA */ - .long 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983 /* _sInvPI_uisa */ - .align 64 - .long 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda /* _sPI1_uisa */ - .align 64 - .long 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168 /* _sPI2_uisa */ - .align 64 - .long 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5 /* _sPI3_uisa */ - /* Th_tbl_uisa for i from 0 to 31 do printsingle(tan(i*Pi/32)); */ - .align 64 - .long 0x80000000, 0x3dc9b5dc, 0x3e4bafaf, 0x3e9b5042 - .long 0x3ed413cd, 0x3f08d5b9, 0x3f2b0dc1, 0x3f521801 - .long 0x3f800000, 0x3f9bf7ec, 0x3fbf90c7, 0x3fef789e - .long 0x401a827a, 0x4052facf, 0x40a0dff7, 0x41227363 - .long 0xff7fffff, 0xc1227363, 0xc0a0dff7, 0xc052facf - .long 0xc01a827a, 0xbfef789e, 0xbfbf90c7, 0xbf9bf7ec - .long 0xbf800000, 0xbf521801, 0xbf2b0dc1, 0xbf08d5b9 - .long 0xbed413cd, 0xbe9b5042, 0xbe4bafaf, 0xbdc9b5dc - .align 64 - .long 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6 /* _sPC3_uisa */ - .align 64 - .long 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888 /* _sPC5_uisa */ - .align 64 - .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeReductionVal_uisa */ - .align 64 - .long 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF /* _sAbsMask */ - .align 64 - .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 /* _sRangeVal */ - .align 64 - .long 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000 /* _sRShifter */ - .align 64 - .long 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000 /* _sOne */ - .align 64 - .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeVal */ - .align 64 - .long 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000 /* _sPI1 */ - .align 64 - .long 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000 /* _sPI2 */ - .align 64 - .long 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000 /* _sPI3 */ - .align 64 - .type __svml_stan_data_internal,@object - .size __svml_stan_data_internal,.-__svml_stan_data_internal - .align 64 + /* UISA */ + .long 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983, 0x4122f983 /* _sInvPI_uisa */ + .align 64 + .long 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda, 0x3dc90fda /* _sPI1_uisa */ + .align 64 + .long 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168, 0x31a22168 /* _sPI2_uisa */ + .align 64 + .long 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5, 0x25c234c5 /* _sPI3_uisa */ + /* Th_tbl_uisa for i from 0 to 31 do printsingle(tan(i*Pi/32)); */ + .align 64 + .long 0x80000000, 0x3dc9b5dc, 0x3e4bafaf, 0x3e9b5042 + .long 0x3ed413cd, 0x3f08d5b9, 0x3f2b0dc1, 0x3f521801 + .long 0x3f800000, 0x3f9bf7ec, 0x3fbf90c7, 0x3fef789e + .long 0x401a827a, 0x4052facf, 0x40a0dff7, 0x41227363 + .long 0xff7fffff, 0xc1227363, 0xc0a0dff7, 0xc052facf + .long 0xc01a827a, 0xbfef789e, 0xbfbf90c7, 0xbf9bf7ec + .long 0xbf800000, 0xbf521801, 0xbf2b0dc1, 0xbf08d5b9 + .long 0xbed413cd, 0xbe9b5042, 0xbe4bafaf, 0xbdc9b5dc + .align 64 + .long 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6, 0x3eaaaaa6 /* _sPC3_uisa */ + .align 64 + .long 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888, 0x3e08b888 /* _sPC5_uisa */ + .align 64 + .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeReductionVal_uisa */ + .align 64 + .long 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF, 0x7FFFFFFF /* _sAbsMask */ + .align 64 + .long 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x7f800000 /* _sRangeVal */ + .align 64 + .long 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000, 0x4B400000 /* _sRShifter */ + .align 64 + .long 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000 /* _sOne */ + .align 64 + .long 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000, 0x46010000 /* _sRangeVal */ + .align 64 + .long 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000, 0x3FC90000 /* _sPI1 */ + .align 64 + .long 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000, 0x39FDA000 /* _sPI2 */ + .align 64 + .long 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000, 0x33A22000 /* _sPI3 */ + .align 64 + .type __svml_stan_data_internal, @object + .size __svml_stan_data_internal, .-__svml_stan_data_internal + .align 64 #ifdef __svml_stan_reduction_data_internal_typedef typedef unsigned int VUINT32; -typedef struct -{ - __declspec(align(64)) VUINT32 _sPtable[256][3][1]; +typedef struct { + __declspec(align(64)) VUINT32 _sPtable[256][3][1]; } __svml_stan_reduction_data_internal; #endif __svml_stan_reduction_data_internal: - /* P_hi P_med P_lo */ - .long 0x00000000, 0x00000000, 0x00000000 /* 0 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 1 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 2 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 3 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 4 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 5 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 6 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 7 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 8 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 9 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 10 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 11 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 12 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 13 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 14 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 15 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 16 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 17 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 18 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 19 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 20 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 21 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 22 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 23 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 24 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 25 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 26 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 27 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 28 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 29 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 30 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 31 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 32 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 33 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 34 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 35 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 36 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 37 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 38 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 39 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 40 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 41 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 42 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 43 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 44 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 45 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 46 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 47 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 48 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 49 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 50 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 51 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 52 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 53 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 54 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 55 */ - .long 0x00000000, 0x00000000, 0x00000000 /* 56 */ - .long 0x00000000, 0x00000000, 0x00000001 /* 57 */ - .long 0x00000000, 0x00000000, 0x00000002 /* 58 */ - .long 0x00000000, 0x00000000, 0x00000005 /* 59 */ - .long 0x00000000, 0x00000000, 0x0000000A /* 60 */ - .long 0x00000000, 0x00000000, 0x00000014 /* 61 */ - .long 0x00000000, 0x00000000, 0x00000028 /* 62 */ - .long 0x00000000, 0x00000000, 0x00000051 /* 63 */ - .long 0x00000000, 0x00000000, 0x000000A2 /* 64 */ - .long 0x00000000, 0x00000000, 0x00000145 /* 65 */ - .long 0x00000000, 0x00000000, 0x0000028B /* 66 */ - .long 0x00000000, 0x00000000, 0x00000517 /* 67 */ - .long 0x00000000, 0x00000000, 0x00000A2F /* 68 */ - .long 0x00000000, 0x00000000, 0x0000145F /* 69 */ - .long 0x00000000, 0x00000000, 0x000028BE /* 70 */ - .long 0x00000000, 0x00000000, 0x0000517C /* 71 */ - .long 0x00000000, 0x00000000, 0x0000A2F9 /* 72 */ - .long 0x00000000, 0x00000000, 0x000145F3 /* 73 */ - .long 0x00000000, 0x00000000, 0x00028BE6 /* 74 */ - .long 0x00000000, 0x00000000, 0x000517CC /* 75 */ - .long 0x00000000, 0x00000000, 0x000A2F98 /* 76 */ - .long 0x00000000, 0x00000000, 0x00145F30 /* 77 */ - .long 0x00000000, 0x00000000, 0x0028BE60 /* 78 */ - .long 0x00000000, 0x00000000, 0x00517CC1 /* 79 */ - .long 0x00000000, 0x00000000, 0x00A2F983 /* 80 */ - .long 0x00000000, 0x00000000, 0x0145F306 /* 81 */ - .long 0x00000000, 0x00000000, 0x028BE60D /* 82 */ - .long 0x00000000, 0x00000000, 0x0517CC1B /* 83 */ - .long 0x00000000, 0x00000000, 0x0A2F9836 /* 84 */ - .long 0x00000000, 0x00000000, 0x145F306D /* 85 */ - .long 0x00000000, 0x00000000, 0x28BE60DB /* 86 */ - .long 0x00000000, 0x00000000, 0x517CC1B7 /* 87 */ - .long 0x00000000, 0x00000000, 0xA2F9836E /* 88 */ - .long 0x00000000, 0x00000001, 0x45F306DC /* 89 */ - .long 0x00000000, 0x00000002, 0x8BE60DB9 /* 90 */ - .long 0x00000000, 0x00000005, 0x17CC1B72 /* 91 */ - .long 0x00000000, 0x0000000A, 0x2F9836E4 /* 92 */ - .long 0x00000000, 0x00000014, 0x5F306DC9 /* 93 */ - .long 0x00000000, 0x00000028, 0xBE60DB93 /* 94 */ - .long 0x00000000, 0x00000051, 0x7CC1B727 /* 95 */ - .long 0x00000000, 0x000000A2, 0xF9836E4E /* 96 */ - .long 0x00000000, 0x00000145, 0xF306DC9C /* 97 */ - .long 0x00000000, 0x0000028B, 0xE60DB939 /* 98 */ - .long 0x00000000, 0x00000517, 0xCC1B7272 /* 99 */ - .long 0x00000000, 0x00000A2F, 0x9836E4E4 /* 100 */ - .long 0x00000000, 0x0000145F, 0x306DC9C8 /* 101 */ - .long 0x00000000, 0x000028BE, 0x60DB9391 /* 102 */ - .long 0x00000000, 0x0000517C, 0xC1B72722 /* 103 */ - .long 0x00000000, 0x0000A2F9, 0x836E4E44 /* 104 */ - .long 0x00000000, 0x000145F3, 0x06DC9C88 /* 105 */ - .long 0x00000000, 0x00028BE6, 0x0DB93910 /* 106 */ - .long 0x00000000, 0x000517CC, 0x1B727220 /* 107 */ - .long 0x00000000, 0x000A2F98, 0x36E4E441 /* 108 */ - .long 0x00000000, 0x00145F30, 0x6DC9C882 /* 109 */ - .long 0x00000000, 0x0028BE60, 0xDB939105 /* 110 */ - .long 0x00000000, 0x00517CC1, 0xB727220A /* 111 */ - .long 0x00000000, 0x00A2F983, 0x6E4E4415 /* 112 */ - .long 0x00000000, 0x0145F306, 0xDC9C882A /* 113 */ - .long 0x00000000, 0x028BE60D, 0xB9391054 /* 114 */ - .long 0x00000000, 0x0517CC1B, 0x727220A9 /* 115 */ - .long 0x00000000, 0x0A2F9836, 0xE4E44152 /* 116 */ - .long 0x00000000, 0x145F306D, 0xC9C882A5 /* 117 */ - .long 0x00000000, 0x28BE60DB, 0x9391054A /* 118 */ - .long 0x00000000, 0x517CC1B7, 0x27220A94 /* 119 */ - .long 0x00000000, 0xA2F9836E, 0x4E441529 /* 120 */ - .long 0x00000001, 0x45F306DC, 0x9C882A53 /* 121 */ - .long 0x00000002, 0x8BE60DB9, 0x391054A7 /* 122 */ - .long 0x00000005, 0x17CC1B72, 0x7220A94F /* 123 */ - .long 0x0000000A, 0x2F9836E4, 0xE441529F /* 124 */ - .long 0x00000014, 0x5F306DC9, 0xC882A53F /* 125 */ - .long 0x00000028, 0xBE60DB93, 0x91054A7F /* 126 */ - .long 0x00000051, 0x7CC1B727, 0x220A94FE /* 127 */ - .long 0x000000A2, 0xF9836E4E, 0x441529FC /* 128 */ - .long 0x00000145, 0xF306DC9C, 0x882A53F8 /* 129 */ - .long 0x0000028B, 0xE60DB939, 0x1054A7F0 /* 130 */ - .long 0x00000517, 0xCC1B7272, 0x20A94FE1 /* 131 */ - .long 0x00000A2F, 0x9836E4E4, 0x41529FC2 /* 132 */ - .long 0x0000145F, 0x306DC9C8, 0x82A53F84 /* 133 */ - .long 0x000028BE, 0x60DB9391, 0x054A7F09 /* 134 */ - .long 0x0000517C, 0xC1B72722, 0x0A94FE13 /* 135 */ - .long 0x0000A2F9, 0x836E4E44, 0x1529FC27 /* 136 */ - .long 0x000145F3, 0x06DC9C88, 0x2A53F84E /* 137 */ - .long 0x00028BE6, 0x0DB93910, 0x54A7F09D /* 138 */ - .long 0x000517CC, 0x1B727220, 0xA94FE13A /* 139 */ - .long 0x000A2F98, 0x36E4E441, 0x529FC275 /* 140 */ - .long 0x00145F30, 0x6DC9C882, 0xA53F84EA /* 141 */ - .long 0x0028BE60, 0xDB939105, 0x4A7F09D5 /* 142 */ - .long 0x00517CC1, 0xB727220A, 0x94FE13AB /* 143 */ - .long 0x00A2F983, 0x6E4E4415, 0x29FC2757 /* 144 */ - .long 0x0145F306, 0xDC9C882A, 0x53F84EAF /* 145 */ - .long 0x028BE60D, 0xB9391054, 0xA7F09D5F /* 146 */ - .long 0x0517CC1B, 0x727220A9, 0x4FE13ABE /* 147 */ - .long 0x0A2F9836, 0xE4E44152, 0x9FC2757D /* 148 */ - .long 0x145F306D, 0xC9C882A5, 0x3F84EAFA /* 149 */ - .long 0x28BE60DB, 0x9391054A, 0x7F09D5F4 /* 150 */ - .long 0x517CC1B7, 0x27220A94, 0xFE13ABE8 /* 151 */ - .long 0xA2F9836E, 0x4E441529, 0xFC2757D1 /* 152 */ - .long 0x45F306DC, 0x9C882A53, 0xF84EAFA3 /* 153 */ - .long 0x8BE60DB9, 0x391054A7, 0xF09D5F47 /* 154 */ - .long 0x17CC1B72, 0x7220A94F, 0xE13ABE8F /* 155 */ - .long 0x2F9836E4, 0xE441529F, 0xC2757D1F /* 156 */ - .long 0x5F306DC9, 0xC882A53F, 0x84EAFA3E /* 157 */ - .long 0xBE60DB93, 0x91054A7F, 0x09D5F47D /* 158 */ - .long 0x7CC1B727, 0x220A94FE, 0x13ABE8FA /* 159 */ - .long 0xF9836E4E, 0x441529FC, 0x2757D1F5 /* 160 */ - .long 0xF306DC9C, 0x882A53F8, 0x4EAFA3EA /* 161 */ - .long 0xE60DB939, 0x1054A7F0, 0x9D5F47D4 /* 162 */ - .long 0xCC1B7272, 0x20A94FE1, 0x3ABE8FA9 /* 163 */ - .long 0x9836E4E4, 0x41529FC2, 0x757D1F53 /* 164 */ - .long 0x306DC9C8, 0x82A53F84, 0xEAFA3EA6 /* 165 */ - .long 0x60DB9391, 0x054A7F09, 0xD5F47D4D /* 166 */ - .long 0xC1B72722, 0x0A94FE13, 0xABE8FA9A /* 167 */ - .long 0x836E4E44, 0x1529FC27, 0x57D1F534 /* 168 */ - .long 0x06DC9C88, 0x2A53F84E, 0xAFA3EA69 /* 169 */ - .long 0x0DB93910, 0x54A7F09D, 0x5F47D4D3 /* 170 */ - .long 0x1B727220, 0xA94FE13A, 0xBE8FA9A6 /* 171 */ - .long 0x36E4E441, 0x529FC275, 0x7D1F534D /* 172 */ - .long 0x6DC9C882, 0xA53F84EA, 0xFA3EA69B /* 173 */ - .long 0xDB939105, 0x4A7F09D5, 0xF47D4D37 /* 174 */ - .long 0xB727220A, 0x94FE13AB, 0xE8FA9A6E /* 175 */ - .long 0x6E4E4415, 0x29FC2757, 0xD1F534DD /* 176 */ - .long 0xDC9C882A, 0x53F84EAF, 0xA3EA69BB /* 177 */ - .long 0xB9391054, 0xA7F09D5F, 0x47D4D377 /* 178 */ - .long 0x727220A9, 0x4FE13ABE, 0x8FA9A6EE /* 179 */ - .long 0xE4E44152, 0x9FC2757D, 0x1F534DDC /* 180 */ - .long 0xC9C882A5, 0x3F84EAFA, 0x3EA69BB8 /* 181 */ - .long 0x9391054A, 0x7F09D5F4, 0x7D4D3770 /* 182 */ - .long 0x27220A94, 0xFE13ABE8, 0xFA9A6EE0 /* 183 */ - .long 0x4E441529, 0xFC2757D1, 0xF534DDC0 /* 184 */ - .long 0x9C882A53, 0xF84EAFA3, 0xEA69BB81 /* 185 */ - .long 0x391054A7, 0xF09D5F47, 0xD4D37703 /* 186 */ - .long 0x7220A94F, 0xE13ABE8F, 0xA9A6EE06 /* 187 */ - .long 0xE441529F, 0xC2757D1F, 0x534DDC0D /* 188 */ - .long 0xC882A53F, 0x84EAFA3E, 0xA69BB81B /* 189 */ - .long 0x91054A7F, 0x09D5F47D, 0x4D377036 /* 190 */ - .long 0x220A94FE, 0x13ABE8FA, 0x9A6EE06D /* 191 */ - .long 0x441529FC, 0x2757D1F5, 0x34DDC0DB /* 192 */ - .long 0x882A53F8, 0x4EAFA3EA, 0x69BB81B6 /* 193 */ - .long 0x1054A7F0, 0x9D5F47D4, 0xD377036D /* 194 */ - .long 0x20A94FE1, 0x3ABE8FA9, 0xA6EE06DB /* 195 */ - .long 0x41529FC2, 0x757D1F53, 0x4DDC0DB6 /* 196 */ - .long 0x82A53F84, 0xEAFA3EA6, 0x9BB81B6C /* 197 */ - .long 0x054A7F09, 0xD5F47D4D, 0x377036D8 /* 198 */ - .long 0x0A94FE13, 0xABE8FA9A, 0x6EE06DB1 /* 199 */ - .long 0x1529FC27, 0x57D1F534, 0xDDC0DB62 /* 200 */ - .long 0x2A53F84E, 0xAFA3EA69, 0xBB81B6C5 /* 201 */ - .long 0x54A7F09D, 0x5F47D4D3, 0x77036D8A /* 202 */ - .long 0xA94FE13A, 0xBE8FA9A6, 0xEE06DB14 /* 203 */ - .long 0x529FC275, 0x7D1F534D, 0xDC0DB629 /* 204 */ - .long 0xA53F84EA, 0xFA3EA69B, 0xB81B6C52 /* 205 */ - .long 0x4A7F09D5, 0xF47D4D37, 0x7036D8A5 /* 206 */ - .long 0x94FE13AB, 0xE8FA9A6E, 0xE06DB14A /* 207 */ - .long 0x29FC2757, 0xD1F534DD, 0xC0DB6295 /* 208 */ - .long 0x53F84EAF, 0xA3EA69BB, 0x81B6C52B /* 209 */ - .long 0xA7F09D5F, 0x47D4D377, 0x036D8A56 /* 210 */ - .long 0x4FE13ABE, 0x8FA9A6EE, 0x06DB14AC /* 211 */ - .long 0x9FC2757D, 0x1F534DDC, 0x0DB62959 /* 212 */ - .long 0x3F84EAFA, 0x3EA69BB8, 0x1B6C52B3 /* 213 */ - .long 0x7F09D5F4, 0x7D4D3770, 0x36D8A566 /* 214 */ - .long 0xFE13ABE8, 0xFA9A6EE0, 0x6DB14ACC /* 215 */ - .long 0xFC2757D1, 0xF534DDC0, 0xDB629599 /* 216 */ - .long 0xF84EAFA3, 0xEA69BB81, 0xB6C52B32 /* 217 */ - .long 0xF09D5F47, 0xD4D37703, 0x6D8A5664 /* 218 */ - .long 0xE13ABE8F, 0xA9A6EE06, 0xDB14ACC9 /* 219 */ - .long 0xC2757D1F, 0x534DDC0D, 0xB6295993 /* 220 */ - .long 0x84EAFA3E, 0xA69BB81B, 0x6C52B327 /* 221 */ - .long 0x09D5F47D, 0x4D377036, 0xD8A5664F /* 222 */ - .long 0x13ABE8FA, 0x9A6EE06D, 0xB14ACC9E /* 223 */ - .long 0x2757D1F5, 0x34DDC0DB, 0x6295993C /* 224 */ - .long 0x4EAFA3EA, 0x69BB81B6, 0xC52B3278 /* 225 */ - .long 0x9D5F47D4, 0xD377036D, 0x8A5664F1 /* 226 */ - .long 0x3ABE8FA9, 0xA6EE06DB, 0x14ACC9E2 /* 227 */ - .long 0x757D1F53, 0x4DDC0DB6, 0x295993C4 /* 228 */ - .long 0xEAFA3EA6, 0x9BB81B6C, 0x52B32788 /* 229 */ - .long 0xD5F47D4D, 0x377036D8, 0xA5664F10 /* 230 */ - .long 0xABE8FA9A, 0x6EE06DB1, 0x4ACC9E21 /* 231 */ - .long 0x57D1F534, 0xDDC0DB62, 0x95993C43 /* 232 */ - .long 0xAFA3EA69, 0xBB81B6C5, 0x2B327887 /* 233 */ - .long 0x5F47D4D3, 0x77036D8A, 0x5664F10E /* 234 */ - .long 0xBE8FA9A6, 0xEE06DB14, 0xACC9E21C /* 235 */ - .long 0x7D1F534D, 0xDC0DB629, 0x5993C439 /* 236 */ - .long 0xFA3EA69B, 0xB81B6C52, 0xB3278872 /* 237 */ - .long 0xF47D4D37, 0x7036D8A5, 0x664F10E4 /* 238 */ - .long 0xE8FA9A6E, 0xE06DB14A, 0xCC9E21C8 /* 239 */ - .long 0xD1F534DD, 0xC0DB6295, 0x993C4390 /* 240 */ - .long 0xA3EA69BB, 0x81B6C52B, 0x32788720 /* 241 */ - .long 0x47D4D377, 0x036D8A56, 0x64F10E41 /* 242 */ - .long 0x8FA9A6EE, 0x06DB14AC, 0xC9E21C82 /* 243 */ - .long 0x1F534DDC, 0x0DB62959, 0x93C43904 /* 244 */ - .long 0x3EA69BB8, 0x1B6C52B3, 0x27887208 /* 245 */ - .long 0x7D4D3770, 0x36D8A566, 0x4F10E410 /* 246 */ - .long 0xFA9A6EE0, 0x6DB14ACC, 0x9E21C820 /* 247 */ - .long 0xF534DDC0, 0xDB629599, 0x3C439041 /* 248 */ - .long 0xEA69BB81, 0xB6C52B32, 0x78872083 /* 249 */ - .long 0xD4D37703, 0x6D8A5664, 0xF10E4107 /* 250 */ - .long 0xA9A6EE06, 0xDB14ACC9, 0xE21C820F /* 251 */ - .long 0x534DDC0D, 0xB6295993, 0xC439041F /* 252 */ - .long 0xA69BB81B, 0x6C52B327, 0x8872083F /* 253 */ - .long 0x4D377036, 0xD8A5664F, 0x10E4107F /* 254 */ - .long 0x9A6EE06D, 0xB14ACC9E, 0x21C820FF /* 255 */ - .align 64 - .type __svml_stan_reduction_data_internal,@object - .size __svml_stan_reduction_data_internal,.-__svml_stan_reduction_data_internal + /* P_hi P_med P_lo */ + .long 0x00000000, 0x00000000, 0x00000000 /* 0 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 1 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 2 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 3 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 4 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 5 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 6 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 7 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 8 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 9 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 10 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 11 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 12 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 13 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 14 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 15 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 16 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 17 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 18 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 19 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 20 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 21 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 22 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 23 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 24 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 25 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 26 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 27 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 28 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 29 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 30 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 31 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 32 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 33 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 34 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 35 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 36 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 37 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 38 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 39 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 40 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 41 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 42 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 43 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 44 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 45 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 46 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 47 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 48 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 49 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 50 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 51 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 52 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 53 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 54 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 55 */ + .long 0x00000000, 0x00000000, 0x00000000 /* 56 */ + .long 0x00000000, 0x00000000, 0x00000001 /* 57 */ + .long 0x00000000, 0x00000000, 0x00000002 /* 58 */ + .long 0x00000000, 0x00000000, 0x00000005 /* 59 */ + .long 0x00000000, 0x00000000, 0x0000000A /* 60 */ + .long 0x00000000, 0x00000000, 0x00000014 /* 61 */ + .long 0x00000000, 0x00000000, 0x00000028 /* 62 */ + .long 0x00000000, 0x00000000, 0x00000051 /* 63 */ + .long 0x00000000, 0x00000000, 0x000000A2 /* 64 */ + .long 0x00000000, 0x00000000, 0x00000145 /* 65 */ + .long 0x00000000, 0x00000000, 0x0000028B /* 66 */ + .long 0x00000000, 0x00000000, 0x00000517 /* 67 */ + .long 0x00000000, 0x00000000, 0x00000A2F /* 68 */ + .long 0x00000000, 0x00000000, 0x0000145F /* 69 */ + .long 0x00000000, 0x00000000, 0x000028BE /* 70 */ + .long 0x00000000, 0x00000000, 0x0000517C /* 71 */ + .long 0x00000000, 0x00000000, 0x0000A2F9 /* 72 */ + .long 0x00000000, 0x00000000, 0x000145F3 /* 73 */ + .long 0x00000000, 0x00000000, 0x00028BE6 /* 74 */ + .long 0x00000000, 0x00000000, 0x000517CC /* 75 */ + .long 0x00000000, 0x00000000, 0x000A2F98 /* 76 */ + .long 0x00000000, 0x00000000, 0x00145F30 /* 77 */ + .long 0x00000000, 0x00000000, 0x0028BE60 /* 78 */ + .long 0x00000000, 0x00000000, 0x00517CC1 /* 79 */ + .long 0x00000000, 0x00000000, 0x00A2F983 /* 80 */ + .long 0x00000000, 0x00000000, 0x0145F306 /* 81 */ + .long 0x00000000, 0x00000000, 0x028BE60D /* 82 */ + .long 0x00000000, 0x00000000, 0x0517CC1B /* 83 */ + .long 0x00000000, 0x00000000, 0x0A2F9836 /* 84 */ + .long 0x00000000, 0x00000000, 0x145F306D /* 85 */ + .long 0x00000000, 0x00000000, 0x28BE60DB /* 86 */ + .long 0x00000000, 0x00000000, 0x517CC1B7 /* 87 */ + .long 0x00000000, 0x00000000, 0xA2F9836E /* 88 */ + .long 0x00000000, 0x00000001, 0x45F306DC /* 89 */ + .long 0x00000000, 0x00000002, 0x8BE60DB9 /* 90 */ + .long 0x00000000, 0x00000005, 0x17CC1B72 /* 91 */ + .long 0x00000000, 0x0000000A, 0x2F9836E4 /* 92 */ + .long 0x00000000, 0x00000014, 0x5F306DC9 /* 93 */ + .long 0x00000000, 0x00000028, 0xBE60DB93 /* 94 */ + .long 0x00000000, 0x00000051, 0x7CC1B727 /* 95 */ + .long 0x00000000, 0x000000A2, 0xF9836E4E /* 96 */ + .long 0x00000000, 0x00000145, 0xF306DC9C /* 97 */ + .long 0x00000000, 0x0000028B, 0xE60DB939 /* 98 */ + .long 0x00000000, 0x00000517, 0xCC1B7272 /* 99 */ + .long 0x00000000, 0x00000A2F, 0x9836E4E4 /* 100 */ + .long 0x00000000, 0x0000145F, 0x306DC9C8 /* 101 */ + .long 0x00000000, 0x000028BE, 0x60DB9391 /* 102 */ + .long 0x00000000, 0x0000517C, 0xC1B72722 /* 103 */ + .long 0x00000000, 0x0000A2F9, 0x836E4E44 /* 104 */ + .long 0x00000000, 0x000145F3, 0x06DC9C88 /* 105 */ + .long 0x00000000, 0x00028BE6, 0x0DB93910 /* 106 */ + .long 0x00000000, 0x000517CC, 0x1B727220 /* 107 */ + .long 0x00000000, 0x000A2F98, 0x36E4E441 /* 108 */ + .long 0x00000000, 0x00145F30, 0x6DC9C882 /* 109 */ + .long 0x00000000, 0x0028BE60, 0xDB939105 /* 110 */ + .long 0x00000000, 0x00517CC1, 0xB727220A /* 111 */ + .long 0x00000000, 0x00A2F983, 0x6E4E4415 /* 112 */ + .long 0x00000000, 0x0145F306, 0xDC9C882A /* 113 */ + .long 0x00000000, 0x028BE60D, 0xB9391054 /* 114 */ + .long 0x00000000, 0x0517CC1B, 0x727220A9 /* 115 */ + .long 0x00000000, 0x0A2F9836, 0xE4E44152 /* 116 */ + .long 0x00000000, 0x145F306D, 0xC9C882A5 /* 117 */ + .long 0x00000000, 0x28BE60DB, 0x9391054A /* 118 */ + .long 0x00000000, 0x517CC1B7, 0x27220A94 /* 119 */ + .long 0x00000000, 0xA2F9836E, 0x4E441529 /* 120 */ + .long 0x00000001, 0x45F306DC, 0x9C882A53 /* 121 */ + .long 0x00000002, 0x8BE60DB9, 0x391054A7 /* 122 */ + .long 0x00000005, 0x17CC1B72, 0x7220A94F /* 123 */ + .long 0x0000000A, 0x2F9836E4, 0xE441529F /* 124 */ + .long 0x00000014, 0x5F306DC9, 0xC882A53F /* 125 */ + .long 0x00000028, 0xBE60DB93, 0x91054A7F /* 126 */ + .long 0x00000051, 0x7CC1B727, 0x220A94FE /* 127 */ + .long 0x000000A2, 0xF9836E4E, 0x441529FC /* 128 */ + .long 0x00000145, 0xF306DC9C, 0x882A53F8 /* 129 */ + .long 0x0000028B, 0xE60DB939, 0x1054A7F0 /* 130 */ + .long 0x00000517, 0xCC1B7272, 0x20A94FE1 /* 131 */ + .long 0x00000A2F, 0x9836E4E4, 0x41529FC2 /* 132 */ + .long 0x0000145F, 0x306DC9C8, 0x82A53F84 /* 133 */ + .long 0x000028BE, 0x60DB9391, 0x054A7F09 /* 134 */ + .long 0x0000517C, 0xC1B72722, 0x0A94FE13 /* 135 */ + .long 0x0000A2F9, 0x836E4E44, 0x1529FC27 /* 136 */ + .long 0x000145F3, 0x06DC9C88, 0x2A53F84E /* 137 */ + .long 0x00028BE6, 0x0DB93910, 0x54A7F09D /* 138 */ + .long 0x000517CC, 0x1B727220, 0xA94FE13A /* 139 */ + .long 0x000A2F98, 0x36E4E441, 0x529FC275 /* 140 */ + .long 0x00145F30, 0x6DC9C882, 0xA53F84EA /* 141 */ + .long 0x0028BE60, 0xDB939105, 0x4A7F09D5 /* 142 */ + .long 0x00517CC1, 0xB727220A, 0x94FE13AB /* 143 */ + .long 0x00A2F983, 0x6E4E4415, 0x29FC2757 /* 144 */ + .long 0x0145F306, 0xDC9C882A, 0x53F84EAF /* 145 */ + .long 0x028BE60D, 0xB9391054, 0xA7F09D5F /* 146 */ + .long 0x0517CC1B, 0x727220A9, 0x4FE13ABE /* 147 */ + .long 0x0A2F9836, 0xE4E44152, 0x9FC2757D /* 148 */ + .long 0x145F306D, 0xC9C882A5, 0x3F84EAFA /* 149 */ + .long 0x28BE60DB, 0x9391054A, 0x7F09D5F4 /* 150 */ + .long 0x517CC1B7, 0x27220A94, 0xFE13ABE8 /* 151 */ + .long 0xA2F9836E, 0x4E441529, 0xFC2757D1 /* 152 */ + .long 0x45F306DC, 0x9C882A53, 0xF84EAFA3 /* 153 */ + .long 0x8BE60DB9, 0x391054A7, 0xF09D5F47 /* 154 */ + .long 0x17CC1B72, 0x7220A94F, 0xE13ABE8F /* 155 */ + .long 0x2F9836E4, 0xE441529F, 0xC2757D1F /* 156 */ + .long 0x5F306DC9, 0xC882A53F, 0x84EAFA3E /* 157 */ + .long 0xBE60DB93, 0x91054A7F, 0x09D5F47D /* 158 */ + .long 0x7CC1B727, 0x220A94FE, 0x13ABE8FA /* 159 */ + .long 0xF9836E4E, 0x441529FC, 0x2757D1F5 /* 160 */ + .long 0xF306DC9C, 0x882A53F8, 0x4EAFA3EA /* 161 */ + .long 0xE60DB939, 0x1054A7F0, 0x9D5F47D4 /* 162 */ + .long 0xCC1B7272, 0x20A94FE1, 0x3ABE8FA9 /* 163 */ + .long 0x9836E4E4, 0x41529FC2, 0x757D1F53 /* 164 */ + .long 0x306DC9C8, 0x82A53F84, 0xEAFA3EA6 /* 165 */ + .long 0x60DB9391, 0x054A7F09, 0xD5F47D4D /* 166 */ + .long 0xC1B72722, 0x0A94FE13, 0xABE8FA9A /* 167 */ + .long 0x836E4E44, 0x1529FC27, 0x57D1F534 /* 168 */ + .long 0x06DC9C88, 0x2A53F84E, 0xAFA3EA69 /* 169 */ + .long 0x0DB93910, 0x54A7F09D, 0x5F47D4D3 /* 170 */ + .long 0x1B727220, 0xA94FE13A, 0xBE8FA9A6 /* 171 */ + .long 0x36E4E441, 0x529FC275, 0x7D1F534D /* 172 */ + .long 0x6DC9C882, 0xA53F84EA, 0xFA3EA69B /* 173 */ + .long 0xDB939105, 0x4A7F09D5, 0xF47D4D37 /* 174 */ + .long 0xB727220A, 0x94FE13AB, 0xE8FA9A6E /* 175 */ + .long 0x6E4E4415, 0x29FC2757, 0xD1F534DD /* 176 */ + .long 0xDC9C882A, 0x53F84EAF, 0xA3EA69BB /* 177 */ + .long 0xB9391054, 0xA7F09D5F, 0x47D4D377 /* 178 */ + .long 0x727220A9, 0x4FE13ABE, 0x8FA9A6EE /* 179 */ + .long 0xE4E44152, 0x9FC2757D, 0x1F534DDC /* 180 */ + .long 0xC9C882A5, 0x3F84EAFA, 0x3EA69BB8 /* 181 */ + .long 0x9391054A, 0x7F09D5F4, 0x7D4D3770 /* 182 */ + .long 0x27220A94, 0xFE13ABE8, 0xFA9A6EE0 /* 183 */ + .long 0x4E441529, 0xFC2757D1, 0xF534DDC0 /* 184 */ + .long 0x9C882A53, 0xF84EAFA3, 0xEA69BB81 /* 185 */ + .long 0x391054A7, 0xF09D5F47, 0xD4D37703 /* 186 */ + .long 0x7220A94F, 0xE13ABE8F, 0xA9A6EE06 /* 187 */ + .long 0xE441529F, 0xC2757D1F, 0x534DDC0D /* 188 */ + .long 0xC882A53F, 0x84EAFA3E, 0xA69BB81B /* 189 */ + .long 0x91054A7F, 0x09D5F47D, 0x4D377036 /* 190 */ + .long 0x220A94FE, 0x13ABE8FA, 0x9A6EE06D /* 191 */ + .long 0x441529FC, 0x2757D1F5, 0x34DDC0DB /* 192 */ + .long 0x882A53F8, 0x4EAFA3EA, 0x69BB81B6 /* 193 */ + .long 0x1054A7F0, 0x9D5F47D4, 0xD377036D /* 194 */ + .long 0x20A94FE1, 0x3ABE8FA9, 0xA6EE06DB /* 195 */ + .long 0x41529FC2, 0x757D1F53, 0x4DDC0DB6 /* 196 */ + .long 0x82A53F84, 0xEAFA3EA6, 0x9BB81B6C /* 197 */ + .long 0x054A7F09, 0xD5F47D4D, 0x377036D8 /* 198 */ + .long 0x0A94FE13, 0xABE8FA9A, 0x6EE06DB1 /* 199 */ + .long 0x1529FC27, 0x57D1F534, 0xDDC0DB62 /* 200 */ + .long 0x2A53F84E, 0xAFA3EA69, 0xBB81B6C5 /* 201 */ + .long 0x54A7F09D, 0x5F47D4D3, 0x77036D8A /* 202 */ + .long 0xA94FE13A, 0xBE8FA9A6, 0xEE06DB14 /* 203 */ + .long 0x529FC275, 0x7D1F534D, 0xDC0DB629 /* 204 */ + .long 0xA53F84EA, 0xFA3EA69B, 0xB81B6C52 /* 205 */ + .long 0x4A7F09D5, 0xF47D4D37, 0x7036D8A5 /* 206 */ + .long 0x94FE13AB, 0xE8FA9A6E, 0xE06DB14A /* 207 */ + .long 0x29FC2757, 0xD1F534DD, 0xC0DB6295 /* 208 */ + .long 0x53F84EAF, 0xA3EA69BB, 0x81B6C52B /* 209 */ + .long 0xA7F09D5F, 0x47D4D377, 0x036D8A56 /* 210 */ + .long 0x4FE13ABE, 0x8FA9A6EE, 0x06DB14AC /* 211 */ + .long 0x9FC2757D, 0x1F534DDC, 0x0DB62959 /* 212 */ + .long 0x3F84EAFA, 0x3EA69BB8, 0x1B6C52B3 /* 213 */ + .long 0x7F09D5F4, 0x7D4D3770, 0x36D8A566 /* 214 */ + .long 0xFE13ABE8, 0xFA9A6EE0, 0x6DB14ACC /* 215 */ + .long 0xFC2757D1, 0xF534DDC0, 0xDB629599 /* 216 */ + .long 0xF84EAFA3, 0xEA69BB81, 0xB6C52B32 /* 217 */ + .long 0xF09D5F47, 0xD4D37703, 0x6D8A5664 /* 218 */ + .long 0xE13ABE8F, 0xA9A6EE06, 0xDB14ACC9 /* 219 */ + .long 0xC2757D1F, 0x534DDC0D, 0xB6295993 /* 220 */ + .long 0x84EAFA3E, 0xA69BB81B, 0x6C52B327 /* 221 */ + .long 0x09D5F47D, 0x4D377036, 0xD8A5664F /* 222 */ + .long 0x13ABE8FA, 0x9A6EE06D, 0xB14ACC9E /* 223 */ + .long 0x2757D1F5, 0x34DDC0DB, 0x6295993C /* 224 */ + .long 0x4EAFA3EA, 0x69BB81B6, 0xC52B3278 /* 225 */ + .long 0x9D5F47D4, 0xD377036D, 0x8A5664F1 /* 226 */ + .long 0x3ABE8FA9, 0xA6EE06DB, 0x14ACC9E2 /* 227 */ + .long 0x757D1F53, 0x4DDC0DB6, 0x295993C4 /* 228 */ + .long 0xEAFA3EA6, 0x9BB81B6C, 0x52B32788 /* 229 */ + .long 0xD5F47D4D, 0x377036D8, 0xA5664F10 /* 230 */ + .long 0xABE8FA9A, 0x6EE06DB1, 0x4ACC9E21 /* 231 */ + .long 0x57D1F534, 0xDDC0DB62, 0x95993C43 /* 232 */ + .long 0xAFA3EA69, 0xBB81B6C5, 0x2B327887 /* 233 */ + .long 0x5F47D4D3, 0x77036D8A, 0x5664F10E /* 234 */ + .long 0xBE8FA9A6, 0xEE06DB14, 0xACC9E21C /* 235 */ + .long 0x7D1F534D, 0xDC0DB629, 0x5993C439 /* 236 */ + .long 0xFA3EA69B, 0xB81B6C52, 0xB3278872 /* 237 */ + .long 0xF47D4D37, 0x7036D8A5, 0x664F10E4 /* 238 */ + .long 0xE8FA9A6E, 0xE06DB14A, 0xCC9E21C8 /* 239 */ + .long 0xD1F534DD, 0xC0DB6295, 0x993C4390 /* 240 */ + .long 0xA3EA69BB, 0x81B6C52B, 0x32788720 /* 241 */ + .long 0x47D4D377, 0x036D8A56, 0x64F10E41 /* 242 */ + .long 0x8FA9A6EE, 0x06DB14AC, 0xC9E21C82 /* 243 */ + .long 0x1F534DDC, 0x0DB62959, 0x93C43904 /* 244 */ + .long 0x3EA69BB8, 0x1B6C52B3, 0x27887208 /* 245 */ + .long 0x7D4D3770, 0x36D8A566, 0x4F10E410 /* 246 */ + .long 0xFA9A6EE0, 0x6DB14ACC, 0x9E21C820 /* 247 */ + .long 0xF534DDC0, 0xDB629599, 0x3C439041 /* 248 */ + .long 0xEA69BB81, 0xB6C52B32, 0x78872083 /* 249 */ + .long 0xD4D37703, 0x6D8A5664, 0xF10E4107 /* 250 */ + .long 0xA9A6EE06, 0xDB14ACC9, 0xE21C820F /* 251 */ + .long 0x534DDC0D, 0xB6295993, 0xC439041F /* 252 */ + .long 0xA69BB81B, 0x6C52B327, 0x8872083F /* 253 */ + .long 0x4D377036, 0xD8A5664F, 0x10E4107F /* 254 */ + .long 0x9A6EE06D, 0xB14ACC9E, 0x21C820FF /* 255 */ + .align 64 + .type __svml_stan_reduction_data_internal, @object + .size __svml_stan_reduction_data_internal, .-__svml_stan_reduction_data_internal