15d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang/* 25d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangCopyright (c) 2014, Intel Corporation 35d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangAll rights reserved. 45d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 55d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangRedistribution and use in source and binary forms, with or without 65d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhangmodification, are permitted provided that the following conditions are met: 75d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 85d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * Redistributions of source code must retain the above copyright notice, 95d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * this list of conditions and the following disclaimer. 105d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 115d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * Redistributions in binary form must reproduce the above copyright notice, 125d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * this list of conditions and the following disclaimer in the documentation 135d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * and/or other materials provided with the distribution. 145d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 155d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * Neither the name of Intel Corporation nor the names of its contributors 165d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * may be used to endorse or promote products derived from this software 175d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang * without specific prior written permission. 185d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 195d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 205d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 215d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 225d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 235d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 245d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 255d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 265d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 275d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 285d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 295d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang*/ 305d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 315d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang/******************************************************************************/ 325d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// ALGORITHM DESCRIPTION 335d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// --------------------- 345d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 355d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// X87 version: 365d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Use 80-bit FPU precision fmul, fsqrt to compute square and sqrt. 375d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 385d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// SSE version: 395d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Swap x, y if |x|<|y| 405d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// For x=2^k*x, get y=y*2^(-k) 415d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Get S ~ sqrt(x^2+y^2) (leading 1 + leading 25 mantissa bits) 425d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 435d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Get D = ( RN(x^2+y^2) - S^2 ) + ( x^2 - RN(x^2) ) + 445d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// + ( y^2 - ((RN(x^2+y^2)-RN(x^2)) ) 455d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 465d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Result is 2^k*(S + Se), where Se = S*e 475d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// S*e is approximated as (D/2S)*( 1 - (D/2S)^2*1.0/S ) 485d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 495d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Return 2^k*(S+Se) 505d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 515d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// For |y/x|<2^(-64), return x 525d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 535d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// For cases where maximum biased exponent is either greater than 7fdh or 545d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// below 32, take a special path to check for special cases (0, NaN, Inf), 555d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// possible overflow, and more accurate computation for denormal results 565d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 575d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// Special cases: 585d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// hypot(x,y), hypot(y,x), and hypot(x,-y) are equivalent 595d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// hypot(x,+-0) is equivalent to fabs(x) 605d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// hypot(x,y) = y if (x==NaN or x==INF) and y==INF 615d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// hypot(x,y) = x if (x==NaN or x==INF) and y!=INF (even if y==NaN!) 625d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// hypot(x,y) = y if (x!=NaN and x!=INF) and (y==NaN or y==INF) 635d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang// 645d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang/******************************************************************************/ 655d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 665d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang#include <private/bionic_asm.h> 675d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# -- Begin static_func 685d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .text 695d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .align __bionic_asm_align 705d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .type static_func, @function 715d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhangstatic_func: 725d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang..B1.1: 735d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang call ..L2 745d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang..L2: 755d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang popl %eax 765d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang lea _GLOBAL_OFFSET_TABLE_+[. - ..L2](%eax), %eax 775d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang lea static_const_table@GOTOFF(%eax), %eax 785d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang ret 795d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .size static_func,.-static_func 805d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# -- End static_func 815d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 825d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# -- Begin hypot 835d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangENTRY(hypot) 845d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# parameter 1: 8 + %ebp 855d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# parameter 2: 16 + %ebp 865d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang..B2.1: 875d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang..B2.2: 885d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang pushl %ebp 895d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl %esp, %ebp 905d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang subl $152, %esp 915d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl %ebx, 96(%esp) 925d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang call static_func 935d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl %eax, %ebx 945d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movapd (%ebx), %xmm3 955d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd 160(%esp), %xmm0 965d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd 168(%esp), %xmm1 975d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang andpd %xmm3, %xmm0 985d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang andpd %xmm3, %xmm1 995d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang pextrw $3, %xmm0, %eax 1005d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang pextrw $3, %xmm1, %edx 1015d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $24528, %eax 1025d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang ja .L_2TAG_PACKET_0.0.2 1035d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $24528, %edx 1045d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang ja .L_2TAG_PACKET_0.0.2 1055d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_1.0.2: 1065d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 160(%esp) 1075d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 168(%esp) 1085d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fxch %st(1) 1095d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fmul %st(0), %st 1105d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fxch %st(1) 1115d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang nop 1125d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fmul %st(0), %st 1135d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang faddp %st, %st(1) 1145d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fsqrt 1155d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_2.0.2 1165d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_0.0.2: 1175d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $32752, %eax 1185d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl %eax, %ecx 1195d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jae .L_2TAG_PACKET_3.0.2 1205d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang subl %edx, %ecx 1215d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $32752, %edx 1225d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jae .L_2TAG_PACKET_3.0.2 1235d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang addl $928, %ecx 1245d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang addl %edx, %eax 1255d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $1856, %ecx 1265d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang ja .L_2TAG_PACKET_4.0.2 1275d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $49056, %eax 1285d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jb .L_2TAG_PACKET_1.0.2 1295d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 160(%esp) 1305d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 168(%esp) 1315d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fxch %st(1) 1325d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fmul %st(0), %st 1335d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fxch %st(1) 1345d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang nop 1355d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fmul %st(0), %st 1365d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang faddp %st, %st(1) 1375d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fsqrt 1385d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_5.0.2: 1395d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fstl (%esp) 1405d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fstpt 16(%esp) 1415d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang xorl %eax, %eax 1425d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movw 24(%esp), %ax 1435d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmpl $17407, %eax 1445d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jae .L_2TAG_PACKET_6.0.2 1455d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl (%esp) 1465d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_7.0.2 1475d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_4.0.2: 1485d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd %xmm0, 32(%esp) 1495d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd %xmm1, 40(%esp) 1505d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 32(%esp) 1515d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang faddl 40(%esp) 1525d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_5.0.2 1535d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_6.0.2: 1545d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl $46, %edx 1555d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_8.0.2: 1565d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd 160(%esp), %xmm0 1575d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd 168(%esp), %xmm1 1585d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl (%esp) 1595d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_7.0.2 1605d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_3.0.2: 1615d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang shufpd $0, %xmm1, %xmm0 1625d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movdqa %xmm0, %xmm2 1635d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movdqa 16(%ebx), %xmm3 1645d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd %xmm0, 32(%esp) 1655d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movsd %xmm1, 40(%esp) 1665d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmppd $3, %xmm0, %xmm2 1675d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang cmppd $0, %xmm0, %xmm3 1685d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movmskpd %xmm2, %edx 1695d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movmskpd %xmm3, %eax 1705d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang testl %edx, %edx 1715d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang je .L_2TAG_PACKET_9.0.2 1725d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 32(%esp) 1735d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fmull 40(%esp) 1745d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang testl $1, %eax 1755d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jne .L_2TAG_PACKET_10.0.2 1765d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang testl $2, %eax 1775d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jne .L_2TAG_PACKET_11.0.2 1785d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_2.0.2 1795d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_9.0.2: 1805d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 32(%esp) 1815d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang faddl 40(%esp) 1825d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_2.0.2 1835d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_10.0.2: 1845d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fstpl 40(%esp) 1855d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 32(%esp) 1865d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_7.0.2 1875d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_11.0.2: 1885d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fstpl 32(%esp) 1895d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang fldl 40(%esp) 1905d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang jmp .L_2TAG_PACKET_7.0.2 1915d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_2.0.2: 1925d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang.L_2TAG_PACKET_7.0.2: 1935d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl 96(%esp), %ebx 1945d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang movl %ebp, %esp 1955d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang popl %ebp 1965d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang ret 1975d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang..B2.3: 1985d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei ZhangEND(hypot) 1995d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# -- End hypot 2005d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang 2015d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# Start file scope ASM 202995b813e91a5eb67a970b9f076911873bdf5dbc4Christopher FerrisALIAS_SYMBOL(hypotl, hypot); 2035d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# End file scope ASM 2045d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .section .rodata, "a" 2055d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .align 16 2065d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .align 16 2075d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhangstatic_const_table: 2085d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 4294967295 2095d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 2147483647 2105d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 4294967295 2115d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 2147483647 2125d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 0 2135d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 2146435072 2145d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 0 2155d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .long 2146435072 2165d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .type static_const_table,@object 2175d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .size static_const_table,32 2185d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .data 2195d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang .section .note.GNU-stack, "" 2205d4f0e6a26b66f1dab8d20a65af4469c6dd7370dJingwei Zhang# End 221