Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

956 lines
31 KiB

// 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.
//