/* PR c/102989 */ /* { dg-do run { target bitint } } */ /* { dg-options "-std=c23 -pedantic-errors" } */ /* { dg-skip-if "" { ! run_expensive_tests } { "*" } { "-O0" "-O2" } } */ /* { dg-skip-if "" { ! run_expensive_tests } { "-flto" } { "" } } */ #if __BITINT_MAXWIDTH__ >= 256 __attribute__((noipa)) void test135_192_228_256 (unsigned _BitInt(135) *p, unsigned _BitInt(192) *q, unsigned _BitInt(228) *r, unsigned _BitInt(256) *s) { r[6] = (_BitInt(135)) (p[0] + p[1] + p[2]); s[6] = (_BitInt(135)) (p[0] - p[1] + p[2]); r[7] = p[0] + p[1] - p[2]; s[7] = p[0] - p[1] - p[2]; r[8] = (_BitInt(192)) (q[0] + q[1] + q[2]); s[8] = (_BitInt(192)) (q[0] - q[1] + q[2]); r[9] = q[0] + q[1] - q[2]; s[9] = q[0] - q[1] - q[2]; p[6] = (_BitInt(135)) (r[0] + r[1] + r[2]); q[6] = (_BitInt(135)) (r[0] - r[1] + r[2]); p[7] = r[0] + r[1] - r[2]; q[7] = r[0] - r[1] - r[2]; p[8] = (_BitInt(192)) (s[0] + s[1] + s[2]); q[8] = (_BitInt(192)) (s[0] - s[1] + s[2]); p[9] = s[0] + s[1] - s[2]; q[9] = s[0] - s[1] - s[2]; r[10] = ((unsigned _BitInt(228)) ((_BitInt(135)) p[3])) + ((_BitInt(135)) p[4]) + ((_BitInt(135)) p[5]); s[10] = ((unsigned _BitInt(256)) ((_BitInt(135)) p[3])) + ((_BitInt(135)) p[4]) + ((_BitInt(135)) p[5]); r[11] = ((unsigned _BitInt(228)) p[3]) + p[4] + p[5]; s[11] = ((unsigned _BitInt(256)) p[3]) + p[4] + p[5]; r[12] = ((unsigned _BitInt(228)) ((_BitInt(192)) q[3])) + ((_BitInt(192)) q[4]) + ((_BitInt(192)) q[5]); s[12] = ((unsigned _BitInt(256)) ((_BitInt(192)) q[3])) + ((_BitInt(192)) q[4]) + ((_BitInt(192)) q[5]); r[13] = ((unsigned _BitInt(228)) q[3]) + q[4] + q[5]; s[13] = ((unsigned _BitInt(256)) q[3]) + q[4] + q[5]; p[10] = ((unsigned _BitInt(135)) r[3]) + ((unsigned _BitInt(135)) r[4]) + ((unsigned _BitInt(135)) r[5]); q[10] = ((unsigned _BitInt(192)) r[3]) + ((unsigned _BitInt(192)) r[4]) + ((unsigned _BitInt(192)) r[5]); p[11] = ((unsigned _BitInt(135)) s[3]) + ((unsigned _BitInt(135)) s[4]) + ((unsigned _BitInt(135)) s[5]); q[11] = ((unsigned _BitInt(192)) s[3]) + ((unsigned _BitInt(192)) s[4]) + ((unsigned _BitInt(192)) s[5]); p[12] = ((_BitInt(228)) ((_BitInt(135)) p[3])) < ((_BitInt(228)) ((_BitInt(135)) p[4])); q[12] = ((_BitInt(256)) ((_BitInt(135)) p[3])) > ((_BitInt(256)) ((_BitInt(135)) p[4])); p[13] = ((_BitInt(228)) ((unsigned _BitInt(135)) p[3])) <= ((unsigned _BitInt(228)) ((_BitInt(135)) p[4])); q[13] = ((_BitInt(256)) ((unsigned _BitInt(135)) p[3])) >= ((unsigned _BitInt(256)) ((_BitInt(135)) p[4])); p[14] = ((_BitInt(228)) ((_BitInt(192)) q[3])) < ((_BitInt(228)) ((_BitInt(192)) q[4])); q[14] = ((_BitInt(256)) ((_BitInt(192)) q[3])) <= ((_BitInt(256)) ((_BitInt(192)) q[4])); r[14] = ((_BitInt(228)) ((unsigned _BitInt(192)) q[3])) >= ((unsigned _BitInt(228)) ((_BitInt(192)) q[4])); s[14] = ((_BitInt(256)) ((unsigned _BitInt(192)) q[3])) > ((unsigned _BitInt(256)) ((_BitInt(192)) q[4])); } #endif #if __BITINT_MAXWIDTH__ >= 575 __attribute__((noipa)) void test470_512_519_575 (unsigned _BitInt(470) *p, unsigned _BitInt(512) *q, unsigned _BitInt(519) *r, unsigned _BitInt(575) *s) { r[6] = (_BitInt(470)) (p[0] + p[1] + p[2]); s[6] = (_BitInt(470)) (p[0] - p[1] + p[2]); r[7] = p[0] + p[1] - p[2]; s[7] = p[0] - p[1] - p[2]; r[8] = (_BitInt(512)) (q[0] + q[1] + q[2]); s[8] = (_BitInt(512)) (q[0] - q[1] + q[2]); r[9] = q[0] + q[1] - q[2]; s[9] = q[0] - q[1] - q[2]; p[6] = (_BitInt(470)) (r[0] + r[1] + r[2]); q[6] = (_BitInt(470)) (r[0] - r[1] + r[2]); p[7] = r[0] + r[1] - r[2]; q[7] = r[0] - r[1] - r[2]; p[8] = (_BitInt(512)) (s[0] + s[1] + s[2]); q[8] = (_BitInt(512)) (s[0] - s[1] + s[2]); p[9] = s[0] + s[1] - s[2]; q[9] = s[0] - s[1] - s[2]; r[10] = ((unsigned _BitInt(519)) ((_BitInt(470)) p[3])) + ((_BitInt(470)) p[4]) + ((_BitInt(470)) p[5]); s[10] = ((unsigned _BitInt(575)) ((_BitInt(470)) p[3])) + ((_BitInt(470)) p[4]) + ((_BitInt(470)) p[5]); r[11] = ((unsigned _BitInt(519)) p[3]) + p[4] + p[5]; s[11] = ((unsigned _BitInt(575)) p[3]) + p[4] + p[5]; r[12] = ((unsigned _BitInt(519)) ((_BitInt(512)) q[3])) + ((_BitInt(512)) q[4]) + ((_BitInt(512)) q[5]); s[12] = ((unsigned _BitInt(575)) ((_BitInt(512)) q[3])) + ((_BitInt(512)) q[4]) + ((_BitInt(512)) q[5]); r[13] = ((unsigned _BitInt(519)) q[3]) + q[4] + q[5]; s[13] = ((unsigned _BitInt(575)) q[3]) + q[4] + q[5]; p[10] = ((unsigned _BitInt(470)) r[3]) + ((unsigned _BitInt(470)) r[4]) + ((unsigned _BitInt(470)) r[5]); q[10] = ((unsigned _BitInt(512)) r[3]) + ((unsigned _BitInt(512)) r[4]) + ((unsigned _BitInt(512)) r[5]); p[11] = ((unsigned _BitInt(470)) s[3]) + ((unsigned _BitInt(470)) s[4]) + ((unsigned _BitInt(470)) s[5]); q[11] = ((unsigned _BitInt(512)) s[3]) + ((unsigned _BitInt(512)) s[4]) + ((unsigned _BitInt(512)) s[5]); p[12] = ((_BitInt(519)) ((_BitInt(470)) p[3])) < ((_BitInt(519)) ((_BitInt(470)) p[4])); q[12] = ((_BitInt(575)) ((_BitInt(470)) p[3])) > ((_BitInt(575)) ((_BitInt(470)) p[4])); p[13] = ((_BitInt(519)) ((unsigned _BitInt(470)) p[3])) <= ((unsigned _BitInt(519)) ((_BitInt(470)) p[4])); q[13] = ((_BitInt(575)) ((unsigned _BitInt(470)) p[3])) >= ((unsigned _BitInt(575)) ((_BitInt(470)) p[4])); p[14] = ((_BitInt(519)) ((_BitInt(512)) q[3])) < ((_BitInt(519)) ((_BitInt(512)) q[4])); q[14] = ((_BitInt(575)) ((_BitInt(512)) q[3])) <= ((_BitInt(575)) ((_BitInt(512)) q[4])); r[14] = ((_BitInt(519)) ((unsigned _BitInt(512)) q[3])) >= ((unsigned _BitInt(519)) ((_BitInt(512)) q[4])); s[14] = ((_BitInt(575)) ((unsigned _BitInt(512)) q[3])) > ((unsigned _BitInt(575)) ((_BitInt(512)) q[4])); } #endif #if __BITINT_MAXWIDTH__ >= 574 __attribute__((noipa)) void test138_192_523_574 (unsigned _BitInt(138) *p, unsigned _BitInt(192) *q, unsigned _BitInt(523) *r, unsigned _BitInt(574) *s) { r[6] = (_BitInt(138)) (p[0] + p[1] + p[2]); s[6] = (_BitInt(138)) (p[0] - p[1] + p[2]); r[7] = p[0] + p[1] - p[2]; s[7] = p[0] - p[1] - p[2]; r[8] = (_BitInt(192)) (q[0] + q[1] + q[2]); s[8] = (_BitInt(192)) (q[0] - q[1] + q[2]); r[9] = q[0] + q[1] - q[2]; s[9] = q[0] - q[1] - q[2]; p[6] = (_BitInt(138)) (r[0] + r[1] + r[2]); q[6] = (_BitInt(138)) (r[0] - r[1] + r[2]); p[7] = r[0] + r[1] - r[2]; q[7] = r[0] - r[1] - r[2]; p[8] = (_BitInt(192)) (s[0] + s[1] + s[2]); q[8] = (_BitInt(192)) (s[0] - s[1] + s[2]); p[9] = s[0] + s[1] - s[2]; q[9] = s[0] - s[1] - s[2]; r[10] = ((unsigned _BitInt(523)) ((_BitInt(138)) p[3])) + ((_BitInt(138)) p[4]) + ((_BitInt(138)) p[5]); s[10] = ((unsigned _BitInt(574)) ((_BitInt(138)) p[3])) + ((_BitInt(138)) p[4]) + ((_BitInt(138)) p[5]); r[11] = ((unsigned _BitInt(523)) p[3]) + p[4] + p[5]; s[11] = ((unsigned _BitInt(574)) p[3]) + p[4] + p[5]; r[12] = ((unsigned _BitInt(523)) ((_BitInt(192)) q[3])) + ((_BitInt(192)) q[4]) + ((_BitInt(192)) q[5]); s[12] = ((unsigned _BitInt(574)) ((_BitInt(192)) q[3])) + ((_BitInt(192)) q[4]) + ((_BitInt(192)) q[5]); r[13] = ((unsigned _BitInt(523)) q[3]) + q[4] + q[5]; s[13] = ((unsigned _BitInt(574)) q[3]) + q[4] + q[5]; p[10] = ((unsigned _BitInt(138)) r[3]) + ((unsigned _BitInt(138)) r[4]) + ((unsigned _BitInt(138)) r[5]); q[10] = ((unsigned _BitInt(192)) r[3]) + ((unsigned _BitInt(192)) r[4]) + ((unsigned _BitInt(192)) r[5]); p[11] = ((unsigned _BitInt(138)) s[3]) + ((unsigned _BitInt(138)) s[4]) + ((unsigned _BitInt(138)) s[5]); q[11] = ((unsigned _BitInt(192)) s[3]) + ((unsigned _BitInt(192)) s[4]) + ((unsigned _BitInt(192)) s[5]); p[12] = ((_BitInt(523)) ((_BitInt(138)) p[3])) < ((_BitInt(523)) ((_BitInt(138)) p[4])); q[12] = ((_BitInt(574)) ((_BitInt(138)) p[3])) > ((_BitInt(574)) ((_BitInt(138)) p[4])); p[13] = ((_BitInt(523)) ((unsigned _BitInt(138)) p[3])) <= ((unsigned _BitInt(523)) ((_BitInt(138)) p[4])); q[13] = ((_BitInt(574)) ((unsigned _BitInt(138)) p[3])) >= ((unsigned _BitInt(574)) ((_BitInt(138)) p[4])); p[14] = ((_BitInt(523)) ((_BitInt(192)) q[3])) < ((_BitInt(523)) ((_BitInt(192)) q[4])); q[14] = ((_BitInt(574)) ((_BitInt(192)) q[3])) <= ((_BitInt(574)) ((_BitInt(192)) q[4])); r[14] = ((_BitInt(523)) ((unsigned _BitInt(192)) q[3])) >= ((unsigned _BitInt(523)) ((_BitInt(192)) q[4])); s[14] = ((_BitInt(574)) ((unsigned _BitInt(192)) q[3])) > ((unsigned _BitInt(574)) ((_BitInt(192)) q[4])); } #endif int main () { #if __BITINT_MAXWIDTH__ >= 256 static unsigned _BitInt(135) p135[24] = { 4187273188098476865668456823817923591884uwb, 6807534906955493735159263291613578822092uwb, 41026661032626929517457579844514879338728uwb, 21107725719388574292787309710748598888876uwb, 37762806761430755157975144430695583115875uwb, 26495620887646122219041406684145481614415uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24294442897610200845563470372394790405427uwb, 14494728260279138634407444539578218061153uwb, 35692618919905757032302955601299560733828uwb, 2073608133107652132583703172274308589354uwb, 23162446968047093866488519785733079173672uwb, 23215356388255044329396934936113503903836uwb, 0uwb, 1uwb, 0uwb }; static unsigned _BitInt(192) q192[24] = { 2086085555369597859021791929925392355640686637062909369671uwb, 2680579114698255110186052616880338377881530773942412775534uwb, 3327728695296211902341553047509833116972847770197432421329uwb, 5940317943727487997168783552089315457607206947999336887004uwb, 5542354187267299678821667349861772942889507214082859925027uwb, 3271998891636156295842018666243687525289384908182662772181uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19403341198470336643414519815259741762743uwb, 5896270732876306173690375572457711356577732208000026578149uwb, 5124631678261056717896926088333660842277657529754581693718uwb, 3443509077298665851293720223028023121358922119534917222332uwb, 5756578284734093802702142887739107033567473420998759418408uwb, 4630861060283249917347323439223922476602768583090317402204uwb, 1uwb, 0uwb, 0uwb }; static unsigned _BitInt(228) r228[24] = { 161966633757691155241945327015229701994331693366818788921573408319756uwb, 38296346596827362616775983079516749483975676455899963878059782490174uwb, 241591800199660287949868996521720659189646617902754527264229209396201uwb, 428902738798964850544466128550714169355105701114620489106903291340964uwb, 235528598555728562847947927417825731721784962388084030737368213942614uwb, 256292789834236084059292238814861516121661392325304427878120090497070uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8465326161800776794973350208680050686336uwb, 13524290028307164406682090022182954141616uwb, 1817291629977384107713608171107897434392709736738720053638uwb, 1438935974771641066866291499295897616549369640807889723876uwb, 431359146674410236714672241390567958214899515783829121020714765473886uwb, 85366153368465451669803860825589663619166uwb, 431359146670333602531143143072639192076766087438128192434530520032980uwb, 14754671022630943971832469568194775925786099070264859584212uwb, 0uwb }; static unsigned _BitInt(256) s256[24] = { 33689368506800899324387091792297880425309542585828646830789259960880991063584uwb, 39571323848345650718084485253626478678560275338021939071625078673058668106679uwb, 110504693488819055796063554254198165064817853023249665372075921323272516500141uwb, 102297428517176642359444223748374693989314404662584768443522888625651626181283uwb, 80244728165314710913956389448156622901095909768247496334097456157707270969074uwb, 103665915010005983358711046736784166330673952063454224485339530724102504302279uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115792089237316195423570985008687907848120241013530353364112407633366022682088uwb, 43465363180276300259675513190222127563800uwb, 2733235135967554651177292360554887094732003633317929015466uwb, 2354879480761811610329975688742887276888663537387098685704uwb, 115792089237316195423570985008687907851523852102345769062637545330970131126366uwb, 85366153368465451669803860825589663619166uwb, 115792089237316195419494350825158809533595085964212340716936616744785885685460uwb, 14754671022630943971832469568194775925786099070264859584212uwb, 0uwb }; test135_192_228_256 (p135, q192, r228, s256); for (int i = 6; i < 15; ++i) if (p135[i] != p135[i + 9] || q192[i] != q192[i + 9] || r228[i] != r228[i + 9] || s256[i] != s256[i + 9]) __builtin_abort (); #endif #if __BITINT_MAXWIDTH__ >= 575 static unsigned _BitInt(470) p470[24] = { 290679861857217105576749510785172236097196317219002071340131005135259342235163792727727620685697644545754092322618593967328975789101613622756uwb, 3007766161917260990990922308983802917798001363835330597758175849272351861703814650851622073672692222948955250827120638757725725607466346547961uwb, 574060276709923148626402211078479568921550247040425483673763765831291153847648453629069366560426848580089729851582562589160127450838856742850uwb, 1513032643015460548072615957037831807842396447090608200111284706851223881642236182620260811534047670872236957008209636843038402328412186623867uwb, 736018121751614604248763744490396332128994581237940802611521314820643126961848250509301799425532301686788266718861244200351342613056372468552uwb, 30155063271645468057678848208011195960933215968662731964986808367634269990062216294334734731269355557159014770813970386099476462377224708070uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2336276654669971355000545579045474018643499545251683574017489057360457587609182251538648565538596336349157530705582440962441081292975829750725uwb, 2811887457092416012110559147431839355552932271928059605261212342070741952382405730371093476958614469776023370616340687057532287796176219869449uwb, 1454614080118846581654283867177010224989739028600678358170065228650331074859011839166100981351630244514069807407054058295180885648638359156315uwb, 1452099984535181412105251439415950646129930223001670876794248464265033550302786152371528494721306355739311614007226227128382131037961688117145uwb, 1700131771206195433306793035837240564903007159128880173423363038992576767815643454391004339339329935701073991719473097155654566696420734301605uwb, 687646008549017812028590579565520345681613774085522641973968443446824759773421489288886130070355380390157446333512774944224841451835655874095uwb, 0uwb, 0uwb, 1uwb }; static unsigned _BitInt(512) q512[24] = { 11999607180890662234640611094796125402682182607671756821443119677915957826104697013256706604957461530042481930446302956354396703791101848051437136984190670uwb, 1669399929141703249463393746110522414573291237669539702537374904052097169767189303794997941915228747803109873985069631915369758962889453579386958506452828uwb, 11378992935330313540343401440793120879643841271871581700686172052228324616806874974534345697693861690426360116949795282888644662188134499896194148433768387uwb, 9993083190971384981726645923137348157759809443699348826766460590248782912389872021894301181692065821343040669086846645954670076835055767363529908044878460uwb, 4194741102820399815388565886074911339757551809782406262401319165104710890785047966633447456093482200519894213755964462654816313685699735398967845201704233uwb, 2421595337545745821088215118098296983215379552867408581490131959698723606384411644669422390261525987191387981272012502904825570949628276538570672660290088uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1513903473639259387274129463605791299347099137673287344952013483163916537193546764015586855259820134007663746976291793381162392640818043683999uwb, 12277156682318352235712463688522823330952278031457456554222055921981909263024261498262481023121115845377546131965398459894872235113782544708914458317029859uwb, 4027845254315197169423233647114376033430305844071443075105613565290966574715062841638133555232740863237407025233981863916917198547523085200055676796066563uwb, 10707639349311374361511081362429794348061398948029634783963376915733257208356397594815368492279579755336561685612483789993986308827288890748132804532704321uwb, 11909891944680678452073045961414477447224653685643721320079864331428768064778333088269746747399111241079878764522077445502337140106279379768026249427056037uwb, 5596625625751028170955045723080584878265817548746738005171988990687430526534540571089022256509279287347335747951148567883951414510786508005390890674578991uwb, 1uwb, 1uwb, 1uwb }; static unsigned _BitInt(519) r519[24] = { 1030342010401113812244886675533462199253435182769422147430754601621146628252085744300635665226057568402783959871999680067593144181093412956713229194456894164uwb, 1399286804337892133001051165724092281210924970185276871571622362921173888386145177372320997003882614750136133472548611361735698398271314700469097220046489491uwb, 1187491577184187187658283970910931091626643735561997844498566871693437222121521301715871480084581538847004007675304538195851777836706064395267954449805214046uwb, 1590038038660143030887559697627655997346700459420257472659393551660904723658903805269248515919541163543209428329235720802030325145482255847896549116166445779uwb, 884402951942479884942778411278542758813719790602900630698855595508395145632292880569268024966776717352051287824788383446062053991609910742048548988449536210uwb, 326292950770117959333132136682031715802512494345703440528331497456255817028879418424543059879797143305345789113287071774990765627898999338681127138076566016uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823923731816440081735482986127565752359132554398497263261175151854750269095449533809682632145875337989030585578073140142878915098101850794143uwb, 2724385747064554947941269608690495584973647434013907185424543088576320050091329989950280327797963018914619613298156670135894573945729103427867uwb, 1714431799218129913570774556055636380759299408511854443817835408543138647401945680368622211813596383857215966052878410278731400359247393614777658018691007981uwb, 2290014174702051943760603400113526937611632573469714823294322529739730379065011342517358849178828587419231687481577305381121800565856801734629947056875111uwb, 2279205828038720620379058549736239335932324244297211734687792830039501278594146649423897345690849328116184238497884851429489221403845783800489uwb, 2279205828038720620379058549736239335932324244297211734687792830039501278594146649423897345690849328116184238497884851429489221403845783800489uwb, 3201611701394933518629401929104710353253374985756770292934350271330453379485784656395296729880170581364291005928337560660558078658437209354634776900788685uwb, 16609419631337530618203426927310556480732740806349163670657911715052217409559331633197171028047074009054322864114823611514311961470383779301068425906872781uwb, 1uwb }; static unsigned _BitInt(575) s575[24] = { 96927313110651552741697906285845027560278665167912446772243994455709167318164555507475733363294500975052442014691905285678776198101396126432691790596947740988776944060654926uwb, 102707772385622802706823804871287360126470122215207829602545757786870641626119828685986043329520959072898431094747590180228385563652833016000194460109692900249703592758013356uwb, 110583747014804561196219218561034468168713024547408050239450245043477530907411843124501635977214033600051542621634445064425297114819990148482732834711384300709771384106312545uwb, 54306775370484796829739172393424070839859954453514190131950827429084664762249620446751937114044786249494515203860165437770921772021031551664278887501083036990545747406428169uwb, 46114759885997746928772223321204027410936673207704735367438056888037044881883997045448409583831956188379542065205564192543381437121786101651883495914008056100188006564313178uwb, 35190453913973191463478013966823372048936778121696189495901809463574016396767724553244869787736619209084040172125210006605333310947417602727114932375121134023666009552590284uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 905556545317840426670820457599737857678360574120357846766614390078350723070174958903911342346373648262657058770329172970099291381779089937069uwb, 2806018560565955292876607080162667690292875453735767768929982326799920504066055415044509037998461329188246086490412702963114950229406342570793uwb, 123665200736552267025144844837017673343938243343672951569825529047137624617410727523806857743618811225191141477410357286961350974191432110603936918943400338433680414973687605uwb, 12359022246361242544407840906098328235944415918723028795943134165357300069604179711729237263515274519503043797697924092404136165452024464522289679050053551uwb, 2279205828038720620379058549736239335932324244297211734687792830039501278594146649423897345690849328116184238497884851429489221403845783800489uwb, 2279205828038720620379058549736239335932324244297211734687792830039501278594146649423897345690849328116184238497884851429489221403845783800489uwb, 3201611701394933518629401929104710353253374985756770292934350271330453379485784656395296729880170581364291005928337560660558078658437209354634776900788685uwb, 16609419631337530618203426927310556480732740806349163670657911715052217409559331633197171028047074009054322864114823611514311961470383779301068425906872781uwb, 1uwb }; test470_512_519_575 (p470, q512, r519, s575); for (int i = 6; i < 15; ++i) if (p470[i] != p470[i + 9] || q512[i] != q512[i + 9] || r519[i] != r519[i + 9] || s575[i] != s575[i + 9]) __builtin_abort (); #endif #if __BITINT_MAXWIDTH__ >= 574 static unsigned _BitInt(138) p138[24] = { 101422284254667607392742201719883227411625uwb, 160466466586635795278252037831376082677350uwb, 25107605609849786823351214520760656620933uwb, 295969175246745649031682884402595713219313uwb, 13181527086641487248448136085636319944955uwb, 235130534778709326353598872018612896874473uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167302456247167982996160810773690897220075uwb, 297389206356979455260412959683265332806635uwb, 335394759052458807357434855405547433962500uwb, 321901396962914134364671486134447068161226uwb, 120351777790732110377699121565672639601425uwb, 198373944314536120634408834917264425196481uwb, 1uwb, 0uwb, 1uwb }; static unsigned _BitInt(192) t192[24] = { 911018684451330895893338523816772465484522458698266889768uwb, 2046183627271691614636061554682220483052698404211100534853uwb, 4678069061913127216263854322789964375230426789917042687454uwb, 3459784480694777343275716409755634649190978443376335561303uwb, 3867595273303447369888355921671728883273018646069926566645uwb, 4813052987333975223830750234077960301742057680559503213273uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6277101735386680684990022390197371509564931202241440203909uwb, 1278608194268128077434264942601213585924783150489231066757uwb, 4029427835151946963573253373549922510624267261072515255840uwb, 672033229033398034156049846020027986275380626166731032294uwb, 1357991472586126795792080074222943985598370321805879319313uwb, 2856538916789713009071224987092580961800045494832854440897uwb, 0uwb, 1uwb, 1uwb }; static unsigned _BitInt(523) r523[24] = { 3195765699538496998535864601292347963256629173162679399458238383409531673496364786350189170351629279748663665677408547146700561030889355712400808816914064440uwb, 11159477301642000894502707350448750665412836731536210953742141163262563390545287499722678844509966339767235942912910312315832667904302744531360002727358824115uwb, 22101560948582634345286310809677329764046784779464227969587135587282924532940609616951363156766482627364659628549350689295905244730986420796580267097794699008uwb, 3492227525200477614910950479637037651613240112641204783475954014565794311494477327458692721172240707535504736878649393132370069751011176314509944329056779358uwb, 4470424684397392413407392569484317542436005833167916532642765757801563745613041876920796693178762870199674360069594704277190939739704629258367293449899462004uwb, 13549742618125959998093915668094856307843206900469464436576203440358812289708508455667681082349827642620118118540849103671482396581682398406739495271235801407uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923370695700676111069483100152175053778407572uwb, 236781145231453615847643025030498653468042uwb, 1358169638249468962957464978081290907665292208362375599179uwb, 4556234985196576058101335178916694989409149517456359250063uwb, 27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923279531437610013356035988992599748093205461uwb, 544281237112096462633729892506844930038741uwb, 27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818213218312780738081077635942247881191161149284549778122031141uwb, 12140432741332199936994822565505323834206054770005765341221uwb, 0uwb }; static unsigned _BitInt(574) s574[24] = { 49523656310311432476097096707674348247864532997580458449189999134679927949102290921020347613627600560130921641399166416960416734901407545116688589513670229626633588928674165uwb, 42569658590233851212367348547775997184555788503209190045856322440515976044599442772511746833320065456241311597243171150757254859304810272116865990700066734780242713347731186uwb, 19981999860412564491215269984435969976814910925473334223760435541572601828084228297697056388524273994976358111097326046010839057122757304450178767567932398574496781000082333uwb, 8558322198907185372332169456108688881070480268559248312027066736995799133128362338305761323248219317368913715505110464564580744145522428754123209057064241016828671823488793uwb, 43811765949130776561433192718564194559949284938162910217959397270715482324290476494691373258084890889610745910962659657029995968487465144041804156738366622609326192386149788uwb, 45992921207674703917316226268947032522368981737128477902399950788131403664441772601690186531393245791394478464207683996776726761730838587963296718352656413407075666840676108uwb, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576653865915164420374411133357560960838529992uwb, 264297355785223011877634547377877136644286uwb, 61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504032100640224964662421487833755255625414851874551633211704257uwb, 463867730653192828829212069552254023303752709034158180357uwb, 61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576535185441544553264934030675638276670151637uwb, 544281237112096462633729892506844930038741uwb, 61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504028143965376430734333289946182421100059190967588306698977317uwb, 12140432741332199936994822565505323834206054770005765341221uwb, 0uwb }; test138_192_523_574 (p138, t192, r523, s574); for (int i = 6; i < 15; ++i) if (p138[i] != p138[i + 9] || t192[i] != t192[i + 9] || r523[i] != r523[i + 9] || s574[i] != s574[i + 9]) __builtin_abort (); #endif }