ccgo_darwin_amd64.go 405 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812
  1. // Code generated for darwin/amd64 by 'generator --prefix-enumerator=_ --prefix-external=x_ --prefix-field=F --prefix-macro=m_ --prefix-static-internal=_ --prefix-static-none=_ --prefix-tagged-enum=_ --prefix-tagged-struct=T --prefix-tagged-union=T --prefix-typename=T --prefix-undefined=_ -extended-errors -ignore-unsupported-alignment -ignore-link-errors -o libmd.go --package-name libmd src/.libs/libmd.a', DO NOT EDIT.
  2. //go:build darwin && amd64
  3. package libmd
  4. import (
  5. "reflect"
  6. "unsafe"
  7. "modernc.org/libc"
  8. )
  9. var _ reflect.Type
  10. var _ unsafe.Pointer
  11. const m_BIG_ENDIAN = "__DARWIN_BIG_ENDIAN"
  12. const m_BYTE_ORDER = "__DARWIN_BYTE_ORDER"
  13. const m_FD_SETSIZE = "__DARWIN_FD_SETSIZE"
  14. const m_HAVE_CONFIG_H = 1
  15. const m_HAVE_DLFCN_H = 1
  16. const m_HAVE_INTTYPES_H = 1
  17. const m_HAVE_STDINT_H = 1
  18. const m_HAVE_STDIO_H = 1
  19. const m_HAVE_STDLIB_H = 1
  20. const m_HAVE_STRINGS_H = 1
  21. const m_HAVE_STRING_H = 1
  22. const m_HAVE_SYS_STAT_H = 1
  23. const m_HAVE_SYS_TYPES_H = 1
  24. const m_HAVE_UNISTD_H = 1
  25. const m_HAVE_WCHAR_H = 1
  26. const m_INTMAX_MAX = "__INTMAX_MAX__"
  27. const m_INTPTR_MAX = "__INTPTR_MAX__"
  28. const m_INT_FAST16_MAX = "__INT_LEAST16_MAX"
  29. const m_INT_FAST16_MIN = "__INT_LEAST16_MIN"
  30. const m_INT_FAST32_MAX = "__INT_LEAST32_MAX"
  31. const m_INT_FAST32_MIN = "__INT_LEAST32_MIN"
  32. const m_INT_FAST64_MAX = "__INT_LEAST64_MAX"
  33. const m_INT_FAST64_MIN = "__INT_LEAST64_MIN"
  34. const m_INT_FAST8_MAX = "__INT_LEAST8_MAX"
  35. const m_INT_FAST8_MIN = "__INT_LEAST8_MIN"
  36. const m_INT_LEAST16_MAX = "__INT_LEAST16_MAX"
  37. const m_INT_LEAST16_MIN = "__INT_LEAST16_MIN"
  38. const m_INT_LEAST32_MAX = "__INT_LEAST32_MAX"
  39. const m_INT_LEAST32_MIN = "__INT_LEAST32_MIN"
  40. const m_INT_LEAST64_MAX = "__INT_LEAST64_MAX"
  41. const m_INT_LEAST64_MIN = "__INT_LEAST64_MIN"
  42. const m_INT_LEAST8_MAX = "__INT_LEAST8_MAX"
  43. const m_INT_LEAST8_MIN = "__INT_LEAST8_MIN"
  44. const m_LITTLE_ENDIAN = "__DARWIN_LITTLE_ENDIAN"
  45. const m_LT_OBJDIR = ".libs/"
  46. const m_MAC_OS_VERSION_11_0 = "__MAC_11_0"
  47. const m_MAC_OS_VERSION_11_1 = "__MAC_11_1"
  48. const m_MAC_OS_VERSION_11_3 = "__MAC_11_3"
  49. const m_MAC_OS_VERSION_11_4 = "__MAC_11_4"
  50. const m_MAC_OS_VERSION_11_5 = "__MAC_11_5"
  51. const m_MAC_OS_VERSION_11_6 = "__MAC_11_6"
  52. const m_MAC_OS_VERSION_12_0 = "__MAC_12_0"
  53. const m_MAC_OS_VERSION_12_1 = "__MAC_12_1"
  54. const m_MAC_OS_VERSION_12_2 = "__MAC_12_2"
  55. const m_MAC_OS_VERSION_12_3 = "__MAC_12_3"
  56. const m_MAC_OS_VERSION_12_4 = "__MAC_12_4"
  57. const m_MAC_OS_VERSION_12_5 = "__MAC_12_5"
  58. const m_MAC_OS_VERSION_12_6 = "__MAC_12_6"
  59. const m_MAC_OS_VERSION_12_7 = "__MAC_12_7"
  60. const m_MAC_OS_VERSION_13_0 = "__MAC_13_0"
  61. const m_MAC_OS_VERSION_13_1 = "__MAC_13_1"
  62. const m_MAC_OS_VERSION_13_2 = "__MAC_13_2"
  63. const m_MAC_OS_VERSION_13_3 = "__MAC_13_3"
  64. const m_MAC_OS_VERSION_13_4 = "__MAC_13_4"
  65. const m_MAC_OS_VERSION_13_5 = "__MAC_13_5"
  66. const m_MAC_OS_VERSION_13_6 = "__MAC_13_6"
  67. const m_MAC_OS_VERSION_13_7 = "__MAC_13_7"
  68. const m_MAC_OS_VERSION_14_0 = "__MAC_14_0"
  69. const m_MAC_OS_VERSION_14_1 = "__MAC_14_1"
  70. const m_MAC_OS_VERSION_14_2 = "__MAC_14_2"
  71. const m_MAC_OS_VERSION_14_3 = "__MAC_14_3"
  72. const m_MAC_OS_VERSION_14_4 = "__MAC_14_4"
  73. const m_MAC_OS_VERSION_14_5 = "__MAC_14_5"
  74. const m_MAC_OS_VERSION_14_6 = "__MAC_14_6"
  75. const m_MAC_OS_VERSION_14_7 = "__MAC_14_7"
  76. const m_MAC_OS_VERSION_15_0 = "__MAC_15_0"
  77. const m_MAC_OS_VERSION_15_1 = "__MAC_15_1"
  78. const m_MAC_OS_VERSION_15_2 = "__MAC_15_2"
  79. const m_MAC_OS_VERSION_15_3 = "__MAC_15_3"
  80. const m_MAC_OS_VERSION_15_4 = "__MAC_15_4"
  81. const m_MAC_OS_X_VERSION_10_0 = "__MAC_10_0"
  82. const m_MAC_OS_X_VERSION_10_1 = "__MAC_10_1"
  83. const m_MAC_OS_X_VERSION_10_10 = "__MAC_10_10"
  84. const m_MAC_OS_X_VERSION_10_10_2 = "__MAC_10_10_2"
  85. const m_MAC_OS_X_VERSION_10_10_3 = "__MAC_10_10_3"
  86. const m_MAC_OS_X_VERSION_10_11 = "__MAC_10_11"
  87. const m_MAC_OS_X_VERSION_10_11_2 = "__MAC_10_11_2"
  88. const m_MAC_OS_X_VERSION_10_11_3 = "__MAC_10_11_3"
  89. const m_MAC_OS_X_VERSION_10_11_4 = "__MAC_10_11_4"
  90. const m_MAC_OS_X_VERSION_10_12 = "__MAC_10_12"
  91. const m_MAC_OS_X_VERSION_10_12_1 = "__MAC_10_12_1"
  92. const m_MAC_OS_X_VERSION_10_12_2 = "__MAC_10_12_2"
  93. const m_MAC_OS_X_VERSION_10_12_4 = "__MAC_10_12_4"
  94. const m_MAC_OS_X_VERSION_10_13 = "__MAC_10_13"
  95. const m_MAC_OS_X_VERSION_10_13_1 = "__MAC_10_13_1"
  96. const m_MAC_OS_X_VERSION_10_13_2 = "__MAC_10_13_2"
  97. const m_MAC_OS_X_VERSION_10_13_4 = "__MAC_10_13_4"
  98. const m_MAC_OS_X_VERSION_10_14 = "__MAC_10_14"
  99. const m_MAC_OS_X_VERSION_10_14_1 = "__MAC_10_14_1"
  100. const m_MAC_OS_X_VERSION_10_14_4 = "__MAC_10_14_4"
  101. const m_MAC_OS_X_VERSION_10_14_5 = "__MAC_10_14_5"
  102. const m_MAC_OS_X_VERSION_10_14_6 = "__MAC_10_14_6"
  103. const m_MAC_OS_X_VERSION_10_15 = "__MAC_10_15"
  104. const m_MAC_OS_X_VERSION_10_15_1 = "__MAC_10_15_1"
  105. const m_MAC_OS_X_VERSION_10_15_4 = "__MAC_10_15_4"
  106. const m_MAC_OS_X_VERSION_10_16 = "__MAC_10_16"
  107. const m_MAC_OS_X_VERSION_10_2 = "__MAC_10_2"
  108. const m_MAC_OS_X_VERSION_10_3 = "__MAC_10_3"
  109. const m_MAC_OS_X_VERSION_10_4 = "__MAC_10_4"
  110. const m_MAC_OS_X_VERSION_10_5 = "__MAC_10_5"
  111. const m_MAC_OS_X_VERSION_10_6 = "__MAC_10_6"
  112. const m_MAC_OS_X_VERSION_10_7 = "__MAC_10_7"
  113. const m_MAC_OS_X_VERSION_10_8 = "__MAC_10_8"
  114. const m_MAC_OS_X_VERSION_10_9 = "__MAC_10_9"
  115. const m_MD2_BLOCK_LENGTH = 16
  116. const m_MD2_DIGEST_LENGTH = 16
  117. const m_MD2_DIGEST_STRING_LENGTH = 33
  118. const m_NBBY = "__DARWIN_NBBY"
  119. const m_NDEBUG = 1
  120. const m_NFDBITS = "__DARWIN_NFDBITS"
  121. const m_NULL = "__DARWIN_NULL"
  122. const m_PACKAGE = "libmd"
  123. const m_PACKAGE_BUGREPORT = "libbsd@lists.freedesktop.org"
  124. const m_PACKAGE_NAME = "libmd"
  125. const m_PACKAGE_STRING = "libmd 1.1.0"
  126. const m_PACKAGE_TARNAME = "libmd"
  127. const m_PACKAGE_URL = ""
  128. const m_PACKAGE_VERSION = "1.1.0"
  129. const m_PDP_ENDIAN = "__DARWIN_PDP_ENDIAN"
  130. const m_PTRDIFF_MAX = "__PTRDIFF_MAX__"
  131. const m_SIZE_MAX = "__SIZE_MAX__"
  132. const m_STDC_HEADERS = 1
  133. const m_TARGET_IPHONE_SIMULATOR = 0
  134. const m_TARGET_OS_ARROW = 0
  135. const m_TARGET_OS_BRIDGE = 0
  136. const m_TARGET_OS_DRIVERKIT = 0
  137. const m_TARGET_OS_EMBEDDED = 0
  138. const m_TARGET_OS_IOS = 0
  139. const m_TARGET_OS_IOSMAC = 0
  140. const m_TARGET_OS_IPHONE = 0
  141. const m_TARGET_OS_LINUX = 0
  142. const m_TARGET_OS_MAC = 1
  143. const m_TARGET_OS_MACCATALYST = 0
  144. const m_TARGET_OS_NANO = 0
  145. const m_TARGET_OS_OSX = 1
  146. const m_TARGET_OS_SIMULATOR = 0
  147. const m_TARGET_OS_TV = 0
  148. const m_TARGET_OS_UIKITFORMAC = 0
  149. const m_TARGET_OS_UNIX = 0
  150. const m_TARGET_OS_VISION = 0
  151. const m_TARGET_OS_WATCH = 0
  152. const m_TARGET_OS_WIN32 = 0
  153. const m_TARGET_OS_WINDOWS = 0
  154. const m_TARGET_OS_XR = 0
  155. const m_UINTMAX_MAX = "__UINTMAX_MAX__"
  156. const m_UINTPTR_MAX = "__UINTPTR_MAX__"
  157. const m_UINT_FAST16_MAX = "__UINT_LEAST16_MAX"
  158. const m_UINT_FAST32_MAX = "__UINT_LEAST32_MAX"
  159. const m_UINT_FAST64_MAX = "__UINT_LEAST64_MAX"
  160. const m_UINT_FAST8_MAX = "__UINT_LEAST8_MAX"
  161. const m_UINT_LEAST16_MAX = "__UINT_LEAST16_MAX"
  162. const m_UINT_LEAST32_MAX = "__UINT_LEAST32_MAX"
  163. const m_UINT_LEAST64_MAX = "__UINT_LEAST64_MAX"
  164. const m_UINT_LEAST8_MAX = "__UINT_LEAST8_MAX"
  165. const m_VERSION = "1.1.0"
  166. const m_WCHAR_MAX = "__WCHAR_MAX__"
  167. const m__ALL_SOURCE = 1
  168. const m__DARWIN_C_SOURCE = 1
  169. const m__DARWIN_FEATURE_64_BIT_INODE = 1
  170. const m__DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE = 1
  171. const m__DARWIN_FEATURE_UNIX_CONFORMANCE = 3
  172. const m__FORTIFY_SOURCE = 2
  173. const m__GNU_SOURCE = 1
  174. const m__HPUX_ALT_XOPEN_SOCKET_API = 1
  175. const m__LP64 = 1
  176. const m__NETBSD_SOURCE = 1
  177. const m__OPENBSD_SOURCE = 1
  178. const m__POSIX_PTHREAD_SEMANTICS = 1
  179. const m__QUAD_HIGHWORD = 1
  180. const m__QUAD_LOWWORD = 0
  181. const m__TANDEM_SOURCE = 1
  182. const m___API_TO_BE_DEPRECATED = 100000
  183. const m___API_TO_BE_DEPRECATED_DRIVERKIT = 100000
  184. const m___API_TO_BE_DEPRECATED_IOS = 100000
  185. const m___API_TO_BE_DEPRECATED_IOSAPPLICATIONEXTENSION = 100000
  186. const m___API_TO_BE_DEPRECATED_KERNELKIT = 100000
  187. const m___API_TO_BE_DEPRECATED_MACCATALYST = 100000
  188. const m___API_TO_BE_DEPRECATED_MACCATALYSTAPPLICATIONEXTENSION = 100000
  189. const m___API_TO_BE_DEPRECATED_MACOS = 100000
  190. const m___API_TO_BE_DEPRECATED_MACOSAPPLICATIONEXTENSION = 100000
  191. const m___API_TO_BE_DEPRECATED_TVOS = 100000
  192. const m___API_TO_BE_DEPRECATED_TVOSAPPLICATIONEXTENSION = 100000
  193. const m___API_TO_BE_DEPRECATED_VISIONOS = 100000
  194. const m___API_TO_BE_DEPRECATED_VISIONOSAPPLICATIONEXTENSION = 100000
  195. const m___API_TO_BE_DEPRECATED_WATCHOS = 100000
  196. const m___API_TO_BE_DEPRECATED_WATCHOSAPPLICATIONEXTENSION = 100000
  197. const m___APPLE_CC__ = 6000
  198. const m___APPLE__ = 1
  199. const m___ATOMIC_ACQUIRE = 2
  200. const m___ATOMIC_ACQ_REL = 4
  201. const m___ATOMIC_CONSUME = 1
  202. const m___ATOMIC_RELAXED = 0
  203. const m___ATOMIC_RELEASE = 3
  204. const m___ATOMIC_SEQ_CST = 5
  205. const m___AVAILABILITY_FILE = "AvailabilityVersions.h"
  206. const m___AVAILABILITY_VERSIONS_VERSION_HASH = 93585900
  207. const m___AVAILABILITY_VERSIONS_VERSION_STRING = "Local"
  208. const m___BIGGEST_ALIGNMENT__ = 16
  209. const m___BITINT_MAXWIDTH__ = 8388608
  210. const m___BLOCKS__ = 1
  211. const m___BOOL_WIDTH__ = 8
  212. const m___BRIDGEOS_2_0 = 20000
  213. const m___BRIDGEOS_3_0 = 30000
  214. const m___BRIDGEOS_3_1 = 30100
  215. const m___BRIDGEOS_3_4 = 30400
  216. const m___BRIDGEOS_4_0 = 40000
  217. const m___BRIDGEOS_4_1 = 40100
  218. const m___BRIDGEOS_5_0 = 50000
  219. const m___BRIDGEOS_5_1 = 50100
  220. const m___BRIDGEOS_5_3 = 50300
  221. const m___BRIDGEOS_6_0 = 60000
  222. const m___BRIDGEOS_6_2 = 60200
  223. const m___BRIDGEOS_6_4 = 60400
  224. const m___BRIDGEOS_6_5 = 60500
  225. const m___BRIDGEOS_6_6 = 60600
  226. const m___BRIDGEOS_7_0 = 70000
  227. const m___BRIDGEOS_7_1 = 70100
  228. const m___BRIDGEOS_7_2 = 70200
  229. const m___BRIDGEOS_7_3 = 70300
  230. const m___BRIDGEOS_7_4 = 70400
  231. const m___BRIDGEOS_7_6 = 70600
  232. const m___BRIDGEOS_8_0 = 80000
  233. const m___BRIDGEOS_8_1 = 80100
  234. const m___BRIDGEOS_8_2 = 80200
  235. const m___BRIDGEOS_8_3 = 80300
  236. const m___BRIDGEOS_8_4 = 80400
  237. const m___BRIDGEOS_8_5 = 80500
  238. const m___BRIDGEOS_8_6 = 80600
  239. const m___BRIDGEOS_9_0 = 90000
  240. const m___BRIDGEOS_9_1 = 90100
  241. const m___BRIDGEOS_9_2 = 90200
  242. const m___BRIDGEOS_9_3 = 90300
  243. const m___BRIDGEOS_9_4 = 90400
  244. const m___BYTE_ORDER__ = "__ORDER_LITTLE_ENDIAN__"
  245. const m___CCGO__ = 1
  246. const m___CHAR_BIT__ = 8
  247. const m___CLANG_ATOMIC_BOOL_LOCK_FREE = 2
  248. const m___CLANG_ATOMIC_CHAR16_T_LOCK_FREE = 2
  249. const m___CLANG_ATOMIC_CHAR32_T_LOCK_FREE = 2
  250. const m___CLANG_ATOMIC_CHAR_LOCK_FREE = 2
  251. const m___CLANG_ATOMIC_INT_LOCK_FREE = 2
  252. const m___CLANG_ATOMIC_LLONG_LOCK_FREE = 2
  253. const m___CLANG_ATOMIC_LONG_LOCK_FREE = 2
  254. const m___CLANG_ATOMIC_POINTER_LOCK_FREE = 2
  255. const m___CLANG_ATOMIC_SHORT_LOCK_FREE = 2
  256. const m___CLANG_ATOMIC_WCHAR_T_LOCK_FREE = 2
  257. const m___CONSTANT_CFSTRINGS__ = 1
  258. const m___DARWIN_64_BIT_INO_T = 1
  259. const m___DARWIN_BIG_ENDIAN = 4321
  260. const m___DARWIN_BYTE_ORDER = "__DARWIN_LITTLE_ENDIAN"
  261. const m___DARWIN_C_ANSI = 010000
  262. const m___DARWIN_C_FULL = 900000
  263. const m___DARWIN_C_LEVEL = "__DARWIN_C_FULL"
  264. const m___DARWIN_FD_SETSIZE = 1024
  265. const m___DARWIN_LITTLE_ENDIAN = 1234
  266. const m___DARWIN_NBBY = 8
  267. const m___DARWIN_NON_CANCELABLE = 0
  268. const m___DARWIN_NO_LONG_LONG = 0
  269. const m___DARWIN_ONLY_64_BIT_INO_T = 0
  270. const m___DARWIN_ONLY_UNIX_CONFORMANCE = 1
  271. const m___DARWIN_ONLY_VERS_1050 = 0
  272. const m___DARWIN_PDP_ENDIAN = 3412
  273. const m___DARWIN_SUF_1050 = "$1050"
  274. const m___DARWIN_SUF_64_BIT_INO_T = "$INODE64"
  275. const m___DARWIN_SUF_EXTSN = "$DARWIN_EXTSN"
  276. const m___DARWIN_UNIX03 = 1
  277. const m___DARWIN_VERS_1050 = 1
  278. const m___DARWIN_WCHAR_MAX = "__WCHAR_MAX__"
  279. const m___DBL_DECIMAL_DIG__ = 17
  280. const m___DBL_DENORM_MIN__ = 4.9406564584124654e-324
  281. const m___DBL_DIG__ = 15
  282. const m___DBL_EPSILON__ = 2.2204460492503131e-16
  283. const m___DBL_HAS_DENORM__ = 1
  284. const m___DBL_HAS_INFINITY__ = 1
  285. const m___DBL_HAS_QUIET_NAN__ = 1
  286. const m___DBL_MANT_DIG__ = 53
  287. const m___DBL_MAX_10_EXP__ = 308
  288. const m___DBL_MAX_EXP__ = 1024
  289. const m___DBL_MAX__ = 1.7976931348623157e+308
  290. const m___DBL_MIN__ = 2.2250738585072014e-308
  291. const m___DBL_NORM_MAX__ = 1.7976931348623157e+308
  292. const m___DECIMAL_DIG__ = "__LDBL_DECIMAL_DIG__"
  293. const m___DRIVERKIT_19_0 = 190000
  294. const m___DRIVERKIT_20_0 = 200000
  295. const m___DRIVERKIT_21_0 = 210000
  296. const m___DRIVERKIT_22_0 = 220000
  297. const m___DRIVERKIT_22_4 = 220400
  298. const m___DRIVERKIT_22_5 = 220500
  299. const m___DRIVERKIT_22_6 = 220600
  300. const m___DRIVERKIT_23_0 = 230000
  301. const m___DRIVERKIT_23_1 = 230100
  302. const m___DRIVERKIT_23_2 = 230200
  303. const m___DRIVERKIT_23_3 = 230300
  304. const m___DRIVERKIT_23_4 = 230400
  305. const m___DRIVERKIT_23_5 = 230500
  306. const m___DRIVERKIT_23_6 = 230600
  307. const m___DRIVERKIT_24_0 = 240000
  308. const m___DRIVERKIT_24_1 = 240100
  309. const m___DRIVERKIT_24_2 = 240200
  310. const m___DRIVERKIT_24_3 = 240300
  311. const m___DRIVERKIT_24_4 = 240400
  312. const m___DYNAMIC__ = 1
  313. const m___ENABLE_LEGACY_MAC_AVAILABILITY = 1
  314. const m___ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ = 150000
  315. const m___ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ = 150000
  316. const m___EXTENSIONS__ = 1
  317. const m___FINITE_MATH_ONLY__ = 0
  318. const m___FLT16_DECIMAL_DIG__ = 5
  319. const m___FLT16_DENORM_MIN__ = 5.9604644775390625e-8
  320. const m___FLT16_DIG__ = 3
  321. const m___FLT16_EPSILON__ = 9.765625e-4
  322. const m___FLT16_HAS_DENORM__ = 1
  323. const m___FLT16_HAS_INFINITY__ = 1
  324. const m___FLT16_HAS_QUIET_NAN__ = 1
  325. const m___FLT16_MANT_DIG__ = 11
  326. const m___FLT16_MAX_10_EXP__ = 4
  327. const m___FLT16_MAX_EXP__ = 16
  328. const m___FLT16_MAX__ = 6.5504e+4
  329. const m___FLT16_MIN__ = 6.103515625e-5
  330. const m___FLT16_NORM_MAX__ = 6.5504e+4
  331. const m___FLT_DECIMAL_DIG__ = 9
  332. const m___FLT_DENORM_MIN__ = 1.40129846e-45
  333. const m___FLT_DIG__ = 6
  334. const m___FLT_EPSILON__ = 1.19209290e-7
  335. const m___FLT_HAS_DENORM__ = 1
  336. const m___FLT_HAS_INFINITY__ = 1
  337. const m___FLT_HAS_QUIET_NAN__ = 1
  338. const m___FLT_MANT_DIG__ = 24
  339. const m___FLT_MAX_10_EXP__ = 38
  340. const m___FLT_MAX_EXP__ = 128
  341. const m___FLT_MAX__ = 3.40282347e+38
  342. const m___FLT_MIN__ = 1.17549435e-38
  343. const m___FLT_NORM_MAX__ = 3.40282347e+38
  344. const m___FLT_RADIX__ = 2
  345. const m___FPCLASS_NEGINF = 0x0004
  346. const m___FPCLASS_NEGNORMAL = 0x0008
  347. const m___FPCLASS_NEGSUBNORMAL = 0x0010
  348. const m___FPCLASS_NEGZERO = 0x0020
  349. const m___FPCLASS_POSINF = 0x0200
  350. const m___FPCLASS_POSNORMAL = 0x0100
  351. const m___FPCLASS_POSSUBNORMAL = 0x0080
  352. const m___FPCLASS_POSZERO = 0x0040
  353. const m___FPCLASS_QNAN = 0x0002
  354. const m___FPCLASS_SNAN = 0x0001
  355. const m___FUNCTION__ = "__func__"
  356. const m___FXSR__ = 1
  357. const m___GCC_ASM_FLAG_OUTPUTS__ = 1
  358. const m___GCC_ATOMIC_BOOL_LOCK_FREE = 2
  359. const m___GCC_ATOMIC_CHAR16_T_LOCK_FREE = 2
  360. const m___GCC_ATOMIC_CHAR32_T_LOCK_FREE = 2
  361. const m___GCC_ATOMIC_CHAR_LOCK_FREE = 2
  362. const m___GCC_ATOMIC_INT_LOCK_FREE = 2
  363. const m___GCC_ATOMIC_LLONG_LOCK_FREE = 2
  364. const m___GCC_ATOMIC_LONG_LOCK_FREE = 2
  365. const m___GCC_ATOMIC_POINTER_LOCK_FREE = 2
  366. const m___GCC_ATOMIC_SHORT_LOCK_FREE = 2
  367. const m___GCC_ATOMIC_TEST_AND_SET_TRUEVAL = 1
  368. const m___GCC_ATOMIC_WCHAR_T_LOCK_FREE = 2
  369. const m___GCC_CONSTRUCTIVE_SIZE = 64
  370. const m___GCC_DESTRUCTIVE_SIZE = 64
  371. const m___GCC_HAVE_DWARF2_CFI_ASM = 1
  372. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 = 1
  373. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 = 1
  374. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 = 1
  375. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 = 1
  376. const m___GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 = 1
  377. const m___GNUC_MINOR__ = 2
  378. const m___GNUC_PATCHLEVEL__ = 1
  379. const m___GNUC_STDC_INLINE__ = 1
  380. const m___GNUC__ = 4
  381. const m___GXX_ABI_VERSION = 1002
  382. const m___INT16_FMTd__ = "hd"
  383. const m___INT16_FMTi__ = "hi"
  384. const m___INT16_MAX__ = 32767
  385. const m___INT16_TYPE__ = "short"
  386. const m___INT32_FMTd__ = "d"
  387. const m___INT32_FMTi__ = "i"
  388. const m___INT32_MAX__ = 2147483647
  389. const m___INT32_TYPE__ = "int"
  390. const m___INT64_C_SUFFIX__ = "LL"
  391. const m___INT64_FMTd__ = "lld"
  392. const m___INT64_FMTi__ = "lli"
  393. const m___INT64_MAX__ = 9223372036854775807
  394. const m___INT8_FMTd__ = "hhd"
  395. const m___INT8_FMTi__ = "hhi"
  396. const m___INT8_MAX__ = 127
  397. const m___INTMAX_C_SUFFIX__ = "L"
  398. const m___INTMAX_FMTd__ = "ld"
  399. const m___INTMAX_FMTi__ = "li"
  400. const m___INTMAX_MAX__ = 9223372036854775807
  401. const m___INTMAX_WIDTH__ = 64
  402. const m___INTPTR_FMTd__ = "ld"
  403. const m___INTPTR_FMTi__ = "li"
  404. const m___INTPTR_MAX__ = 9223372036854775807
  405. const m___INTPTR_WIDTH__ = 64
  406. const m___INT_FAST16_FMTd__ = "hd"
  407. const m___INT_FAST16_FMTi__ = "hi"
  408. const m___INT_FAST16_MAX__ = 32767
  409. const m___INT_FAST16_TYPE__ = "short"
  410. const m___INT_FAST16_WIDTH__ = 16
  411. const m___INT_FAST32_FMTd__ = "d"
  412. const m___INT_FAST32_FMTi__ = "i"
  413. const m___INT_FAST32_MAX__ = 2147483647
  414. const m___INT_FAST32_TYPE__ = "int"
  415. const m___INT_FAST32_WIDTH__ = 32
  416. const m___INT_FAST64_FMTd__ = "lld"
  417. const m___INT_FAST64_FMTi__ = "lli"
  418. const m___INT_FAST64_MAX__ = 9223372036854775807
  419. const m___INT_FAST64_WIDTH__ = 64
  420. const m___INT_FAST8_FMTd__ = "hhd"
  421. const m___INT_FAST8_FMTi__ = "hhi"
  422. const m___INT_FAST8_MAX__ = 127
  423. const m___INT_FAST8_WIDTH__ = 8
  424. const m___INT_LEAST16_FMTd__ = "hd"
  425. const m___INT_LEAST16_FMTi__ = "hi"
  426. const m___INT_LEAST16_MAX__ = 32767
  427. const m___INT_LEAST16_TYPE__ = "short"
  428. const m___INT_LEAST16_WIDTH__ = 16
  429. const m___INT_LEAST32_FMTd__ = "d"
  430. const m___INT_LEAST32_FMTi__ = "i"
  431. const m___INT_LEAST32_MAX__ = 2147483647
  432. const m___INT_LEAST32_TYPE__ = "int"
  433. const m___INT_LEAST32_WIDTH__ = 32
  434. const m___INT_LEAST64_FMTd__ = "lld"
  435. const m___INT_LEAST64_FMTi__ = "lli"
  436. const m___INT_LEAST64_MAX = "INT64_MAX"
  437. const m___INT_LEAST64_MAX__ = 9223372036854775807
  438. const m___INT_LEAST64_MIN = "INT64_MIN"
  439. const m___INT_LEAST64_WIDTH__ = 64
  440. const m___INT_LEAST8_FMTd__ = "hhd"
  441. const m___INT_LEAST8_FMTi__ = "hhi"
  442. const m___INT_LEAST8_MAX__ = 127
  443. const m___INT_LEAST8_WIDTH__ = 8
  444. const m___INT_MAX__ = 2147483647
  445. const m___INT_WIDTH__ = 32
  446. const m___IPHONE_10_0 = 100000
  447. const m___IPHONE_10_1 = 100100
  448. const m___IPHONE_10_2 = 100200
  449. const m___IPHONE_10_3 = 100300
  450. const m___IPHONE_11_0 = 110000
  451. const m___IPHONE_11_1 = 110100
  452. const m___IPHONE_11_2 = 110200
  453. const m___IPHONE_11_3 = 110300
  454. const m___IPHONE_11_4 = 110400
  455. const m___IPHONE_12_0 = 120000
  456. const m___IPHONE_12_1 = 120100
  457. const m___IPHONE_12_2 = 120200
  458. const m___IPHONE_12_3 = 120300
  459. const m___IPHONE_12_4 = 120400
  460. const m___IPHONE_13_0 = 130000
  461. const m___IPHONE_13_1 = 130100
  462. const m___IPHONE_13_2 = 130200
  463. const m___IPHONE_13_3 = 130300
  464. const m___IPHONE_13_4 = 130400
  465. const m___IPHONE_13_5 = 130500
  466. const m___IPHONE_13_6 = 130600
  467. const m___IPHONE_13_7 = 130700
  468. const m___IPHONE_14_0 = 140000
  469. const m___IPHONE_14_1 = 140100
  470. const m___IPHONE_14_2 = 140200
  471. const m___IPHONE_14_3 = 140300
  472. const m___IPHONE_14_4 = 140400
  473. const m___IPHONE_14_5 = 140500
  474. const m___IPHONE_14_6 = 140600
  475. const m___IPHONE_14_7 = 140700
  476. const m___IPHONE_14_8 = 140800
  477. const m___IPHONE_15_0 = 150000
  478. const m___IPHONE_15_1 = 150100
  479. const m___IPHONE_15_2 = 150200
  480. const m___IPHONE_15_3 = 150300
  481. const m___IPHONE_15_4 = 150400
  482. const m___IPHONE_15_5 = 150500
  483. const m___IPHONE_15_6 = 150600
  484. const m___IPHONE_15_7 = 150700
  485. const m___IPHONE_15_8 = 150800
  486. const m___IPHONE_16_0 = 160000
  487. const m___IPHONE_16_1 = 160100
  488. const m___IPHONE_16_2 = 160200
  489. const m___IPHONE_16_3 = 160300
  490. const m___IPHONE_16_4 = 160400
  491. const m___IPHONE_16_5 = 160500
  492. const m___IPHONE_16_6 = 160600
  493. const m___IPHONE_16_7 = 160700
  494. const m___IPHONE_17_0 = 170000
  495. const m___IPHONE_17_1 = 170100
  496. const m___IPHONE_17_2 = 170200
  497. const m___IPHONE_17_3 = 170300
  498. const m___IPHONE_17_4 = 170400
  499. const m___IPHONE_17_5 = 170500
  500. const m___IPHONE_17_6 = 170600
  501. const m___IPHONE_17_7 = 170700
  502. const m___IPHONE_18_0 = 180000
  503. const m___IPHONE_18_1 = 180100
  504. const m___IPHONE_18_2 = 180200
  505. const m___IPHONE_18_3 = 180300
  506. const m___IPHONE_18_4 = 180400
  507. const m___IPHONE_2_0 = 20000
  508. const m___IPHONE_2_1 = 20100
  509. const m___IPHONE_2_2 = 20200
  510. const m___IPHONE_3_0 = 30000
  511. const m___IPHONE_3_1 = 30100
  512. const m___IPHONE_3_2 = 30200
  513. const m___IPHONE_4_0 = 40000
  514. const m___IPHONE_4_1 = 40100
  515. const m___IPHONE_4_2 = 40200
  516. const m___IPHONE_4_3 = 40300
  517. const m___IPHONE_5_0 = 50000
  518. const m___IPHONE_5_1 = 50100
  519. const m___IPHONE_6_0 = 60000
  520. const m___IPHONE_6_1 = 60100
  521. const m___IPHONE_7_0 = 70000
  522. const m___IPHONE_7_1 = 70100
  523. const m___IPHONE_8_0 = 80000
  524. const m___IPHONE_8_1 = 80100
  525. const m___IPHONE_8_2 = 80200
  526. const m___IPHONE_8_3 = 80300
  527. const m___IPHONE_8_4 = 80400
  528. const m___IPHONE_9_0 = 90000
  529. const m___IPHONE_9_1 = 90100
  530. const m___IPHONE_9_2 = 90200
  531. const m___IPHONE_9_3 = 90300
  532. const m___LAHF_SAHF__ = 1
  533. const m___LDBL_DECIMAL_DIG__ = 17
  534. const m___LDBL_DENORM_MIN__ = 4.9406564584124654e-324
  535. const m___LDBL_DIG__ = 15
  536. const m___LDBL_EPSILON__ = 2.2204460492503131e-16
  537. const m___LDBL_HAS_DENORM__ = 1
  538. const m___LDBL_HAS_INFINITY__ = 1
  539. const m___LDBL_HAS_QUIET_NAN__ = 1
  540. const m___LDBL_MANT_DIG__ = 53
  541. const m___LDBL_MAX_10_EXP__ = 308
  542. const m___LDBL_MAX_EXP__ = 1024
  543. const m___LDBL_MAX__ = 1.7976931348623157e+308
  544. const m___LDBL_MIN__ = 2.2250738585072014e-308
  545. const m___LDBL_NORM_MAX__ = 1.7976931348623157e+308
  546. const m___LITTLE_ENDIAN__ = 1
  547. const m___LLONG_WIDTH__ = 64
  548. const m___LONG_LONG_MAX__ = 9223372036854775807
  549. const m___LONG_MAX__ = 9223372036854775807
  550. const m___LONG_WIDTH__ = 64
  551. const m___LP64__ = 1
  552. const m___MACH__ = 1
  553. const m___MAC_10_0 = 1000
  554. const m___MAC_10_1 = 1010
  555. const m___MAC_10_10 = 101000
  556. const m___MAC_10_10_2 = 101002
  557. const m___MAC_10_10_3 = 101003
  558. const m___MAC_10_11 = 101100
  559. const m___MAC_10_11_2 = 101102
  560. const m___MAC_10_11_3 = 101103
  561. const m___MAC_10_11_4 = 101104
  562. const m___MAC_10_12 = 101200
  563. const m___MAC_10_12_1 = 101201
  564. const m___MAC_10_12_2 = 101202
  565. const m___MAC_10_12_4 = 101204
  566. const m___MAC_10_13 = 101300
  567. const m___MAC_10_13_1 = 101301
  568. const m___MAC_10_13_2 = 101302
  569. const m___MAC_10_13_4 = 101304
  570. const m___MAC_10_14 = 101400
  571. const m___MAC_10_14_1 = 101401
  572. const m___MAC_10_14_4 = 101404
  573. const m___MAC_10_14_5 = 101405
  574. const m___MAC_10_14_6 = 101406
  575. const m___MAC_10_15 = 101500
  576. const m___MAC_10_15_1 = 101501
  577. const m___MAC_10_15_4 = 101504
  578. const m___MAC_10_16 = 101600
  579. const m___MAC_10_2 = 1020
  580. const m___MAC_10_3 = 1030
  581. const m___MAC_10_4 = 1040
  582. const m___MAC_10_5 = 1050
  583. const m___MAC_10_6 = 1060
  584. const m___MAC_10_7 = 1070
  585. const m___MAC_10_8 = 1080
  586. const m___MAC_10_9 = 1090
  587. const m___MAC_11_0 = 110000
  588. const m___MAC_11_1 = 110100
  589. const m___MAC_11_3 = 110300
  590. const m___MAC_11_4 = 110400
  591. const m___MAC_11_5 = 110500
  592. const m___MAC_11_6 = 110600
  593. const m___MAC_12_0 = 120000
  594. const m___MAC_12_1 = 120100
  595. const m___MAC_12_2 = 120200
  596. const m___MAC_12_3 = 120300
  597. const m___MAC_12_4 = 120400
  598. const m___MAC_12_5 = 120500
  599. const m___MAC_12_6 = 120600
  600. const m___MAC_12_7 = 120700
  601. const m___MAC_13_0 = 130000
  602. const m___MAC_13_1 = 130100
  603. const m___MAC_13_2 = 130200
  604. const m___MAC_13_3 = 130300
  605. const m___MAC_13_4 = 130400
  606. const m___MAC_13_5 = 130500
  607. const m___MAC_13_6 = 130600
  608. const m___MAC_13_7 = 130700
  609. const m___MAC_14_0 = 140000
  610. const m___MAC_14_1 = 140100
  611. const m___MAC_14_2 = 140200
  612. const m___MAC_14_3 = 140300
  613. const m___MAC_14_4 = 140400
  614. const m___MAC_14_5 = 140500
  615. const m___MAC_14_6 = 140600
  616. const m___MAC_14_7 = 140700
  617. const m___MAC_15_0 = 150000
  618. const m___MAC_15_1 = 150100
  619. const m___MAC_15_2 = 150200
  620. const m___MAC_15_3 = 150300
  621. const m___MAC_15_4 = 150400
  622. const m___MAC_OS_X_VERSION_MAX_ALLOWED = "__MAC_15_4"
  623. const m___MAC_OS_X_VERSION_MIN_REQUIRED = "__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__"
  624. const m___MEMORY_SCOPE_DEVICE = 1
  625. const m___MEMORY_SCOPE_SINGLE = 4
  626. const m___MEMORY_SCOPE_SYSTEM = 0
  627. const m___MEMORY_SCOPE_WRKGRP = 2
  628. const m___MEMORY_SCOPE_WVFRNT = 3
  629. const m___MMX__ = 1
  630. const m___NO_INLINE__ = 1
  631. const m___NO_MATH_ERRNO__ = 1
  632. const m___NO_MATH_INLINES = 1
  633. const m___OBJC_BOOL_IS_BOOL = 0
  634. const m___OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES = 3
  635. const m___OPENCL_MEMORY_SCOPE_DEVICE = 2
  636. const m___OPENCL_MEMORY_SCOPE_SUB_GROUP = 4
  637. const m___OPENCL_MEMORY_SCOPE_WORK_GROUP = 1
  638. const m___OPENCL_MEMORY_SCOPE_WORK_ITEM = 0
  639. const m___ORDER_BIG_ENDIAN__ = 4321
  640. const m___ORDER_LITTLE_ENDIAN__ = 1234
  641. const m___ORDER_PDP_ENDIAN__ = 3412
  642. const m___PIC__ = 2
  643. const m___POINTER_WIDTH__ = 64
  644. const m___PRAGMA_REDEFINE_EXTNAME = 1
  645. const m___PRETTY_FUNCTION__ = "__func__"
  646. const m___PTHREAD_ATTR_SIZE__ = 56
  647. const m___PTHREAD_CONDATTR_SIZE__ = 8
  648. const m___PTHREAD_COND_SIZE__ = 40
  649. const m___PTHREAD_MUTEXATTR_SIZE__ = 8
  650. const m___PTHREAD_MUTEX_SIZE__ = 56
  651. const m___PTHREAD_ONCE_SIZE__ = 8
  652. const m___PTHREAD_RWLOCKATTR_SIZE__ = 16
  653. const m___PTHREAD_RWLOCK_SIZE__ = 192
  654. const m___PTHREAD_SIZE__ = 8176
  655. const m___PTRDIFF_FMTd__ = "ld"
  656. const m___PTRDIFF_FMTi__ = "li"
  657. const m___PTRDIFF_MAX__ = 9223372036854775807
  658. const m___PTRDIFF_WIDTH__ = 64
  659. const m___SCHAR_MAX__ = 127
  660. const m___SEG_FS = 1
  661. const m___SEG_GS = 1
  662. const m___SHRT_MAX__ = 32767
  663. const m___SHRT_WIDTH__ = 16
  664. const m___SIG_ATOMIC_MAX__ = 2147483647
  665. const m___SIG_ATOMIC_WIDTH__ = 32
  666. const m___SIZEOF_DOUBLE__ = 8
  667. const m___SIZEOF_FLOAT__ = 4
  668. const m___SIZEOF_INT128__ = 16
  669. const m___SIZEOF_INT__ = 4
  670. const m___SIZEOF_LONG_DOUBLE__ = 8
  671. const m___SIZEOF_LONG_LONG__ = 8
  672. const m___SIZEOF_LONG__ = 8
  673. const m___SIZEOF_POINTER__ = 8
  674. const m___SIZEOF_PTRDIFF_T__ = 8
  675. const m___SIZEOF_SHORT__ = 2
  676. const m___SIZEOF_SIZE_T__ = 8
  677. const m___SIZEOF_WCHAR_T__ = 4
  678. const m___SIZEOF_WINT_T__ = 4
  679. const m___SIZE_FMTX__ = "lX"
  680. const m___SIZE_FMTo__ = "lo"
  681. const m___SIZE_FMTu__ = "lu"
  682. const m___SIZE_FMTx__ = "lx"
  683. const m___SIZE_MAX__ = 18446744073709551615
  684. const m___SIZE_WIDTH__ = 64
  685. const m___SSE2_MATH__ = 1
  686. const m___SSE2__ = 1
  687. const m___SSE3__ = 1
  688. const m___SSE4_1__ = 1
  689. const m___SSE_MATH__ = 1
  690. const m___SSE__ = 1
  691. const m___SSP__ = 1
  692. const m___SSSE3__ = 1
  693. const m___STDC_EMBED_EMPTY__ = 2
  694. const m___STDC_EMBED_FOUND__ = 1
  695. const m___STDC_EMBED_NOT_FOUND__ = 0
  696. const m___STDC_HOSTED__ = 1
  697. const m___STDC_NO_THREADS__ = 1
  698. const m___STDC_UTF_16__ = 1
  699. const m___STDC_UTF_32__ = 1
  700. const m___STDC_VERSION__ = 201710
  701. const m___STDC_WANT_IEC_60559_ATTRIBS_EXT__ = 1
  702. const m___STDC_WANT_IEC_60559_BFP_EXT__ = 1
  703. const m___STDC_WANT_IEC_60559_DFP_EXT__ = 1
  704. const m___STDC_WANT_IEC_60559_FUNCS_EXT__ = 1
  705. const m___STDC_WANT_IEC_60559_TYPES_EXT__ = 1
  706. const m___STDC_WANT_LIB_EXT1__ = 1
  707. const m___STDC_WANT_LIB_EXT2__ = 1
  708. const m___STDC_WANT_MATH_SPEC_FUNCS__ = 1
  709. const m___STDC__ = 1
  710. const m___TVOS_10_0 = 100000
  711. const m___TVOS_10_0_1 = 100001
  712. const m___TVOS_10_1 = 100100
  713. const m___TVOS_10_2 = 100200
  714. const m___TVOS_11_0 = 110000
  715. const m___TVOS_11_1 = 110100
  716. const m___TVOS_11_2 = 110200
  717. const m___TVOS_11_3 = 110300
  718. const m___TVOS_11_4 = 110400
  719. const m___TVOS_12_0 = 120000
  720. const m___TVOS_12_1 = 120100
  721. const m___TVOS_12_2 = 120200
  722. const m___TVOS_12_3 = 120300
  723. const m___TVOS_12_4 = 120400
  724. const m___TVOS_13_0 = 130000
  725. const m___TVOS_13_2 = 130200
  726. const m___TVOS_13_3 = 130300
  727. const m___TVOS_13_4 = 130400
  728. const m___TVOS_14_0 = 140000
  729. const m___TVOS_14_1 = 140100
  730. const m___TVOS_14_2 = 140200
  731. const m___TVOS_14_3 = 140300
  732. const m___TVOS_14_5 = 140500
  733. const m___TVOS_14_6 = 140600
  734. const m___TVOS_14_7 = 140700
  735. const m___TVOS_15_0 = 150000
  736. const m___TVOS_15_1 = 150100
  737. const m___TVOS_15_2 = 150200
  738. const m___TVOS_15_3 = 150300
  739. const m___TVOS_15_4 = 150400
  740. const m___TVOS_15_5 = 150500
  741. const m___TVOS_15_6 = 150600
  742. const m___TVOS_16_0 = 160000
  743. const m___TVOS_16_1 = 160100
  744. const m___TVOS_16_2 = 160200
  745. const m___TVOS_16_3 = 160300
  746. const m___TVOS_16_4 = 160400
  747. const m___TVOS_16_5 = 160500
  748. const m___TVOS_16_6 = 160600
  749. const m___TVOS_17_0 = 170000
  750. const m___TVOS_17_1 = 170100
  751. const m___TVOS_17_2 = 170200
  752. const m___TVOS_17_3 = 170300
  753. const m___TVOS_17_4 = 170400
  754. const m___TVOS_17_5 = 170500
  755. const m___TVOS_17_6 = 170600
  756. const m___TVOS_18_0 = 180000
  757. const m___TVOS_18_1 = 180100
  758. const m___TVOS_18_2 = 180200
  759. const m___TVOS_18_3 = 180300
  760. const m___TVOS_18_4 = 180400
  761. const m___TVOS_9_0 = 90000
  762. const m___TVOS_9_1 = 90100
  763. const m___TVOS_9_2 = 90200
  764. const m___UINT16_FMTX__ = "hX"
  765. const m___UINT16_FMTo__ = "ho"
  766. const m___UINT16_FMTu__ = "hu"
  767. const m___UINT16_FMTx__ = "hx"
  768. const m___UINT16_MAX__ = 65535
  769. const m___UINT32_C_SUFFIX__ = "U"
  770. const m___UINT32_FMTX__ = "X"
  771. const m___UINT32_FMTo__ = "o"
  772. const m___UINT32_FMTu__ = "u"
  773. const m___UINT32_FMTx__ = "x"
  774. const m___UINT32_MAX__ = 4294967295
  775. const m___UINT64_C_SUFFIX__ = "ULL"
  776. const m___UINT64_FMTX__ = "llX"
  777. const m___UINT64_FMTo__ = "llo"
  778. const m___UINT64_FMTu__ = "llu"
  779. const m___UINT64_FMTx__ = "llx"
  780. const m___UINT64_MAX__ = "18446744073709551615U"
  781. const m___UINT8_FMTX__ = "hhX"
  782. const m___UINT8_FMTo__ = "hho"
  783. const m___UINT8_FMTu__ = "hhu"
  784. const m___UINT8_FMTx__ = "hhx"
  785. const m___UINT8_MAX__ = 255
  786. const m___UINTMAX_C_SUFFIX__ = "UL"
  787. const m___UINTMAX_FMTX__ = "lX"
  788. const m___UINTMAX_FMTo__ = "lo"
  789. const m___UINTMAX_FMTu__ = "lu"
  790. const m___UINTMAX_FMTx__ = "lx"
  791. const m___UINTMAX_MAX__ = 18446744073709551615
  792. const m___UINTMAX_WIDTH__ = 64
  793. const m___UINTPTR_FMTX__ = "lX"
  794. const m___UINTPTR_FMTo__ = "lo"
  795. const m___UINTPTR_FMTu__ = "lu"
  796. const m___UINTPTR_FMTx__ = "lx"
  797. const m___UINTPTR_MAX__ = 18446744073709551615
  798. const m___UINTPTR_WIDTH__ = 64
  799. const m___UINT_FAST16_FMTX__ = "hX"
  800. const m___UINT_FAST16_FMTo__ = "ho"
  801. const m___UINT_FAST16_FMTu__ = "hu"
  802. const m___UINT_FAST16_FMTx__ = "hx"
  803. const m___UINT_FAST16_MAX__ = 65535
  804. const m___UINT_FAST32_FMTX__ = "X"
  805. const m___UINT_FAST32_FMTo__ = "o"
  806. const m___UINT_FAST32_FMTu__ = "u"
  807. const m___UINT_FAST32_FMTx__ = "x"
  808. const m___UINT_FAST32_MAX__ = 4294967295
  809. const m___UINT_FAST64_FMTX__ = "llX"
  810. const m___UINT_FAST64_FMTo__ = "llo"
  811. const m___UINT_FAST64_FMTu__ = "llu"
  812. const m___UINT_FAST64_FMTx__ = "llx"
  813. const m___UINT_FAST64_MAX__ = "18446744073709551615U"
  814. const m___UINT_FAST8_FMTX__ = "hhX"
  815. const m___UINT_FAST8_FMTo__ = "hho"
  816. const m___UINT_FAST8_FMTu__ = "hhu"
  817. const m___UINT_FAST8_FMTx__ = "hhx"
  818. const m___UINT_FAST8_MAX__ = 255
  819. const m___UINT_LEAST16_FMTX__ = "hX"
  820. const m___UINT_LEAST16_FMTo__ = "ho"
  821. const m___UINT_LEAST16_FMTu__ = "hu"
  822. const m___UINT_LEAST16_FMTx__ = "hx"
  823. const m___UINT_LEAST16_MAX__ = 65535
  824. const m___UINT_LEAST32_FMTX__ = "X"
  825. const m___UINT_LEAST32_FMTo__ = "o"
  826. const m___UINT_LEAST32_FMTu__ = "u"
  827. const m___UINT_LEAST32_FMTx__ = "x"
  828. const m___UINT_LEAST32_MAX__ = 4294967295
  829. const m___UINT_LEAST64_FMTX__ = "llX"
  830. const m___UINT_LEAST64_FMTo__ = "llo"
  831. const m___UINT_LEAST64_FMTu__ = "llu"
  832. const m___UINT_LEAST64_FMTx__ = "llx"
  833. const m___UINT_LEAST64_MAX = "UINT64_MAX"
  834. const m___UINT_LEAST64_MAX__ = "18446744073709551615U"
  835. const m___UINT_LEAST8_FMTX__ = "hhX"
  836. const m___UINT_LEAST8_FMTo__ = "hho"
  837. const m___UINT_LEAST8_FMTu__ = "hhu"
  838. const m___UINT_LEAST8_FMTx__ = "hhx"
  839. const m___UINT_LEAST8_MAX__ = 255
  840. const m___USER_LABEL_PREFIX__ = "_"
  841. const m___VERSION__ = "Apple LLVM 17.0.0 (clang-1700.0.13.3)"
  842. const m___VISIONOS_1_0 = 10000
  843. const m___VISIONOS_1_1 = 10100
  844. const m___VISIONOS_1_2 = 10200
  845. const m___VISIONOS_1_3 = 10300
  846. const m___VISIONOS_2_0 = 20000
  847. const m___VISIONOS_2_1 = 20100
  848. const m___VISIONOS_2_2 = 20200
  849. const m___VISIONOS_2_3 = 20300
  850. const m___VISIONOS_2_4 = 20400
  851. const m___WATCHOS_10_0 = 100000
  852. const m___WATCHOS_10_1 = 100100
  853. const m___WATCHOS_10_2 = 100200
  854. const m___WATCHOS_10_3 = 100300
  855. const m___WATCHOS_10_4 = 100400
  856. const m___WATCHOS_10_5 = 100500
  857. const m___WATCHOS_10_6 = 100600
  858. const m___WATCHOS_10_7 = 100700
  859. const m___WATCHOS_11_0 = 110000
  860. const m___WATCHOS_11_1 = 110100
  861. const m___WATCHOS_11_2 = 110200
  862. const m___WATCHOS_11_3 = 110300
  863. const m___WATCHOS_11_4 = 110400
  864. const m___WATCHOS_1_0 = 10000
  865. const m___WATCHOS_2_0 = 20000
  866. const m___WATCHOS_2_1 = 20100
  867. const m___WATCHOS_2_2 = 20200
  868. const m___WATCHOS_3_0 = 30000
  869. const m___WATCHOS_3_1 = 30100
  870. const m___WATCHOS_3_1_1 = 30101
  871. const m___WATCHOS_3_2 = 30200
  872. const m___WATCHOS_4_0 = 40000
  873. const m___WATCHOS_4_1 = 40100
  874. const m___WATCHOS_4_2 = 40200
  875. const m___WATCHOS_4_3 = 40300
  876. const m___WATCHOS_5_0 = 50000
  877. const m___WATCHOS_5_1 = 50100
  878. const m___WATCHOS_5_2 = 50200
  879. const m___WATCHOS_5_3 = 50300
  880. const m___WATCHOS_6_0 = 60000
  881. const m___WATCHOS_6_1 = 60100
  882. const m___WATCHOS_6_2 = 60200
  883. const m___WATCHOS_7_0 = 70000
  884. const m___WATCHOS_7_1 = 70100
  885. const m___WATCHOS_7_2 = 70200
  886. const m___WATCHOS_7_3 = 70300
  887. const m___WATCHOS_7_4 = 70400
  888. const m___WATCHOS_7_5 = 70500
  889. const m___WATCHOS_7_6 = 70600
  890. const m___WATCHOS_8_0 = 80000
  891. const m___WATCHOS_8_1 = 80100
  892. const m___WATCHOS_8_3 = 80300
  893. const m___WATCHOS_8_4 = 80400
  894. const m___WATCHOS_8_5 = 80500
  895. const m___WATCHOS_8_6 = 80600
  896. const m___WATCHOS_8_7 = 80700
  897. const m___WATCHOS_8_8 = 80800
  898. const m___WATCHOS_9_0 = 90000
  899. const m___WATCHOS_9_1 = 90100
  900. const m___WATCHOS_9_2 = 90200
  901. const m___WATCHOS_9_3 = 90300
  902. const m___WATCHOS_9_4 = 90400
  903. const m___WATCHOS_9_5 = 90500
  904. const m___WATCHOS_9_6 = 90600
  905. const m___WCHAR_MAX__ = 2147483647
  906. const m___WCHAR_TYPE__ = "int"
  907. const m___WCHAR_WIDTH__ = 32
  908. const m___WINT_MAX__ = 2147483647
  909. const m___WINT_TYPE__ = "int"
  910. const m___WINT_WIDTH__ = 32
  911. const m___amd64 = 1
  912. const m___amd64__ = 1
  913. const m___apple_build_version__ = 17000013
  914. const m___clang__ = 1
  915. const m___clang_literal_encoding__ = "UTF-8"
  916. const m___clang_major__ = 17
  917. const m___clang_minor__ = 0
  918. const m___clang_patchlevel__ = 0
  919. const m___clang_version__ = "17.0.0 (clang-1700.0.13.3)"
  920. const m___clang_wide_literal_encoding__ = "UTF-32"
  921. const m___code_model_small__ = 1
  922. const m___const = "const"
  923. const m___core2 = 1
  924. const m___core2__ = 1
  925. const m___has_bounds_safety_attributes = 0
  926. const m___has_ptrcheck = 0
  927. const m___has_safe_buffers = 0
  928. const m___header_inline = "inline"
  929. const m___llvm__ = 1
  930. const m___nonnull = "_Nonnull"
  931. const m___null_unspecified = "_Null_unspecified"
  932. const m___nullable = "_Nullable"
  933. const m___pic__ = 2
  934. const m___restrict = "restrict"
  935. const m___restrict_arr = "restrict"
  936. const m___signed = "signed"
  937. const m___tune_core2__ = 1
  938. const m___volatile = "volatile"
  939. const m___x86_64 = 1
  940. const m___x86_64__ = 1
  941. type t__builtin_va_list = uintptr
  942. type t__predefined_size_t = uint64
  943. type t__predefined_wchar_t = int32
  944. type t__predefined_ptrdiff_t = int64
  945. type t__int8_t = int8
  946. type t__uint8_t = uint8
  947. type t__int16_t = int16
  948. type t__uint16_t = uint16
  949. type t__int32_t = int32
  950. type t__uint32_t = uint32
  951. type t__int64_t = int64
  952. type t__uint64_t = uint64
  953. type t__darwin_intptr_t = int64
  954. type t__darwin_natural_t = uint32
  955. type t__darwin_ct_rune_t = int32
  956. type t__mbstate_t = struct {
  957. F_mbstateL [0]int64
  958. F__mbstate8 [128]int8
  959. }
  960. type t__darwin_mbstate_t = struct {
  961. F_mbstateL [0]int64
  962. F__mbstate8 [128]int8
  963. }
  964. type t__darwin_ptrdiff_t = int64
  965. type t__darwin_size_t = uint64
  966. type t__darwin_va_list = uintptr
  967. type t__darwin_wchar_t = int32
  968. type t__darwin_rune_t = int32
  969. type t__darwin_wint_t = int32
  970. type t__darwin_clock_t = uint64
  971. type t__darwin_socklen_t = uint32
  972. type t__darwin_ssize_t = int64
  973. type t__darwin_time_t = int64
  974. type Tint8_t = int8
  975. type Tint16_t = int16
  976. type Tint32_t = int32
  977. type Tint64_t = int64
  978. type Tu_int8_t = uint8
  979. type Tu_int16_t = uint16
  980. type Tu_int32_t = uint32
  981. type Tu_int64_t = uint64
  982. type Tregister_t = int64
  983. type Tintptr_t = int64
  984. type Tuintptr_t = uint64
  985. type Tuser_addr_t = uint64
  986. type Tuser_size_t = uint64
  987. type Tuser_ssize_t = int64
  988. type Tuser_long_t = int64
  989. type Tuser_ulong_t = uint64
  990. type Tuser_time_t = int64
  991. type Tuser_off_t = int64
  992. type Tsyscall_arg_t = uint64
  993. type t__darwin_blkcnt_t = int64
  994. type t__darwin_blksize_t = int32
  995. type t__darwin_dev_t = int32
  996. type t__darwin_fsblkcnt_t = uint32
  997. type t__darwin_fsfilcnt_t = uint32
  998. type t__darwin_gid_t = uint32
  999. type t__darwin_id_t = uint32
  1000. type t__darwin_ino64_t = uint64
  1001. type t__darwin_ino_t = uint64
  1002. type t__darwin_mach_port_name_t = uint32
  1003. type t__darwin_mach_port_t = uint32
  1004. type t__darwin_mode_t = uint16
  1005. type t__darwin_off_t = int64
  1006. type t__darwin_pid_t = int32
  1007. type t__darwin_sigset_t = uint32
  1008. type t__darwin_suseconds_t = int32
  1009. type t__darwin_uid_t = uint32
  1010. type t__darwin_useconds_t = uint32
  1011. type t__darwin_uuid_t = [16]uint8
  1012. type t__darwin_uuid_string_t = [37]int8
  1013. type t__darwin_pthread_handler_rec = struct {
  1014. F__routine uintptr
  1015. F__arg uintptr
  1016. F__next uintptr
  1017. }
  1018. type T_opaque_pthread_attr_t = struct {
  1019. F__sig int64
  1020. F__opaque [56]int8
  1021. }
  1022. type T_opaque_pthread_cond_t = struct {
  1023. F__sig int64
  1024. F__opaque [40]int8
  1025. }
  1026. type T_opaque_pthread_condattr_t = struct {
  1027. F__sig int64
  1028. F__opaque [8]int8
  1029. }
  1030. type T_opaque_pthread_mutex_t = struct {
  1031. F__sig int64
  1032. F__opaque [56]int8
  1033. }
  1034. type T_opaque_pthread_mutexattr_t = struct {
  1035. F__sig int64
  1036. F__opaque [8]int8
  1037. }
  1038. type T_opaque_pthread_once_t = struct {
  1039. F__sig int64
  1040. F__opaque [8]int8
  1041. }
  1042. type T_opaque_pthread_rwlock_t = struct {
  1043. F__sig int64
  1044. F__opaque [192]int8
  1045. }
  1046. type T_opaque_pthread_rwlockattr_t = struct {
  1047. F__sig int64
  1048. F__opaque [16]int8
  1049. }
  1050. type T_opaque_pthread_t = struct {
  1051. F__sig int64
  1052. F__cleanup_stack uintptr
  1053. F__opaque [8176]int8
  1054. }
  1055. type t__darwin_pthread_attr_t = struct {
  1056. F__sig int64
  1057. F__opaque [56]int8
  1058. }
  1059. type t__darwin_pthread_cond_t = struct {
  1060. F__sig int64
  1061. F__opaque [40]int8
  1062. }
  1063. type t__darwin_pthread_condattr_t = struct {
  1064. F__sig int64
  1065. F__opaque [8]int8
  1066. }
  1067. type t__darwin_pthread_key_t = uint64
  1068. type t__darwin_pthread_mutex_t = struct {
  1069. F__sig int64
  1070. F__opaque [56]int8
  1071. }
  1072. type t__darwin_pthread_mutexattr_t = struct {
  1073. F__sig int64
  1074. F__opaque [8]int8
  1075. }
  1076. type t__darwin_pthread_once_t = struct {
  1077. F__sig int64
  1078. F__opaque [8]int8
  1079. }
  1080. type t__darwin_pthread_rwlock_t = struct {
  1081. F__sig int64
  1082. F__opaque [192]int8
  1083. }
  1084. type t__darwin_pthread_rwlockattr_t = struct {
  1085. F__sig int64
  1086. F__opaque [16]int8
  1087. }
  1088. type t__darwin_pthread_t = uintptr
  1089. type Tu_char = uint8
  1090. type Tu_short = uint16
  1091. type Tu_int = uint32
  1092. type Tu_long = uint64
  1093. type Tushort = uint16
  1094. type Tuint = uint32
  1095. type Tu_quad_t = uint64
  1096. type Tquad_t = int64
  1097. type Tqaddr_t = uintptr
  1098. type Tcaddr_t = uintptr
  1099. type Tdaddr_t = int32
  1100. type Tdev_t = int32
  1101. type Tfixpt_t = uint32
  1102. type Tblkcnt_t = int64
  1103. type Tblksize_t = int32
  1104. type Tgid_t = uint32
  1105. type Tin_addr_t = uint32
  1106. type Tin_port_t = uint16
  1107. type Tino_t = uint64
  1108. type Tino64_t = uint64
  1109. type Tkey_t = int32
  1110. type Tmode_t = uint16
  1111. type Tnlink_t = uint16
  1112. type Tid_t = uint32
  1113. type Tpid_t = int32
  1114. type Toff_t = int64
  1115. type Tsegsz_t = int32
  1116. type Tswblk_t = int32
  1117. type Tuid_t = uint32
  1118. type Tclock_t = uint64
  1119. type Tsize_t = uint64
  1120. type Tssize_t = int64
  1121. type Ttime_t = int64
  1122. type Tuseconds_t = uint32
  1123. type Tsuseconds_t = int32
  1124. type Trsize_t = uint64
  1125. type Terrno_t = int32
  1126. type Tfd_set = struct {
  1127. Ffds_bits [32]t__int32_t
  1128. }
  1129. type Tfd_mask = int32
  1130. type Tpthread_attr_t = struct {
  1131. F__sig int64
  1132. F__opaque [56]int8
  1133. }
  1134. type Tpthread_cond_t = struct {
  1135. F__sig int64
  1136. F__opaque [40]int8
  1137. }
  1138. type Tpthread_condattr_t = struct {
  1139. F__sig int64
  1140. F__opaque [8]int8
  1141. }
  1142. type Tpthread_mutex_t = struct {
  1143. F__sig int64
  1144. F__opaque [56]int8
  1145. }
  1146. type Tpthread_mutexattr_t = struct {
  1147. F__sig int64
  1148. F__opaque [8]int8
  1149. }
  1150. type Tpthread_once_t = struct {
  1151. F__sig int64
  1152. F__opaque [8]int8
  1153. }
  1154. type Tpthread_rwlock_t = struct {
  1155. F__sig int64
  1156. F__opaque [192]int8
  1157. }
  1158. type Tpthread_rwlockattr_t = struct {
  1159. F__sig int64
  1160. F__opaque [16]int8
  1161. }
  1162. type Tpthread_t = uintptr
  1163. type Tpthread_key_t = uint64
  1164. type Tfsblkcnt_t = uint32
  1165. type Tfsfilcnt_t = uint32
  1166. type Tuint64_t = uint64
  1167. type Tint_least64_t = int64
  1168. type Tuint_least64_t = uint64
  1169. type Tint_fast64_t = int64
  1170. type Tuint_fast64_t = uint64
  1171. type Tuint32_t = uint32
  1172. type Tint_least32_t = int32
  1173. type Tuint_least32_t = uint32
  1174. type Tint_fast32_t = int32
  1175. type Tuint_fast32_t = uint32
  1176. type Tuint16_t = uint16
  1177. type Tint_least16_t = int16
  1178. type Tuint_least16_t = uint16
  1179. type Tint_fast16_t = int16
  1180. type Tuint_fast16_t = uint16
  1181. type Tuint8_t = uint8
  1182. type Tint_least8_t = int8
  1183. type Tuint_least8_t = uint8
  1184. type Tint_fast8_t = int8
  1185. type Tuint_fast8_t = uint8
  1186. type Tintmax_t = int64
  1187. type Tuintmax_t = uint64
  1188. type TMD2_CTX = struct {
  1189. Fi Tuint32_t
  1190. FC [16]uint8
  1191. FX [48]uint8
  1192. }
  1193. type TMD2Context = TMD2_CTX
  1194. type t__darwin_nl_item = int32
  1195. type t__darwin_wctrans_t = int32
  1196. type t__darwin_wctype_t = uint32
  1197. /* Security checking functions. */
  1198. /*
  1199. * Copyright (c) 2017, 2023 Apple Inc. All rights reserved.
  1200. *
  1201. * @APPLE_LICENSE_HEADER_START@
  1202. *
  1203. * This file contains Original Code and/or Modifications of Original Code
  1204. * as defined in and that are subject to the Apple Public Source License
  1205. * Version 2.0 (the 'License'). You may not use this file except in
  1206. * compliance with the License. Please obtain a copy of the License at
  1207. * http://www.opensource.apple.com/apsl/ and read it before using this
  1208. * file.
  1209. *
  1210. * The Original Code and all software distributed under the License are
  1211. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1212. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1213. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1214. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1215. * Please see the License for the specific language governing rights and
  1216. * limitations under the License.
  1217. *
  1218. * @APPLE_LICENSE_HEADER_END@
  1219. */
  1220. /*
  1221. * Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1222. *
  1223. * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1224. *
  1225. * This file contains Original Code and/or Modifications of Original Code
  1226. * as defined in and that are subject to the Apple Public Source License
  1227. * Version 2.0 (the 'License'). You may not use this file except in
  1228. * compliance with the License. The rights granted to you under the License
  1229. * may not be used to create, or enable the creation or redistribution of,
  1230. * unlawful or unlicensed copies of an Apple operating system, or to
  1231. * circumvent, violate, or enable the circumvention or violation of, any
  1232. * terms of an Apple operating system software license agreement.
  1233. *
  1234. * Please obtain a copy of the License at
  1235. * http://www.opensource.apple.com/apsl/ and read it before using this file.
  1236. *
  1237. * The Original Code and all software distributed under the License are
  1238. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1239. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1240. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1241. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1242. * Please see the License for the specific language governing rights and
  1243. * limitations under the License.
  1244. *
  1245. * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1246. */
  1247. /* Copyright 1995 NeXT Computer, Inc. All rights reserved. */
  1248. /*
  1249. * Copyright (c) 1991, 1993
  1250. * The Regents of the University of California. All rights reserved.
  1251. *
  1252. * This code is derived from software contributed to Berkeley by
  1253. * Berkeley Software Design, Inc.
  1254. *
  1255. * Redistribution and use in source and binary forms, with or without
  1256. * modification, are permitted provided that the following conditions
  1257. * are met:
  1258. * 1. Redistributions of source code must retain the above copyright
  1259. * notice, this list of conditions and the following disclaimer.
  1260. * 2. Redistributions in binary form must reproduce the above copyright
  1261. * notice, this list of conditions and the following disclaimer in the
  1262. * documentation and/or other materials provided with the distribution.
  1263. * 3. All advertising materials mentioning features or use of this software
  1264. * must display the following acknowledgement:
  1265. * This product includes software developed by the University of
  1266. * California, Berkeley and its contributors.
  1267. * 4. Neither the name of the University nor the names of its contributors
  1268. * may be used to endorse or promote products derived from this software
  1269. * without specific prior written permission.
  1270. *
  1271. * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1272. * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1273. * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1274. * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1275. * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1276. * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1277. * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1278. * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1279. * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1280. * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1281. * SUCH DAMAGE.
  1282. *
  1283. * @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1284. */
  1285. /*
  1286. * Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  1287. *
  1288. * @APPLE_LICENSE_HEADER_START@
  1289. *
  1290. * This file contains Original Code and/or Modifications of Original Code
  1291. * as defined in and that are subject to the Apple Public Source License
  1292. * Version 2.0 (the 'License'). You may not use this file except in
  1293. * compliance with the License. Please obtain a copy of the License at
  1294. * http://www.opensource.apple.com/apsl/ and read it before using this
  1295. * file.
  1296. *
  1297. * The Original Code and all software distributed under the License are
  1298. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1299. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1300. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1301. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1302. * Please see the License for the specific language governing rights and
  1303. * limitations under the License.
  1304. *
  1305. * @APPLE_LICENSE_HEADER_END@
  1306. */
  1307. // This is explicitly outside the header guard
  1308. /*
  1309. * Copyright (c) 2007, 2008 Apple Inc. All rights reserved.
  1310. *
  1311. * @APPLE_LICENSE_HEADER_START@
  1312. *
  1313. * This file contains Original Code and/or Modifications of Original Code
  1314. * as defined in and that are subject to the Apple Public Source License
  1315. * Version 2.0 (the 'License'). You may not use this file except in
  1316. * compliance with the License. Please obtain a copy of the License at
  1317. * http://www.opensource.apple.com/apsl/ and read it before using this
  1318. * file.
  1319. *
  1320. * The Original Code and all software distributed under the License are
  1321. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1322. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1323. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1324. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1325. * Please see the License for the specific language governing rights and
  1326. * limitations under the License.
  1327. *
  1328. * @APPLE_LICENSE_HEADER_END@
  1329. */
  1330. /*
  1331. * Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  1332. *
  1333. * @APPLE_LICENSE_HEADER_START@
  1334. *
  1335. * This file contains Original Code and/or Modifications of Original Code
  1336. * as defined in and that are subject to the Apple Public Source License
  1337. * Version 2.0 (the 'License'). You may not use this file except in
  1338. * compliance with the License. Please obtain a copy of the License at
  1339. * http://www.opensource.apple.com/apsl/ and read it before using this
  1340. * file.
  1341. *
  1342. * The Original Code and all software distributed under the License are
  1343. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1344. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1345. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1346. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1347. * Please see the License for the specific language governing rights and
  1348. * limitations under the License.
  1349. *
  1350. * @APPLE_LICENSE_HEADER_END@
  1351. */
  1352. /* bcopy and bzero */
  1353. /* Removed in Issue 7 */
  1354. /* void bcopy(const void *src, void *dst, size_t len) */
  1355. /* void bzero(void *s, size_t n) */
  1356. /* Security checking functions. */
  1357. /*
  1358. * Copyright (c) 2007,2017,2023 Apple Inc. All rights reserved.
  1359. *
  1360. * @APPLE_LICENSE_HEADER_START@
  1361. *
  1362. * This file contains Original Code and/or Modifications of Original Code
  1363. * as defined in and that are subject to the Apple Public Source License
  1364. * Version 2.0 (the 'License'). You may not use this file except in
  1365. * compliance with the License. Please obtain a copy of the License at
  1366. * http://www.opensource.apple.com/apsl/ and read it before using this
  1367. * file.
  1368. *
  1369. * The Original Code and all software distributed under the License are
  1370. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1371. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1372. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1373. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1374. * Please see the License for the specific language governing rights and
  1375. * limitations under the License.
  1376. *
  1377. * @APPLE_LICENSE_HEADER_END@
  1378. */
  1379. /*
  1380. * Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1381. *
  1382. * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1383. *
  1384. * This file contains Original Code and/or Modifications of Original Code
  1385. * as defined in and that are subject to the Apple Public Source License
  1386. * Version 2.0 (the 'License'). You may not use this file except in
  1387. * compliance with the License. The rights granted to you under the License
  1388. * may not be used to create, or enable the creation or redistribution of,
  1389. * unlawful or unlicensed copies of an Apple operating system, or to
  1390. * circumvent, violate, or enable the circumvention or violation of, any
  1391. * terms of an Apple operating system software license agreement.
  1392. *
  1393. * Please obtain a copy of the License at
  1394. * http://www.opensource.apple.com/apsl/ and read it before using this file.
  1395. *
  1396. * The Original Code and all software distributed under the License are
  1397. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1398. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1399. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1400. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1401. * Please see the License for the specific language governing rights and
  1402. * limitations under the License.
  1403. *
  1404. * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1405. */
  1406. /* Copyright 1995 NeXT Computer, Inc. All rights reserved. */
  1407. /*
  1408. * Copyright (c) 1991, 1993
  1409. * The Regents of the University of California. All rights reserved.
  1410. *
  1411. * This code is derived from software contributed to Berkeley by
  1412. * Berkeley Software Design, Inc.
  1413. *
  1414. * Redistribution and use in source and binary forms, with or without
  1415. * modification, are permitted provided that the following conditions
  1416. * are met:
  1417. * 1. Redistributions of source code must retain the above copyright
  1418. * notice, this list of conditions and the following disclaimer.
  1419. * 2. Redistributions in binary form must reproduce the above copyright
  1420. * notice, this list of conditions and the following disclaimer in the
  1421. * documentation and/or other materials provided with the distribution.
  1422. * 3. All advertising materials mentioning features or use of this software
  1423. * must display the following acknowledgement:
  1424. * This product includes software developed by the University of
  1425. * California, Berkeley and its contributors.
  1426. * 4. Neither the name of the University nor the names of its contributors
  1427. * may be used to endorse or promote products derived from this software
  1428. * without specific prior written permission.
  1429. *
  1430. * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1431. * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1432. * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1433. * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1434. * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1435. * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1436. * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1437. * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1438. * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1439. * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1440. * SUCH DAMAGE.
  1441. *
  1442. * @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1443. */
  1444. /*
  1445. * Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  1446. *
  1447. * @APPLE_LICENSE_HEADER_START@
  1448. *
  1449. * This file contains Original Code and/or Modifications of Original Code
  1450. * as defined in and that are subject to the Apple Public Source License
  1451. * Version 2.0 (the 'License'). You may not use this file except in
  1452. * compliance with the License. Please obtain a copy of the License at
  1453. * http://www.opensource.apple.com/apsl/ and read it before using this
  1454. * file.
  1455. *
  1456. * The Original Code and all software distributed under the License are
  1457. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1458. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1459. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1460. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1461. * Please see the License for the specific language governing rights and
  1462. * limitations under the License.
  1463. *
  1464. * @APPLE_LICENSE_HEADER_END@
  1465. */
  1466. // This is explicitly outside the header guard
  1467. /*
  1468. * Copyright (c) 2007, 2008 Apple Inc. All rights reserved.
  1469. *
  1470. * @APPLE_LICENSE_HEADER_START@
  1471. *
  1472. * This file contains Original Code and/or Modifications of Original Code
  1473. * as defined in and that are subject to the Apple Public Source License
  1474. * Version 2.0 (the 'License'). You may not use this file except in
  1475. * compliance with the License. Please obtain a copy of the License at
  1476. * http://www.opensource.apple.com/apsl/ and read it before using this
  1477. * file.
  1478. *
  1479. * The Original Code and all software distributed under the License are
  1480. * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1481. * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1482. * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1483. * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1484. * Please see the License for the specific language governing rights and
  1485. * limitations under the License.
  1486. *
  1487. * @APPLE_LICENSE_HEADER_END@
  1488. */
  1489. /* <rdar://problem/12622659> */
  1490. /* memccpy, memcpy, mempcpy, memmove, memset, strcpy, strlcpy, stpcpy,
  1491. strncpy, stpncpy, strcat, strlcat, and strncat */
  1492. /* void *memcpy(void *dst, const void *src, size_t n) */
  1493. /* void *memmove(void *dst, const void *src, size_t len) */
  1494. /* void *memset(void *b, int c, size_t len) */
  1495. /* char *strcpy(char *dst, const char *src) */
  1496. /* char *stpcpy(char *dst, const char *src) */
  1497. /* char *stpncpy(char *dst, const char *src, size_t n) */
  1498. /* char *strncpy(char *dst, const char *src, size_t n) */
  1499. /* char *strcat(char *s1, const char *s2) */
  1500. /* char *strncat(char *s1, const char *s2, size_t n) */
  1501. // C documentation
  1502. //
  1503. // /* cut-n-pasted from rfc1319 */
  1504. var _S = [256]uint8{
  1505. 0: uint8(41),
  1506. 1: uint8(46),
  1507. 2: uint8(67),
  1508. 3: uint8(201),
  1509. 4: uint8(162),
  1510. 5: uint8(216),
  1511. 6: uint8(124),
  1512. 7: uint8(1),
  1513. 8: uint8(61),
  1514. 9: uint8(54),
  1515. 10: uint8(84),
  1516. 11: uint8(161),
  1517. 12: uint8(236),
  1518. 13: uint8(240),
  1519. 14: uint8(6),
  1520. 15: uint8(19),
  1521. 16: uint8(98),
  1522. 17: uint8(167),
  1523. 18: uint8(5),
  1524. 19: uint8(243),
  1525. 20: uint8(192),
  1526. 21: uint8(199),
  1527. 22: uint8(115),
  1528. 23: uint8(140),
  1529. 24: uint8(152),
  1530. 25: uint8(147),
  1531. 26: uint8(43),
  1532. 27: uint8(217),
  1533. 28: uint8(188),
  1534. 29: uint8(76),
  1535. 30: uint8(130),
  1536. 31: uint8(202),
  1537. 32: uint8(30),
  1538. 33: uint8(155),
  1539. 34: uint8(87),
  1540. 35: uint8(60),
  1541. 36: uint8(253),
  1542. 37: uint8(212),
  1543. 38: uint8(224),
  1544. 39: uint8(22),
  1545. 40: uint8(103),
  1546. 41: uint8(66),
  1547. 42: uint8(111),
  1548. 43: uint8(24),
  1549. 44: uint8(138),
  1550. 45: uint8(23),
  1551. 46: uint8(229),
  1552. 47: uint8(18),
  1553. 48: uint8(190),
  1554. 49: uint8(78),
  1555. 50: uint8(196),
  1556. 51: uint8(214),
  1557. 52: uint8(218),
  1558. 53: uint8(158),
  1559. 54: uint8(222),
  1560. 55: uint8(73),
  1561. 56: uint8(160),
  1562. 57: uint8(251),
  1563. 58: uint8(245),
  1564. 59: uint8(142),
  1565. 60: uint8(187),
  1566. 61: uint8(47),
  1567. 62: uint8(238),
  1568. 63: uint8(122),
  1569. 64: uint8(169),
  1570. 65: uint8(104),
  1571. 66: uint8(121),
  1572. 67: uint8(145),
  1573. 68: uint8(21),
  1574. 69: uint8(178),
  1575. 70: uint8(7),
  1576. 71: uint8(63),
  1577. 72: uint8(148),
  1578. 73: uint8(194),
  1579. 74: uint8(16),
  1580. 75: uint8(137),
  1581. 76: uint8(11),
  1582. 77: uint8(34),
  1583. 78: uint8(95),
  1584. 79: uint8(33),
  1585. 80: uint8(128),
  1586. 81: uint8(127),
  1587. 82: uint8(93),
  1588. 83: uint8(154),
  1589. 84: uint8(90),
  1590. 85: uint8(144),
  1591. 86: uint8(50),
  1592. 87: uint8(39),
  1593. 88: uint8(53),
  1594. 89: uint8(62),
  1595. 90: uint8(204),
  1596. 91: uint8(231),
  1597. 92: uint8(191),
  1598. 93: uint8(247),
  1599. 94: uint8(151),
  1600. 95: uint8(3),
  1601. 96: uint8(255),
  1602. 97: uint8(25),
  1603. 98: uint8(48),
  1604. 99: uint8(179),
  1605. 100: uint8(72),
  1606. 101: uint8(165),
  1607. 102: uint8(181),
  1608. 103: uint8(209),
  1609. 104: uint8(215),
  1610. 105: uint8(94),
  1611. 106: uint8(146),
  1612. 107: uint8(42),
  1613. 108: uint8(172),
  1614. 109: uint8(86),
  1615. 110: uint8(170),
  1616. 111: uint8(198),
  1617. 112: uint8(79),
  1618. 113: uint8(184),
  1619. 114: uint8(56),
  1620. 115: uint8(210),
  1621. 116: uint8(150),
  1622. 117: uint8(164),
  1623. 118: uint8(125),
  1624. 119: uint8(182),
  1625. 120: uint8(118),
  1626. 121: uint8(252),
  1627. 122: uint8(107),
  1628. 123: uint8(226),
  1629. 124: uint8(156),
  1630. 125: uint8(116),
  1631. 126: uint8(4),
  1632. 127: uint8(241),
  1633. 128: uint8(69),
  1634. 129: uint8(157),
  1635. 130: uint8(112),
  1636. 131: uint8(89),
  1637. 132: uint8(100),
  1638. 133: uint8(113),
  1639. 134: uint8(135),
  1640. 135: uint8(32),
  1641. 136: uint8(134),
  1642. 137: uint8(91),
  1643. 138: uint8(207),
  1644. 139: uint8(101),
  1645. 140: uint8(230),
  1646. 141: uint8(45),
  1647. 142: uint8(168),
  1648. 143: uint8(2),
  1649. 144: uint8(27),
  1650. 145: uint8(96),
  1651. 146: uint8(37),
  1652. 147: uint8(173),
  1653. 148: uint8(174),
  1654. 149: uint8(176),
  1655. 150: uint8(185),
  1656. 151: uint8(246),
  1657. 152: uint8(28),
  1658. 153: uint8(70),
  1659. 154: uint8(97),
  1660. 155: uint8(105),
  1661. 156: uint8(52),
  1662. 157: uint8(64),
  1663. 158: uint8(126),
  1664. 159: uint8(15),
  1665. 160: uint8(85),
  1666. 161: uint8(71),
  1667. 162: uint8(163),
  1668. 163: uint8(35),
  1669. 164: uint8(221),
  1670. 165: uint8(81),
  1671. 166: uint8(175),
  1672. 167: uint8(58),
  1673. 168: uint8(195),
  1674. 169: uint8(92),
  1675. 170: uint8(249),
  1676. 171: uint8(206),
  1677. 172: uint8(186),
  1678. 173: uint8(197),
  1679. 174: uint8(234),
  1680. 175: uint8(38),
  1681. 176: uint8(44),
  1682. 177: uint8(83),
  1683. 178: uint8(13),
  1684. 179: uint8(110),
  1685. 180: uint8(133),
  1686. 181: uint8(40),
  1687. 182: uint8(132),
  1688. 183: uint8(9),
  1689. 184: uint8(211),
  1690. 185: uint8(223),
  1691. 186: uint8(205),
  1692. 187: uint8(244),
  1693. 188: uint8(65),
  1694. 189: uint8(129),
  1695. 190: uint8(77),
  1696. 191: uint8(82),
  1697. 192: uint8(106),
  1698. 193: uint8(220),
  1699. 194: uint8(55),
  1700. 195: uint8(200),
  1701. 196: uint8(108),
  1702. 197: uint8(193),
  1703. 198: uint8(171),
  1704. 199: uint8(250),
  1705. 200: uint8(36),
  1706. 201: uint8(225),
  1707. 202: uint8(123),
  1708. 203: uint8(8),
  1709. 204: uint8(12),
  1710. 205: uint8(189),
  1711. 206: uint8(177),
  1712. 207: uint8(74),
  1713. 208: uint8(120),
  1714. 209: uint8(136),
  1715. 210: uint8(149),
  1716. 211: uint8(139),
  1717. 212: uint8(227),
  1718. 213: uint8(99),
  1719. 214: uint8(232),
  1720. 215: uint8(109),
  1721. 216: uint8(233),
  1722. 217: uint8(203),
  1723. 218: uint8(213),
  1724. 219: uint8(254),
  1725. 220: uint8(59),
  1726. 222: uint8(29),
  1727. 223: uint8(57),
  1728. 224: uint8(242),
  1729. 225: uint8(239),
  1730. 226: uint8(183),
  1731. 227: uint8(14),
  1732. 228: uint8(102),
  1733. 229: uint8(88),
  1734. 230: uint8(208),
  1735. 231: uint8(228),
  1736. 232: uint8(166),
  1737. 233: uint8(119),
  1738. 234: uint8(114),
  1739. 235: uint8(248),
  1740. 236: uint8(235),
  1741. 237: uint8(117),
  1742. 238: uint8(75),
  1743. 239: uint8(10),
  1744. 240: uint8(49),
  1745. 241: uint8(68),
  1746. 242: uint8(80),
  1747. 243: uint8(180),
  1748. 244: uint8(143),
  1749. 245: uint8(237),
  1750. 246: uint8(31),
  1751. 247: uint8(26),
  1752. 248: uint8(219),
  1753. 249: uint8(153),
  1754. 250: uint8(141),
  1755. 251: uint8(51),
  1756. 252: uint8(159),
  1757. 253: uint8(17),
  1758. 254: uint8(131),
  1759. 255: uint8(20),
  1760. }
  1761. // C documentation
  1762. //
  1763. // /* cut-n-pasted from rfc1319 */
  1764. var _pad = [17]uintptr{
  1765. 0: __ccgo_ts,
  1766. 1: __ccgo_ts + 1,
  1767. 2: __ccgo_ts + 3,
  1768. 3: __ccgo_ts + 6,
  1769. 4: __ccgo_ts + 10,
  1770. 5: __ccgo_ts + 15,
  1771. 6: __ccgo_ts + 21,
  1772. 7: __ccgo_ts + 28,
  1773. 8: __ccgo_ts + 36,
  1774. 9: __ccgo_ts + 45,
  1775. 10: __ccgo_ts + 55,
  1776. 11: __ccgo_ts + 66,
  1777. 12: __ccgo_ts + 78,
  1778. 13: __ccgo_ts + 91,
  1779. 14: __ccgo_ts + 105,
  1780. 15: __ccgo_ts + 120,
  1781. 16: __ccgo_ts + 136,
  1782. }
  1783. func XMD2Init(tls *libc.TLS, context uintptr) {
  1784. (*TMD2_CTX)(unsafe.Pointer(context)).Fi = uint32(16)
  1785. libc.X__builtin___memset_chk(tls, context+4, 0, uint64(16), ^t__predefined_size_t(0))
  1786. libc.X__builtin___memset_chk(tls, context+20, 0, uint64(48), ^t__predefined_size_t(0))
  1787. }
  1788. func XMD2Update(tls *libc.TLS, context uintptr, input uintptr, inputLen uint32) {
  1789. var idx, piece uint32
  1790. var p2 uintptr
  1791. _, _, _ = idx, piece, p2
  1792. idx = uint32(0)
  1793. for {
  1794. if !(idx < inputLen) {
  1795. break
  1796. }
  1797. piece = uint32(32) - (*TMD2_CTX)(unsafe.Pointer(context)).Fi
  1798. if inputLen-idx < piece {
  1799. piece = inputLen - idx
  1800. }
  1801. libc.X__builtin___memcpy_chk(tls, context+20+uintptr((*TMD2_CTX)(unsafe.Pointer(context)).Fi), input+uintptr(idx), uint64(piece), ^t__predefined_size_t(0))
  1802. p2 = context
  1803. *(*Tuint32_t)(unsafe.Pointer(p2)) += piece
  1804. if *(*Tuint32_t)(unsafe.Pointer(p2)) == uint32(32) {
  1805. XMD2Transform(tls, context)
  1806. } /* resets i */
  1807. goto _1
  1808. _1:
  1809. ;
  1810. idx += piece
  1811. }
  1812. }
  1813. func XMD2Final(tls *libc.TLS, digest uintptr, context uintptr) {
  1814. var padlen uint32
  1815. _ = padlen
  1816. /* padlen should be 1..16 */
  1817. padlen = uint32(32) - (*TMD2_CTX)(unsafe.Pointer(context)).Fi
  1818. /* add padding */
  1819. XMD2Update(tls, context, _pad[padlen], padlen)
  1820. /* add checksum */
  1821. XMD2Update(tls, context, context+4, libc.Uint32FromInt64(16))
  1822. /* copy out final digest */
  1823. libc.X__builtin___memcpy_chk(tls, digest, context+20, libc.Uint64FromInt32(16), ^t__predefined_size_t(0))
  1824. /* reset the context */
  1825. XMD2Init(tls, context)
  1826. }
  1827. // C documentation
  1828. //
  1829. // /*static*/
  1830. func XMD2Transform(tls *libc.TLS, context uintptr) {
  1831. var j, k, l, t, v4 Tuint32_t
  1832. var v6 uint8
  1833. var p2 uintptr
  1834. _, _, _, _, _, _, _ = j, k, l, t, v4, v6, p2
  1835. /* set block "3" and update "checksum" */
  1836. l = uint32(*(*uint8)(unsafe.Pointer(context + 4 + 15)))
  1837. j = libc.Uint32FromInt32(0)
  1838. for {
  1839. if !(j < uint32(16)) {
  1840. break
  1841. }
  1842. *(*uint8)(unsafe.Pointer(context + 20 + uintptr(uint32(32)+j))) = libc.Uint8FromInt32(libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(context + 20 + uintptr(j)))) ^ libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(context + 20 + uintptr(uint32(16)+j)))))
  1843. p2 = context + 4 + uintptr(j)
  1844. *(*uint8)(unsafe.Pointer(p2)) = uint8(int32(*(*uint8)(unsafe.Pointer(p2))) ^ libc.Int32FromUint8(_S[uint32(*(*uint8)(unsafe.Pointer(context + 20 + uintptr(uint32(16)+j))))^l]))
  1845. l = uint32(*(*uint8)(unsafe.Pointer(p2)))
  1846. goto _1
  1847. _1:
  1848. ;
  1849. j++
  1850. }
  1851. /* mangle input block */
  1852. v4 = libc.Uint32FromInt32(0)
  1853. j = v4
  1854. t = v4
  1855. for {
  1856. if !(j < uint32(18)) {
  1857. break
  1858. }
  1859. k = uint32(0)
  1860. for {
  1861. if !(k < uint32(48)) {
  1862. break
  1863. }
  1864. v6 = libc.Uint8FromInt32(libc.Int32FromUint8(*(*uint8)(unsafe.Pointer(context + 20 + uintptr(k)))) ^ libc.Int32FromUint8(_S[t]))
  1865. *(*uint8)(unsafe.Pointer(context + 20 + uintptr(k))) = v6
  1866. t = uint32(v6)
  1867. goto _5
  1868. _5:
  1869. ;
  1870. k++
  1871. }
  1872. goto _3
  1873. _3:
  1874. ;
  1875. t = (t + j) % uint32(256)
  1876. j++
  1877. }
  1878. /* reset input pointer */
  1879. (*TMD2_CTX)(unsafe.Pointer(context)).Fi = uint32(16)
  1880. }
  1881. const m_MD4_BLOCK_LENGTH = 64
  1882. const m_MD4_DIGEST_LENGTH = 16
  1883. type TMD4_CTX = struct {
  1884. Fstate [4]Tuint32_t
  1885. Fcount Tuint64_t
  1886. Fbuffer [64]Tuint8_t
  1887. }
  1888. type TMD4Context = TMD4_CTX
  1889. var _PADDING = [64]Tuint8_t{
  1890. 0: uint8(0x80),
  1891. }
  1892. // C documentation
  1893. //
  1894. // /*
  1895. // * Start MD4 accumulation.
  1896. // * Set bit count to 0 and buffer to mysterious initialization constants.
  1897. // */
  1898. func XMD4Init(tls *libc.TLS, ctx uintptr) {
  1899. (*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount = uint64(0)
  1900. *(*Tuint32_t)(unsafe.Pointer(ctx)) = uint32(0x67452301)
  1901. *(*Tuint32_t)(unsafe.Pointer(ctx + 1*4)) = uint32(0xefcdab89)
  1902. *(*Tuint32_t)(unsafe.Pointer(ctx + 2*4)) = uint32(0x98badcfe)
  1903. *(*Tuint32_t)(unsafe.Pointer(ctx + 3*4)) = uint32(0x10325476)
  1904. }
  1905. // C documentation
  1906. //
  1907. // /*
  1908. // * Update context to reflect the concatenation of another buffer full
  1909. // * of bytes.
  1910. // */
  1911. func XMD4Update(tls *libc.TLS, ctx uintptr, input uintptr, len1 Tsize_t) {
  1912. var have, need Tsize_t
  1913. _, _ = have, need
  1914. /* Check how many bytes we already have and how many more we need. */
  1915. have = uint64((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> libc.Int32FromInt32(3) & libc.Uint64FromInt32(libc.Int32FromInt32(m_MD4_BLOCK_LENGTH)-libc.Int32FromInt32(1)))
  1916. need = uint64(m_MD4_BLOCK_LENGTH) - have
  1917. /* Update bitcount */
  1918. *(*Tuint64_t)(unsafe.Pointer(ctx + 16)) += len1 << int32(3)
  1919. if len1 >= need {
  1920. if have != uint64(0) {
  1921. libc.X__builtin___memcpy_chk(tls, ctx+24+uintptr(have), input, need, ^t__predefined_size_t(0))
  1922. XMD4Transform(tls, ctx, ctx+24)
  1923. input += uintptr(need)
  1924. len1 -= need
  1925. have = uint64(0)
  1926. }
  1927. /* Process data in MD4_BLOCK_LENGTH-byte chunks. */
  1928. for len1 >= uint64(m_MD4_BLOCK_LENGTH) {
  1929. XMD4Transform(tls, ctx, input)
  1930. input += uintptr(m_MD4_BLOCK_LENGTH)
  1931. len1 -= uint64(m_MD4_BLOCK_LENGTH)
  1932. }
  1933. }
  1934. /* Handle any remaining bytes of data. */
  1935. if len1 != uint64(0) {
  1936. libc.X__builtin___memcpy_chk(tls, ctx+24+uintptr(have), input, len1, ^t__predefined_size_t(0))
  1937. }
  1938. }
  1939. // C documentation
  1940. //
  1941. // /*
  1942. // * Pad pad to 64-byte boundary with the bit pattern
  1943. // * 1 0* (64-bit count of bits processed, MSB-first)
  1944. // */
  1945. func XMD4Pad(tls *libc.TLS, ctx uintptr) {
  1946. bp := tls.Alloc(16)
  1947. defer tls.Free(16)
  1948. var padlen Tsize_t
  1949. var _ /* count at bp+0 */ [8]Tuint8_t
  1950. _ = padlen
  1951. /* Convert count to 8 bytes in little endian order. */
  1952. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(7)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(56))
  1953. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(6)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(48))
  1954. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(5)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(40))
  1955. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(4)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(32))
  1956. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(3)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(24))
  1957. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(2)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(16))
  1958. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(1)] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(8))
  1959. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[0] = uint8((*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount)
  1960. /* Pad out to 56 mod 64. */
  1961. padlen = uint64(uint64(m_MD4_BLOCK_LENGTH) - (*TMD4_CTX)(unsafe.Pointer(ctx)).Fcount>>libc.Int32FromInt32(3)&libc.Uint64FromInt32(libc.Int32FromInt32(m_MD4_BLOCK_LENGTH)-libc.Int32FromInt32(1)))
  1962. if padlen < libc.Uint64FromInt32(libc.Int32FromInt32(1)+libc.Int32FromInt32(8)) {
  1963. padlen += uint64(m_MD4_BLOCK_LENGTH)
  1964. }
  1965. XMD4Update(tls, ctx, uintptr(unsafe.Pointer(&_PADDING)), padlen-uint64(8)) /* padlen - 8 <= 64 */
  1966. XMD4Update(tls, ctx, bp, uint64(8))
  1967. }
  1968. // C documentation
  1969. //
  1970. // /*
  1971. // * Final wrapup--call MD4Pad, fill in digest and zero out ctx.
  1972. // */
  1973. func XMD4Final(tls *libc.TLS, digest uintptr, ctx uintptr) {
  1974. var i int32
  1975. _ = i
  1976. XMD4Pad(tls, ctx)
  1977. i = 0
  1978. for {
  1979. if !(i < int32(4)) {
  1980. break
  1981. }
  1982. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 3)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(24))
  1983. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 2)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(16))
  1984. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 1)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(8))
  1985. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)))) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)))
  1986. goto _1
  1987. _1:
  1988. ;
  1989. i++
  1990. }
  1991. libc.X__builtin___memset_chk(tls, ctx, 0, uint64(88), ^t__predefined_size_t(0))
  1992. }
  1993. /* The three core functions - F1 is optimized somewhat */
  1994. /* #define F1(x, y, z) (x & y | ~x & z) */
  1995. /* This is the central step in the MD4 algorithm. */
  1996. // C documentation
  1997. //
  1998. // /*
  1999. // * The core of the MD4 algorithm, this alters an existing MD4 hash to
  2000. // * reflect the addition of 16 longwords of new data. MD4Update blocks
  2001. // * the data and converts bytes into longwords for this routine.
  2002. // */
  2003. func XMD4Transform(tls *libc.TLS, state uintptr, block uintptr) {
  2004. bp := tls.Alloc(64)
  2005. defer tls.Free(64)
  2006. var a, b, c, d Tuint32_t
  2007. var _ /* in at bp+0 */ [16]Tuint32_t
  2008. _, _, _, _ = a, b, c, d
  2009. libc.X__builtin___memcpy_chk(tls, bp, block, uint64(64), ^t__predefined_size_t(0))
  2010. a = *(*Tuint32_t)(unsafe.Pointer(state))
  2011. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  2012. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  2013. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  2014. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]
  2015. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2016. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]
  2017. d = d<<libc.Int32FromInt32(7) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2018. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]
  2019. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2020. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]
  2021. b = b<<libc.Int32FromInt32(19) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))
  2022. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]
  2023. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2024. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]
  2025. d = d<<libc.Int32FromInt32(7) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2026. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]
  2027. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2028. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]
  2029. b = b<<libc.Int32FromInt32(19) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))
  2030. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]
  2031. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2032. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]
  2033. d = d<<libc.Int32FromInt32(7) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2034. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]
  2035. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2036. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]
  2037. b = b<<libc.Int32FromInt32(19) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))
  2038. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]
  2039. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2040. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]
  2041. d = d<<libc.Int32FromInt32(7) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2042. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]
  2043. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2044. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]
  2045. b = b<<libc.Int32FromInt32(19) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))
  2046. a += b&c | b&d | c&d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0x5a827999)
  2047. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2048. d += a&b | a&c | b&c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0x5a827999)
  2049. d = d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2050. c += d&a | d&b | a&b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x5a827999)
  2051. c = c<<libc.Int32FromInt32(9) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2052. b += c&d | c&a | d&a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0x5a827999)
  2053. b = b<<libc.Int32FromInt32(13) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))
  2054. a += b&c | b&d | c&d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0x5a827999)
  2055. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2056. d += a&b | a&c | b&c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0x5a827999)
  2057. d = d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2058. c += d&a | d&b | a&b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0x5a827999)
  2059. c = c<<libc.Int32FromInt32(9) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2060. b += c&d | c&a | d&a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0x5a827999)
  2061. b = b<<libc.Int32FromInt32(13) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))
  2062. a += b&c | b&d | c&d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0x5a827999)
  2063. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2064. d += a&b | a&c | b&c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0x5a827999)
  2065. d = d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2066. c += d&a | d&b | a&b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0x5a827999)
  2067. c = c<<libc.Int32FromInt32(9) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2068. b += c&d | c&a | d&a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0x5a827999)
  2069. b = b<<libc.Int32FromInt32(13) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))
  2070. a += b&c | b&d | c&d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0x5a827999)
  2071. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2072. d += a&b | a&c | b&c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0x5a827999)
  2073. d = d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2074. c += d&a | d&b | a&b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0x5a827999)
  2075. c = c<<libc.Int32FromInt32(9) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2076. b += c&d | c&a | d&a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0x5a827999)
  2077. b = b<<libc.Int32FromInt32(13) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))
  2078. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0x6ed9eba1)
  2079. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2080. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x6ed9eba1)
  2081. d = d<<libc.Int32FromInt32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2082. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0x6ed9eba1)
  2083. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2084. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0x6ed9eba1)
  2085. b = b<<libc.Int32FromInt32(15) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2086. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0x6ed9eba1)
  2087. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2088. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0x6ed9eba1)
  2089. d = d<<libc.Int32FromInt32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2090. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0x6ed9eba1)
  2091. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2092. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0x6ed9eba1)
  2093. b = b<<libc.Int32FromInt32(15) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2094. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0x6ed9eba1)
  2095. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2096. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0x6ed9eba1)
  2097. d = d<<libc.Int32FromInt32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2098. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0x6ed9eba1)
  2099. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2100. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0x6ed9eba1)
  2101. b = b<<libc.Int32FromInt32(15) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2102. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0x6ed9eba1)
  2103. a = a<<libc.Int32FromInt32(3) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(3))
  2104. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0x6ed9eba1)
  2105. d = d<<libc.Int32FromInt32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2106. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0x6ed9eba1)
  2107. c = c<<libc.Int32FromInt32(11) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2108. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0x6ed9eba1)
  2109. b = b<<libc.Int32FromInt32(15) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2110. *(*Tuint32_t)(unsafe.Pointer(state)) += a
  2111. *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) += b
  2112. *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) += c
  2113. *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) += d
  2114. }
  2115. const m_MD5_BLOCK_LENGTH = 64
  2116. const m_MD5_DIGEST_LENGTH = 16
  2117. type TMD5_CTX = struct {
  2118. Fstate [4]Tuint32_t
  2119. Fcount Tuint64_t
  2120. Fbuffer [64]Tuint8_t
  2121. }
  2122. type TMD5Context = TMD5_CTX
  2123. /* Avoid polluting the namespace. Even though this makes this usage
  2124. * implementation-specific, defining it unconditionally should not be
  2125. * a problem, and better than possibly breaking unexpecting code. */
  2126. var _PADDING1 = [64]Tuint8_t{
  2127. 0: uint8(0x80),
  2128. }
  2129. // C documentation
  2130. //
  2131. // /*
  2132. // * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious
  2133. // * initialization constants.
  2134. // */
  2135. func XMD5Init(tls *libc.TLS, ctx uintptr) {
  2136. (*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount = uint64(0)
  2137. *(*Tuint32_t)(unsafe.Pointer(ctx)) = uint32(0x67452301)
  2138. *(*Tuint32_t)(unsafe.Pointer(ctx + 1*4)) = uint32(0xefcdab89)
  2139. *(*Tuint32_t)(unsafe.Pointer(ctx + 2*4)) = uint32(0x98badcfe)
  2140. *(*Tuint32_t)(unsafe.Pointer(ctx + 3*4)) = uint32(0x10325476)
  2141. }
  2142. // C documentation
  2143. //
  2144. // /*
  2145. // * Update context to reflect the concatenation of another buffer full
  2146. // * of bytes.
  2147. // */
  2148. func XMD5Update(tls *libc.TLS, ctx uintptr, input uintptr, len1 Tsize_t) {
  2149. var have, need Tsize_t
  2150. _, _ = have, need
  2151. /* Check how many bytes we already have and how many more we need. */
  2152. have = uint64((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> libc.Int32FromInt32(3) & libc.Uint64FromInt32(libc.Int32FromInt32(m_MD5_BLOCK_LENGTH)-libc.Int32FromInt32(1)))
  2153. need = uint64(m_MD5_BLOCK_LENGTH) - have
  2154. /* Update bitcount */
  2155. *(*Tuint64_t)(unsafe.Pointer(ctx + 16)) += len1 << int32(3)
  2156. if len1 >= need {
  2157. if have != uint64(0) {
  2158. libc.X__builtin___memcpy_chk(tls, ctx+24+uintptr(have), input, need, ^t__predefined_size_t(0))
  2159. XMD5Transform(tls, ctx, ctx+24)
  2160. input += uintptr(need)
  2161. len1 -= need
  2162. have = uint64(0)
  2163. }
  2164. /* Process data in MD5_BLOCK_LENGTH-byte chunks. */
  2165. for len1 >= uint64(m_MD5_BLOCK_LENGTH) {
  2166. XMD5Transform(tls, ctx, input)
  2167. input += uintptr(m_MD5_BLOCK_LENGTH)
  2168. len1 -= uint64(m_MD5_BLOCK_LENGTH)
  2169. }
  2170. }
  2171. /* Handle any remaining bytes of data. */
  2172. if len1 != uint64(0) {
  2173. libc.X__builtin___memcpy_chk(tls, ctx+24+uintptr(have), input, len1, ^t__predefined_size_t(0))
  2174. }
  2175. }
  2176. // C documentation
  2177. //
  2178. // /*
  2179. // * Pad pad to 64-byte boundary with the bit pattern
  2180. // * 1 0* (64-bit count of bits processed, MSB-first)
  2181. // */
  2182. func XMD5Pad(tls *libc.TLS, ctx uintptr) {
  2183. bp := tls.Alloc(16)
  2184. defer tls.Free(16)
  2185. var padlen Tsize_t
  2186. var _ /* count at bp+0 */ [8]Tuint8_t
  2187. _ = padlen
  2188. /* Convert count to 8 bytes in little endian order. */
  2189. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(7)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(56))
  2190. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(6)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(48))
  2191. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(5)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(40))
  2192. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(4)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(32))
  2193. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(3)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(24))
  2194. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(2)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(16))
  2195. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(1)] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(8))
  2196. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[0] = uint8((*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount)
  2197. /* Pad out to 56 mod 64. */
  2198. padlen = uint64(uint64(m_MD5_BLOCK_LENGTH) - (*TMD5_CTX)(unsafe.Pointer(ctx)).Fcount>>libc.Int32FromInt32(3)&libc.Uint64FromInt32(libc.Int32FromInt32(m_MD5_BLOCK_LENGTH)-libc.Int32FromInt32(1)))
  2199. if padlen < libc.Uint64FromInt32(libc.Int32FromInt32(1)+libc.Int32FromInt32(8)) {
  2200. padlen += uint64(m_MD5_BLOCK_LENGTH)
  2201. }
  2202. XMD5Update(tls, ctx, uintptr(unsafe.Pointer(&_PADDING1)), padlen-uint64(8)) /* padlen - 8 <= 64 */
  2203. XMD5Update(tls, ctx, bp, uint64(8))
  2204. }
  2205. // C documentation
  2206. //
  2207. // /*
  2208. // * Final wrapup--call MD5Pad, fill in digest and zero out ctx.
  2209. // */
  2210. func XMD5Final(tls *libc.TLS, digest uintptr, ctx uintptr) {
  2211. var i int32
  2212. _ = i
  2213. XMD5Pad(tls, ctx)
  2214. i = 0
  2215. for {
  2216. if !(i < int32(4)) {
  2217. break
  2218. }
  2219. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 3)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(24))
  2220. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 2)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(16))
  2221. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 1)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(8))
  2222. *(*uint8)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)))) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)))
  2223. goto _1
  2224. _1:
  2225. ;
  2226. i++
  2227. }
  2228. libc.X__builtin___memset_chk(tls, ctx, 0, uint64(88), ^t__predefined_size_t(0))
  2229. }
  2230. /* The four core functions - F1 is optimized somewhat */
  2231. /* #define F1(x, y, z) (x & y | ~x & z) */
  2232. /* This is the central step in the MD5 algorithm. */
  2233. // C documentation
  2234. //
  2235. // /*
  2236. // * The core of the MD5 algorithm, this alters an existing MD5 hash to
  2237. // * reflect the addition of 16 longwords of new data. MD5Update blocks
  2238. // * the data and converts bytes into longwords for this routine.
  2239. // */
  2240. func XMD5Transform(tls *libc.TLS, state uintptr, block uintptr) {
  2241. bp := tls.Alloc(64)
  2242. defer tls.Free(64)
  2243. var a, b, c, d Tuint32_t
  2244. var _ /* in at bp+0 */ [16]Tuint32_t
  2245. _, _, _, _ = a, b, c, d
  2246. libc.X__builtin___memcpy_chk(tls, bp, block, uint64(64), ^t__predefined_size_t(0))
  2247. a = *(*Tuint32_t)(unsafe.Pointer(state))
  2248. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  2249. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  2250. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  2251. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0xd76aa478)
  2252. a = a<<int32(7) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2253. a += b
  2254. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0xe8c7b756)
  2255. d = d<<int32(12) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12))
  2256. d += a
  2257. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0x242070db)
  2258. c = c<<int32(17) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(17))
  2259. c += d
  2260. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0xc1bdceee)
  2261. b = b<<int32(22) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(22))
  2262. b += c
  2263. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0xf57c0faf)
  2264. a = a<<int32(7) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2265. a += b
  2266. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0x4787c62a)
  2267. d = d<<int32(12) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12))
  2268. d += a
  2269. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0xa8304613)
  2270. c = c<<int32(17) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(17))
  2271. c += d
  2272. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0xfd469501)
  2273. b = b<<int32(22) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(22))
  2274. b += c
  2275. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x698098d8)
  2276. a = a<<int32(7) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2277. a += b
  2278. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0x8b44f7af)
  2279. d = d<<int32(12) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12))
  2280. d += a
  2281. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0xffff5bb1)
  2282. c = c<<int32(17) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(17))
  2283. c += d
  2284. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0x895cd7be)
  2285. b = b<<int32(22) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(22))
  2286. b += c
  2287. a += d ^ b&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0x6b901122)
  2288. a = a<<int32(7) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7))
  2289. a += b
  2290. d += c ^ a&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0xfd987193)
  2291. d = d<<int32(12) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12))
  2292. d += a
  2293. c += b ^ d&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0xa679438e)
  2294. c = c<<int32(17) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(17))
  2295. c += d
  2296. b += a ^ c&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0x49b40821)
  2297. b = b<<int32(22) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(22))
  2298. b += c
  2299. a += c ^ d&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0xf61e2562)
  2300. a = a<<int32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2301. a += b
  2302. d += b ^ c&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0xc040b340)
  2303. d = d<<int32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2304. d += a
  2305. c += a ^ b&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0x265e5a51)
  2306. c = c<<int32(14) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14))
  2307. c += d
  2308. b += d ^ a&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0xe9b6c7aa)
  2309. b = b<<int32(20) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(20))
  2310. b += c
  2311. a += c ^ d&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0xd62f105d)
  2312. a = a<<int32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2313. a += b
  2314. d += b ^ c&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0x02441453)
  2315. d = d<<int32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2316. d += a
  2317. c += a ^ b&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0xd8a1e681)
  2318. c = c<<int32(14) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14))
  2319. c += d
  2320. b += d ^ a&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0xe7d3fbc8)
  2321. b = b<<int32(20) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(20))
  2322. b += c
  2323. a += c ^ d&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0x21e1cde6)
  2324. a = a<<int32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2325. a += b
  2326. d += b ^ c&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0xc33707d6)
  2327. d = d<<int32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2328. d += a
  2329. c += a ^ b&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0xf4d50d87)
  2330. c = c<<int32(14) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14))
  2331. c += d
  2332. b += d ^ a&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x455a14ed)
  2333. b = b<<int32(20) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(20))
  2334. b += c
  2335. a += c ^ d&(b^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0xa9e3e905)
  2336. a = a<<int32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5))
  2337. a += b
  2338. d += b ^ c&(a^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0xfcefa3f8)
  2339. d = d<<int32(9) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9))
  2340. d += a
  2341. c += a ^ b&(d^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0x676f02d9)
  2342. c = c<<int32(14) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14))
  2343. c += d
  2344. b += d ^ a&(c^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0x8d2a4c8a)
  2345. b = b<<int32(20) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(20))
  2346. b += c
  2347. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0xfffa3942)
  2348. a = a<<int32(4) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(4))
  2349. a += b
  2350. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x8771f681)
  2351. d = d<<int32(11) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2352. d += a
  2353. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0x6d9d6122)
  2354. c = c<<int32(16) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(16))
  2355. c += d
  2356. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0xfde5380c)
  2357. b = b<<int32(23) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(23))
  2358. b += c
  2359. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0xa4beea44)
  2360. a = a<<int32(4) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(4))
  2361. a += b
  2362. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0x4bdecfa9)
  2363. d = d<<int32(11) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2364. d += a
  2365. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0xf6bb4b60)
  2366. c = c<<int32(16) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(16))
  2367. c += d
  2368. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0xbebfbc70)
  2369. b = b<<int32(23) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(23))
  2370. b += c
  2371. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0x289b7ec6)
  2372. a = a<<int32(4) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(4))
  2373. a += b
  2374. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0xeaa127fa)
  2375. d = d<<int32(11) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2376. d += a
  2377. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0xd4ef3085)
  2378. c = c<<int32(16) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(16))
  2379. c += d
  2380. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0x04881d05)
  2381. b = b<<int32(23) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(23))
  2382. b += c
  2383. a += b ^ c ^ d + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0xd9d4d039)
  2384. a = a<<int32(4) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(4))
  2385. a += b
  2386. d += a ^ b ^ c + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0xe6db99e5)
  2387. d = d<<int32(11) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))
  2388. d += a
  2389. c += d ^ a ^ b + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0x1fa27cf8)
  2390. c = c<<int32(16) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(16))
  2391. c += d
  2392. b += c ^ d ^ a + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0xc4ac5665)
  2393. b = b<<int32(23) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(23))
  2394. b += c
  2395. a += c ^ (b | ^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0] + uint32(0xf4292244)
  2396. a = a<<int32(6) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6))
  2397. a += b
  2398. d += b ^ (a | ^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)] + uint32(0x432aff97)
  2399. d = d<<int32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2400. d += a
  2401. c += a ^ (d | ^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)] + uint32(0xab9423a7)
  2402. c = c<<int32(15) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2403. c += d
  2404. b += d ^ (c | ^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)] + uint32(0xfc93a039)
  2405. b = b<<int32(21) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(21))
  2406. b += c
  2407. a += c ^ (b | ^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)] + uint32(0x655b59c3)
  2408. a = a<<int32(6) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6))
  2409. a += b
  2410. d += b ^ (a | ^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)] + uint32(0x8f0ccc92)
  2411. d = d<<int32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2412. d += a
  2413. c += a ^ (d | ^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)] + uint32(0xffeff47d)
  2414. c = c<<int32(15) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2415. c += d
  2416. b += d ^ (c | ^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)] + uint32(0x85845dd1)
  2417. b = b<<int32(21) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(21))
  2418. b += c
  2419. a += c ^ (b | ^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)] + uint32(0x6fa87e4f)
  2420. a = a<<int32(6) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6))
  2421. a += b
  2422. d += b ^ (a | ^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)] + uint32(0xfe2ce6e0)
  2423. d = d<<int32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2424. d += a
  2425. c += a ^ (d | ^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)] + uint32(0xa3014314)
  2426. c = c<<int32(15) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2427. c += d
  2428. b += d ^ (c | ^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)] + uint32(0x4e0811a1)
  2429. b = b<<int32(21) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(21))
  2430. b += c
  2431. a += c ^ (b | ^d) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)] + uint32(0xf7537e82)
  2432. a = a<<int32(6) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6))
  2433. a += b
  2434. d += b ^ (a | ^c) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)] + uint32(0xbd3af235)
  2435. d = d<<int32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2436. d += a
  2437. c += a ^ (d | ^b) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)] + uint32(0x2ad7d2bb)
  2438. c = c<<int32(15) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15))
  2439. c += d
  2440. b += d ^ (c | ^a) + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)] + uint32(0xeb86d391)
  2441. b = b<<int32(21) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(21))
  2442. b += c
  2443. *(*Tuint32_t)(unsafe.Pointer(state)) += a
  2444. *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) += b
  2445. *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) += c
  2446. *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) += d
  2447. }
  2448. const m_H0 = 1732584193
  2449. const m_H1 = 4023233417
  2450. const m_H2 = 2562383102
  2451. const m_H3 = 271733878
  2452. const m_H4 = 3285377520
  2453. const m_K0 = 0
  2454. const m_K1 = 1518500249
  2455. const m_K2 = 1859775393
  2456. const m_K3 = 2400959708
  2457. const m_K4 = 2840853838
  2458. const m_KK0 = 1352829926
  2459. const m_KK1 = 1548603684
  2460. const m_KK2 = 1836072691
  2461. const m_KK3 = 2053994217
  2462. const m_KK4 = 0
  2463. const m_RMD160_BLOCK_LENGTH = 64
  2464. const m_RMD160_DIGEST_LENGTH = 20
  2465. type TRMD160_CTX = struct {
  2466. Fstate [5]Tuint32_t
  2467. Fcount Tuint64_t
  2468. Fbuffer [64]Tuint8_t
  2469. }
  2470. type TRMD160Context = TRMD160_CTX
  2471. /* rotate x left n bits. */
  2472. var _PADDING2 = [64]Tuint8_t{
  2473. 0: uint8(0x80),
  2474. }
  2475. func XRMD160Init(tls *libc.TLS, ctx uintptr) {
  2476. (*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount = uint64(0)
  2477. *(*Tuint32_t)(unsafe.Pointer(ctx)) = uint32(0x67452301)
  2478. *(*Tuint32_t)(unsafe.Pointer(ctx + 1*4)) = uint32(0xEFCDAB89)
  2479. *(*Tuint32_t)(unsafe.Pointer(ctx + 2*4)) = uint32(0x98BADCFE)
  2480. *(*Tuint32_t)(unsafe.Pointer(ctx + 3*4)) = uint32(0x10325476)
  2481. *(*Tuint32_t)(unsafe.Pointer(ctx + 4*4)) = uint32(0xC3D2E1F0)
  2482. }
  2483. func XRMD160Update(tls *libc.TLS, ctx uintptr, input uintptr, len1 Tsize_t) {
  2484. var have, need, off Tsize_t
  2485. _, _, _ = have, need, off
  2486. have = (*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount / uint64(8) % uint64(m_RMD160_BLOCK_LENGTH)
  2487. need = uint64(m_RMD160_BLOCK_LENGTH) - have
  2488. *(*Tuint64_t)(unsafe.Pointer(ctx + 24)) += uint64(8) * len1
  2489. off = uint64(0)
  2490. if len1 >= need {
  2491. if have != 0 {
  2492. libc.X__builtin___memcpy_chk(tls, ctx+32+uintptr(have), input, need, ^t__predefined_size_t(0))
  2493. XRMD160Transform(tls, ctx, ctx+32)
  2494. off = need
  2495. have = uint64(0)
  2496. }
  2497. /* now the buffer is empty */
  2498. for off+uint64(m_RMD160_BLOCK_LENGTH) <= len1 {
  2499. XRMD160Transform(tls, ctx, input+uintptr(off))
  2500. off += uint64(m_RMD160_BLOCK_LENGTH)
  2501. }
  2502. }
  2503. if off < len1 {
  2504. libc.X__builtin___memcpy_chk(tls, ctx+32+uintptr(have), input+uintptr(off), len1-off, ^t__predefined_size_t(0))
  2505. }
  2506. }
  2507. func XRMD160Pad(tls *libc.TLS, ctx uintptr) {
  2508. bp := tls.Alloc(16)
  2509. defer tls.Free(16)
  2510. var padlen Tsize_t
  2511. var _ /* size at bp+0 */ [8]Tuint8_t
  2512. _ = padlen
  2513. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(7)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(56))
  2514. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(6)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(48))
  2515. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(5)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(40))
  2516. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(4)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(32))
  2517. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(3)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(24))
  2518. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(2)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(16))
  2519. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[int32(1)] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount >> int32(8))
  2520. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[0] = uint8((*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount)
  2521. /*
  2522. * pad to RMD160_BLOCK_LENGTH byte blocks, at least one byte from
  2523. * PADDING plus 8 bytes for the size
  2524. */
  2525. padlen = uint64(m_RMD160_BLOCK_LENGTH) - (*TRMD160_CTX)(unsafe.Pointer(ctx)).Fcount/uint64(8)%uint64(m_RMD160_BLOCK_LENGTH)
  2526. if padlen < libc.Uint64FromInt32(libc.Int32FromInt32(1)+libc.Int32FromInt32(8)) {
  2527. padlen += uint64(m_RMD160_BLOCK_LENGTH)
  2528. }
  2529. XRMD160Update(tls, ctx, uintptr(unsafe.Pointer(&_PADDING2)), padlen-uint64(8)) /* padlen - 8 <= 64 */
  2530. XRMD160Update(tls, ctx, bp, uint64(8))
  2531. }
  2532. func XRMD160Final(tls *libc.TLS, digest uintptr, ctx uintptr) {
  2533. var i int32
  2534. _ = i
  2535. XRMD160Pad(tls, ctx)
  2536. i = 0
  2537. for {
  2538. if !(i < int32(5)) {
  2539. break
  2540. }
  2541. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 3)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(24))
  2542. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 2)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(16))
  2543. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 1)) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)) >> int32(8))
  2544. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)))) = uint8(*(*Tuint32_t)(unsafe.Pointer(ctx + uintptr(i)*4)))
  2545. goto _1
  2546. _1:
  2547. ;
  2548. i++
  2549. }
  2550. libc.X__builtin___memset_chk(tls, ctx, 0, uint64(96), ^t__predefined_size_t(0))
  2551. }
  2552. func XRMD160Transform(tls *libc.TLS, state uintptr, block uintptr) {
  2553. bp := tls.Alloc(64)
  2554. defer tls.Free(64)
  2555. var a, aa, b, bb, c, cc, d, dd, e, ee, t Tuint32_t
  2556. var _ /* x at bp+0 */ [16]Tuint32_t
  2557. _, _, _, _, _, _, _, _, _, _, _ = a, aa, b, bb, c, cc, d, dd, e, ee, t
  2558. libc.X__builtin___memcpy_chk(tls, bp, block, uint64(m_RMD160_BLOCK_LENGTH), ^t__predefined_size_t(0))
  2559. a = *(*Tuint32_t)(unsafe.Pointer(state))
  2560. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  2561. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  2562. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  2563. e = *(*Tuint32_t)(unsafe.Pointer(state + 4*4))
  2564. /* Round 1 */
  2565. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+0x00000000)<<int32(11) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + e
  2566. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2567. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+0x00000000)<<int32(14) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + d
  2568. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2569. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+0x00000000)<<int32(15) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + c
  2570. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2571. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+0x00000000)<<int32(12) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + b
  2572. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2573. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+0x00000000)<<int32(5) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + a
  2574. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2575. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+0x00000000)<<int32(8) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2576. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2577. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+0x00000000)<<int32(7) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + d
  2578. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2579. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+0x00000000)<<int32(9) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2580. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2581. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+0x00000000)<<int32(11) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2582. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2583. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+0x00000000)<<int32(13) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + a
  2584. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2585. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+0x00000000)<<int32(14) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2586. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2587. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+0x00000000)<<int32(15) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + d
  2588. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2589. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+0x00000000)<<int32(6) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + c
  2590. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2591. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+0x00000000)<<int32(7) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + b
  2592. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2593. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+0x00000000)<<int32(9) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + a
  2594. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2595. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+0x00000000)<<int32(8) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2596. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #15 */
  2597. /* Round 2 */
  2598. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x5A827999))<<int32(7) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + d
  2599. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2600. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x5A827999))<<int32(6) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + c
  2601. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2602. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x5A827999))<<int32(8) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + b
  2603. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2604. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x5A827999))<<int32(13) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + a
  2605. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2606. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x5A827999))<<int32(11) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + e
  2607. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2608. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x5A827999))<<int32(9) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + d
  2609. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2610. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x5A827999))<<int32(7) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + c
  2611. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2612. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x5A827999))<<int32(15) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + b
  2613. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2614. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x5A827999))<<int32(7) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + a
  2615. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2616. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x5A827999))<<int32(12) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + e
  2617. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2618. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x5A827999))<<int32(15) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + d
  2619. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2620. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x5A827999))<<int32(9) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2621. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2622. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x5A827999))<<int32(11) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2623. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2624. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x5A827999))<<int32(7) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + a
  2625. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2626. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x5A827999))<<int32(13) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + e
  2627. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2628. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x5A827999))<<int32(12) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x5A827999))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + d
  2629. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #31 */
  2630. /* Round 3 */
  2631. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x6ED9EBA1))<<int32(11) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + c
  2632. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2633. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x6ED9EBA1))<<int32(13) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + b
  2634. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2635. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x6ED9EBA1))<<int32(6) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + a
  2636. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2637. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x6ED9EBA1))<<int32(7) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + e
  2638. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2639. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x6ED9EBA1))<<int32(14) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + d
  2640. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2641. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x6ED9EBA1))<<int32(9) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2642. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2643. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x6ED9EBA1))<<int32(13) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + b
  2644. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2645. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x6ED9EBA1))<<int32(15) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + a
  2646. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2647. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x6ED9EBA1))<<int32(14) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2648. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2649. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x6ED9EBA1))<<int32(8) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + d
  2650. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2651. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x6ED9EBA1))<<int32(13) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + c
  2652. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2653. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x6ED9EBA1))<<int32(6) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + b
  2654. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2655. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x6ED9EBA1))<<int32(5) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + a
  2656. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2657. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x6ED9EBA1))<<int32(12) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + e
  2658. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2659. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x6ED9EBA1))<<int32(7) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + d
  2660. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2661. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x6ED9EBA1))<<int32(5) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x6ED9EBA1))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2662. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #47 */
  2663. /* Round 4 */
  2664. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x8F1BBCDC))<<int32(11) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2665. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2666. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x8F1BBCDC))<<int32(12) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + a
  2667. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2668. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x8F1BBCDC))<<int32(14) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2669. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2670. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x8F1BBCDC))<<int32(15) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + d
  2671. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2672. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x8F1BBCDC))<<int32(14) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + c
  2673. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2674. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x8F1BBCDC))<<int32(15) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + b
  2675. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2676. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x8F1BBCDC))<<int32(9) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + a
  2677. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2678. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x8F1BBCDC))<<int32(8) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2679. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2680. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x8F1BBCDC))<<int32(9) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + d
  2681. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2682. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x8F1BBCDC))<<int32(14) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + c
  2683. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2684. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x8F1BBCDC))<<int32(5) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + b
  2685. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2686. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x8F1BBCDC))<<int32(6) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + a
  2687. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2688. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x8F1BBCDC))<<int32(8) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2689. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2690. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x8F1BBCDC))<<int32(6) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + d
  2691. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2692. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x8F1BBCDC))<<int32(5) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2693. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2694. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x8F1BBCDC))<<int32(12) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x8F1BBCDC))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + b
  2695. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #63 */
  2696. /* Round 5 */
  2697. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0xA953FD4E))<<int32(9) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + a
  2698. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2699. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0xA953FD4E))<<int32(15) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + e
  2700. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2701. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0xA953FD4E))<<int32(5) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + d
  2702. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2703. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0xA953FD4E))<<int32(11) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + c
  2704. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2705. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0xA953FD4E))<<int32(6) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + b
  2706. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2707. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0xA953FD4E))<<int32(8) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + a
  2708. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2709. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0xA953FD4E))<<int32(13) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + e
  2710. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2711. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0xA953FD4E))<<int32(12) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + d
  2712. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2713. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0xA953FD4E))<<int32(5) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2714. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2715. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0xA953FD4E))<<int32(12) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + b
  2716. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2717. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0xA953FD4E))<<int32(13) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + a
  2718. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2719. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0xA953FD4E))<<int32(14) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2720. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2721. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0xA953FD4E))<<int32(11) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + d
  2722. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2723. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0xA953FD4E))<<int32(8) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + c
  2724. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2725. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0xA953FD4E))<<int32(5) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + b
  2726. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2727. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0xA953FD4E))<<int32(6) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0xA953FD4E))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + a
  2728. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #79 */
  2729. aa = a
  2730. bb = b
  2731. cc = c
  2732. dd = d
  2733. ee = e
  2734. a = *(*Tuint32_t)(unsafe.Pointer(state))
  2735. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  2736. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  2737. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  2738. e = *(*Tuint32_t)(unsafe.Pointer(state + 4*4))
  2739. /* Parallel round 1 */
  2740. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x50A28BE6))<<int32(8) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2741. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2742. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x50A28BE6))<<int32(9) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + d
  2743. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2744. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x50A28BE6))<<int32(9) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2745. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2746. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x50A28BE6))<<int32(11) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2747. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2748. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x50A28BE6))<<int32(13) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + a
  2749. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2750. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x50A28BE6))<<int32(15) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + e
  2751. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2752. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x50A28BE6))<<int32(15) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + d
  2753. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2754. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x50A28BE6))<<int32(5) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2755. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2756. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x50A28BE6))<<int32(7) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + b
  2757. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2758. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x50A28BE6))<<int32(7) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + a
  2759. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2760. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x50A28BE6))<<int32(8) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2761. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2762. e = (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x50A28BE6))<<int32(11) | (e+(a^(b|^c))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + d
  2763. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2764. d = (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x50A28BE6))<<int32(14) | (d+(e^(a|^b))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + c
  2765. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2766. c = (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x50A28BE6))<<int32(14) | (c+(d^(e|^a))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + b
  2767. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2768. b = (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x50A28BE6))<<int32(12) | (b+(c^(d|^e))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + a
  2769. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2770. a = (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x50A28BE6))<<int32(6) | (a+(b^(c|^d))+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x50A28BE6))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + e
  2771. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #15 */
  2772. /* Parallel round 2 */
  2773. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x5C4DD124))<<int32(9) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + d
  2774. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2775. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x5C4DD124))<<int32(13) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + c
  2776. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2777. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x5C4DD124))<<int32(15) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + b
  2778. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2779. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x5C4DD124))<<int32(7) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + a
  2780. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2781. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x5C4DD124))<<int32(12) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + e
  2782. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2783. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x5C4DD124))<<int32(8) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + d
  2784. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2785. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x5C4DD124))<<int32(9) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2786. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2787. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x5C4DD124))<<int32(11) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2788. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2789. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x5C4DD124))<<int32(7) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + a
  2790. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2791. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x5C4DD124))<<int32(7) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + e
  2792. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2793. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x5C4DD124))<<int32(12) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + d
  2794. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2795. d = (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x5C4DD124))<<int32(7) | (d+(e&b | a & ^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + c
  2796. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2797. c = (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x5C4DD124))<<int32(6) | (c+(d&a | e & ^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + b
  2798. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2799. b = (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x5C4DD124))<<int32(15) | (b+(c&e | d & ^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + a
  2800. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2801. a = (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x5C4DD124))<<int32(13) | (a+(b&d | c & ^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + e
  2802. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2803. e = (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x5C4DD124))<<int32(11) | (e+(a&c | b & ^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x5C4DD124))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + d
  2804. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #31 */
  2805. /* Parallel round 3 */
  2806. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x6D703EF3))<<int32(9) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2807. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2808. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x6D703EF3))<<int32(7) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + b
  2809. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2810. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x6D703EF3))<<int32(15) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + a
  2811. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2812. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x6D703EF3))<<int32(11) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + e
  2813. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2814. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x6D703EF3))<<int32(8) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + d
  2815. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2816. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x6D703EF3))<<int32(6) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + c
  2817. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2818. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x6D703EF3))<<int32(6) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + b
  2819. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2820. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x6D703EF3))<<int32(14) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + a
  2821. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2822. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x6D703EF3))<<int32(12) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + e
  2823. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2824. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x6D703EF3))<<int32(13) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + d
  2825. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2826. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x6D703EF3))<<int32(5) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2827. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2828. c = (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x6D703EF3))<<int32(14) | (c+(d|^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + b
  2829. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2830. b = (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x6D703EF3))<<int32(13) | (b+(c|^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + a
  2831. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2832. a = (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x6D703EF3))<<int32(13) | (a+(b|^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + e
  2833. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2834. e = (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x6D703EF3))<<int32(7) | (e+(a|^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) + d
  2835. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2836. d = (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x6D703EF3))<<int32(5) | (d+(e|^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x6D703EF3))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + c
  2837. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #47 */
  2838. /* Parallel round 4 */
  2839. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x7A6D76E9))<<int32(15) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + b
  2840. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2841. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x7A6D76E9))<<int32(5) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + a
  2842. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2843. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x7A6D76E9))<<int32(8) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + e
  2844. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2845. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x7A6D76E9))<<int32(11) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + d
  2846. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2847. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x7A6D76E9))<<int32(14) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + c
  2848. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2849. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x7A6D76E9))<<int32(14) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + b
  2850. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2851. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x7A6D76E9))<<int32(6) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + a
  2852. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2853. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x7A6D76E9))<<int32(14) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2854. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2855. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x7A6D76E9))<<int32(6) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + d
  2856. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2857. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x7A6D76E9))<<int32(9) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2858. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2859. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x7A6D76E9))<<int32(12) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + b
  2860. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2861. b = (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x7A6D76E9))<<int32(9) | (b+(c&d|^c&e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + a
  2862. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2863. a = (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x7A6D76E9))<<int32(12) | (a+(b&c|^b&d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + e
  2864. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2865. e = (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x7A6D76E9))<<int32(5) | (e+(a&b|^a&c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + d
  2866. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2867. d = (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x7A6D76E9))<<int32(15) | (d+(e&a|^e&b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + c
  2868. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2869. c = (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x7A6D76E9))<<int32(8) | (c+(d&e|^d&a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+uint32(0x7A6D76E9))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + b
  2870. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #63 */
  2871. /* Parallel round 5 */
  2872. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+0x00000000)<<int32(8) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(12)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + a
  2873. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2874. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+0x00000000)<<int32(5) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(15)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + e
  2875. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2876. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+0x00000000)<<int32(12) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(10)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + d
  2877. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2878. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+0x00000000)<<int32(9) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(4)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(9)) + c
  2879. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2880. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+0x00000000)<<int32(12) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(1)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(12)) + b
  2881. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2882. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+0x00000000)<<int32(5) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(5)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + a
  2883. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2884. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+0x00000000)<<int32(14) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(8)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(14)) + e
  2885. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2886. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+0x00000000)<<int32(6) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(7)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + d
  2887. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2888. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+0x00000000)<<int32(8) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(6)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)) + c
  2889. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2890. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+0x00000000)<<int32(13) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(2)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + b
  2891. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2892. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+0x00000000)<<int32(6) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(13)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) + a
  2893. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2894. a = (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+0x00000000)<<int32(5) | (a+(b^c^d)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(14)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)) + e
  2895. c = c<<libc.Int32FromInt32(10) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2896. e = (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+0x00000000)<<int32(15) | (e+(a^b^c)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[0]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(15)) + d
  2897. b = b<<libc.Int32FromInt32(10) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2898. d = (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+0x00000000)<<int32(13) | (d+(e^a^b)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(3)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(13)) + c
  2899. a = a<<libc.Int32FromInt32(10) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2900. c = (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+0x00000000)<<int32(11) | (c+(d^e^a)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(9)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + b
  2901. e = e<<libc.Int32FromInt32(10) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10))
  2902. b = (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+0x00000000)<<int32(11) | (b+(c^d^e)+(*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[int32(11)]+0x00000000)>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(11)) + a
  2903. d = d<<libc.Int32FromInt32(10) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(10)) /* #79 */
  2904. t = *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) + cc + d
  2905. *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) = *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) + dd + e
  2906. *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) + ee + a
  2907. *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) = *(*Tuint32_t)(unsafe.Pointer(state + 4*4)) + aa + b
  2908. *(*Tuint32_t)(unsafe.Pointer(state + 4*4)) = *(*Tuint32_t)(unsafe.Pointer(state)) + bb + c
  2909. *(*Tuint32_t)(unsafe.Pointer(state)) = t
  2910. }
  2911. const m_SHA1_BLOCK_LENGTH = 64
  2912. const m_SHA1_DIGEST_LENGTH = 20
  2913. type TSHA1_CTX = struct {
  2914. Fstate [5]Tuint32_t
  2915. Fcount Tuint64_t
  2916. Fbuffer [64]Tuint8_t
  2917. }
  2918. /*
  2919. * blk0() and blk() perform the initial expand.
  2920. * I got the idea of expanding during the round function from SSLeay
  2921. */
  2922. /*
  2923. * (R0+R1), R2, R3, R4 are the different operations (rounds) used in SHA1
  2924. */
  2925. type TCHAR64LONG16 = struct {
  2926. Fl [0][16]Tuint32_t
  2927. Fc [64]Tuint8_t
  2928. }
  2929. // C documentation
  2930. //
  2931. // /*
  2932. // * Hash a single 512-bit block. This is the core of the algorithm.
  2933. // */
  2934. func XSHA1Transform(tls *libc.TLS, state uintptr, buffer uintptr) {
  2935. bp := tls.Alloc(64)
  2936. defer tls.Free(64)
  2937. var a, b, c, d, e, v1, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v2, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v3, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v4, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v5, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v6, v60, v61, v62, v63, v64, v65, v66, v67, v68, v69, v7, v70, v71, v72, v73, v74, v75, v76, v77, v78, v79, v8, v80, v81, v82, v83, v84, v9 Tuint32_t
  2938. var block uintptr
  2939. var _ /* workspace at bp+0 */ [64]Tuint8_t
  2940. _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = a, b, block, c, d, e, v1, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v2, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v3, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v4, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v5, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v6, v60, v61, v62, v63, v64, v65, v66, v67, v68, v69, v7, v70, v71, v72, v73, v74, v75, v76, v77, v78, v79, v8, v80, v81, v82, v83, v84, v9
  2941. block = bp
  2942. libc.X__builtin___memcpy_chk(tls, block, buffer, uint64(m_SHA1_BLOCK_LENGTH), ^t__predefined_size_t(0))
  2943. /* Copy context->state[] to working vars */
  2944. a = *(*Tuint32_t)(unsafe.Pointer(state))
  2945. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  2946. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  2947. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  2948. e = *(*Tuint32_t)(unsafe.Pointer(state + 4*4))
  2949. /* 4 rounds of 20 operations each. Loop unrolled. */
  2950. v1 = (*(*Tuint32_t)(unsafe.Pointer(block))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2951. *(*Tuint32_t)(unsafe.Pointer(block)) = v1
  2952. e += b&(c^d) ^ d + v1 + uint32(0x5A827999) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2953. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2954. v2 = (*(*Tuint32_t)(unsafe.Pointer(block + 1*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 1*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 1*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 1*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2955. *(*Tuint32_t)(unsafe.Pointer(block + 1*4)) = v2
  2956. d += a&(b^c) ^ c + v2 + uint32(0x5A827999) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2957. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2958. v3 = (*(*Tuint32_t)(unsafe.Pointer(block + 2*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 2*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 2*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 2*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2959. *(*Tuint32_t)(unsafe.Pointer(block + 2*4)) = v3
  2960. c += e&(a^b) ^ b + v3 + uint32(0x5A827999) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2961. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2962. v4 = (*(*Tuint32_t)(unsafe.Pointer(block + 3*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 3*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 3*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 3*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2963. *(*Tuint32_t)(unsafe.Pointer(block + 3*4)) = v4
  2964. b += d&(e^a) ^ a + v4 + uint32(0x5A827999) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2965. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2966. v5 = (*(*Tuint32_t)(unsafe.Pointer(block + 4*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 4*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 4*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 4*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2967. *(*Tuint32_t)(unsafe.Pointer(block + 4*4)) = v5
  2968. a += c&(d^e) ^ e + v5 + uint32(0x5A827999) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2969. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2970. v6 = (*(*Tuint32_t)(unsafe.Pointer(block + 5*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 5*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 5*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 5*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2971. *(*Tuint32_t)(unsafe.Pointer(block + 5*4)) = v6
  2972. e += b&(c^d) ^ d + v6 + uint32(0x5A827999) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2973. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2974. v7 = (*(*Tuint32_t)(unsafe.Pointer(block + 6*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 6*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 6*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 6*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2975. *(*Tuint32_t)(unsafe.Pointer(block + 6*4)) = v7
  2976. d += a&(b^c) ^ c + v7 + uint32(0x5A827999) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2977. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2978. v8 = (*(*Tuint32_t)(unsafe.Pointer(block + 7*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 7*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 7*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 7*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2979. *(*Tuint32_t)(unsafe.Pointer(block + 7*4)) = v8
  2980. c += e&(a^b) ^ b + v8 + uint32(0x5A827999) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2981. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2982. v9 = (*(*Tuint32_t)(unsafe.Pointer(block + 8*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 8*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 8*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 8*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2983. *(*Tuint32_t)(unsafe.Pointer(block + 8*4)) = v9
  2984. b += d&(e^a) ^ a + v9 + uint32(0x5A827999) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2985. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2986. v10 = (*(*Tuint32_t)(unsafe.Pointer(block + 9*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 9*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 9*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 9*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2987. *(*Tuint32_t)(unsafe.Pointer(block + 9*4)) = v10
  2988. a += c&(d^e) ^ e + v10 + uint32(0x5A827999) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2989. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2990. v11 = (*(*Tuint32_t)(unsafe.Pointer(block + 10*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 10*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 10*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 10*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2991. *(*Tuint32_t)(unsafe.Pointer(block + 10*4)) = v11
  2992. e += b&(c^d) ^ d + v11 + uint32(0x5A827999) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2993. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2994. v12 = (*(*Tuint32_t)(unsafe.Pointer(block + 11*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 11*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 11*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 11*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2995. *(*Tuint32_t)(unsafe.Pointer(block + 11*4)) = v12
  2996. d += a&(b^c) ^ c + v12 + uint32(0x5A827999) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  2997. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  2998. v13 = (*(*Tuint32_t)(unsafe.Pointer(block + 12*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 12*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 12*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 12*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  2999. *(*Tuint32_t)(unsafe.Pointer(block + 12*4)) = v13
  3000. c += e&(a^b) ^ b + v13 + uint32(0x5A827999) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3001. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3002. v14 = (*(*Tuint32_t)(unsafe.Pointer(block + 13*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 13*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 13*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 13*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  3003. *(*Tuint32_t)(unsafe.Pointer(block + 13*4)) = v14
  3004. b += d&(e^a) ^ a + v14 + uint32(0x5A827999) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3005. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3006. v15 = (*(*Tuint32_t)(unsafe.Pointer(block + 14*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 14*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 14*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 14*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  3007. *(*Tuint32_t)(unsafe.Pointer(block + 14*4)) = v15
  3008. a += c&(d^e) ^ e + v15 + uint32(0x5A827999) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3009. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3010. v16 = (*(*Tuint32_t)(unsafe.Pointer(block + 15*4))<<libc.Int32FromInt32(24)|*(*Tuint32_t)(unsafe.Pointer(block + 15*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(24)))&libc.Uint32FromUint32(0xFF00FF00) | (*(*Tuint32_t)(unsafe.Pointer(block + 15*4))<<libc.Int32FromInt32(8)|*(*Tuint32_t)(unsafe.Pointer(block + 15*4))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(8)))&libc.Uint32FromInt32(0x00FF00FF)
  3011. *(*Tuint32_t)(unsafe.Pointer(block + 15*4)) = v16
  3012. e += b&(c^d) ^ d + v16 + uint32(0x5A827999) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3013. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3014. v17 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(16)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(16)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(16)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3015. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(16)&libc.Int32FromInt32(15))*4)) = v17
  3016. d += a&(b^c) ^ c + v17 + uint32(0x5A827999) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3017. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3018. v18 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(17)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(17)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(17)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3019. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(17)&libc.Int32FromInt32(15))*4)) = v18
  3020. c += e&(a^b) ^ b + v18 + uint32(0x5A827999) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3021. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3022. v19 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(18)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(18)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(18)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3023. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(18)&libc.Int32FromInt32(15))*4)) = v19
  3024. b += d&(e^a) ^ a + v19 + uint32(0x5A827999) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3025. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3026. v20 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(19)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(19)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(19)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3027. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(19)&libc.Int32FromInt32(15))*4)) = v20
  3028. a += c&(d^e) ^ e + v20 + uint32(0x5A827999) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3029. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3030. v21 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(20)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(20)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(20)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3031. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(20)&libc.Int32FromInt32(15))*4)) = v21
  3032. e += b ^ c ^ d + v21 + uint32(0x6ED9EBA1) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3033. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3034. v22 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(21)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(21)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(21)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3035. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(21)&libc.Int32FromInt32(15))*4)) = v22
  3036. d += a ^ b ^ c + v22 + uint32(0x6ED9EBA1) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3037. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3038. v23 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(22)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(22)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(22)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3039. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(22)&libc.Int32FromInt32(15))*4)) = v23
  3040. c += e ^ a ^ b + v23 + uint32(0x6ED9EBA1) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3041. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3042. v24 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(23)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(23)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(23)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3043. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(23)&libc.Int32FromInt32(15))*4)) = v24
  3044. b += d ^ e ^ a + v24 + uint32(0x6ED9EBA1) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3045. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3046. v25 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(24)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(24)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(24)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3047. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(24)&libc.Int32FromInt32(15))*4)) = v25
  3048. a += c ^ d ^ e + v25 + uint32(0x6ED9EBA1) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3049. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3050. v26 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(25)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(25)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(25)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3051. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(25)&libc.Int32FromInt32(15))*4)) = v26
  3052. e += b ^ c ^ d + v26 + uint32(0x6ED9EBA1) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3053. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3054. v27 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(26)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(26)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(26)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3055. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(26)&libc.Int32FromInt32(15))*4)) = v27
  3056. d += a ^ b ^ c + v27 + uint32(0x6ED9EBA1) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3057. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3058. v28 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(27)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(27)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(27)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3059. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(27)&libc.Int32FromInt32(15))*4)) = v28
  3060. c += e ^ a ^ b + v28 + uint32(0x6ED9EBA1) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3061. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3062. v29 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(28)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(28)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(28)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3063. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(28)&libc.Int32FromInt32(15))*4)) = v29
  3064. b += d ^ e ^ a + v29 + uint32(0x6ED9EBA1) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3065. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3066. v30 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(29)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(29)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(29)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3067. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(29)&libc.Int32FromInt32(15))*4)) = v30
  3068. a += c ^ d ^ e + v30 + uint32(0x6ED9EBA1) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3069. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3070. v31 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(30)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(30)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(30)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3071. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(30)&libc.Int32FromInt32(15))*4)) = v31
  3072. e += b ^ c ^ d + v31 + uint32(0x6ED9EBA1) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3073. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3074. v32 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(31)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(31)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(31)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3075. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(31)&libc.Int32FromInt32(15))*4)) = v32
  3076. d += a ^ b ^ c + v32 + uint32(0x6ED9EBA1) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3077. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3078. v33 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(32)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(32)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(32)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3079. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(32)&libc.Int32FromInt32(15))*4)) = v33
  3080. c += e ^ a ^ b + v33 + uint32(0x6ED9EBA1) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3081. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3082. v34 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(33)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(33)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(33)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3083. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(33)&libc.Int32FromInt32(15))*4)) = v34
  3084. b += d ^ e ^ a + v34 + uint32(0x6ED9EBA1) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3085. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3086. v35 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(34)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(34)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(34)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3087. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(34)&libc.Int32FromInt32(15))*4)) = v35
  3088. a += c ^ d ^ e + v35 + uint32(0x6ED9EBA1) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3089. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3090. v36 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(35)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(35)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(35)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3091. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(35)&libc.Int32FromInt32(15))*4)) = v36
  3092. e += b ^ c ^ d + v36 + uint32(0x6ED9EBA1) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3093. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3094. v37 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(36)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(36)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(36)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3095. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(36)&libc.Int32FromInt32(15))*4)) = v37
  3096. d += a ^ b ^ c + v37 + uint32(0x6ED9EBA1) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3097. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3098. v38 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(37)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(37)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(37)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3099. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(37)&libc.Int32FromInt32(15))*4)) = v38
  3100. c += e ^ a ^ b + v38 + uint32(0x6ED9EBA1) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3101. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3102. v39 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(38)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(38)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(38)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3103. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(38)&libc.Int32FromInt32(15))*4)) = v39
  3104. b += d ^ e ^ a + v39 + uint32(0x6ED9EBA1) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3105. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3106. v40 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(39)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(39)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(39)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3107. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(39)&libc.Int32FromInt32(15))*4)) = v40
  3108. a += c ^ d ^ e + v40 + uint32(0x6ED9EBA1) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3109. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3110. v41 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(40)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(40)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(40)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3111. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(40)&libc.Int32FromInt32(15))*4)) = v41
  3112. e += (b|c)&d | b&c + v41 + uint32(0x8F1BBCDC) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3113. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3114. v42 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(41)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(41)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(41)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3115. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(41)&libc.Int32FromInt32(15))*4)) = v42
  3116. d += (a|b)&c | a&b + v42 + uint32(0x8F1BBCDC) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3117. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3118. v43 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(42)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(42)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(42)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3119. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(42)&libc.Int32FromInt32(15))*4)) = v43
  3120. c += (e|a)&b | e&a + v43 + uint32(0x8F1BBCDC) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3121. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3122. v44 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(43)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(43)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(43)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3123. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(43)&libc.Int32FromInt32(15))*4)) = v44
  3124. b += (d|e)&a | d&e + v44 + uint32(0x8F1BBCDC) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3125. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3126. v45 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(44)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(44)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(44)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3127. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(44)&libc.Int32FromInt32(15))*4)) = v45
  3128. a += (c|d)&e | c&d + v45 + uint32(0x8F1BBCDC) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3129. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3130. v46 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(45)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(45)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(45)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3131. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(45)&libc.Int32FromInt32(15))*4)) = v46
  3132. e += (b|c)&d | b&c + v46 + uint32(0x8F1BBCDC) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3133. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3134. v47 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(46)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(46)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(46)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3135. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(46)&libc.Int32FromInt32(15))*4)) = v47
  3136. d += (a|b)&c | a&b + v47 + uint32(0x8F1BBCDC) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3137. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3138. v48 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(47)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(47)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(47)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3139. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(47)&libc.Int32FromInt32(15))*4)) = v48
  3140. c += (e|a)&b | e&a + v48 + uint32(0x8F1BBCDC) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3141. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3142. v49 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(48)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(48)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(48)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3143. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(48)&libc.Int32FromInt32(15))*4)) = v49
  3144. b += (d|e)&a | d&e + v49 + uint32(0x8F1BBCDC) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3145. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3146. v50 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(49)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(49)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(49)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3147. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(49)&libc.Int32FromInt32(15))*4)) = v50
  3148. a += (c|d)&e | c&d + v50 + uint32(0x8F1BBCDC) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3149. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3150. v51 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(50)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(50)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(50)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3151. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(50)&libc.Int32FromInt32(15))*4)) = v51
  3152. e += (b|c)&d | b&c + v51 + uint32(0x8F1BBCDC) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3153. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3154. v52 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(51)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(51)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(51)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3155. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(51)&libc.Int32FromInt32(15))*4)) = v52
  3156. d += (a|b)&c | a&b + v52 + uint32(0x8F1BBCDC) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3157. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3158. v53 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(52)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(52)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(52)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3159. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(52)&libc.Int32FromInt32(15))*4)) = v53
  3160. c += (e|a)&b | e&a + v53 + uint32(0x8F1BBCDC) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3161. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3162. v54 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(53)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(53)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(53)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3163. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(53)&libc.Int32FromInt32(15))*4)) = v54
  3164. b += (d|e)&a | d&e + v54 + uint32(0x8F1BBCDC) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3165. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3166. v55 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(54)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(54)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(54)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3167. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(54)&libc.Int32FromInt32(15))*4)) = v55
  3168. a += (c|d)&e | c&d + v55 + uint32(0x8F1BBCDC) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3169. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3170. v56 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(55)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(55)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(55)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3171. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(55)&libc.Int32FromInt32(15))*4)) = v56
  3172. e += (b|c)&d | b&c + v56 + uint32(0x8F1BBCDC) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3173. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3174. v57 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(56)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(56)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(56)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3175. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(56)&libc.Int32FromInt32(15))*4)) = v57
  3176. d += (a|b)&c | a&b + v57 + uint32(0x8F1BBCDC) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3177. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3178. v58 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(57)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(57)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(57)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3179. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(57)&libc.Int32FromInt32(15))*4)) = v58
  3180. c += (e|a)&b | e&a + v58 + uint32(0x8F1BBCDC) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3181. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3182. v59 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(58)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(58)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(58)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3183. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(58)&libc.Int32FromInt32(15))*4)) = v59
  3184. b += (d|e)&a | d&e + v59 + uint32(0x8F1BBCDC) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3185. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3186. v60 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(59)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(59)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(59)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3187. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(59)&libc.Int32FromInt32(15))*4)) = v60
  3188. a += (c|d)&e | c&d + v60 + uint32(0x8F1BBCDC) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3189. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3190. v61 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(60)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(60)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(60)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3191. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(60)&libc.Int32FromInt32(15))*4)) = v61
  3192. e += b ^ c ^ d + v61 + uint32(0xCA62C1D6) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3193. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3194. v62 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(61)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(61)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(61)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3195. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(61)&libc.Int32FromInt32(15))*4)) = v62
  3196. d += a ^ b ^ c + v62 + uint32(0xCA62C1D6) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3197. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3198. v63 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(62)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(62)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(62)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3199. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(62)&libc.Int32FromInt32(15))*4)) = v63
  3200. c += e ^ a ^ b + v63 + uint32(0xCA62C1D6) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3201. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3202. v64 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(63)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(63)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(63)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3203. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(63)&libc.Int32FromInt32(15))*4)) = v64
  3204. b += d ^ e ^ a + v64 + uint32(0xCA62C1D6) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3205. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3206. v65 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(64)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(64)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(64)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3207. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(64)&libc.Int32FromInt32(15))*4)) = v65
  3208. a += c ^ d ^ e + v65 + uint32(0xCA62C1D6) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3209. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3210. v66 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(65)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(65)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(65)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3211. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(65)&libc.Int32FromInt32(15))*4)) = v66
  3212. e += b ^ c ^ d + v66 + uint32(0xCA62C1D6) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3213. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3214. v67 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(66)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(66)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(66)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3215. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(66)&libc.Int32FromInt32(15))*4)) = v67
  3216. d += a ^ b ^ c + v67 + uint32(0xCA62C1D6) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3217. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3218. v68 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(67)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(67)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(67)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3219. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(67)&libc.Int32FromInt32(15))*4)) = v68
  3220. c += e ^ a ^ b + v68 + uint32(0xCA62C1D6) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3221. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3222. v69 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(68)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(68)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(68)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3223. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(68)&libc.Int32FromInt32(15))*4)) = v69
  3224. b += d ^ e ^ a + v69 + uint32(0xCA62C1D6) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3225. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3226. v70 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(69)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(69)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(69)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3227. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(69)&libc.Int32FromInt32(15))*4)) = v70
  3228. a += c ^ d ^ e + v70 + uint32(0xCA62C1D6) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3229. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3230. v71 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(70)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(70)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(70)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3231. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(70)&libc.Int32FromInt32(15))*4)) = v71
  3232. e += b ^ c ^ d + v71 + uint32(0xCA62C1D6) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3233. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3234. v72 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(71)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(71)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(71)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3235. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(71)&libc.Int32FromInt32(15))*4)) = v72
  3236. d += a ^ b ^ c + v72 + uint32(0xCA62C1D6) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3237. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3238. v73 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(72)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(72)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(72)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3239. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(72)&libc.Int32FromInt32(15))*4)) = v73
  3240. c += e ^ a ^ b + v73 + uint32(0xCA62C1D6) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3241. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3242. v74 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(73)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(73)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(73)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3243. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(73)&libc.Int32FromInt32(15))*4)) = v74
  3244. b += d ^ e ^ a + v74 + uint32(0xCA62C1D6) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3245. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3246. v75 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(74)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(74)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(74)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3247. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(74)&libc.Int32FromInt32(15))*4)) = v75
  3248. a += c ^ d ^ e + v75 + uint32(0xCA62C1D6) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3249. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3250. v76 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(75)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(75)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(75)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3251. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(75)&libc.Int32FromInt32(15))*4)) = v76
  3252. e += b ^ c ^ d + v76 + uint32(0xCA62C1D6) + (a<<libc.Int32FromInt32(5) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3253. b = b<<libc.Int32FromInt32(30) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3254. v77 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(76)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(76)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(76)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3255. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(76)&libc.Int32FromInt32(15))*4)) = v77
  3256. d += a ^ b ^ c + v77 + uint32(0xCA62C1D6) + (e<<libc.Int32FromInt32(5) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3257. a = a<<libc.Int32FromInt32(30) | a>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3258. v78 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(77)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(77)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(77)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3259. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(77)&libc.Int32FromInt32(15))*4)) = v78
  3260. c += e ^ a ^ b + v78 + uint32(0xCA62C1D6) + (d<<libc.Int32FromInt32(5) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3261. e = e<<libc.Int32FromInt32(30) | e>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3262. v79 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(78)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(78)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(78)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3263. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(78)&libc.Int32FromInt32(15))*4)) = v79
  3264. b += d ^ e ^ a + v79 + uint32(0xCA62C1D6) + (c<<libc.Int32FromInt32(5) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3265. d = d<<libc.Int32FromInt32(30) | d>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3266. v80 = (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(79)&libc.Int32FromInt32(15))*4)))<<libc.Int32FromInt32(1) | (*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(13))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(8))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr((libc.Int32FromInt32(79)+libc.Int32FromInt32(2))&libc.Int32FromInt32(15))*4))^*(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(79)&libc.Int32FromInt32(15))*4)))>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(1))
  3267. *(*Tuint32_t)(unsafe.Pointer(block + uintptr(libc.Int32FromInt32(79)&libc.Int32FromInt32(15))*4)) = v80
  3268. a += c ^ d ^ e + v80 + uint32(0xCA62C1D6) + (b<<libc.Int32FromInt32(5) | b>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(5)))
  3269. c = c<<libc.Int32FromInt32(30) | c>>(libc.Int32FromInt32(32)-libc.Int32FromInt32(30))
  3270. /* Add the working vars back into context.state[] */
  3271. *(*Tuint32_t)(unsafe.Pointer(state)) += a
  3272. *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) += b
  3273. *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) += c
  3274. *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) += d
  3275. *(*Tuint32_t)(unsafe.Pointer(state + 4*4)) += e
  3276. /* Wipe variables */
  3277. v84 = libc.Uint32FromInt32(0)
  3278. e = v84
  3279. v83 = v84
  3280. d = v83
  3281. v82 = v83
  3282. c = v82
  3283. v81 = v82
  3284. b = v81
  3285. a = v81
  3286. }
  3287. // C documentation
  3288. //
  3289. // /*
  3290. // * SHA1Init - Initialize new context
  3291. // */
  3292. func XSHA1Init(tls *libc.TLS, context uintptr) {
  3293. /* SHA1 initialization constants */
  3294. (*TSHA1_CTX)(unsafe.Pointer(context)).Fcount = uint64(0)
  3295. *(*Tuint32_t)(unsafe.Pointer(context)) = uint32(0x67452301)
  3296. *(*Tuint32_t)(unsafe.Pointer(context + 1*4)) = uint32(0xEFCDAB89)
  3297. *(*Tuint32_t)(unsafe.Pointer(context + 2*4)) = uint32(0x98BADCFE)
  3298. *(*Tuint32_t)(unsafe.Pointer(context + 3*4)) = uint32(0x10325476)
  3299. *(*Tuint32_t)(unsafe.Pointer(context + 4*4)) = uint32(0xC3D2E1F0)
  3300. }
  3301. // C documentation
  3302. //
  3303. // /*
  3304. // * Run your data through this.
  3305. // */
  3306. func XSHA1Update(tls *libc.TLS, context uintptr, data uintptr, len1 Tsize_t) {
  3307. var i, j, v1 Tsize_t
  3308. _, _, _ = i, j, v1
  3309. j = uint64((*TSHA1_CTX)(unsafe.Pointer(context)).Fcount >> libc.Int32FromInt32(3) & libc.Uint64FromInt32(63))
  3310. *(*Tuint64_t)(unsafe.Pointer(context + 24)) += uint64(len1 << libc.Int32FromInt32(3))
  3311. if j+len1 > uint64(63) {
  3312. v1 = libc.Uint64FromInt32(64) - j
  3313. i = v1
  3314. libc.X__builtin___memcpy_chk(tls, context+32+uintptr(j), data, v1, ^t__predefined_size_t(0))
  3315. XSHA1Transform(tls, context, context+32)
  3316. for {
  3317. if !(i+uint64(63) < len1) {
  3318. break
  3319. }
  3320. XSHA1Transform(tls, context, data+uintptr(i))
  3321. goto _2
  3322. _2:
  3323. ;
  3324. i += uint64(64)
  3325. }
  3326. j = uint64(0)
  3327. } else {
  3328. i = uint64(0)
  3329. }
  3330. libc.X__builtin___memcpy_chk(tls, context+32+uintptr(j), data+uintptr(i), len1-i, ^t__predefined_size_t(0))
  3331. }
  3332. // C documentation
  3333. //
  3334. // /*
  3335. // * Add padding and return the message digest.
  3336. // */
  3337. func XSHA1Pad(tls *libc.TLS, context uintptr) {
  3338. bp := tls.Alloc(16)
  3339. defer tls.Free(16)
  3340. var i uint32
  3341. var _ /* finalcount at bp+0 */ [8]Tuint8_t
  3342. _ = i
  3343. i = uint32(0)
  3344. for {
  3345. if !(i < uint32(8)) {
  3346. break
  3347. }
  3348. (*(*[8]Tuint8_t)(unsafe.Pointer(bp)))[i] = uint8((*TSHA1_CTX)(unsafe.Pointer(context)).Fcount >> ((libc.Uint32FromInt32(7) - i&libc.Uint32FromInt32(7)) * libc.Uint32FromInt32(8)) & libc.Uint64FromInt32(255)) /* Endian independent */
  3349. goto _1
  3350. _1:
  3351. ;
  3352. i++
  3353. }
  3354. XSHA1Update(tls, context, __ccgo_ts+153, uint64(1))
  3355. for (*TSHA1_CTX)(unsafe.Pointer(context)).Fcount&uint64(504) != uint64(448) {
  3356. XSHA1Update(tls, context, __ccgo_ts+155, uint64(1))
  3357. }
  3358. XSHA1Update(tls, context, bp, uint64(8)) /* Should cause a SHA1Transform() */
  3359. }
  3360. func XSHA1Final(tls *libc.TLS, digest uintptr, context uintptr) {
  3361. var i uint32
  3362. _ = i
  3363. XSHA1Pad(tls, context)
  3364. i = uint32(0)
  3365. for {
  3366. if !(i < uint32(m_SHA1_DIGEST_LENGTH)) {
  3367. break
  3368. }
  3369. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i))) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i>>int32(2))*4)) >> ((libc.Uint32FromInt32(3) - i&libc.Uint32FromInt32(3)) * libc.Uint32FromInt32(8)) & libc.Uint32FromInt32(255))
  3370. goto _1
  3371. _1:
  3372. ;
  3373. i++
  3374. }
  3375. libc.X__builtin___memset_chk(tls, context, 0, uint64(96), ^t__predefined_size_t(0))
  3376. }
  3377. const m_SHA224_BLOCK_LENGTH = 64
  3378. const m_SHA224_DIGEST_LENGTH = 28
  3379. const m_SHA256_BLOCK_LENGTH = 64
  3380. const m_SHA256_DIGEST_LENGTH = 32
  3381. const m_SHA384_BLOCK_LENGTH = 128
  3382. const m_SHA384_DIGEST_LENGTH = 48
  3383. const m_SHA512_256_BLOCK_LENGTH = 128
  3384. const m_SHA512_256_DIGEST_LENGTH = 32
  3385. const m_SHA512_BLOCK_LENGTH = 128
  3386. const m_SHA512_DIGEST_LENGTH = 64
  3387. type TSHA2_CTX = struct {
  3388. Fstate struct {
  3389. Fst64 [0][8]Tuint64_t
  3390. Fst32 [8]Tuint32_t
  3391. F__ccgo_pad2 [32]byte
  3392. }
  3393. Fbitcount [2]Tuint64_t
  3394. Fbuffer [128]Tuint8_t
  3395. }
  3396. type T_SHA2_CTX = TSHA2_CTX
  3397. /*
  3398. * UNROLLED TRANSFORM LOOP NOTE:
  3399. * You can define SHA2_UNROLL_TRANSFORM to use the unrolled transform
  3400. * loop version for the hash transform rounds (defined using macros
  3401. * later in this file). Either define on the command line, for example:
  3402. *
  3403. * cc -DSHA2_UNROLL_TRANSFORM -o sha2 sha2.c sha2prog.c
  3404. *
  3405. * or define below:
  3406. *
  3407. * #define SHA2_UNROLL_TRANSFORM
  3408. *
  3409. */
  3410. /*** SHA-224/256/384/512 Various Length Definitions ***********************/
  3411. /* NOTE: Most of these are in sha2.h */
  3412. /*** ENDIAN SPECIFIC COPY MACROS **************************************/
  3413. /*
  3414. * Macro for incrementally adding the unsigned 64-bit integer n to the
  3415. * unsigned 128-bit integer (represented using a two-element array of
  3416. * 64-bit words):
  3417. */
  3418. /*** THE SIX LOGICAL FUNCTIONS ****************************************/
  3419. /*
  3420. * Bit shifting and rotation (used by the six SHA-XYZ logical functions:
  3421. *
  3422. * NOTE: The naming of R and S appears backwards here (R is a SHIFT and
  3423. * S is a ROTATION) because the SHA-224/256/384/512 description document
  3424. * (see http://csrc.nist.gov/cryptval/shs/sha256-384-512.pdf) uses this
  3425. * same "backwards" definition.
  3426. */
  3427. /* Shift-right (used in SHA-224, SHA-256, SHA-384, and SHA-512): */
  3428. /* 32-bit Rotate-right (used in SHA-224 and SHA-256): */
  3429. /* 64-bit Rotate-right (used in SHA-384 and SHA-512): */
  3430. /* Two of six logical functions used in SHA-224, SHA-256, SHA-384, and SHA-512: */
  3431. /* Four of six logical functions used in SHA-224 and SHA-256: */
  3432. /* Four of six logical functions used in SHA-384 and SHA-512: */
  3433. // C documentation
  3434. //
  3435. // /*** SHA-XYZ INITIAL HASH VALUES AND CONSTANTS ************************/
  3436. // /* Hash constant words K for SHA-224 and SHA-256: */
  3437. var _K256 = [64]Tuint32_t{
  3438. 0: uint32(0x428a2f98),
  3439. 1: uint32(0x71374491),
  3440. 2: uint32(0xb5c0fbcf),
  3441. 3: uint32(0xe9b5dba5),
  3442. 4: uint32(0x3956c25b),
  3443. 5: uint32(0x59f111f1),
  3444. 6: uint32(0x923f82a4),
  3445. 7: uint32(0xab1c5ed5),
  3446. 8: uint32(0xd807aa98),
  3447. 9: uint32(0x12835b01),
  3448. 10: uint32(0x243185be),
  3449. 11: uint32(0x550c7dc3),
  3450. 12: uint32(0x72be5d74),
  3451. 13: uint32(0x80deb1fe),
  3452. 14: uint32(0x9bdc06a7),
  3453. 15: uint32(0xc19bf174),
  3454. 16: uint32(0xe49b69c1),
  3455. 17: uint32(0xefbe4786),
  3456. 18: uint32(0x0fc19dc6),
  3457. 19: uint32(0x240ca1cc),
  3458. 20: uint32(0x2de92c6f),
  3459. 21: uint32(0x4a7484aa),
  3460. 22: uint32(0x5cb0a9dc),
  3461. 23: uint32(0x76f988da),
  3462. 24: uint32(0x983e5152),
  3463. 25: uint32(0xa831c66d),
  3464. 26: uint32(0xb00327c8),
  3465. 27: uint32(0xbf597fc7),
  3466. 28: uint32(0xc6e00bf3),
  3467. 29: uint32(0xd5a79147),
  3468. 30: uint32(0x06ca6351),
  3469. 31: uint32(0x14292967),
  3470. 32: uint32(0x27b70a85),
  3471. 33: uint32(0x2e1b2138),
  3472. 34: uint32(0x4d2c6dfc),
  3473. 35: uint32(0x53380d13),
  3474. 36: uint32(0x650a7354),
  3475. 37: uint32(0x766a0abb),
  3476. 38: uint32(0x81c2c92e),
  3477. 39: uint32(0x92722c85),
  3478. 40: uint32(0xa2bfe8a1),
  3479. 41: uint32(0xa81a664b),
  3480. 42: uint32(0xc24b8b70),
  3481. 43: uint32(0xc76c51a3),
  3482. 44: uint32(0xd192e819),
  3483. 45: uint32(0xd6990624),
  3484. 46: uint32(0xf40e3585),
  3485. 47: uint32(0x106aa070),
  3486. 48: uint32(0x19a4c116),
  3487. 49: uint32(0x1e376c08),
  3488. 50: uint32(0x2748774c),
  3489. 51: uint32(0x34b0bcb5),
  3490. 52: uint32(0x391c0cb3),
  3491. 53: uint32(0x4ed8aa4a),
  3492. 54: uint32(0x5b9cca4f),
  3493. 55: uint32(0x682e6ff3),
  3494. 56: uint32(0x748f82ee),
  3495. 57: uint32(0x78a5636f),
  3496. 58: uint32(0x84c87814),
  3497. 59: uint32(0x8cc70208),
  3498. 60: uint32(0x90befffa),
  3499. 61: uint32(0xa4506ceb),
  3500. 62: uint32(0xbef9a3f7),
  3501. 63: uint32(0xc67178f2),
  3502. }
  3503. // C documentation
  3504. //
  3505. // /* Initial hash value H for SHA-256: */
  3506. var _sha256_initial_hash_value = [8]Tuint32_t{
  3507. 0: uint32(0x6a09e667),
  3508. 1: uint32(0xbb67ae85),
  3509. 2: uint32(0x3c6ef372),
  3510. 3: uint32(0xa54ff53a),
  3511. 4: uint32(0x510e527f),
  3512. 5: uint32(0x9b05688c),
  3513. 6: uint32(0x1f83d9ab),
  3514. 7: uint32(0x5be0cd19),
  3515. }
  3516. // C documentation
  3517. //
  3518. // /* Hash constant words K for SHA-384 and SHA-512: */
  3519. var _K512 = [80]Tuint64_t{
  3520. 0: uint64(0x428a2f98d728ae22),
  3521. 1: uint64(0x7137449123ef65cd),
  3522. 2: uint64(0xb5c0fbcfec4d3b2f),
  3523. 3: uint64(0xe9b5dba58189dbbc),
  3524. 4: uint64(0x3956c25bf348b538),
  3525. 5: uint64(0x59f111f1b605d019),
  3526. 6: uint64(0x923f82a4af194f9b),
  3527. 7: uint64(0xab1c5ed5da6d8118),
  3528. 8: uint64(0xd807aa98a3030242),
  3529. 9: uint64(0x12835b0145706fbe),
  3530. 10: uint64(0x243185be4ee4b28c),
  3531. 11: uint64(0x550c7dc3d5ffb4e2),
  3532. 12: uint64(0x72be5d74f27b896f),
  3533. 13: uint64(0x80deb1fe3b1696b1),
  3534. 14: uint64(0x9bdc06a725c71235),
  3535. 15: uint64(0xc19bf174cf692694),
  3536. 16: uint64(0xe49b69c19ef14ad2),
  3537. 17: uint64(0xefbe4786384f25e3),
  3538. 18: uint64(0x0fc19dc68b8cd5b5),
  3539. 19: uint64(0x240ca1cc77ac9c65),
  3540. 20: uint64(0x2de92c6f592b0275),
  3541. 21: uint64(0x4a7484aa6ea6e483),
  3542. 22: uint64(0x5cb0a9dcbd41fbd4),
  3543. 23: uint64(0x76f988da831153b5),
  3544. 24: uint64(0x983e5152ee66dfab),
  3545. 25: uint64(0xa831c66d2db43210),
  3546. 26: uint64(0xb00327c898fb213f),
  3547. 27: uint64(0xbf597fc7beef0ee4),
  3548. 28: uint64(0xc6e00bf33da88fc2),
  3549. 29: uint64(0xd5a79147930aa725),
  3550. 30: uint64(0x06ca6351e003826f),
  3551. 31: uint64(0x142929670a0e6e70),
  3552. 32: uint64(0x27b70a8546d22ffc),
  3553. 33: uint64(0x2e1b21385c26c926),
  3554. 34: uint64(0x4d2c6dfc5ac42aed),
  3555. 35: uint64(0x53380d139d95b3df),
  3556. 36: uint64(0x650a73548baf63de),
  3557. 37: uint64(0x766a0abb3c77b2a8),
  3558. 38: uint64(0x81c2c92e47edaee6),
  3559. 39: uint64(0x92722c851482353b),
  3560. 40: uint64(0xa2bfe8a14cf10364),
  3561. 41: uint64(0xa81a664bbc423001),
  3562. 42: uint64(0xc24b8b70d0f89791),
  3563. 43: uint64(0xc76c51a30654be30),
  3564. 44: uint64(0xd192e819d6ef5218),
  3565. 45: uint64(0xd69906245565a910),
  3566. 46: uint64(0xf40e35855771202a),
  3567. 47: uint64(0x106aa07032bbd1b8),
  3568. 48: uint64(0x19a4c116b8d2d0c8),
  3569. 49: uint64(0x1e376c085141ab53),
  3570. 50: uint64(0x2748774cdf8eeb99),
  3571. 51: uint64(0x34b0bcb5e19b48a8),
  3572. 52: uint64(0x391c0cb3c5c95a63),
  3573. 53: uint64(0x4ed8aa4ae3418acb),
  3574. 54: uint64(0x5b9cca4f7763e373),
  3575. 55: uint64(0x682e6ff3d6b2b8a3),
  3576. 56: uint64(0x748f82ee5defb2fc),
  3577. 57: uint64(0x78a5636f43172f60),
  3578. 58: uint64(0x84c87814a1f0ab72),
  3579. 59: uint64(0x8cc702081a6439ec),
  3580. 60: uint64(0x90befffa23631e28),
  3581. 61: uint64(0xa4506cebde82bde9),
  3582. 62: uint64(0xbef9a3f7b2c67915),
  3583. 63: uint64(0xc67178f2e372532b),
  3584. 64: uint64(0xca273eceea26619c),
  3585. 65: uint64(0xd186b8c721c0c207),
  3586. 66: uint64(0xeada7dd6cde0eb1e),
  3587. 67: uint64(0xf57d4f7fee6ed178),
  3588. 68: uint64(0x06f067aa72176fba),
  3589. 69: uint64(0x0a637dc5a2c898a6),
  3590. 70: uint64(0x113f9804bef90dae),
  3591. 71: uint64(0x1b710b35131c471b),
  3592. 72: uint64(0x28db77f523047d84),
  3593. 73: uint64(0x32caab7b40c72493),
  3594. 74: uint64(0x3c9ebe0a15c9bebc),
  3595. 75: uint64(0x431d67c49c100d4c),
  3596. 76: uint64(0x4cc5d4becb3e42b6),
  3597. 77: uint64(0x597f299cfc657e2a),
  3598. 78: uint64(0x5fcb6fab3ad6faec),
  3599. 79: uint64(0x6c44198c4a475817),
  3600. }
  3601. // C documentation
  3602. //
  3603. // /* Initial hash value H for SHA-512 */
  3604. var _sha512_initial_hash_value = [8]Tuint64_t{
  3605. 0: uint64(0x6a09e667f3bcc908),
  3606. 1: uint64(0xbb67ae8584caa73b),
  3607. 2: uint64(0x3c6ef372fe94f82b),
  3608. 3: uint64(0xa54ff53a5f1d36f1),
  3609. 4: uint64(0x510e527fade682d1),
  3610. 5: uint64(0x9b05688c2b3e6c1f),
  3611. 6: uint64(0x1f83d9abfb41bd6b),
  3612. 7: uint64(0x5be0cd19137e2179),
  3613. }
  3614. // C documentation
  3615. //
  3616. // /* Initial hash value H for SHA-224: */
  3617. var _sha224_initial_hash_value = [8]Tuint32_t{
  3618. 0: uint32(0xc1059ed8),
  3619. 1: uint32(0x367cd507),
  3620. 2: uint32(0x3070dd17),
  3621. 3: uint32(0xf70e5939),
  3622. 4: uint32(0xffc00b31),
  3623. 5: uint32(0x68581511),
  3624. 6: uint32(0x64f98fa7),
  3625. 7: uint32(0xbefa4fa4),
  3626. }
  3627. // C documentation
  3628. //
  3629. // /* Initial hash value H for SHA-384 */
  3630. var _sha384_initial_hash_value = [8]Tuint64_t{
  3631. 0: uint64(0xcbbb9d5dc1059ed8),
  3632. 1: uint64(0x629a292a367cd507),
  3633. 2: uint64(0x9159015a3070dd17),
  3634. 3: uint64(0x152fecd8f70e5939),
  3635. 4: uint64(0x67332667ffc00b31),
  3636. 5: uint64(0x8eb44a8768581511),
  3637. 6: uint64(0xdb0c2e0d64f98fa7),
  3638. 7: uint64(0x47b5481dbefa4fa4),
  3639. }
  3640. // C documentation
  3641. //
  3642. // /* Initial hash value H for SHA-512-256 */
  3643. var _sha512_256_initial_hash_value = [8]Tuint64_t{
  3644. 0: uint64(0x22312194fc2bf72c),
  3645. 1: uint64(0x9f555fa3c84c64c2),
  3646. 2: uint64(0x2393b86b6f53b151),
  3647. 3: uint64(0x963877195940eabd),
  3648. 4: uint64(0x96283ee2a88effe3),
  3649. 5: uint64(0xbe5e1e2553863992),
  3650. 6: uint64(0x2b0199fc2c85b8aa),
  3651. 7: uint64(0x0eb72ddc81c52ca2),
  3652. }
  3653. // C documentation
  3654. //
  3655. // /*** SHA-224: *********************************************************/
  3656. func XSHA224Init(tls *libc.TLS, context uintptr) {
  3657. libc.X__builtin___memcpy_chk(tls, context, uintptr(unsafe.Pointer(&_sha224_initial_hash_value)), uint64(32), ^t__predefined_size_t(0))
  3658. libc.X__builtin___memset_chk(tls, context+80, 0, uint64(128), ^t__predefined_size_t(0))
  3659. *(*Tuint64_t)(unsafe.Pointer(context + 64)) = uint64(0)
  3660. }
  3661. func XSHA224Final(tls *libc.TLS, digest uintptr, context uintptr) {
  3662. var i int32
  3663. _ = i
  3664. XSHA256Pad(tls, context)
  3665. /* Convert TO host byte order */
  3666. i = 0
  3667. for {
  3668. if !(i < int32(7)) {
  3669. break
  3670. }
  3671. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)))) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(24))
  3672. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 1)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(16))
  3673. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 2)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(8))
  3674. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 3)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)))
  3675. goto _1
  3676. _1:
  3677. ;
  3678. i++
  3679. }
  3680. libc.X__builtin___memset_chk(tls, context, 0, uint64(208), ^t__predefined_size_t(0))
  3681. }
  3682. // C documentation
  3683. //
  3684. // /*** SHA-256: *********************************************************/
  3685. func XSHA256Init(tls *libc.TLS, context uintptr) {
  3686. libc.X__builtin___memcpy_chk(tls, context, uintptr(unsafe.Pointer(&_sha256_initial_hash_value)), uint64(32), ^t__predefined_size_t(0))
  3687. libc.X__builtin___memset_chk(tls, context+80, 0, uint64(128), ^t__predefined_size_t(0))
  3688. *(*Tuint64_t)(unsafe.Pointer(context + 64)) = uint64(0)
  3689. }
  3690. /* Unrolled SHA-256 round macros: */
  3691. func XSHA256Transform(tls *libc.TLS, state uintptr, data uintptr) {
  3692. bp := tls.Alloc(64)
  3693. defer tls.Free(64)
  3694. var T1, a, b, c, d, e, f, g, h, s0, s1, v10, v11, v12, v13, v14, v15, v16, v9 Tuint32_t
  3695. var j int32
  3696. var p1, p2, p3, p4, p5, p6, p7, p8 uintptr
  3697. var _ /* W256 at bp+0 */ [16]Tuint32_t
  3698. _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = T1, a, b, c, d, e, f, g, h, j, s0, s1, v10, v11, v12, v13, v14, v15, v16, v9, p1, p2, p3, p4, p5, p6, p7, p8
  3699. /* Initialize registers with the prev. intermediate value */
  3700. a = *(*Tuint32_t)(unsafe.Pointer(state))
  3701. b = *(*Tuint32_t)(unsafe.Pointer(state + 1*4))
  3702. c = *(*Tuint32_t)(unsafe.Pointer(state + 2*4))
  3703. d = *(*Tuint32_t)(unsafe.Pointer(state + 3*4))
  3704. e = *(*Tuint32_t)(unsafe.Pointer(state + 4*4))
  3705. f = *(*Tuint32_t)(unsafe.Pointer(state + 5*4))
  3706. g = *(*Tuint32_t)(unsafe.Pointer(state + 6*4))
  3707. h = *(*Tuint32_t)(unsafe.Pointer(state + 7*4))
  3708. j = 0
  3709. for cond := true; cond; cond = j < int32(16) {
  3710. /* Rounds 0 to 15 (unrolled): */
  3711. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3712. data += uintptr(4)
  3713. T1 = h + (e>>libc.Int32FromInt32(6) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (e>>libc.Int32FromInt32(11) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (e>>libc.Int32FromInt32(25) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (e&f ^ ^e&g) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3714. d += T1
  3715. h = T1 + (a>>libc.Int32FromInt32(2) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (a>>libc.Int32FromInt32(13) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (a>>libc.Int32FromInt32(22) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (a&b ^ a&c ^ b&c)
  3716. j++
  3717. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3718. data += uintptr(4)
  3719. T1 = g + (d>>libc.Int32FromInt32(6) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (d>>libc.Int32FromInt32(11) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (d>>libc.Int32FromInt32(25) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (d&e ^ ^d&f) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3720. c += T1
  3721. g = T1 + (h>>libc.Int32FromInt32(2) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (h>>libc.Int32FromInt32(13) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (h>>libc.Int32FromInt32(22) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (h&a ^ h&b ^ a&b)
  3722. j++
  3723. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3724. data += uintptr(4)
  3725. T1 = f + (c>>libc.Int32FromInt32(6) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (c>>libc.Int32FromInt32(11) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (c>>libc.Int32FromInt32(25) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (c&d ^ ^c&e) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3726. b += T1
  3727. f = T1 + (g>>libc.Int32FromInt32(2) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (g>>libc.Int32FromInt32(13) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (g>>libc.Int32FromInt32(22) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (g&h ^ g&a ^ h&a)
  3728. j++
  3729. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3730. data += uintptr(4)
  3731. T1 = e + (b>>libc.Int32FromInt32(6) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (b>>libc.Int32FromInt32(11) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (b>>libc.Int32FromInt32(25) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (b&c ^ ^b&d) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3732. a += T1
  3733. e = T1 + (f>>libc.Int32FromInt32(2) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (f>>libc.Int32FromInt32(13) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (f>>libc.Int32FromInt32(22) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (f&g ^ f&h ^ g&h)
  3734. j++
  3735. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3736. data += uintptr(4)
  3737. T1 = d + (a>>libc.Int32FromInt32(6) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (a>>libc.Int32FromInt32(11) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (a>>libc.Int32FromInt32(25) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (a&b ^ ^a&c) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3738. h += T1
  3739. d = T1 + (e>>libc.Int32FromInt32(2) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (e>>libc.Int32FromInt32(13) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (e>>libc.Int32FromInt32(22) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (e&f ^ e&g ^ f&g)
  3740. j++
  3741. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3742. data += uintptr(4)
  3743. T1 = c + (h>>libc.Int32FromInt32(6) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (h>>libc.Int32FromInt32(11) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (h>>libc.Int32FromInt32(25) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (h&a ^ ^h&b) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3744. g += T1
  3745. c = T1 + (d>>libc.Int32FromInt32(2) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (d>>libc.Int32FromInt32(13) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (d>>libc.Int32FromInt32(22) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (d&e ^ d&f ^ e&f)
  3746. j++
  3747. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3748. data += uintptr(4)
  3749. T1 = b + (g>>libc.Int32FromInt32(6) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (g>>libc.Int32FromInt32(11) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (g>>libc.Int32FromInt32(25) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (g&h ^ ^g&a) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3750. f += T1
  3751. b = T1 + (c>>libc.Int32FromInt32(2) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (c>>libc.Int32FromInt32(13) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (c>>libc.Int32FromInt32(22) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (c&d ^ c&e ^ d&e)
  3752. j++
  3753. (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j] = uint32(*(*Tuint8_t)(unsafe.Pointer(data + 3))) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(8) | uint32(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(16) | uint32(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(24)
  3754. data += uintptr(4)
  3755. T1 = a + (f>>libc.Int32FromInt32(6) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (f>>libc.Int32FromInt32(11) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (f>>libc.Int32FromInt32(25) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (f&g ^ ^f&h) + _K256[j] + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[j]
  3756. e += T1
  3757. a = T1 + (b>>libc.Int32FromInt32(2) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (b>>libc.Int32FromInt32(13) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (b>>libc.Int32FromInt32(22) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (b&c ^ b&d ^ c&d)
  3758. j++
  3759. }
  3760. /* Now for the remaining rounds up to 63: */
  3761. for cond := true; cond; cond = j < int32(64) {
  3762. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3763. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3764. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3765. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3766. p1 = bp + uintptr(j&int32(0x0f))*4
  3767. *(*Tuint32_t)(unsafe.Pointer(p1)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3768. T1 = h + (e>>libc.Int32FromInt32(6) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (e>>libc.Int32FromInt32(11) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (e>>libc.Int32FromInt32(25) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (e&f ^ ^e&g) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p1))
  3769. d += T1
  3770. h = T1 + (a>>libc.Int32FromInt32(2) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (a>>libc.Int32FromInt32(13) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (a>>libc.Int32FromInt32(22) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (a&b ^ a&c ^ b&c)
  3771. j++
  3772. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3773. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3774. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3775. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3776. p2 = bp + uintptr(j&int32(0x0f))*4
  3777. *(*Tuint32_t)(unsafe.Pointer(p2)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3778. T1 = g + (d>>libc.Int32FromInt32(6) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (d>>libc.Int32FromInt32(11) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (d>>libc.Int32FromInt32(25) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (d&e ^ ^d&f) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p2))
  3779. c += T1
  3780. g = T1 + (h>>libc.Int32FromInt32(2) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (h>>libc.Int32FromInt32(13) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (h>>libc.Int32FromInt32(22) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (h&a ^ h&b ^ a&b)
  3781. j++
  3782. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3783. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3784. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3785. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3786. p3 = bp + uintptr(j&int32(0x0f))*4
  3787. *(*Tuint32_t)(unsafe.Pointer(p3)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3788. T1 = f + (c>>libc.Int32FromInt32(6) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (c>>libc.Int32FromInt32(11) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (c>>libc.Int32FromInt32(25) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (c&d ^ ^c&e) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p3))
  3789. b += T1
  3790. f = T1 + (g>>libc.Int32FromInt32(2) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (g>>libc.Int32FromInt32(13) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (g>>libc.Int32FromInt32(22) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (g&h ^ g&a ^ h&a)
  3791. j++
  3792. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3793. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3794. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3795. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3796. p4 = bp + uintptr(j&int32(0x0f))*4
  3797. *(*Tuint32_t)(unsafe.Pointer(p4)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3798. T1 = e + (b>>libc.Int32FromInt32(6) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (b>>libc.Int32FromInt32(11) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (b>>libc.Int32FromInt32(25) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (b&c ^ ^b&d) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p4))
  3799. a += T1
  3800. e = T1 + (f>>libc.Int32FromInt32(2) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (f>>libc.Int32FromInt32(13) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (f>>libc.Int32FromInt32(22) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (f&g ^ f&h ^ g&h)
  3801. j++
  3802. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3803. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3804. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3805. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3806. p5 = bp + uintptr(j&int32(0x0f))*4
  3807. *(*Tuint32_t)(unsafe.Pointer(p5)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3808. T1 = d + (a>>libc.Int32FromInt32(6) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (a>>libc.Int32FromInt32(11) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (a>>libc.Int32FromInt32(25) | a<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (a&b ^ ^a&c) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p5))
  3809. h += T1
  3810. d = T1 + (e>>libc.Int32FromInt32(2) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (e>>libc.Int32FromInt32(13) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (e>>libc.Int32FromInt32(22) | e<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (e&f ^ e&g ^ f&g)
  3811. j++
  3812. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3813. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3814. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3815. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3816. p6 = bp + uintptr(j&int32(0x0f))*4
  3817. *(*Tuint32_t)(unsafe.Pointer(p6)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3818. T1 = c + (h>>libc.Int32FromInt32(6) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (h>>libc.Int32FromInt32(11) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (h>>libc.Int32FromInt32(25) | h<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (h&a ^ ^h&b) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p6))
  3819. g += T1
  3820. c = T1 + (d>>libc.Int32FromInt32(2) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (d>>libc.Int32FromInt32(13) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (d>>libc.Int32FromInt32(22) | d<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (d&e ^ d&f ^ e&f)
  3821. j++
  3822. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3823. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3824. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3825. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3826. p7 = bp + uintptr(j&int32(0x0f))*4
  3827. *(*Tuint32_t)(unsafe.Pointer(p7)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3828. T1 = b + (g>>libc.Int32FromInt32(6) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (g>>libc.Int32FromInt32(11) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (g>>libc.Int32FromInt32(25) | g<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (g&h ^ ^g&a) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p7))
  3829. f += T1
  3830. b = T1 + (c>>libc.Int32FromInt32(2) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (c>>libc.Int32FromInt32(13) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (c>>libc.Int32FromInt32(22) | c<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (c&d ^ c&e ^ d&e)
  3831. j++
  3832. s0 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  3833. s0 = s0>>libc.Int32FromInt32(7) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(7)) ^ (s0>>libc.Int32FromInt32(18) | s0<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(18))) ^ s0>>libc.Int32FromInt32(3)
  3834. s1 = (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  3835. s1 = s1>>libc.Int32FromInt32(17) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(17)) ^ (s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(19))) ^ s1>>libc.Int32FromInt32(10)
  3836. p8 = bp + uintptr(j&int32(0x0f))*4
  3837. *(*Tuint32_t)(unsafe.Pointer(p8)) += s1 + (*(*[16]Tuint32_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  3838. T1 = a + (f>>libc.Int32FromInt32(6) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(6)) ^ (f>>libc.Int32FromInt32(11) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(11))) ^ (f>>libc.Int32FromInt32(25) | f<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(25)))) + (f&g ^ ^f&h) + _K256[j] + *(*Tuint32_t)(unsafe.Pointer(p8))
  3839. e += T1
  3840. a = T1 + (b>>libc.Int32FromInt32(2) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(2)) ^ (b>>libc.Int32FromInt32(13) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(13))) ^ (b>>libc.Int32FromInt32(22) | b<<(libc.Int32FromInt32(32)-libc.Int32FromInt32(22)))) + (b&c ^ b&d ^ c&d)
  3841. j++
  3842. }
  3843. /* Compute the current intermediate hash value */
  3844. *(*Tuint32_t)(unsafe.Pointer(state)) += a
  3845. *(*Tuint32_t)(unsafe.Pointer(state + 1*4)) += b
  3846. *(*Tuint32_t)(unsafe.Pointer(state + 2*4)) += c
  3847. *(*Tuint32_t)(unsafe.Pointer(state + 3*4)) += d
  3848. *(*Tuint32_t)(unsafe.Pointer(state + 4*4)) += e
  3849. *(*Tuint32_t)(unsafe.Pointer(state + 5*4)) += f
  3850. *(*Tuint32_t)(unsafe.Pointer(state + 6*4)) += g
  3851. *(*Tuint32_t)(unsafe.Pointer(state + 7*4)) += h
  3852. /* Clean up */
  3853. v16 = libc.Uint32FromInt32(0)
  3854. T1 = v16
  3855. v15 = v16
  3856. h = v15
  3857. v14 = v15
  3858. g = v14
  3859. v13 = v14
  3860. f = v13
  3861. v12 = v13
  3862. e = v12
  3863. v11 = v12
  3864. d = v11
  3865. v10 = v11
  3866. c = v10
  3867. v9 = v10
  3868. b = v9
  3869. a = v9
  3870. }
  3871. func XSHA256Update(tls *libc.TLS, context uintptr, data uintptr, len1 Tsize_t) {
  3872. var freespace, usedspace, v1, v2 Tsize_t
  3873. _, _, _, _ = freespace, usedspace, v1, v2
  3874. /* Calling with no data is valid (we do nothing) */
  3875. if len1 == uint64(0) {
  3876. return
  3877. }
  3878. usedspace = uint64(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> libc.Int32FromInt32(3) % uint64(m_SHA256_BLOCK_LENGTH))
  3879. if usedspace > uint64(0) {
  3880. /* Calculate how much free space is available in the buffer */
  3881. freespace = uint64(m_SHA256_BLOCK_LENGTH) - usedspace
  3882. if len1 >= freespace {
  3883. /* Fill the buffer completely and process it */
  3884. libc.X__builtin___memcpy_chk(tls, context+80+uintptr(usedspace), data, freespace, ^t__predefined_size_t(0))
  3885. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += freespace << int32(3)
  3886. len1 -= freespace
  3887. data += uintptr(freespace)
  3888. XSHA256Transform(tls, context, context+80)
  3889. } else {
  3890. /* The buffer is not yet full */
  3891. libc.X__builtin___memcpy_chk(tls, context+80+uintptr(usedspace), data, len1, ^t__predefined_size_t(0))
  3892. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += len1 << int32(3)
  3893. /* Clean up: */
  3894. v1 = libc.Uint64FromInt32(0)
  3895. freespace = v1
  3896. usedspace = v1
  3897. return
  3898. }
  3899. }
  3900. for len1 >= uint64(m_SHA256_BLOCK_LENGTH) {
  3901. /* Process as many complete blocks as we can */
  3902. XSHA256Transform(tls, context, data)
  3903. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH) << libc.Int32FromInt32(3))
  3904. len1 -= uint64(m_SHA256_BLOCK_LENGTH)
  3905. data += uintptr(m_SHA256_BLOCK_LENGTH)
  3906. }
  3907. if len1 > uint64(0) {
  3908. /* There's left-overs, so save 'em */
  3909. libc.X__builtin___memcpy_chk(tls, context+80, data, len1, ^t__predefined_size_t(0))
  3910. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += len1 << int32(3)
  3911. }
  3912. /* Clean up: */
  3913. v2 = libc.Uint64FromInt32(0)
  3914. freespace = v2
  3915. usedspace = v2
  3916. }
  3917. func XSHA256Pad(tls *libc.TLS, context uintptr) {
  3918. var usedspace, v1 uint32
  3919. _, _ = usedspace, v1
  3920. usedspace = uint32(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> libc.Int32FromInt32(3) % uint64(m_SHA256_BLOCK_LENGTH))
  3921. if usedspace > uint32(0) {
  3922. /* Begin padding with a 1 bit: */
  3923. v1 = usedspace
  3924. usedspace++
  3925. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(v1))) = uint8(0x80)
  3926. if usedspace <= libc.Uint32FromInt32(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) {
  3927. /* Set-up for the last transform: */
  3928. libc.X__builtin___memset_chk(tls, context+80+uintptr(usedspace), 0, uint64(libc.Uint32FromInt32(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8))-usedspace), ^t__predefined_size_t(0))
  3929. } else {
  3930. if usedspace < uint32(m_SHA256_BLOCK_LENGTH) {
  3931. libc.X__builtin___memset_chk(tls, context+80+uintptr(usedspace), 0, uint64(uint32(m_SHA256_BLOCK_LENGTH)-usedspace), ^t__predefined_size_t(0))
  3932. }
  3933. /* Do second-to-last transform: */
  3934. XSHA256Transform(tls, context, context+80)
  3935. /* Prepare for last transform: */
  3936. libc.X__builtin___memset_chk(tls, context+80, 0, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)), ^t__predefined_size_t(0))
  3937. }
  3938. } else {
  3939. /* Set-up for the last transform: */
  3940. libc.X__builtin___memset_chk(tls, context+80, 0, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)), ^t__predefined_size_t(0))
  3941. /* Begin padding with a 1 bit: */
  3942. *(*Tuint8_t)(unsafe.Pointer(context + 80)) = uint8(0x80)
  3943. }
  3944. /* Store the length of input data (in bits) in big endian format: */
  3945. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(56))
  3946. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(48))
  3947. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(40))
  3948. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(32))
  3949. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(24))
  3950. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(16))
  3951. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(8))
  3952. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA256_BLOCK_LENGTH)-libc.Int32FromInt32(8)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)))
  3953. /* Final transform: */
  3954. XSHA256Transform(tls, context, context+80)
  3955. /* Clean up: */
  3956. usedspace = uint32(0)
  3957. }
  3958. func XSHA256Final(tls *libc.TLS, digest uintptr, context uintptr) {
  3959. var i int32
  3960. _ = i
  3961. XSHA256Pad(tls, context)
  3962. /* Convert TO host byte order */
  3963. i = 0
  3964. for {
  3965. if !(i < int32(8)) {
  3966. break
  3967. }
  3968. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)))) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(24))
  3969. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 1)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(16))
  3970. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 2)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)) >> int32(8))
  3971. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(4)) + 3)) = uint8(*(*Tuint32_t)(unsafe.Pointer(context + uintptr(i)*4)))
  3972. goto _1
  3973. _1:
  3974. ;
  3975. i++
  3976. }
  3977. libc.X__builtin___memset_chk(tls, context, 0, uint64(208), ^t__predefined_size_t(0))
  3978. }
  3979. // C documentation
  3980. //
  3981. // /*** SHA-512: *********************************************************/
  3982. func XSHA512Init(tls *libc.TLS, context uintptr) {
  3983. var v1 Tuint64_t
  3984. _ = v1
  3985. libc.X__builtin___memcpy_chk(tls, context, uintptr(unsafe.Pointer(&_sha512_initial_hash_value)), uint64(64), ^t__predefined_size_t(0))
  3986. libc.X__builtin___memset_chk(tls, context+80, 0, uint64(128), ^t__predefined_size_t(0))
  3987. v1 = libc.Uint64FromInt32(0)
  3988. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) = v1
  3989. *(*Tuint64_t)(unsafe.Pointer(context + 64)) = v1
  3990. }
  3991. /* Unrolled SHA-512 round macros: */
  3992. func XSHA512Transform(tls *libc.TLS, state uintptr, data uintptr) {
  3993. bp := tls.Alloc(128)
  3994. defer tls.Free(128)
  3995. var T1, a, b, c, d, e, f, g, h, s0, s1, v10, v11, v12, v13, v14, v15, v16, v9 Tuint64_t
  3996. var j int32
  3997. var p1, p2, p3, p4, p5, p6, p7, p8 uintptr
  3998. var _ /* W512 at bp+0 */ [16]Tuint64_t
  3999. _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = T1, a, b, c, d, e, f, g, h, j, s0, s1, v10, v11, v12, v13, v14, v15, v16, v9, p1, p2, p3, p4, p5, p6, p7, p8
  4000. /* Initialize registers with the prev. intermediate value */
  4001. a = *(*Tuint64_t)(unsafe.Pointer(state))
  4002. b = *(*Tuint64_t)(unsafe.Pointer(state + 1*8))
  4003. c = *(*Tuint64_t)(unsafe.Pointer(state + 2*8))
  4004. d = *(*Tuint64_t)(unsafe.Pointer(state + 3*8))
  4005. e = *(*Tuint64_t)(unsafe.Pointer(state + 4*8))
  4006. f = *(*Tuint64_t)(unsafe.Pointer(state + 5*8))
  4007. g = *(*Tuint64_t)(unsafe.Pointer(state + 6*8))
  4008. h = *(*Tuint64_t)(unsafe.Pointer(state + 7*8))
  4009. j = 0
  4010. for cond := true; cond; cond = j < int32(16) {
  4011. /* Rounds 0 to 15 (unrolled): */
  4012. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4013. data += uintptr(8)
  4014. T1 = h + (e>>libc.Int32FromInt32(14) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (e>>libc.Int32FromInt32(18) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (e>>libc.Int32FromInt32(41) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (e&f ^ ^e&g) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4015. d += T1
  4016. h = T1 + (a>>libc.Int32FromInt32(28) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (a>>libc.Int32FromInt32(34) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (a>>libc.Int32FromInt32(39) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (a&b ^ a&c ^ b&c)
  4017. j++
  4018. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4019. data += uintptr(8)
  4020. T1 = g + (d>>libc.Int32FromInt32(14) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (d>>libc.Int32FromInt32(18) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (d>>libc.Int32FromInt32(41) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (d&e ^ ^d&f) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4021. c += T1
  4022. g = T1 + (h>>libc.Int32FromInt32(28) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (h>>libc.Int32FromInt32(34) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (h>>libc.Int32FromInt32(39) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (h&a ^ h&b ^ a&b)
  4023. j++
  4024. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4025. data += uintptr(8)
  4026. T1 = f + (c>>libc.Int32FromInt32(14) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (c>>libc.Int32FromInt32(18) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (c>>libc.Int32FromInt32(41) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (c&d ^ ^c&e) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4027. b += T1
  4028. f = T1 + (g>>libc.Int32FromInt32(28) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (g>>libc.Int32FromInt32(34) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (g>>libc.Int32FromInt32(39) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (g&h ^ g&a ^ h&a)
  4029. j++
  4030. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4031. data += uintptr(8)
  4032. T1 = e + (b>>libc.Int32FromInt32(14) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (b>>libc.Int32FromInt32(18) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (b>>libc.Int32FromInt32(41) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (b&c ^ ^b&d) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4033. a += T1
  4034. e = T1 + (f>>libc.Int32FromInt32(28) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (f>>libc.Int32FromInt32(34) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (f>>libc.Int32FromInt32(39) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (f&g ^ f&h ^ g&h)
  4035. j++
  4036. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4037. data += uintptr(8)
  4038. T1 = d + (a>>libc.Int32FromInt32(14) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (a>>libc.Int32FromInt32(18) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (a>>libc.Int32FromInt32(41) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (a&b ^ ^a&c) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4039. h += T1
  4040. d = T1 + (e>>libc.Int32FromInt32(28) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (e>>libc.Int32FromInt32(34) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (e>>libc.Int32FromInt32(39) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (e&f ^ e&g ^ f&g)
  4041. j++
  4042. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4043. data += uintptr(8)
  4044. T1 = c + (h>>libc.Int32FromInt32(14) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (h>>libc.Int32FromInt32(18) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (h>>libc.Int32FromInt32(41) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (h&a ^ ^h&b) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4045. g += T1
  4046. c = T1 + (d>>libc.Int32FromInt32(28) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (d>>libc.Int32FromInt32(34) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (d>>libc.Int32FromInt32(39) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (d&e ^ d&f ^ e&f)
  4047. j++
  4048. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4049. data += uintptr(8)
  4050. T1 = b + (g>>libc.Int32FromInt32(14) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (g>>libc.Int32FromInt32(18) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (g>>libc.Int32FromInt32(41) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (g&h ^ ^g&a) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4051. f += T1
  4052. b = T1 + (c>>libc.Int32FromInt32(28) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (c>>libc.Int32FromInt32(34) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (c>>libc.Int32FromInt32(39) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (c&d ^ c&e ^ d&e)
  4053. j++
  4054. (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j] = uint64(*(*Tuint8_t)(unsafe.Pointer(data + 7))) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 6)))<<libc.Int32FromInt32(8) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 5)))<<libc.Int32FromInt32(16) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 4)))<<libc.Int32FromInt32(24) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 3)))<<libc.Int32FromInt32(32) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 2)))<<libc.Int32FromInt32(40) | uint64(*(*Tuint8_t)(unsafe.Pointer(data + 1)))<<libc.Int32FromInt32(48) | uint64(*(*Tuint8_t)(unsafe.Pointer(data)))<<libc.Int32FromInt32(56)
  4055. data += uintptr(8)
  4056. T1 = a + (f>>libc.Int32FromInt32(14) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (f>>libc.Int32FromInt32(18) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (f>>libc.Int32FromInt32(41) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (f&g ^ ^f&h) + _K512[j] + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[j]
  4057. e += T1
  4058. a = T1 + (b>>libc.Int32FromInt32(28) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (b>>libc.Int32FromInt32(34) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (b>>libc.Int32FromInt32(39) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (b&c ^ b&d ^ c&d)
  4059. j++
  4060. }
  4061. /* Now for the remaining rounds up to 79: */
  4062. for cond := true; cond; cond = j < int32(80) {
  4063. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4064. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4065. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4066. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4067. p1 = bp + uintptr(j&int32(0x0f))*8
  4068. *(*Tuint64_t)(unsafe.Pointer(p1)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4069. T1 = h + (e>>libc.Int32FromInt32(14) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (e>>libc.Int32FromInt32(18) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (e>>libc.Int32FromInt32(41) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (e&f ^ ^e&g) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p1))
  4070. d += T1
  4071. h = T1 + (a>>libc.Int32FromInt32(28) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (a>>libc.Int32FromInt32(34) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (a>>libc.Int32FromInt32(39) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (a&b ^ a&c ^ b&c)
  4072. j++
  4073. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4074. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4075. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4076. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4077. p2 = bp + uintptr(j&int32(0x0f))*8
  4078. *(*Tuint64_t)(unsafe.Pointer(p2)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4079. T1 = g + (d>>libc.Int32FromInt32(14) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (d>>libc.Int32FromInt32(18) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (d>>libc.Int32FromInt32(41) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (d&e ^ ^d&f) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p2))
  4080. c += T1
  4081. g = T1 + (h>>libc.Int32FromInt32(28) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (h>>libc.Int32FromInt32(34) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (h>>libc.Int32FromInt32(39) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (h&a ^ h&b ^ a&b)
  4082. j++
  4083. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4084. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4085. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4086. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4087. p3 = bp + uintptr(j&int32(0x0f))*8
  4088. *(*Tuint64_t)(unsafe.Pointer(p3)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4089. T1 = f + (c>>libc.Int32FromInt32(14) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (c>>libc.Int32FromInt32(18) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (c>>libc.Int32FromInt32(41) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (c&d ^ ^c&e) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p3))
  4090. b += T1
  4091. f = T1 + (g>>libc.Int32FromInt32(28) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (g>>libc.Int32FromInt32(34) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (g>>libc.Int32FromInt32(39) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (g&h ^ g&a ^ h&a)
  4092. j++
  4093. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4094. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4095. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4096. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4097. p4 = bp + uintptr(j&int32(0x0f))*8
  4098. *(*Tuint64_t)(unsafe.Pointer(p4)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4099. T1 = e + (b>>libc.Int32FromInt32(14) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (b>>libc.Int32FromInt32(18) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (b>>libc.Int32FromInt32(41) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (b&c ^ ^b&d) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p4))
  4100. a += T1
  4101. e = T1 + (f>>libc.Int32FromInt32(28) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (f>>libc.Int32FromInt32(34) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (f>>libc.Int32FromInt32(39) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (f&g ^ f&h ^ g&h)
  4102. j++
  4103. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4104. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4105. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4106. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4107. p5 = bp + uintptr(j&int32(0x0f))*8
  4108. *(*Tuint64_t)(unsafe.Pointer(p5)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4109. T1 = d + (a>>libc.Int32FromInt32(14) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (a>>libc.Int32FromInt32(18) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (a>>libc.Int32FromInt32(41) | a<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (a&b ^ ^a&c) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p5))
  4110. h += T1
  4111. d = T1 + (e>>libc.Int32FromInt32(28) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (e>>libc.Int32FromInt32(34) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (e>>libc.Int32FromInt32(39) | e<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (e&f ^ e&g ^ f&g)
  4112. j++
  4113. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4114. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4115. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4116. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4117. p6 = bp + uintptr(j&int32(0x0f))*8
  4118. *(*Tuint64_t)(unsafe.Pointer(p6)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4119. T1 = c + (h>>libc.Int32FromInt32(14) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (h>>libc.Int32FromInt32(18) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (h>>libc.Int32FromInt32(41) | h<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (h&a ^ ^h&b) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p6))
  4120. g += T1
  4121. c = T1 + (d>>libc.Int32FromInt32(28) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (d>>libc.Int32FromInt32(34) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (d>>libc.Int32FromInt32(39) | d<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (d&e ^ d&f ^ e&f)
  4122. j++
  4123. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4124. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4125. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4126. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4127. p7 = bp + uintptr(j&int32(0x0f))*8
  4128. *(*Tuint64_t)(unsafe.Pointer(p7)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4129. T1 = b + (g>>libc.Int32FromInt32(14) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (g>>libc.Int32FromInt32(18) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (g>>libc.Int32FromInt32(41) | g<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (g&h ^ ^g&a) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p7))
  4130. f += T1
  4131. b = T1 + (c>>libc.Int32FromInt32(28) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (c>>libc.Int32FromInt32(34) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (c>>libc.Int32FromInt32(39) | c<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (c&d ^ c&e ^ d&e)
  4132. j++
  4133. s0 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(1))&int32(0x0f)]
  4134. s0 = s0>>libc.Int32FromInt32(1) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(1)) ^ (s0>>libc.Int32FromInt32(8) | s0<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(8))) ^ s0>>libc.Int32FromInt32(7)
  4135. s1 = (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(14))&int32(0x0f)]
  4136. s1 = s1>>libc.Int32FromInt32(19) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(19)) ^ (s1>>libc.Int32FromInt32(61) | s1<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(61))) ^ s1>>libc.Int32FromInt32(6)
  4137. p8 = bp + uintptr(j&int32(0x0f))*8
  4138. *(*Tuint64_t)(unsafe.Pointer(p8)) += s1 + (*(*[16]Tuint64_t)(unsafe.Pointer(bp)))[(j+int32(9))&int32(0x0f)] + s0
  4139. T1 = a + (f>>libc.Int32FromInt32(14) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(14)) ^ (f>>libc.Int32FromInt32(18) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(18))) ^ (f>>libc.Int32FromInt32(41) | f<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(41)))) + (f&g ^ ^f&h) + _K512[j] + *(*Tuint64_t)(unsafe.Pointer(p8))
  4140. e += T1
  4141. a = T1 + (b>>libc.Int32FromInt32(28) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(28)) ^ (b>>libc.Int32FromInt32(34) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(34))) ^ (b>>libc.Int32FromInt32(39) | b<<(libc.Int32FromInt32(64)-libc.Int32FromInt32(39)))) + (b&c ^ b&d ^ c&d)
  4142. j++
  4143. }
  4144. /* Compute the current intermediate hash value */
  4145. *(*Tuint64_t)(unsafe.Pointer(state)) += a
  4146. *(*Tuint64_t)(unsafe.Pointer(state + 1*8)) += b
  4147. *(*Tuint64_t)(unsafe.Pointer(state + 2*8)) += c
  4148. *(*Tuint64_t)(unsafe.Pointer(state + 3*8)) += d
  4149. *(*Tuint64_t)(unsafe.Pointer(state + 4*8)) += e
  4150. *(*Tuint64_t)(unsafe.Pointer(state + 5*8)) += f
  4151. *(*Tuint64_t)(unsafe.Pointer(state + 6*8)) += g
  4152. *(*Tuint64_t)(unsafe.Pointer(state + 7*8)) += h
  4153. /* Clean up */
  4154. v16 = libc.Uint64FromInt32(0)
  4155. T1 = v16
  4156. v15 = v16
  4157. h = v15
  4158. v14 = v15
  4159. g = v14
  4160. v13 = v14
  4161. f = v13
  4162. v12 = v13
  4163. e = v12
  4164. v11 = v12
  4165. d = v11
  4166. v10 = v11
  4167. c = v10
  4168. v9 = v10
  4169. b = v9
  4170. a = v9
  4171. }
  4172. func XSHA512Update(tls *libc.TLS, context uintptr, data uintptr, len1 Tsize_t) {
  4173. var freespace, usedspace, v1, v2 Tsize_t
  4174. _, _, _, _ = freespace, usedspace, v1, v2
  4175. /* Calling with no data is valid (we do nothing) */
  4176. if len1 == uint64(0) {
  4177. return
  4178. }
  4179. usedspace = uint64(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> libc.Int32FromInt32(3) % uint64(m_SHA512_BLOCK_LENGTH))
  4180. if usedspace > uint64(0) {
  4181. /* Calculate how much free space is available in the buffer */
  4182. freespace = uint64(m_SHA512_BLOCK_LENGTH) - usedspace
  4183. if len1 >= freespace {
  4184. /* Fill the buffer completely and process it */
  4185. libc.X__builtin___memcpy_chk(tls, context+80+uintptr(usedspace), data, freespace, ^t__predefined_size_t(0))
  4186. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += uint64(freespace << libc.Int32FromInt32(3))
  4187. if *(*Tuint64_t)(unsafe.Pointer(context + 64)) < uint64(freespace<<libc.Int32FromInt32(3)) {
  4188. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8))++
  4189. }
  4190. len1 -= freespace
  4191. data += uintptr(freespace)
  4192. XSHA512Transform(tls, context, context+80)
  4193. } else {
  4194. /* The buffer is not yet full */
  4195. libc.X__builtin___memcpy_chk(tls, context+80+uintptr(usedspace), data, len1, ^t__predefined_size_t(0))
  4196. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += uint64(len1 << libc.Int32FromInt32(3))
  4197. if *(*Tuint64_t)(unsafe.Pointer(context + 64)) < uint64(len1<<libc.Int32FromInt32(3)) {
  4198. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8))++
  4199. }
  4200. /* Clean up: */
  4201. v1 = libc.Uint64FromInt32(0)
  4202. freespace = v1
  4203. usedspace = v1
  4204. return
  4205. }
  4206. }
  4207. for len1 >= uint64(m_SHA512_BLOCK_LENGTH) {
  4208. /* Process as many complete blocks as we can */
  4209. XSHA512Transform(tls, context, data)
  4210. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH) << libc.Int32FromInt32(3))
  4211. if *(*Tuint64_t)(unsafe.Pointer(context + 64)) < libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)<<libc.Int32FromInt32(3)) {
  4212. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8))++
  4213. }
  4214. len1 -= uint64(m_SHA512_BLOCK_LENGTH)
  4215. data += uintptr(m_SHA512_BLOCK_LENGTH)
  4216. }
  4217. if len1 > uint64(0) {
  4218. /* There's left-overs, so save 'em */
  4219. libc.X__builtin___memcpy_chk(tls, context+80, data, len1, ^t__predefined_size_t(0))
  4220. *(*Tuint64_t)(unsafe.Pointer(context + 64)) += uint64(len1 << libc.Int32FromInt32(3))
  4221. if *(*Tuint64_t)(unsafe.Pointer(context + 64)) < uint64(len1<<libc.Int32FromInt32(3)) {
  4222. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8))++
  4223. }
  4224. }
  4225. /* Clean up: */
  4226. v2 = libc.Uint64FromInt32(0)
  4227. freespace = v2
  4228. usedspace = v2
  4229. }
  4230. func XSHA512Pad(tls *libc.TLS, context uintptr) {
  4231. var usedspace, v1 uint32
  4232. _, _ = usedspace, v1
  4233. usedspace = uint32(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> libc.Int32FromInt32(3) % uint64(m_SHA512_BLOCK_LENGTH))
  4234. if usedspace > uint32(0) {
  4235. /* Begin padding with a 1 bit: */
  4236. v1 = usedspace
  4237. usedspace++
  4238. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(v1))) = uint8(0x80)
  4239. if usedspace <= libc.Uint32FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) {
  4240. /* Set-up for the last transform: */
  4241. libc.X__builtin___memset_chk(tls, context+80+uintptr(usedspace), 0, uint64(libc.Uint32FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16))-usedspace), ^t__predefined_size_t(0))
  4242. } else {
  4243. if usedspace < uint32(m_SHA512_BLOCK_LENGTH) {
  4244. libc.X__builtin___memset_chk(tls, context+80+uintptr(usedspace), 0, uint64(uint32(m_SHA512_BLOCK_LENGTH)-usedspace), ^t__predefined_size_t(0))
  4245. }
  4246. /* Do second-to-last transform: */
  4247. XSHA512Transform(tls, context, context+80)
  4248. /* And set-up for the last transform: */
  4249. libc.X__builtin___memset_chk(tls, context+80, 0, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(2)), ^t__predefined_size_t(0))
  4250. }
  4251. } else {
  4252. /* Prepare for final transform: */
  4253. libc.X__builtin___memset_chk(tls, context+80, 0, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)), ^t__predefined_size_t(0))
  4254. /* Begin padding with a 1 bit: */
  4255. *(*Tuint8_t)(unsafe.Pointer(context + 80)) = uint8(0x80)
  4256. }
  4257. /* Store the length of input data (in bits) in big endian format: */
  4258. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(56))
  4259. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(48))
  4260. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(40))
  4261. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(32))
  4262. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(24))
  4263. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(16))
  4264. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) >> int32(8))
  4265. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)))
  4266. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(56))
  4267. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(48))
  4268. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(40))
  4269. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(32))
  4270. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(24))
  4271. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(16))
  4272. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)) >> int32(8))
  4273. *(*Tuint8_t)(unsafe.Pointer(context + 80 + uintptr(libc.Int32FromInt32(m_SHA512_BLOCK_LENGTH)-libc.Int32FromInt32(16)+libc.Int32FromInt32(8)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + 64)))
  4274. /* Final transform: */
  4275. XSHA512Transform(tls, context, context+80)
  4276. /* Clean up: */
  4277. usedspace = uint32(0)
  4278. }
  4279. func XSHA512Final(tls *libc.TLS, digest uintptr, context uintptr) {
  4280. var i int32
  4281. _ = i
  4282. XSHA512Pad(tls, context)
  4283. /* Convert TO host byte order */
  4284. i = 0
  4285. for {
  4286. if !(i < int32(8)) {
  4287. break
  4288. }
  4289. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(56))
  4290. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(48))
  4291. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(40))
  4292. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(32))
  4293. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(24))
  4294. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(16))
  4295. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(8))
  4296. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)))
  4297. goto _1
  4298. _1:
  4299. ;
  4300. i++
  4301. }
  4302. libc.X__builtin___memset_chk(tls, context, 0, uint64(208), ^t__predefined_size_t(0))
  4303. }
  4304. // C documentation
  4305. //
  4306. // /*** SHA-384: *********************************************************/
  4307. func XSHA384Init(tls *libc.TLS, context uintptr) {
  4308. var v1 Tuint64_t
  4309. _ = v1
  4310. libc.X__builtin___memcpy_chk(tls, context, uintptr(unsafe.Pointer(&_sha384_initial_hash_value)), uint64(64), ^t__predefined_size_t(0))
  4311. libc.X__builtin___memset_chk(tls, context+80, 0, uint64(128), ^t__predefined_size_t(0))
  4312. v1 = libc.Uint64FromInt32(0)
  4313. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) = v1
  4314. *(*Tuint64_t)(unsafe.Pointer(context + 64)) = v1
  4315. }
  4316. func XSHA384Final(tls *libc.TLS, digest uintptr, context uintptr) {
  4317. var i int32
  4318. _ = i
  4319. XSHA512Pad(tls, context)
  4320. /* Convert TO host byte order */
  4321. i = 0
  4322. for {
  4323. if !(i < int32(6)) {
  4324. break
  4325. }
  4326. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(56))
  4327. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(48))
  4328. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(40))
  4329. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(32))
  4330. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(24))
  4331. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(16))
  4332. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(8))
  4333. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)))
  4334. goto _1
  4335. _1:
  4336. ;
  4337. i++
  4338. }
  4339. /* Zero out state data */
  4340. libc.X__builtin___memset_chk(tls, context, 0, uint64(208), ^t__predefined_size_t(0))
  4341. }
  4342. // C documentation
  4343. //
  4344. // /*** SHA-512/256: *********************************************************/
  4345. func XSHA512_256Init(tls *libc.TLS, context uintptr) {
  4346. var v1 Tuint64_t
  4347. _ = v1
  4348. libc.X__builtin___memcpy_chk(tls, context, uintptr(unsafe.Pointer(&_sha512_256_initial_hash_value)), uint64(64), ^t__predefined_size_t(0))
  4349. libc.X__builtin___memset_chk(tls, context+80, 0, uint64(128), ^t__predefined_size_t(0))
  4350. v1 = libc.Uint64FromInt32(0)
  4351. *(*Tuint64_t)(unsafe.Pointer(context + 64 + 1*8)) = v1
  4352. *(*Tuint64_t)(unsafe.Pointer(context + 64)) = v1
  4353. }
  4354. func XSHA512_256Final(tls *libc.TLS, digest uintptr, context uintptr) {
  4355. var i int32
  4356. _ = i
  4357. XSHA512Pad(tls, context)
  4358. /* Convert TO host byte order */
  4359. i = 0
  4360. for {
  4361. if !(i < int32(4)) {
  4362. break
  4363. }
  4364. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)))) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(56))
  4365. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 1)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(48))
  4366. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 2)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(40))
  4367. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 3)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(32))
  4368. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 4)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(24))
  4369. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 5)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(16))
  4370. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 6)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)) >> int32(8))
  4371. *(*Tuint8_t)(unsafe.Pointer(digest + uintptr(i*libc.Int32FromInt32(8)) + 7)) = uint8(*(*Tuint64_t)(unsafe.Pointer(context + uintptr(i)*8)))
  4372. goto _1
  4373. _1:
  4374. ;
  4375. i++
  4376. }
  4377. /* Zero out state data */
  4378. libc.X__builtin___memset_chk(tls, context, 0, uint64(208), ^t__predefined_size_t(0))
  4379. }
  4380. const m_ACCESSX_MAX_DESCRIPTORS = 100
  4381. const m_ATTRIBUTION_NAME_MAX = 255
  4382. const m_AT_EACCESS = 0x0010
  4383. const m_AT_FDONLY = 0x0400
  4384. const m_AT_REALDEV = 0x0200
  4385. const m_AT_REMOVEDIR = 0x0080
  4386. const m_AT_SYMLINK_FOLLOW = 0x0040
  4387. const m_AT_SYMLINK_NOFOLLOW = 0x0020
  4388. const m_AT_SYMLINK_NOFOLLOW_ANY = 0x0800
  4389. const m_BADSIG = "SIG_ERR"
  4390. const m_BC_BASE_MAX = 99
  4391. const m_BC_DIM_MAX = 2048
  4392. const m_BC_SCALE_MAX = 99
  4393. const m_BC_STRING_MAX = 1000
  4394. const m_BUFSIZ = 1024
  4395. const m_BUS_ADRALN = 1
  4396. const m_BUS_ADRERR = 2
  4397. const m_BUS_NOOP = 0
  4398. const m_BUS_OBJERR = 3
  4399. const m_CHARCLASS_NAME_MAX = 14
  4400. const m_CHILD_MAX = 266
  4401. const m_CLD_CONTINUED = 6
  4402. const m_CLD_DUMPED = 3
  4403. const m_CLD_EXITED = 1
  4404. const m_CLD_KILLED = 2
  4405. const m_CLD_NOOP = 0
  4406. const m_CLD_STOPPED = 5
  4407. const m_CLD_TRAPPED = 4
  4408. const m_COLL_WEIGHTS_MAX = 2
  4409. const m_CPF_IGNORE_MODE = 0x0002
  4410. const m_CPF_OVERWRITE = 0x0001
  4411. const m_CPUMON_MAKE_FATAL = 0x1000
  4412. const m_E2BIG = 7
  4413. const m_EACCES = 13
  4414. const m_EADDRINUSE = 48
  4415. const m_EADDRNOTAVAIL = 49
  4416. const m_EAFNOSUPPORT = 47
  4417. const m_EAGAIN = 35
  4418. const m_EALREADY = 37
  4419. const m_EAUTH = 80
  4420. const m_EBADARCH = 86
  4421. const m_EBADEXEC = 85
  4422. const m_EBADF = 9
  4423. const m_EBADMACHO = 88
  4424. const m_EBADMSG = 94
  4425. const m_EBADRPC = 72
  4426. const m_EBUSY = 16
  4427. const m_ECANCELED = 89
  4428. const m_ECHILD = 10
  4429. const m_ECONNABORTED = 53
  4430. const m_ECONNREFUSED = 61
  4431. const m_ECONNRESET = 54
  4432. const m_EDEADLK = 11
  4433. const m_EDESTADDRREQ = 39
  4434. const m_EDEVERR = 83
  4435. const m_EDOM = 33
  4436. const m_EDQUOT = 69
  4437. const m_EEXIST = 17
  4438. const m_EFAULT = 14
  4439. const m_EFBIG = 27
  4440. const m_EFTYPE = 79
  4441. const m_EF_IS_PURGEABLE = 0x00000008
  4442. const m_EF_IS_SPARSE = 0x00000010
  4443. const m_EF_IS_SYNC_ROOT = 0x00000004
  4444. const m_EF_IS_SYNTHETIC = 0x00000020
  4445. const m_EF_MAY_SHARE_BLOCKS = 0x00000001
  4446. const m_EF_NO_XATTRS = 0x00000002
  4447. const m_EF_SHARES_ALL_BLOCKS = 0x00000040
  4448. const m_EHOSTDOWN = 64
  4449. const m_EHOSTUNREACH = 65
  4450. const m_EIDRM = 90
  4451. const m_EILSEQ = 92
  4452. const m_EINPROGRESS = 36
  4453. const m_EINTR = 4
  4454. const m_EINVAL = 22
  4455. const m_EIO = 5
  4456. const m_EISCONN = 56
  4457. const m_EISDIR = 21
  4458. const m_ELAST = 106
  4459. const m_ELOOP = 62
  4460. const m_EMFILE = 24
  4461. const m_EMLINK = 31
  4462. const m_EMSGSIZE = 40
  4463. const m_EMULTIHOP = 95
  4464. const m_ENAMETOOLONG = 63
  4465. const m_ENEEDAUTH = 81
  4466. const m_ENETDOWN = 50
  4467. const m_ENETRESET = 52
  4468. const m_ENETUNREACH = 51
  4469. const m_ENFILE = 23
  4470. const m_ENOATTR = 93
  4471. const m_ENOBUFS = 55
  4472. const m_ENODATA = 96
  4473. const m_ENODEV = 19
  4474. const m_ENOENT = 2
  4475. const m_ENOEXEC = 8
  4476. const m_ENOLCK = 77
  4477. const m_ENOLINK = 97
  4478. const m_ENOMEM = 12
  4479. const m_ENOMSG = 91
  4480. const m_ENOPOLICY = 103
  4481. const m_ENOPROTOOPT = 42
  4482. const m_ENOSPC = 28
  4483. const m_ENOSR = 98
  4484. const m_ENOSTR = 99
  4485. const m_ENOSYS = 78
  4486. const m_ENOTBLK = 15
  4487. const m_ENOTCONN = 57
  4488. const m_ENOTDIR = 20
  4489. const m_ENOTEMPTY = 66
  4490. const m_ENOTRECOVERABLE = 104
  4491. const m_ENOTSOCK = 38
  4492. const m_ENOTSUP = 45
  4493. const m_ENOTTY = 25
  4494. const m_ENXIO = 6
  4495. const m_EOPNOTSUPP = 102
  4496. const m_EOVERFLOW = 84
  4497. const m_EOWNERDEAD = 105
  4498. const m_EPERM = 1
  4499. const m_EPFNOSUPPORT = 46
  4500. const m_EPIPE = 32
  4501. const m_EPROCLIM = 67
  4502. const m_EPROCUNAVAIL = 76
  4503. const m_EPROGMISMATCH = 75
  4504. const m_EPROGUNAVAIL = 74
  4505. const m_EPROTO = 100
  4506. const m_EPROTONOSUPPORT = 43
  4507. const m_EPROTOTYPE = 41
  4508. const m_EPWROFF = 82
  4509. const m_EQFULL = 106
  4510. const m_EQUIV_CLASS_MAX = 2
  4511. const m_ERANGE = 34
  4512. const m_EREMOTE = 71
  4513. const m_EROFS = 30
  4514. const m_ERPCMISMATCH = 73
  4515. const m_ESHLIBVERS = 87
  4516. const m_ESHUTDOWN = 58
  4517. const m_ESOCKTNOSUPPORT = 44
  4518. const m_ESPIPE = 29
  4519. const m_ESRCH = 3
  4520. const m_ESTALE = 70
  4521. const m_ETIME = 101
  4522. const m_ETIMEDOUT = 60
  4523. const m_ETOOMANYREFS = 59
  4524. const m_ETXTBSY = 26
  4525. const m_EUSERS = 68
  4526. const m_EWOULDBLOCK = "EAGAIN"
  4527. const m_EXDEV = 18
  4528. const m_EXIT_FAILURE = 1
  4529. const m_EXIT_SUCCESS = 0
  4530. const m_EXPR_NEST_MAX = 32
  4531. const m_FAPPEND = "O_APPEND"
  4532. const m_FASYNC = "O_ASYNC"
  4533. const m_FCNTL_FS_SPECIFIC_BASE = 0x00010000
  4534. const m_FD_CLOEXEC = 1
  4535. const m_FFDSYNC = "O_DSYNC"
  4536. const m_FFSYNC = "O_FSYNC"
  4537. const m_FILENAME_MAX = 1024
  4538. const m_FILESEC_GUID = "FILESEC_UUID"
  4539. const m_FNDELAY = "O_NONBLOCK"
  4540. const m_FNONBLOCK = "O_NONBLOCK"
  4541. const m_FOOTPRINT_INTERVAL_RESET = 0x1
  4542. const m_FOPEN_MAX = 20
  4543. const m_FPE_FLTDIV = 1
  4544. const m_FPE_FLTINV = 5
  4545. const m_FPE_FLTOVF = 2
  4546. const m_FPE_FLTRES = 4
  4547. const m_FPE_FLTSUB = 6
  4548. const m_FPE_FLTUND = 3
  4549. const m_FPE_INTDIV = 7
  4550. const m_FPE_INTOVF = 8
  4551. const m_FPE_NOOP = 0
  4552. const m_FP_CHOP = 3
  4553. const m_FP_PREC_24B = 0
  4554. const m_FP_PREC_53B = 2
  4555. const m_FP_PREC_64B = 3
  4556. const m_FP_RND_DOWN = 1
  4557. const m_FP_RND_NEAR = 0
  4558. const m_FP_RND_UP = 2
  4559. const m_FP_STATE_BYTES = 512
  4560. const m_FREAD = 0x00000001
  4561. const m_FWRITE = 0x00000002
  4562. const m_F_ADDFILESIGS = 61
  4563. const m_F_ADDFILESIGS_FOR_DYLD_SIM = 83
  4564. const m_F_ADDFILESIGS_INFO = 103
  4565. const m_F_ADDFILESIGS_RETURN = 97
  4566. const m_F_ADDFILESUPPL = 104
  4567. const m_F_ADDSIGS = 59
  4568. const m_F_ADDSIGS_MAIN_BINARY = 113
  4569. const m_F_ALLOCATEALL = 0x00000004
  4570. const m_F_ALLOCATECONTIG = 0x00000002
  4571. const m_F_ALLOCATEPERSIST = 0x00000008
  4572. const m_F_ATTRIBUTION_TAG = 111
  4573. const m_F_BARRIERFSYNC = 85
  4574. const m_F_CHECK_LV = 98
  4575. const m_F_CHKCLEAN = 41
  4576. const m_F_CREATE_TAG = 0x00000001
  4577. const m_F_DELETE_TAG = 0x00000002
  4578. const m_F_DUPFD = 0
  4579. const m_F_DUPFD_CLOEXEC = 67
  4580. const m_F_FINDSIGS = 78
  4581. const m_F_FLUSH_DATA = 40
  4582. const m_F_FREEZE_FS = 53
  4583. const m_F_FULLFSYNC = 51
  4584. const m_F_GETCODEDIR = 72
  4585. const m_F_GETFD = 1
  4586. const m_F_GETFL = 3
  4587. const m_F_GETLEASE = 107
  4588. const m_F_GETLK = 7
  4589. const m_F_GETLKPID = 66
  4590. const m_F_GETNOSIGPIPE = 74
  4591. const m_F_GETOWN = 5
  4592. const m_F_GETPATH = 50
  4593. const m_F_GETPATH_MTMINFO = 71
  4594. const m_F_GETPATH_NOFIRMLINK = 102
  4595. const m_F_GETPROTECTIONCLASS = 63
  4596. const m_F_GETPROTECTIONLEVEL = 77
  4597. const m_F_GETSIGSINFO = 105
  4598. const m_F_GLOBAL_NOCACHE = 55
  4599. const m_F_LOCK = 1
  4600. const m_F_LOG2PHYS = 49
  4601. const m_F_LOG2PHYS_EXT = 65
  4602. const m_F_NOCACHE = 48
  4603. const m_F_NODIRECT = 62
  4604. const m_F_OFD_GETLK = 92
  4605. const m_F_OFD_SETLK = 90
  4606. const m_F_OFD_SETLKW = 91
  4607. const m_F_OFD_SETLKWTIMEOUT = 93
  4608. const m_F_OK = 0
  4609. const m_F_PATHPKG_CHECK = 52
  4610. const m_F_PEOFPOSMODE = 3
  4611. const m_F_PREALLOCATE = 42
  4612. const m_F_PUNCHHOLE = 99
  4613. const m_F_QUERY_TAG = 0x00000004
  4614. const m_F_RDADVISE = 44
  4615. const m_F_RDAHEAD = 45
  4616. const m_F_RDLCK = 1
  4617. const m_F_SETBACKINGSTORE = 70
  4618. const m_F_SETFD = 2
  4619. const m_F_SETFL = 4
  4620. const m_F_SETLEASE = 106
  4621. const m_F_SETLK = 8
  4622. const m_F_SETLKW = 9
  4623. const m_F_SETLKWTIMEOUT = 10
  4624. const m_F_SETNOSIGPIPE = 73
  4625. const m_F_SETOWN = 6
  4626. const m_F_SETPROTECTIONCLASS = 64
  4627. const m_F_SETSIZE = 43
  4628. const m_F_SINGLE_WRITER = 76
  4629. const m_F_SPECULATIVE_READ = 101
  4630. const m_F_TEST = 3
  4631. const m_F_THAW_FS = 54
  4632. const m_F_TLOCK = 2
  4633. const m_F_TRANSCODEKEY = 75
  4634. const m_F_TRANSFEREXTENTS = 110
  4635. const m_F_TRIM_ACTIVE_FILE = 100
  4636. const m_F_ULOCK = 0
  4637. const m_F_UNLCK = 2
  4638. const m_F_VOLPOSMODE = 4
  4639. const m_F_WRLCK = 3
  4640. const m_GETSIGSINFO_PLATFORM_BINARY = 1
  4641. const m_GID_MAX = 2147483647
  4642. const m_ILL_BADSTK = 8
  4643. const m_ILL_COPROC = 7
  4644. const m_ILL_ILLADR = 5
  4645. const m_ILL_ILLOPC = 1
  4646. const m_ILL_ILLOPN = 4
  4647. const m_ILL_ILLTRP = 2
  4648. const m_ILL_NOOP = 0
  4649. const m_ILL_PRVOPC = 3
  4650. const m_ILL_PRVREG = 6
  4651. const m_IOPOL_APPLICATION = "IOPOL_STANDARD"
  4652. const m_IOPOL_ATIME_UPDATES_DEFAULT = 0
  4653. const m_IOPOL_ATIME_UPDATES_OFF = 1
  4654. const m_IOPOL_DEFAULT = 0
  4655. const m_IOPOL_IMPORTANT = 1
  4656. const m_IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT = 0
  4657. const m_IOPOL_MATERIALIZE_DATALESS_FILES_OFF = 1
  4658. const m_IOPOL_MATERIALIZE_DATALESS_FILES_ON = 2
  4659. const m_IOPOL_NORMAL = "IOPOL_IMPORTANT"
  4660. const m_IOPOL_PASSIVE = 2
  4661. const m_IOPOL_SCOPE_DARWIN_BG = 2
  4662. const m_IOPOL_SCOPE_PROCESS = 0
  4663. const m_IOPOL_SCOPE_THREAD = 1
  4664. const m_IOPOL_STANDARD = 5
  4665. const m_IOPOL_THROTTLE = 3
  4666. const m_IOPOL_TYPE_DISK = 0
  4667. const m_IOPOL_TYPE_VFS_ALLOW_LOW_SPACE_WRITES = 9
  4668. const m_IOPOL_TYPE_VFS_ATIME_UPDATES = 2
  4669. const m_IOPOL_TYPE_VFS_DISALLOW_RW_FOR_O_EVTONLY = 10
  4670. const m_IOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION = 6
  4671. const m_IOPOL_TYPE_VFS_IGNORE_PERMISSIONS = 7
  4672. const m_IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES = 3
  4673. const m_IOPOL_TYPE_VFS_SKIP_MTIME_UPDATE = 8
  4674. const m_IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME = 4
  4675. const m_IOPOL_TYPE_VFS_TRIGGER_RESOLVE = 5
  4676. const m_IOPOL_UTILITY = 4
  4677. const m_IOPOL_VFS_ALLOW_LOW_SPACE_WRITES_OFF = 0
  4678. const m_IOPOL_VFS_ALLOW_LOW_SPACE_WRITES_ON = 1
  4679. const m_IOPOL_VFS_CONTENT_PROTECTION_DEFAULT = 0
  4680. const m_IOPOL_VFS_CONTENT_PROTECTION_IGNORE = 1
  4681. const m_IOPOL_VFS_DISALLOW_RW_FOR_O_EVTONLY_DEFAULT = 0
  4682. const m_IOPOL_VFS_DISALLOW_RW_FOR_O_EVTONLY_ON = 1
  4683. const m_IOPOL_VFS_IGNORE_PERMISSIONS_OFF = 0
  4684. const m_IOPOL_VFS_IGNORE_PERMISSIONS_ON = 1
  4685. const m_IOPOL_VFS_NOCACHE_WRITE_FS_BLKSIZE_DEFAULT = 0
  4686. const m_IOPOL_VFS_NOCACHE_WRITE_FS_BLKSIZE_ON = 1
  4687. const m_IOPOL_VFS_SKIP_MTIME_UPDATE_IGNORE = 2
  4688. const m_IOPOL_VFS_SKIP_MTIME_UPDATE_OFF = 0
  4689. const m_IOPOL_VFS_SKIP_MTIME_UPDATE_ON = 1
  4690. const m_IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME = 1
  4691. const m_IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT = 0
  4692. const m_IOPOL_VFS_TRIGGER_RESOLVE_DEFAULT = 0
  4693. const m_IOPOL_VFS_TRIGGER_RESOLVE_OFF = 1
  4694. const m_LINE_MAX = 2048
  4695. const m_LINK_MAX = 32767
  4696. const m_LOCK_EX = 0x02
  4697. const m_LOCK_NB = 0x04
  4698. const m_LOCK_SH = 0x01
  4699. const m_LOCK_UN = 0x08
  4700. const m_L_INCR = "SEEK_CUR"
  4701. const m_L_SET = "SEEK_SET"
  4702. const m_L_XTND = "SEEK_END"
  4703. const m_L_ctermid = 1024
  4704. const m_L_tmpnam = 1024
  4705. const m_MAX_CANON = 1024
  4706. const m_MAX_INPUT = 1024
  4707. const m_MB_CUR_MAX = "__mb_cur_max"
  4708. const m_MINSIGSTKSZ = 32768
  4709. const m_NAME_MAX = 255
  4710. const m_NGROUPS_MAX = 16
  4711. const m_NSIG = "__DARWIN_NSIG"
  4712. const m_NZERO = 20
  4713. const m_OPEN_MAX = 10240
  4714. const m_O_ACCMODE = 0x0003
  4715. const m_O_ALERT = 0x20000000
  4716. const m_O_APPEND = 0x00000008
  4717. const m_O_ASYNC = 0x00000040
  4718. const m_O_CLOEXEC = 0x01000000
  4719. const m_O_CREAT = 0x00000200
  4720. const m_O_DIRECTORY = 0x00100000
  4721. const m_O_DP_AUTHENTICATE = 0x0004
  4722. const m_O_DP_GETRAWENCRYPTED = 0x0001
  4723. const m_O_DP_GETRAWUNENCRYPTED = 0x0002
  4724. const m_O_DSYNC = 0x400000
  4725. const m_O_EVTONLY = 0x00008000
  4726. const m_O_EXCL = 0x00000800
  4727. const m_O_EXEC = 0x40000000
  4728. const m_O_EXLOCK = 0x00000020
  4729. const m_O_FSYNC = "O_SYNC"
  4730. const m_O_NDELAY = "O_NONBLOCK"
  4731. const m_O_NOCTTY = 0x00020000
  4732. const m_O_NOFOLLOW = 0x00000100
  4733. const m_O_NOFOLLOW_ANY = 0x20000000
  4734. const m_O_NONBLOCK = 0x00000004
  4735. const m_O_POPUP = 0x80000000
  4736. const m_O_RDONLY = 0
  4737. const m_O_RDWR = 0x0002
  4738. const m_O_RESOLVE_BENEATH = 0x00001000
  4739. const m_O_SHLOCK = 0x00000010
  4740. const m_O_SYMLINK = 0x00200000
  4741. const m_O_SYNC = 0x0080
  4742. const m_O_TRUNC = 0x00000400
  4743. const m_O_WRONLY = 0x0001
  4744. const m_PATH_MAX = 1024
  4745. const m_PIPE_BUF = 512
  4746. const m_POLL_ERR = 4
  4747. const m_POLL_HUP = 6
  4748. const m_POLL_IN = 1
  4749. const m_POLL_MSG = 3
  4750. const m_POLL_OUT = 2
  4751. const m_POLL_PRI = 5
  4752. const m_PRIO_DARWIN_BG = 0x1000
  4753. const m_PRIO_DARWIN_NONUI = 0x1001
  4754. const m_PRIO_DARWIN_PROCESS = 4
  4755. const m_PRIO_DARWIN_THREAD = 3
  4756. const m_PRIO_MAX = 20
  4757. const m_PRIO_PGRP = 1
  4758. const m_PRIO_PROCESS = 0
  4759. const m_PRIO_USER = 2
  4760. const m_P_tmpdir = "/var/tmp/"
  4761. const m_RAND_MAX = 0x7fffffff
  4762. const m_RENAME_EXCL = 0x00000004
  4763. const m_RENAME_NOFOLLOW_ANY = 0x00000010
  4764. const m_RENAME_RESERVED1 = 0x00000008
  4765. const m_RENAME_SECLUDE = 0x00000001
  4766. const m_RENAME_SWAP = 0x00000002
  4767. const m_RE_DUP_MAX = 255
  4768. const m_RLIMIT_AS = 5
  4769. const m_RLIMIT_CORE = 4
  4770. const m_RLIMIT_CPU = 0
  4771. const m_RLIMIT_CPU_USAGE_MONITOR = 0x2
  4772. const m_RLIMIT_DATA = 2
  4773. const m_RLIMIT_FOOTPRINT_INTERVAL = 0x4
  4774. const m_RLIMIT_FSIZE = 1
  4775. const m_RLIMIT_MEMLOCK = 6
  4776. const m_RLIMIT_NOFILE = 8
  4777. const m_RLIMIT_NPROC = 7
  4778. const m_RLIMIT_RSS = "RLIMIT_AS"
  4779. const m_RLIMIT_STACK = 3
  4780. const m_RLIMIT_THREAD_CPULIMITS = 0x3
  4781. const m_RLIMIT_WAKEUPS_MONITOR = 0x1
  4782. const m_RLIM_NLIMITS = 9
  4783. const m_RLIM_SAVED_CUR = "RLIM_INFINITY"
  4784. const m_RLIM_SAVED_MAX = "RLIM_INFINITY"
  4785. const m_RUSAGE_INFO_CURRENT = "RUSAGE_INFO_V6"
  4786. const m_RUSAGE_INFO_V0 = 0
  4787. const m_RUSAGE_INFO_V1 = 1
  4788. const m_RUSAGE_INFO_V2 = 2
  4789. const m_RUSAGE_INFO_V3 = 3
  4790. const m_RUSAGE_INFO_V4 = 4
  4791. const m_RUSAGE_INFO_V5 = 5
  4792. const m_RUSAGE_INFO_V6 = 6
  4793. const m_RUSAGE_SELF = 0
  4794. const m_RU_PROC_RUNS_RESLIDE = 0x00000001
  4795. const m_SA_64REGSET = 0x0200
  4796. const m_SA_NOCLDSTOP = 0x0008
  4797. const m_SA_NOCLDWAIT = 0x0020
  4798. const m_SA_NODEFER = 0x0010
  4799. const m_SA_ONSTACK = 0x0001
  4800. const m_SA_RESETHAND = 0x0004
  4801. const m_SA_RESTART = 0x0002
  4802. const m_SA_SIGINFO = 0x0040
  4803. const m_SA_USERTRAMP = 0x0100
  4804. const m_SEEK_CUR = 1
  4805. const m_SEEK_DATA = 4
  4806. const m_SEEK_END = 2
  4807. const m_SEEK_HOLE = 3
  4808. const m_SEEK_SET = 0
  4809. const m_SEGV_ACCERR = 2
  4810. const m_SEGV_MAPERR = 1
  4811. const m_SEGV_NOOP = 0
  4812. const m_SF_APPEND = 0x00040000
  4813. const m_SF_ARCHIVED = 0x00010000
  4814. const m_SF_DATALESS = 0x40000000
  4815. const m_SF_FIRMLINK = 0x00800000
  4816. const m_SF_IMMUTABLE = 0x00020000
  4817. const m_SF_NOUNLINK = 0x00100000
  4818. const m_SF_RESTRICTED = 0x00080000
  4819. const m_SF_SETTABLE = 0x3fff0000
  4820. const m_SF_SUPPORTED = 0x009f0000
  4821. const m_SF_SYNTHETIC = 0xc0000000
  4822. const m_SIGABRT = 6
  4823. const m_SIGALRM = 14
  4824. const m_SIGBUS = 10
  4825. const m_SIGCHLD = 20
  4826. const m_SIGCONT = 19
  4827. const m_SIGEMT = 7
  4828. const m_SIGEV_NONE = 0
  4829. const m_SIGEV_SIGNAL = 1
  4830. const m_SIGEV_THREAD = 3
  4831. const m_SIGFPE = 8
  4832. const m_SIGHUP = 1
  4833. const m_SIGILL = 4
  4834. const m_SIGINFO = 29
  4835. const m_SIGINT = 2
  4836. const m_SIGIO = 23
  4837. const m_SIGIOT = "SIGABRT"
  4838. const m_SIGKILL = 9
  4839. const m_SIGPIPE = 13
  4840. const m_SIGPROF = 27
  4841. const m_SIGQUIT = 3
  4842. const m_SIGSEGV = 11
  4843. const m_SIGSTKSZ = 131072
  4844. const m_SIGSTOP = 17
  4845. const m_SIGSYS = 12
  4846. const m_SIGTERM = 15
  4847. const m_SIGTRAP = 5
  4848. const m_SIGTSTP = 18
  4849. const m_SIGTTIN = 21
  4850. const m_SIGTTOU = 22
  4851. const m_SIGURG = 16
  4852. const m_SIGUSR1 = 30
  4853. const m_SIGUSR2 = 31
  4854. const m_SIGVTALRM = 26
  4855. const m_SIGWINCH = 28
  4856. const m_SIGXCPU = 24
  4857. const m_SIGXFSZ = 25
  4858. const m_SIG_BLOCK = 1
  4859. const m_SIG_SETMASK = 3
  4860. const m_SIG_UNBLOCK = 2
  4861. const m_SI_ASYNCIO = 0x10004
  4862. const m_SI_MESGQ = 0x10005
  4863. const m_SI_QUEUE = 0x10002
  4864. const m_SI_TIMER = 0x10003
  4865. const m_SI_USER = 0x10001
  4866. const m_SS_DISABLE = 0x0004
  4867. const m_SS_ONSTACK = 0x0001
  4868. const m_STDERR_FILENO = 2
  4869. const m_STDIN_FILENO = 0
  4870. const m_STDOUT_FILENO = 1
  4871. const m_SV_INTERRUPT = "SA_RESTART"
  4872. const m_SV_NOCLDSTOP = "SA_NOCLDSTOP"
  4873. const m_SV_NODEFER = "SA_NODEFER"
  4874. const m_SV_ONSTACK = "SA_ONSTACK"
  4875. const m_SV_RESETHAND = "SA_RESETHAND"
  4876. const m_SV_SIGINFO = "SA_SIGINFO"
  4877. const m_SYNC_VOLUME_FULLSYNC = 0x01
  4878. const m_SYNC_VOLUME_WAIT = 0x02
  4879. const m_S_BLKSIZE = 512
  4880. const m_S_IEXEC = "S_IXUSR"
  4881. const m_S_IFBLK = 0060000
  4882. const m_S_IFCHR = 0020000
  4883. const m_S_IFDIR = 0040000
  4884. const m_S_IFIFO = 0010000
  4885. const m_S_IFLNK = 0120000
  4886. const m_S_IFMT = 0170000
  4887. const m_S_IFREG = 0100000
  4888. const m_S_IFSOCK = 0140000
  4889. const m_S_IFWHT = 0160000
  4890. const m_S_IREAD = "S_IRUSR"
  4891. const m_S_IRGRP = 0000040
  4892. const m_S_IROTH = 0000004
  4893. const m_S_IRUSR = 0000400
  4894. const m_S_IRWXG = 0000070
  4895. const m_S_IRWXO = 0000007
  4896. const m_S_IRWXU = 0000700
  4897. const m_S_ISGID = 0002000
  4898. const m_S_ISTXT = "S_ISVTX"
  4899. const m_S_ISUID = 0004000
  4900. const m_S_ISVTX = 0001000
  4901. const m_S_IWGRP = 0000020
  4902. const m_S_IWOTH = 0000002
  4903. const m_S_IWRITE = "S_IWUSR"
  4904. const m_S_IWUSR = 0000200
  4905. const m_S_IXGRP = 0000010
  4906. const m_S_IXOTH = 0000001
  4907. const m_S_IXUSR = 0000100
  4908. const m_TMP_MAX = 308915776
  4909. const m_TRAP_BRKPT = 1
  4910. const m_TRAP_TRACE = 2
  4911. const m_UF_APPEND = 0x00000004
  4912. const m_UF_COMPRESSED = 0x00000020
  4913. const m_UF_DATAVAULT = 0x00000080
  4914. const m_UF_HIDDEN = 0x00008000
  4915. const m_UF_IMMUTABLE = 0x00000002
  4916. const m_UF_NODUMP = 0x00000001
  4917. const m_UF_OPAQUE = 0x00000008
  4918. const m_UF_SETTABLE = 0x0000ffff
  4919. const m_UF_TRACKED = 0x00000040
  4920. const m_UID_MAX = 2147483647
  4921. const m_USER_FSIGNATURES_CDHASH_LEN = 20
  4922. const m_WAIT_MYPGRP = 0
  4923. const m_WAKEMON_DISABLE = 0x02
  4924. const m_WAKEMON_ENABLE = 0x01
  4925. const m_WAKEMON_GET_PARAMS = 0x04
  4926. const m_WAKEMON_MAKE_FATAL = 0x10
  4927. const m_WAKEMON_SET_DEFAULTS = 0x08
  4928. const m_WCONTINUED = 0x00000010
  4929. const m_WCOREFLAG = 0200
  4930. const m_WEXITED = 0x00000004
  4931. const m_WNOHANG = 0x00000001
  4932. const m_WNOWAIT = 0x00000020
  4933. const m_WSTOPPED = 0x00000008
  4934. const m_WUNTRACED = 0x00000002
  4935. const m__CS_DARWIN_USER_CACHE_DIR = 65538
  4936. const m__CS_DARWIN_USER_DIR = 65536
  4937. const m__CS_DARWIN_USER_TEMP_DIR = 65537
  4938. const m__CS_PATH = 1
  4939. const m__CS_POSIX_V6_ILP32_OFF32_CFLAGS = 2
  4940. const m__CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 3
  4941. const m__CS_POSIX_V6_ILP32_OFF32_LIBS = 4
  4942. const m__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 5
  4943. const m__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 6
  4944. const m__CS_POSIX_V6_ILP32_OFFBIG_LIBS = 7
  4945. const m__CS_POSIX_V6_LP64_OFF64_CFLAGS = 8
  4946. const m__CS_POSIX_V6_LP64_OFF64_LDFLAGS = 9
  4947. const m__CS_POSIX_V6_LP64_OFF64_LIBS = 10
  4948. const m__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 11
  4949. const m__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 12
  4950. const m__CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 13
  4951. const m__CS_POSIX_V6_WIDTH_RESTRICTED_ENVS = 14
  4952. const m__CS_XBS5_ILP32_OFF32_CFLAGS = 20
  4953. const m__CS_XBS5_ILP32_OFF32_LDFLAGS = 21
  4954. const m__CS_XBS5_ILP32_OFF32_LIBS = 22
  4955. const m__CS_XBS5_ILP32_OFF32_LINTFLAGS = 23
  4956. const m__CS_XBS5_ILP32_OFFBIG_CFLAGS = 24
  4957. const m__CS_XBS5_ILP32_OFFBIG_LDFLAGS = 25
  4958. const m__CS_XBS5_ILP32_OFFBIG_LIBS = 26
  4959. const m__CS_XBS5_ILP32_OFFBIG_LINTFLAGS = 27
  4960. const m__CS_XBS5_LP64_OFF64_CFLAGS = 28
  4961. const m__CS_XBS5_LP64_OFF64_LDFLAGS = 29
  4962. const m__CS_XBS5_LP64_OFF64_LIBS = 30
  4963. const m__CS_XBS5_LP64_OFF64_LINTFLAGS = 31
  4964. const m__CS_XBS5_LPBIG_OFFBIG_CFLAGS = 32
  4965. const m__CS_XBS5_LPBIG_OFFBIG_LDFLAGS = 33
  4966. const m__CS_XBS5_LPBIG_OFFBIG_LIBS = 34
  4967. const m__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = 35
  4968. const m__I386_SIGNAL_H_ = 1
  4969. const m__IOFBF = 0
  4970. const m__IOLBF = 1
  4971. const m__IONBF = 2
  4972. const m__LIBC_COUNT__MB_LEN_MAX = "_LIBC_UNSAFE_INDEXABLE"
  4973. const m__LIBC_COUNT__PATH_MAX = "_LIBC_UNSAFE_INDEXABLE"
  4974. const m__PC_2_SYMLINKS = 15
  4975. const m__PC_ALLOC_SIZE_MIN = 16
  4976. const m__PC_ASYNC_IO = 17
  4977. const m__PC_AUTH_OPAQUE_NP = 14
  4978. const m__PC_CASE_PRESERVING = 12
  4979. const m__PC_CASE_SENSITIVE = 11
  4980. const m__PC_CHOWN_RESTRICTED = 7
  4981. const m__PC_EXTENDED_SECURITY_NP = 13
  4982. const m__PC_FILESIZEBITS = 18
  4983. const m__PC_LINK_MAX = 1
  4984. const m__PC_MAX_CANON = 2
  4985. const m__PC_MAX_INPUT = 3
  4986. const m__PC_MIN_HOLE_SIZE = 27
  4987. const m__PC_NAME_CHARS_MAX = 10
  4988. const m__PC_NAME_MAX = 4
  4989. const m__PC_NO_TRUNC = 8
  4990. const m__PC_PATH_MAX = 5
  4991. const m__PC_PIPE_BUF = 6
  4992. const m__PC_PRIO_IO = 19
  4993. const m__PC_REC_INCR_XFER_SIZE = 20
  4994. const m__PC_REC_MAX_XFER_SIZE = 21
  4995. const m__PC_REC_MIN_XFER_SIZE = 22
  4996. const m__PC_REC_XFER_ALIGN = 23
  4997. const m__PC_SYMLINK_MAX = 24
  4998. const m__PC_SYNC_IO = 25
  4999. const m__PC_VDISABLE = 9
  5000. const m__PC_XATTR_SIZE_BITS = 26
  5001. const m__POSIX2_CHAR_TERM = 200112
  5002. const m__POSIX2_C_BIND = 200112
  5003. const m__POSIX2_C_DEV = 200112
  5004. const m__POSIX2_FORT_RUN = 200112
  5005. const m__POSIX2_LOCALEDEF = 200112
  5006. const m__POSIX2_SW_DEV = 200112
  5007. const m__POSIX2_UPE = 200112
  5008. const m__POSIX2_VERSION = 200112
  5009. const m__POSIX_CHOWN_RESTRICTED = 200112
  5010. const m__POSIX_FSYNC = 200112
  5011. const m__POSIX_IPV6 = 200112
  5012. const m__POSIX_JOB_CONTROL = 200112
  5013. const m__POSIX_MAPPED_FILES = 200112
  5014. const m__POSIX_MEMORY_PROTECTION = 200112
  5015. const m__POSIX_NO_TRUNC = 200112
  5016. const m__POSIX_READER_WRITER_LOCKS = 200112
  5017. const m__POSIX_REGEXP = 200112
  5018. const m__POSIX_SAVED_IDS = 200112
  5019. const m__POSIX_SHELL = 200112
  5020. const m__POSIX_SPAWN = 200112
  5021. const m__POSIX_THREADS = 200112
  5022. const m__POSIX_THREAD_ATTR_STACKADDR = 200112
  5023. const m__POSIX_THREAD_ATTR_STACKSIZE = 200112
  5024. const m__POSIX_THREAD_KEYS_MAX = 128
  5025. const m__POSIX_THREAD_PROCESS_SHARED = 200112
  5026. const m__POSIX_THREAD_SAFE_FUNCTIONS = 200112
  5027. const m__POSIX_V6_ILP32_OFF32 = "__ILP32_OFF32"
  5028. const m__POSIX_V6_ILP32_OFFBIG = "__ILP32_OFFBIG"
  5029. const m__POSIX_V6_LP64_OFF64 = "__LP64_OFF64"
  5030. const m__POSIX_V6_LPBIG_OFFBIG = "__LPBIG_OFFBIG"
  5031. const m__POSIX_V7_ILP32_OFF32 = "__ILP32_OFF32"
  5032. const m__POSIX_V7_ILP32_OFFBIG = "__ILP32_OFFBIG"
  5033. const m__POSIX_V7_LP64_OFF64 = "__LP64_OFF64"
  5034. const m__POSIX_V7_LPBIG_OFFBIG = "__LPBIG_OFFBIG"
  5035. const m__POSIX_VERSION = 200112
  5036. const m__RLIMIT_POSIX_FLAG = 0x1000
  5037. const m__SC_2_CHAR_TERM = 20
  5038. const m__SC_2_C_BIND = 18
  5039. const m__SC_2_C_DEV = 19
  5040. const m__SC_2_FORT_DEV = 21
  5041. const m__SC_2_FORT_RUN = 22
  5042. const m__SC_2_LOCALEDEF = 23
  5043. const m__SC_2_PBS = 59
  5044. const m__SC_2_PBS_ACCOUNTING = 60
  5045. const m__SC_2_PBS_CHECKPOINT = 61
  5046. const m__SC_2_PBS_LOCATE = 62
  5047. const m__SC_2_PBS_MESSAGE = 63
  5048. const m__SC_2_PBS_TRACK = 64
  5049. const m__SC_2_SW_DEV = 24
  5050. const m__SC_2_UPE = 25
  5051. const m__SC_2_VERSION = 17
  5052. const m__SC_ADVISORY_INFO = 65
  5053. const m__SC_AIO_LISTIO_MAX = 42
  5054. const m__SC_AIO_MAX = 43
  5055. const m__SC_AIO_PRIO_DELTA_MAX = 44
  5056. const m__SC_ARG_MAX = 1
  5057. const m__SC_ASYNCHRONOUS_IO = 28
  5058. const m__SC_ATEXIT_MAX = 107
  5059. const m__SC_BARRIERS = 66
  5060. const m__SC_BC_BASE_MAX = 9
  5061. const m__SC_BC_DIM_MAX = 10
  5062. const m__SC_BC_SCALE_MAX = 11
  5063. const m__SC_BC_STRING_MAX = 12
  5064. const m__SC_CHILD_MAX = 2
  5065. const m__SC_CLK_TCK = 3
  5066. const m__SC_CLOCK_SELECTION = 67
  5067. const m__SC_COLL_WEIGHTS_MAX = 13
  5068. const m__SC_CPUTIME = 68
  5069. const m__SC_DELAYTIMER_MAX = 45
  5070. const m__SC_EXPR_NEST_MAX = 14
  5071. const m__SC_FILE_LOCKING = 69
  5072. const m__SC_FSYNC = 38
  5073. const m__SC_GETGR_R_SIZE_MAX = 70
  5074. const m__SC_GETPW_R_SIZE_MAX = 71
  5075. const m__SC_HOST_NAME_MAX = 72
  5076. const m__SC_IOV_MAX = 56
  5077. const m__SC_IPV6 = 118
  5078. const m__SC_JOB_CONTROL = 6
  5079. const m__SC_LINE_MAX = 15
  5080. const m__SC_LOGIN_NAME_MAX = 73
  5081. const m__SC_MAPPED_FILES = 47
  5082. const m__SC_MEMLOCK = 30
  5083. const m__SC_MEMLOCK_RANGE = 31
  5084. const m__SC_MEMORY_PROTECTION = 32
  5085. const m__SC_MESSAGE_PASSING = 33
  5086. const m__SC_MONOTONIC_CLOCK = 74
  5087. const m__SC_MQ_OPEN_MAX = 46
  5088. const m__SC_MQ_PRIO_MAX = 75
  5089. const m__SC_NGROUPS_MAX = 4
  5090. const m__SC_NPROCESSORS_CONF = 57
  5091. const m__SC_NPROCESSORS_ONLN = 58
  5092. const m__SC_OPEN_MAX = 5
  5093. const m__SC_PAGESIZE = 29
  5094. const m__SC_PAGE_SIZE = "_SC_PAGESIZE"
  5095. const m__SC_PASS_MAX = 131
  5096. const m__SC_PHYS_PAGES = 200
  5097. const m__SC_PRIORITIZED_IO = 34
  5098. const m__SC_PRIORITY_SCHEDULING = 35
  5099. const m__SC_RAW_SOCKETS = 119
  5100. const m__SC_READER_WRITER_LOCKS = 76
  5101. const m__SC_REALTIME_SIGNALS = 36
  5102. const m__SC_REGEXP = 77
  5103. const m__SC_RE_DUP_MAX = 16
  5104. const m__SC_RTSIG_MAX = 48
  5105. const m__SC_SAVED_IDS = 7
  5106. const m__SC_SEMAPHORES = 37
  5107. const m__SC_SEM_NSEMS_MAX = 49
  5108. const m__SC_SEM_VALUE_MAX = 50
  5109. const m__SC_SHARED_MEMORY_OBJECTS = 39
  5110. const m__SC_SHELL = 78
  5111. const m__SC_SIGQUEUE_MAX = 51
  5112. const m__SC_SPAWN = 79
  5113. const m__SC_SPIN_LOCKS = 80
  5114. const m__SC_SPORADIC_SERVER = 81
  5115. const m__SC_SS_REPL_MAX = 126
  5116. const m__SC_STREAM_MAX = 26
  5117. const m__SC_SYMLOOP_MAX = 120
  5118. const m__SC_SYNCHRONIZED_IO = 40
  5119. const m__SC_THREADS = 96
  5120. const m__SC_THREAD_ATTR_STACKADDR = 82
  5121. const m__SC_THREAD_ATTR_STACKSIZE = 83
  5122. const m__SC_THREAD_CPUTIME = 84
  5123. const m__SC_THREAD_DESTRUCTOR_ITERATIONS = 85
  5124. const m__SC_THREAD_KEYS_MAX = 86
  5125. const m__SC_THREAD_PRIORITY_SCHEDULING = 89
  5126. const m__SC_THREAD_PRIO_INHERIT = 87
  5127. const m__SC_THREAD_PRIO_PROTECT = 88
  5128. const m__SC_THREAD_PROCESS_SHARED = 90
  5129. const m__SC_THREAD_SAFE_FUNCTIONS = 91
  5130. const m__SC_THREAD_SPORADIC_SERVER = 92
  5131. const m__SC_THREAD_STACK_MIN = 93
  5132. const m__SC_THREAD_THREADS_MAX = 94
  5133. const m__SC_TIMEOUTS = 95
  5134. const m__SC_TIMERS = 41
  5135. const m__SC_TIMER_MAX = 52
  5136. const m__SC_TRACE = 97
  5137. const m__SC_TRACE_EVENT_FILTER = 98
  5138. const m__SC_TRACE_EVENT_NAME_MAX = 127
  5139. const m__SC_TRACE_INHERIT = 99
  5140. const m__SC_TRACE_LOG = 100
  5141. const m__SC_TRACE_NAME_MAX = 128
  5142. const m__SC_TRACE_SYS_MAX = 129
  5143. const m__SC_TRACE_USER_EVENT_MAX = 130
  5144. const m__SC_TTY_NAME_MAX = 101
  5145. const m__SC_TYPED_MEMORY_OBJECTS = 102
  5146. const m__SC_TZNAME_MAX = 27
  5147. const m__SC_V6_ILP32_OFF32 = 103
  5148. const m__SC_V6_ILP32_OFFBIG = 104
  5149. const m__SC_V6_LP64_OFF64 = 105
  5150. const m__SC_V6_LPBIG_OFFBIG = 106
  5151. const m__SC_VERSION = 8
  5152. const m__SC_XBS5_ILP32_OFF32 = 122
  5153. const m__SC_XBS5_ILP32_OFFBIG = 123
  5154. const m__SC_XBS5_LP64_OFF64 = 124
  5155. const m__SC_XBS5_LPBIG_OFFBIG = 125
  5156. const m__SC_XOPEN_CRYPT = 108
  5157. const m__SC_XOPEN_ENH_I18N = 109
  5158. const m__SC_XOPEN_LEGACY = 110
  5159. const m__SC_XOPEN_REALTIME = 111
  5160. const m__SC_XOPEN_REALTIME_THREADS = 112
  5161. const m__SC_XOPEN_SHM = 113
  5162. const m__SC_XOPEN_STREAMS = 114
  5163. const m__SC_XOPEN_UNIX = 115
  5164. const m__SC_XOPEN_VERSION = 116
  5165. const m__SC_XOPEN_XCU_VERSION = 121
  5166. const m__STRUCT_MCONTEXT = "_STRUCT_MCONTEXT64"
  5167. const m__V6_ILP32_OFF32 = "__ILP32_OFF32"
  5168. const m__V6_ILP32_OFFBIG = "__ILP32_OFFBIG"
  5169. const m__V6_LP64_OFF64 = "__LP64_OFF64"
  5170. const m__V6_LPBIG_OFFBIG = "__LPBIG_OFFBIG"
  5171. const m__WSTOPPED = 0177
  5172. const m__X86_INSTRUCTION_STATE_CACHELINE_SIZE = 64
  5173. const m__XBS5_ILP32_OFF32 = "__ILP32_OFF32"
  5174. const m__XBS5_ILP32_OFFBIG = "__ILP32_OFFBIG"
  5175. const m__XBS5_LP64_OFF64 = "__LP64_OFF64"
  5176. const m__XBS5_LPBIG_OFFBIG = "__LPBIG_OFFBIG"
  5177. const m__XOPEN_CRYPT = 1
  5178. const m__XOPEN_ENH_I18N = 1
  5179. const m__XOPEN_SHM = 1
  5180. const m__XOPEN_UNIX = 1
  5181. const m__XOPEN_VERSION = 600
  5182. const m__XOPEN_XCU_VERSION = 4
  5183. const m___DARWIN_NSIG = 32
  5184. const m___LASTBRANCH_MAX = 32
  5185. const m___LP64_OFF64 = 1
  5186. const m___LPBIG_OFFBIG = 1
  5187. const m___SALC = 0x4000
  5188. const m___SAPP = 0x0100
  5189. const m___SEOF = 0x0020
  5190. const m___SERR = 0x0040
  5191. const m___SIGN = 0x8000
  5192. const m___SLBF = 0x0001
  5193. const m___SMBF = 0x0080
  5194. const m___SMOD = 0x2000
  5195. const m___SNBF = 0x0002
  5196. const m___SNPT = 0x0800
  5197. const m___SOFF = 0x1000
  5198. const m___SOPT = 0x0400
  5199. const m___SRD = 0x0004
  5200. const m___SRW = 0x0010
  5201. const m___SSTR = 0x0200
  5202. const m___SWR = 0x0008
  5203. const m_ru_first = "ru_ixrss"
  5204. const m_ru_last = "ru_nivcsw"
  5205. const m_stderr = "__stderrp"
  5206. const m_stdin = "__stdinp"
  5207. const m_stdout = "__stdoutp"
  5208. const m_sv_onstack = "sv_flags"
  5209. type Ttimespec = struct {
  5210. Ftv_sec t__darwin_time_t
  5211. Ftv_nsec int64
  5212. }
  5213. type Tostat = struct {
  5214. Fst_dev t__uint16_t
  5215. Fst_ino Tino_t
  5216. Fst_mode Tmode_t
  5217. Fst_nlink Tnlink_t
  5218. Fst_uid t__uint16_t
  5219. Fst_gid t__uint16_t
  5220. Fst_rdev t__uint16_t
  5221. Fst_size t__int32_t
  5222. Fst_atimespec Ttimespec
  5223. Fst_mtimespec Ttimespec
  5224. Fst_ctimespec Ttimespec
  5225. Fst_blksize t__int32_t
  5226. Fst_blocks t__int32_t
  5227. Fst_flags t__uint32_t
  5228. Fst_gen t__uint32_t
  5229. }
  5230. type Tstat = struct {
  5231. Fst_dev Tdev_t
  5232. Fst_mode Tmode_t
  5233. Fst_nlink Tnlink_t
  5234. Fst_ino t__darwin_ino64_t
  5235. Fst_uid Tuid_t
  5236. Fst_gid Tgid_t
  5237. Fst_rdev Tdev_t
  5238. Fst_atimespec Ttimespec
  5239. Fst_mtimespec Ttimespec
  5240. Fst_ctimespec Ttimespec
  5241. Fst_birthtimespec Ttimespec
  5242. Fst_size Toff_t
  5243. Fst_blocks Tblkcnt_t
  5244. Fst_blksize Tblksize_t
  5245. Fst_flags t__uint32_t
  5246. Fst_gen t__uint32_t
  5247. Fst_lspare t__int32_t
  5248. Fst_qspare [2]t__int64_t
  5249. }
  5250. type Tstat64 = struct {
  5251. Fst_dev Tdev_t
  5252. Fst_mode Tmode_t
  5253. Fst_nlink Tnlink_t
  5254. Fst_ino t__darwin_ino64_t
  5255. Fst_uid Tuid_t
  5256. Fst_gid Tgid_t
  5257. Fst_rdev Tdev_t
  5258. Fst_atimespec Ttimespec
  5259. Fst_mtimespec Ttimespec
  5260. Fst_ctimespec Ttimespec
  5261. Fst_birthtimespec Ttimespec
  5262. Fst_size Toff_t
  5263. Fst_blocks Tblkcnt_t
  5264. Fst_blksize Tblksize_t
  5265. Fst_flags t__uint32_t
  5266. Fst_gen t__uint32_t
  5267. Fst_lspare t__int32_t
  5268. Fst_qspare [2]t__int64_t
  5269. }
  5270. type Tfilesec_t = uintptr
  5271. type Tflock = struct {
  5272. Fl_start Toff_t
  5273. Fl_len Toff_t
  5274. Fl_pid Tpid_t
  5275. Fl_type int16
  5276. Fl_whence int16
  5277. }
  5278. type Tflocktimeout = struct {
  5279. Ffl Tflock
  5280. Ftimeout Ttimespec
  5281. }
  5282. type Tradvisory = struct {
  5283. Fra_offset Toff_t
  5284. Fra_count int32
  5285. }
  5286. type Tfsignatures_t = struct {
  5287. Ffs_file_start Toff_t
  5288. Ffs_blob_start uintptr
  5289. Ffs_blob_size Tsize_t
  5290. Ffs_fsignatures_size Tsize_t
  5291. Ffs_cdhash [20]int8
  5292. Ffs_hash_type int32
  5293. }
  5294. type Tfsignatures = Tfsignatures_t
  5295. type Tfsupplement_t = struct {
  5296. Ffs_file_start Toff_t
  5297. Ffs_blob_start Toff_t
  5298. Ffs_blob_size Tsize_t
  5299. Ffs_orig_fd int32
  5300. }
  5301. type Tfsupplement = Tfsupplement_t
  5302. type Tfchecklv_t = struct {
  5303. Flv_file_start Toff_t
  5304. Flv_error_message_size Tsize_t
  5305. Flv_error_message uintptr
  5306. }
  5307. type Tfchecklv = Tfchecklv_t
  5308. type Tfgetsigsinfo_t = struct {
  5309. Ffg_file_start Toff_t
  5310. Ffg_info_request int32
  5311. Ffg_sig_is_platform int32
  5312. }
  5313. type Tfgetsigsinfo = Tfgetsigsinfo_t
  5314. type Tfstore_t = struct {
  5315. Ffst_flags uint32
  5316. Ffst_posmode int32
  5317. Ffst_offset Toff_t
  5318. Ffst_length Toff_t
  5319. Ffst_bytesalloc Toff_t
  5320. }
  5321. type Tfstore = Tfstore_t
  5322. type Tfpunchhole_t = struct {
  5323. Ffp_flags uint32
  5324. Freserved uint32
  5325. Ffp_offset Toff_t
  5326. Ffp_length Toff_t
  5327. }
  5328. type Tfpunchhole = Tfpunchhole_t
  5329. type Tftrimactivefile_t = struct {
  5330. Ffta_offset Toff_t
  5331. Ffta_length Toff_t
  5332. }
  5333. type Tftrimactivefile = Tftrimactivefile_t
  5334. type Tfspecread_t = struct {
  5335. Ffsr_flags uint32
  5336. Freserved uint32
  5337. Ffsr_offset Toff_t
  5338. Ffsr_length Toff_t
  5339. }
  5340. type Tfspecread = Tfspecread_t
  5341. type Tfattributiontag_t = struct {
  5342. Fft_flags uint32
  5343. Fft_hash uint64
  5344. Fft_attribution_name [255]int8
  5345. }
  5346. type Tfattributiontag = Tfattributiontag_t
  5347. type Tlog2phys = struct {
  5348. Fl2p_flags uint32
  5349. Fl2p_contigbytes Toff_t
  5350. Fl2p_devoffset Toff_t
  5351. }
  5352. type Tfilesec_property_t = int32
  5353. const _FILESEC_OWNER = 1
  5354. const _FILESEC_GROUP = 2
  5355. const _FILESEC_UUID = 3
  5356. const _FILESEC_MODE = 4
  5357. const _FILESEC_ACL = 5
  5358. const _FILESEC_GRPUUID = 6
  5359. const _FILESEC_ACL_RAW = 100
  5360. const _FILESEC_ACL_ALLOCSIZE = 101
  5361. type Tidtype_t = int32
  5362. const _P_ALL = 0
  5363. const _P_PID = 1
  5364. const _P_PGID = 2
  5365. type Tsig_atomic_t = int32
  5366. type t__darwin_i386_thread_state = struct {
  5367. F__eax uint32
  5368. F__ebx uint32
  5369. F__ecx uint32
  5370. F__edx uint32
  5371. F__edi uint32
  5372. F__esi uint32
  5373. F__ebp uint32
  5374. F__esp uint32
  5375. F__ss uint32
  5376. F__eflags uint32
  5377. F__eip uint32
  5378. F__cs uint32
  5379. F__ds uint32
  5380. F__es uint32
  5381. F__fs uint32
  5382. F__gs uint32
  5383. }
  5384. type t__darwin_fp_control = struct {
  5385. F__ccgo0 uint16
  5386. }
  5387. type t__darwin_fp_control_t = struct {
  5388. F__ccgo0 uint16
  5389. }
  5390. type t__darwin_fp_status = struct {
  5391. F__ccgo0 uint16
  5392. }
  5393. type t__darwin_fp_status_t = struct {
  5394. F__ccgo0 uint16
  5395. }
  5396. type t__darwin_mmst_reg = struct {
  5397. F__mmst_reg [10]int8
  5398. F__mmst_rsrv [6]int8
  5399. }
  5400. type t__darwin_xmm_reg = struct {
  5401. F__xmm_reg [16]int8
  5402. }
  5403. type t__darwin_ymm_reg = struct {
  5404. F__ymm_reg [32]int8
  5405. }
  5406. type t__darwin_zmm_reg = struct {
  5407. F__zmm_reg [64]int8
  5408. }
  5409. type t__darwin_opmask_reg = struct {
  5410. F__opmask_reg [8]int8
  5411. }
  5412. type t__darwin_i386_float_state = struct {
  5413. F__fpu_reserved [2]int32
  5414. F__fpu_fcw t__darwin_fp_control
  5415. F__fpu_fsw t__darwin_fp_status
  5416. F__fpu_ftw t__uint8_t
  5417. F__fpu_rsrv1 t__uint8_t
  5418. F__fpu_fop t__uint16_t
  5419. F__fpu_ip t__uint32_t
  5420. F__fpu_cs t__uint16_t
  5421. F__fpu_rsrv2 t__uint16_t
  5422. F__fpu_dp t__uint32_t
  5423. F__fpu_ds t__uint16_t
  5424. F__fpu_rsrv3 t__uint16_t
  5425. F__fpu_mxcsr t__uint32_t
  5426. F__fpu_mxcsrmask t__uint32_t
  5427. F__fpu_stmm0 t__darwin_mmst_reg
  5428. F__fpu_stmm1 t__darwin_mmst_reg
  5429. F__fpu_stmm2 t__darwin_mmst_reg
  5430. F__fpu_stmm3 t__darwin_mmst_reg
  5431. F__fpu_stmm4 t__darwin_mmst_reg
  5432. F__fpu_stmm5 t__darwin_mmst_reg
  5433. F__fpu_stmm6 t__darwin_mmst_reg
  5434. F__fpu_stmm7 t__darwin_mmst_reg
  5435. F__fpu_xmm0 t__darwin_xmm_reg
  5436. F__fpu_xmm1 t__darwin_xmm_reg
  5437. F__fpu_xmm2 t__darwin_xmm_reg
  5438. F__fpu_xmm3 t__darwin_xmm_reg
  5439. F__fpu_xmm4 t__darwin_xmm_reg
  5440. F__fpu_xmm5 t__darwin_xmm_reg
  5441. F__fpu_xmm6 t__darwin_xmm_reg
  5442. F__fpu_xmm7 t__darwin_xmm_reg
  5443. F__fpu_rsrv4 [224]int8
  5444. F__fpu_reserved1 int32
  5445. }
  5446. type t__darwin_i386_avx_state = struct {
  5447. F__fpu_reserved [2]int32
  5448. F__fpu_fcw t__darwin_fp_control
  5449. F__fpu_fsw t__darwin_fp_status
  5450. F__fpu_ftw t__uint8_t
  5451. F__fpu_rsrv1 t__uint8_t
  5452. F__fpu_fop t__uint16_t
  5453. F__fpu_ip t__uint32_t
  5454. F__fpu_cs t__uint16_t
  5455. F__fpu_rsrv2 t__uint16_t
  5456. F__fpu_dp t__uint32_t
  5457. F__fpu_ds t__uint16_t
  5458. F__fpu_rsrv3 t__uint16_t
  5459. F__fpu_mxcsr t__uint32_t
  5460. F__fpu_mxcsrmask t__uint32_t
  5461. F__fpu_stmm0 t__darwin_mmst_reg
  5462. F__fpu_stmm1 t__darwin_mmst_reg
  5463. F__fpu_stmm2 t__darwin_mmst_reg
  5464. F__fpu_stmm3 t__darwin_mmst_reg
  5465. F__fpu_stmm4 t__darwin_mmst_reg
  5466. F__fpu_stmm5 t__darwin_mmst_reg
  5467. F__fpu_stmm6 t__darwin_mmst_reg
  5468. F__fpu_stmm7 t__darwin_mmst_reg
  5469. F__fpu_xmm0 t__darwin_xmm_reg
  5470. F__fpu_xmm1 t__darwin_xmm_reg
  5471. F__fpu_xmm2 t__darwin_xmm_reg
  5472. F__fpu_xmm3 t__darwin_xmm_reg
  5473. F__fpu_xmm4 t__darwin_xmm_reg
  5474. F__fpu_xmm5 t__darwin_xmm_reg
  5475. F__fpu_xmm6 t__darwin_xmm_reg
  5476. F__fpu_xmm7 t__darwin_xmm_reg
  5477. F__fpu_rsrv4 [224]int8
  5478. F__fpu_reserved1 int32
  5479. F__avx_reserved1 [64]int8
  5480. F__fpu_ymmh0 t__darwin_xmm_reg
  5481. F__fpu_ymmh1 t__darwin_xmm_reg
  5482. F__fpu_ymmh2 t__darwin_xmm_reg
  5483. F__fpu_ymmh3 t__darwin_xmm_reg
  5484. F__fpu_ymmh4 t__darwin_xmm_reg
  5485. F__fpu_ymmh5 t__darwin_xmm_reg
  5486. F__fpu_ymmh6 t__darwin_xmm_reg
  5487. F__fpu_ymmh7 t__darwin_xmm_reg
  5488. }
  5489. type t__darwin_i386_avx512_state = struct {
  5490. F__fpu_reserved [2]int32
  5491. F__fpu_fcw t__darwin_fp_control
  5492. F__fpu_fsw t__darwin_fp_status
  5493. F__fpu_ftw t__uint8_t
  5494. F__fpu_rsrv1 t__uint8_t
  5495. F__fpu_fop t__uint16_t
  5496. F__fpu_ip t__uint32_t
  5497. F__fpu_cs t__uint16_t
  5498. F__fpu_rsrv2 t__uint16_t
  5499. F__fpu_dp t__uint32_t
  5500. F__fpu_ds t__uint16_t
  5501. F__fpu_rsrv3 t__uint16_t
  5502. F__fpu_mxcsr t__uint32_t
  5503. F__fpu_mxcsrmask t__uint32_t
  5504. F__fpu_stmm0 t__darwin_mmst_reg
  5505. F__fpu_stmm1 t__darwin_mmst_reg
  5506. F__fpu_stmm2 t__darwin_mmst_reg
  5507. F__fpu_stmm3 t__darwin_mmst_reg
  5508. F__fpu_stmm4 t__darwin_mmst_reg
  5509. F__fpu_stmm5 t__darwin_mmst_reg
  5510. F__fpu_stmm6 t__darwin_mmst_reg
  5511. F__fpu_stmm7 t__darwin_mmst_reg
  5512. F__fpu_xmm0 t__darwin_xmm_reg
  5513. F__fpu_xmm1 t__darwin_xmm_reg
  5514. F__fpu_xmm2 t__darwin_xmm_reg
  5515. F__fpu_xmm3 t__darwin_xmm_reg
  5516. F__fpu_xmm4 t__darwin_xmm_reg
  5517. F__fpu_xmm5 t__darwin_xmm_reg
  5518. F__fpu_xmm6 t__darwin_xmm_reg
  5519. F__fpu_xmm7 t__darwin_xmm_reg
  5520. F__fpu_rsrv4 [224]int8
  5521. F__fpu_reserved1 int32
  5522. F__avx_reserved1 [64]int8
  5523. F__fpu_ymmh0 t__darwin_xmm_reg
  5524. F__fpu_ymmh1 t__darwin_xmm_reg
  5525. F__fpu_ymmh2 t__darwin_xmm_reg
  5526. F__fpu_ymmh3 t__darwin_xmm_reg
  5527. F__fpu_ymmh4 t__darwin_xmm_reg
  5528. F__fpu_ymmh5 t__darwin_xmm_reg
  5529. F__fpu_ymmh6 t__darwin_xmm_reg
  5530. F__fpu_ymmh7 t__darwin_xmm_reg
  5531. F__fpu_k0 t__darwin_opmask_reg
  5532. F__fpu_k1 t__darwin_opmask_reg
  5533. F__fpu_k2 t__darwin_opmask_reg
  5534. F__fpu_k3 t__darwin_opmask_reg
  5535. F__fpu_k4 t__darwin_opmask_reg
  5536. F__fpu_k5 t__darwin_opmask_reg
  5537. F__fpu_k6 t__darwin_opmask_reg
  5538. F__fpu_k7 t__darwin_opmask_reg
  5539. F__fpu_zmmh0 t__darwin_ymm_reg
  5540. F__fpu_zmmh1 t__darwin_ymm_reg
  5541. F__fpu_zmmh2 t__darwin_ymm_reg
  5542. F__fpu_zmmh3 t__darwin_ymm_reg
  5543. F__fpu_zmmh4 t__darwin_ymm_reg
  5544. F__fpu_zmmh5 t__darwin_ymm_reg
  5545. F__fpu_zmmh6 t__darwin_ymm_reg
  5546. F__fpu_zmmh7 t__darwin_ymm_reg
  5547. }
  5548. type t__darwin_i386_exception_state = struct {
  5549. F__trapno t__uint16_t
  5550. F__cpu t__uint16_t
  5551. F__err t__uint32_t
  5552. F__faultvaddr t__uint32_t
  5553. }
  5554. type t__darwin_x86_debug_state32 = struct {
  5555. F__dr0 uint32
  5556. F__dr1 uint32
  5557. F__dr2 uint32
  5558. F__dr3 uint32
  5559. F__dr4 uint32
  5560. F__dr5 uint32
  5561. F__dr6 uint32
  5562. F__dr7 uint32
  5563. }
  5564. type t__x86_instruction_state = struct {
  5565. F__insn_stream_valid_bytes int32
  5566. F__insn_offset int32
  5567. F__out_of_synch int32
  5568. F__insn_bytes [2380]t__uint8_t
  5569. F__insn_cacheline [64]t__uint8_t
  5570. }
  5571. type t__last_branch_record = struct {
  5572. F__from_ip t__uint64_t
  5573. F__to_ip t__uint64_t
  5574. F__ccgo16 uint32
  5575. }
  5576. type t__last_branch_state = struct {
  5577. F__lbr_count int32
  5578. F__ccgo4 uint32
  5579. F__lbrs [32]t__last_branch_record
  5580. }
  5581. type t__x86_pagein_state = struct {
  5582. F__pagein_error int32
  5583. }
  5584. type t__darwin_x86_thread_state64 = struct {
  5585. F__rax t__uint64_t
  5586. F__rbx t__uint64_t
  5587. F__rcx t__uint64_t
  5588. F__rdx t__uint64_t
  5589. F__rdi t__uint64_t
  5590. F__rsi t__uint64_t
  5591. F__rbp t__uint64_t
  5592. F__rsp t__uint64_t
  5593. F__r8 t__uint64_t
  5594. F__r9 t__uint64_t
  5595. F__r10 t__uint64_t
  5596. F__r11 t__uint64_t
  5597. F__r12 t__uint64_t
  5598. F__r13 t__uint64_t
  5599. F__r14 t__uint64_t
  5600. F__r15 t__uint64_t
  5601. F__rip t__uint64_t
  5602. F__rflags t__uint64_t
  5603. F__cs t__uint64_t
  5604. F__fs t__uint64_t
  5605. F__gs t__uint64_t
  5606. }
  5607. type t__darwin_x86_thread_full_state64 = struct {
  5608. F__ss64 t__darwin_x86_thread_state64
  5609. F__ds t__uint64_t
  5610. F__es t__uint64_t
  5611. F__ss t__uint64_t
  5612. F__gsbase t__uint64_t
  5613. }
  5614. type t__darwin_x86_float_state64 = struct {
  5615. F__fpu_reserved [2]int32
  5616. F__fpu_fcw t__darwin_fp_control
  5617. F__fpu_fsw t__darwin_fp_status
  5618. F__fpu_ftw t__uint8_t
  5619. F__fpu_rsrv1 t__uint8_t
  5620. F__fpu_fop t__uint16_t
  5621. F__fpu_ip t__uint32_t
  5622. F__fpu_cs t__uint16_t
  5623. F__fpu_rsrv2 t__uint16_t
  5624. F__fpu_dp t__uint32_t
  5625. F__fpu_ds t__uint16_t
  5626. F__fpu_rsrv3 t__uint16_t
  5627. F__fpu_mxcsr t__uint32_t
  5628. F__fpu_mxcsrmask t__uint32_t
  5629. F__fpu_stmm0 t__darwin_mmst_reg
  5630. F__fpu_stmm1 t__darwin_mmst_reg
  5631. F__fpu_stmm2 t__darwin_mmst_reg
  5632. F__fpu_stmm3 t__darwin_mmst_reg
  5633. F__fpu_stmm4 t__darwin_mmst_reg
  5634. F__fpu_stmm5 t__darwin_mmst_reg
  5635. F__fpu_stmm6 t__darwin_mmst_reg
  5636. F__fpu_stmm7 t__darwin_mmst_reg
  5637. F__fpu_xmm0 t__darwin_xmm_reg
  5638. F__fpu_xmm1 t__darwin_xmm_reg
  5639. F__fpu_xmm2 t__darwin_xmm_reg
  5640. F__fpu_xmm3 t__darwin_xmm_reg
  5641. F__fpu_xmm4 t__darwin_xmm_reg
  5642. F__fpu_xmm5 t__darwin_xmm_reg
  5643. F__fpu_xmm6 t__darwin_xmm_reg
  5644. F__fpu_xmm7 t__darwin_xmm_reg
  5645. F__fpu_xmm8 t__darwin_xmm_reg
  5646. F__fpu_xmm9 t__darwin_xmm_reg
  5647. F__fpu_xmm10 t__darwin_xmm_reg
  5648. F__fpu_xmm11 t__darwin_xmm_reg
  5649. F__fpu_xmm12 t__darwin_xmm_reg
  5650. F__fpu_xmm13 t__darwin_xmm_reg
  5651. F__fpu_xmm14 t__darwin_xmm_reg
  5652. F__fpu_xmm15 t__darwin_xmm_reg
  5653. F__fpu_rsrv4 [96]int8
  5654. F__fpu_reserved1 int32
  5655. }
  5656. type t__darwin_x86_avx_state64 = struct {
  5657. F__fpu_reserved [2]int32
  5658. F__fpu_fcw t__darwin_fp_control
  5659. F__fpu_fsw t__darwin_fp_status
  5660. F__fpu_ftw t__uint8_t
  5661. F__fpu_rsrv1 t__uint8_t
  5662. F__fpu_fop t__uint16_t
  5663. F__fpu_ip t__uint32_t
  5664. F__fpu_cs t__uint16_t
  5665. F__fpu_rsrv2 t__uint16_t
  5666. F__fpu_dp t__uint32_t
  5667. F__fpu_ds t__uint16_t
  5668. F__fpu_rsrv3 t__uint16_t
  5669. F__fpu_mxcsr t__uint32_t
  5670. F__fpu_mxcsrmask t__uint32_t
  5671. F__fpu_stmm0 t__darwin_mmst_reg
  5672. F__fpu_stmm1 t__darwin_mmst_reg
  5673. F__fpu_stmm2 t__darwin_mmst_reg
  5674. F__fpu_stmm3 t__darwin_mmst_reg
  5675. F__fpu_stmm4 t__darwin_mmst_reg
  5676. F__fpu_stmm5 t__darwin_mmst_reg
  5677. F__fpu_stmm6 t__darwin_mmst_reg
  5678. F__fpu_stmm7 t__darwin_mmst_reg
  5679. F__fpu_xmm0 t__darwin_xmm_reg
  5680. F__fpu_xmm1 t__darwin_xmm_reg
  5681. F__fpu_xmm2 t__darwin_xmm_reg
  5682. F__fpu_xmm3 t__darwin_xmm_reg
  5683. F__fpu_xmm4 t__darwin_xmm_reg
  5684. F__fpu_xmm5 t__darwin_xmm_reg
  5685. F__fpu_xmm6 t__darwin_xmm_reg
  5686. F__fpu_xmm7 t__darwin_xmm_reg
  5687. F__fpu_xmm8 t__darwin_xmm_reg
  5688. F__fpu_xmm9 t__darwin_xmm_reg
  5689. F__fpu_xmm10 t__darwin_xmm_reg
  5690. F__fpu_xmm11 t__darwin_xmm_reg
  5691. F__fpu_xmm12 t__darwin_xmm_reg
  5692. F__fpu_xmm13 t__darwin_xmm_reg
  5693. F__fpu_xmm14 t__darwin_xmm_reg
  5694. F__fpu_xmm15 t__darwin_xmm_reg
  5695. F__fpu_rsrv4 [96]int8
  5696. F__fpu_reserved1 int32
  5697. F__avx_reserved1 [64]int8
  5698. F__fpu_ymmh0 t__darwin_xmm_reg
  5699. F__fpu_ymmh1 t__darwin_xmm_reg
  5700. F__fpu_ymmh2 t__darwin_xmm_reg
  5701. F__fpu_ymmh3 t__darwin_xmm_reg
  5702. F__fpu_ymmh4 t__darwin_xmm_reg
  5703. F__fpu_ymmh5 t__darwin_xmm_reg
  5704. F__fpu_ymmh6 t__darwin_xmm_reg
  5705. F__fpu_ymmh7 t__darwin_xmm_reg
  5706. F__fpu_ymmh8 t__darwin_xmm_reg
  5707. F__fpu_ymmh9 t__darwin_xmm_reg
  5708. F__fpu_ymmh10 t__darwin_xmm_reg
  5709. F__fpu_ymmh11 t__darwin_xmm_reg
  5710. F__fpu_ymmh12 t__darwin_xmm_reg
  5711. F__fpu_ymmh13 t__darwin_xmm_reg
  5712. F__fpu_ymmh14 t__darwin_xmm_reg
  5713. F__fpu_ymmh15 t__darwin_xmm_reg
  5714. }
  5715. type t__darwin_x86_avx512_state64 = struct {
  5716. F__fpu_reserved [2]int32
  5717. F__fpu_fcw t__darwin_fp_control
  5718. F__fpu_fsw t__darwin_fp_status
  5719. F__fpu_ftw t__uint8_t
  5720. F__fpu_rsrv1 t__uint8_t
  5721. F__fpu_fop t__uint16_t
  5722. F__fpu_ip t__uint32_t
  5723. F__fpu_cs t__uint16_t
  5724. F__fpu_rsrv2 t__uint16_t
  5725. F__fpu_dp t__uint32_t
  5726. F__fpu_ds t__uint16_t
  5727. F__fpu_rsrv3 t__uint16_t
  5728. F__fpu_mxcsr t__uint32_t
  5729. F__fpu_mxcsrmask t__uint32_t
  5730. F__fpu_stmm0 t__darwin_mmst_reg
  5731. F__fpu_stmm1 t__darwin_mmst_reg
  5732. F__fpu_stmm2 t__darwin_mmst_reg
  5733. F__fpu_stmm3 t__darwin_mmst_reg
  5734. F__fpu_stmm4 t__darwin_mmst_reg
  5735. F__fpu_stmm5 t__darwin_mmst_reg
  5736. F__fpu_stmm6 t__darwin_mmst_reg
  5737. F__fpu_stmm7 t__darwin_mmst_reg
  5738. F__fpu_xmm0 t__darwin_xmm_reg
  5739. F__fpu_xmm1 t__darwin_xmm_reg
  5740. F__fpu_xmm2 t__darwin_xmm_reg
  5741. F__fpu_xmm3 t__darwin_xmm_reg
  5742. F__fpu_xmm4 t__darwin_xmm_reg
  5743. F__fpu_xmm5 t__darwin_xmm_reg
  5744. F__fpu_xmm6 t__darwin_xmm_reg
  5745. F__fpu_xmm7 t__darwin_xmm_reg
  5746. F__fpu_xmm8 t__darwin_xmm_reg
  5747. F__fpu_xmm9 t__darwin_xmm_reg
  5748. F__fpu_xmm10 t__darwin_xmm_reg
  5749. F__fpu_xmm11 t__darwin_xmm_reg
  5750. F__fpu_xmm12 t__darwin_xmm_reg
  5751. F__fpu_xmm13 t__darwin_xmm_reg
  5752. F__fpu_xmm14 t__darwin_xmm_reg
  5753. F__fpu_xmm15 t__darwin_xmm_reg
  5754. F__fpu_rsrv4 [96]int8
  5755. F__fpu_reserved1 int32
  5756. F__avx_reserved1 [64]int8
  5757. F__fpu_ymmh0 t__darwin_xmm_reg
  5758. F__fpu_ymmh1 t__darwin_xmm_reg
  5759. F__fpu_ymmh2 t__darwin_xmm_reg
  5760. F__fpu_ymmh3 t__darwin_xmm_reg
  5761. F__fpu_ymmh4 t__darwin_xmm_reg
  5762. F__fpu_ymmh5 t__darwin_xmm_reg
  5763. F__fpu_ymmh6 t__darwin_xmm_reg
  5764. F__fpu_ymmh7 t__darwin_xmm_reg
  5765. F__fpu_ymmh8 t__darwin_xmm_reg
  5766. F__fpu_ymmh9 t__darwin_xmm_reg
  5767. F__fpu_ymmh10 t__darwin_xmm_reg
  5768. F__fpu_ymmh11 t__darwin_xmm_reg
  5769. F__fpu_ymmh12 t__darwin_xmm_reg
  5770. F__fpu_ymmh13 t__darwin_xmm_reg
  5771. F__fpu_ymmh14 t__darwin_xmm_reg
  5772. F__fpu_ymmh15 t__darwin_xmm_reg
  5773. F__fpu_k0 t__darwin_opmask_reg
  5774. F__fpu_k1 t__darwin_opmask_reg
  5775. F__fpu_k2 t__darwin_opmask_reg
  5776. F__fpu_k3 t__darwin_opmask_reg
  5777. F__fpu_k4 t__darwin_opmask_reg
  5778. F__fpu_k5 t__darwin_opmask_reg
  5779. F__fpu_k6 t__darwin_opmask_reg
  5780. F__fpu_k7 t__darwin_opmask_reg
  5781. F__fpu_zmmh0 t__darwin_ymm_reg
  5782. F__fpu_zmmh1 t__darwin_ymm_reg
  5783. F__fpu_zmmh2 t__darwin_ymm_reg
  5784. F__fpu_zmmh3 t__darwin_ymm_reg
  5785. F__fpu_zmmh4 t__darwin_ymm_reg
  5786. F__fpu_zmmh5 t__darwin_ymm_reg
  5787. F__fpu_zmmh6 t__darwin_ymm_reg
  5788. F__fpu_zmmh7 t__darwin_ymm_reg
  5789. F__fpu_zmmh8 t__darwin_ymm_reg
  5790. F__fpu_zmmh9 t__darwin_ymm_reg
  5791. F__fpu_zmmh10 t__darwin_ymm_reg
  5792. F__fpu_zmmh11 t__darwin_ymm_reg
  5793. F__fpu_zmmh12 t__darwin_ymm_reg
  5794. F__fpu_zmmh13 t__darwin_ymm_reg
  5795. F__fpu_zmmh14 t__darwin_ymm_reg
  5796. F__fpu_zmmh15 t__darwin_ymm_reg
  5797. F__fpu_zmm16 t__darwin_zmm_reg
  5798. F__fpu_zmm17 t__darwin_zmm_reg
  5799. F__fpu_zmm18 t__darwin_zmm_reg
  5800. F__fpu_zmm19 t__darwin_zmm_reg
  5801. F__fpu_zmm20 t__darwin_zmm_reg
  5802. F__fpu_zmm21 t__darwin_zmm_reg
  5803. F__fpu_zmm22 t__darwin_zmm_reg
  5804. F__fpu_zmm23 t__darwin_zmm_reg
  5805. F__fpu_zmm24 t__darwin_zmm_reg
  5806. F__fpu_zmm25 t__darwin_zmm_reg
  5807. F__fpu_zmm26 t__darwin_zmm_reg
  5808. F__fpu_zmm27 t__darwin_zmm_reg
  5809. F__fpu_zmm28 t__darwin_zmm_reg
  5810. F__fpu_zmm29 t__darwin_zmm_reg
  5811. F__fpu_zmm30 t__darwin_zmm_reg
  5812. F__fpu_zmm31 t__darwin_zmm_reg
  5813. }
  5814. type t__darwin_x86_exception_state64 = struct {
  5815. F__trapno t__uint16_t
  5816. F__cpu t__uint16_t
  5817. F__err t__uint32_t
  5818. F__faultvaddr t__uint64_t
  5819. }
  5820. type t__darwin_x86_debug_state64 = struct {
  5821. F__dr0 t__uint64_t
  5822. F__dr1 t__uint64_t
  5823. F__dr2 t__uint64_t
  5824. F__dr3 t__uint64_t
  5825. F__dr4 t__uint64_t
  5826. F__dr5 t__uint64_t
  5827. F__dr6 t__uint64_t
  5828. F__dr7 t__uint64_t
  5829. }
  5830. type t__darwin_x86_cpmu_state64 = struct {
  5831. F__ctrs [16]t__uint64_t
  5832. }
  5833. type t__darwin_mcontext32 = struct {
  5834. F__es t__darwin_i386_exception_state
  5835. F__ss t__darwin_i386_thread_state
  5836. F__fs t__darwin_i386_float_state
  5837. }
  5838. type t__darwin_mcontext_avx32 = struct {
  5839. F__es t__darwin_i386_exception_state
  5840. F__ss t__darwin_i386_thread_state
  5841. F__fs t__darwin_i386_avx_state
  5842. }
  5843. type t__darwin_mcontext_avx512_32 = struct {
  5844. F__es t__darwin_i386_exception_state
  5845. F__ss t__darwin_i386_thread_state
  5846. F__fs t__darwin_i386_avx512_state
  5847. }
  5848. type t__darwin_mcontext64 = struct {
  5849. F__es t__darwin_x86_exception_state64
  5850. F__ss t__darwin_x86_thread_state64
  5851. F__fs t__darwin_x86_float_state64
  5852. }
  5853. type t__darwin_mcontext64_full = struct {
  5854. F__es t__darwin_x86_exception_state64
  5855. F__ss t__darwin_x86_thread_full_state64
  5856. F__fs t__darwin_x86_float_state64
  5857. }
  5858. type t__darwin_mcontext_avx64 = struct {
  5859. F__es t__darwin_x86_exception_state64
  5860. F__ss t__darwin_x86_thread_state64
  5861. F__fs t__darwin_x86_avx_state64
  5862. }
  5863. type t__darwin_mcontext_avx64_full = struct {
  5864. F__es t__darwin_x86_exception_state64
  5865. F__ss t__darwin_x86_thread_full_state64
  5866. F__fs t__darwin_x86_avx_state64
  5867. }
  5868. type t__darwin_mcontext_avx512_64 = struct {
  5869. F__es t__darwin_x86_exception_state64
  5870. F__ss t__darwin_x86_thread_state64
  5871. F__fs t__darwin_x86_avx512_state64
  5872. }
  5873. type t__darwin_mcontext_avx512_64_full = struct {
  5874. F__es t__darwin_x86_exception_state64
  5875. F__ss t__darwin_x86_thread_full_state64
  5876. F__fs t__darwin_x86_avx512_state64
  5877. }
  5878. type Tmcontext_t = uintptr
  5879. type t__darwin_sigaltstack = struct {
  5880. Fss_sp uintptr
  5881. Fss_size t__darwin_size_t
  5882. Fss_flags int32
  5883. }
  5884. type Tstack_t = struct {
  5885. Fss_sp uintptr
  5886. Fss_size t__darwin_size_t
  5887. Fss_flags int32
  5888. }
  5889. type t__darwin_ucontext = struct {
  5890. Fuc_onstack int32
  5891. Fuc_sigmask t__darwin_sigset_t
  5892. Fuc_stack t__darwin_sigaltstack
  5893. Fuc_link uintptr
  5894. Fuc_mcsize t__darwin_size_t
  5895. Fuc_mcontext uintptr
  5896. }
  5897. type Tucontext_t = struct {
  5898. Fuc_onstack int32
  5899. Fuc_sigmask t__darwin_sigset_t
  5900. Fuc_stack t__darwin_sigaltstack
  5901. Fuc_link uintptr
  5902. Fuc_mcsize t__darwin_size_t
  5903. Fuc_mcontext uintptr
  5904. }
  5905. type Tsigset_t = uint32
  5906. type Tsigval = struct {
  5907. Fsival_ptr [0]uintptr
  5908. Fsival_int int32
  5909. F__ccgo_pad2 [4]byte
  5910. }
  5911. type Tsigevent = struct {
  5912. Fsigev_notify int32
  5913. Fsigev_signo int32
  5914. Fsigev_value Tsigval
  5915. Fsigev_notify_function uintptr
  5916. Fsigev_notify_attributes uintptr
  5917. }
  5918. type Tsiginfo_t = struct {
  5919. Fsi_signo int32
  5920. Fsi_errno int32
  5921. Fsi_code int32
  5922. Fsi_pid Tpid_t
  5923. Fsi_uid Tuid_t
  5924. Fsi_status int32
  5925. Fsi_addr uintptr
  5926. Fsi_value Tsigval
  5927. Fsi_band int64
  5928. F__pad [7]uint64
  5929. }
  5930. type t__siginfo = Tsiginfo_t
  5931. type t__sigaction_u = struct {
  5932. F__sa_sigaction [0]uintptr
  5933. F__sa_handler uintptr
  5934. }
  5935. type t__sigaction = struct {
  5936. F__sigaction_u t__sigaction_u
  5937. Fsa_tramp uintptr
  5938. Fsa_mask Tsigset_t
  5939. Fsa_flags int32
  5940. }
  5941. type Tsigaction = struct {
  5942. F__sigaction_u t__sigaction_u
  5943. Fsa_mask Tsigset_t
  5944. Fsa_flags int32
  5945. }
  5946. type Tsig_t = uintptr
  5947. type Tsigvec = struct {
  5948. Fsv_handler uintptr
  5949. Fsv_mask int32
  5950. Fsv_flags int32
  5951. }
  5952. type Tsigstack = struct {
  5953. Fss_sp uintptr
  5954. Fss_onstack int32
  5955. }
  5956. type Ttimeval = struct {
  5957. Ftv_sec t__darwin_time_t
  5958. Ftv_usec t__darwin_suseconds_t
  5959. }
  5960. type Trlim_t = uint64
  5961. type Trusage = struct {
  5962. Fru_utime Ttimeval
  5963. Fru_stime Ttimeval
  5964. Fru_maxrss int64
  5965. Fru_ixrss int64
  5966. Fru_idrss int64
  5967. Fru_isrss int64
  5968. Fru_minflt int64
  5969. Fru_majflt int64
  5970. Fru_nswap int64
  5971. Fru_inblock int64
  5972. Fru_oublock int64
  5973. Fru_msgsnd int64
  5974. Fru_msgrcv int64
  5975. Fru_nsignals int64
  5976. Fru_nvcsw int64
  5977. Fru_nivcsw int64
  5978. }
  5979. type Trusage_info_t = uintptr
  5980. type Trusage_info_v0 = struct {
  5981. Fri_uuid [16]Tuint8_t
  5982. Fri_user_time Tuint64_t
  5983. Fri_system_time Tuint64_t
  5984. Fri_pkg_idle_wkups Tuint64_t
  5985. Fri_interrupt_wkups Tuint64_t
  5986. Fri_pageins Tuint64_t
  5987. Fri_wired_size Tuint64_t
  5988. Fri_resident_size Tuint64_t
  5989. Fri_phys_footprint Tuint64_t
  5990. Fri_proc_start_abstime Tuint64_t
  5991. Fri_proc_exit_abstime Tuint64_t
  5992. }
  5993. type Trusage_info_v1 = struct {
  5994. Fri_uuid [16]Tuint8_t
  5995. Fri_user_time Tuint64_t
  5996. Fri_system_time Tuint64_t
  5997. Fri_pkg_idle_wkups Tuint64_t
  5998. Fri_interrupt_wkups Tuint64_t
  5999. Fri_pageins Tuint64_t
  6000. Fri_wired_size Tuint64_t
  6001. Fri_resident_size Tuint64_t
  6002. Fri_phys_footprint Tuint64_t
  6003. Fri_proc_start_abstime Tuint64_t
  6004. Fri_proc_exit_abstime Tuint64_t
  6005. Fri_child_user_time Tuint64_t
  6006. Fri_child_system_time Tuint64_t
  6007. Fri_child_pkg_idle_wkups Tuint64_t
  6008. Fri_child_interrupt_wkups Tuint64_t
  6009. Fri_child_pageins Tuint64_t
  6010. Fri_child_elapsed_abstime Tuint64_t
  6011. }
  6012. type Trusage_info_v2 = struct {
  6013. Fri_uuid [16]Tuint8_t
  6014. Fri_user_time Tuint64_t
  6015. Fri_system_time Tuint64_t
  6016. Fri_pkg_idle_wkups Tuint64_t
  6017. Fri_interrupt_wkups Tuint64_t
  6018. Fri_pageins Tuint64_t
  6019. Fri_wired_size Tuint64_t
  6020. Fri_resident_size Tuint64_t
  6021. Fri_phys_footprint Tuint64_t
  6022. Fri_proc_start_abstime Tuint64_t
  6023. Fri_proc_exit_abstime Tuint64_t
  6024. Fri_child_user_time Tuint64_t
  6025. Fri_child_system_time Tuint64_t
  6026. Fri_child_pkg_idle_wkups Tuint64_t
  6027. Fri_child_interrupt_wkups Tuint64_t
  6028. Fri_child_pageins Tuint64_t
  6029. Fri_child_elapsed_abstime Tuint64_t
  6030. Fri_diskio_bytesread Tuint64_t
  6031. Fri_diskio_byteswritten Tuint64_t
  6032. }
  6033. type Trusage_info_v3 = struct {
  6034. Fri_uuid [16]Tuint8_t
  6035. Fri_user_time Tuint64_t
  6036. Fri_system_time Tuint64_t
  6037. Fri_pkg_idle_wkups Tuint64_t
  6038. Fri_interrupt_wkups Tuint64_t
  6039. Fri_pageins Tuint64_t
  6040. Fri_wired_size Tuint64_t
  6041. Fri_resident_size Tuint64_t
  6042. Fri_phys_footprint Tuint64_t
  6043. Fri_proc_start_abstime Tuint64_t
  6044. Fri_proc_exit_abstime Tuint64_t
  6045. Fri_child_user_time Tuint64_t
  6046. Fri_child_system_time Tuint64_t
  6047. Fri_child_pkg_idle_wkups Tuint64_t
  6048. Fri_child_interrupt_wkups Tuint64_t
  6049. Fri_child_pageins Tuint64_t
  6050. Fri_child_elapsed_abstime Tuint64_t
  6051. Fri_diskio_bytesread Tuint64_t
  6052. Fri_diskio_byteswritten Tuint64_t
  6053. Fri_cpu_time_qos_default Tuint64_t
  6054. Fri_cpu_time_qos_maintenance Tuint64_t
  6055. Fri_cpu_time_qos_background Tuint64_t
  6056. Fri_cpu_time_qos_utility Tuint64_t
  6057. Fri_cpu_time_qos_legacy Tuint64_t
  6058. Fri_cpu_time_qos_user_initiated Tuint64_t
  6059. Fri_cpu_time_qos_user_interactive Tuint64_t
  6060. Fri_billed_system_time Tuint64_t
  6061. Fri_serviced_system_time Tuint64_t
  6062. }
  6063. type Trusage_info_v4 = struct {
  6064. Fri_uuid [16]Tuint8_t
  6065. Fri_user_time Tuint64_t
  6066. Fri_system_time Tuint64_t
  6067. Fri_pkg_idle_wkups Tuint64_t
  6068. Fri_interrupt_wkups Tuint64_t
  6069. Fri_pageins Tuint64_t
  6070. Fri_wired_size Tuint64_t
  6071. Fri_resident_size Tuint64_t
  6072. Fri_phys_footprint Tuint64_t
  6073. Fri_proc_start_abstime Tuint64_t
  6074. Fri_proc_exit_abstime Tuint64_t
  6075. Fri_child_user_time Tuint64_t
  6076. Fri_child_system_time Tuint64_t
  6077. Fri_child_pkg_idle_wkups Tuint64_t
  6078. Fri_child_interrupt_wkups Tuint64_t
  6079. Fri_child_pageins Tuint64_t
  6080. Fri_child_elapsed_abstime Tuint64_t
  6081. Fri_diskio_bytesread Tuint64_t
  6082. Fri_diskio_byteswritten Tuint64_t
  6083. Fri_cpu_time_qos_default Tuint64_t
  6084. Fri_cpu_time_qos_maintenance Tuint64_t
  6085. Fri_cpu_time_qos_background Tuint64_t
  6086. Fri_cpu_time_qos_utility Tuint64_t
  6087. Fri_cpu_time_qos_legacy Tuint64_t
  6088. Fri_cpu_time_qos_user_initiated Tuint64_t
  6089. Fri_cpu_time_qos_user_interactive Tuint64_t
  6090. Fri_billed_system_time Tuint64_t
  6091. Fri_serviced_system_time Tuint64_t
  6092. Fri_logical_writes Tuint64_t
  6093. Fri_lifetime_max_phys_footprint Tuint64_t
  6094. Fri_instructions Tuint64_t
  6095. Fri_cycles Tuint64_t
  6096. Fri_billed_energy Tuint64_t
  6097. Fri_serviced_energy Tuint64_t
  6098. Fri_interval_max_phys_footprint Tuint64_t
  6099. Fri_runnable_time Tuint64_t
  6100. }
  6101. type Trusage_info_v5 = struct {
  6102. Fri_uuid [16]Tuint8_t
  6103. Fri_user_time Tuint64_t
  6104. Fri_system_time Tuint64_t
  6105. Fri_pkg_idle_wkups Tuint64_t
  6106. Fri_interrupt_wkups Tuint64_t
  6107. Fri_pageins Tuint64_t
  6108. Fri_wired_size Tuint64_t
  6109. Fri_resident_size Tuint64_t
  6110. Fri_phys_footprint Tuint64_t
  6111. Fri_proc_start_abstime Tuint64_t
  6112. Fri_proc_exit_abstime Tuint64_t
  6113. Fri_child_user_time Tuint64_t
  6114. Fri_child_system_time Tuint64_t
  6115. Fri_child_pkg_idle_wkups Tuint64_t
  6116. Fri_child_interrupt_wkups Tuint64_t
  6117. Fri_child_pageins Tuint64_t
  6118. Fri_child_elapsed_abstime Tuint64_t
  6119. Fri_diskio_bytesread Tuint64_t
  6120. Fri_diskio_byteswritten Tuint64_t
  6121. Fri_cpu_time_qos_default Tuint64_t
  6122. Fri_cpu_time_qos_maintenance Tuint64_t
  6123. Fri_cpu_time_qos_background Tuint64_t
  6124. Fri_cpu_time_qos_utility Tuint64_t
  6125. Fri_cpu_time_qos_legacy Tuint64_t
  6126. Fri_cpu_time_qos_user_initiated Tuint64_t
  6127. Fri_cpu_time_qos_user_interactive Tuint64_t
  6128. Fri_billed_system_time Tuint64_t
  6129. Fri_serviced_system_time Tuint64_t
  6130. Fri_logical_writes Tuint64_t
  6131. Fri_lifetime_max_phys_footprint Tuint64_t
  6132. Fri_instructions Tuint64_t
  6133. Fri_cycles Tuint64_t
  6134. Fri_billed_energy Tuint64_t
  6135. Fri_serviced_energy Tuint64_t
  6136. Fri_interval_max_phys_footprint Tuint64_t
  6137. Fri_runnable_time Tuint64_t
  6138. Fri_flags Tuint64_t
  6139. }
  6140. type Trusage_info_v6 = struct {
  6141. Fri_uuid [16]Tuint8_t
  6142. Fri_user_time Tuint64_t
  6143. Fri_system_time Tuint64_t
  6144. Fri_pkg_idle_wkups Tuint64_t
  6145. Fri_interrupt_wkups Tuint64_t
  6146. Fri_pageins Tuint64_t
  6147. Fri_wired_size Tuint64_t
  6148. Fri_resident_size Tuint64_t
  6149. Fri_phys_footprint Tuint64_t
  6150. Fri_proc_start_abstime Tuint64_t
  6151. Fri_proc_exit_abstime Tuint64_t
  6152. Fri_child_user_time Tuint64_t
  6153. Fri_child_system_time Tuint64_t
  6154. Fri_child_pkg_idle_wkups Tuint64_t
  6155. Fri_child_interrupt_wkups Tuint64_t
  6156. Fri_child_pageins Tuint64_t
  6157. Fri_child_elapsed_abstime Tuint64_t
  6158. Fri_diskio_bytesread Tuint64_t
  6159. Fri_diskio_byteswritten Tuint64_t
  6160. Fri_cpu_time_qos_default Tuint64_t
  6161. Fri_cpu_time_qos_maintenance Tuint64_t
  6162. Fri_cpu_time_qos_background Tuint64_t
  6163. Fri_cpu_time_qos_utility Tuint64_t
  6164. Fri_cpu_time_qos_legacy Tuint64_t
  6165. Fri_cpu_time_qos_user_initiated Tuint64_t
  6166. Fri_cpu_time_qos_user_interactive Tuint64_t
  6167. Fri_billed_system_time Tuint64_t
  6168. Fri_serviced_system_time Tuint64_t
  6169. Fri_logical_writes Tuint64_t
  6170. Fri_lifetime_max_phys_footprint Tuint64_t
  6171. Fri_instructions Tuint64_t
  6172. Fri_cycles Tuint64_t
  6173. Fri_billed_energy Tuint64_t
  6174. Fri_serviced_energy Tuint64_t
  6175. Fri_interval_max_phys_footprint Tuint64_t
  6176. Fri_runnable_time Tuint64_t
  6177. Fri_flags Tuint64_t
  6178. Fri_user_ptime Tuint64_t
  6179. Fri_system_ptime Tuint64_t
  6180. Fri_pinstructions Tuint64_t
  6181. Fri_pcycles Tuint64_t
  6182. Fri_energy_nj Tuint64_t
  6183. Fri_penergy_nj Tuint64_t
  6184. Fri_secure_time_in_system Tuint64_t
  6185. Fri_secure_ptime_in_system Tuint64_t
  6186. Fri_neural_footprint Tuint64_t
  6187. Fri_lifetime_max_neural_footprint Tuint64_t
  6188. Fri_interval_max_neural_footprint Tuint64_t
  6189. Fri_reserved [9]Tuint64_t
  6190. }
  6191. type Trusage_info_current = struct {
  6192. Fri_uuid [16]Tuint8_t
  6193. Fri_user_time Tuint64_t
  6194. Fri_system_time Tuint64_t
  6195. Fri_pkg_idle_wkups Tuint64_t
  6196. Fri_interrupt_wkups Tuint64_t
  6197. Fri_pageins Tuint64_t
  6198. Fri_wired_size Tuint64_t
  6199. Fri_resident_size Tuint64_t
  6200. Fri_phys_footprint Tuint64_t
  6201. Fri_proc_start_abstime Tuint64_t
  6202. Fri_proc_exit_abstime Tuint64_t
  6203. Fri_child_user_time Tuint64_t
  6204. Fri_child_system_time Tuint64_t
  6205. Fri_child_pkg_idle_wkups Tuint64_t
  6206. Fri_child_interrupt_wkups Tuint64_t
  6207. Fri_child_pageins Tuint64_t
  6208. Fri_child_elapsed_abstime Tuint64_t
  6209. Fri_diskio_bytesread Tuint64_t
  6210. Fri_diskio_byteswritten Tuint64_t
  6211. Fri_cpu_time_qos_default Tuint64_t
  6212. Fri_cpu_time_qos_maintenance Tuint64_t
  6213. Fri_cpu_time_qos_background Tuint64_t
  6214. Fri_cpu_time_qos_utility Tuint64_t
  6215. Fri_cpu_time_qos_legacy Tuint64_t
  6216. Fri_cpu_time_qos_user_initiated Tuint64_t
  6217. Fri_cpu_time_qos_user_interactive Tuint64_t
  6218. Fri_billed_system_time Tuint64_t
  6219. Fri_serviced_system_time Tuint64_t
  6220. Fri_logical_writes Tuint64_t
  6221. Fri_lifetime_max_phys_footprint Tuint64_t
  6222. Fri_instructions Tuint64_t
  6223. Fri_cycles Tuint64_t
  6224. Fri_billed_energy Tuint64_t
  6225. Fri_serviced_energy Tuint64_t
  6226. Fri_interval_max_phys_footprint Tuint64_t
  6227. Fri_runnable_time Tuint64_t
  6228. Fri_flags Tuint64_t
  6229. Fri_user_ptime Tuint64_t
  6230. Fri_system_ptime Tuint64_t
  6231. Fri_pinstructions Tuint64_t
  6232. Fri_pcycles Tuint64_t
  6233. Fri_energy_nj Tuint64_t
  6234. Fri_penergy_nj Tuint64_t
  6235. Fri_secure_time_in_system Tuint64_t
  6236. Fri_secure_ptime_in_system Tuint64_t
  6237. Fri_neural_footprint Tuint64_t
  6238. Fri_lifetime_max_neural_footprint Tuint64_t
  6239. Fri_interval_max_neural_footprint Tuint64_t
  6240. Fri_reserved [9]Tuint64_t
  6241. }
  6242. type Trlimit = struct {
  6243. Frlim_cur Trlim_t
  6244. Frlim_max Trlim_t
  6245. }
  6246. type Tproc_rlimit_control_wakeupmon = struct {
  6247. Fwm_flags Tuint32_t
  6248. Fwm_rate Tint32_t
  6249. }
  6250. type Twait = struct {
  6251. Fw_T [0]struct {
  6252. F__ccgo0 uint32
  6253. }
  6254. Fw_S [0]struct {
  6255. F__ccgo0 uint32
  6256. }
  6257. Fw_status int32
  6258. }
  6259. type Tct_rune_t = int32
  6260. type Trune_t = int32
  6261. type Twchar_t = int32
  6262. type Tdiv_t = struct {
  6263. Fquot int32
  6264. Frem int32
  6265. }
  6266. type Tldiv_t = struct {
  6267. Fquot int64
  6268. Frem int64
  6269. }
  6270. type Tlldiv_t = struct {
  6271. Fquot int64
  6272. Frem int64
  6273. }
  6274. type Tmalloc_type_id_t = uint64
  6275. type Tva_list = uintptr
  6276. type Tfpos_t = int64
  6277. type t__sbuf = struct {
  6278. F_base uintptr
  6279. F_size int32
  6280. }
  6281. type TFILE = struct {
  6282. F_p uintptr
  6283. F_r int32
  6284. F_w int32
  6285. F_flags int16
  6286. F_file int16
  6287. F_bf t__sbuf
  6288. F_lbfsize int32
  6289. F_cookie uintptr
  6290. F_close uintptr
  6291. F_read uintptr
  6292. F_seek uintptr
  6293. F_write uintptr
  6294. F_ub t__sbuf
  6295. F_extra uintptr
  6296. F_ur int32
  6297. F_ubuf [3]uint8
  6298. F_nbuf [1]uint8
  6299. F_lb t__sbuf
  6300. F_blksize int32
  6301. F_offset Tfpos_t
  6302. }
  6303. type t__sFILE = TFILE
  6304. type Taccessx_descriptor = struct {
  6305. Fad_name_offset uint32
  6306. Fad_flags int32
  6307. Fad_pad [2]int32
  6308. }
  6309. type Tuuid_t = [16]uint8
  6310. // C documentation
  6311. //
  6312. // /* ARGSUSED */
  6313. func XMD2End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6314. bp := tls.Alloc(16)
  6315. defer tls.Free(16)
  6316. var i int32
  6317. var v1 uintptr
  6318. var v2 bool
  6319. var _ /* digest at bp+0 */ [16]Tuint8_t
  6320. _, _, _ = i, v1, v2
  6321. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6322. v1 = libc.Xmalloc(tls, uint64(m_MD2_DIGEST_STRING_LENGTH))
  6323. buf = v1
  6324. }
  6325. if v2 && v1 == libc.UintptrFromInt32(0) {
  6326. return libc.UintptrFromInt32(0)
  6327. }
  6328. XMD2Final(tls, bp, ctx)
  6329. i = 0
  6330. for {
  6331. if !(i < int32(m_MD2_DIGEST_LENGTH)) {
  6332. break
  6333. }
  6334. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6335. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6336. goto _3
  6337. _3:
  6338. ;
  6339. i++
  6340. }
  6341. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6342. libc.X__builtin___memset_chk(tls, bp, 0, uint64(16), ^t__predefined_size_t(0))
  6343. return buf
  6344. }
  6345. var _hex = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6346. func XMD2FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6347. bp := tls.Alloc(1248)
  6348. defer tls.Free(1248)
  6349. var fd, save_errno, v1 int32
  6350. var nr, v2 Tssize_t
  6351. var v3 int64
  6352. var v4 bool
  6353. var v5 uintptr
  6354. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6355. var _ /* ctx at bp+1168 */ TMD2_CTX
  6356. var _ /* sb at bp+0 */ Tstat
  6357. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6358. XMD2Init(tls, bp+1168)
  6359. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6360. fd = v1
  6361. if v1 < 0 {
  6362. return libc.UintptrFromInt32(0)
  6363. }
  6364. if len1 == 0 {
  6365. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6366. libc.Xclose(tls, fd)
  6367. return libc.UintptrFromInt32(0)
  6368. }
  6369. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6370. }
  6371. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6372. libc.Xclose(tls, fd)
  6373. return libc.UintptrFromInt32(0)
  6374. }
  6375. for {
  6376. if libc.Int64FromInt64(1024) < len1 {
  6377. v3 = libc.Int64FromInt64(1024)
  6378. } else {
  6379. v3 = len1
  6380. }
  6381. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6382. nr = v2
  6383. if !(v2 > 0) {
  6384. break
  6385. }
  6386. XMD2Update(tls, bp+1168, bp+144, uint32(libc.Uint64FromInt64(nr)))
  6387. if v4 = len1 > 0; v4 {
  6388. len1 -= nr
  6389. }
  6390. if v4 && len1 == 0 {
  6391. break
  6392. }
  6393. }
  6394. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6395. libc.Xclose(tls, fd)
  6396. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6397. if nr < 0 {
  6398. v5 = libc.UintptrFromInt32(0)
  6399. } else {
  6400. v5 = XMD2End(tls, bp+1168, buf)
  6401. }
  6402. return v5
  6403. }
  6404. func XMD2File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6405. return XMD2FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6406. }
  6407. func XMD2Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6408. bp := tls.Alloc(80)
  6409. defer tls.Free(80)
  6410. var _ /* ctx at bp+0 */ TMD2_CTX
  6411. XMD2Init(tls, bp)
  6412. XMD2Update(tls, bp, data, uint32(len1))
  6413. return XMD2End(tls, bp, buf)
  6414. }
  6415. // C documentation
  6416. //
  6417. // /* ARGSUSED */
  6418. func XMD4End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6419. bp := tls.Alloc(16)
  6420. defer tls.Free(16)
  6421. var i int32
  6422. var v1 uintptr
  6423. var v2 bool
  6424. var _ /* digest at bp+0 */ [16]Tuint8_t
  6425. _, _, _ = i, v1, v2
  6426. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6427. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_MD4_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6428. buf = v1
  6429. }
  6430. if v2 && v1 == libc.UintptrFromInt32(0) {
  6431. return libc.UintptrFromInt32(0)
  6432. }
  6433. XMD4Final(tls, bp, ctx)
  6434. i = 0
  6435. for {
  6436. if !(i < int32(m_MD4_DIGEST_LENGTH)) {
  6437. break
  6438. }
  6439. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex1[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6440. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex1[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6441. goto _3
  6442. _3:
  6443. ;
  6444. i++
  6445. }
  6446. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6447. libc.X__builtin___memset_chk(tls, bp, 0, uint64(16), ^t__predefined_size_t(0))
  6448. return buf
  6449. }
  6450. var _hex1 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6451. func XMD4FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6452. bp := tls.Alloc(1264)
  6453. defer tls.Free(1264)
  6454. var fd, save_errno, v1 int32
  6455. var nr, v2 Tssize_t
  6456. var v3 int64
  6457. var v4 bool
  6458. var v5 uintptr
  6459. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6460. var _ /* ctx at bp+1168 */ TMD4_CTX
  6461. var _ /* sb at bp+0 */ Tstat
  6462. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6463. XMD4Init(tls, bp+1168)
  6464. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6465. fd = v1
  6466. if v1 < 0 {
  6467. return libc.UintptrFromInt32(0)
  6468. }
  6469. if len1 == 0 {
  6470. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6471. libc.Xclose(tls, fd)
  6472. return libc.UintptrFromInt32(0)
  6473. }
  6474. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6475. }
  6476. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6477. libc.Xclose(tls, fd)
  6478. return libc.UintptrFromInt32(0)
  6479. }
  6480. for {
  6481. if libc.Int64FromInt64(1024) < len1 {
  6482. v3 = libc.Int64FromInt64(1024)
  6483. } else {
  6484. v3 = len1
  6485. }
  6486. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6487. nr = v2
  6488. if !(v2 > 0) {
  6489. break
  6490. }
  6491. XMD4Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  6492. if v4 = len1 > 0; v4 {
  6493. len1 -= nr
  6494. }
  6495. if v4 && len1 == 0 {
  6496. break
  6497. }
  6498. }
  6499. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6500. libc.Xclose(tls, fd)
  6501. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6502. if nr < 0 {
  6503. v5 = libc.UintptrFromInt32(0)
  6504. } else {
  6505. v5 = XMD4End(tls, bp+1168, buf)
  6506. }
  6507. return v5
  6508. }
  6509. func XMD4File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6510. return XMD4FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6511. }
  6512. func XMD4Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6513. bp := tls.Alloc(96)
  6514. defer tls.Free(96)
  6515. var _ /* ctx at bp+0 */ TMD4_CTX
  6516. XMD4Init(tls, bp)
  6517. XMD4Update(tls, bp, data, len1)
  6518. return XMD4End(tls, bp, buf)
  6519. }
  6520. /* Avoid polluting the namespace. Even though this makes this usage
  6521. * implementation-specific, defining it unconditionally should not be
  6522. * a problem, and better than possibly breaking unexpecting code. */
  6523. // C documentation
  6524. //
  6525. // /* ARGSUSED */
  6526. func XMD5End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6527. bp := tls.Alloc(16)
  6528. defer tls.Free(16)
  6529. var i int32
  6530. var v1 uintptr
  6531. var v2 bool
  6532. var _ /* digest at bp+0 */ [16]Tuint8_t
  6533. _, _, _ = i, v1, v2
  6534. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6535. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_MD5_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6536. buf = v1
  6537. }
  6538. if v2 && v1 == libc.UintptrFromInt32(0) {
  6539. return libc.UintptrFromInt32(0)
  6540. }
  6541. XMD5Final(tls, bp, ctx)
  6542. i = 0
  6543. for {
  6544. if !(i < int32(m_MD5_DIGEST_LENGTH)) {
  6545. break
  6546. }
  6547. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex2[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6548. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex2[libc.Int32FromUint8((*(*[16]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6549. goto _3
  6550. _3:
  6551. ;
  6552. i++
  6553. }
  6554. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6555. libc.X__builtin___memset_chk(tls, bp, 0, uint64(16), ^t__predefined_size_t(0))
  6556. return buf
  6557. }
  6558. var _hex2 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6559. func XMD5FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6560. bp := tls.Alloc(1264)
  6561. defer tls.Free(1264)
  6562. var fd, save_errno, v1 int32
  6563. var nr, v2 Tssize_t
  6564. var v3 int64
  6565. var v4 bool
  6566. var v5 uintptr
  6567. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6568. var _ /* ctx at bp+1168 */ TMD5_CTX
  6569. var _ /* sb at bp+0 */ Tstat
  6570. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6571. XMD5Init(tls, bp+1168)
  6572. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6573. fd = v1
  6574. if v1 < 0 {
  6575. return libc.UintptrFromInt32(0)
  6576. }
  6577. if len1 == 0 {
  6578. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6579. libc.Xclose(tls, fd)
  6580. return libc.UintptrFromInt32(0)
  6581. }
  6582. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6583. }
  6584. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6585. libc.Xclose(tls, fd)
  6586. return libc.UintptrFromInt32(0)
  6587. }
  6588. for {
  6589. if libc.Int64FromInt64(1024) < len1 {
  6590. v3 = libc.Int64FromInt64(1024)
  6591. } else {
  6592. v3 = len1
  6593. }
  6594. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6595. nr = v2
  6596. if !(v2 > 0) {
  6597. break
  6598. }
  6599. XMD5Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  6600. if v4 = len1 > 0; v4 {
  6601. len1 -= nr
  6602. }
  6603. if v4 && len1 == 0 {
  6604. break
  6605. }
  6606. }
  6607. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6608. libc.Xclose(tls, fd)
  6609. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6610. if nr < 0 {
  6611. v5 = libc.UintptrFromInt32(0)
  6612. } else {
  6613. v5 = XMD5End(tls, bp+1168, buf)
  6614. }
  6615. return v5
  6616. }
  6617. func XMD5File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6618. return XMD5FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6619. }
  6620. func XMD5Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6621. bp := tls.Alloc(96)
  6622. defer tls.Free(96)
  6623. var _ /* ctx at bp+0 */ TMD5_CTX
  6624. XMD5Init(tls, bp)
  6625. XMD5Update(tls, bp, data, len1)
  6626. return XMD5End(tls, bp, buf)
  6627. }
  6628. // C documentation
  6629. //
  6630. // /* ARGSUSED */
  6631. func XRMD160End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6632. bp := tls.Alloc(32)
  6633. defer tls.Free(32)
  6634. var i int32
  6635. var v1 uintptr
  6636. var v2 bool
  6637. var _ /* digest at bp+0 */ [20]Tuint8_t
  6638. _, _, _ = i, v1, v2
  6639. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6640. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_RMD160_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6641. buf = v1
  6642. }
  6643. if v2 && v1 == libc.UintptrFromInt32(0) {
  6644. return libc.UintptrFromInt32(0)
  6645. }
  6646. XRMD160Final(tls, bp, ctx)
  6647. i = 0
  6648. for {
  6649. if !(i < int32(m_RMD160_DIGEST_LENGTH)) {
  6650. break
  6651. }
  6652. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex3[libc.Int32FromUint8((*(*[20]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6653. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex3[libc.Int32FromUint8((*(*[20]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6654. goto _3
  6655. _3:
  6656. ;
  6657. i++
  6658. }
  6659. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6660. libc.X__builtin___memset_chk(tls, bp, 0, uint64(20), ^t__predefined_size_t(0))
  6661. return buf
  6662. }
  6663. var _hex3 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6664. func XRMD160FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6665. bp := tls.Alloc(1264)
  6666. defer tls.Free(1264)
  6667. var fd, save_errno, v1 int32
  6668. var nr, v2 Tssize_t
  6669. var v3 int64
  6670. var v4 bool
  6671. var v5 uintptr
  6672. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6673. var _ /* ctx at bp+1168 */ TRMD160_CTX
  6674. var _ /* sb at bp+0 */ Tstat
  6675. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6676. XRMD160Init(tls, bp+1168)
  6677. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6678. fd = v1
  6679. if v1 < 0 {
  6680. return libc.UintptrFromInt32(0)
  6681. }
  6682. if len1 == 0 {
  6683. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6684. libc.Xclose(tls, fd)
  6685. return libc.UintptrFromInt32(0)
  6686. }
  6687. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6688. }
  6689. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6690. libc.Xclose(tls, fd)
  6691. return libc.UintptrFromInt32(0)
  6692. }
  6693. for {
  6694. if libc.Int64FromInt64(1024) < len1 {
  6695. v3 = libc.Int64FromInt64(1024)
  6696. } else {
  6697. v3 = len1
  6698. }
  6699. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6700. nr = v2
  6701. if !(v2 > 0) {
  6702. break
  6703. }
  6704. XRMD160Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  6705. if v4 = len1 > 0; v4 {
  6706. len1 -= nr
  6707. }
  6708. if v4 && len1 == 0 {
  6709. break
  6710. }
  6711. }
  6712. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6713. libc.Xclose(tls, fd)
  6714. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6715. if nr < 0 {
  6716. v5 = libc.UintptrFromInt32(0)
  6717. } else {
  6718. v5 = XRMD160End(tls, bp+1168, buf)
  6719. }
  6720. return v5
  6721. }
  6722. func XRMD160File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6723. return XRMD160FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6724. }
  6725. func XRMD160Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6726. bp := tls.Alloc(96)
  6727. defer tls.Free(96)
  6728. var _ /* ctx at bp+0 */ TRMD160_CTX
  6729. XRMD160Init(tls, bp)
  6730. XRMD160Update(tls, bp, data, len1)
  6731. return XRMD160End(tls, bp, buf)
  6732. }
  6733. // C documentation
  6734. //
  6735. // /* ARGSUSED */
  6736. func XSHA1End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6737. bp := tls.Alloc(32)
  6738. defer tls.Free(32)
  6739. var i int32
  6740. var v1 uintptr
  6741. var v2 bool
  6742. var _ /* digest at bp+0 */ [20]Tuint8_t
  6743. _, _, _ = i, v1, v2
  6744. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6745. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA1_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6746. buf = v1
  6747. }
  6748. if v2 && v1 == libc.UintptrFromInt32(0) {
  6749. return libc.UintptrFromInt32(0)
  6750. }
  6751. XSHA1Final(tls, bp, ctx)
  6752. i = 0
  6753. for {
  6754. if !(i < int32(m_SHA1_DIGEST_LENGTH)) {
  6755. break
  6756. }
  6757. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex4[libc.Int32FromUint8((*(*[20]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6758. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex4[libc.Int32FromUint8((*(*[20]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6759. goto _3
  6760. _3:
  6761. ;
  6762. i++
  6763. }
  6764. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6765. libc.X__builtin___memset_chk(tls, bp, 0, uint64(20), ^t__predefined_size_t(0))
  6766. return buf
  6767. }
  6768. var _hex4 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6769. func XSHA1FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6770. bp := tls.Alloc(1264)
  6771. defer tls.Free(1264)
  6772. var fd, save_errno, v1 int32
  6773. var nr, v2 Tssize_t
  6774. var v3 int64
  6775. var v4 bool
  6776. var v5 uintptr
  6777. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6778. var _ /* ctx at bp+1168 */ TSHA1_CTX
  6779. var _ /* sb at bp+0 */ Tstat
  6780. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6781. XSHA1Init(tls, bp+1168)
  6782. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6783. fd = v1
  6784. if v1 < 0 {
  6785. return libc.UintptrFromInt32(0)
  6786. }
  6787. if len1 == 0 {
  6788. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6789. libc.Xclose(tls, fd)
  6790. return libc.UintptrFromInt32(0)
  6791. }
  6792. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6793. }
  6794. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6795. libc.Xclose(tls, fd)
  6796. return libc.UintptrFromInt32(0)
  6797. }
  6798. for {
  6799. if libc.Int64FromInt64(1024) < len1 {
  6800. v3 = libc.Int64FromInt64(1024)
  6801. } else {
  6802. v3 = len1
  6803. }
  6804. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6805. nr = v2
  6806. if !(v2 > 0) {
  6807. break
  6808. }
  6809. XSHA1Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  6810. if v4 = len1 > 0; v4 {
  6811. len1 -= nr
  6812. }
  6813. if v4 && len1 == 0 {
  6814. break
  6815. }
  6816. }
  6817. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6818. libc.Xclose(tls, fd)
  6819. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6820. if nr < 0 {
  6821. v5 = libc.UintptrFromInt32(0)
  6822. } else {
  6823. v5 = XSHA1End(tls, bp+1168, buf)
  6824. }
  6825. return v5
  6826. }
  6827. func XSHA1File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6828. return XSHA1FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6829. }
  6830. func XSHA1Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6831. bp := tls.Alloc(96)
  6832. defer tls.Free(96)
  6833. var _ /* ctx at bp+0 */ TSHA1_CTX
  6834. XSHA1Init(tls, bp)
  6835. XSHA1Update(tls, bp, data, len1)
  6836. return XSHA1End(tls, bp, buf)
  6837. }
  6838. // C documentation
  6839. //
  6840. // /* ARGSUSED */
  6841. func XSHA224End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6842. bp := tls.Alloc(32)
  6843. defer tls.Free(32)
  6844. var i int32
  6845. var v1 uintptr
  6846. var v2 bool
  6847. var _ /* digest at bp+0 */ [28]Tuint8_t
  6848. _, _, _ = i, v1, v2
  6849. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6850. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA224_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6851. buf = v1
  6852. }
  6853. if v2 && v1 == libc.UintptrFromInt32(0) {
  6854. return libc.UintptrFromInt32(0)
  6855. }
  6856. XSHA224Final(tls, bp, ctx)
  6857. i = 0
  6858. for {
  6859. if !(i < int32(m_SHA224_DIGEST_LENGTH)) {
  6860. break
  6861. }
  6862. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex5[libc.Int32FromUint8((*(*[28]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6863. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex5[libc.Int32FromUint8((*(*[28]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6864. goto _3
  6865. _3:
  6866. ;
  6867. i++
  6868. }
  6869. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6870. libc.X__builtin___memset_chk(tls, bp, 0, uint64(28), ^t__predefined_size_t(0))
  6871. return buf
  6872. }
  6873. var _hex5 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6874. func XSHA224FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6875. bp := tls.Alloc(1376)
  6876. defer tls.Free(1376)
  6877. var fd, save_errno, v1 int32
  6878. var nr, v2 Tssize_t
  6879. var v3 int64
  6880. var v4 bool
  6881. var v5 uintptr
  6882. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6883. var _ /* ctx at bp+1168 */ TSHA2_CTX
  6884. var _ /* sb at bp+0 */ Tstat
  6885. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6886. XSHA224Init(tls, bp+1168)
  6887. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6888. fd = v1
  6889. if v1 < 0 {
  6890. return libc.UintptrFromInt32(0)
  6891. }
  6892. if len1 == 0 {
  6893. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6894. libc.Xclose(tls, fd)
  6895. return libc.UintptrFromInt32(0)
  6896. }
  6897. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  6898. }
  6899. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  6900. libc.Xclose(tls, fd)
  6901. return libc.UintptrFromInt32(0)
  6902. }
  6903. for {
  6904. if libc.Int64FromInt64(1024) < len1 {
  6905. v3 = libc.Int64FromInt64(1024)
  6906. } else {
  6907. v3 = len1
  6908. }
  6909. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  6910. nr = v2
  6911. if !(v2 > 0) {
  6912. break
  6913. }
  6914. XSHA256Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  6915. if v4 = len1 > 0; v4 {
  6916. len1 -= nr
  6917. }
  6918. if v4 && len1 == 0 {
  6919. break
  6920. }
  6921. }
  6922. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  6923. libc.Xclose(tls, fd)
  6924. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  6925. if nr < 0 {
  6926. v5 = libc.UintptrFromInt32(0)
  6927. } else {
  6928. v5 = XSHA224End(tls, bp+1168, buf)
  6929. }
  6930. return v5
  6931. }
  6932. func XSHA224File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  6933. return XSHA224FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  6934. }
  6935. func XSHA224Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  6936. bp := tls.Alloc(208)
  6937. defer tls.Free(208)
  6938. var _ /* ctx at bp+0 */ TSHA2_CTX
  6939. XSHA224Init(tls, bp)
  6940. XSHA256Update(tls, bp, data, len1)
  6941. return XSHA224End(tls, bp, buf)
  6942. }
  6943. // C documentation
  6944. //
  6945. // /* ARGSUSED */
  6946. func XSHA256End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  6947. bp := tls.Alloc(32)
  6948. defer tls.Free(32)
  6949. var i int32
  6950. var v1 uintptr
  6951. var v2 bool
  6952. var _ /* digest at bp+0 */ [32]Tuint8_t
  6953. _, _, _ = i, v1, v2
  6954. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  6955. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA256_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  6956. buf = v1
  6957. }
  6958. if v2 && v1 == libc.UintptrFromInt32(0) {
  6959. return libc.UintptrFromInt32(0)
  6960. }
  6961. XSHA256Final(tls, bp, ctx)
  6962. i = 0
  6963. for {
  6964. if !(i < int32(m_SHA256_DIGEST_LENGTH)) {
  6965. break
  6966. }
  6967. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex6[libc.Int32FromUint8((*(*[32]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  6968. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex6[libc.Int32FromUint8((*(*[32]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  6969. goto _3
  6970. _3:
  6971. ;
  6972. i++
  6973. }
  6974. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  6975. libc.X__builtin___memset_chk(tls, bp, 0, uint64(32), ^t__predefined_size_t(0))
  6976. return buf
  6977. }
  6978. var _hex6 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  6979. func XSHA256FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  6980. bp := tls.Alloc(1376)
  6981. defer tls.Free(1376)
  6982. var fd, save_errno, v1 int32
  6983. var nr, v2 Tssize_t
  6984. var v3 int64
  6985. var v4 bool
  6986. var v5 uintptr
  6987. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  6988. var _ /* ctx at bp+1168 */ TSHA2_CTX
  6989. var _ /* sb at bp+0 */ Tstat
  6990. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  6991. XSHA256Init(tls, bp+1168)
  6992. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  6993. fd = v1
  6994. if v1 < 0 {
  6995. return libc.UintptrFromInt32(0)
  6996. }
  6997. if len1 == 0 {
  6998. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  6999. libc.Xclose(tls, fd)
  7000. return libc.UintptrFromInt32(0)
  7001. }
  7002. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  7003. }
  7004. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  7005. libc.Xclose(tls, fd)
  7006. return libc.UintptrFromInt32(0)
  7007. }
  7008. for {
  7009. if libc.Int64FromInt64(1024) < len1 {
  7010. v3 = libc.Int64FromInt64(1024)
  7011. } else {
  7012. v3 = len1
  7013. }
  7014. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  7015. nr = v2
  7016. if !(v2 > 0) {
  7017. break
  7018. }
  7019. XSHA256Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  7020. if v4 = len1 > 0; v4 {
  7021. len1 -= nr
  7022. }
  7023. if v4 && len1 == 0 {
  7024. break
  7025. }
  7026. }
  7027. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  7028. libc.Xclose(tls, fd)
  7029. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  7030. if nr < 0 {
  7031. v5 = libc.UintptrFromInt32(0)
  7032. } else {
  7033. v5 = XSHA256End(tls, bp+1168, buf)
  7034. }
  7035. return v5
  7036. }
  7037. func XSHA256File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  7038. return XSHA256FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  7039. }
  7040. func XSHA256Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  7041. bp := tls.Alloc(208)
  7042. defer tls.Free(208)
  7043. var _ /* ctx at bp+0 */ TSHA2_CTX
  7044. XSHA256Init(tls, bp)
  7045. XSHA256Update(tls, bp, data, len1)
  7046. return XSHA256End(tls, bp, buf)
  7047. }
  7048. // C documentation
  7049. //
  7050. // /* ARGSUSED */
  7051. func XSHA384End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  7052. bp := tls.Alloc(48)
  7053. defer tls.Free(48)
  7054. var i int32
  7055. var v1 uintptr
  7056. var v2 bool
  7057. var _ /* digest at bp+0 */ [48]Tuint8_t
  7058. _, _, _ = i, v1, v2
  7059. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  7060. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA384_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  7061. buf = v1
  7062. }
  7063. if v2 && v1 == libc.UintptrFromInt32(0) {
  7064. return libc.UintptrFromInt32(0)
  7065. }
  7066. XSHA384Final(tls, bp, ctx)
  7067. i = 0
  7068. for {
  7069. if !(i < int32(m_SHA384_DIGEST_LENGTH)) {
  7070. break
  7071. }
  7072. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex7[libc.Int32FromUint8((*(*[48]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  7073. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex7[libc.Int32FromUint8((*(*[48]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  7074. goto _3
  7075. _3:
  7076. ;
  7077. i++
  7078. }
  7079. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  7080. libc.X__builtin___memset_chk(tls, bp, 0, uint64(48), ^t__predefined_size_t(0))
  7081. return buf
  7082. }
  7083. var _hex7 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  7084. func XSHA384FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  7085. bp := tls.Alloc(1376)
  7086. defer tls.Free(1376)
  7087. var fd, save_errno, v1 int32
  7088. var nr, v2 Tssize_t
  7089. var v3 int64
  7090. var v4 bool
  7091. var v5 uintptr
  7092. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  7093. var _ /* ctx at bp+1168 */ TSHA2_CTX
  7094. var _ /* sb at bp+0 */ Tstat
  7095. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  7096. XSHA384Init(tls, bp+1168)
  7097. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  7098. fd = v1
  7099. if v1 < 0 {
  7100. return libc.UintptrFromInt32(0)
  7101. }
  7102. if len1 == 0 {
  7103. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  7104. libc.Xclose(tls, fd)
  7105. return libc.UintptrFromInt32(0)
  7106. }
  7107. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  7108. }
  7109. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  7110. libc.Xclose(tls, fd)
  7111. return libc.UintptrFromInt32(0)
  7112. }
  7113. for {
  7114. if libc.Int64FromInt64(1024) < len1 {
  7115. v3 = libc.Int64FromInt64(1024)
  7116. } else {
  7117. v3 = len1
  7118. }
  7119. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  7120. nr = v2
  7121. if !(v2 > 0) {
  7122. break
  7123. }
  7124. XSHA512Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  7125. if v4 = len1 > 0; v4 {
  7126. len1 -= nr
  7127. }
  7128. if v4 && len1 == 0 {
  7129. break
  7130. }
  7131. }
  7132. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  7133. libc.Xclose(tls, fd)
  7134. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  7135. if nr < 0 {
  7136. v5 = libc.UintptrFromInt32(0)
  7137. } else {
  7138. v5 = XSHA384End(tls, bp+1168, buf)
  7139. }
  7140. return v5
  7141. }
  7142. func XSHA384File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  7143. return XSHA384FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  7144. }
  7145. func XSHA384Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  7146. bp := tls.Alloc(208)
  7147. defer tls.Free(208)
  7148. var _ /* ctx at bp+0 */ TSHA2_CTX
  7149. XSHA384Init(tls, bp)
  7150. XSHA512Update(tls, bp, data, len1)
  7151. return XSHA384End(tls, bp, buf)
  7152. }
  7153. // C documentation
  7154. //
  7155. // /* ARGSUSED */
  7156. func XSHA512End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  7157. bp := tls.Alloc(64)
  7158. defer tls.Free(64)
  7159. var i int32
  7160. var v1 uintptr
  7161. var v2 bool
  7162. var _ /* digest at bp+0 */ [64]Tuint8_t
  7163. _, _, _ = i, v1, v2
  7164. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  7165. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  7166. buf = v1
  7167. }
  7168. if v2 && v1 == libc.UintptrFromInt32(0) {
  7169. return libc.UintptrFromInt32(0)
  7170. }
  7171. XSHA512Final(tls, bp, ctx)
  7172. i = 0
  7173. for {
  7174. if !(i < int32(m_SHA512_DIGEST_LENGTH)) {
  7175. break
  7176. }
  7177. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex8[libc.Int32FromUint8((*(*[64]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  7178. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex8[libc.Int32FromUint8((*(*[64]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  7179. goto _3
  7180. _3:
  7181. ;
  7182. i++
  7183. }
  7184. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  7185. libc.X__builtin___memset_chk(tls, bp, 0, uint64(64), ^t__predefined_size_t(0))
  7186. return buf
  7187. }
  7188. var _hex8 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  7189. func XSHA512FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  7190. bp := tls.Alloc(1376)
  7191. defer tls.Free(1376)
  7192. var fd, save_errno, v1 int32
  7193. var nr, v2 Tssize_t
  7194. var v3 int64
  7195. var v4 bool
  7196. var v5 uintptr
  7197. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  7198. var _ /* ctx at bp+1168 */ TSHA2_CTX
  7199. var _ /* sb at bp+0 */ Tstat
  7200. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  7201. XSHA512Init(tls, bp+1168)
  7202. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  7203. fd = v1
  7204. if v1 < 0 {
  7205. return libc.UintptrFromInt32(0)
  7206. }
  7207. if len1 == 0 {
  7208. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  7209. libc.Xclose(tls, fd)
  7210. return libc.UintptrFromInt32(0)
  7211. }
  7212. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  7213. }
  7214. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  7215. libc.Xclose(tls, fd)
  7216. return libc.UintptrFromInt32(0)
  7217. }
  7218. for {
  7219. if libc.Int64FromInt64(1024) < len1 {
  7220. v3 = libc.Int64FromInt64(1024)
  7221. } else {
  7222. v3 = len1
  7223. }
  7224. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  7225. nr = v2
  7226. if !(v2 > 0) {
  7227. break
  7228. }
  7229. XSHA512Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  7230. if v4 = len1 > 0; v4 {
  7231. len1 -= nr
  7232. }
  7233. if v4 && len1 == 0 {
  7234. break
  7235. }
  7236. }
  7237. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  7238. libc.Xclose(tls, fd)
  7239. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  7240. if nr < 0 {
  7241. v5 = libc.UintptrFromInt32(0)
  7242. } else {
  7243. v5 = XSHA512End(tls, bp+1168, buf)
  7244. }
  7245. return v5
  7246. }
  7247. func XSHA512File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  7248. return XSHA512FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  7249. }
  7250. func XSHA512Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  7251. bp := tls.Alloc(208)
  7252. defer tls.Free(208)
  7253. var _ /* ctx at bp+0 */ TSHA2_CTX
  7254. XSHA512Init(tls, bp)
  7255. XSHA512Update(tls, bp, data, len1)
  7256. return XSHA512End(tls, bp, buf)
  7257. }
  7258. // C documentation
  7259. //
  7260. // /* ARGSUSED */
  7261. func XSHA512_256End(tls *libc.TLS, ctx uintptr, buf uintptr) (r uintptr) {
  7262. bp := tls.Alloc(32)
  7263. defer tls.Free(32)
  7264. var i int32
  7265. var v1 uintptr
  7266. var v2 bool
  7267. var _ /* digest at bp+0 */ [32]Tuint8_t
  7268. _, _, _ = i, v1, v2
  7269. if v2 = buf == libc.UintptrFromInt32(0); v2 {
  7270. v1 = libc.Xmalloc(tls, libc.Uint64FromInt32(libc.Int32FromInt32(m_SHA512_256_DIGEST_LENGTH)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1)))
  7271. buf = v1
  7272. }
  7273. if v2 && v1 == libc.UintptrFromInt32(0) {
  7274. return libc.UintptrFromInt32(0)
  7275. }
  7276. XSHA512_256Final(tls, bp, ctx)
  7277. i = 0
  7278. for {
  7279. if !(i < int32(m_SHA512_256_DIGEST_LENGTH)) {
  7280. break
  7281. }
  7282. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = _hex9[libc.Int32FromUint8((*(*[32]Tuint8_t)(unsafe.Pointer(bp)))[i])>>int32(4)]
  7283. *(*int8)(unsafe.Pointer(buf + uintptr(i+i+int32(1)))) = _hex9[libc.Int32FromUint8((*(*[32]Tuint8_t)(unsafe.Pointer(bp)))[i])&int32(0x0f)]
  7284. goto _3
  7285. _3:
  7286. ;
  7287. i++
  7288. }
  7289. *(*int8)(unsafe.Pointer(buf + uintptr(i+i))) = int8('\000')
  7290. libc.X__builtin___memset_chk(tls, bp, 0, uint64(32), ^t__predefined_size_t(0))
  7291. return buf
  7292. }
  7293. var _hex9 = [17]int8{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
  7294. func XSHA512_256FileChunk(tls *libc.TLS, filename uintptr, buf uintptr, off Toff_t, len1 Toff_t) (r uintptr) {
  7295. bp := tls.Alloc(1376)
  7296. defer tls.Free(1376)
  7297. var fd, save_errno, v1 int32
  7298. var nr, v2 Tssize_t
  7299. var v3 int64
  7300. var v4 bool
  7301. var v5 uintptr
  7302. var _ /* buffer at bp+144 */ [1024]Tuint8_t
  7303. var _ /* ctx at bp+1168 */ TSHA2_CTX
  7304. var _ /* sb at bp+0 */ Tstat
  7305. _, _, _, _, _, _, _, _ = fd, nr, save_errno, v1, v2, v3, v4, v5
  7306. XSHA512_256Init(tls, bp+1168)
  7307. v1 = libc.Xopen(tls, filename, m_O_RDONLY, 0)
  7308. fd = v1
  7309. if v1 < 0 {
  7310. return libc.UintptrFromInt32(0)
  7311. }
  7312. if len1 == 0 {
  7313. if libc.Xfstat(tls, fd, bp) == -int32(1) {
  7314. libc.Xclose(tls, fd)
  7315. return libc.UintptrFromInt32(0)
  7316. }
  7317. len1 = (*(*Tstat)(unsafe.Pointer(bp))).Fst_size
  7318. }
  7319. if off > 0 && libc.Xlseek(tls, fd, off, m_SEEK_SET) < 0 {
  7320. libc.Xclose(tls, fd)
  7321. return libc.UintptrFromInt32(0)
  7322. }
  7323. for {
  7324. if libc.Int64FromInt64(1024) < len1 {
  7325. v3 = libc.Int64FromInt64(1024)
  7326. } else {
  7327. v3 = len1
  7328. }
  7329. v2 = libc.Xread(tls, fd, bp+144, libc.Uint64FromInt64(v3))
  7330. nr = v2
  7331. if !(v2 > 0) {
  7332. break
  7333. }
  7334. XSHA512Update(tls, bp+1168, bp+144, libc.Uint64FromInt64(nr))
  7335. if v4 = len1 > 0; v4 {
  7336. len1 -= nr
  7337. }
  7338. if v4 && len1 == 0 {
  7339. break
  7340. }
  7341. }
  7342. save_errno = *(*int32)(unsafe.Pointer(libc.X__error(tls)))
  7343. libc.Xclose(tls, fd)
  7344. *(*int32)(unsafe.Pointer(libc.X__error(tls))) = save_errno
  7345. if nr < 0 {
  7346. v5 = libc.UintptrFromInt32(0)
  7347. } else {
  7348. v5 = XSHA512_256End(tls, bp+1168, buf)
  7349. }
  7350. return v5
  7351. }
  7352. func XSHA512_256File(tls *libc.TLS, filename uintptr, buf uintptr) (r uintptr) {
  7353. return XSHA512_256FileChunk(tls, filename, buf, libc.Int64FromInt32(0), libc.Int64FromInt32(0))
  7354. }
  7355. func XSHA512_256Data(tls *libc.TLS, data uintptr, len1 Tsize_t, buf uintptr) (r uintptr) {
  7356. bp := tls.Alloc(208)
  7357. defer tls.Free(208)
  7358. var _ /* ctx at bp+0 */ TSHA2_CTX
  7359. XSHA512_256Init(tls, bp)
  7360. XSHA512Update(tls, bp, data, len1)
  7361. return XSHA512_256End(tls, bp, buf)
  7362. }
  7363. var __ccgo_ts = (*reflect.StringHeader)(unsafe.Pointer(&__ccgo_ts1)).Data
  7364. var __ccgo_ts1 = "\x00\x01\x00\x02\x02\x00\x03\x03\x03\x00\x04\x04\x04\x04\x00\x05\x05\x05\x05\x05\x00\x06\x06\x06\x06\x06\x06\x00\a\a\a\a\a\a\a\x00\b\b\b\b\b\b\b\b\x00\t\t\t\t\t\t\t\t\t\x00\n\n\n\n\n\n\n\n\n\n\x00\v\v\v\v\v\v\v\v\v\v\v\x00\f\f\f\f\f\f\f\f\f\f\f\f\x00\r\r\r\r\r\r\r\r\r\r\r\r\r\x00\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x00\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x00\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x00\x80\x00\x00\x00"