code wiki / _hdl_build / _f64_exp_kat_vectors.nx
_f64_exp_kat_vectors.nx source
↩ module page · 228 lines · 12505 B
1// _f64_exp_kat_vectors.nx -- GENERATED by _f64_exp_oracle_gen.py (mpmath @60dps).
2// DO NOT HAND-EDIT. 203 vectors.
3// CORRECTION 2026-06-10: i=164 expected fixed 68C->68D. mpmath float() DOUBLE-ROUNDS
4// subnormal results (true frac 0.6399 at 200dps); the SOVEREIGN nx_bigfloat120 oracle
5// caught it. This file is superseded by bigfloat regeneration (py lane retired).
6import "nx_syscalls.nx"
7
8func f64e_kat_fill_0(av: *i64, ev: *i64) -> i64 {
9 av[0]=0x0000000000000000; ev[0]=0x3FF0000000000000
10 av[1]=0x8000000000000000; ev[1]=0x3FF0000000000000
11 av[2]=0x7FF0000000000000; ev[2]=0x7FF0000000000000
12 av[3]=0xFFF0000000000000; ev[3]=0x0000000000000000
13 av[4]=0x7FF8000000000000; ev[4]=0x7FF8000000000000
14 av[5]=0x3FF0000000000000; ev[5]=0x4005BF0A8B145769
15 av[6]=0xBFF0000000000000; ev[6]=0x3FD78B56362CEF38
16 av[7]=0x3FE62E42FEFA39EF; ev[7]=0x4000000000000000
17 av[8]=0xBFE62E42FEFA39EF; ev[8]=0x3FE0000000000000
18 av[9]=0x3FE0000000000000; ev[9]=0x3FFA61298E1E069C
19 av[10]=0xBFE0000000000000; ev[10]=0x3FE368B2FC6F960A
20 av[11]=0x4034000000000000; ev[11]=0x41BCEB088B68E804
21 av[12]=0xC034000000000000; ev[12]=0x3E21B48655F37267
22 av[13]=0x40562E147AE147AE; ev[13]=0x47EFE8C665382968
23 av[14]=0xC055D51EB851EB85; ev[14]=0x38101AE52CB62D9C
24 av[15]=0x40862E42FEFA39EE; ev[15]=0x7FEFFFFFFFFFFB2A
25 av[16]=0x40862E42FEFA39F0; ev[16]=0x7FF0000000000000
26 av[17]=0xC0874910D52D3051; ev[17]=0x0000000000000001
27 av[18]=0xC0874910D52D3053; ev[18]=0x0000000000000000
28 av[19]=0xC087403D70A3D70A; ev[19]=0x0000000000000002
29 av[20]=0xC087480000000000; ev[20]=0x0000000000000001
30 av[21]=0xC086231EB851EB85; ev[21]=0x00101A5FF6ED496B
31 av[22]=0xC086280000000000; ev[22]=0x0008BFE55DE02338
32 av[23]=0x408630CCCCCCCCCD; ev[23]=0x7FF0000000000000
33 av[24]=0xC08750CCCCCCCCCD; ev[24]=0x0000000000000000
34 av[25]=0x39B4484BFEEBC2A0; ev[25]=0x3FF0000000000000
35 av[26]=0xB9B4484BFEEBC2A0; ev[26]=0x3FF0000000000000
36 av[27]=0x3CA0000000000000; ev[27]=0x3FF0000000000001
37 av[28]=0xBCA0000000000000; ev[28]=0x3FEFFFFFFFFFFFFF
38 av[29]=0x3FD62E42FEFA39EE; ev[29]=0x3FF6A09E667F3BCC
39 av[30]=0x3FD62E42FEFA39F0; ev[30]=0x3FF6A09E667F3BCD
40 av[31]=0x0000000000000001; ev[31]=0x3FF0000000000000
41 av[32]=0x8000000000000001; ev[32]=0x3FF0000000000000
42 av[33]=0x40369DC2E35F8A44; ev[33]=0x41F8BB9EB417B93A
43 av[34]=0x403378F51D6FFDD6; ev[34]=0x41B1105397454D62
44 av[35]=0x406A4C9BCAAD9B78; ev[35]=0x52E72C6C4643E8D2
45 av[36]=0xBFF7F19AB7400420; ev[36]=0x3FCCA945678BC69C
46 av[37]=0xC0870C772195046A; ev[37]=0x00000000000003CE
47 av[38]=0xC064682ED9FB4EBC; ev[38]=0x3136306D3144083C
48 av[39]=0xC080885BB6284BB9; ev[39]=0x103AE746ECEC87BD
49 av[40]=0x40850CC2F238D736; ev[40]=0x7CABB6449905CE50
50 av[41]=0x3FEBE0B84EDAB988; ev[41]=0x40031E2C52CD317A
51 av[42]=0xC0710C5B7BCD2A11; ev[42]=0x2756340E7C5330EC
52 av[43]=0xC086DDE7AB132BFB; ev[43]=0x00000000000502C5
53 av[44]=0xC08349ABB4BB01DD; ev[44]=0x0847855428AC8D7B
54 av[45]=0xC023309EF76FE154; ev[45]=0x3F11D826BCA69E9C
55 av[46]=0xC0861FD6B8B7B7B2; ev[46]=0x001844A239D9C717
56 av[47]=0xC0866372E1BCDD19; ev[47]=0x00000153C4FF98AE
57 av[48]=0xBFF226528C88A690; ev[48]=0x3FD495927AD5A523
58 av[49]=0xC03BC983ACA3F496; ev[49]=0x3D6E191479A6F8BD
59 av[50]=0x40832EE628F29792; ev[50]=0x7748868C8250F9EB
60 av[51]=0x3FB35A0E063B8EB0; ev[51]=0x3FF141A1BECF3013
61 av[52]=0xC087098C3C42D1AA; ev[52]=0x000000000000057B
62 av[53]=0xC0868BAEB9F5ACCF; ev[53]=0x0000000239320C4B
63 av[54]=0xC086B4D7E32F5624; ev[54]=0x000000000351350D
64 av[55]=0xC0397DF17253B65A; ev[55]=0x3DA2AC3DE8219FEF
65 av[56]=0xC024FCC0EF8203C0; ev[56]=0x3EFD0EC69C2CA104
66 av[57]=0x3FE642E70BFAF158; ev[57]=0x40000A555B4DFF90
67 av[58]=0x406EF1BE43693F8C; ev[58]=0x5641B3004EE28EE4
68 av[59]=0xBFDE273AC0D3488C; ev[59]=0x3FE3FA29A627CC00
69 av[60]=0x3FC82FF69BC2AF40; ev[60]=0x3FF353F4CC9A419D
70 av[61]=0x3FD18499207622B8; ev[61]=0x3FF5099A07966090
71 av[62]=0xC0347F35C49D0E9E; ev[62]=0x3E158B39224D183C
72 av[63]=0x4039FD35880476BE; ev[63]=0x424689F30034310C
73 av[64]=0xBFE876DFDF66AEAE; ev[64]=0x3FDDCBC283D88365
74 av[65]=0xC03BFE2D2E41924D; ev[65]=0x3D6880756255243B
75 av[66]=0x3FE176FEBBAD8840; ev[66]=0x3FFB9D7A6154F4F6
76 av[67]=0x401FD86826B48CD8; ev[67]=0x40A667CC06325A8D
77 av[68]=0xBFE1E25D1CE0BCA2; ev[68]=0x3FE24C93E5B9AC98
78 av[69]=0xC086EAF3CFA21C8B; ev[69]=0x000000000000FB19
79 av[70]=0xC0874D9B93CFA0B8; ev[70]=0x0000000000000000
80 av[71]=0xBFD6347DC4E220B0; ev[71]=0x3FE69E6AAB8DBBAB
81 av[72]=0x4038B4DC04ACBBCC; ev[72]=0x42290047BF42C5C2
82 av[73]=0xC086E1916DF8E35A; ev[73]=0x0000000000032B80
83 av[74]=0x4062B21A038E4E7C; ev[74]=0x4D6B6DF6231078E5
84 av[75]=0xC0868228C16EB5CF; ev[75]=0x000000074FC4EEB4
85 av[76]=0x3FE5279453AD2818; ev[76]=0x3FFEFD7C0E08680C
86 av[77]=0xC07623B746E594DC; ev[77]=0x1FFEEDDE3A660AAF
87 av[78]=0x406152760B6CDB90; ev[78]=0x4C6E5CCF45219F62
88 av[79]=0xC0867BF1889B3FA8; ev[79]=0x0000000FE6D59623
89 return 0
90}
91
92func f64e_kat_fill_1(av: *i64, ev: *i64) -> i64 {
93 av[80]=0xBFF9F7A916C7BCC0; ev[80]=0x3FC9418D64216195
94 av[81]=0xC010EB9AFD222424; ev[81]=0x3F8DCD01DCD1E857
95 av[82]=0xBF79F73413599700; ev[82]=0x3FEFCC3BA4852647
96 av[83]=0xC08633F82CD3A0BD; ev[83]=0x0001F5B399B2D2BC
97 av[84]=0xC08622143B58081F; ev[84]=0x0012573F180A0EEE
98 av[85]=0xC086C78814CE5092; ev[85]=0x000000000052209A
99 av[86]=0x4039BAEED6C474E0; ev[86]=0x424165DD425963E5
100 av[87]=0xC08699DE85839E3F; ev[87]=0x0000000060A13634
101 av[88]=0xC0870AAEA6C8E5AF; ev[88]=0x00000000000004C2
102 av[89]=0xC0819740616DED32; ev[89]=0x0D2DCF1B41EEB0D0
103 av[90]=0xBFE70AD4CFDC9C26; ev[90]=0x3FDF265F9405D5A5
104 av[91]=0x3FDAECB5FE70CE18; ev[91]=0x3FF85E4E2ED6E5C4
105 av[92]=0xC07AF40776FEB777; ev[92]=0x190C8B5BE147F754
106 av[93]=0xC02BBA1D6344BDD0; ev[93]=0x3EAFFB660BF9A01C
107 av[94]=0xC0865E167FC12FCC; ev[94]=0x0000029810008340
108 av[95]=0xBFED26170C290F8C; ev[95]=0x3FD9BD06BD2C8580
109 av[96]=0xC0862262C01C7120; ev[96]=0x0011A6A444EAFEAE
110 av[97]=0x408011D4D2E08A68; ev[97]=0x6E4D5AC057BAE74E
111 av[98]=0x401B64F764283FD8; ev[98]=0x408D747BA46F16ED
112 av[99]=0x40347131A758BE32; ev[99]=0x41C67FD2690FAEBC
113 av[100]=0xC04C5FA05FFC4B80; ev[100]=0x3AD18629EBC9090B
114 av[101]=0xBFDF21F74A034C64; ev[101]=0x3FE3AC7E228670DA
115 av[102]=0xC075637E3E34BD72; ev[102]=0x211378D198D4A886
116 av[103]=0x4081C3C3E70AFA06; ev[103]=0x73318197909A3C0D
117 av[104]=0x407D4E9B31F2748C; ev[104]=0x6A3699CC3C8E0920
118 av[105]=0x403B5684302BF2E8; ev[105]=0x4265B5ED918B678B
119 av[106]=0xC036946F64769312; ev[106]=0x3DE5781FC43CC459
120 av[107]=0xC087172BD925FC38; ev[107]=0x0000000000000100
121 av[108]=0x3FDCAB18BE96ED54; ev[108]=0x3FF90A9B1FC5DBA9
122 av[109]=0xBFE6936DDBFB4A5A; ev[109]=0x3FDF9B746662FEE6
123 av[110]=0xC086D8D104C92D8E; ev[110]=0x000000000009772D
124 av[111]=0x40104383604C1718; ev[111]=0x404D28DA8C1AF7A1
125 av[112]=0x40330D56A6F3AC3A; ev[112]=0x41A66A2BB44889C5
126 av[113]=0x407C0F87A18BCD60; ev[113]=0x686A7EDAE4958599
127 av[114]=0xBFCCC3F36C81F1D0; ev[114]=0x3FE98F362E613658
128 av[115]=0xBFB53CCF7D0B41B0; ev[115]=0x3FED73D31B39196F
129 av[116]=0xC08689E3F4950B85; ev[116]=0x00000002C81C507B
130 av[117]=0x3FE9F384B9EB13B8; ev[117]=0x4002003673BAD16B
131 av[118]=0x407C245DD34D0F08; ev[118]=0x68885C5D24B5149F
132 av[119]=0xC06EE19745752988; ev[119]=0x29A7F5F2B906FDDA
133 av[120]=0x3FEF476E4D62E752; ev[120]=0x400543041039E605
134 av[121]=0xC0872B8FCCF26204; ev[121]=0x0000000000000014
135 av[122]=0x402826175C4B5E80; ev[122]=0x410566E86CE39E44
136 av[123]=0xC08712D76BCF3015; ev[123]=0x00000000000001B7
137 av[124]=0xC08658DCD9266C90; ev[124]=0x000004FC0D452D21
138 av[125]=0xC02D113766A2A026; ev[125]=0x3EA05D0ED6B8293E
139 av[126]=0xC07F8518CDD5E87A; ev[126]=0x12757036784B878F
140 av[127]=0xC0362874969D6C90; ev[127]=0x3DF05DF646C19253
141 av[128]=0xC079C4714B71591C; ev[128]=0x1AC27EB96699B2F4
142 av[129]=0xC033363D1692083A; ev[129]=0x3E337825ADBADFE7
143 av[130]=0xC086CDC8ACCB8207; ev[130]=0x00000000002596F9
144 av[131]=0xC03632245838C2A2; ev[131]=0x3DEF84C4891C8A82
145 av[132]=0x407DE7AC123AF598; ev[132]=0x6B13B2D2780DF74A
146 av[133]=0xC03982ACE457841A; ev[133]=0x3DA254B099E7EBF7
147 av[134]=0xC02694BE37D000C2; ev[134]=0x3EEA31FA18935C69
148 av[135]=0xC0803667E0294F87; ev[135]=0x1127154EA698724D
149 av[136]=0x404FA5B7B8CF36E0; ev[136]=0x45A3E723443D1C4B
150 av[137]=0xC0337F460FF460BA; ev[137]=0x3E2D461A1B0138B4
151 av[138]=0xC0368E392431FCA6; ev[138]=0x3DE5FF1ED647E68B
152 av[139]=0xC0872F7233948F43; ev[139]=0x000000000000000C
153 av[140]=0x3FD718E72A821684; ev[140]=0x3FF6F42C81FD0290
154 av[141]=0x3FD0EFF4AECEABC4; ev[141]=0x3FF4D8F6570C6128
155 av[142]=0xC0874ABF5DB56CD9; ev[142]=0x0000000000000000
156 av[143]=0xC086235F495A2A55; ev[143]=0x000F9A7006782BE6
157 av[144]=0xBFE33480BBEE8C20; ev[144]=0x3FE18F26632D8408
158 av[145]=0xBFDF13E22FE76078; ev[145]=0x3FE3B0D2D4B3D550
159 av[146]=0x3FD4CBB72218AF84; ev[146]=0x3FF6249D3F39D2F4
160 av[147]=0x40029FC7F8450000; ev[147]=0x402483E31EF0B683
161 av[148]=0x4081E93D89261726; ev[148]=0x739D9BCC2CD23C5E
162 av[149]=0xC0866DFFB4336742; ev[149]=0x0000005AE081BB8D
163 av[150]=0xC0864B6051E8096F; ev[150]=0x00001AE69654DA28
164 av[151]=0x3FEE8A8ACDADEC5C; ev[151]=0x4004C6F2C42BD3EF
165 av[152]=0x407B99F212B16D8C; ev[152]=0x67C1739FC0242557
166 av[153]=0xBFCD6FB8E8280188; ev[153]=0x3FE96D006657EA26
167 av[154]=0x3FE743C40A879428; ev[154]=0x40008D2100BEE2C7
168 av[155]=0x407ABE557DDB9400; ev[155]=0x668404B3D30AFC19
169 av[156]=0xC073BE9826D2F05A; ev[156]=0x2372D4FCD9738F3B
170 av[157]=0x3FD437710ED1D010; ev[157]=0x3FF5F18B941B21DE
171 av[158]=0xBFE489857DDCF984; ev[158]=0x3FE0D7DDB9240E85
172 av[159]=0xC00100BC904238B0; ev[159]=0x3FBE90582C5EA95C
173 return 0
174}
175
176func f64e_kat_fill_2(av: *i64, ev: *i64) -> i64 {
177 av[160]=0xBFE2DDC1947DAD44; ev[160]=0x3FE1BF00BD7217C7
178 av[161]=0xC0873CF6234B9C6C; ev[161]=0x0000000000000002
179 av[162]=0xC032EEB96F97FF15; ev[162]=0x3E39BE67DEB19550
180 av[163]=0xC030098720D27315; ev[163]=0x3E7D1AD3CC6C261C
181 av[164]=0xC08626760C179C45; ev[164]=0x000A9AFE1077F68D
182 av[165]=0xBFE7555C337E044E; ev[165]=0x3FDEDE2746A66475
183 av[166]=0xC033FCFB5CDE2AA6; ev[166]=0x3E21EA46F81EA4B0
184 av[167]=0x3FEB9CA12154FDD6; ev[167]=0x4002F5A984AAD87B
185 av[168]=0xC0863107BA2C3210; ev[168]=0x0002D472FE65B6A9
186 av[169]=0xC086FE9C3775F127; ev[169]=0x0000000000001583
187 av[170]=0xBFDBEB8A577F2258; ev[170]=0x3FE4AFC2FF70BCE5
188 av[171]=0xC02D3C4FAB1862C7; ev[171]=0x3E9E15CBC1D43F2F
189 av[172]=0x401ECC84D0A0EF38; ev[172]=0x40A13F7BBAE40AD8
190 av[173]=0xC06B09E0F3F383C8; ev[173]=0x2C6E89870A2FE51E
191 av[174]=0xBFDA37B40829E340; ev[174]=0x3FE53E86DB13BED1
192 av[175]=0xC08532848AA05533; ev[175]=0x02C517EA1D6CD803
193 av[176]=0xC0873D0E4F703513; ev[176]=0x0000000000000002
194 av[177]=0xC086AB3FDD675503; ev[177]=0x000000000B014BE8
195 av[178]=0x4083A4EC8C26486C; ev[178]=0x789DDDE160215208
196 av[179]=0xBFCF5AA20F26A3A0; ev[179]=0x3FE90C36E1289DF9
197 av[180]=0xC086372F5078E41D; ev[180]=0x00014FA78545B572
198 av[181]=0xC0764F5478A44EC2; ev[181]=0x1FC0343F6B07E77B
199 av[182]=0xC0868398CBCC33B1; ev[182]=0x000000061BE40E3E
200 av[183]=0x3FE105B2CDDD729C; ev[183]=0x3FFB3C610C375726
201 av[184]=0xC0870DE6D6D2CF4A; ev[184]=0x000000000000032E
202 av[185]=0xC0865C987A6493FF; ev[185]=0x000003203D15A497
203 av[186]=0x3EFCF23903B40000; ev[186]=0x3FF0001CF25332D1
204 av[187]=0x402C630F0F3AAB58; ev[187]=0x4136446DFC78377C
205 av[188]=0xC0872ED6E7B4D7E4; ev[188]=0x000000000000000D
206 av[189]=0x40218F8FA27F7068; ev[189]=0x40B9696E764FFA94
207 av[190]=0xC0867CF07FA7C832; ev[190]=0x0000000E0A508B1C
208 av[191]=0x408402E5C864296E; ev[191]=0x79ACC9969FB5F74F
209 av[192]=0x4003D3E7B9FFFEE0; ev[192]=0x4027D8937C71CE91
210 av[193]=0x3FFC0443997098D0; ev[193]=0x40170AD9CFD12BB7
211 av[194]=0x3FC98CCBDBDFB3C0; ev[194]=0x3FF388E94939FAD0
212 av[195]=0xC08223F9CB422052; ev[195]=0x0B96F11366F8A062
213 av[196]=0x3FDD12C581D3CDAC; ev[196]=0x3FF9334CB7408680
214 av[197]=0x3FE3058F1E37BCDA; ev[197]=0x3FFCFDEEBFC12E06
215 av[198]=0x3FE396E0E4F92088; ev[198]=0x3FFD82C43174CB00
216 av[199]=0xC06D577BD7554E48; ev[199]=0x2AC466D24CD757D8
217 av[200]=0xC086DF1DF7E5BFC7; ev[200]=0x0000000000044E6B
218 av[201]=0xC0867D9B244D9FCC; ev[201]=0x0000000CEAF7910A
219 av[202]=0x403C7C8394C2AB56; ev[202]=0x42811D5C3E58D0D7
220 return 0
221}
222
223func f64e_kat_fill_all(av: *i64, ev: *i64) -> i64 {
224 f64e_kat_fill_0(av, ev)
225 f64e_kat_fill_1(av, ev)
226 f64e_kat_fill_2(av, ev)
227 return 203
228}