/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
.file "__vatan2f.S"
#include "libm.h"
.align 64
!--------------------------------------------------------------------
! {
! /* |X| or |Y| = Nan */
! {
! }
! signx0 &= 2;
! if (ay0 == 0x7f800000)
! else
! signy0 <<= 3;
! goto next;
! }
! {
! ldiff0 >>= 31;
! signx0 &= -16;
! signy0 &= -8;
! ldiff0 <<= 5;
! goto next;
! }
! ldiff0 >>= 31;
! {
! itmp0 >>= 28;
! itmp0 &= -8;
! }
! else
! {
! itmp0 >>= 28;
! itmp0 &= -8;
! }
! else
! signy0 &= -8;
! signx0 &= -16;
!
!--------------------------------------------------------------------
#ifdef __sparcv9
#else
#endif
.begin:
.begin1:
.c0:
.c1:
.c2:
.c3:
.cont0:
.d0:
.c4:
.c5:
.c6:
.c7:
.cont1:
.d1:
.c8:
.c9:
.c10:
.c11:
.cont2:
.d2:
.c12:
.c13:
.c14:
.c15:
.cont3:
.d3:
.c16:
.c17:
.c18:
.c19:
.cont4:
.d4:
.c20:
.c21:
.c22:
.c23:
.cont5:
.d5:
.c24:
.c25:
.c26:
.c27:
.cont6:
.d6:
.c28:
.c29:
.c30:
.c31:
.cont7:
.d7:
.c32:
.c33:
.c34:
.c35:
.cont8:
.d8:
.c36:
.c37:
.c38:
.c39:
.cont9:
.d9:
.align 16
.co0:
.co1:
.co2:
.co3:
.cont10:
.den0:
.co4:
.co5:
.co6:
.co7:
.cont11:
.den1:
.co8:
.co9:
.co10:
.co11:
.cont12:
.den2:
.co12:
.co13:
.co14:
.co15:
.cont13:
.den3:
.co16:
.co17:
.co18:
.co19:
.cont14:
.den4:
.co20:
.co21:
.co22:
.co23:
.cont15:
.den5:
.tail:
.align 16
.spec0:
1:
2:
.align 16
.spec1:
1:
1:
.align 16
.update0:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update1:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update2:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update3:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update4:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update5:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update6:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update7:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update8:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update9:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update10:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update11:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update12:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update13:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update14:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.update15:
1:
2:
1:
1:
bge,a 1f
1:
bge,a 1f
1:
.align 16
.u0:
.u1:
.u2:
.u3:
.u4:
.u5:
.u6:
.u7:
.u8:
.u9:
.u10:
.u11:
.u12:
.u13:
.u14:
.u15:
.u16:
.u17:
.u18:
.u19:
.u20:
.u21:
.u22:
.u23:
.u24:
.u25:
.u26:
.u27:
.u28:
.u29:
.u30:
.u31:
.u32:
.u33:
.u34:
.u35:
.u36:
.u37:
.u38:
.u39:
.up0:
.up1:
.up2:
.up3:
.up4:
.up5:
.up6:
.up7:
.up8:
.up9:
.up10:
.up11:
.up12:
.up13:
.up14:
.up15:
.up16:
.up17:
.up18:
.up19:
.up20:
.up21:
.up22:
.up23:
.exit: