1*25c28e83SPiotr Jasiukajtis/* 2*25c28e83SPiotr Jasiukajtis * CDDL HEADER START 3*25c28e83SPiotr Jasiukajtis * 4*25c28e83SPiotr Jasiukajtis * The contents of this file are subject to the terms of the 5*25c28e83SPiotr Jasiukajtis * Common Development and Distribution License (the "License"). 6*25c28e83SPiotr Jasiukajtis * You may not use this file except in compliance with the License. 7*25c28e83SPiotr Jasiukajtis * 8*25c28e83SPiotr Jasiukajtis * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*25c28e83SPiotr Jasiukajtis * or http://www.opensolaris.org/os/licensing. 10*25c28e83SPiotr Jasiukajtis * See the License for the specific language governing permissions 11*25c28e83SPiotr Jasiukajtis * and limitations under the License. 12*25c28e83SPiotr Jasiukajtis * 13*25c28e83SPiotr Jasiukajtis * When distributing Covered Code, include this CDDL HEADER in each 14*25c28e83SPiotr Jasiukajtis * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*25c28e83SPiotr Jasiukajtis * If applicable, add the following below this CDDL HEADER, with the 16*25c28e83SPiotr Jasiukajtis * fields enclosed by brackets "[]" replaced with your own identifying 17*25c28e83SPiotr Jasiukajtis * information: Portions Copyright [yyyy] [name of copyright owner] 18*25c28e83SPiotr Jasiukajtis * 19*25c28e83SPiotr Jasiukajtis * CDDL HEADER END 20*25c28e83SPiotr Jasiukajtis */ 21*25c28e83SPiotr Jasiukajtis/* 22*25c28e83SPiotr Jasiukajtis * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 23*25c28e83SPiotr Jasiukajtis */ 24*25c28e83SPiotr Jasiukajtis/* 25*25c28e83SPiotr Jasiukajtis * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 26*25c28e83SPiotr Jasiukajtis * Use is subject to license terms. 27*25c28e83SPiotr Jasiukajtis */ 28*25c28e83SPiotr Jasiukajtis 29*25c28e83SPiotr Jasiukajtis .file "__vsinf.S" 30*25c28e83SPiotr Jasiukajtis 31*25c28e83SPiotr Jasiukajtis#include "libm.h" 32*25c28e83SPiotr Jasiukajtis 33*25c28e83SPiotr Jasiukajtis RO_DATA 34*25c28e83SPiotr Jasiukajtis .align 64 35*25c28e83SPiotr Jasiukajtisconstants: 36*25c28e83SPiotr Jasiukajtis .word 0xbfc55554,0x60000000 37*25c28e83SPiotr Jasiukajtis .word 0x3f811077,0xe0000000 38*25c28e83SPiotr Jasiukajtis .word 0xbf29956b,0x60000000 39*25c28e83SPiotr Jasiukajtis .word 0x3ff00000,0x00000000 40*25c28e83SPiotr Jasiukajtis .word 0xbfe00000,0x00000000 41*25c28e83SPiotr Jasiukajtis .word 0x3fa55554,0xa0000000 42*25c28e83SPiotr Jasiukajtis .word 0xbf56c0c1,0xe0000000 43*25c28e83SPiotr Jasiukajtis .word 0x3ef99e24,0xe0000000 44*25c28e83SPiotr Jasiukajtis .word 0x3fe45f30,0x6dc9c883 45*25c28e83SPiotr Jasiukajtis .word 0x43380000,0x00000000 46*25c28e83SPiotr Jasiukajtis .word 0x3ff921fb,0x54400000 47*25c28e83SPiotr Jasiukajtis .word 0x3dd0b461,0x1a626331 48*25c28e83SPiotr Jasiukajtis .word 0x3f490fdb,0 49*25c28e83SPiotr Jasiukajtis .word 0x49c90fdb,0 50*25c28e83SPiotr Jasiukajtis .word 0x7f800000,0 51*25c28e83SPiotr Jasiukajtis .word 0x80000000,0 52*25c28e83SPiotr Jasiukajtis 53*25c28e83SPiotr Jasiukajtis#define S0 0x0 54*25c28e83SPiotr Jasiukajtis#define S1 0x08 55*25c28e83SPiotr Jasiukajtis#define S2 0x10 56*25c28e83SPiotr Jasiukajtis#define one 0x18 57*25c28e83SPiotr Jasiukajtis#define mhalf 0x20 58*25c28e83SPiotr Jasiukajtis#define C0 0x28 59*25c28e83SPiotr Jasiukajtis#define C1 0x30 60*25c28e83SPiotr Jasiukajtis#define C2 0x38 61*25c28e83SPiotr Jasiukajtis#define invpio2 0x40 62*25c28e83SPiotr Jasiukajtis#define round 0x48 63*25c28e83SPiotr Jasiukajtis#define pio2_1 0x50 64*25c28e83SPiotr Jasiukajtis#define pio2_t 0x58 65*25c28e83SPiotr Jasiukajtis#define thresh1 0x60 66*25c28e83SPiotr Jasiukajtis#define thresh2 0x68 67*25c28e83SPiotr Jasiukajtis#define inf 0x70 68*25c28e83SPiotr Jasiukajtis#define signbit 0x78 69*25c28e83SPiotr Jasiukajtis 70*25c28e83SPiotr Jasiukajtis! local storage indices 71*25c28e83SPiotr Jasiukajtis 72*25c28e83SPiotr Jasiukajtis#define xsave STACK_BIAS-0x8 73*25c28e83SPiotr Jasiukajtis#define ysave STACK_BIAS-0x10 74*25c28e83SPiotr Jasiukajtis#define nsave STACK_BIAS-0x14 75*25c28e83SPiotr Jasiukajtis#define sxsave STACK_BIAS-0x18 76*25c28e83SPiotr Jasiukajtis#define sysave STACK_BIAS-0x1c 77*25c28e83SPiotr Jasiukajtis#define junk STACK_BIAS-0x20 78*25c28e83SPiotr Jasiukajtis#define n3 STACK_BIAS-0x24 79*25c28e83SPiotr Jasiukajtis#define n2 STACK_BIAS-0x28 80*25c28e83SPiotr Jasiukajtis#define n1 STACK_BIAS-0x2c 81*25c28e83SPiotr Jasiukajtis#define n0 STACK_BIAS-0x30 82*25c28e83SPiotr Jasiukajtis! sizeof temp storage - must be a multiple of 16 for V9 83*25c28e83SPiotr Jasiukajtis#define tmps 0x30 84*25c28e83SPiotr Jasiukajtis 85*25c28e83SPiotr Jasiukajtis! register use 86*25c28e83SPiotr Jasiukajtis 87*25c28e83SPiotr Jasiukajtis! i0 n 88*25c28e83SPiotr Jasiukajtis! i1 x 89*25c28e83SPiotr Jasiukajtis! i2 stridex 90*25c28e83SPiotr Jasiukajtis! i3 y 91*25c28e83SPiotr Jasiukajtis! i4 stridey 92*25c28e83SPiotr Jasiukajtis! i5 biguns 93*25c28e83SPiotr Jasiukajtis 94*25c28e83SPiotr Jasiukajtis! l0 n0 95*25c28e83SPiotr Jasiukajtis! l1 n1 96*25c28e83SPiotr Jasiukajtis! l2 n2 97*25c28e83SPiotr Jasiukajtis! l3 n3 98*25c28e83SPiotr Jasiukajtis! l4 99*25c28e83SPiotr Jasiukajtis! l5 100*25c28e83SPiotr Jasiukajtis! l6 101*25c28e83SPiotr Jasiukajtis! l7 102*25c28e83SPiotr Jasiukajtis 103*25c28e83SPiotr Jasiukajtis! the following are 64-bit registers in both V8+ and V9 104*25c28e83SPiotr Jasiukajtis 105*25c28e83SPiotr Jasiukajtis! g1 106*25c28e83SPiotr Jasiukajtis! g5 107*25c28e83SPiotr Jasiukajtis 108*25c28e83SPiotr Jasiukajtis! o0 py0 109*25c28e83SPiotr Jasiukajtis! o1 py1 110*25c28e83SPiotr Jasiukajtis! o2 py2 111*25c28e83SPiotr Jasiukajtis! o3 py3 112*25c28e83SPiotr Jasiukajtis! o4 113*25c28e83SPiotr Jasiukajtis! o5 114*25c28e83SPiotr Jasiukajtis! o7 115*25c28e83SPiotr Jasiukajtis 116*25c28e83SPiotr Jasiukajtis! f0 x0 117*25c28e83SPiotr Jasiukajtis! f2 x1 118*25c28e83SPiotr Jasiukajtis! f4 x2 119*25c28e83SPiotr Jasiukajtis! f6 x3 120*25c28e83SPiotr Jasiukajtis! f8 thresh1 (pi/4) 121*25c28e83SPiotr Jasiukajtis! f10 y0 122*25c28e83SPiotr Jasiukajtis! f12 y1 123*25c28e83SPiotr Jasiukajtis! f14 y2 124*25c28e83SPiotr Jasiukajtis! f16 y3 125*25c28e83SPiotr Jasiukajtis! f18 thresh2 (2^19 pi) 126*25c28e83SPiotr Jasiukajtis! f20 127*25c28e83SPiotr Jasiukajtis! f22 128*25c28e83SPiotr Jasiukajtis! f24 129*25c28e83SPiotr Jasiukajtis! f26 130*25c28e83SPiotr Jasiukajtis! f28 signbit 131*25c28e83SPiotr Jasiukajtis! f30 132*25c28e83SPiotr Jasiukajtis! f32 133*25c28e83SPiotr Jasiukajtis! f34 134*25c28e83SPiotr Jasiukajtis! f36 135*25c28e83SPiotr Jasiukajtis! f38 inf 136*25c28e83SPiotr Jasiukajtis! f40 S0 137*25c28e83SPiotr Jasiukajtis! f42 S1 138*25c28e83SPiotr Jasiukajtis! f44 S2 139*25c28e83SPiotr Jasiukajtis! f46 one 140*25c28e83SPiotr Jasiukajtis! f48 mhalf 141*25c28e83SPiotr Jasiukajtis! f50 C0 142*25c28e83SPiotr Jasiukajtis! f52 C1 143*25c28e83SPiotr Jasiukajtis! f54 C2 144*25c28e83SPiotr Jasiukajtis! f56 invpio2 145*25c28e83SPiotr Jasiukajtis! f58 round 146*25c28e83SPiotr Jasiukajtis! f60 pio2_1 147*25c28e83SPiotr Jasiukajtis! f62 pio2_t 148*25c28e83SPiotr Jasiukajtis 149*25c28e83SPiotr Jasiukajtis ENTRY(__vsinf) 150*25c28e83SPiotr Jasiukajtis save %sp,-SA(MINFRAME)-tmps,%sp 151*25c28e83SPiotr Jasiukajtis PIC_SETUP(l7) 152*25c28e83SPiotr Jasiukajtis PIC_SET(l7,constants,l1) 153*25c28e83SPiotr Jasiukajtis mov %l1,%g1 154*25c28e83SPiotr Jasiukajtis wr %g0,0x82,%asi ! set %asi for non-faulting loads 155*25c28e83SPiotr Jasiukajtis#ifdef __sparcv9 156*25c28e83SPiotr Jasiukajtis stx %i1,[%fp+xsave] ! save arguments 157*25c28e83SPiotr Jasiukajtis stx %i3,[%fp+ysave] 158*25c28e83SPiotr Jasiukajtis#else 159*25c28e83SPiotr Jasiukajtis st %i1,[%fp+xsave] ! save arguments 160*25c28e83SPiotr Jasiukajtis st %i3,[%fp+ysave] 161*25c28e83SPiotr Jasiukajtis#endif 162*25c28e83SPiotr Jasiukajtis st %i0,[%fp+nsave] 163*25c28e83SPiotr Jasiukajtis st %i2,[%fp+sxsave] 164*25c28e83SPiotr Jasiukajtis st %i4,[%fp+sysave] 165*25c28e83SPiotr Jasiukajtis mov 0,%i5 ! biguns = 0 166*25c28e83SPiotr Jasiukajtis ldd [%g1+S0],%f40 ! load constants 167*25c28e83SPiotr Jasiukajtis ldd [%g1+S1],%f42 168*25c28e83SPiotr Jasiukajtis ldd [%g1+S2],%f44 169*25c28e83SPiotr Jasiukajtis ldd [%g1+one],%f46 170*25c28e83SPiotr Jasiukajtis ldd [%g1+mhalf],%f48 171*25c28e83SPiotr Jasiukajtis ldd [%g1+C0],%f50 172*25c28e83SPiotr Jasiukajtis ldd [%g1+C1],%f52 173*25c28e83SPiotr Jasiukajtis ldd [%g1+C2],%f54 174*25c28e83SPiotr Jasiukajtis ldd [%g1+invpio2],%f56 175*25c28e83SPiotr Jasiukajtis ldd [%g1+round],%f58 176*25c28e83SPiotr Jasiukajtis ldd [%g1+pio2_1],%f60 177*25c28e83SPiotr Jasiukajtis ldd [%g1+pio2_t],%f62 178*25c28e83SPiotr Jasiukajtis ldd [%g1+thresh1],%f8 179*25c28e83SPiotr Jasiukajtis ldd [%g1+thresh2],%f18 180*25c28e83SPiotr Jasiukajtis ldd [%g1+inf],%f38 181*25c28e83SPiotr Jasiukajtis ldd [%g1+signbit],%f28 182*25c28e83SPiotr Jasiukajtis sll %i2,2,%i2 ! scale strides 183*25c28e83SPiotr Jasiukajtis sll %i4,2,%i4 184*25c28e83SPiotr Jasiukajtis fzero %f10 ! loop prologue 185*25c28e83SPiotr Jasiukajtis add %fp,junk,%o0 186*25c28e83SPiotr Jasiukajtis fzero %f12 187*25c28e83SPiotr Jasiukajtis add %fp,junk,%o1 188*25c28e83SPiotr Jasiukajtis fzero %f14 189*25c28e83SPiotr Jasiukajtis add %fp,junk,%o2 190*25c28e83SPiotr Jasiukajtis fzero %f16 191*25c28e83SPiotr Jasiukajtis ba .start 192*25c28e83SPiotr Jasiukajtis add %fp,junk,%o3 193*25c28e83SPiotr Jasiukajtis 194*25c28e83SPiotr Jasiukajtis! 16-byte aligned 195*25c28e83SPiotr Jasiukajtis .align 16 196*25c28e83SPiotr Jasiukajtis.start: 197*25c28e83SPiotr Jasiukajtis ld [%i1],%f0 ! *x 198*25c28e83SPiotr Jasiukajtis add %i1,%i2,%i1 ! x += stridex 199*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 200*25c28e83SPiotr Jasiukajtis fdtos %f10,%f10 201*25c28e83SPiotr Jasiukajtis 202*25c28e83SPiotr Jasiukajtis st %f10,[%o0] 203*25c28e83SPiotr Jasiukajtis mov %i3,%o0 ! py0 = y 204*25c28e83SPiotr Jasiukajtis ble,pn %icc,.last1 205*25c28e83SPiotr Jasiukajtis! delay slot 206*25c28e83SPiotr Jasiukajtis add %i3,%i4,%i3 ! y += stridey 207*25c28e83SPiotr Jasiukajtis 208*25c28e83SPiotr Jasiukajtis ld [%i1],%f2 ! *x 209*25c28e83SPiotr Jasiukajtis add %i1,%i2,%i1 ! x += stridex 210*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 211*25c28e83SPiotr Jasiukajtis fdtos %f12,%f12 212*25c28e83SPiotr Jasiukajtis 213*25c28e83SPiotr Jasiukajtis st %f12,[%o1] 214*25c28e83SPiotr Jasiukajtis mov %i3,%o1 ! py1 = y 215*25c28e83SPiotr Jasiukajtis ble,pn %icc,.last2 216*25c28e83SPiotr Jasiukajtis! delay slot 217*25c28e83SPiotr Jasiukajtis add %i3,%i4,%i3 ! y += stridey 218*25c28e83SPiotr Jasiukajtis 219*25c28e83SPiotr Jasiukajtis ld [%i1],%f4 ! *x 220*25c28e83SPiotr Jasiukajtis add %i1,%i2,%i1 ! x += stridex 221*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 222*25c28e83SPiotr Jasiukajtis fdtos %f14,%f14 223*25c28e83SPiotr Jasiukajtis 224*25c28e83SPiotr Jasiukajtis st %f14,[%o2] 225*25c28e83SPiotr Jasiukajtis mov %i3,%o2 ! py2 = y 226*25c28e83SPiotr Jasiukajtis ble,pn %icc,.last3 227*25c28e83SPiotr Jasiukajtis! delay slot 228*25c28e83SPiotr Jasiukajtis add %i3,%i4,%i3 ! y += stridey 229*25c28e83SPiotr Jasiukajtis 230*25c28e83SPiotr Jasiukajtis ld [%i1],%f6 ! *x 231*25c28e83SPiotr Jasiukajtis add %i1,%i2,%i1 ! x += stridex 232*25c28e83SPiotr Jasiukajtis nop 233*25c28e83SPiotr Jasiukajtis fdtos %f16,%f16 234*25c28e83SPiotr Jasiukajtis 235*25c28e83SPiotr Jasiukajtis st %f16,[%o3] 236*25c28e83SPiotr Jasiukajtis mov %i3,%o3 ! py3 = y 237*25c28e83SPiotr Jasiukajtis add %i3,%i4,%i3 ! y += stridey 238*25c28e83SPiotr Jasiukajtis.cont: 239*25c28e83SPiotr Jasiukajtis fabsd %f0,%f30 240*25c28e83SPiotr Jasiukajtis 241*25c28e83SPiotr Jasiukajtis fabsd %f2,%f32 242*25c28e83SPiotr Jasiukajtis 243*25c28e83SPiotr Jasiukajtis fabsd %f4,%f34 244*25c28e83SPiotr Jasiukajtis 245*25c28e83SPiotr Jasiukajtis fabsd %f6,%f36 246*25c28e83SPiotr Jasiukajtis fcmple32 %f30,%f18,%l0 247*25c28e83SPiotr Jasiukajtis 248*25c28e83SPiotr Jasiukajtis fcmple32 %f32,%f18,%l1 249*25c28e83SPiotr Jasiukajtis 250*25c28e83SPiotr Jasiukajtis fcmple32 %f34,%f18,%l2 251*25c28e83SPiotr Jasiukajtis 252*25c28e83SPiotr Jasiukajtis fcmple32 %f36,%f18,%l3 253*25c28e83SPiotr Jasiukajtis nop 254*25c28e83SPiotr Jasiukajtis 255*25c28e83SPiotr Jasiukajtis! 16-byte aligned 256*25c28e83SPiotr Jasiukajtis andcc %l0,2,%g0 257*25c28e83SPiotr Jasiukajtis bz,pn %icc,.range0 ! branch if > 2^19 pi 258*25c28e83SPiotr Jasiukajtis! delay slot 259*25c28e83SPiotr Jasiukajtis fcmple32 %f30,%f8,%l0 260*25c28e83SPiotr Jasiukajtis 261*25c28e83SPiotr Jasiukajtis.check1: 262*25c28e83SPiotr Jasiukajtis andcc %l1,2,%g0 263*25c28e83SPiotr Jasiukajtis bz,pn %icc,.range1 ! branch if > 2^19 pi 264*25c28e83SPiotr Jasiukajtis! delay slot 265*25c28e83SPiotr Jasiukajtis fcmple32 %f32,%f8,%l1 266*25c28e83SPiotr Jasiukajtis 267*25c28e83SPiotr Jasiukajtis.check2: 268*25c28e83SPiotr Jasiukajtis andcc %l2,2,%g0 269*25c28e83SPiotr Jasiukajtis bz,pn %icc,.range2 ! branch if > 2^19 pi 270*25c28e83SPiotr Jasiukajtis! delay slot 271*25c28e83SPiotr Jasiukajtis fcmple32 %f34,%f8,%l2 272*25c28e83SPiotr Jasiukajtis 273*25c28e83SPiotr Jasiukajtis.check3: 274*25c28e83SPiotr Jasiukajtis andcc %l3,2,%g0 275*25c28e83SPiotr Jasiukajtis bz,pn %icc,.range3 ! branch if > 2^19 pi 276*25c28e83SPiotr Jasiukajtis! delay slot 277*25c28e83SPiotr Jasiukajtis fcmple32 %f36,%f8,%l3 278*25c28e83SPiotr Jasiukajtis 279*25c28e83SPiotr Jasiukajtis.checkprimary: 280*25c28e83SPiotr Jasiukajtis fsmuld %f0,%f0,%f30 281*25c28e83SPiotr Jasiukajtis fstod %f0,%f0 282*25c28e83SPiotr Jasiukajtis 283*25c28e83SPiotr Jasiukajtis fsmuld %f2,%f2,%f32 284*25c28e83SPiotr Jasiukajtis fstod %f2,%f2 285*25c28e83SPiotr Jasiukajtis and %l0,%l1,%o4 286*25c28e83SPiotr Jasiukajtis 287*25c28e83SPiotr Jasiukajtis fsmuld %f4,%f4,%f34 288*25c28e83SPiotr Jasiukajtis fstod %f4,%f4 289*25c28e83SPiotr Jasiukajtis 290*25c28e83SPiotr Jasiukajtis fsmuld %f6,%f6,%f36 291*25c28e83SPiotr Jasiukajtis fstod %f6,%f6 292*25c28e83SPiotr Jasiukajtis and %l2,%l3,%o5 293*25c28e83SPiotr Jasiukajtis 294*25c28e83SPiotr Jasiukajtis fmuld %f30,%f44,%f10 295*25c28e83SPiotr Jasiukajtis and %o4,%o5,%o5 296*25c28e83SPiotr Jasiukajtis 297*25c28e83SPiotr Jasiukajtis fmuld %f32,%f44,%f12 298*25c28e83SPiotr Jasiukajtis andcc %o5,2,%g0 299*25c28e83SPiotr Jasiukajtis bz,pn %icc,.medium ! branch if any argument is > pi/4 300*25c28e83SPiotr Jasiukajtis! delay slot 301*25c28e83SPiotr Jasiukajtis nop 302*25c28e83SPiotr Jasiukajtis 303*25c28e83SPiotr Jasiukajtis fmuld %f34,%f44,%f14 304*25c28e83SPiotr Jasiukajtis 305*25c28e83SPiotr Jasiukajtis fmuld %f36,%f44,%f16 306*25c28e83SPiotr Jasiukajtis 307*25c28e83SPiotr Jasiukajtis fmuld %f30,%f40,%f20 308*25c28e83SPiotr Jasiukajtis faddd %f10,%f42,%f10 309*25c28e83SPiotr Jasiukajtis 310*25c28e83SPiotr Jasiukajtis fmuld %f32,%f40,%f22 311*25c28e83SPiotr Jasiukajtis faddd %f12,%f42,%f12 312*25c28e83SPiotr Jasiukajtis 313*25c28e83SPiotr Jasiukajtis fmuld %f34,%f40,%f24 314*25c28e83SPiotr Jasiukajtis faddd %f14,%f42,%f14 315*25c28e83SPiotr Jasiukajtis 316*25c28e83SPiotr Jasiukajtis fmuld %f36,%f40,%f26 317*25c28e83SPiotr Jasiukajtis faddd %f16,%f42,%f16 318*25c28e83SPiotr Jasiukajtis 319*25c28e83SPiotr Jasiukajtis fmuld %f30,%f30,%f30 320*25c28e83SPiotr Jasiukajtis faddd %f20,%f46,%f20 321*25c28e83SPiotr Jasiukajtis 322*25c28e83SPiotr Jasiukajtis fmuld %f32,%f32,%f32 323*25c28e83SPiotr Jasiukajtis faddd %f22,%f46,%f22 324*25c28e83SPiotr Jasiukajtis 325*25c28e83SPiotr Jasiukajtis fmuld %f34,%f34,%f34 326*25c28e83SPiotr Jasiukajtis faddd %f24,%f46,%f24 327*25c28e83SPiotr Jasiukajtis 328*25c28e83SPiotr Jasiukajtis fmuld %f36,%f36,%f36 329*25c28e83SPiotr Jasiukajtis faddd %f26,%f46,%f26 330*25c28e83SPiotr Jasiukajtis 331*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 332*25c28e83SPiotr Jasiukajtis 333*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 334*25c28e83SPiotr Jasiukajtis 335*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 336*25c28e83SPiotr Jasiukajtis 337*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 338*25c28e83SPiotr Jasiukajtis 339*25c28e83SPiotr Jasiukajtis faddd %f10,%f20,%f10 340*25c28e83SPiotr Jasiukajtis 341*25c28e83SPiotr Jasiukajtis faddd %f12,%f22,%f12 342*25c28e83SPiotr Jasiukajtis 343*25c28e83SPiotr Jasiukajtis faddd %f14,%f24,%f14 344*25c28e83SPiotr Jasiukajtis 345*25c28e83SPiotr Jasiukajtis faddd %f16,%f26,%f16 346*25c28e83SPiotr Jasiukajtis 347*25c28e83SPiotr Jasiukajtis fmuld %f0,%f10,%f10 348*25c28e83SPiotr Jasiukajtis 349*25c28e83SPiotr Jasiukajtis fmuld %f2,%f12,%f12 350*25c28e83SPiotr Jasiukajtis 351*25c28e83SPiotr Jasiukajtis fmuld %f4,%f14,%f14 352*25c28e83SPiotr Jasiukajtis 353*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 354*25c28e83SPiotr Jasiukajtis bg,pt %icc,.start 355*25c28e83SPiotr Jasiukajtis! delay slot 356*25c28e83SPiotr Jasiukajtis fmuld %f6,%f16,%f16 357*25c28e83SPiotr Jasiukajtis 358*25c28e83SPiotr Jasiukajtis ba,pt %icc,.end 359*25c28e83SPiotr Jasiukajtis! delay slot 360*25c28e83SPiotr Jasiukajtis nop 361*25c28e83SPiotr Jasiukajtis 362*25c28e83SPiotr Jasiukajtis 363*25c28e83SPiotr Jasiukajtis .align 16 364*25c28e83SPiotr Jasiukajtis.medium: 365*25c28e83SPiotr Jasiukajtis fmuld %f0,%f56,%f10 366*25c28e83SPiotr Jasiukajtis 367*25c28e83SPiotr Jasiukajtis fmuld %f2,%f56,%f12 368*25c28e83SPiotr Jasiukajtis 369*25c28e83SPiotr Jasiukajtis fmuld %f4,%f56,%f14 370*25c28e83SPiotr Jasiukajtis 371*25c28e83SPiotr Jasiukajtis fmuld %f6,%f56,%f16 372*25c28e83SPiotr Jasiukajtis 373*25c28e83SPiotr Jasiukajtis faddd %f10,%f58,%f10 374*25c28e83SPiotr Jasiukajtis st %f11,[%fp+n0] 375*25c28e83SPiotr Jasiukajtis 376*25c28e83SPiotr Jasiukajtis faddd %f12,%f58,%f12 377*25c28e83SPiotr Jasiukajtis st %f13,[%fp+n1] 378*25c28e83SPiotr Jasiukajtis 379*25c28e83SPiotr Jasiukajtis faddd %f14,%f58,%f14 380*25c28e83SPiotr Jasiukajtis st %f15,[%fp+n2] 381*25c28e83SPiotr Jasiukajtis 382*25c28e83SPiotr Jasiukajtis faddd %f16,%f58,%f16 383*25c28e83SPiotr Jasiukajtis st %f17,[%fp+n3] 384*25c28e83SPiotr Jasiukajtis 385*25c28e83SPiotr Jasiukajtis fsubd %f10,%f58,%f10 386*25c28e83SPiotr Jasiukajtis 387*25c28e83SPiotr Jasiukajtis fsubd %f12,%f58,%f12 388*25c28e83SPiotr Jasiukajtis 389*25c28e83SPiotr Jasiukajtis fsubd %f14,%f58,%f14 390*25c28e83SPiotr Jasiukajtis 391*25c28e83SPiotr Jasiukajtis fsubd %f16,%f58,%f16 392*25c28e83SPiotr Jasiukajtis 393*25c28e83SPiotr Jasiukajtis fmuld %f10,%f60,%f20 394*25c28e83SPiotr Jasiukajtis ld [%fp+n0],%l0 395*25c28e83SPiotr Jasiukajtis 396*25c28e83SPiotr Jasiukajtis fmuld %f12,%f60,%f22 397*25c28e83SPiotr Jasiukajtis ld [%fp+n1],%l1 398*25c28e83SPiotr Jasiukajtis 399*25c28e83SPiotr Jasiukajtis fmuld %f14,%f60,%f24 400*25c28e83SPiotr Jasiukajtis ld [%fp+n2],%l2 401*25c28e83SPiotr Jasiukajtis 402*25c28e83SPiotr Jasiukajtis fmuld %f16,%f60,%f26 403*25c28e83SPiotr Jasiukajtis ld [%fp+n3],%l3 404*25c28e83SPiotr Jasiukajtis 405*25c28e83SPiotr Jasiukajtis fsubd %f0,%f20,%f0 406*25c28e83SPiotr Jasiukajtis fmuld %f10,%f62,%f30 407*25c28e83SPiotr Jasiukajtis 408*25c28e83SPiotr Jasiukajtis fsubd %f2,%f22,%f2 409*25c28e83SPiotr Jasiukajtis fmuld %f12,%f62,%f32 410*25c28e83SPiotr Jasiukajtis 411*25c28e83SPiotr Jasiukajtis fsubd %f4,%f24,%f4 412*25c28e83SPiotr Jasiukajtis fmuld %f14,%f62,%f34 413*25c28e83SPiotr Jasiukajtis 414*25c28e83SPiotr Jasiukajtis fsubd %f6,%f26,%f6 415*25c28e83SPiotr Jasiukajtis fmuld %f16,%f62,%f36 416*25c28e83SPiotr Jasiukajtis 417*25c28e83SPiotr Jasiukajtis fsubd %f0,%f30,%f0 418*25c28e83SPiotr Jasiukajtis 419*25c28e83SPiotr Jasiukajtis fsubd %f2,%f32,%f2 420*25c28e83SPiotr Jasiukajtis 421*25c28e83SPiotr Jasiukajtis fsubd %f4,%f34,%f4 422*25c28e83SPiotr Jasiukajtis 423*25c28e83SPiotr Jasiukajtis fsubd %f6,%f36,%f6 424*25c28e83SPiotr Jasiukajtis andcc %l0,1,%g0 425*25c28e83SPiotr Jasiukajtis 426*25c28e83SPiotr Jasiukajtis fmuld %f0,%f0,%f30 427*25c28e83SPiotr Jasiukajtis bz,pn %icc,.case8 428*25c28e83SPiotr Jasiukajtis! delay slot 429*25c28e83SPiotr Jasiukajtis andcc %l1,1,%g0 430*25c28e83SPiotr Jasiukajtis 431*25c28e83SPiotr Jasiukajtis fmuld %f2,%f2,%f32 432*25c28e83SPiotr Jasiukajtis bz,pn %icc,.case4 433*25c28e83SPiotr Jasiukajtis! delay slot 434*25c28e83SPiotr Jasiukajtis andcc %l2,1,%g0 435*25c28e83SPiotr Jasiukajtis 436*25c28e83SPiotr Jasiukajtis fmuld %f4,%f4,%f34 437*25c28e83SPiotr Jasiukajtis bz,pn %icc,.case2 438*25c28e83SPiotr Jasiukajtis! delay slot 439*25c28e83SPiotr Jasiukajtis andcc %l3,1,%g0 440*25c28e83SPiotr Jasiukajtis 441*25c28e83SPiotr Jasiukajtis fmuld %f6,%f6,%f36 442*25c28e83SPiotr Jasiukajtis bz,pn %icc,.case1 443*25c28e83SPiotr Jasiukajtis! delay slot 444*25c28e83SPiotr Jasiukajtis nop 445*25c28e83SPiotr Jasiukajtis 446*25c28e83SPiotr Jasiukajtis!.case0: 447*25c28e83SPiotr Jasiukajtis fmuld %f30,%f54,%f10 ! cos(x0) 448*25c28e83SPiotr Jasiukajtis fzero %f0 449*25c28e83SPiotr Jasiukajtis 450*25c28e83SPiotr Jasiukajtis fmuld %f32,%f54,%f12 ! cos(x1) 451*25c28e83SPiotr Jasiukajtis fzero %f2 452*25c28e83SPiotr Jasiukajtis 453*25c28e83SPiotr Jasiukajtis fmuld %f34,%f54,%f14 ! cos(x2) 454*25c28e83SPiotr Jasiukajtis fzero %f4 455*25c28e83SPiotr Jasiukajtis 456*25c28e83SPiotr Jasiukajtis fmuld %f36,%f54,%f16 ! cos(x3) 457*25c28e83SPiotr Jasiukajtis fzero %f6 458*25c28e83SPiotr Jasiukajtis 459*25c28e83SPiotr Jasiukajtis fmuld %f30,%f48,%f20 460*25c28e83SPiotr Jasiukajtis faddd %f10,%f52,%f10 461*25c28e83SPiotr Jasiukajtis 462*25c28e83SPiotr Jasiukajtis fmuld %f32,%f48,%f22 463*25c28e83SPiotr Jasiukajtis faddd %f12,%f52,%f12 464*25c28e83SPiotr Jasiukajtis 465*25c28e83SPiotr Jasiukajtis fmuld %f34,%f48,%f24 466*25c28e83SPiotr Jasiukajtis faddd %f14,%f52,%f14 467*25c28e83SPiotr Jasiukajtis 468*25c28e83SPiotr Jasiukajtis fmuld %f36,%f48,%f26 469*25c28e83SPiotr Jasiukajtis faddd %f16,%f52,%f16 470*25c28e83SPiotr Jasiukajtis 471*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 472*25c28e83SPiotr Jasiukajtis faddd %f20,%f46,%f20 473*25c28e83SPiotr Jasiukajtis 474*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 475*25c28e83SPiotr Jasiukajtis faddd %f22,%f46,%f22 476*25c28e83SPiotr Jasiukajtis 477*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 478*25c28e83SPiotr Jasiukajtis faddd %f24,%f46,%f24 479*25c28e83SPiotr Jasiukajtis 480*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 481*25c28e83SPiotr Jasiukajtis faddd %f26,%f46,%f26 482*25c28e83SPiotr Jasiukajtis 483*25c28e83SPiotr Jasiukajtis fmuld %f30,%f30,%f30 484*25c28e83SPiotr Jasiukajtis faddd %f10,%f50,%f10 485*25c28e83SPiotr Jasiukajtis and %l0,2,%g1 486*25c28e83SPiotr Jasiukajtis 487*25c28e83SPiotr Jasiukajtis fmuld %f32,%f32,%f32 488*25c28e83SPiotr Jasiukajtis faddd %f12,%f50,%f12 489*25c28e83SPiotr Jasiukajtis and %l1,2,%g5 490*25c28e83SPiotr Jasiukajtis 491*25c28e83SPiotr Jasiukajtis fmuld %f34,%f34,%f34 492*25c28e83SPiotr Jasiukajtis faddd %f14,%f50,%f14 493*25c28e83SPiotr Jasiukajtis and %l2,2,%o4 494*25c28e83SPiotr Jasiukajtis 495*25c28e83SPiotr Jasiukajtis fmuld %f36,%f36,%f36 496*25c28e83SPiotr Jasiukajtis faddd %f16,%f50,%f16 497*25c28e83SPiotr Jasiukajtis and %l3,2,%o5 498*25c28e83SPiotr Jasiukajtis 499*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 500*25c28e83SPiotr Jasiukajtis fmovrdnz %g1,%f28,%f0 501*25c28e83SPiotr Jasiukajtis 502*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 503*25c28e83SPiotr Jasiukajtis fmovrdnz %g5,%f28,%f2 504*25c28e83SPiotr Jasiukajtis 505*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 506*25c28e83SPiotr Jasiukajtis fmovrdnz %o4,%f28,%f4 507*25c28e83SPiotr Jasiukajtis 508*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 509*25c28e83SPiotr Jasiukajtis fmovrdnz %o5,%f28,%f6 510*25c28e83SPiotr Jasiukajtis 511*25c28e83SPiotr Jasiukajtis faddd %f10,%f20,%f10 512*25c28e83SPiotr Jasiukajtis 513*25c28e83SPiotr Jasiukajtis faddd %f12,%f22,%f12 514*25c28e83SPiotr Jasiukajtis 515*25c28e83SPiotr Jasiukajtis faddd %f14,%f24,%f14 516*25c28e83SPiotr Jasiukajtis 517*25c28e83SPiotr Jasiukajtis faddd %f16,%f26,%f16 518*25c28e83SPiotr Jasiukajtis 519*25c28e83SPiotr Jasiukajtis fxor %f10,%f0,%f10 520*25c28e83SPiotr Jasiukajtis 521*25c28e83SPiotr Jasiukajtis fxor %f12,%f2,%f12 522*25c28e83SPiotr Jasiukajtis 523*25c28e83SPiotr Jasiukajtis fxor %f14,%f4,%f14 524*25c28e83SPiotr Jasiukajtis 525*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 526*25c28e83SPiotr Jasiukajtis bg,pt %icc,.start 527*25c28e83SPiotr Jasiukajtis! delay slot 528*25c28e83SPiotr Jasiukajtis fxor %f16,%f6,%f16 529*25c28e83SPiotr Jasiukajtis 530*25c28e83SPiotr Jasiukajtis ba,pt %icc,.end 531*25c28e83SPiotr Jasiukajtis! delay slot 532*25c28e83SPiotr Jasiukajtis nop 533*25c28e83SPiotr Jasiukajtis 534*25c28e83SPiotr Jasiukajtis .align 16 535*25c28e83SPiotr Jasiukajtis.case1: 536*25c28e83SPiotr Jasiukajtis fmuld %f30,%f54,%f10 ! cos(x0) 537*25c28e83SPiotr Jasiukajtis fzero %f0 538*25c28e83SPiotr Jasiukajtis 539*25c28e83SPiotr Jasiukajtis fmuld %f32,%f54,%f12 ! cos(x1) 540*25c28e83SPiotr Jasiukajtis fzero %f2 541*25c28e83SPiotr Jasiukajtis 542*25c28e83SPiotr Jasiukajtis fmuld %f34,%f54,%f14 ! cos(x2) 543*25c28e83SPiotr Jasiukajtis fzero %f4 544*25c28e83SPiotr Jasiukajtis 545*25c28e83SPiotr Jasiukajtis fmuld %f36,%f44,%f16 ! sin(x3) 546*25c28e83SPiotr Jasiukajtis 547*25c28e83SPiotr Jasiukajtis fmuld %f30,%f48,%f20 548*25c28e83SPiotr Jasiukajtis faddd %f10,%f52,%f10 549*25c28e83SPiotr Jasiukajtis 550*25c28e83SPiotr Jasiukajtis fmuld %f32,%f48,%f22 551*25c28e83SPiotr Jasiukajtis faddd %f12,%f52,%f12 552*25c28e83SPiotr Jasiukajtis 553*25c28e83SPiotr Jasiukajtis fmuld %f34,%f48,%f24 554*25c28e83SPiotr Jasiukajtis faddd %f14,%f52,%f14 555*25c28e83SPiotr Jasiukajtis 556*25c28e83SPiotr Jasiukajtis fmuld %f36,%f40,%f26 557*25c28e83SPiotr Jasiukajtis faddd %f16,%f42,%f16 558*25c28e83SPiotr Jasiukajtis 559*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 560*25c28e83SPiotr Jasiukajtis faddd %f20,%f46,%f20 561*25c28e83SPiotr Jasiukajtis 562*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 563*25c28e83SPiotr Jasiukajtis faddd %f22,%f46,%f22 564*25c28e83SPiotr Jasiukajtis 565*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 566*25c28e83SPiotr Jasiukajtis faddd %f24,%f46,%f24 567*25c28e83SPiotr Jasiukajtis 568*25c28e83SPiotr Jasiukajtis fmuld %f36,%f36,%f36 569*25c28e83SPiotr Jasiukajtis faddd %f26,%f46,%f26 570*25c28e83SPiotr Jasiukajtis 571*25c28e83SPiotr Jasiukajtis fmuld %f30,%f30,%f30 572*25c28e83SPiotr Jasiukajtis faddd %f10,%f50,%f10 573*25c28e83SPiotr Jasiukajtis and %l0,2,%g1 574*25c28e83SPiotr Jasiukajtis 575*25c28e83SPiotr Jasiukajtis fmuld %f32,%f32,%f32 576*25c28e83SPiotr Jasiukajtis faddd %f12,%f50,%f12 577*25c28e83SPiotr Jasiukajtis and %l1,2,%g5 578*25c28e83SPiotr Jasiukajtis 579*25c28e83SPiotr Jasiukajtis fmuld %f34,%f34,%f34 580*25c28e83SPiotr Jasiukajtis faddd %f14,%f50,%f14 581*25c28e83SPiotr Jasiukajtis and %l2,2,%o4 582*25c28e83SPiotr Jasiukajtis 583*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 584*25c28e83SPiotr Jasiukajtis fzero %f36 585*25c28e83SPiotr Jasiukajtis 586*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 587*25c28e83SPiotr Jasiukajtis fmovrdnz %g1,%f28,%f0 588*25c28e83SPiotr Jasiukajtis 589*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 590*25c28e83SPiotr Jasiukajtis fmovrdnz %g5,%f28,%f2 591*25c28e83SPiotr Jasiukajtis 592*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 593*25c28e83SPiotr Jasiukajtis fmovrdnz %o4,%f28,%f4 594*25c28e83SPiotr Jasiukajtis 595*25c28e83SPiotr Jasiukajtis faddd %f16,%f26,%f16 596*25c28e83SPiotr Jasiukajtis and %l3,2,%o5 597*25c28e83SPiotr Jasiukajtis 598*25c28e83SPiotr Jasiukajtis faddd %f10,%f20,%f10 599*25c28e83SPiotr Jasiukajtis 600*25c28e83SPiotr Jasiukajtis faddd %f12,%f22,%f12 601*25c28e83SPiotr Jasiukajtis 602*25c28e83SPiotr Jasiukajtis faddd %f14,%f24,%f14 603*25c28e83SPiotr Jasiukajtis 604*25c28e83SPiotr Jasiukajtis fmuld %f6,%f16,%f16 605*25c28e83SPiotr Jasiukajtis fmovrdnz %o5,%f28,%f36 606*25c28e83SPiotr Jasiukajtis 607*25c28e83SPiotr Jasiukajtis fxor %f10,%f0,%f10 608*25c28e83SPiotr Jasiukajtis 609*25c28e83SPiotr Jasiukajtis fxor %f12,%f2,%f12 610*25c28e83SPiotr Jasiukajtis 611*25c28e83SPiotr Jasiukajtis fxor %f14,%f4,%f14 612*25c28e83SPiotr Jasiukajtis 613*25c28e83SPiotr Jasiukajtis addcc %i0,-1,%i0 614*25c28e83SPiotr Jasiukajtis bg,pt %icc,.start 615*25c28e83SPiotr Jasiukajtis! delay slot 616*25c28e83SPiotr Jasiukajtis fxor %f16,%f36,%f16 617*25c28e83SPiotr Jasiukajtis 618*25c28e83SPiotr Jasiukajtis ba,pt %icc,.end 619*25c28e83SPiotr Jasiukajtis! delay slot 620*25c28e83SPiotr Jasiukajtis nop 621*25c28e83SPiotr Jasiukajtis 622*25c28e83SPiotr Jasiukajtis .align 16 623*25c28e83SPiotr Jasiukajtis.case2: 624*25c28e83SPiotr Jasiukajtis fmuld %f6,%f6,%f36 625*25c28e83SPiotr Jasiukajtis bz,pn %icc,.case3 626*25c28e83SPiotr Jasiukajtis! delay slot 627*25c28e83SPiotr Jasiukajtis nop 628*25c28e83SPiotr Jasiukajtis 629*25c28e83SPiotr Jasiukajtis fmuld %f30,%f54,%f10 ! cos(x0) 630*25c28e83SPiotr Jasiukajtis fzero %f0 631*25c28e83SPiotr Jasiukajtis 632*25c28e83SPiotr Jasiukajtis fmuld %f32,%f54,%f12 ! cos(x1) 633*25c28e83SPiotr Jasiukajtis fzero %f2 634*25c28e83SPiotr Jasiukajtis 635*25c28e83SPiotr Jasiukajtis fmuld %f34,%f44,%f14 ! sin(x2) 636*25c28e83SPiotr Jasiukajtis 637*25c28e83SPiotr Jasiukajtis fmuld %f36,%f54,%f16 ! cos(x3) 638*25c28e83SPiotr Jasiukajtis fzero %f6 639*25c28e83SPiotr Jasiukajtis 640*25c28e83SPiotr Jasiukajtis fmuld %f30,%f48,%f20 641*25c28e83SPiotr Jasiukajtis faddd %f10,%f52,%f10 642*25c28e83SPiotr Jasiukajtis 643*25c28e83SPiotr Jasiukajtis fmuld %f32,%f48,%f22 644*25c28e83SPiotr Jasiukajtis faddd %f12,%f52,%f12 645*25c28e83SPiotr Jasiukajtis 646*25c28e83SPiotr Jasiukajtis fmuld %f34,%f40,%f24 647*25c28e83SPiotr Jasiukajtis faddd %f14,%f42,%f14 648*25c28e83SPiotr Jasiukajtis 649*25c28e83SPiotr Jasiukajtis fmuld %f36,%f48,%f26 650*25c28e83SPiotr Jasiukajtis faddd %f16,%f52,%f16 651*25c28e83SPiotr Jasiukajtis 652*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 653*25c28e83SPiotr Jasiukajtis faddd %f20,%f46,%f20 654*25c28e83SPiotr Jasiukajtis 655*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 656*25c28e83SPiotr Jasiukajtis faddd %f22,%f46,%f22 657*25c28e83SPiotr Jasiukajtis 658*25c28e83SPiotr Jasiukajtis fmuld %f34,%f34,%f34 659*25c28e83SPiotr Jasiukajtis faddd %f24,%f46,%f24 660*25c28e83SPiotr Jasiukajtis 661*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 662*25c28e83SPiotr Jasiukajtis faddd %f26,%f46,%f26 663*25c28e83SPiotr Jasiukajtis 664*25c28e83SPiotr Jasiukajtis fmuld %f30,%f30,%f30 665*25c28e83SPiotr Jasiukajtis faddd %f10,%f50,%f10 666*25c28e83SPiotr Jasiukajtis and %l0,2,%g1 667*25c28e83SPiotr Jasiukajtis 668*25c28e83SPiotr Jasiukajtis fmuld %f32,%f32,%f32 669*25c28e83SPiotr Jasiukajtis faddd %f12,%f50,%f12 670*25c28e83SPiotr Jasiukajtis and %l1,2,%g5 671*25c28e83SPiotr Jasiukajtis 672*25c28e83SPiotr Jasiukajtis fmuld %f34,%f14,%f14 673*25c28e83SPiotr Jasiukajtis fzero %f34 674*25c28e83SPiotr Jasiukajtis 675*25c28e83SPiotr Jasiukajtis fmuld %f36,%f36,%f36 676*25c28e83SPiotr Jasiukajtis faddd %f16,%f50,%f16 677*25c28e83SPiotr Jasiukajtis and %l3,2,%o5 678*25c28e83SPiotr Jasiukajtis 679*25c28e83SPiotr Jasiukajtis fmuld %f30,%f10,%f10 680*25c28e83SPiotr Jasiukajtis fmovrdnz %g1,%f28,%f0 681*25c28e83SPiotr Jasiukajtis 682*25c28e83SPiotr Jasiukajtis fmuld %f32,%f12,%f12 683*25c28e83SPiotr Jasiukajtis fmovrdnz %g5,%f28,%f2 684*25c28e83SPiotr Jasiukajtis 685*25c28e83SPiotr Jasiukajtis faddd %f14,%f24,%f14 686*25c28e83SPiotr Jasiukajtis and %l2,2,%o4 687*25c28e83SPiotr Jasiukajtis 688*25c28e83SPiotr Jasiukajtis fmuld %f36,%f16,%f16 689*25c28e83SPiotr Jasiukajtis fmovrdnz %o5,%f28,%f6 690*25c28e83SPiotr Jasiukajtis 691*25c28e83SPiotr Jasiukajtis faddd %f10,%f20,%f10 692*25c28e83SPiotr Jasiukajtis 693*25c28e83SPiotr Jasiukajtis faddd %f12,%f22,%f12 694*25c28e83SPiotr Jasiukajtis 695*25c28e83SPiotr Jasiukajtis fmuld %f4,%f14,%f14 696*25c28e83SPiotr Jasiukajtis fmovrdnz %o4,%f28,%f34 697*25c28e83SPiotr Jasiukajtis 698*25c28e83SPiotr Jasiukajtis faddd %f16,%f26,%f16 699*25c28e83SPiotr Jasiukajtis 700*25c28e83SPiotr Jasiukajtis fxor %f10,%f0,%f10 701*25c28e83