diff options
Diffstat (limited to 'private/fp32/tran/alpha/logs.s')
-rw-r--r-- | private/fp32/tran/alpha/logs.s | 956 |
1 files changed, 956 insertions, 0 deletions
diff --git a/private/fp32/tran/alpha/logs.s b/private/fp32/tran/alpha/logs.s new file mode 100644 index 000000000..bd6c33d7a --- /dev/null +++ b/private/fp32/tran/alpha/logs.s @@ -0,0 +1,956 @@ +// TITLE("Alpha AXP Natural Logarithm") +//++ +// +// Copyright (c) 1993, 1994 Digital Equipment Corporation +// +// Module Name: +// +// log.s +// +// Abstract: +// +// This module implements a high-performance Alpha AXP specific routine +// for IEEE double format natural logarithm. +// +// Author: +// +// Martha Jaffe +// +// Environment: +// +// User mode. +// +// Revision History: +// +// Thomas Van Baak (tvb) 7-Feb-1994 +// +// Adapted for NT. +// +//-- + +#include "ksalpha.h" + +// +// Define DPML exception record for NT. +// + + .struct 0 +ErErr: .space 4 // error code +ErCxt: .space 4 // context +ErPlat: .space 4 // platform +ErEnv: .space 4 // environment +ErRet: .space 4 // return value pointer +ErName: .space 4 // function name +ErType: .space 8 // flags and fill +ErVal: .space 8 // return value +ErArg0: .space 8 // arg 0 +ErArg1: .space 8 // arg 1 +ErArg2: .space 8 // arg 2 +ErArg3: .space 8 // arg 3 +DpmlExceptionLength: + +// +// Define stack frame. +// + + .struct 0 +Temp: .space 8 // save argument +ExRec: .space DpmlExceptionLength // exception record + .space 0 // for 16-byte stack alignment +FrameLength: + +// +// Define lower and upper 32-bit parts of 64-bit double. +// + +#define LowPart 0x0 +#define HighPart 0x4 + + SBTTL("Natural Log") + +//++ +// +// double +// log ( +// IN double x +// ) +// +// Routine Description: +// +// This function returns the natural log of the given double argument. +// +// Arguments: +// +// x (f16) - Supplies the argument value. +// +// Return Value: +// +// The double log result is returned as the function value in f0. +// +//-- + + NESTED_ENTRY(log, FrameLength, ra) + + lda sp, -FrameLength(sp) // allocate stack frame + mov ra, t7 // save return address + + PROLOGUE_END + + stt f16, Temp(sp) + ldl t1, Temp + HighPart(sp) + lda t0, _log_table + ldah v0, 0x3fee(zero) + subl t1, v0, v0 + ldt f1, 0(t0) + ldah t2, 3(zero) + cmpult v0, t2, v0 + bne v0, 80f + + sra t1, 20, v0 + sra t1, 8, t2 + cpyse f1, f16, f10 + subl v0, 1, t4 + lda t5, 0x7fe(zero) + lda t3, 0xfe0(zero) + cmpult t4, t5, t4 + and t2, t3, t2 + beq t4, 10f + + lda t6, 0x3ff(zero) + subl v0, t6, t6 + br zero, 70f + +// +// abnormal x +// + +10: ldah t5, -0x8000(zero) + ldah t4, 0x7ff0(zero) + and t1, t5, t5 + and t1, t4, v0 + beq t5, 50f + + lda t6, logName + bne v0, 30f + + ldah v0, 0x800(zero) + ldt f10, Two53 + lda v0, 0x31(v0) + cpyse f10, f16, f0 + subt f0, f10, f0 + fbne f0, 20f + +// +// call exception dispatcher log(zero) +// + + stt f16, ExRec + ErArg0(sp) + stl t6, ExRec + ErName(sp) + stl v0, ExRec + ErErr(sp) + lda v0, ExRec(sp) + bsr ra, __dpml_exception + ldt f0, 0(v0) + br zero, done + +// +// call exception dispatcher log(neg) +// + +20: ldah ra, 0x800(zero) + stt f16, ExRec + ErArg0(sp) + lda t6, logName + stl t6, ExRec + ErName(sp) + lda ra, 0x30(ra) + stl ra, ExRec + ErErr(sp) + lda v0, ExRec(sp) + bsr ra, __dpml_exception + ldt f0, 0(v0) + br zero, done + +// +// check for nan +// + +30: stt f16, Temp(sp) + ldl ra, Temp(sp) + ldah v0, 0x10(zero) + ldl t2, Temp + HighPart(sp) + lda v0, -1(v0) + and t2, v0, v0 + bis v0, ra, v0 + and t2, t4, t6 + cmpult zero, v0, v0 + cmpeq t6, t4, t4 + beq t4, 40f + + and t4, v0, t4 + bne t4, retarg + +// +// call exception dispatcher log(neg) +// + +40: ldah ra, 0x800(zero) + stt f16, ExRec + ErArg0(sp) + lda t6, logName + stl t6, ExRec + ErName(sp) + lda ra, 0x30(ra) + stl ra, ExRec + ErErr(sp) + lda v0, ExRec(sp) + bsr ra, __dpml_exception + ldt f16, 0(v0) + + +retarg: cpys f16, f16, f0 + br zero, done + + +// +// check for denorm +// + +50: ldah t4, 0x7ff0(zero) + and t1, t4, t1 + bne t1, retarg + + ldah t2, 0x800(zero) + ldt f10, Two53 + lda t2, 0x31(t2) + lda ra, logName + cpyse f10, f16, f0 + lda v0, ExRec(sp) + subt f0, f10, f11 + fbne f11, 60f + +// +// call exception dispatcher log(zero) +// + + stt f16, ExRec + ErArg0(sp) + stl t2, ExRec + ErErr(sp) + stl ra, ExRec + ErName(sp) + bsr ra, __dpml_exception + ldt f0, 0(v0) + br zero, done + +// +// fix up denorms +// + +60: stt f11, Temp(sp) + cpyse f1, f11, f10 + ldl t1, Temp + HighPart(sp) + lda t2, 0x832(zero) + sra t1, 8, t5 + sra t1, 20, t1 + and t5, t3, t3 + subl t1, t2, t6 + mov t3, t2 + +// +// rejoin normal path +// + +70: addl t0, t2, t2 + ldt f1, 0x98(t0) // load away from 1 coefs + ldt f16, 0xd8(t2) // LOG_F_TABLE_TWOP + ldt f0, 0xe0(t2) + stq t6, Temp(sp) + subt f10, f16, f10 + ldt f16, Temp(sp) + ldt f12, 0x90(t0) + ldt f15, 0x88(t0) // POLY_ADDRESS_TWOP_AWAY + cvtqt f16, f16 + ldt f17, 0xa0(t0) + mult f10, f0, f0 + ldt f10, 0xa8(t0) + mult f0, f0, f11 + mult f1, f0, f1 + mult f10, f0, f10 + mult f11, f11, f13 + mult f11, f0, f14 + addt f12, f1, f1 + ldt f12, 0xd0(t0) // LOG2_LO_TWOP + mult f11, f15, f11 + addt f17, f10, f10 + ldt f15, 0xf0(t2) + ldt f17, 0xe8(t2) + mult f12, f16, f12 + mult f13, f0, f13 + mult f14, f1, f1 + ldt f14, 0xc8(t0) // LOG2_HI_TWOP + addt f12, f15, f12 + mult f13, f10, f10 + addt f11, f1, f1 + mult f16, f14, f14 + addt f12, f0, f0 + addt f1, f10, f1 + addt f14, f17, f14 + addt f0, f1, f0 + addt f0, f14, f0 + br zero, done + +// +// near one case +// + +80: subt f16, f1, f1 + ldt f10, 0x18(t0) // load near 1 poly coefs + ldt f14, 0x28(t0) + ldt f21, 0x20(t0) + ldt f16, Two29 + ldt f19, 0x38(t0) // LOG2_LO_ONEP + mult f1, f1, f15 + mult f1, f10, f10 + mult f1, f14, f14 + cpys f1, f16, f18 + ldt f16, 0x10(t0) + cpys f1, f1, f20 + mult f1, f19, f19 + mult f15, f1, f13 + mult f15, f15, f11 + addt f10, f16, f10 + addt f14, f21, f14 + ldt f16, 0x30(t0) // LOG2_HI_ONEP + ldt f21, 0x48(t0) + addt f20, f18, f20 + mult f15, f13, f17 + mult f11, f1, f12 + mult f13, f11, f0 + mult f11, f15, f15 + mult f13, f10, f10 + ldt f13, 0x58(t0) + addt f19, f16, f16 + ldt f19, 0x40(t0) // LOG_F_TABLE_ONEP + mult f1, f21, f21 + mult f17, f14, f14 + mult f12, f11, f12 + ldt f17, 0x50(t0) + mult f15, f1, f15 + mult f1, f13, f13 + subt f20, f18, f18 + mult f0, f16, f0 + addt f21, f19, f19 + ldt f21, Half + addt f10, f14, f10 + mult f15, f11, f11 + addt f13, f17, f13 + subt f1, f18, f20 + addt f1, f18, f16 + mult f12, f19, f12 + addt f10, f0, f0 + mult f18, f18, f18 + mult f11, f13, f11 + mult f16, f20, f16 + addt f0, f12, f0 + mult f18, f21, f18 + mult f16, f21, f16 + addt f0, f11, f0 + subt f1, f18, f1 + subt f0, f16, f0 + addt f0, f1, f0 + +// +// Return with result in f0. +// + +done: + lda sp, FrameLength(sp) // deallocate stack frame + ret zero, (t7) // return through saved ra in t7 + + .end log + + .align 3 + .rdata + +// +// Define floating point constants. +// + +Half: .double 0.5 + +One: .double 1.0 + +Two29: .double 536870912.0 // 2^29 + +Two53: .double 9007199254740992.0 // 2^53 + +// +// Function name for dpml_exception. +// + +logName: + .ascii "log\0" + + +// +// log data table +// + + .align 3 + +_log_table: + + // 1.0 in working precision + + .double 1.0000000000000000e+000 + + // poly coeffs near 1 + + .double -5.0000000000000000e-001 + .double 3.3333333333333581e-001 + .double -2.5000000000000555e-001 + .double 1.9999999999257809e-001 + .double -1.6666666665510016e-001 + .double 1.4285715095862653e-001 + .double -1.2500001025849336e-001 + .double 1.1110711557933650e-001 + .double -9.9995589399147614e-002 + .double 9.1816350893696136e-002 + .double -8.4241019625172817e-002 + + // poly coeffs quotient, near 1 + + .double 8.3333333333333953e-002 + .double 1.2499999999536091e-002 + .double 2.2321429837356640e-003 + .double 4.3401216971065997e-004 + .double 8.9664418510783172e-005 + + // poly coeffs away from 1 + + .double -5.0000000000000000e-001 + .double 3.3333333331462339e-001 + .double -2.4999999997583292e-001 + .double 2.0000326978572527e-001 + .double -1.6666993645814179e-001 + + // poly coeffs quotient, away from 1 + + .double 8.3333333333334911e-002 + .double 1.2499999967659360e-002 + .double 2.2323547997135616e-003 + + // log of 2 in hi and lo parts + + .double 6.9314718055989033e-001 + .double 5.4979230187083712e-014 + + // Table of F, 1/F, and hi and lo log of F; (128 * 4 entries) + + .double 1.0039062500000000e+000 + .double 9.9610894941634243e-001 + .double 3.8986404156275967e-003 + .double 2.9726346900928951e-014 + .double 1.0117187500000000e+000 + .double 9.8841698841698844e-001 + .double 1.1650617220084314e-002 + .double -1.0903974971735932e-013 + .double 1.0195312500000000e+000 + .double 9.8084291187739459e-001 + .double 1.9342962843211353e-002 + .double -8.0418538505225864e-014 + .double 1.0273437500000000e+000 + .double 9.7338403041825095e-001 + .double 2.6976587698300136e-002 + .double -9.8060505168431766e-014 + .double 1.0351562500000000e+000 + .double 9.6603773584905661e-001 + .double 3.4552381506728125e-002 + .double -6.8391397423287774e-014 + .double 1.0429687500000000e+000 + .double 9.5880149812734083e-001 + .double 4.2071213920735318e-002 + .double -4.8263140005511282e-014 + .double 1.0507812500000000e+000 + .double 9.5167286245353155e-001 + .double 4.9533935122326511e-002 + .double -4.9880309107981426e-014 + .double 1.0585937500000000e+000 + .double 9.4464944649446492e-001 + .double 5.6941376400118315e-002 + .double 2.0109399435564958e-014 + .double 1.0664062500000000e+000 + .double 9.3772893772893773e-001 + .double 6.4294350705495162e-002 + .double -9.7905185119902161e-014 + .double 1.0742187500000000e+000 + .double 9.3090909090909091e-001 + .double 7.1593653186937445e-002 + .double 7.1373082253431780e-014 + .double 1.0820312500000000e+000 + .double 9.2418772563176899e-001 + .double 7.8840061707751374e-002 + .double 2.4650189061766119e-014 + .double 1.0898437500000000e+000 + .double 9.1756272401433692e-001 + .double 8.6034337341743594e-002 + .double 5.9559229876256426e-014 + .double 1.0976562500000000e+000 + .double 9.1103202846975084e-001 + .double 9.3177224854116503e-002 + .double 6.6787085171628983e-014 + .double 1.1054687500000000e+000 + .double 9.0459363957597172e-001 + .double 1.0026945316371894e-001 + .double -4.3786376170783979e-014 + .double 1.1132812500000000e+000 + .double 8.9824561403508774e-001 + .double 1.0731173578915332e-001 + .double -6.5266788027310712e-014 + .double 1.1210937500000000e+000 + .double 8.9198606271777003e-001 + .double 1.1430477128010352e-001 + .double -4.4889533522386993e-014 + .double 1.1289062500000000e+000 + .double 8.8581314878892736e-001 + .double 1.2124924363297396e-001 + .double -1.0427241278273008e-013 + .double 1.1367187500000000e+000 + .double 8.7972508591065290e-001 + .double 1.2814582269197672e-001 + .double -4.6680314039457961e-014 + .double 1.1445312500000000e+000 + .double 8.7372013651877134e-001 + .double 1.3499516453748583e-001 + .double 1.8996158041578768e-014 + .double 1.1523437500000000e+000 + .double 8.6779661016949150e-001 + .double 1.4179791186029433e-001 + .double -3.6984595066970968e-014 + .double 1.1601562500000000e+000 + .double 8.6195286195286192e-001 + .double 1.4855469432313839e-001 + .double -1.2491548980751600e-015 + .double 1.1679687500000000e+000 + .double 8.5618729096989965e-001 + .double 1.5526612891108016e-001 + .double 4.3792508292406054e-014 + .double 1.1757812500000000e+000 + .double 8.5049833887043191e-001 + .double 1.6193282026938505e-001 + .double -7.1793900192956773e-014 + .double 1.1835937500000000e+000 + .double 8.4488448844884489e-001 + .double 1.6855536102980295e-001 + .double 3.7143977541704719e-015 + .double 1.1914062500000000e+000 + .double 8.3934426229508197e-001 + .double 1.7513433212775453e-001 + .double 9.4615165806650815e-014 + .double 1.1992187500000000e+000 + .double 8.3387622149837137e-001 + .double 1.8167030310769405e-001 + .double -5.9375063333847015e-014 + .double 1.2070312500000000e+000 + .double 8.2847896440129454e-001 + .double 1.8816383241824042e-001 + .double -5.7430783932007560e-014 + .double 1.2148437500000000e+000 + .double 8.2315112540192925e-001 + .double 1.9461546769957749e-001 + .double 9.4165381457182504e-014 + .double 1.2226562500000000e+000 + .double 8.1789137380191690e-001 + .double 2.0102574606062262e-001 + .double -3.1881849375437737e-014 + .double 1.2304687500000000e+000 + .double 8.1269841269841270e-001 + .double 2.0739519434596332e-001 + .double 1.0726867577289733e-013 + .double 1.2382812500000000e+000 + .double 8.0757097791798105e-001 + .double 2.1372432939779173e-001 + .double -7.3595801864405143e-014 + .double 1.2460937500000000e+000 + .double 8.0250783699059558e-001 + .double 2.2001365830533359e-001 + .double -5.1496672341414078e-014 + .double 1.2539062500000000e+000 + .double 7.9750778816199375e-001 + .double 2.2626367865041175e-001 + .double 4.1641267302872263e-014 + .double 1.2617187500000000e+000 + .double 7.9256965944272451e-001 + .double 2.3247487874300532e-001 + .double 8.8745072979746316e-014 + .double 1.2695312500000000e+000 + .double 7.8769230769230769e-001 + .double 2.3864773785021498e-001 + .double -3.9970509095301341e-014 + .double 1.2773437500000000e+000 + .double 7.8287461773700306e-001 + .double 2.4478272641772492e-001 + .double -3.3999811083618331e-014 + .double 1.2851562500000000e+000 + .double 7.7811550151975684e-001 + .double 2.5088030628580782e-001 + .double 1.5973663463624904e-015 + .double 1.2929687500000000e+000 + .double 7.7341389728096677e-001 + .double 2.5694093089759917e-001 + .double -9.8748030159663917e-014 + .double 1.3007812500000000e+000 + .double 7.6876876876876876e-001 + .double 2.6296504550077771e-001 + .double 1.0364636459896663e-013 + .double 1.3085937500000000e+000 + .double 7.6417910447761195e-001 + .double 2.6895308734560786e-001 + .double -1.0389630784002988e-013 + .double 1.3164062500000000e+000 + .double 7.5964391691394662e-001 + .double 2.7490548587275043e-001 + .double 4.8816703646769986e-014 + .double 1.3242187500000000e+000 + .double 7.5516224188790559e-001 + .double 2.8082266290084590e-001 + .double 4.1886091378637011e-014 + .double 1.3320312500000000e+000 + .double 7.5073313782991202e-001 + .double 2.8670503280386583e-001 + .double 8.8481096040068212e-014 + .double 1.3398437500000000e+000 + .double 7.4635568513119532e-001 + .double 2.9255300268641804e-001 + .double -4.0599978860151284e-014 + .double 1.3476562500000000e+000 + .double 7.4202898550724639e-001 + .double 2.9836697255177569e-001 + .double 2.1592693741973491e-014 + .double 1.3554687500000000e+000 + .double 7.3775216138328525e-001 + .double 3.0414733546740536e-001 + .double -1.0863828679707913e-013 + .double 1.3632812500000000e+000 + .double 7.3352435530085958e-001 + .double 3.0989447772276435e-001 + .double 1.0033796982039214e-013 + .double 1.3710937500000000e+000 + .double 7.2934472934472938e-001 + .double 3.1560877898641593e-001 + .double -1.1259274624680829e-013 + .double 1.3789062500000000e+000 + .double 7.2521246458923516e-001 + .double 3.2129061245382218e-001 + .double -8.7885427699715446e-014 + .double 1.3867187500000000e+000 + .double 7.2112676056338032e-001 + .double 3.2694034499581903e-001 + .double 3.4288400126669462e-014 + .double 1.3945312500000000e+000 + .double 7.1708683473389356e-001 + .double 3.3255833730004269e-001 + .double 3.3906861336722287e-014 + .double 1.4023437500000000e+000 + .double 7.1309192200557103e-001 + .double 3.3814494400871808e-001 + .double -1.6869501228130390e-015 + .double 1.4101562500000000e+000 + .double 7.0914127423822715e-001 + .double 3.4370051385326406e-001 + .double 5.4388883298990648e-014 + .double 1.4179687500000000e+000 + .double 7.0523415977961434e-001 + .double 3.4922538978526063e-001 + .double 2.7672711265736626e-014 + .double 1.4257812500000000e+000 + .double 7.0136986301369864e-001 + .double 3.5471990910286877e-001 + .double 6.0259386391812782e-014 + .double 1.4335937500000000e+000 + .double 6.9754768392370570e-001 + .double 3.6018440357497639e-001 + .double 3.1410128435793507e-014 + .double 1.4414062500000000e+000 + .double 6.9376693766937669e-001 + .double 3.6561919956102429e-001 + .double -5.9577094649293112e-014 + .double 1.4492187500000000e+000 + .double 6.9002695417789761e-001 + .double 3.7102461812787624e-001 + .double -3.5739377400104385e-015 + .double 1.4570312500000000e+000 + .double 6.8632707774798929e-001 + .double 3.7640097516418791e-001 + .double 6.5153983564591272e-014 + .double 1.4648437500000000e+000 + .double 6.8266666666666664e-001 + .double 3.8174858149091051e-001 + .double -6.2170323645733908e-014 + .double 1.4726562500000000e+000 + .double 6.7904509283819625e-001 + .double 3.8706774296838375e-001 + .double 6.4533411753084866e-014 + .double 1.4804687500000000e+000 + .double 6.7546174142480209e-001 + .double 3.9235876060297414e-001 + .double -1.1027121477530621e-013 + .double 1.4882812500000000e+000 + .double 6.7191601049868765e-001 + .double 3.9762193064711937e-001 + .double 1.9118699266850969e-014 + .double 1.4960937500000000e+000 + .double 6.6840731070496084e-001 + .double 4.0285754470119173e-001 + .double -1.0821299887954718e-013 + .double 1.5039062500000000e+000 + .double 6.6493506493506493e-001 + .double 4.0806588980831293e-001 + .double -9.1183133506522949e-014 + .double 1.5117187500000000e+000 + .double 6.6149870801033595e-001 + .double 4.1324724855030581e-001 + .double -8.6481461319862886e-014 + .double 1.5195312500000000e+000 + .double 6.5809768637532129e-001 + .double 4.1840189913887116e-001 + .double 1.2659153984938316e-014 + .double 1.5273437500000000e+000 + .double 6.5473145780051156e-001 + .double 4.2353011550585506e-001 + .double -5.1769120694201545e-014 + .double 1.5351562500000000e+000 + .double 6.5139949109414763e-001 + .double 4.2863216738965093e-001 + .double 4.7829207034065312e-014 + .double 1.5429687500000000e+000 + .double 6.4810126582278482e-001 + .double 4.3370832042160146e-001 + .double -4.2063037733589860e-014 + .double 1.5507812500000000e+000 + .double 6.4483627204030225e-001 + .double 4.3875883620762579e-001 + .double 2.1468971783400094e-015 + .double 1.5585937500000000e+000 + .double 6.4160401002506262e-001 + .double 4.4378397241030143e-001 + .double -4.4932834403337654e-016 + .double 1.5664062500000000e+000 + .double 6.3840399002493764e-001 + .double 4.4878398282708076e-001 + .double -7.4052432293450566e-014 + .double 1.5742187500000000e+000 + .double 6.3523573200992556e-001 + .double 4.5375911746714337e-001 + .double -2.2862495308664916e-014 + .double 1.5820312500000000e+000 + .double 6.3209876543209875e-001 + .double 4.5870962262688408e-001 + .double 9.2581114645991212e-014 + .double 1.5898437500000000e+000 + .double 6.2899262899262898e-001 + .double 4.6363574096312732e-001 + .double -9.4805444680453647e-014 + .double 1.5976562500000000e+000 + .double 6.2591687041564792e-001 + .double 4.6853771156315815e-001 + .double 8.1115771640052352e-014 + .double 1.6054687500000000e+000 + .double 6.2287104622871048e-001 + .double 4.7341577001657242e-001 + .double 9.9707744046996850e-014 + .double 1.6132812500000000e+000 + .double 6.1985472154963683e-001 + .double 4.7827014848144245e-001 + .double 2.7832864616306362e-014 + .double 1.6210937500000000e+000 + .double 6.1686746987951813e-001 + .double 4.8310107575116490e-001 + .double -2.9076236446386640e-014 + .double 1.6289062500000000e+000 + .double 6.1390887290167862e-001 + .double 4.8790877731926230e-001 + .double -2.3325742005188250e-014 + .double 1.6367187500000000e+000 + .double 6.1097852028639621e-001 + .double 4.9269347544259290e-001 + .double -1.7642921490304046e-014 + .double 1.6445312500000000e+000 + .double 6.0807600950118768e-001 + .double 4.9745538920274157e-001 + .double 7.7370898042138569e-014 + .double 1.6523437500000000e+000 + .double 6.0520094562647753e-001 + .double 5.0219473456672858e-001 + .double -1.3090194780543625e-014 + .double 1.6601562500000000e+000 + .double 6.0235294117647054e-001 + .double 5.0691172444476251e-001 + .double 9.1841537361323107e-014 + .double 1.6679687500000000e+000 + .double 5.9953161592505855e-001 + .double 5.1160656874913002e-001 + .double -6.7941049953303914e-014 + .double 1.6757812500000000e+000 + .double 5.9673659673659674e-001 + .double 5.1627947444853817e-001 + .double -8.3670880082996502e-014 + .double 1.6835937500000000e+000 + .double 5.9396751740139209e-001 + .double 5.2093064562427571e-001 + .double -9.0399770141535103e-014 + .double 1.6914062500000000e+000 + .double 5.9122401847575057e-001 + .double 5.2556028352296380e-001 + .double -3.6428968707830412e-014 + .double 1.6992187500000000e+000 + .double 5.8850574712643677e-001 + .double 5.3016858660907928e-001 + .double 4.2333597202652293e-014 + .double 1.7070312500000000e+000 + .double 5.8581235697940504e-001 + .double 5.3475575061611380e-001 + .double -8.6125310374957207e-014 + .double 1.7148437500000000e+000 + .double 5.8314350797266512e-001 + .double 5.3932196859568649e-001 + .double -7.7610404204187166e-014 + .double 1.7226562500000000e+000 + .double 5.8049886621315194e-001 + .double 5.4386743096733881e-001 + .double -5.5287539987057404e-014 + .double 1.7304687500000000e+000 + .double 5.7787810383747173e-001 + .double 5.4839232556560091e-001 + .double -2.7750502668562431e-014 + .double 1.7382812500000000e+000 + .double 5.7528089887640455e-001 + .double 5.5289683768660325e-001 + .double 7.4488995702366880e-014 + .double 1.7460937500000000e+000 + .double 5.7270693512304249e-001 + .double 5.5738115013400602e-001 + .double 3.3666963248598655e-016 + .double 1.7539062500000000e+000 + .double 5.7015590200445432e-001 + .double 5.6184544326265495e-001 + .double 3.6864628681746405e-014 + .double 1.7617187500000000e+000 + .double 5.6762749445676275e-001 + .double 5.6628989502314653e-001 + .double -3.0655228485481327e-014 + .double 1.7695312500000000e+000 + .double 5.6512141280353201e-001 + .double 5.7071468100343736e-001 + .double 3.4181893084806535e-014 + .double 1.7773437500000000e+000 + .double 5.6263736263736264e-001 + .double 5.7511997447136309e-001 + .double 2.4846950587975989e-014 + .double 1.7851562500000000e+000 + .double 5.6017505470459517e-001 + .double 5.7950594641465614e-001 + .double -1.3912911733001039e-014 + .double 1.7929687500000000e+000 + .double 5.5773420479302838e-001 + .double 5.8387276558096346e-001 + .double 1.9219300209816174e-014 + .double 1.8007812500000000e+000 + .double 5.5531453362255967e-001 + .double 5.8822059851718222e-001 + .double -9.6181860936898864e-014 + .double 1.8085937500000000e+000 + .double 5.5291576673866094e-001 + .double 5.9254960960674907e-001 + .double -7.7473812531053051e-014 + .double 1.8164062500000000e+000 + .double 5.5053763440860215e-001 + .double 5.9685996110783890e-001 + .double -4.5062309859097483e-014 + .double 1.8242187500000000e+000 + .double 5.4817987152034264e-001 + .double 6.0115181318928990e-001 + .double 4.4939791960264390e-014 + .double 1.8320312500000000e+000 + .double 5.4584221748400852e-001 + .double 6.0542532396675597e-001 + .double -3.9078848156752539e-014 + .double 1.8398437500000000e+000 + .double 5.4352441613588109e-001 + .double 6.0968064953681278e-001 + .double 4.2493638957603774e-014 + .double 1.8476562500000000e+000 + .double 5.4122621564482032e-001 + .double 6.1391794401242805e-001 + .double -5.7559595156051101e-014 + .double 1.8554687500000000e+000 + .double 5.3894736842105262e-001 + .double 6.1813735955502125e-001 + .double 5.7485347680567445e-014 + .double 1.8632812500000000e+000 + .double 5.3668763102725370e-001 + .double 6.2233904640879700e-001 + .double -1.8261498866916553e-014 + .double 1.8710937500000000e+000 + .double 5.3444676409185798e-001 + .double 6.2652315293144056e-001 + .double -8.7803627974403551e-014 + .double 1.8789062500000000e+000 + .double 5.3222453222453225e-001 + .double 6.3068982562617748e-001 + .double 2.1224639414045291e-014 + .double 1.8867187500000000e+000 + .double 5.3002070393374745e-001 + .double 6.3483920917292380e-001 + .double 8.6410153425250818e-014 + .double 1.8945312500000000e+000 + .double 5.2783505154639176e-001 + .double 6.3897144645784465e-001 + .double 7.6071821668420202e-014 + .double 1.9023437500000000e+000 + .double 5.2566735112936347e-001 + .double 6.4308667860314017e-001 + .double -1.1285622521565641e-013 + .double 1.9101562500000000e+000 + .double 5.2351738241308798e-001 + .double 6.4718504499523988e-001 + .double 6.9672514647224776e-014 + .double 1.9179687500000000e+000 + .double 5.2138492871690423e-001 + .double 6.5126668331504334e-001 + .double -8.5234246813161544e-014 + .double 1.9257812500000000e+000 + .double 5.1926977687626774e-001 + .double 6.5533172956315866e-001 + .double -3.1028217233522746e-014 + .double 1.9335937500000000e+000 + .double 5.1717171717171717e-001 + .double 6.5938031808923370e-001 + .double -1.0587069463342906e-013 + .double 1.9414062500000000e+000 + .double 5.1509054325955739e-001 + .double 6.6341258161696715e-001 + .double 9.9105859809946792e-014 + .double 1.9492187500000000e+000 + .double 5.1302605210420837e-001 + .double 6.6742865127184814e-001 + .double 1.0805094338364667e-013 + .double 1.9570312500000000e+000 + .double 5.1097804391217561e-001 + .double 6.7142865660525786e-001 + .double 4.4466890378487691e-014 + .double 1.9648437500000000e+000 + .double 5.0894632206759438e-001 + .double 6.7541272562016275e-001 + .double 1.3985026783782165e-014 + .double 1.9726562500000000e+000 + .double 5.0693069306930694e-001 + .double 6.7938098479589826e-001 + .double -1.0090714198118343e-013 + .double 1.9804687500000000e+000 + .double 5.0493096646942803e-001 + .double 6.8333355911158833e-001 + .double 3.2359204011502443e-014 + .double 1.9882812500000000e+000 + .double 5.0294695481335949e-001 + .double 6.8727057207092912e-001 + .double 3.1147551503113092e-014 + .double 1.9960937500000000e+000 + .double 5.0097847358121328e-001 + .double 6.9119214572424426e-001 + .double -1.0229682936814195e-013 + +// +// End of table. +// |