Pong_Code.objdump 787 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463
  1. Pong_Code.elf: file format elf32-littlenios2
  2. Pong_Code.elf
  3. architecture: nios2:r1, flags 0x00000112:
  4. EXEC_P, HAS_SYMS, D_PAGED
  5. start address 0x00040230
  6. Program Header:
  7. LOAD off 0x00001000 vaddr 0x00040000 paddr 0x00040000 align 2**12
  8. filesz 0x00000020 memsz 0x00000020 flags r-x
  9. LOAD off 0x00001020 vaddr 0x00040020 paddr 0x00040020 align 2**12
  10. filesz 0x0001263c memsz 0x0001263c flags r-x
  11. LOAD off 0x0001365c vaddr 0x0005265c paddr 0x00054270 align 2**12
  12. filesz 0x00001c14 memsz 0x00001c14 flags rw-
  13. LOAD off 0x00015e84 vaddr 0x00055e84 paddr 0x00055e84 align 2**12
  14. filesz 0x00000000 memsz 0x000001a0 flags rw-
  15. Sections:
  16. Idx Name Size VMA LMA File off Algn
  17. 0 .entry 00000020 00040000 00040000 00001000 2**5
  18. CONTENTS, ALLOC, LOAD, READONLY, CODE
  19. 1 .exceptions 00000210 00040020 00040020 00001020 2**2
  20. CONTENTS, ALLOC, LOAD, READONLY, CODE
  21. 2 .text 00011e08 00040230 00040230 00001230 2**2
  22. CONTENTS, ALLOC, LOAD, READONLY, CODE
  23. 3 .rodata 00000624 00052038 00052038 00013038 2**2
  24. CONTENTS, ALLOC, LOAD, READONLY, DATA
  25. 4 .rwdata 00001c14 0005265c 00054270 0001365c 2**2
  26. CONTENTS, ALLOC, LOAD, DATA, SMALL_DATA
  27. 5 .bss 000001a0 00055e84 00055e84 00015e84 2**2
  28. ALLOC, SMALL_DATA
  29. 6 .onchip_memory2 00000000 00056024 00056024 00015270 2**0
  30. CONTENTS
  31. 7 .comment 00000023 00000000 00000000 00015270 2**0
  32. CONTENTS, READONLY
  33. 8 .debug_aranges 00001090 00000000 00000000 00015298 2**3
  34. CONTENTS, READONLY, DEBUGGING
  35. 9 .debug_info 00027b83 00000000 00000000 00016328 2**0
  36. CONTENTS, READONLY, DEBUGGING
  37. 10 .debug_abbrev 0000a41f 00000000 00000000 0003deab 2**0
  38. CONTENTS, READONLY, DEBUGGING
  39. 11 .debug_line 0000cac8 00000000 00000000 000482ca 2**0
  40. CONTENTS, READONLY, DEBUGGING
  41. 12 .debug_frame 000025f0 00000000 00000000 00054d94 2**2
  42. CONTENTS, READONLY, DEBUGGING
  43. 13 .debug_str 000040a7 00000000 00000000 00057384 2**0
  44. CONTENTS, READONLY, DEBUGGING
  45. 14 .debug_loc 000187ec 00000000 00000000 0005b42b 2**0
  46. CONTENTS, READONLY, DEBUGGING
  47. 15 .debug_alt_sim_info 00000040 00000000 00000000 00073c18 2**2
  48. CONTENTS, READONLY, DEBUGGING
  49. 16 .debug_ranges 00001be8 00000000 00000000 00073c58 2**3
  50. CONTENTS, READONLY, DEBUGGING
  51. 17 .thread_model 00000003 00000000 00000000 00078ebe 2**0
  52. CONTENTS, READONLY
  53. 18 .cpu 00000005 00000000 00000000 00078ec1 2**0
  54. CONTENTS, READONLY
  55. 19 .qsys 00000001 00000000 00000000 00078ec6 2**0
  56. CONTENTS, READONLY
  57. 20 .simulation_enabled 00000001 00000000 00000000 00078ec7 2**0
  58. CONTENTS, READONLY
  59. 21 .stderr_dev 00000009 00000000 00000000 00078ec8 2**0
  60. CONTENTS, READONLY
  61. 22 .stdin_dev 00000009 00000000 00000000 00078ed1 2**0
  62. CONTENTS, READONLY
  63. 23 .stdout_dev 00000009 00000000 00000000 00078eda 2**0
  64. CONTENTS, READONLY
  65. 24 .sopc_system_name 00000008 00000000 00000000 00078ee3 2**0
  66. CONTENTS, READONLY
  67. 25 .quartus_project_dir 0000001d 00000000 00000000 00078eeb 2**0
  68. CONTENTS, READONLY
  69. 26 .jdi 00004802 00000000 00000000 00078f08 2**0
  70. CONTENTS, READONLY
  71. 27 .sopcinfo 0004849f 00000000 00000000 0007d70a 2**0
  72. CONTENTS, READONLY
  73. SYMBOL TABLE:
  74. 00040000 l d .entry 00000000 .entry
  75. 00040020 l d .exceptions 00000000 .exceptions
  76. 00040230 l d .text 00000000 .text
  77. 00052038 l d .rodata 00000000 .rodata
  78. 0005265c l d .rwdata 00000000 .rwdata
  79. 00055e84 l d .bss 00000000 .bss
  80. 00056024 l d .onchip_memory2 00000000 .onchip_memory2
  81. 00000000 l d .comment 00000000 .comment
  82. 00000000 l d .debug_aranges 00000000 .debug_aranges
  83. 00000000 l d .debug_info 00000000 .debug_info
  84. 00000000 l d .debug_abbrev 00000000 .debug_abbrev
  85. 00000000 l d .debug_line 00000000 .debug_line
  86. 00000000 l d .debug_frame 00000000 .debug_frame
  87. 00000000 l d .debug_str 00000000 .debug_str
  88. 00000000 l d .debug_loc 00000000 .debug_loc
  89. 00000000 l d .debug_alt_sim_info 00000000 .debug_alt_sim_info
  90. 00000000 l d .debug_ranges 00000000 .debug_ranges
  91. 00000000 l df *ABS* 00000000 ../Pong_Code_bsp//obj/HAL/src/crt0.o
  92. 00040268 l .text 00000000 alt_after_alt_main
  93. 00000000 l df *ABS* 00000000 alt_irq_handler.c
  94. 00000000 l df *ABS* 00000000 alt_instruction_exception_entry.c
  95. 00000000 l df *ABS* 00000000 specs.cpp
  96. 00000000 l df *ABS* 00000000 Main.c
  97. 00000000 l df *ABS* 00000000 specs.cpp
  98. 00000000 l df *ABS* 00000000 s_round.c
  99. 00000000 l df *ABS* 00000000 eqsf2.c
  100. 00000000 l df *ABS* 00000000 gesf2.c
  101. 00000000 l df *ABS* 00000000 lesf2.c
  102. 00000000 l df *ABS* 00000000 floatsisf.c
  103. 00000000 l df *ABS* 00000000 adddf3.c
  104. 00000000 l df *ABS* 00000000 fixdfsi.c
  105. 00000000 l df *ABS* 00000000 floatsidf.c
  106. 00000000 l df *ABS* 00000000 extendsfdf2.c
  107. 00000000 l df *ABS* 00000000 libgcc2.c
  108. 00000000 l df *ABS* 00000000 libgcc2.c
  109. 00000000 l df *ABS* 00000000 getc.c
  110. 00000000 l df *ABS* 00000000 impure.c
  111. 0005265c l O .rwdata 00000424 impure_data
  112. 00000000 l df *ABS* 00000000 printf.c
  113. 00000000 l df *ABS* 00000000 putchar.c
  114. 00000000 l df *ABS* 00000000 rget.c
  115. 00000000 l df *ABS* 00000000 vfprintf.c
  116. 0005221e l O .rodata 00000010 zeroes.4404
  117. 00044464 l F .text 000000bc __sbprintf
  118. 0005222e l O .rodata 00000010 blanks.4403
  119. 00000000 l df *ABS* 00000000 wsetup.c
  120. 00000000 l df *ABS* 00000000 dtoa.c
  121. 00044674 l F .text 00000228 quorem
  122. 00000000 l df *ABS* 00000000 fflush.c
  123. 00000000 l df *ABS* 00000000 findfp.c
  124. 000461cc l F .text 00000008 __fp_unlock
  125. 000461e0 l F .text 0000019c __sinit.part.1
  126. 0004637c l F .text 00000008 __fp_lock
  127. 00000000 l df *ABS* 00000000 mallocr.c
  128. 00000000 l df *ABS* 00000000 fwalk.c
  129. 00000000 l df *ABS* 00000000 locale.c
  130. 00052aa0 l O .rwdata 00000020 lc_ctype_charset
  131. 00052a80 l O .rwdata 00000020 lc_message_charset
  132. 00052ac0 l O .rwdata 00000038 lconv
  133. 00000000 l df *ABS* 00000000 makebuf.c
  134. 00000000 l df *ABS* 00000000 mallocr.c
  135. 00000000 l df *ABS* 00000000 memchr.c
  136. 00000000 l df *ABS* 00000000 memcpy.c
  137. 00000000 l df *ABS* 00000000 memset.c
  138. 00000000 l df *ABS* 00000000 mprec.c
  139. 0005225c l O .rodata 0000000c p05.2768
  140. 00000000 l df *ABS* 00000000 putc.c
  141. 00000000 l df *ABS* 00000000 refill.c
  142. 00048b50 l F .text 0000001c lflush
  143. 00000000 l df *ABS* 00000000 s_fpclassify.c
  144. 00000000 l df *ABS* 00000000 sbrkr.c
  145. 00000000 l df *ABS* 00000000 stdio.c
  146. 00000000 l df *ABS* 00000000 strcmp.c
  147. 00000000 l df *ABS* 00000000 strlen.c
  148. 00000000 l df *ABS* 00000000 vfprintf.c
  149. 000490b8 l F .text 000000fc __sprint_r.part.0
  150. 00052380 l O .rodata 00000010 zeroes.4349
  151. 0004a6f4 l F .text 000000bc __sbprintf
  152. 00052390 l O .rodata 00000010 blanks.4348
  153. 00000000 l df *ABS* 00000000 wbuf.c
  154. 00000000 l df *ABS* 00000000 writer.c
  155. 00000000 l df *ABS* 00000000 closer.c
  156. 00000000 l df *ABS* 00000000 mallocr.c
  157. 00000000 l df *ABS* 00000000 fclose.c
  158. 00000000 l df *ABS* 00000000 fputwc.c
  159. 00000000 l df *ABS* 00000000 fstatr.c
  160. 00000000 l df *ABS* 00000000 fvwrite.c
  161. 00000000 l df *ABS* 00000000 int_errno.c
  162. 00000000 l df *ABS* 00000000 isattyr.c
  163. 00000000 l df *ABS* 00000000 lseekr.c
  164. 00000000 l df *ABS* 00000000 memmove.c
  165. 00000000 l df *ABS* 00000000 readr.c
  166. 00000000 l df *ABS* 00000000 mallocr.c
  167. 00000000 l df *ABS* 00000000 wcrtomb.c
  168. 00000000 l df *ABS* 00000000 wctomb_r.c
  169. 00000000 l df *ABS* 00000000 libgcc2.c
  170. 00000000 l df *ABS* 00000000 libgcc2.c
  171. 00000000 l df *ABS* 00000000 lib2-divmod.c
  172. 00000000 l df *ABS* 00000000 lib2-mul.c
  173. 00000000 l df *ABS* 00000000 divdf3.c
  174. 00000000 l df *ABS* 00000000 eqdf2.c
  175. 00000000 l df *ABS* 00000000 gedf2.c
  176. 00000000 l df *ABS* 00000000 ledf2.c
  177. 00000000 l df *ABS* 00000000 muldf3.c
  178. 00000000 l df *ABS* 00000000 subdf3.c
  179. 00000000 l df *ABS* 00000000 floatunsidf.c
  180. 00000000 l df *ABS* 00000000 alt_close.c
  181. 0004e858 l F .text 0000003c alt_get_errno
  182. 00000000 l df *ABS* 00000000 alt_dev.c
  183. 0004e96c l F .text 0000002c alt_dev_null_write
  184. 00000000 l df *ABS* 00000000 alt_errno.c
  185. 00000000 l df *ABS* 00000000 alt_fstat.c
  186. 0004e998 l F .text 0000003c alt_get_errno
  187. 00000000 l df *ABS* 00000000 alt_isatty.c
  188. 0004ea8c l F .text 0000003c alt_get_errno
  189. 00000000 l df *ABS* 00000000 alt_load.c
  190. 0004eb74 l F .text 00000068 alt_load_section
  191. 00000000 l df *ABS* 00000000 alt_lseek.c
  192. 0004ec60 l F .text 0000003c alt_get_errno
  193. 00000000 l df *ABS* 00000000 alt_main.c
  194. 00000000 l df *ABS* 00000000 alt_malloc_lock.c
  195. 00000000 l df *ABS* 00000000 alt_read.c
  196. 0004ee3c l F .text 0000003c alt_get_errno
  197. 00000000 l df *ABS* 00000000 alt_release_fd.c
  198. 00000000 l df *ABS* 00000000 alt_sbrk.c
  199. 00054258 l O .rwdata 00000004 heap_end
  200. 00000000 l df *ABS* 00000000 alt_write.c
  201. 0004f0b0 l F .text 0000003c alt_get_errno
  202. 00000000 l df *ABS* 00000000 alt_sys_init.c
  203. 0004f1ec l F .text 00000034 alt_dev_reg
  204. 000530a8 l O .rwdata 00001060 jtag_uart
  205. 00054108 l O .rwdata 00000120 lcd_16207
  206. 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_fd.c
  207. 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_init.c
  208. 0004f4dc l F .text 0000020c altera_avalon_jtag_uart_irq
  209. 0004f6e8 l F .text 000000a0 altera_avalon_jtag_uart_timeout
  210. 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_ioctl.c
  211. 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_read.c
  212. 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_write.c
  213. 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207.c
  214. 0005425c l O .rwdata 00000004 colstart
  215. 0004fd20 l F .text 000000b8 lcd_write_command
  216. 0004fdd8 l F .text 000000d8 lcd_write_data
  217. 0004feb0 l F .text 000000e8 lcd_clear_screen
  218. 0004ff98 l F .text 00000228 lcd_repaint_screen
  219. 000501c0 l F .text 000000e8 lcd_scroll_up
  220. 000502a8 l F .text 000002c4 lcd_handle_escape
  221. 00050a8c l F .text 000000ac alt_lcd_16207_timeout
  222. 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207_fd.c
  223. 00000000 l df *ABS* 00000000 alt_alarm_start.c
  224. 00000000 l df *ABS* 00000000 alt_dcache_flush_all.c
  225. 00000000 l df *ABS* 00000000 alt_dev_llist_insert.c
  226. 00050e18 l F .text 0000003c alt_get_errno
  227. 00000000 l df *ABS* 00000000 alt_do_ctors.c
  228. 00000000 l df *ABS* 00000000 alt_do_dtors.c
  229. 00000000 l df *ABS* 00000000 alt_icache_flush_all.c
  230. 00000000 l df *ABS* 00000000 alt_iic.c
  231. 00000000 l df *ABS* 00000000 alt_iic_isr_register.c
  232. 00000000 l df *ABS* 00000000 alt_io_redirect.c
  233. 00051278 l F .text 000000e4 alt_open_fd
  234. 00000000 l df *ABS* 00000000 alt_irq_vars.c
  235. 00000000 l df *ABS* 00000000 alt_open.c
  236. 000513d8 l F .text 0000003c alt_get_errno
  237. 00051414 l F .text 000000ec alt_file_locked
  238. 00000000 l df *ABS* 00000000 alt_tick.c
  239. 00000000 l df *ABS* 00000000 alt_usleep.c
  240. 00000000 l df *ABS* 00000000 altera_nios2_gen2_irq.c
  241. 00000000 l df *ABS* 00000000 alt_busy_sleep.c
  242. 00000000 l df *ABS* 00000000 alt_find_dev.c
  243. 00000000 l df *ABS* 00000000 alt_find_file.c
  244. 00000000 l df *ABS* 00000000 alt_get_fd.c
  245. 00000000 l df *ABS* 00000000 atexit.c
  246. 00000000 l df *ABS* 00000000 ctype_.c
  247. 000524dc l O .rodata 00000180 _ctype_b
  248. 00000000 l df *ABS* 00000000 exit.c
  249. 00000000 l df *ABS* 00000000 memcmp.c
  250. 00000000 l df *ABS* 00000000 __atexit.c
  251. 00000000 l df *ABS* 00000000 __call_atexit.c
  252. 00000000 l df *ABS* 00000000 alt_exit.c
  253. 00055ec8 g O .bss 00000004 alt_instruction_exception_handler
  254. 000420cc g F .text 00000018 putchar
  255. 00048870 g F .text 00000074 _mprec_log10
  256. 0004895c g F .text 0000008c __any_on
  257. 0004b2c8 g F .text 00000054 _isatty_r
  258. 00052268 g O .rodata 00000028 __mprec_tinytens
  259. 0004ed78 g F .text 0000007c alt_main
  260. 00055f24 g O .bss 00000100 alt_irq
  261. 0004b31c g F .text 00000060 _lseek_r
  262. 00054270 g *ABS* 00000000 __flash_rwdata_start
  263. 0004d3f0 g F .text 00000088 .hidden __eqdf2
  264. 00056024 g *ABS* 00000000 __alt_heap_start
  265. 00042088 g F .text 0000003c printf
  266. 0004ba9c g F .text 0000009c _wcrtomb_r
  267. 00048ee0 g F .text 0000005c __sseek
  268. 0004652c g F .text 00000010 __sinit
  269. 0004a7b0 g F .text 00000140 __swbuf_r
  270. 00046b38 g F .text 0000007c _setlocale_r
  271. 00046384 g F .text 00000078 __sfmoreglue
  272. 0004ee18 g F .text 00000024 __malloc_unlock
  273. 00040fc4 g F .text 00000100 round
  274. 0004b37c g F .text 0000015c memmove
  275. 00046514 g F .text 00000018 _cleanup
  276. 00047930 g F .text 000000a8 _Balloc
  277. 0004d478 g F .text 000000dc .hidden __gtdf2
  278. 00051830 g F .text 00000024 altera_nios2_gen2_irq_init
  279. 00040000 g F .entry 0000000c __reset
  280. 00040020 g *ABS* 00000000 __flash_exceptions_start
  281. 0004ada4 g F .text 0000005c _fstat_r
  282. 00055eac g O .bss 00000004 errno
  283. 00042158 g F .text 00000014 __srget
  284. 00048e5c g F .text 00000008 __seofread
  285. 00055eb4 g O .bss 00000004 alt_argv
  286. 0005c228 g *ABS* 00000000 _gp
  287. 00051800 g F .text 00000030 usleep
  288. 00040514 g F .text 00000968 game
  289. 00052f28 g O .rwdata 00000180 alt_fd_list
  290. 00041f60 g F .text 00000070 _getc_r
  291. 00041fd0 g F .text 00000088 getc
  292. 000420c4 g F .text 00000008 _putchar_r
  293. 000519ac g F .text 00000090 alt_find_dev
  294. 000476c0 g F .text 00000148 memcpy
  295. 000461d4 g F .text 0000000c _cleanup_r
  296. 00041d10 g F .text 000000dc .hidden __floatsidf
  297. 0005135c g F .text 0000007c alt_io_redirect
  298. 0004d554 g F .text 000000f4 .hidden __ltdf2
  299. 00052038 g *ABS* 00000000 __DTOR_END__
  300. 00051c08 g F .text 0000009c alt_exception_cause_generated_bad_addr
  301. 00048d40 g F .text 00000074 __fpclassifyd
  302. 000487cc g F .text 000000a4 __ratio
  303. 0004a6d8 g F .text 0000001c __vfiprintf_internal
  304. 00055ef4 g O .bss 00000020 screen
  305. 0004f8e0 g F .text 0000021c altera_avalon_jtag_uart_read
  306. 00042058 g F .text 00000030 _printf_r
  307. 0004c93c g F .text 00000064 .hidden __udivsi3
  308. 0004eac8 g F .text 000000ac isatty
  309. 000522b8 g O .rodata 000000c8 __mprec_tens
  310. 00046bb4 g F .text 0000000c __locale_charset
  311. 000411f8 g F .text 000000c8 .hidden __lesf2
  312. 00055ea8 g O .bss 00000004 __malloc_top_pad
  313. 00054230 g O .rwdata 00000004 __mb_cur_max
  314. 00046be4 g F .text 0000000c _localeconv_r
  315. 0004049c g F .text 00000078 reset_pos
  316. 0004ae00 g F .text 000004c8 __sfvwrite_r
  317. 00047d64 g F .text 0000003c __i2b
  318. 00048db4 g F .text 00000054 _sbrk_r
  319. 0004b4d8 g F .text 00000060 _read_r
  320. 000403bc g F .text 00000070 set_pixel
  321. 00054250 g O .rwdata 00000004 alt_max_fd
  322. 0004aa98 g F .text 000000f0 _fclose_r
  323. 0004619c g F .text 00000030 fflush
  324. 00055ea4 g O .bss 00000004 __malloc_max_sbrked_mem
  325. 00041dec g F .text 00000110 .hidden __extendsfdf2
  326. 000413e4 g F .text 000008ac .hidden __adddf3
  327. 000410c4 g F .text 00000078 .hidden __nesf2
  328. 00048574 g F .text 0000010c __b2d
  329. 0004c280 g F .text 000005c4 .hidden __umoddi3
  330. 0004ec9c g F .text 000000dc lseek
  331. 00054228 g O .rwdata 00000004 _global_impure_ptr
  332. 0004b538 g F .text 00000564 _realloc_r
  333. 00056024 g *ABS* 00000000 __bss_end
  334. 00051188 g F .text 000000f0 alt_iic_isr_register
  335. 000516f8 g F .text 00000108 alt_tick
  336. 0004bc84 g F .text 000005fc .hidden __udivdi3
  337. 0004ad00 g F .text 00000024 _fputwc_r
  338. 00052290 g O .rodata 00000028 __mprec_bigtens
  339. 00047b48 g F .text 00000104 __s2b
  340. 0004e7b0 g F .text 000000a8 .hidden __floatunsidf
  341. 000482b4 g F .text 00000060 __mcmp
  342. 0004654c g F .text 00000018 __fp_lock_all
  343. 0005113c g F .text 0000004c alt_ic_irq_enabled
  344. 0005165c g F .text 0000009c alt_alarm_stop
  345. 00055ebc g O .bss 00000004 alt_irq_active
  346. 000400fc g F .exceptions 000000d4 alt_irq_handler
  347. 00052f00 g O .rwdata 00000028 alt_dev_null
  348. 00050df8 g F .text 00000020 alt_dcache_flush_all
  349. 00047c4c g F .text 00000068 __hi0bits
  350. 00041c90 g F .text 00000080 .hidden __fixdfsi
  351. 00054270 g *ABS* 00000000 __ram_rwdata_end
  352. 00054248 g O .rwdata 00000008 alt_dev_list
  353. 0004f0ec g F .text 00000100 write
  354. 000489e8 g F .text 000000a0 _putc_r
  355. 0004113c g F .text 000000bc .hidden __gtsf2
  356. 0005265c g *ABS* 00000000 __ram_rodata_end
  357. 0004e9d4 g F .text 000000b8 fstat
  358. 0004d554 g F .text 000000f4 .hidden __ledf2
  359. 0004802c g F .text 00000140 __pow5mult
  360. 000491cc g F .text 0000150c ___vfiprintf_internal_r
  361. 00055e9c g O .bss 00000004 __nlocale_changed
  362. 0004c9a0 g F .text 00000058 .hidden __umodsi3
  363. 00056024 g *ABS* 00000000 end
  364. 0005056c g F .text 00000520 altera_avalon_lcd_16207_write
  365. 0004f41c g F .text 000000c0 altera_avalon_jtag_uart_init
  366. 000401d0 g F .exceptions 00000060 alt_instruction_exception_entry
  367. 00052038 g *ABS* 00000000 __CTOR_LIST__
  368. 00072000 g *ABS* 00000000 __alt_stack_pointer
  369. 00041efc g F .text 00000064 .hidden __clzsi2
  370. 0004fafc g F .text 00000224 altera_avalon_jtag_uart_write
  371. 0004653c g F .text 00000004 __sfp_lock_acquire
  372. 000475dc g F .text 000000e4 memchr
  373. 0004216c g F .text 000022dc ___vfprintf_internal_r
  374. 000466a0 g F .text 00000310 _free_r
  375. 00046bc0 g F .text 00000010 __locale_mb_cur_max
  376. 00051e84 g F .text 00000180 __call_exitprocs
  377. 000420e4 g F .text 00000074 __srget_r
  378. 00055e98 g O .bss 00000004 __mlocale_changed
  379. 00054234 g O .rwdata 00000004 __malloc_sbrk_base
  380. 00040230 g F .text 0000003c _start
  381. 00055ec0 g O .bss 00000004 _alt_tick_rate
  382. 0004816c g F .text 00000148 __lshift
  383. 00055ec4 g O .bss 00000004 _alt_nticks
  384. 0004ee78 g F .text 00000104 read
  385. 0004f258 g F .text 00000060 alt_sys_init
  386. 000412c0 g F .text 00000124 .hidden __floatsisf
  387. 00051d6c g F .text 00000118 __register_exitproc
  388. 00047da0 g F .text 0000028c __multiply
  389. 0004f788 g F .text 00000068 altera_avalon_jtag_uart_close
  390. 0004c9f8 g F .text 00000028 .hidden __mulsi3
  391. 0005265c g *ABS* 00000000 __ram_rwdata_start
  392. 00052038 g *ABS* 00000000 __ram_rodata_start
  393. 00055ecc g O .bss 00000028 __malloc_current_mallinfo
  394. 000410c4 g F .text 00000078 .hidden __eqsf2
  395. 00048680 g F .text 0000014c __d2b
  396. 0004f2b8 g F .text 00000060 altera_avalon_jtag_uart_read_fd
  397. 00051b44 g F .text 000000c4 alt_get_fd
  398. 00051854 g F .text 00000158 alt_busy_sleep
  399. 0004a968 g F .text 00000054 _close_r
  400. 00051cf0 g F .text 0000007c memcmp
  401. 0004f378 g F .text 00000050 altera_avalon_jtag_uart_close_fd
  402. 00056024 g *ABS* 00000000 __alt_stack_base
  403. 0004f3c8 g F .text 00000054 altera_avalon_jtag_uart_ioctl_fd
  404. 00044520 g F .text 00000154 __swsetup_r
  405. 0004ca20 g F .text 000009d0 .hidden __divdf3
  406. 000463fc g F .text 00000118 __sfp
  407. 000488e4 g F .text 00000078 __copybits
  408. 00052af8 g O .rwdata 00000408 __malloc_av_
  409. 00046548 g F .text 00000004 __sinit_lock_release
  410. 0004d648 g F .text 0000086c .hidden __muldf3
  411. 00048e08 g F .text 00000054 __sread
  412. 00051a3c g F .text 00000108 alt_find_file
  413. 00050e54 g F .text 000000a4 alt_dev_llist_insert
  414. 0004edf4 g F .text 00000024 __malloc_lock
  415. 0004f000 g F .text 000000b0 sbrk
  416. 00046140 g F .text 0000005c _fflush_r
  417. 0004a9bc g F .text 000000dc _calloc_r
  418. 00055e84 g *ABS* 00000000 __bss_start
  419. 00047808 g F .text 00000128 memset
  420. 00040f98 g F .text 0000002c main
  421. 00055eb8 g O .bss 00000004 alt_envp
  422. 00055ea0 g O .bss 00000004 __malloc_max_total_mem
  423. 0004f318 g F .text 00000060 altera_avalon_jtag_uart_write_fd
  424. 0004a8f0 g F .text 00000018 __swbuf
  425. 000411f8 g F .text 000000c8 .hidden __ltsf2
  426. 00050b38 g F .text 00000134 altera_avalon_lcd_16207_init
  427. 00048f3c g F .text 00000008 __sclose
  428. 00072000 g *ABS* 00000000 __alt_heap_limit
  429. 0004ab88 g F .text 00000014 fclose
  430. 0004042c g F .text 00000070 reset_screen
  431. 0004489c g F .text 00001688 _dtoa_r
  432. 00046dd0 g F .text 0000080c _malloc_r
  433. 0004bbf8 g F .text 00000030 __ascii_wctomb
  434. 00054254 g O .rwdata 00000004 alt_errno
  435. 000469b0 g F .text 000000c4 _fwalk
  436. 00040e7c g F .text 0000011c test_picture
  437. 00048a88 g F .text 000000c8 putc
  438. 0004c844 g F .text 00000084 .hidden __divsi3
  439. 0004657c g F .text 00000124 _malloc_trim_r
  440. 00052038 g *ABS* 00000000 __CTOR_END__
  441. 00048f44 g F .text 000000dc strcmp
  442. 00052038 g *ABS* 00000000 __flash_rodata_start
  443. 00052038 g *ABS* 00000000 __DTOR_LIST__
  444. 00055e84 g O .bss 00000008 left_paddle
  445. 0004d3f0 g F .text 00000088 .hidden __nedf2
  446. 0004f220 g F .text 00000038 alt_irq_init
  447. 0004ef7c g F .text 00000084 alt_release_fd
  448. 000520d6 g O .rodata 00000100 .hidden __clz_tab
  449. 00055e94 g O .bss 00000004 _PathLocale
  450. 000402e8 g F .text 00000060 bin
  451. 00051ca4 g F .text 00000014 atexit
  452. 0004113c g F .text 000000bc .hidden __gesf2
  453. 0004a908 g F .text 00000060 _write_r
  454. 00046bf0 g F .text 00000018 setlocale
  455. 0005422c g O .rwdata 00000004 _impure_ptr
  456. 00055eb0 g O .bss 00000004 alt_argc
  457. 00045f24 g F .text 0000021c __sflush_r
  458. 00050f58 g F .text 00000060 _do_dtors
  459. 00046bdc g F .text 00000008 __locale_cjk_lang
  460. 00048b6c g F .text 000001d4 __srefill_r
  461. 00040020 g .exceptions 00000000 alt_irq_entry
  462. 00048510 g F .text 00000064 __ulp
  463. 00046564 g F .text 00000018 __fp_unlock_all
  464. 00050c6c g F .text 00000060 altera_avalon_lcd_16207_write_fd
  465. 00054240 g O .rwdata 00000008 alt_fs_list
  466. 00055f14 g O .bss 00000010 ball
  467. 00040020 g *ABS* 00000000 __ram_exceptions_start
  468. 00046c08 g F .text 0000000c localeconv
  469. 00040000 g *ABS* 00000000 __alt_mem_onchip_memory2
  470. 00050fd8 g F .text 00000050 alt_ic_isr_register
  471. 00054270 g *ABS* 00000000 _edata
  472. 00056024 g *ABS* 00000000 _end
  473. 0004ab9c g F .text 00000164 __fputwc
  474. 00040230 g *ABS* 00000000 __ram_exceptions_end
  475. 00055e8c g O .bss 00000008 right_paddle
  476. 0004f7f0 g F .text 000000f0 altera_avalon_jtag_uart_ioctl
  477. 000510b0 g F .text 0000008c alt_ic_irq_disable
  478. 00048e64 g F .text 0000007c __swrite
  479. 00054238 g O .rwdata 00000004 __malloc_trim_threshold
  480. 00040348 g F .text 00000074 draw_console
  481. 00046bd0 g F .text 0000000c __locale_msgcharset
  482. 00051cb8 g F .text 00000038 exit
  483. 00046a74 g F .text 000000c4 _fwalk_reent
  484. 00048314 g F .text 000001fc __mdiff
  485. 0004c8c8 g F .text 00000074 .hidden __modsi3
  486. 0005426c g O .rwdata 00000004 __ctype_ptr__
  487. 00072000 g *ABS* 00000000 __alt_data_end
  488. 00040020 g F .exceptions 00000000 alt_exception
  489. 00046540 g F .text 00000004 __sfp_lock_release
  490. 000523db g O .rodata 00000101 _ctype_
  491. 0004026c g F .text 0000007c draw
  492. 00052004 g F .text 00000034 _exit
  493. 00050ccc g F .text 0000012c alt_alarm_start
  494. 00046c14 g F .text 000001bc __smakebuf_r
  495. 00049020 g F .text 00000098 strlen
  496. 00051500 g F .text 0000015c open
  497. 0004d478 g F .text 000000dc .hidden __gedf2
  498. 0005423c g O .rwdata 00000004 __wctomb
  499. 000491b4 g F .text 00000018 __sprint_r
  500. 00050fb8 g F .text 00000020 alt_icache_flush_all
  501. 00054260 g O .rwdata 00000004 alt_priority_mask
  502. 00051028 g F .text 00000088 alt_ic_irq_enable
  503. 00044448 g F .text 0000001c __vfprintf_internal
  504. 0004bc28 g F .text 0000005c _wctomb_r
  505. 0004deb4 g F .text 000008fc .hidden __subdf3
  506. 00047cb4 g F .text 000000b0 __lo0bits
  507. 00054264 g O .rwdata 00000008 alt_alarm_list
  508. 00050ef8 g F .text 00000060 _do_ctors
  509. 0004bb38 g F .text 000000c0 wcrtomb
  510. 0004e894 g F .text 000000d8 close
  511. 0004ebdc g F .text 00000084 alt_load
  512. 0004ad24 g F .text 00000080 fputwc
  513. 00046544 g F .text 00000004 __sinit_lock_acquire
  514. 00047a00 g F .text 00000148 __multadd
  515. 000479d8 g F .text 00000028 _Bfree
  516. Disassembly of section .entry:
  517. 00040000 <__reset>:
  518. * Jump to the _start entry point in the .text section if reset code
  519. * is allowed or if optimizing for RTL simulation.
  520. */
  521. #if defined(ALT_ALLOW_CODE_AT_RESET) || defined(ALT_SIM_OPTIMIZE)
  522. /* Jump to the _start entry point in the .text section. */
  523. movhi r1, %hi(_start)
  524. 40000: 00400134 movhi at,4
  525. ori r1, r1, %lo(_start)
  526. 40004: 08408c14 ori at,at,560
  527. jmp r1
  528. 40008: 0800683a jmp at
  529. ...
  530. Disassembly of section .exceptions:
  531. 00040020 <alt_exception>:
  532. #else /* ALT_EXCEPTION_STACK disabled */
  533. /*
  534. * Reserve space on normal stack for registers about to be pushed.
  535. */
  536. addi sp, sp, -76
  537. 40020: deffed04 addi sp,sp,-76
  538. * documentation for details).
  539. *
  540. * Leave a gap in the stack frame at 4(sp) for the muldiv handler to
  541. * store zero into.
  542. */
  543. stw ra, 0(sp)
  544. 40024: dfc00015 stw ra,0(sp)
  545. stw r1, 8(sp)
  546. 40028: d8400215 stw at,8(sp)
  547. stw r2, 12(sp)
  548. 4002c: d8800315 stw r2,12(sp)
  549. stw r3, 16(sp)
  550. 40030: d8c00415 stw r3,16(sp)
  551. stw r4, 20(sp)
  552. 40034: d9000515 stw r4,20(sp)
  553. stw r5, 24(sp)
  554. 40038: d9400615 stw r5,24(sp)
  555. stw r6, 28(sp)
  556. 4003c: d9800715 stw r6,28(sp)
  557. stw r7, 32(sp)
  558. 40040: d9c00815 stw r7,32(sp)
  559. rdctl r5, estatus /* Read early to avoid usage stall */
  560. 40044: 000b307a rdctl r5,estatus
  561. stw r8, 36(sp)
  562. 40048: da000915 stw r8,36(sp)
  563. stw r9, 40(sp)
  564. 4004c: da400a15 stw r9,40(sp)
  565. stw r10, 44(sp)
  566. 40050: da800b15 stw r10,44(sp)
  567. stw r11, 48(sp)
  568. 40054: dac00c15 stw r11,48(sp)
  569. stw r12, 52(sp)
  570. 40058: db000d15 stw r12,52(sp)
  571. stw r13, 56(sp)
  572. 4005c: db400e15 stw r13,56(sp)
  573. stw r14, 60(sp)
  574. 40060: db800f15 stw r14,60(sp)
  575. stw r15, 64(sp)
  576. 40064: dbc01015 stw r15,64(sp)
  577. /*
  578. * ea-4 contains the address of the instruction being executed
  579. * when the exception occured. For interrupt exceptions, we will
  580. * will be re-issue the isntruction. Store it in 72(sp)
  581. */
  582. stw r5, 68(sp) /* estatus */
  583. 40068: d9401115 stw r5,68(sp)
  584. addi r15, ea, -4 /* instruction that caused exception */
  585. 4006c: ebffff04 addi r15,ea,-4
  586. stw r15, 72(sp)
  587. 40070: dbc01215 stw r15,72(sp)
  588. #else
  589. /*
  590. * Test to see if the exception was a software exception or caused
  591. * by an external interrupt, and vector accordingly.
  592. */
  593. rdctl r4, ipending
  594. 40074: 0009313a rdctl r4,ipending
  595. andi r2, r5, 1
  596. 40078: 2880004c andi r2,r5,1
  597. beq r2, zero, .Lnot_irq
  598. 4007c: 10000326 beq r2,zero,4008c <alt_exception+0x6c>
  599. beq r4, zero, .Lnot_irq
  600. 40080: 20000226 beq r4,zero,4008c <alt_exception+0x6c>
  601. /*
  602. * Now that all necessary registers have been preserved, call
  603. * alt_irq_handler() to process the interrupts.
  604. */
  605. call alt_irq_handler
  606. 40084: 00400fc0 call 400fc <alt_irq_handler>
  607. .section .exceptions.irqreturn, "xa"
  608. br .Lexception_exit
  609. 40088: 00000706 br 400a8 <alt_exception+0x88>
  610. * upon completion, so we write ea (address of instruction *after*
  611. * the one where the exception occured) into 72(sp). The actual
  612. * instruction that caused the exception is written in r2, which these
  613. * handlers will utilize.
  614. */
  615. stw ea, 72(sp) /* EA is PC+4 so will skip over instruction causing exception */
  616. 4008c: df401215 stw ea,72(sp)
  617. .Lunknown_16bit:
  618. addi.n r4, r4, 2 /* Need PC+2 to skip over instruction causing exception */
  619. stw r4, 72(sp)
  620. #else /* CDX is not Enabled and all instructions are 32bits */
  621. ldw r2, -4(ea) /* Instruction value that caused exception */
  622. 40090: e8bfff17 ldw r2,-4(ea)
  623. * debugger is present) or go into an infinite loop since the
  624. * handling behavior is undefined; in that case we will not return here.
  625. */
  626. /* Load exception-causing address as first argument (r4) */
  627. addi r4, ea, -4
  628. 40094: e93fff04 addi r4,ea,-4
  629. /* Call the instruction-exception entry */
  630. call alt_instruction_exception_entry
  631. 40098: 00401d00 call 401d0 <alt_instruction_exception_entry>
  632. * instruction
  633. *
  634. * Return code was 0: Skip. The instruction after the exception is
  635. * already stored in 72(sp).
  636. */
  637. bne r2, r0, .Lexception_exit
  638. 4009c: 1000021e bne r2,zero,400a8 <alt_exception+0x88>
  639. /*
  640. * Otherwise, modify 72(sp) to re-issue the instruction that caused the
  641. * exception.
  642. */
  643. addi r15, ea, -4 /* instruction that caused exception */
  644. 400a0: ebffff04 addi r15,ea,-4
  645. stw r15, 72(sp)
  646. 400a4: dbc01215 stw r15,72(sp)
  647. /*
  648. * Restore the saved registers, so that all general purpose registers
  649. * have been restored to their state at the time the interrupt occured.
  650. */
  651. ldw r5, 68(sp)
  652. 400a8: d9401117 ldw r5,68(sp)
  653. ldw ea, 72(sp) /* This becomes the PC once eret is executed */
  654. 400ac: df401217 ldw ea,72(sp)
  655. ldw ra, 0(sp)
  656. 400b0: dfc00017 ldw ra,0(sp)
  657. wrctl estatus, r5
  658. 400b4: 2801707a wrctl estatus,r5
  659. ldw r1, 8(sp)
  660. 400b8: d8400217 ldw at,8(sp)
  661. ldw r2, 12(sp)
  662. 400bc: d8800317 ldw r2,12(sp)
  663. ldw r3, 16(sp)
  664. 400c0: d8c00417 ldw r3,16(sp)
  665. ldw r4, 20(sp)
  666. 400c4: d9000517 ldw r4,20(sp)
  667. ldw r5, 24(sp)
  668. 400c8: d9400617 ldw r5,24(sp)
  669. ldw r6, 28(sp)
  670. 400cc: d9800717 ldw r6,28(sp)
  671. ldw r7, 32(sp)
  672. 400d0: d9c00817 ldw r7,32(sp)
  673. #if defined(ALT_EXCEPTION_STACK) && defined(ALT_STACK_CHECK)
  674. ldw et, %gprel(alt_exception_old_stack_limit)(gp)
  675. #endif
  676. ldw r8, 36(sp)
  677. 400d4: da000917 ldw r8,36(sp)
  678. ldw r9, 40(sp)
  679. 400d8: da400a17 ldw r9,40(sp)
  680. ldw r10, 44(sp)
  681. 400dc: da800b17 ldw r10,44(sp)
  682. ldw r11, 48(sp)
  683. 400e0: dac00c17 ldw r11,48(sp)
  684. ldw r12, 52(sp)
  685. 400e4: db000d17 ldw r12,52(sp)
  686. ldw r13, 56(sp)
  687. 400e8: db400e17 ldw r13,56(sp)
  688. ldw r14, 60(sp)
  689. 400ec: db800f17 ldw r14,60(sp)
  690. ldw r15, 64(sp)
  691. 400f0: dbc01017 ldw r15,64(sp)
  692. stw et, %gprel(alt_stack_limit_value)(gp)
  693. stw zero, %gprel(alt_exception_old_stack_limit)(gp)
  694. #endif /* ALT_STACK_CHECK */
  695. ldw sp, 76(sp)
  696. #else /* ALT_EXCEPTION_STACK disabled */
  697. addi sp, sp, 76
  698. 400f4: dec01304 addi sp,sp,76
  699. /*
  700. * Return to the interrupted instruction.
  701. */
  702. eret
  703. 400f8: ef80083a eret
  704. 000400fc <alt_irq_handler>:
  705. * instruction is present if the macro ALT_CI_INTERRUPT_VECTOR defined.
  706. */
  707. void alt_irq_handler (void) __attribute__ ((section (".exceptions")));
  708. void alt_irq_handler (void)
  709. {
  710. 400fc: defff904 addi sp,sp,-28
  711. 40100: dfc00615 stw ra,24(sp)
  712. 40104: df000515 stw fp,20(sp)
  713. 40108: df000504 addi fp,sp,20
  714. /*
  715. * Notify the operating system that we are at interrupt level.
  716. */
  717. ALT_OS_INT_ENTER();
  718. 4010c: 0001883a nop
  719. #ifndef NIOS2_EIC_PRESENT
  720. static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void)
  721. {
  722. alt_u32 active;
  723. NIOS2_READ_IPENDING (active);
  724. 40110: 0005313a rdctl r2,ipending
  725. 40114: e0bffe15 stw r2,-8(fp)
  726. return active;
  727. 40118: e0bffe17 ldw r2,-8(fp)
  728. * Consider the case where the high priority interupt is asserted during
  729. * the interrupt entry sequence for a lower priority interrupt to see why
  730. * this is the case.
  731. */
  732. active = alt_irq_pending ();
  733. 4011c: e0bffb15 stw r2,-20(fp)
  734. do
  735. {
  736. i = 0;
  737. 40120: e03ffd15 stw zero,-12(fp)
  738. mask = 1;
  739. 40124: 00800044 movi r2,1
  740. 40128: e0bffc15 stw r2,-16(fp)
  741. * called to clear the interrupt condition.
  742. */
  743. do
  744. {
  745. if (active & mask)
  746. 4012c: e0fffb17 ldw r3,-20(fp)
  747. 40130: e0bffc17 ldw r2,-16(fp)
  748. 40134: 1884703a and r2,r3,r2
  749. 40138: 10001426 beq r2,zero,4018c <alt_irq_handler+0x90>
  750. {
  751. #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
  752. alt_irq[i].handler(alt_irq[i].context);
  753. 4013c: 00800174 movhi r2,5
  754. 40140: 1097c904 addi r2,r2,24356
  755. 40144: e0fffd17 ldw r3,-12(fp)
  756. 40148: 180690fa slli r3,r3,3
  757. 4014c: 10c5883a add r2,r2,r3
  758. 40150: 10c00017 ldw r3,0(r2)
  759. 40154: 00800174 movhi r2,5
  760. 40158: 1097c904 addi r2,r2,24356
  761. 4015c: e13ffd17 ldw r4,-12(fp)
  762. 40160: 200890fa slli r4,r4,3
  763. 40164: 1105883a add r2,r2,r4
  764. 40168: 10800104 addi r2,r2,4
  765. 4016c: 10800017 ldw r2,0(r2)
  766. 40170: 1009883a mov r4,r2
  767. 40174: 183ee83a callr r3
  768. #else
  769. alt_irq[i].handler(alt_irq[i].context, i);
  770. #endif
  771. break;
  772. 40178: 0001883a nop
  773. #ifndef NIOS2_EIC_PRESENT
  774. static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void)
  775. {
  776. alt_u32 active;
  777. NIOS2_READ_IPENDING (active);
  778. 4017c: 0005313a rdctl r2,ipending
  779. 40180: e0bfff15 stw r2,-4(fp)
  780. return active;
  781. 40184: e0bfff17 ldw r2,-4(fp)
  782. 40188: 00000706 br 401a8 <alt_irq_handler+0xac>
  783. }
  784. mask <<= 1;
  785. 4018c: e0bffc17 ldw r2,-16(fp)
  786. 40190: 1085883a add r2,r2,r2
  787. 40194: e0bffc15 stw r2,-16(fp)
  788. i++;
  789. 40198: e0bffd17 ldw r2,-12(fp)
  790. 4019c: 10800044 addi r2,r2,1
  791. 401a0: e0bffd15 stw r2,-12(fp)
  792. } while (1);
  793. 401a4: 003fe106 br 4012c <__alt_data_end+0xfffce12c>
  794. active = alt_irq_pending ();
  795. 401a8: e0bffb15 stw r2,-20(fp)
  796. } while (active);
  797. 401ac: e0bffb17 ldw r2,-20(fp)
  798. 401b0: 103fdb1e bne r2,zero,40120 <__alt_data_end+0xfffce120>
  799. /*
  800. * Notify the operating system that interrupt processing is complete.
  801. */
  802. ALT_OS_INT_EXIT();
  803. 401b4: 0001883a nop
  804. }
  805. 401b8: 0001883a nop
  806. 401bc: e037883a mov sp,fp
  807. 401c0: dfc00117 ldw ra,4(sp)
  808. 401c4: df000017 ldw fp,0(sp)
  809. 401c8: dec00204 addi sp,sp,8
  810. 401cc: f800283a ret
  811. 000401d0 <alt_instruction_exception_entry>:
  812. * that handler if it has been registered. Absent a handler, it will
  813. * break break or hang as discussed below.
  814. */
  815. int
  816. alt_instruction_exception_entry (alt_u32 exception_pc)
  817. {
  818. 401d0: defffb04 addi sp,sp,-20
  819. 401d4: dfc00415 stw ra,16(sp)
  820. 401d8: df000315 stw fp,12(sp)
  821. 401dc: df000304 addi fp,sp,12
  822. 401e0: e13fff15 stw r4,-4(fp)
  823. cause = ( (cause & NIOS2_EXCEPTION_REG_CAUSE_MASK) >>
  824. NIOS2_EXCEPTION_REG_CAUSE_OFST );
  825. NIOS2_READ_BADADDR(badaddr);
  826. #else
  827. cause = NIOS2_EXCEPTION_CAUSE_NOT_PRESENT;
  828. 401e4: 00bfffc4 movi r2,-1
  829. 401e8: e0bffd15 stw r2,-12(fp)
  830. badaddr = 0;
  831. 401ec: e03ffe15 stw zero,-8(fp)
  832. #endif /* NIOS2_HAS_EXTRA_EXCEPTION_INFO */
  833. if(alt_instruction_exception_handler) {
  834. 401f0: d0a72817 ldw r2,-25440(gp)
  835. 401f4: 10000726 beq r2,zero,40214 <alt_instruction_exception_entry+0x44>
  836. * Call handler. Its return value indicates whether the exception-causing
  837. * instruction should be re-issued. The code that called us,
  838. * alt_eceptions_entry.S, will look at this value and adjust the ea
  839. * register as necessary
  840. */
  841. return alt_instruction_exception_handler(cause, exception_pc, badaddr);
  842. 401f8: d0a72817 ldw r2,-25440(gp)
  843. 401fc: e0fffd17 ldw r3,-12(fp)
  844. 40200: e1bffe17 ldw r6,-8(fp)
  845. 40204: e17fff17 ldw r5,-4(fp)
  846. 40208: 1809883a mov r4,r3
  847. 4020c: 103ee83a callr r2
  848. 40210: 00000206 br 4021c <alt_instruction_exception_entry+0x4c>
  849. * (a peripheral which negates its interrupt output before its
  850. * interrupt handler has been executed will cause spurious interrupts)
  851. */
  852. else {
  853. #ifdef NIOS2_HAS_DEBUG_STUB
  854. NIOS2_BREAK();
  855. 40214: 003da03a break 0
  856. ;
  857. #endif /* NIOS2_HAS_DEBUG_STUB */
  858. }
  859. /* We should not get here. Remove compiler warning. */
  860. return NIOS2_EXCEPTION_RETURN_REISSUE_INST;
  861. 40218: 0005883a mov r2,zero
  862. }
  863. 4021c: e037883a mov sp,fp
  864. 40220: dfc00117 ldw ra,4(sp)
  865. 40224: df000017 ldw fp,0(sp)
  866. 40228: dec00204 addi sp,sp,8
  867. 4022c: f800283a ret
  868. Disassembly of section .text:
  869. 00040230 <_start>:
  870. /*
  871. * Now that the caches are initialized, set up the stack pointer and global pointer.
  872. * The values provided by the linker are assumed to be correctly aligned.
  873. */
  874. movhi sp, %hi(__alt_stack_pointer)
  875. 40230: 06c001f4 movhi sp,7
  876. ori sp, sp, %lo(__alt_stack_pointer)
  877. 40234: dec80014 ori sp,sp,8192
  878. movhi gp, %hi(_gp)
  879. 40238: 06800174 movhi gp,5
  880. ori gp, gp, %lo(_gp)
  881. 4023c: d6b08a14 ori gp,gp,49704
  882. */
  883. #ifndef ALT_SIM_OPTIMIZE
  884. /* Log that the BSS is about to be cleared. */
  885. ALT_LOG_PUTS(alt_log_msg_bss)
  886. movhi r2, %hi(__bss_start)
  887. 40240: 00800174 movhi r2,5
  888. ori r2, r2, %lo(__bss_start)
  889. 40244: 1097a114 ori r2,r2,24196
  890. movhi r3, %hi(__bss_end)
  891. 40248: 00c00174 movhi r3,5
  892. ori r3, r3, %lo(__bss_end)
  893. 4024c: 18d80914 ori r3,r3,24612
  894. beq r2, r3, 1f
  895. 40250: 10c00326 beq r2,r3,40260 <_start+0x30>
  896. 0:
  897. stw zero, (r2)
  898. 40254: 10000015 stw zero,0(r2)
  899. addi r2, r2, 4
  900. 40258: 10800104 addi r2,r2,4
  901. bltu r2, r3, 0b
  902. 4025c: 10fffd36 bltu r2,r3,40254 <__alt_data_end+0xfffce254>
  903. * section aren't defined until alt_load() has been called).
  904. */
  905. mov et, zero
  906. #endif
  907. call alt_load
  908. 40260: 004ebdc0 call 4ebdc <alt_load>
  909. /* Log that alt_main is about to be called. */
  910. ALT_LOG_PUTS(alt_log_msg_alt_main)
  911. /* Call the C entry point. It should never return. */
  912. call alt_main
  913. 40264: 004ed780 call 4ed78 <alt_main>
  914. 00040268 <alt_after_alt_main>:
  915. /* Wait in infinite loop in case alt_main does return. */
  916. alt_after_alt_main:
  917. br alt_after_alt_main
  918. 40268: 003fff06 br 40268 <__alt_data_end+0xfffce268>
  919. 0004026c <draw>:
  920. #define COLS 12
  921. #define ROWS 8
  922. int screen[ROWS];
  923. void draw() {
  924. 4026c: defffd04 addi sp,sp,-12
  925. 40270: df000215 stw fp,8(sp)
  926. 40274: df000204 addi fp,sp,8
  927. int row,i;
  928. for (i = 0 ; i < ROWS ; i++) {
  929. 40278: e03ffe15 stw zero,-8(fp)
  930. 4027c: 00001206 br 402c8 <draw+0x5c>
  931. row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data)
  932. 40280: 00800174 movhi r2,5
  933. 40284: 1097bd04 addi r2,r2,24308
  934. 40288: e0fffe17 ldw r3,-8(fp)
  935. 4028c: 18c7883a add r3,r3,r3
  936. 40290: 18c7883a add r3,r3,r3
  937. 40294: 10c5883a add r2,r2,r3
  938. 40298: 10c00017 ldw r3,0(r2)
  939. 4029c: e0bffe17 ldw r2,-8(fp)
  940. 402a0: 1004933a slli r2,r2,12
  941. 402a4: 1884b03a or r2,r3,r2
  942. 402a8: e0bfff15 stw r2,-4(fp)
  943. IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row);
  944. 402ac: 00800234 movhi r2,8
  945. 402b0: 10841404 addi r2,r2,4176
  946. 402b4: e0ffff17 ldw r3,-4(fp)
  947. 402b8: 10c00035 stwio r3,0(r2)
  948. int screen[ROWS];
  949. void draw() {
  950. int row,i;
  951. for (i = 0 ; i < ROWS ; i++) {
  952. 402bc: e0bffe17 ldw r2,-8(fp)
  953. 402c0: 10800044 addi r2,r2,1
  954. 402c4: e0bffe15 stw r2,-8(fp)
  955. 402c8: e0bffe17 ldw r2,-8(fp)
  956. 402cc: 10800210 cmplti r2,r2,8
  957. 402d0: 103feb1e bne r2,zero,40280 <__alt_data_end+0xfffce280>
  958. row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data)
  959. IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row);
  960. }
  961. }
  962. 402d4: 0001883a nop
  963. 402d8: e037883a mov sp,fp
  964. 402dc: df000017 ldw fp,0(sp)
  965. 402e0: dec00104 addi sp,sp,4
  966. 402e4: f800283a ret
  967. 000402e8 <bin>:
  968. void bin(unsigned n)
  969. {
  970. 402e8: defffd04 addi sp,sp,-12
  971. 402ec: dfc00215 stw ra,8(sp)
  972. 402f0: df000115 stw fp,4(sp)
  973. 402f4: df000104 addi fp,sp,4
  974. 402f8: e13fff15 stw r4,-4(fp)
  975. if (n > 1)
  976. 402fc: e0bfff17 ldw r2,-4(fp)
  977. 40300: 108000b0 cmpltui r2,r2,2
  978. 40304: 1000041e bne r2,zero,40318 <bin+0x30>
  979. bin(n >> 1);
  980. 40308: e0bfff17 ldw r2,-4(fp)
  981. 4030c: 1004d07a srli r2,r2,1
  982. 40310: 1009883a mov r4,r2
  983. 40314: 00402e80 call 402e8 <bin>
  984. printf("%d", n & 1);
  985. 40318: e0bfff17 ldw r2,-4(fp)
  986. 4031c: 1080004c andi r2,r2,1
  987. 40320: 100b883a mov r5,r2
  988. 40324: 01000174 movhi r4,5
  989. 40328: 21080e04 addi r4,r4,8248
  990. 4032c: 00420880 call 42088 <printf>
  991. }
  992. 40330: 0001883a nop
  993. 40334: e037883a mov sp,fp
  994. 40338: dfc00117 ldw ra,4(sp)
  995. 4033c: df000017 ldw fp,0(sp)
  996. 40340: dec00204 addi sp,sp,8
  997. 40344: f800283a ret
  998. 00040348 <draw_console>:
  999. void draw_console() {
  1000. 40348: defffd04 addi sp,sp,-12
  1001. 4034c: dfc00215 stw ra,8(sp)
  1002. 40350: df000115 stw fp,4(sp)
  1003. 40354: df000104 addi fp,sp,4
  1004. int i;
  1005. for (i = 0 ; i < ROWS ; i++) {
  1006. 40358: e03fff15 stw zero,-4(fp)
  1007. 4035c: 00000e06 br 40398 <draw_console+0x50>
  1008. bin(screen[i]);
  1009. 40360: 00800174 movhi r2,5
  1010. 40364: 1097bd04 addi r2,r2,24308
  1011. 40368: e0ffff17 ldw r3,-4(fp)
  1012. 4036c: 18c7883a add r3,r3,r3
  1013. 40370: 18c7883a add r3,r3,r3
  1014. 40374: 10c5883a add r2,r2,r3
  1015. 40378: 10800017 ldw r2,0(r2)
  1016. 4037c: 1009883a mov r4,r2
  1017. 40380: 00402e80 call 402e8 <bin>
  1018. printf("\n");
  1019. 40384: 01000284 movi r4,10
  1020. 40388: 00420cc0 call 420cc <putchar>
  1021. }
  1022. void draw_console() {
  1023. int i;
  1024. for (i = 0 ; i < ROWS ; i++) {
  1025. 4038c: e0bfff17 ldw r2,-4(fp)
  1026. 40390: 10800044 addi r2,r2,1
  1027. 40394: e0bfff15 stw r2,-4(fp)
  1028. 40398: e0bfff17 ldw r2,-4(fp)
  1029. 4039c: 10800210 cmplti r2,r2,8
  1030. 403a0: 103fef1e bne r2,zero,40360 <__alt_data_end+0xfffce360>
  1031. bin(screen[i]);
  1032. printf("\n");
  1033. }
  1034. }
  1035. 403a4: 0001883a nop
  1036. 403a8: e037883a mov sp,fp
  1037. 403ac: dfc00117 ldw ra,4(sp)
  1038. 403b0: df000017 ldw fp,0(sp)
  1039. 403b4: dec00204 addi sp,sp,8
  1040. 403b8: f800283a ret
  1041. 000403bc <set_pixel>:
  1042. void set_pixel(int x, int y) {
  1043. 403bc: defffd04 addi sp,sp,-12
  1044. 403c0: df000215 stw fp,8(sp)
  1045. 403c4: df000204 addi fp,sp,8
  1046. 403c8: e13ffe15 stw r4,-8(fp)
  1047. 403cc: e17fff15 stw r5,-4(fp)
  1048. screen[y] = screen[y] & ~(1<<x) | (1<<x);
  1049. 403d0: 00c00044 movi r3,1
  1050. 403d4: e0bffe17 ldw r2,-8(fp)
  1051. 403d8: 1888983a sll r4,r3,r2
  1052. 403dc: 00800174 movhi r2,5
  1053. 403e0: 1097bd04 addi r2,r2,24308
  1054. 403e4: e0ffff17 ldw r3,-4(fp)
  1055. 403e8: 18c7883a add r3,r3,r3
  1056. 403ec: 18c7883a add r3,r3,r3
  1057. 403f0: 10c5883a add r2,r2,r3
  1058. 403f4: 10800017 ldw r2,0(r2)
  1059. 403f8: 2088b03a or r4,r4,r2
  1060. 403fc: 00800174 movhi r2,5
  1061. 40400: 1097bd04 addi r2,r2,24308
  1062. 40404: e0ffff17 ldw r3,-4(fp)
  1063. 40408: 18c7883a add r3,r3,r3
  1064. 4040c: 18c7883a add r3,r3,r3
  1065. 40410: 10c5883a add r2,r2,r3
  1066. 40414: 11000015 stw r4,0(r2)
  1067. }
  1068. 40418: 0001883a nop
  1069. 4041c: e037883a mov sp,fp
  1070. 40420: df000017 ldw fp,0(sp)
  1071. 40424: dec00104 addi sp,sp,4
  1072. 40428: f800283a ret
  1073. 0004042c <reset_screen>:
  1074. void reset_screen() {
  1075. 4042c: defffd04 addi sp,sp,-12
  1076. 40430: dfc00215 stw ra,8(sp)
  1077. 40434: df000115 stw fp,4(sp)
  1078. 40438: df000104 addi fp,sp,4
  1079. int i;
  1080. for (i=0;i<ROWS;i++) {
  1081. 4043c: e03fff15 stw zero,-4(fp)
  1082. 40440: 00000d06 br 40478 <reset_screen+0x4c>
  1083. screen[i] = 0;
  1084. 40444: 00800174 movhi r2,5
  1085. 40448: 1097bd04 addi r2,r2,24308
  1086. 4044c: e0ffff17 ldw r3,-4(fp)
  1087. 40450: 18c7883a add r3,r3,r3
  1088. 40454: 18c7883a add r3,r3,r3
  1089. 40458: 10c5883a add r2,r2,r3
  1090. 4045c: 10000015 stw zero,0(r2)
  1091. set_pixel(12,i);
  1092. 40460: e17fff17 ldw r5,-4(fp)
  1093. 40464: 01000304 movi r4,12
  1094. 40468: 00403bc0 call 403bc <set_pixel>
  1095. screen[y] = screen[y] & ~(1<<x) | (1<<x);
  1096. }
  1097. void reset_screen() {
  1098. int i;
  1099. for (i=0;i<ROWS;i++) {
  1100. 4046c: e0bfff17 ldw r2,-4(fp)
  1101. 40470: 10800044 addi r2,r2,1
  1102. 40474: e0bfff15 stw r2,-4(fp)
  1103. 40478: e0bfff17 ldw r2,-4(fp)
  1104. 4047c: 10800210 cmplti r2,r2,8
  1105. 40480: 103ff01e bne r2,zero,40444 <__alt_data_end+0xfffce444>
  1106. screen[i] = 0;
  1107. set_pixel(12,i);
  1108. }
  1109. }
  1110. 40484: 0001883a nop
  1111. 40488: e037883a mov sp,fp
  1112. 4048c: dfc00117 ldw ra,4(sp)
  1113. 40490: df000017 ldw fp,0(sp)
  1114. 40494: dec00204 addi sp,sp,8
  1115. 40498: f800283a ret
  1116. 0004049c <reset_pos>:
  1117. struct Ball ball;
  1118. struct Paddle left_paddle;
  1119. struct Paddle right_paddle;
  1120. void reset_pos() {
  1121. 4049c: deffff04 addi sp,sp,-4
  1122. 404a0: df000015 stw fp,0(sp)
  1123. 404a4: d839883a mov fp,sp
  1124. ball.x = COLS/2 - 1;
  1125. 404a8: 00800174 movhi r2,5
  1126. 404ac: 1097c504 addi r2,r2,24340
  1127. 404b0: 00d02834 movhi r3,16544
  1128. 404b4: 10c00015 stw r3,0(r2)
  1129. ball.y = ROWS/2 - 1;
  1130. 404b8: 00800174 movhi r2,5
  1131. 404bc: 1097c504 addi r2,r2,24340
  1132. 404c0: 00d01034 movhi r3,16448
  1133. 404c4: 10c00115 stw r3,4(r2)
  1134. ball.vel_x = - 1;
  1135. 404c8: 00800174 movhi r2,5
  1136. 404cc: 1097c504 addi r2,r2,24340
  1137. 404d0: 00efe034 movhi r3,49024
  1138. 404d4: 10c00215 stw r3,8(r2)
  1139. ball.vel_y = - 1;
  1140. 404d8: 00800174 movhi r2,5
  1141. 404dc: 1097c504 addi r2,r2,24340
  1142. 404e0: 00efe034 movhi r3,49024
  1143. 404e4: 10c00315 stw r3,12(r2)
  1144. left_paddle.y = 0;
  1145. 404e8: d0271715 stw zero,-25508(gp)
  1146. left_paddle.length = 3;
  1147. 404ec: 008000c4 movi r2,3
  1148. 404f0: d0a71815 stw r2,-25504(gp)
  1149. right_paddle.y = 0;
  1150. 404f4: d0271915 stw zero,-25500(gp)
  1151. right_paddle.length = 3;
  1152. 404f8: 008000c4 movi r2,3
  1153. 404fc: d0a71a15 stw r2,-25496(gp)
  1154. }
  1155. 40500: 0001883a nop
  1156. 40504: e037883a mov sp,fp
  1157. 40508: df000017 ldw fp,0(sp)
  1158. 4050c: dec00104 addi sp,sp,4
  1159. 40510: f800283a ret
  1160. 00040514 <game>:
  1161. void game() {
  1162. 40514: defff704 addi sp,sp,-36
  1163. 40518: dfc00815 stw ra,32(sp)
  1164. 4051c: df000715 stw fp,28(sp)
  1165. 40520: dc400615 stw r17,24(sp)
  1166. 40524: dc000515 stw r16,20(sp)
  1167. 40528: df000704 addi fp,sp,28
  1168. int i,k;
  1169. unsigned buttons;
  1170. k=0;
  1171. 4052c: e03ffc15 stw zero,-16(fp)
  1172. reset_pos();
  1173. 40530: 004049c0 call 4049c <reset_pos>
  1174. while (1){
  1175. buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE);
  1176. 40534: 00800234 movhi r2,8
  1177. 40538: 10841004 addi r2,r2,4160
  1178. 4053c: 10800037 ldwio r2,0(r2)
  1179. 40540: 0084303a nor r2,zero,r2
  1180. 40544: e0bffd15 stw r2,-12(fp)
  1181. //buttons = 10;
  1182. if (buttons & (1<<LEFT_UP_BUTTON)){
  1183. 40548: e0bffd17 ldw r2,-12(fp)
  1184. 4054c: 1080004c andi r2,r2,1
  1185. 40550: 10001926 beq r2,zero,405b8 <game+0xa4>
  1186. left_paddle.y = MAX(left_paddle.y - (10 * TICK),0);
  1187. 40554: d0e71717 ldw r3,-25508(gp)
  1188. 40558: 008f7374 movhi r2,15821
  1189. 4055c: 10b33304 addi r2,r2,-13108
  1190. 40560: 1885ffb2 custom 254,r2,r3,r2
  1191. 40564: 000b883a mov r5,zero
  1192. 40568: 1009883a mov r4,r2
  1193. 4056c: 004113c0 call 4113c <__gesf2>
  1194. 40570: 0080050e bge zero,r2,40588 <game+0x74>
  1195. 40574: d0e71717 ldw r3,-25508(gp)
  1196. 40578: 008f7374 movhi r2,15821
  1197. 4057c: 10b33304 addi r2,r2,-13108
  1198. 40580: 1885ffb2 custom 254,r2,r3,r2
  1199. 40584: 00000106 br 4058c <game+0x78>
  1200. 40588: 0005883a mov r2,zero
  1201. 4058c: d0a71715 stw r2,-25508(gp)
  1202. printf("%f\n",left_paddle.y);
  1203. 40590: d0a71717 ldw r2,-25508(gp)
  1204. 40594: 1009883a mov r4,r2
  1205. 40598: 0041dec0 call 41dec <__extendsfdf2>
  1206. 4059c: 100d883a mov r6,r2
  1207. 405a0: 180f883a mov r7,r3
  1208. 405a4: 300b883a mov r5,r6
  1209. 405a8: 380d883a mov r6,r7
  1210. 405ac: 01000174 movhi r4,5
  1211. 405b0: 21080f04 addi r4,r4,8252
  1212. 405b4: 00420880 call 42088 <printf>
  1213. }
  1214. if (buttons & (1<<LEFT_DOWN_BUTTON)){
  1215. 405b8: e0bffd17 ldw r2,-12(fp)
  1216. 405bc: 1080008c andi r2,r2,2
  1217. 405c0: 10002426 beq r2,zero,40654 <game+0x140>
  1218. left_paddle.y = MIN(left_paddle.y + (10 * TICK), ROWS - (left_paddle.length));
  1219. 405c4: d0e71717 ldw r3,-25508(gp)
  1220. 405c8: 008f7374 movhi r2,15821
  1221. 405cc: 10b33304 addi r2,r2,-13108
  1222. 405d0: 18a1ff72 custom 253,r16,r3,r2
  1223. 405d4: d0a71817 ldw r2,-25504(gp)
  1224. 405d8: 00c00204 movi r3,8
  1225. 405dc: 1885c83a sub r2,r3,r2
  1226. 405e0: 1009883a mov r4,r2
  1227. 405e4: 00412c00 call 412c0 <__floatsisf>
  1228. 405e8: 1007883a mov r3,r2
  1229. 405ec: 180b883a mov r5,r3
  1230. 405f0: 8009883a mov r4,r16
  1231. 405f4: 00411f80 call 411f8 <__lesf2>
  1232. 405f8: 1000050e bge r2,zero,40610 <game+0xfc>
  1233. 405fc: d0e71717 ldw r3,-25508(gp)
  1234. 40600: 008f7374 movhi r2,15821
  1235. 40604: 10b33304 addi r2,r2,-13108
  1236. 40608: 1887ff72 custom 253,r3,r3,r2
  1237. 4060c: 00000606 br 40628 <game+0x114>
  1238. 40610: d0a71817 ldw r2,-25504(gp)
  1239. 40614: 00c00204 movi r3,8
  1240. 40618: 1885c83a sub r2,r3,r2
  1241. 4061c: 1009883a mov r4,r2
  1242. 40620: 00412c00 call 412c0 <__floatsisf>
  1243. 40624: 1007883a mov r3,r2
  1244. 40628: d0e71715 stw r3,-25508(gp)
  1245. printf("%f\n",left_paddle.y);
  1246. 4062c: d0a71717 ldw r2,-25508(gp)
  1247. 40630: 1009883a mov r4,r2
  1248. 40634: 0041dec0 call 41dec <__extendsfdf2>
  1249. 40638: 100d883a mov r6,r2
  1250. 4063c: 180f883a mov r7,r3
  1251. 40640: 300b883a mov r5,r6
  1252. 40644: 380d883a mov r6,r7
  1253. 40648: 01000174 movhi r4,5
  1254. 4064c: 21080f04 addi r4,r4,8252
  1255. 40650: 00420880 call 42088 <printf>
  1256. }
  1257. if (buttons & (1<<RIGTH_UP_BUTTON)){
  1258. 40654: e0bffd17 ldw r2,-12(fp)
  1259. 40658: 1080010c andi r2,r2,4
  1260. 4065c: 10000f26 beq r2,zero,4069c <game+0x188>
  1261. right_paddle.y = MAX(right_paddle.y - (10 * TICK), 0);
  1262. 40660: d0e71917 ldw r3,-25500(gp)
  1263. 40664: 008f7374 movhi r2,15821
  1264. 40668: 10b33304 addi r2,r2,-13108
  1265. 4066c: 1885ffb2 custom 254,r2,r3,r2
  1266. 40670: 000b883a mov r5,zero
  1267. 40674: 1009883a mov r4,r2
  1268. 40678: 004113c0 call 4113c <__gesf2>
  1269. 4067c: 0080050e bge zero,r2,40694 <game+0x180>
  1270. 40680: d0e71917 ldw r3,-25500(gp)
  1271. 40684: 008f7374 movhi r2,15821
  1272. 40688: 10b33304 addi r2,r2,-13108
  1273. 4068c: 1885ffb2 custom 254,r2,r3,r2
  1274. 40690: 00000106 br 40698 <game+0x184>
  1275. 40694: 0005883a mov r2,zero
  1276. 40698: d0a71915 stw r2,-25500(gp)
  1277. }
  1278. if (buttons & (1<<RIGTH_DOWN_BUTTON)){
  1279. 4069c: e0bffd17 ldw r2,-12(fp)
  1280. 406a0: 1080020c andi r2,r2,8
  1281. 406a4: 10001a26 beq r2,zero,40710 <game+0x1fc>
  1282. right_paddle.y = MIN(right_paddle.y + (10 * TICK), ROWS - (right_paddle.length));
  1283. 406a8: d0e71917 ldw r3,-25500(gp)
  1284. 406ac: 008f7374 movhi r2,15821
  1285. 406b0: 10b33304 addi r2,r2,-13108
  1286. 406b4: 18a1ff72 custom 253,r16,r3,r2
  1287. 406b8: d0a71a17 ldw r2,-25496(gp)
  1288. 406bc: 00c00204 movi r3,8
  1289. 406c0: 1885c83a sub r2,r3,r2
  1290. 406c4: 1009883a mov r4,r2
  1291. 406c8: 00412c00 call 412c0 <__floatsisf>
  1292. 406cc: 1007883a mov r3,r2
  1293. 406d0: 180b883a mov r5,r3
  1294. 406d4: 8009883a mov r4,r16
  1295. 406d8: 00411f80 call 411f8 <__lesf2>
  1296. 406dc: 1000050e bge r2,zero,406f4 <game+0x1e0>
  1297. 406e0: d0e71917 ldw r3,-25500(gp)
  1298. 406e4: 008f7374 movhi r2,15821
  1299. 406e8: 10b33304 addi r2,r2,-13108
  1300. 406ec: 1887ff72 custom 253,r3,r3,r2
  1301. 406f0: 00000606 br 4070c <game+0x1f8>
  1302. 406f4: d0a71a17 ldw r2,-25496(gp)
  1303. 406f8: 00c00204 movi r3,8
  1304. 406fc: 1885c83a sub r2,r3,r2
  1305. 40700: 1009883a mov r4,r2
  1306. 40704: 00412c00 call 412c0 <__floatsisf>
  1307. 40708: 1007883a mov r3,r2
  1308. 4070c: d0e71915 stw r3,-25500(gp)
  1309. }
  1310. ball.y = MAX(MIN(ball.y + ball.vel_y * TICK,ROWS - 1),0);
  1311. 40710: 00800174 movhi r2,5
  1312. 40714: 1097c504 addi r2,r2,24340
  1313. 40718: 10c00117 ldw r3,4(r2)
  1314. 4071c: 00800174 movhi r2,5
  1315. 40720: 1097c504 addi r2,r2,24340
  1316. 40724: 11000317 ldw r4,12(r2)
  1317. 40728: 008f0934 movhi r2,15396
  1318. 4072c: 10b5c284 addi r2,r2,-10486
  1319. 40730: 2085ff32 custom 252,r2,r4,r2
  1320. 40734: 1885ff72 custom 253,r2,r3,r2
  1321. 40738: 01503834 movhi r5,16608
  1322. 4073c: 1009883a mov r4,r2
  1323. 40740: 00411f80 call 411f8 <__lesf2>
  1324. 40744: 1000110e bge r2,zero,4078c <game+0x278>
  1325. 40748: 00800174 movhi r2,5
  1326. 4074c: 1097c504 addi r2,r2,24340
  1327. 40750: 10c00117 ldw r3,4(r2)
  1328. 40754: 00800174 movhi r2,5
  1329. 40758: 1097c504 addi r2,r2,24340
  1330. 4075c: 11000317 ldw r4,12(r2)
  1331. 40760: 008f0934 movhi r2,15396
  1332. 40764: 10b5c284 addi r2,r2,-10486
  1333. 40768: 2085ff32 custom 252,r2,r4,r2
  1334. 4076c: 1885ff72 custom 253,r2,r3,r2
  1335. 40770: 04000044 movi r16,1
  1336. 40774: 000b883a mov r5,zero
  1337. 40778: 1009883a mov r4,r2
  1338. 4077c: 004113c0 call 4113c <__gesf2>
  1339. 40780: 00800316 blt zero,r2,40790 <game+0x27c>
  1340. 40784: 0021883a mov r16,zero
  1341. 40788: 00000106 br 40790 <game+0x27c>
  1342. 4078c: 04000044 movi r16,1
  1343. 40790: 80803fcc andi r2,r16,255
  1344. 40794: 10001b26 beq r2,zero,40804 <game+0x2f0>
  1345. 40798: 00800174 movhi r2,5
  1346. 4079c: 1097c504 addi r2,r2,24340
  1347. 407a0: 10c00117 ldw r3,4(r2)
  1348. 407a4: 00800174 movhi r2,5
  1349. 407a8: 1097c504 addi r2,r2,24340
  1350. 407ac: 11000317 ldw r4,12(r2)
  1351. 407b0: 008f0934 movhi r2,15396
  1352. 407b4: 10b5c284 addi r2,r2,-10486
  1353. 407b8: 2085ff32 custom 252,r2,r4,r2
  1354. 407bc: 1885ff72 custom 253,r2,r3,r2
  1355. 407c0: 01503834 movhi r5,16608
  1356. 407c4: 1009883a mov r4,r2
  1357. 407c8: 00411f80 call 411f8 <__lesf2>
  1358. 407cc: 10000b0e bge r2,zero,407fc <game+0x2e8>
  1359. 407d0: 00800174 movhi r2,5
  1360. 407d4: 1097c504 addi r2,r2,24340
  1361. 407d8: 10c00117 ldw r3,4(r2)
  1362. 407dc: 00800174 movhi r2,5
  1363. 407e0: 1097c504 addi r2,r2,24340
  1364. 407e4: 11000317 ldw r4,12(r2)
  1365. 407e8: 008f0934 movhi r2,15396
  1366. 407ec: 10b5c284 addi r2,r2,-10486
  1367. 407f0: 2085ff32 custom 252,r2,r4,r2
  1368. 407f4: 1887ff72 custom 253,r3,r3,r2
  1369. 407f8: 00000306 br 40808 <game+0x2f4>
  1370. 407fc: 00d03834 movhi r3,16608
  1371. 40800: 00000106 br 40808 <game+0x2f4>
  1372. 40804: 0007883a mov r3,zero
  1373. 40808: 00800174 movhi r2,5
  1374. 4080c: 1097c504 addi r2,r2,24340
  1375. 40810: 10c00115 stw r3,4(r2)
  1376. if (ball.y == 0 || ball.y == ROWS - 1){
  1377. 40814: 00800174 movhi r2,5
  1378. 40818: 1097c504 addi r2,r2,24340
  1379. 4081c: 10c00117 ldw r3,4(r2)
  1380. 40820: 000b883a mov r5,zero
  1381. 40824: 1809883a mov r4,r3
  1382. 40828: 00410c40 call 410c4 <__eqsf2>
  1383. 4082c: 10000726 beq r2,zero,4084c <game+0x338>
  1384. 40830: 00800174 movhi r2,5
  1385. 40834: 1097c504 addi r2,r2,24340
  1386. 40838: 10c00117 ldw r3,4(r2)
  1387. 4083c: 01503834 movhi r5,16608
  1388. 40840: 1809883a mov r4,r3
  1389. 40844: 00410c40 call 410c4 <__eqsf2>
  1390. 40848: 1000071e bne r2,zero,40868 <game+0x354>
  1391. ball.vel_y = -ball.vel_y;
  1392. 4084c: 00800174 movhi r2,5
  1393. 40850: 1097c504 addi r2,r2,24340
  1394. 40854: 10c00317 ldw r3,12(r2)
  1395. 40858: 18e0003c xorhi r3,r3,32768
  1396. 4085c: 00800174 movhi r2,5
  1397. 40860: 1097c504 addi r2,r2,24340
  1398. 40864: 10c00315 stw r3,12(r2)
  1399. }
  1400. ball.x = MAX(MIN(ball.x + ball.vel_x * TICK,COLS - 1),0);
  1401. 40868: 00800174 movhi r2,5
  1402. 4086c: 1097c504 addi r2,r2,24340
  1403. 40870: 10c00017 ldw r3,0(r2)
  1404. 40874: 00800174 movhi r2,5
  1405. 40878: 1097c504 addi r2,r2,24340
  1406. 4087c: 11000217 ldw r4,8(r2)
  1407. 40880: 008f0934 movhi r2,15396
  1408. 40884: 10b5c284 addi r2,r2,-10486
  1409. 40888: 2085ff32 custom 252,r2,r4,r2
  1410. 4088c: 1885ff72 custom 253,r2,r3,r2
  1411. 40890: 01504c34 movhi r5,16688
  1412. 40894: 1009883a mov r4,r2
  1413. 40898: 00411f80 call 411f8 <__lesf2>
  1414. 4089c: 1000110e bge r2,zero,408e4 <game+0x3d0>
  1415. 408a0: 00800174 movhi r2,5
  1416. 408a4: 1097c504 addi r2,r2,24340
  1417. 408a8: 10c00017 ldw r3,0(r2)
  1418. 408ac: 00800174 movhi r2,5
  1419. 408b0: 1097c504 addi r2,r2,24340
  1420. 408b4: 11000217 ldw r4,8(r2)
  1421. 408b8: 008f0934 movhi r2,15396
  1422. 408bc: 10b5c284 addi r2,r2,-10486
  1423. 408c0: 2085ff32 custom 252,r2,r4,r2
  1424. 408c4: 1885ff72 custom 253,r2,r3,r2
  1425. 408c8: 04000044 movi r16,1
  1426. 408cc: 000b883a mov r5,zero
  1427. 408d0: 1009883a mov r4,r2
  1428. 408d4: 004113c0 call 4113c <__gesf2>
  1429. 408d8: 00800316 blt zero,r2,408e8 <game+0x3d4>
  1430. 408dc: 0021883a mov r16,zero
  1431. 408e0: 00000106 br 408e8 <game+0x3d4>
  1432. 408e4: 04000044 movi r16,1
  1433. 408e8: 80803fcc andi r2,r16,255
  1434. 408ec: 10001b26 beq r2,zero,4095c <game+0x448>
  1435. 408f0: 00800174 movhi r2,5
  1436. 408f4: 1097c504 addi r2,r2,24340
  1437. 408f8: 10c00017 ldw r3,0(r2)
  1438. 408fc: 00800174 movhi r2,5
  1439. 40900: 1097c504 addi r2,r2,24340
  1440. 40904: 11000217 ldw r4,8(r2)
  1441. 40908: 008f0934 movhi r2,15396
  1442. 4090c: 10b5c284 addi r2,r2,-10486
  1443. 40910: 2085ff32 custom 252,r2,r4,r2
  1444. 40914: 1885ff72 custom 253,r2,r3,r2
  1445. 40918: 01504c34 movhi r5,16688
  1446. 4091c: 1009883a mov r4,r2
  1447. 40920: 00411f80 call 411f8 <__lesf2>
  1448. 40924: 10000b0e bge r2,zero,40954 <game+0x440>
  1449. 40928: 00800174 movhi r2,5
  1450. 4092c: 1097c504 addi r2,r2,24340
  1451. 40930: 10c00017 ldw r3,0(r2)
  1452. 40934: 00800174 movhi r2,5
  1453. 40938: 1097c504 addi r2,r2,24340
  1454. 4093c: 11000217 ldw r4,8(r2)
  1455. 40940: 008f0934 movhi r2,15396
  1456. 40944: 10b5c284 addi r2,r2,-10486
  1457. 40948: 2085ff32 custom 252,r2,r4,r2
  1458. 4094c: 1887ff72 custom 253,r3,r3,r2
  1459. 40950: 00000306 br 40960 <game+0x44c>
  1460. 40954: 00d04c34 movhi r3,16688
  1461. 40958: 00000106 br 40960 <game+0x44c>
  1462. 4095c: 0007883a mov r3,zero
  1463. 40960: 00800174 movhi r2,5
  1464. 40964: 1097c504 addi r2,r2,24340
  1465. 40968: 10c00015 stw r3,0(r2)
  1466. if (ball.x <= 1){
  1467. 4096c: 00800174 movhi r2,5
  1468. 40970: 1097c504 addi r2,r2,24340
  1469. 40974: 10c00017 ldw r3,0(r2)
  1470. 40978: 014fe034 movhi r5,16256
  1471. 4097c: 1809883a mov r4,r3
  1472. 40980: 00411f80 call 411f8 <__lesf2>
  1473. 40984: 00803d16 blt zero,r2,40a7c <game+0x568>
  1474. if (ball.y >= left_paddle.y && ball.y <= (left_paddle.y + left_paddle.length -1)){
  1475. 40988: 00800174 movhi r2,5
  1476. 4098c: 1097c504 addi r2,r2,24340
  1477. 40990: 10c00117 ldw r3,4(r2)
  1478. 40994: d0a71717 ldw r2,-25508(gp)
  1479. 40998: 100b883a mov r5,r2
  1480. 4099c: 1809883a mov r4,r3
  1481. 409a0: 004113c0 call 4113c <__gesf2>
  1482. 409a4: 10001716 blt r2,zero,40a04 <game+0x4f0>
  1483. 409a8: 00800174 movhi r2,5
  1484. 409ac: 1097c504 addi r2,r2,24340
  1485. 409b0: 14400117 ldw r17,4(r2)
  1486. 409b4: d4271717 ldw r16,-25508(gp)
  1487. 409b8: d0a71817 ldw r2,-25504(gp)
  1488. 409bc: 1009883a mov r4,r2
  1489. 409c0: 00412c00 call 412c0 <__floatsisf>
  1490. 409c4: 1007883a mov r3,r2
  1491. 409c8: 80c7ff72 custom 253,r3,r16,r3
  1492. 409cc: 008fe034 movhi r2,16256
  1493. 409d0: 1885ffb2 custom 254,r2,r3,r2
  1494. 409d4: 100b883a mov r5,r2
  1495. 409d8: 8809883a mov r4,r17
  1496. 409dc: 00411f80 call 411f8 <__lesf2>
  1497. 409e0: 00800816 blt zero,r2,40a04 <game+0x4f0>
  1498. ball.vel_x = - ball.vel_x;
  1499. 409e4: 00800174 movhi r2,5
  1500. 409e8: 1097c504 addi r2,r2,24340
  1501. 409ec: 10c00217 ldw r3,8(r2)
  1502. 409f0: 18e0003c xorhi r3,r3,32768
  1503. 409f4: 00800174 movhi r2,5
  1504. 409f8: 1097c504 addi r2,r2,24340
  1505. 409fc: 10c00215 stw r3,8(r2)
  1506. 40a00: 00001e06 br 40a7c <game+0x568>
  1507. } else {
  1508. printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
  1509. 40a04: 00800174 movhi r2,5
  1510. 40a08: 1097c504 addi r2,r2,24340
  1511. 40a0c: 10c00017 ldw r3,0(r2)
  1512. 40a10: 1809883a mov r4,r3
  1513. 40a14: 0041dec0 call 41dec <__extendsfdf2>
  1514. 40a18: 1021883a mov r16,r2
  1515. 40a1c: 1823883a mov r17,r3
  1516. 40a20: 00800174 movhi r2,5
  1517. 40a24: 1097c504 addi r2,r2,24340
  1518. 40a28: 10c00117 ldw r3,4(r2)
  1519. 40a2c: 1809883a mov r4,r3
  1520. 40a30: 0041dec0 call 41dec <__extendsfdf2>
  1521. 40a34: 1009883a mov r4,r2
  1522. 40a38: 180b883a mov r5,r3
  1523. 40a3c: d9000015 stw r4,0(sp)
  1524. 40a40: d9400115 stw r5,4(sp)
  1525. 40a44: 800d883a mov r6,r16
  1526. 40a48: 880f883a mov r7,r17
  1527. 40a4c: e17ffc17 ldw r5,-16(fp)
  1528. 40a50: 01000174 movhi r4,5
  1529. 40a54: 21081004 addi r4,r4,8256
  1530. 40a58: 00420880 call 42088 <printf>
  1531. printf("rigth player lost");
  1532. 40a5c: 01000174 movhi r4,5
  1533. 40a60: 21081704 addi r4,r4,8284
  1534. 40a64: 00420880 call 42088 <printf>
  1535. getchar();
  1536. 40a68: d0a00117 ldw r2,-32764(gp)
  1537. 40a6c: 10800117 ldw r2,4(r2)
  1538. 40a70: 1009883a mov r4,r2
  1539. 40a74: 0041fd00 call 41fd0 <getc>
  1540. reset_pos();
  1541. 40a78: 004049c0 call 4049c <reset_pos>
  1542. }
  1543. }
  1544. if (ball.x >= COLS - 2){
  1545. 40a7c: 00800174 movhi r2,5
  1546. 40a80: 1097c504 addi r2,r2,24340
  1547. 40a84: 10c00017 ldw r3,0(r2)
  1548. 40a88: 01504834 movhi r5,16672
  1549. 40a8c: 1809883a mov r4,r3
  1550. 40a90: 004113c0 call 4113c <__gesf2>
  1551. 40a94: 10003d16 blt r2,zero,40b8c <game+0x678>
  1552. if (ball.y >= right_paddle.y && ball.y <= (right_paddle.y + right_paddle.length -1)){
  1553. 40a98: 00800174 movhi r2,5
  1554. 40a9c: 1097c504 addi r2,r2,24340
  1555. 40aa0: 10c00117 ldw r3,4(r2)
  1556. 40aa4: d0a71917 ldw r2,-25500(gp)
  1557. 40aa8: 100b883a mov r5,r2
  1558. 40aac: 1809883a mov r4,r3
  1559. 40ab0: 004113c0 call 4113c <__gesf2>
  1560. 40ab4: 10001716 blt r2,zero,40b14 <game+0x600>
  1561. 40ab8: 00800174 movhi r2,5
  1562. 40abc: 1097c504 addi r2,r2,24340
  1563. 40ac0: 14400117 ldw r17,4(r2)
  1564. 40ac4: d4271917 ldw r16,-25500(gp)
  1565. 40ac8: d0a71a17 ldw r2,-25496(gp)
  1566. 40acc: 1009883a mov r4,r2
  1567. 40ad0: 00412c00 call 412c0 <__floatsisf>
  1568. 40ad4: 1007883a mov r3,r2
  1569. 40ad8: 80c7ff72 custom 253,r3,r16,r3
  1570. 40adc: 008fe034 movhi r2,16256
  1571. 40ae0: 1885ffb2 custom 254,r2,r3,r2
  1572. 40ae4: 100b883a mov r5,r2
  1573. 40ae8: 8809883a mov r4,r17
  1574. 40aec: 00411f80 call 411f8 <__lesf2>
  1575. 40af0: 00800816 blt zero,r2,40b14 <game+0x600>
  1576. ball.vel_x = - ball.vel_x;
  1577. 40af4: 00800174 movhi r2,5
  1578. 40af8: 1097c504 addi r2,r2,24340
  1579. 40afc: 10c00217 ldw r3,8(r2)
  1580. 40b00: 18e0003c xorhi r3,r3,32768
  1581. 40b04: 00800174 movhi r2,5
  1582. 40b08: 1097c504 addi r2,r2,24340
  1583. 40b0c: 10c00215 stw r3,8(r2)
  1584. 40b10: 00001e06 br 40b8c <game+0x678>
  1585. } else {
  1586. printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
  1587. 40b14: 00800174 movhi r2,5
  1588. 40b18: 1097c504 addi r2,r2,24340
  1589. 40b1c: 10c00017 ldw r3,0(r2)
  1590. 40b20: 1809883a mov r4,r3
  1591. 40b24: 0041dec0 call 41dec <__extendsfdf2>
  1592. 40b28: 1021883a mov r16,r2
  1593. 40b2c: 1823883a mov r17,r3
  1594. 40b30: 00800174 movhi r2,5
  1595. 40b34: 1097c504 addi r2,r2,24340
  1596. 40b38: 10c00117 ldw r3,4(r2)
  1597. 40b3c: 1809883a mov r4,r3
  1598. 40b40: 0041dec0 call 41dec <__extendsfdf2>
  1599. 40b44: 1009883a mov r4,r2
  1600. 40b48: 180b883a mov r5,r3
  1601. 40b4c: d9000015 stw r4,0(sp)
  1602. 40b50: d9400115 stw r5,4(sp)
  1603. 40b54: 800d883a mov r6,r16
  1604. 40b58: 880f883a mov r7,r17
  1605. 40b5c: e17ffc17 ldw r5,-16(fp)
  1606. 40b60: 01000174 movhi r4,5
  1607. 40b64: 21081004 addi r4,r4,8256
  1608. 40b68: 00420880 call 42088 <printf>
  1609. printf("left player lost");
  1610. 40b6c: 01000174 movhi r4,5
  1611. 40b70: 21081c04 addi r4,r4,8304
  1612. 40b74: 00420880 call 42088 <printf>
  1613. getchar();
  1614. 40b78: d0a00117 ldw r2,-32764(gp)
  1615. 40b7c: 10800117 ldw r2,4(r2)
  1616. 40b80: 1009883a mov r4,r2
  1617. 40b84: 0041fd00 call 41fd0 <getc>
  1618. reset_pos();
  1619. 40b88: 004049c0 call 4049c <reset_pos>
  1620. }
  1621. }
  1622. if (ball.vel_x < 0) {
  1623. 40b8c: 00800174 movhi r2,5
  1624. 40b90: 1097c504 addi r2,r2,24340
  1625. 40b94: 10c00217 ldw r3,8(r2)
  1626. 40b98: 000b883a mov r5,zero
  1627. 40b9c: 1809883a mov r4,r3
  1628. 40ba0: 00411f80 call 411f8 <__lesf2>
  1629. 40ba4: 10000a0e bge r2,zero,40bd0 <game+0x6bc>
  1630. ball.vel_x = ball.vel_x - ACCELERATION;
  1631. 40ba8: 00800174 movhi r2,5
  1632. 40bac: 1097c504 addi r2,r2,24340
  1633. 40bb0: 10c00217 ldw r3,8(r2)
  1634. 40bb4: 008f7374 movhi r2,15821
  1635. 40bb8: 10b33344 addi r2,r2,-13107
  1636. 40bbc: 1887ffb2 custom 254,r3,r3,r2
  1637. 40bc0: 00800174 movhi r2,5
  1638. 40bc4: 1097c504 addi r2,r2,24340
  1639. 40bc8: 10c00215 stw r3,8(r2)
  1640. 40bcc: 00000906 br 40bf4 <game+0x6e0>
  1641. } else {
  1642. ball.vel_x = ball.vel_x + ACCELERATION;
  1643. 40bd0: 00800174 movhi r2,5
  1644. 40bd4: 1097c504 addi r2,r2,24340
  1645. 40bd8: 10c00217 ldw r3,8(r2)
  1646. 40bdc: 008f7374 movhi r2,15821
  1647. 40be0: 10b33344 addi r2,r2,-13107
  1648. 40be4: 1887ff72 custom 253,r3,r3,r2
  1649. 40be8: 00800174 movhi r2,5
  1650. 40bec: 1097c504 addi r2,r2,24340
  1651. 40bf0: 10c00215 stw r3,8(r2)
  1652. }
  1653. if (ball.vel_y < 0) {
  1654. 40bf4: 00800174 movhi r2,5
  1655. 40bf8: 1097c504 addi r2,r2,24340
  1656. 40bfc: 10c00317 ldw r3,12(r2)
  1657. 40c00: 000b883a mov r5,zero
  1658. 40c04: 1809883a mov r4,r3
  1659. 40c08: 00411f80 call 411f8 <__lesf2>
  1660. 40c0c: 10000a0e bge r2,zero,40c38 <game+0x724>
  1661. ball.vel_y = ball.vel_y - ACCELERATION;
  1662. 40c10: 00800174 movhi r2,5
  1663. 40c14: 1097c504 addi r2,r2,24340
  1664. 40c18: 10c00317 ldw r3,12(r2)
  1665. 40c1c: 008f7374 movhi r2,15821
  1666. 40c20: 10b33344 addi r2,r2,-13107
  1667. 40c24: 1887ffb2 custom 254,r3,r3,r2
  1668. 40c28: 00800174 movhi r2,5
  1669. 40c2c: 1097c504 addi r2,r2,24340
  1670. 40c30: 10c00315 stw r3,12(r2)
  1671. 40c34: 00000906 br 40c5c <game+0x748>
  1672. } else {
  1673. ball.vel_y = ball.vel_y + ACCELERATION;
  1674. 40c38: 00800174 movhi r2,5
  1675. 40c3c: 1097c504 addi r2,r2,24340
  1676. 40c40: 10c00317 ldw r3,12(r2)
  1677. 40c44: 008f7374 movhi r2,15821
  1678. 40c48: 10b33344 addi r2,r2,-13107
  1679. 40c4c: 1887ff72 custom 253,r3,r3,r2
  1680. 40c50: 00800174 movhi r2,5
  1681. 40c54: 1097c504 addi r2,r2,24340
  1682. 40c58: 10c00315 stw r3,12(r2)
  1683. }
  1684. reset_screen();
  1685. 40c5c: 004042c0 call 4042c <reset_screen>
  1686. for (i=0;i<left_paddle.length;i++) {
  1687. 40c60: e03ffb15 stw zero,-20(fp)
  1688. 40c64: 00002006 br 40ce8 <game+0x7d4>
  1689. set_pixel( COLS - 1, round(left_paddle.y) + i);
  1690. 40c68: d0a71717 ldw r2,-25508(gp)
  1691. 40c6c: 1009883a mov r4,r2
  1692. 40c70: 0041dec0 call 41dec <__extendsfdf2>
  1693. 40c74: 100b883a mov r5,r2
  1694. 40c78: 180d883a mov r6,r3
  1695. 40c7c: 2809883a mov r4,r5
  1696. 40c80: 300b883a mov r5,r6
  1697. 40c84: 0040fc40 call 40fc4 <round>
  1698. 40c88: 1021883a mov r16,r2
  1699. 40c8c: 1823883a mov r17,r3
  1700. 40c90: e13ffb17 ldw r4,-20(fp)
  1701. 40c94: 0041d100 call 41d10 <__floatsidf>
  1702. 40c98: 1009883a mov r4,r2
  1703. 40c9c: 180b883a mov r5,r3
  1704. 40ca0: 200d883a mov r6,r4
  1705. 40ca4: 280f883a mov r7,r5
  1706. 40ca8: 8009883a mov r4,r16
  1707. 40cac: 880b883a mov r5,r17
  1708. 40cb0: 00413e40 call 413e4 <__adddf3>
  1709. 40cb4: 1009883a mov r4,r2
  1710. 40cb8: 180b883a mov r5,r3
  1711. 40cbc: 2005883a mov r2,r4
  1712. 40cc0: 2807883a mov r3,r5
  1713. 40cc4: 1009883a mov r4,r2
  1714. 40cc8: 180b883a mov r5,r3
  1715. 40ccc: 0041c900 call 41c90 <__fixdfsi>
  1716. 40cd0: 100b883a mov r5,r2
  1717. 40cd4: 010002c4 movi r4,11
  1718. 40cd8: 00403bc0 call 403bc <set_pixel>
  1719. ball.vel_y = ball.vel_y + ACCELERATION;
  1720. }
  1721. reset_screen();
  1722. for (i=0;i<left_paddle.length;i++) {
  1723. 40cdc: e0bffb17 ldw r2,-20(fp)
  1724. 40ce0: 10800044 addi r2,r2,1
  1725. 40ce4: e0bffb15 stw r2,-20(fp)
  1726. 40ce8: d0a71817 ldw r2,-25504(gp)
  1727. 40cec: e0fffb17 ldw r3,-20(fp)
  1728. 40cf0: 18bfdd16 blt r3,r2,40c68 <__alt_data_end+0xfffcec68>
  1729. set_pixel( COLS - 1, round(left_paddle.y) + i);
  1730. }
  1731. for (i=0;i<right_paddle.length;i++) {
  1732. 40cf4: e03ffb15 stw zero,-20(fp)
  1733. 40cf8: 00002006 br 40d7c <game+0x868>
  1734. set_pixel(0, round(right_paddle.y) + i);
  1735. 40cfc: d0a71917 ldw r2,-25500(gp)
  1736. 40d00: 1009883a mov r4,r2
  1737. 40d04: 0041dec0 call 41dec <__extendsfdf2>
  1738. 40d08: 100b883a mov r5,r2
  1739. 40d0c: 180d883a mov r6,r3
  1740. 40d10: 2809883a mov r4,r5
  1741. 40d14: 300b883a mov r5,r6
  1742. 40d18: 0040fc40 call 40fc4 <round>
  1743. 40d1c: 1021883a mov r16,r2
  1744. 40d20: 1823883a mov r17,r3
  1745. 40d24: e13ffb17 ldw r4,-20(fp)
  1746. 40d28: 0041d100 call 41d10 <__floatsidf>
  1747. 40d2c: 1009883a mov r4,r2
  1748. 40d30: 180b883a mov r5,r3
  1749. 40d34: 200d883a mov r6,r4
  1750. 40d38: 280f883a mov r7,r5
  1751. 40d3c: 8009883a mov r4,r16
  1752. 40d40: 880b883a mov r5,r17
  1753. 40d44: 00413e40 call 413e4 <__adddf3>
  1754. 40d48: 1009883a mov r4,r2
  1755. 40d4c: 180b883a mov r5,r3
  1756. 40d50: 2005883a mov r2,r4
  1757. 40d54: 2807883a mov r3,r5
  1758. 40d58: 1009883a mov r4,r2
  1759. 40d5c: 180b883a mov r5,r3
  1760. 40d60: 0041c900 call 41c90 <__fixdfsi>
  1761. 40d64: 100b883a mov r5,r2
  1762. 40d68: 0009883a mov r4,zero
  1763. 40d6c: 00403bc0 call 403bc <set_pixel>
  1764. reset_screen();
  1765. for (i=0;i<left_paddle.length;i++) {
  1766. set_pixel( COLS - 1, round(left_paddle.y) + i);
  1767. }
  1768. for (i=0;i<right_paddle.length;i++) {
  1769. 40d70: e0bffb17 ldw r2,-20(fp)
  1770. 40d74: 10800044 addi r2,r2,1
  1771. 40d78: e0bffb15 stw r2,-20(fp)
  1772. 40d7c: d0a71a17 ldw r2,-25496(gp)
  1773. 40d80: e0fffb17 ldw r3,-20(fp)
  1774. 40d84: 18bfdd16 blt r3,r2,40cfc <__alt_data_end+0xfffcecfc>
  1775. set_pixel(0, round(right_paddle.y) + i);
  1776. }
  1777. set_pixel(round(ball.x),round(ball.y));
  1778. 40d88: 00800174 movhi r2,5
  1779. 40d8c: 1097c504 addi r2,r2,24340
  1780. 40d90: 10c00017 ldw r3,0(r2)
  1781. 40d94: 1809883a mov r4,r3
  1782. 40d98: 0041dec0 call 41dec <__extendsfdf2>
  1783. 40d9c: 100b883a mov r5,r2
  1784. 40da0: 180d883a mov r6,r3
  1785. 40da4: 2809883a mov r4,r5
  1786. 40da8: 300b883a mov r5,r6
  1787. 40dac: 0040fc40 call 40fc4 <round>
  1788. 40db0: 100b883a mov r5,r2
  1789. 40db4: 180d883a mov r6,r3
  1790. 40db8: 2809883a mov r4,r5
  1791. 40dbc: 300b883a mov r5,r6
  1792. 40dc0: 0041c900 call 41c90 <__fixdfsi>
  1793. 40dc4: 1021883a mov r16,r2
  1794. 40dc8: 00800174 movhi r2,5
  1795. 40dcc: 1097c504 addi r2,r2,24340
  1796. 40dd0: 10c00117 ldw r3,4(r2)
  1797. 40dd4: 1809883a mov r4,r3
  1798. 40dd8: 0041dec0 call 41dec <__extendsfdf2>
  1799. 40ddc: 100b883a mov r5,r2
  1800. 40de0: 180d883a mov r6,r3
  1801. 40de4: 2809883a mov r4,r5
  1802. 40de8: 300b883a mov r5,r6
  1803. 40dec: 0040fc40 call 40fc4 <round>
  1804. 40df0: 100b883a mov r5,r2
  1805. 40df4: 180d883a mov r6,r3
  1806. 40df8: 2809883a mov r4,r5
  1807. 40dfc: 300b883a mov r5,r6
  1808. 40e00: 0041c900 call 41c90 <__fixdfsi>
  1809. 40e04: 100b883a mov r5,r2
  1810. 40e08: 8009883a mov r4,r16
  1811. 40e0c: 00403bc0 call 403bc <set_pixel>
  1812. k++;
  1813. 40e10: e0bffc17 ldw r2,-16(fp)
  1814. 40e14: 10800044 addi r2,r2,1
  1815. 40e18: e0bffc15 stw r2,-16(fp)
  1816. draw();
  1817. 40e1c: 004026c0 call 4026c <draw>
  1818. printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
  1819. 40e20: 00800174 movhi r2,5
  1820. 40e24: 1097c504 addi r2,r2,24340
  1821. 40e28: 10c00017 ldw r3,0(r2)
  1822. 40e2c: 1809883a mov r4,r3
  1823. 40e30: 0041dec0 call 41dec <__extendsfdf2>
  1824. 40e34: 1021883a mov r16,r2
  1825. 40e38: 1823883a mov r17,r3
  1826. 40e3c: 00800174 movhi r2,5
  1827. 40e40: 1097c504 addi r2,r2,24340
  1828. 40e44: 10c00117 ldw r3,4(r2)
  1829. 40e48: 1809883a mov r4,r3
  1830. 40e4c: 0041dec0 call 41dec <__extendsfdf2>
  1831. 40e50: 1009883a mov r4,r2
  1832. 40e54: 180b883a mov r5,r3
  1833. 40e58: d9000015 stw r4,0(sp)
  1834. 40e5c: d9400115 stw r5,4(sp)
  1835. 40e60: 800d883a mov r6,r16
  1836. 40e64: 880f883a mov r7,r17
  1837. 40e68: e17ffc17 ldw r5,-16(fp)
  1838. 40e6c: 01000174 movhi r4,5
  1839. 40e70: 21081004 addi r4,r4,8256
  1840. 40e74: 00420880 call 42088 <printf>
  1841. //getchar();
  1842. //system("cls");
  1843. }
  1844. 40e78: 003dae06 br 40534 <__alt_data_end+0xfffce534>
  1845. 00040e7c <test_picture>:
  1846. }
  1847. void test_picture() {
  1848. 40e7c: defffa04 addi sp,sp,-24
  1849. 40e80: dfc00515 stw ra,20(sp)
  1850. 40e84: df000415 stw fp,16(sp)
  1851. 40e88: df000404 addi fp,sp,16
  1852. int i,j,k;
  1853. unsigned buttons;
  1854. while (1){
  1855. for (i=0;i<ROWS;i++) {
  1856. 40e8c: e03ffc15 stw zero,-16(fp)
  1857. 40e90: 00003c06 br 40f84 <test_picture+0x108>
  1858. for (j=0;j<COLS;j++) {
  1859. 40e94: e03ffd15 stw zero,-12(fp)
  1860. 40e98: 00003406 br 40f6c <test_picture+0xf0>
  1861. buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE);
  1862. 40e9c: 00800234 movhi r2,8
  1863. 40ea0: 10841004 addi r2,r2,4160
  1864. 40ea4: 10800037 ldwio r2,0(r2)
  1865. 40ea8: 0084303a nor r2,zero,r2
  1866. 40eac: e0bfff15 stw r2,-4(fp)
  1867. printf("%d,%d, set\n",j,i);
  1868. 40eb0: e1bffc17 ldw r6,-16(fp)
  1869. 40eb4: e17ffd17 ldw r5,-12(fp)
  1870. 40eb8: 01000174 movhi r4,5
  1871. 40ebc: 21082104 addi r4,r4,8324
  1872. 40ec0: 00420880 call 42088 <printf>
  1873. if (buttons & (1<<LEFT_UP_BUTTON)){
  1874. 40ec4: e0bfff17 ldw r2,-4(fp)
  1875. 40ec8: 1080004c andi r2,r2,1
  1876. 40ecc: 10000326 beq r2,zero,40edc <test_picture+0x60>
  1877. printf("left button up");
  1878. 40ed0: 01000174 movhi r4,5
  1879. 40ed4: 21082404 addi r4,r4,8336
  1880. 40ed8: 00420880 call 42088 <printf>
  1881. }
  1882. if (buttons & (1<<LEFT_DOWN_BUTTON)){
  1883. 40edc: e0bfff17 ldw r2,-4(fp)
  1884. 40ee0: 1080008c andi r2,r2,2
  1885. 40ee4: 10000326 beq r2,zero,40ef4 <test_picture+0x78>
  1886. printf("left button down");
  1887. 40ee8: 01000174 movhi r4,5
  1888. 40eec: 21082804 addi r4,r4,8352
  1889. 40ef0: 00420880 call 42088 <printf>
  1890. }
  1891. if (buttons & (1<<RIGTH_UP_BUTTON)){
  1892. 40ef4: e0bfff17 ldw r2,-4(fp)
  1893. 40ef8: 1080010c andi r2,r2,4
  1894. 40efc: 10000326 beq r2,zero,40f0c <test_picture+0x90>
  1895. printf("rigth button up");
  1896. 40f00: 01000174 movhi r4,5
  1897. 40f04: 21082d04 addi r4,r4,8372
  1898. 40f08: 00420880 call 42088 <printf>
  1899. }
  1900. if (buttons & (1<<RIGTH_DOWN_BUTTON)){
  1901. 40f0c: e0bfff17 ldw r2,-4(fp)
  1902. 40f10: 1080020c andi r2,r2,8
  1903. 40f14: 10000326 beq r2,zero,40f24 <test_picture+0xa8>
  1904. printf("rigth button down");
  1905. 40f18: 01000174 movhi r4,5
  1906. 40f1c: 21083104 addi r4,r4,8388
  1907. 40f20: 00420880 call 42088 <printf>
  1908. }
  1909. printf("\n");
  1910. 40f24: 01000284 movi r4,10
  1911. 40f28: 00420cc0 call 420cc <putchar>
  1912. set_pixel(j,i);
  1913. 40f2c: e17ffc17 ldw r5,-16(fp)
  1914. 40f30: e13ffd17 ldw r4,-12(fp)
  1915. 40f34: 00403bc0 call 403bc <set_pixel>
  1916. draw();
  1917. 40f38: 004026c0 call 4026c <draw>
  1918. for(k=0;k<1000000;k++) {
  1919. 40f3c: e03ffe15 stw zero,-8(fp)
  1920. 40f40: 00000306 br 40f50 <test_picture+0xd4>
  1921. 40f44: e0bffe17 ldw r2,-8(fp)
  1922. 40f48: 10800044 addi r2,r2,1
  1923. 40f4c: e0bffe15 stw r2,-8(fp)
  1924. 40f50: e0fffe17 ldw r3,-8(fp)
  1925. 40f54: 008003f4 movhi r2,15
  1926. 40f58: 10908fc4 addi r2,r2,16959
  1927. 40f5c: 10fff90e bge r2,r3,40f44 <__alt_data_end+0xfffcef44>
  1928. void test_picture() {
  1929. int i,j,k;
  1930. unsigned buttons;
  1931. while (1){
  1932. for (i=0;i<ROWS;i++) {
  1933. for (j=0;j<COLS;j++) {
  1934. 40f60: e0bffd17 ldw r2,-12(fp)
  1935. 40f64: 10800044 addi r2,r2,1
  1936. 40f68: e0bffd15 stw r2,-12(fp)
  1937. 40f6c: e0bffd17 ldw r2,-12(fp)
  1938. 40f70: 10800310 cmplti r2,r2,12
  1939. 40f74: 103fc91e bne r2,zero,40e9c <__alt_data_end+0xfffcee9c>
  1940. void test_picture() {
  1941. int i,j,k;
  1942. unsigned buttons;
  1943. while (1){
  1944. for (i=0;i<ROWS;i++) {
  1945. 40f78: e0bffc17 ldw r2,-16(fp)
  1946. 40f7c: 10800044 addi r2,r2,1
  1947. 40f80: e0bffc15 stw r2,-16(fp)
  1948. 40f84: e0bffc17 ldw r2,-16(fp)
  1949. 40f88: 10800210 cmplti r2,r2,8
  1950. 40f8c: 103fc11e bne r2,zero,40e94 <__alt_data_end+0xfffcee94>
  1951. draw();
  1952. for(k=0;k<1000000;k++) {
  1953. }
  1954. }
  1955. }
  1956. reset_screen();
  1957. 40f90: 004042c0 call 4042c <reset_screen>
  1958. }
  1959. 40f94: 003fbd06 br 40e8c <__alt_data_end+0xfffcee8c>
  1960. 00040f98 <main>:
  1961. }
  1962. int main() {
  1963. 40f98: defffe04 addi sp,sp,-8
  1964. 40f9c: dfc00115 stw ra,4(sp)
  1965. 40fa0: df000015 stw fp,0(sp)
  1966. 40fa4: d839883a mov fp,sp
  1967. test_picture();
  1968. 40fa8: 0040e7c0 call 40e7c <test_picture>
  1969. 40fac: 0005883a mov r2,zero
  1970. //game();
  1971. }
  1972. 40fb0: e037883a mov sp,fp
  1973. 40fb4: dfc00117 ldw ra,4(sp)
  1974. 40fb8: df000017 ldw fp,0(sp)
  1975. 40fbc: dec00204 addi sp,sp,8
  1976. 40fc0: f800283a ret
  1977. 00040fc4 <round>:
  1978. 40fc4: 289ffc2c andhi r2,r5,32752
  1979. 40fc8: 1005d53a srai r2,r2,20
  1980. 40fcc: 024004c4 movi r9,19
  1981. 40fd0: 2807883a mov r3,r5
  1982. 40fd4: 123f0044 addi r8,r2,-1023
  1983. 40fd8: 200d883a mov r6,r4
  1984. 40fdc: 280f883a mov r7,r5
  1985. 40fe0: 4a000916 blt r9,r8,41008 <round+0x44>
  1986. 40fe4: 40002516 blt r8,zero,4107c <round+0xb8>
  1987. 40fe8: 00800434 movhi r2,16
  1988. 40fec: 10bfffc4 addi r2,r2,-1
  1989. 40ff0: 1205d83a sra r2,r2,r8
  1990. 40ff4: 2888703a and r4,r5,r2
  1991. 40ff8: 2000181e bne r4,zero,4105c <round+0x98>
  1992. 40ffc: 3000171e bne r6,zero,4105c <round+0x98>
  1993. 41000: 0005883a mov r2,zero
  1994. 41004: f800283a ret
  1995. 41008: 02400cc4 movi r9,51
  1996. 4100c: 4a00040e bge r9,r8,41020 <round+0x5c>
  1997. 41010: 00810004 movi r2,1024
  1998. 41014: 40802126 beq r8,r2,4109c <round+0xd8>
  1999. 41018: 3005883a mov r2,r6
  2000. 4101c: f800283a ret
  2001. 41020: 013fffc4 movi r4,-1
  2002. 41024: 10befb44 addi r2,r2,-1043
  2003. 41028: 2084d83a srl r2,r4,r2
  2004. 4102c: 3088703a and r4,r6,r2
  2005. 41030: 20001726 beq r4,zero,41090 <round+0xcc>
  2006. 41034: 4a11c83a sub r8,r9,r8
  2007. 41038: 02400044 movi r9,1
  2008. 4103c: 4a10983a sll r8,r9,r8
  2009. 41040: 4191883a add r8,r8,r6
  2010. 41044: 4180012e bgeu r8,r6,4104c <round+0x88>
  2011. 41048: 2a47883a add r3,r5,r9
  2012. 4104c: 0084303a nor r2,zero,r2
  2013. 41050: 120c703a and r6,r2,r8
  2014. 41054: 3005883a mov r2,r6
  2015. 41058: f800283a ret
  2016. 4105c: 00c00234 movhi r3,8
  2017. 41060: 1a07d83a sra r3,r3,r8
  2018. 41064: 0084303a nor r2,zero,r2
  2019. 41068: 000d883a mov r6,zero
  2020. 4106c: 19c7883a add r3,r3,r7
  2021. 41070: 1886703a and r3,r3,r2
  2022. 41074: 3005883a mov r2,r6
  2023. 41078: f800283a ret
  2024. 4107c: 00bfffc4 movi r2,-1
  2025. 41080: 28e0002c andhi r3,r5,32768
  2026. 41084: 40800c26 beq r8,r2,410b8 <round+0xf4>
  2027. 41088: 000d883a mov r6,zero
  2028. 4108c: 003fe206 br 41018 <__alt_data_end+0xfffcf018>
  2029. 41090: 3005883a mov r2,r6
  2030. 41094: 2807883a mov r3,r5
  2031. 41098: f800283a ret
  2032. 4109c: deffff04 addi sp,sp,-4
  2033. 410a0: 280f883a mov r7,r5
  2034. 410a4: dfc00015 stw ra,0(sp)
  2035. 410a8: 00413e40 call 413e4 <__adddf3>
  2036. 410ac: dfc00017 ldw ra,0(sp)
  2037. 410b0: dec00104 addi sp,sp,4
  2038. 410b4: f800283a ret
  2039. 410b8: 18cffc34 orhi r3,r3,16368
  2040. 410bc: 000d883a mov r6,zero
  2041. 410c0: 003fd506 br 41018 <__alt_data_end+0xfffcf018>
  2042. 000410c4 <__eqsf2>:
  2043. 410c4: 2006d5fa srli r3,r4,23
  2044. 410c8: 280cd5fa srli r6,r5,23
  2045. 410cc: 01c02034 movhi r7,128
  2046. 410d0: 39ffffc4 addi r7,r7,-1
  2047. 410d4: 18c03fcc andi r3,r3,255
  2048. 410d8: 02003fc4 movi r8,255
  2049. 410dc: 3904703a and r2,r7,r4
  2050. 410e0: 31803fcc andi r6,r6,255
  2051. 410e4: 394e703a and r7,r7,r5
  2052. 410e8: 2008d7fa srli r4,r4,31
  2053. 410ec: 280ad7fa srli r5,r5,31
  2054. 410f0: 1a000d26 beq r3,r8,41128 <__eqsf2+0x64>
  2055. 410f4: 02003fc4 movi r8,255
  2056. 410f8: 32000826 beq r6,r8,4111c <__eqsf2+0x58>
  2057. 410fc: 19800226 beq r3,r6,41108 <__eqsf2+0x44>
  2058. 41100: 00800044 movi r2,1
  2059. 41104: f800283a ret
  2060. 41108: 11fffd1e bne r2,r7,41100 <__alt_data_end+0xfffcf100>
  2061. 4110c: 21400926 beq r4,r5,41134 <__eqsf2+0x70>
  2062. 41110: 183ffb1e bne r3,zero,41100 <__alt_data_end+0xfffcf100>
  2063. 41114: 1004c03a cmpne r2,r2,zero
  2064. 41118: f800283a ret
  2065. 4111c: 383ff726 beq r7,zero,410fc <__alt_data_end+0xfffcf0fc>
  2066. 41120: 00800044 movi r2,1
  2067. 41124: f800283a ret
  2068. 41128: 103ff226 beq r2,zero,410f4 <__alt_data_end+0xfffcf0f4>
  2069. 4112c: 00800044 movi r2,1
  2070. 41130: f800283a ret
  2071. 41134: 0005883a mov r2,zero
  2072. 41138: f800283a ret
  2073. 0004113c <__gesf2>:
  2074. 4113c: 2004d5fa srli r2,r4,23
  2075. 41140: 2806d5fa srli r3,r5,23
  2076. 41144: 01802034 movhi r6,128
  2077. 41148: 31bfffc4 addi r6,r6,-1
  2078. 4114c: 10803fcc andi r2,r2,255
  2079. 41150: 01c03fc4 movi r7,255
  2080. 41154: 3110703a and r8,r6,r4
  2081. 41158: 18c03fcc andi r3,r3,255
  2082. 4115c: 314c703a and r6,r6,r5
  2083. 41160: 2008d7fa srli r4,r4,31
  2084. 41164: 280ad7fa srli r5,r5,31
  2085. 41168: 11c01926 beq r2,r7,411d0 <__gesf2+0x94>
  2086. 4116c: 01c03fc4 movi r7,255
  2087. 41170: 19c00f26 beq r3,r7,411b0 <__gesf2+0x74>
  2088. 41174: 1000061e bne r2,zero,41190 <__gesf2+0x54>
  2089. 41178: 400f003a cmpeq r7,r8,zero
  2090. 4117c: 1800071e bne r3,zero,4119c <__gesf2+0x60>
  2091. 41180: 3000061e bne r6,zero,4119c <__gesf2+0x60>
  2092. 41184: 0005883a mov r2,zero
  2093. 41188: 40000e1e bne r8,zero,411c4 <__gesf2+0x88>
  2094. 4118c: f800283a ret
  2095. 41190: 18000a1e bne r3,zero,411bc <__gesf2+0x80>
  2096. 41194: 30000b26 beq r6,zero,411c4 <__gesf2+0x88>
  2097. 41198: 000f883a mov r7,zero
  2098. 4119c: 29403fcc andi r5,r5,255
  2099. 411a0: 38000726 beq r7,zero,411c0 <__gesf2+0x84>
  2100. 411a4: 28000826 beq r5,zero,411c8 <__gesf2+0x8c>
  2101. 411a8: 00800044 movi r2,1
  2102. 411ac: f800283a ret
  2103. 411b0: 303ff026 beq r6,zero,41174 <__alt_data_end+0xfffcf174>
  2104. 411b4: 00bfff84 movi r2,-2
  2105. 411b8: f800283a ret
  2106. 411bc: 29403fcc andi r5,r5,255
  2107. 411c0: 21400526 beq r4,r5,411d8 <__gesf2+0x9c>
  2108. 411c4: 203ff826 beq r4,zero,411a8 <__alt_data_end+0xfffcf1a8>
  2109. 411c8: 00bfffc4 movi r2,-1
  2110. 411cc: f800283a ret
  2111. 411d0: 403fe626 beq r8,zero,4116c <__alt_data_end+0xfffcf16c>
  2112. 411d4: 003ff706 br 411b4 <__alt_data_end+0xfffcf1b4>
  2113. 411d8: 18bffa16 blt r3,r2,411c4 <__alt_data_end+0xfffcf1c4>
  2114. 411dc: 10c00216 blt r2,r3,411e8 <__gesf2+0xac>
  2115. 411e0: 323ff836 bltu r6,r8,411c4 <__alt_data_end+0xfffcf1c4>
  2116. 411e4: 4180022e bgeu r8,r6,411f0 <__gesf2+0xb4>
  2117. 411e8: 203fef1e bne r4,zero,411a8 <__alt_data_end+0xfffcf1a8>
  2118. 411ec: 003ff606 br 411c8 <__alt_data_end+0xfffcf1c8>
  2119. 411f0: 0005883a mov r2,zero
  2120. 411f4: f800283a ret
  2121. 000411f8 <__lesf2>:
  2122. 411f8: 2004d5fa srli r2,r4,23
  2123. 411fc: 280cd5fa srli r6,r5,23
  2124. 41200: 00c02034 movhi r3,128
  2125. 41204: 18ffffc4 addi r3,r3,-1
  2126. 41208: 10803fcc andi r2,r2,255
  2127. 4120c: 01c03fc4 movi r7,255
  2128. 41210: 1910703a and r8,r3,r4
  2129. 41214: 31803fcc andi r6,r6,255
  2130. 41218: 1946703a and r3,r3,r5
  2131. 4121c: 2008d7fa srli r4,r4,31
  2132. 41220: 280ad7fa srli r5,r5,31
  2133. 41224: 11c01b26 beq r2,r7,41294 <__lesf2+0x9c>
  2134. 41228: 01c03fc4 movi r7,255
  2135. 4122c: 31c01126 beq r6,r7,41274 <__lesf2+0x7c>
  2136. 41230: 1000071e bne r2,zero,41250 <__lesf2+0x58>
  2137. 41234: 400f003a cmpeq r7,r8,zero
  2138. 41238: 21003fcc andi r4,r4,255
  2139. 4123c: 3000081e bne r6,zero,41260 <__lesf2+0x68>
  2140. 41240: 1800071e bne r3,zero,41260 <__lesf2+0x68>
  2141. 41244: 0005883a mov r2,zero
  2142. 41248: 40000f1e bne r8,zero,41288 <__lesf2+0x90>
  2143. 4124c: f800283a ret
  2144. 41250: 21003fcc andi r4,r4,255
  2145. 41254: 30000a1e bne r6,zero,41280 <__lesf2+0x88>
  2146. 41258: 18000b26 beq r3,zero,41288 <__lesf2+0x90>
  2147. 4125c: 000f883a mov r7,zero
  2148. 41260: 29403fcc andi r5,r5,255
  2149. 41264: 38000726 beq r7,zero,41284 <__lesf2+0x8c>
  2150. 41268: 28000826 beq r5,zero,4128c <__lesf2+0x94>
  2151. 4126c: 00800044 movi r2,1
  2152. 41270: f800283a ret
  2153. 41274: 183fee26 beq r3,zero,41230 <__alt_data_end+0xfffcf230>
  2154. 41278: 00800084 movi r2,2
  2155. 4127c: f800283a ret
  2156. 41280: 29403fcc andi r5,r5,255
  2157. 41284: 21400626 beq r4,r5,412a0 <__lesf2+0xa8>
  2158. 41288: 203ff826 beq r4,zero,4126c <__alt_data_end+0xfffcf26c>
  2159. 4128c: 00bfffc4 movi r2,-1
  2160. 41290: f800283a ret
  2161. 41294: 403fe426 beq r8,zero,41228 <__alt_data_end+0xfffcf228>
  2162. 41298: 00800084 movi r2,2
  2163. 4129c: f800283a ret
  2164. 412a0: 30bff916 blt r6,r2,41288 <__alt_data_end+0xfffcf288>
  2165. 412a4: 11800216 blt r2,r6,412b0 <__lesf2+0xb8>
  2166. 412a8: 1a3ff736 bltu r3,r8,41288 <__alt_data_end+0xfffcf288>
  2167. 412ac: 40c0022e bgeu r8,r3,412b8 <__lesf2+0xc0>
  2168. 412b0: 203fee1e bne r4,zero,4126c <__alt_data_end+0xfffcf26c>
  2169. 412b4: 003ff506 br 4128c <__alt_data_end+0xfffcf28c>
  2170. 412b8: 0005883a mov r2,zero
  2171. 412bc: f800283a ret
  2172. 000412c0 <__floatsisf>:
  2173. 412c0: defffd04 addi sp,sp,-12
  2174. 412c4: dfc00215 stw ra,8(sp)
  2175. 412c8: dc400115 stw r17,4(sp)
  2176. 412cc: dc000015 stw r16,0(sp)
  2177. 412d0: 20003526 beq r4,zero,413a8 <__floatsisf+0xe8>
  2178. 412d4: 2021883a mov r16,r4
  2179. 412d8: 2022d7fa srli r17,r4,31
  2180. 412dc: 20003616 blt r4,zero,413b8 <__floatsisf+0xf8>
  2181. 412e0: 8009883a mov r4,r16
  2182. 412e4: 0041efc0 call 41efc <__clzsi2>
  2183. 412e8: 00c02784 movi r3,158
  2184. 412ec: 1887c83a sub r3,r3,r2
  2185. 412f0: 01002584 movi r4,150
  2186. 412f4: 20c01416 blt r4,r3,41348 <__floatsisf+0x88>
  2187. 412f8: 20c9c83a sub r4,r4,r3
  2188. 412fc: 8120983a sll r16,r16,r4
  2189. 41300: 00802034 movhi r2,128
  2190. 41304: 10bfffc4 addi r2,r2,-1
  2191. 41308: 8809883a mov r4,r17
  2192. 4130c: 80a0703a and r16,r16,r2
  2193. 41310: 18803fcc andi r2,r3,255
  2194. 41314: 100695fa slli r3,r2,23
  2195. 41318: 20803fcc andi r2,r4,255
  2196. 4131c: 100897fa slli r4,r2,31
  2197. 41320: 00802034 movhi r2,128
  2198. 41324: 10bfffc4 addi r2,r2,-1
  2199. 41328: 8084703a and r2,r16,r2
  2200. 4132c: 10c4b03a or r2,r2,r3
  2201. 41330: 1104b03a or r2,r2,r4
  2202. 41334: dfc00217 ldw ra,8(sp)
  2203. 41338: dc400117 ldw r17,4(sp)
  2204. 4133c: dc000017 ldw r16,0(sp)
  2205. 41340: dec00304 addi sp,sp,12
  2206. 41344: f800283a ret
  2207. 41348: 01002644 movi r4,153
  2208. 4134c: 20c01c16 blt r4,r3,413c0 <__floatsisf+0x100>
  2209. 41350: 20c9c83a sub r4,r4,r3
  2210. 41354: 8120983a sll r16,r16,r4
  2211. 41358: 013f0034 movhi r4,64512
  2212. 4135c: 213fffc4 addi r4,r4,-1
  2213. 41360: 814001cc andi r5,r16,7
  2214. 41364: 8108703a and r4,r16,r4
  2215. 41368: 28000426 beq r5,zero,4137c <__floatsisf+0xbc>
  2216. 4136c: 840003cc andi r16,r16,15
  2217. 41370: 01400104 movi r5,4
  2218. 41374: 81400126 beq r16,r5,4137c <__floatsisf+0xbc>
  2219. 41378: 2149883a add r4,r4,r5
  2220. 4137c: 2141002c andhi r5,r4,1024
  2221. 41380: 28000526 beq r5,zero,41398 <__floatsisf+0xd8>
  2222. 41384: 00c027c4 movi r3,159
  2223. 41388: 1887c83a sub r3,r3,r2
  2224. 4138c: 00bf0034 movhi r2,64512
  2225. 41390: 10bfffc4 addi r2,r2,-1
  2226. 41394: 2088703a and r4,r4,r2
  2227. 41398: 202091ba slli r16,r4,6
  2228. 4139c: 8809883a mov r4,r17
  2229. 413a0: 8020d27a srli r16,r16,9
  2230. 413a4: 003fda06 br 41310 <__alt_data_end+0xfffcf310>
  2231. 413a8: 0009883a mov r4,zero
  2232. 413ac: 0007883a mov r3,zero
  2233. 413b0: 0021883a mov r16,zero
  2234. 413b4: 003fd606 br 41310 <__alt_data_end+0xfffcf310>
  2235. 413b8: 0121c83a sub r16,zero,r4
  2236. 413bc: 003fc806 br 412e0 <__alt_data_end+0xfffcf2e0>
  2237. 413c0: 01002e44 movi r4,185
  2238. 413c4: 20c9c83a sub r4,r4,r3
  2239. 413c8: 01400144 movi r5,5
  2240. 413cc: 8108983a sll r4,r16,r4
  2241. 413d0: 288bc83a sub r5,r5,r2
  2242. 413d4: 8160d83a srl r16,r16,r5
  2243. 413d8: 2008c03a cmpne r4,r4,zero
  2244. 413dc: 8120b03a or r16,r16,r4
  2245. 413e0: 003fdd06 br 41358 <__alt_data_end+0xfffcf358>
  2246. 000413e4 <__adddf3>:
  2247. 413e4: 02c00434 movhi r11,16
  2248. 413e8: 5affffc4 addi r11,r11,-1
  2249. 413ec: 2806d7fa srli r3,r5,31
  2250. 413f0: 2ad4703a and r10,r5,r11
  2251. 413f4: 3ad2703a and r9,r7,r11
  2252. 413f8: 3804d53a srli r2,r7,20
  2253. 413fc: 3018d77a srli r12,r6,29
  2254. 41400: 280ad53a srli r5,r5,20
  2255. 41404: 501490fa slli r10,r10,3
  2256. 41408: 2010d77a srli r8,r4,29
  2257. 4140c: 481290fa slli r9,r9,3
  2258. 41410: 380ed7fa srli r7,r7,31
  2259. 41414: defffb04 addi sp,sp,-20
  2260. 41418: dc800215 stw r18,8(sp)
  2261. 4141c: dc400115 stw r17,4(sp)
  2262. 41420: dc000015 stw r16,0(sp)
  2263. 41424: dfc00415 stw ra,16(sp)
  2264. 41428: dcc00315 stw r19,12(sp)
  2265. 4142c: 1c803fcc andi r18,r3,255
  2266. 41430: 2c01ffcc andi r16,r5,2047
  2267. 41434: 5210b03a or r8,r10,r8
  2268. 41438: 202290fa slli r17,r4,3
  2269. 4143c: 1081ffcc andi r2,r2,2047
  2270. 41440: 4b12b03a or r9,r9,r12
  2271. 41444: 300c90fa slli r6,r6,3
  2272. 41448: 91c07526 beq r18,r7,41620 <__adddf3+0x23c>
  2273. 4144c: 8087c83a sub r3,r16,r2
  2274. 41450: 00c0ab0e bge zero,r3,41700 <__adddf3+0x31c>
  2275. 41454: 10002a1e bne r2,zero,41500 <__adddf3+0x11c>
  2276. 41458: 4984b03a or r2,r9,r6
  2277. 4145c: 1000961e bne r2,zero,416b8 <__adddf3+0x2d4>
  2278. 41460: 888001cc andi r2,r17,7
  2279. 41464: 10000726 beq r2,zero,41484 <__adddf3+0xa0>
  2280. 41468: 888003cc andi r2,r17,15
  2281. 4146c: 00c00104 movi r3,4
  2282. 41470: 10c00426 beq r2,r3,41484 <__adddf3+0xa0>
  2283. 41474: 88c7883a add r3,r17,r3
  2284. 41478: 1c63803a cmpltu r17,r3,r17
  2285. 4147c: 4451883a add r8,r8,r17
  2286. 41480: 1823883a mov r17,r3
  2287. 41484: 4080202c andhi r2,r8,128
  2288. 41488: 10005926 beq r2,zero,415f0 <__adddf3+0x20c>
  2289. 4148c: 84000044 addi r16,r16,1
  2290. 41490: 0081ffc4 movi r2,2047
  2291. 41494: 8080ba26 beq r16,r2,41780 <__adddf3+0x39c>
  2292. 41498: 00bfe034 movhi r2,65408
  2293. 4149c: 10bfffc4 addi r2,r2,-1
  2294. 414a0: 4090703a and r8,r8,r2
  2295. 414a4: 4004977a slli r2,r8,29
  2296. 414a8: 4010927a slli r8,r8,9
  2297. 414ac: 8822d0fa srli r17,r17,3
  2298. 414b0: 8401ffcc andi r16,r16,2047
  2299. 414b4: 4010d33a srli r8,r8,12
  2300. 414b8: 9007883a mov r3,r18
  2301. 414bc: 1444b03a or r2,r2,r17
  2302. 414c0: 8401ffcc andi r16,r16,2047
  2303. 414c4: 8020953a slli r16,r16,20
  2304. 414c8: 18c03fcc andi r3,r3,255
  2305. 414cc: 01000434 movhi r4,16
  2306. 414d0: 213fffc4 addi r4,r4,-1
  2307. 414d4: 180697fa slli r3,r3,31
  2308. 414d8: 4110703a and r8,r8,r4
  2309. 414dc: 4410b03a or r8,r8,r16
  2310. 414e0: 40c6b03a or r3,r8,r3
  2311. 414e4: dfc00417 ldw ra,16(sp)
  2312. 414e8: dcc00317 ldw r19,12(sp)
  2313. 414ec: dc800217 ldw r18,8(sp)
  2314. 414f0: dc400117 ldw r17,4(sp)
  2315. 414f4: dc000017 ldw r16,0(sp)
  2316. 414f8: dec00504 addi sp,sp,20
  2317. 414fc: f800283a ret
  2318. 41500: 0081ffc4 movi r2,2047
  2319. 41504: 80bfd626 beq r16,r2,41460 <__alt_data_end+0xfffcf460>
  2320. 41508: 4a402034 orhi r9,r9,128
  2321. 4150c: 00800e04 movi r2,56
  2322. 41510: 10c09f16 blt r2,r3,41790 <__adddf3+0x3ac>
  2323. 41514: 008007c4 movi r2,31
  2324. 41518: 10c0c216 blt r2,r3,41824 <__adddf3+0x440>
  2325. 4151c: 00800804 movi r2,32
  2326. 41520: 10c5c83a sub r2,r2,r3
  2327. 41524: 488a983a sll r5,r9,r2
  2328. 41528: 30c8d83a srl r4,r6,r3
  2329. 4152c: 3084983a sll r2,r6,r2
  2330. 41530: 48c6d83a srl r3,r9,r3
  2331. 41534: 290cb03a or r6,r5,r4
  2332. 41538: 1004c03a cmpne r2,r2,zero
  2333. 4153c: 308cb03a or r6,r6,r2
  2334. 41540: 898dc83a sub r6,r17,r6
  2335. 41544: 89a3803a cmpltu r17,r17,r6
  2336. 41548: 40d1c83a sub r8,r8,r3
  2337. 4154c: 4451c83a sub r8,r8,r17
  2338. 41550: 3023883a mov r17,r6
  2339. 41554: 4080202c andhi r2,r8,128
  2340. 41558: 10002326 beq r2,zero,415e8 <__adddf3+0x204>
  2341. 4155c: 04c02034 movhi r19,128
  2342. 41560: 9cffffc4 addi r19,r19,-1
  2343. 41564: 44e6703a and r19,r8,r19
  2344. 41568: 98007626 beq r19,zero,41744 <__adddf3+0x360>
  2345. 4156c: 9809883a mov r4,r19
  2346. 41570: 0041efc0 call 41efc <__clzsi2>
  2347. 41574: 10fffe04 addi r3,r2,-8
  2348. 41578: 010007c4 movi r4,31
  2349. 4157c: 20c07716 blt r4,r3,4175c <__adddf3+0x378>
  2350. 41580: 00800804 movi r2,32
  2351. 41584: 10c5c83a sub r2,r2,r3
  2352. 41588: 8884d83a srl r2,r17,r2
  2353. 4158c: 98d0983a sll r8,r19,r3
  2354. 41590: 88e2983a sll r17,r17,r3
  2355. 41594: 1204b03a or r2,r2,r8
  2356. 41598: 1c007416 blt r3,r16,4176c <__adddf3+0x388>
  2357. 4159c: 1c21c83a sub r16,r3,r16
  2358. 415a0: 82000044 addi r8,r16,1
  2359. 415a4: 00c007c4 movi r3,31
  2360. 415a8: 1a009116 blt r3,r8,417f0 <__adddf3+0x40c>
  2361. 415ac: 00c00804 movi r3,32
  2362. 415b0: 1a07c83a sub r3,r3,r8
  2363. 415b4: 8a08d83a srl r4,r17,r8
  2364. 415b8: 88e2983a sll r17,r17,r3
  2365. 415bc: 10c6983a sll r3,r2,r3
  2366. 415c0: 1210d83a srl r8,r2,r8
  2367. 415c4: 8804c03a cmpne r2,r17,zero
  2368. 415c8: 1906b03a or r3,r3,r4
  2369. 415cc: 18a2b03a or r17,r3,r2
  2370. 415d0: 0021883a mov r16,zero
  2371. 415d4: 003fa206 br 41460 <__alt_data_end+0xfffcf460>
  2372. 415d8: 1890b03a or r8,r3,r2
  2373. 415dc: 40017d26 beq r8,zero,41bd4 <__adddf3+0x7f0>
  2374. 415e0: 1011883a mov r8,r2
  2375. 415e4: 1823883a mov r17,r3
  2376. 415e8: 888001cc andi r2,r17,7
  2377. 415ec: 103f9e1e bne r2,zero,41468 <__alt_data_end+0xfffcf468>
  2378. 415f0: 4004977a slli r2,r8,29
  2379. 415f4: 8822d0fa srli r17,r17,3
  2380. 415f8: 4010d0fa srli r8,r8,3
  2381. 415fc: 9007883a mov r3,r18
  2382. 41600: 1444b03a or r2,r2,r17
  2383. 41604: 0101ffc4 movi r4,2047
  2384. 41608: 81002426 beq r16,r4,4169c <__adddf3+0x2b8>
  2385. 4160c: 8120703a and r16,r16,r4
  2386. 41610: 01000434 movhi r4,16
  2387. 41614: 213fffc4 addi r4,r4,-1
  2388. 41618: 4110703a and r8,r8,r4
  2389. 4161c: 003fa806 br 414c0 <__alt_data_end+0xfffcf4c0>
  2390. 41620: 8089c83a sub r4,r16,r2
  2391. 41624: 01005e0e bge zero,r4,417a0 <__adddf3+0x3bc>
  2392. 41628: 10002b26 beq r2,zero,416d8 <__adddf3+0x2f4>
  2393. 4162c: 0081ffc4 movi r2,2047
  2394. 41630: 80bf8b26 beq r16,r2,41460 <__alt_data_end+0xfffcf460>
  2395. 41634: 4a402034 orhi r9,r9,128
  2396. 41638: 00800e04 movi r2,56
  2397. 4163c: 1100a40e bge r2,r4,418d0 <__adddf3+0x4ec>
  2398. 41640: 498cb03a or r6,r9,r6
  2399. 41644: 300ac03a cmpne r5,r6,zero
  2400. 41648: 0013883a mov r9,zero
  2401. 4164c: 2c4b883a add r5,r5,r17
  2402. 41650: 2c63803a cmpltu r17,r5,r17
  2403. 41654: 4a11883a add r8,r9,r8
  2404. 41658: 8a11883a add r8,r17,r8
  2405. 4165c: 2823883a mov r17,r5
  2406. 41660: 4080202c andhi r2,r8,128
  2407. 41664: 103fe026 beq r2,zero,415e8 <__alt_data_end+0xfffcf5e8>
  2408. 41668: 84000044 addi r16,r16,1
  2409. 4166c: 0081ffc4 movi r2,2047
  2410. 41670: 8080d226 beq r16,r2,419bc <__adddf3+0x5d8>
  2411. 41674: 00bfe034 movhi r2,65408
  2412. 41678: 10bfffc4 addi r2,r2,-1
  2413. 4167c: 4090703a and r8,r8,r2
  2414. 41680: 880ad07a srli r5,r17,1
  2415. 41684: 400897fa slli r4,r8,31
  2416. 41688: 88c0004c andi r3,r17,1
  2417. 4168c: 28e2b03a or r17,r5,r3
  2418. 41690: 4010d07a srli r8,r8,1
  2419. 41694: 2462b03a or r17,r4,r17
  2420. 41698: 003f7106 br 41460 <__alt_data_end+0xfffcf460>
  2421. 4169c: 4088b03a or r4,r8,r2
  2422. 416a0: 20014526 beq r4,zero,41bb8 <__adddf3+0x7d4>
  2423. 416a4: 01000434 movhi r4,16
  2424. 416a8: 42000234 orhi r8,r8,8
  2425. 416ac: 213fffc4 addi r4,r4,-1
  2426. 416b0: 4110703a and r8,r8,r4
  2427. 416b4: 003f8206 br 414c0 <__alt_data_end+0xfffcf4c0>
  2428. 416b8: 18ffffc4 addi r3,r3,-1
  2429. 416bc: 1800491e bne r3,zero,417e4 <__adddf3+0x400>
  2430. 416c0: 898bc83a sub r5,r17,r6
  2431. 416c4: 8963803a cmpltu r17,r17,r5
  2432. 416c8: 4251c83a sub r8,r8,r9
  2433. 416cc: 4451c83a sub r8,r8,r17
  2434. 416d0: 2823883a mov r17,r5
  2435. 416d4: 003f9f06 br 41554 <__alt_data_end+0xfffcf554>
  2436. 416d8: 4984b03a or r2,r9,r6
  2437. 416dc: 103f6026 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
  2438. 416e0: 213fffc4 addi r4,r4,-1
  2439. 416e4: 2000931e bne r4,zero,41934 <__adddf3+0x550>
  2440. 416e8: 898d883a add r6,r17,r6
  2441. 416ec: 3463803a cmpltu r17,r6,r17
  2442. 416f0: 4251883a add r8,r8,r9
  2443. 416f4: 8a11883a add r8,r17,r8
  2444. 416f8: 3023883a mov r17,r6
  2445. 416fc: 003fd806 br 41660 <__alt_data_end+0xfffcf660>
  2446. 41700: 1800541e bne r3,zero,41854 <__adddf3+0x470>
  2447. 41704: 80800044 addi r2,r16,1
  2448. 41708: 1081ffcc andi r2,r2,2047
  2449. 4170c: 00c00044 movi r3,1
  2450. 41710: 1880a00e bge r3,r2,41994 <__adddf3+0x5b0>
  2451. 41714: 8989c83a sub r4,r17,r6
  2452. 41718: 8905803a cmpltu r2,r17,r4
  2453. 4171c: 4267c83a sub r19,r8,r9
  2454. 41720: 98a7c83a sub r19,r19,r2
  2455. 41724: 9880202c andhi r2,r19,128
  2456. 41728: 10006326 beq r2,zero,418b8 <__adddf3+0x4d4>
  2457. 4172c: 3463c83a sub r17,r6,r17
  2458. 41730: 4a07c83a sub r3,r9,r8
  2459. 41734: 344d803a cmpltu r6,r6,r17
  2460. 41738: 19a7c83a sub r19,r3,r6
  2461. 4173c: 3825883a mov r18,r7
  2462. 41740: 983f8a1e bne r19,zero,4156c <__alt_data_end+0xfffcf56c>
  2463. 41744: 8809883a mov r4,r17
  2464. 41748: 0041efc0 call 41efc <__clzsi2>
  2465. 4174c: 10800804 addi r2,r2,32
  2466. 41750: 10fffe04 addi r3,r2,-8
  2467. 41754: 010007c4 movi r4,31
  2468. 41758: 20ff890e bge r4,r3,41580 <__alt_data_end+0xfffcf580>
  2469. 4175c: 10bff604 addi r2,r2,-40
  2470. 41760: 8884983a sll r2,r17,r2
  2471. 41764: 0023883a mov r17,zero
  2472. 41768: 1c3f8c0e bge r3,r16,4159c <__alt_data_end+0xfffcf59c>
  2473. 4176c: 023fe034 movhi r8,65408
  2474. 41770: 423fffc4 addi r8,r8,-1
  2475. 41774: 80e1c83a sub r16,r16,r3
  2476. 41778: 1210703a and r8,r2,r8
  2477. 4177c: 003f3806 br 41460 <__alt_data_end+0xfffcf460>
  2478. 41780: 9007883a mov r3,r18
  2479. 41784: 0011883a mov r8,zero
  2480. 41788: 0005883a mov r2,zero
  2481. 4178c: 003f4c06 br 414c0 <__alt_data_end+0xfffcf4c0>
  2482. 41790: 498cb03a or r6,r9,r6
  2483. 41794: 300cc03a cmpne r6,r6,zero
  2484. 41798: 0007883a mov r3,zero
  2485. 4179c: 003f6806 br 41540 <__alt_data_end+0xfffcf540>
  2486. 417a0: 20009c1e bne r4,zero,41a14 <__adddf3+0x630>
  2487. 417a4: 80800044 addi r2,r16,1
  2488. 417a8: 1141ffcc andi r5,r2,2047
  2489. 417ac: 01000044 movi r4,1
  2490. 417b0: 2140670e bge r4,r5,41950 <__adddf3+0x56c>
  2491. 417b4: 0101ffc4 movi r4,2047
  2492. 417b8: 11007f26 beq r2,r4,419b8 <__adddf3+0x5d4>
  2493. 417bc: 898d883a add r6,r17,r6
  2494. 417c0: 4247883a add r3,r8,r9
  2495. 417c4: 3451803a cmpltu r8,r6,r17
  2496. 417c8: 40d1883a add r8,r8,r3
  2497. 417cc: 402297fa slli r17,r8,31
  2498. 417d0: 300cd07a srli r6,r6,1
  2499. 417d4: 4010d07a srli r8,r8,1
  2500. 417d8: 1021883a mov r16,r2
  2501. 417dc: 89a2b03a or r17,r17,r6
  2502. 417e0: 003f1f06 br 41460 <__alt_data_end+0xfffcf460>
  2503. 417e4: 0081ffc4 movi r2,2047
  2504. 417e8: 80bf481e bne r16,r2,4150c <__alt_data_end+0xfffcf50c>
  2505. 417ec: 003f1c06 br 41460 <__alt_data_end+0xfffcf460>
  2506. 417f0: 843ff844 addi r16,r16,-31
  2507. 417f4: 01000804 movi r4,32
  2508. 417f8: 1406d83a srl r3,r2,r16
  2509. 417fc: 41005026 beq r8,r4,41940 <__adddf3+0x55c>
  2510. 41800: 01001004 movi r4,64
  2511. 41804: 2211c83a sub r8,r4,r8
  2512. 41808: 1204983a sll r2,r2,r8
  2513. 4180c: 88a2b03a or r17,r17,r2
  2514. 41810: 8822c03a cmpne r17,r17,zero
  2515. 41814: 1c62b03a or r17,r3,r17
  2516. 41818: 0011883a mov r8,zero
  2517. 4181c: 0021883a mov r16,zero
  2518. 41820: 003f7106 br 415e8 <__alt_data_end+0xfffcf5e8>
  2519. 41824: 193ff804 addi r4,r3,-32
  2520. 41828: 00800804 movi r2,32
  2521. 4182c: 4908d83a srl r4,r9,r4
  2522. 41830: 18804526 beq r3,r2,41948 <__adddf3+0x564>
  2523. 41834: 00801004 movi r2,64
  2524. 41838: 10c5c83a sub r2,r2,r3
  2525. 4183c: 4886983a sll r3,r9,r2
  2526. 41840: 198cb03a or r6,r3,r6
  2527. 41844: 300cc03a cmpne r6,r6,zero
  2528. 41848: 218cb03a or r6,r4,r6
  2529. 4184c: 0007883a mov r3,zero
  2530. 41850: 003f3b06 br 41540 <__alt_data_end+0xfffcf540>
  2531. 41854: 80002a26 beq r16,zero,41900 <__adddf3+0x51c>
  2532. 41858: 0101ffc4 movi r4,2047
  2533. 4185c: 11006826 beq r2,r4,41a00 <__adddf3+0x61c>
  2534. 41860: 00c7c83a sub r3,zero,r3
  2535. 41864: 42002034 orhi r8,r8,128
  2536. 41868: 01000e04 movi r4,56
  2537. 4186c: 20c07c16 blt r4,r3,41a60 <__adddf3+0x67c>
  2538. 41870: 010007c4 movi r4,31
  2539. 41874: 20c0da16 blt r4,r3,41be0 <__adddf3+0x7fc>
  2540. 41878: 01000804 movi r4,32
  2541. 4187c: 20c9c83a sub r4,r4,r3
  2542. 41880: 4114983a sll r10,r8,r4
  2543. 41884: 88cad83a srl r5,r17,r3
  2544. 41888: 8908983a sll r4,r17,r4
  2545. 4188c: 40c6d83a srl r3,r8,r3
  2546. 41890: 5162b03a or r17,r10,r5
  2547. 41894: 2008c03a cmpne r4,r4,zero
  2548. 41898: 8922b03a or r17,r17,r4
  2549. 4189c: 3463c83a sub r17,r6,r17
  2550. 418a0: 48c7c83a sub r3,r9,r3
  2551. 418a4: 344d803a cmpltu r6,r6,r17
  2552. 418a8: 1991c83a sub r8,r3,r6
  2553. 418ac: 1021883a mov r16,r2
  2554. 418b0: 3825883a mov r18,r7
  2555. 418b4: 003f2706 br 41554 <__alt_data_end+0xfffcf554>
  2556. 418b8: 24d0b03a or r8,r4,r19
  2557. 418bc: 40001b1e bne r8,zero,4192c <__adddf3+0x548>
  2558. 418c0: 0005883a mov r2,zero
  2559. 418c4: 0007883a mov r3,zero
  2560. 418c8: 0021883a mov r16,zero
  2561. 418cc: 003f4d06 br 41604 <__alt_data_end+0xfffcf604>
  2562. 418d0: 008007c4 movi r2,31
  2563. 418d4: 11003c16 blt r2,r4,419c8 <__adddf3+0x5e4>
  2564. 418d8: 00800804 movi r2,32
  2565. 418dc: 1105c83a sub r2,r2,r4
  2566. 418e0: 488e983a sll r7,r9,r2
  2567. 418e4: 310ad83a srl r5,r6,r4
  2568. 418e8: 3084983a sll r2,r6,r2
  2569. 418ec: 4912d83a srl r9,r9,r4
  2570. 418f0: 394ab03a or r5,r7,r5
  2571. 418f4: 1004c03a cmpne r2,r2,zero
  2572. 418f8: 288ab03a or r5,r5,r2
  2573. 418fc: 003f5306 br 4164c <__alt_data_end+0xfffcf64c>
  2574. 41900: 4448b03a or r4,r8,r17
  2575. 41904: 20003e26 beq r4,zero,41a00 <__adddf3+0x61c>
  2576. 41908: 00c6303a nor r3,zero,r3
  2577. 4190c: 18003a1e bne r3,zero,419f8 <__adddf3+0x614>
  2578. 41910: 3463c83a sub r17,r6,r17
  2579. 41914: 4a07c83a sub r3,r9,r8
  2580. 41918: 344d803a cmpltu r6,r6,r17
  2581. 4191c: 1991c83a sub r8,r3,r6
  2582. 41920: 1021883a mov r16,r2
  2583. 41924: 3825883a mov r18,r7
  2584. 41928: 003f0a06 br 41554 <__alt_data_end+0xfffcf554>
  2585. 4192c: 2023883a mov r17,r4
  2586. 41930: 003f0d06 br 41568 <__alt_data_end+0xfffcf568>
  2587. 41934: 0081ffc4 movi r2,2047
  2588. 41938: 80bf3f1e bne r16,r2,41638 <__alt_data_end+0xfffcf638>
  2589. 4193c: 003ec806 br 41460 <__alt_data_end+0xfffcf460>
  2590. 41940: 0005883a mov r2,zero
  2591. 41944: 003fb106 br 4180c <__alt_data_end+0xfffcf80c>
  2592. 41948: 0007883a mov r3,zero
  2593. 4194c: 003fbc06 br 41840 <__alt_data_end+0xfffcf840>
  2594. 41950: 4444b03a or r2,r8,r17
  2595. 41954: 8000871e bne r16,zero,41b74 <__adddf3+0x790>
  2596. 41958: 1000ba26 beq r2,zero,41c44 <__adddf3+0x860>
  2597. 4195c: 4984b03a or r2,r9,r6
  2598. 41960: 103ebf26 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
  2599. 41964: 8985883a add r2,r17,r6
  2600. 41968: 4247883a add r3,r8,r9
  2601. 4196c: 1451803a cmpltu r8,r2,r17
  2602. 41970: 40d1883a add r8,r8,r3
  2603. 41974: 40c0202c andhi r3,r8,128
  2604. 41978: 1023883a mov r17,r2
  2605. 4197c: 183f1a26 beq r3,zero,415e8 <__alt_data_end+0xfffcf5e8>
  2606. 41980: 00bfe034 movhi r2,65408
  2607. 41984: 10bfffc4 addi r2,r2,-1
  2608. 41988: 2021883a mov r16,r4
  2609. 4198c: 4090703a and r8,r8,r2
  2610. 41990: 003eb306 br 41460 <__alt_data_end+0xfffcf460>
  2611. 41994: 4444b03a or r2,r8,r17
  2612. 41998: 8000291e bne r16,zero,41a40 <__adddf3+0x65c>
  2613. 4199c: 10004b1e bne r2,zero,41acc <__adddf3+0x6e8>
  2614. 419a0: 4990b03a or r8,r9,r6
  2615. 419a4: 40008b26 beq r8,zero,41bd4 <__adddf3+0x7f0>
  2616. 419a8: 4811883a mov r8,r9
  2617. 419ac: 3023883a mov r17,r6
  2618. 419b0: 3825883a mov r18,r7
  2619. 419b4: 003eaa06 br 41460 <__alt_data_end+0xfffcf460>
  2620. 419b8: 1021883a mov r16,r2
  2621. 419bc: 0011883a mov r8,zero
  2622. 419c0: 0005883a mov r2,zero
  2623. 419c4: 003f0f06 br 41604 <__alt_data_end+0xfffcf604>
  2624. 419c8: 217ff804 addi r5,r4,-32
  2625. 419cc: 00800804 movi r2,32
  2626. 419d0: 494ad83a srl r5,r9,r5
  2627. 419d4: 20807d26 beq r4,r2,41bcc <__adddf3+0x7e8>
  2628. 419d8: 00801004 movi r2,64
  2629. 419dc: 1109c83a sub r4,r2,r4
  2630. 419e0: 4912983a sll r9,r9,r4
  2631. 419e4: 498cb03a or r6,r9,r6
  2632. 419e8: 300cc03a cmpne r6,r6,zero
  2633. 419ec: 298ab03a or r5,r5,r6
  2634. 419f0: 0013883a mov r9,zero
  2635. 419f4: 003f1506 br 4164c <__alt_data_end+0xfffcf64c>
  2636. 419f8: 0101ffc4 movi r4,2047
  2637. 419fc: 113f9a1e bne r2,r4,41868 <__alt_data_end+0xfffcf868>
  2638. 41a00: 4811883a mov r8,r9
  2639. 41a04: 3023883a mov r17,r6
  2640. 41a08: 1021883a mov r16,r2
  2641. 41a0c: 3825883a mov r18,r7
  2642. 41a10: 003e9306 br 41460 <__alt_data_end+0xfffcf460>
  2643. 41a14: 8000161e bne r16,zero,41a70 <__adddf3+0x68c>
  2644. 41a18: 444ab03a or r5,r8,r17
  2645. 41a1c: 28005126 beq r5,zero,41b64 <__adddf3+0x780>
  2646. 41a20: 0108303a nor r4,zero,r4
  2647. 41a24: 20004d1e bne r4,zero,41b5c <__adddf3+0x778>
  2648. 41a28: 89a3883a add r17,r17,r6
  2649. 41a2c: 4253883a add r9,r8,r9
  2650. 41a30: 898d803a cmpltu r6,r17,r6
  2651. 41a34: 3251883a add r8,r6,r9
  2652. 41a38: 1021883a mov r16,r2
  2653. 41a3c: 003f0806 br 41660 <__alt_data_end+0xfffcf660>
  2654. 41a40: 1000301e bne r2,zero,41b04 <__adddf3+0x720>
  2655. 41a44: 4984b03a or r2,r9,r6
  2656. 41a48: 10007126 beq r2,zero,41c10 <__adddf3+0x82c>
  2657. 41a4c: 4811883a mov r8,r9
  2658. 41a50: 3023883a mov r17,r6
  2659. 41a54: 3825883a mov r18,r7
  2660. 41a58: 0401ffc4 movi r16,2047
  2661. 41a5c: 003e8006 br 41460 <__alt_data_end+0xfffcf460>
  2662. 41a60: 4462b03a or r17,r8,r17
  2663. 41a64: 8822c03a cmpne r17,r17,zero
  2664. 41a68: 0007883a mov r3,zero
  2665. 41a6c: 003f8b06 br 4189c <__alt_data_end+0xfffcf89c>
  2666. 41a70: 0141ffc4 movi r5,2047
  2667. 41a74: 11403b26 beq r2,r5,41b64 <__adddf3+0x780>
  2668. 41a78: 0109c83a sub r4,zero,r4
  2669. 41a7c: 42002034 orhi r8,r8,128
  2670. 41a80: 01400e04 movi r5,56
  2671. 41a84: 29006716 blt r5,r4,41c24 <__adddf3+0x840>
  2672. 41a88: 014007c4 movi r5,31
  2673. 41a8c: 29007016 blt r5,r4,41c50 <__adddf3+0x86c>
  2674. 41a90: 01400804 movi r5,32
  2675. 41a94: 290bc83a sub r5,r5,r4
  2676. 41a98: 4154983a sll r10,r8,r5
  2677. 41a9c: 890ed83a srl r7,r17,r4
  2678. 41aa0: 894a983a sll r5,r17,r5
  2679. 41aa4: 4108d83a srl r4,r8,r4
  2680. 41aa8: 51e2b03a or r17,r10,r7
  2681. 41aac: 280ac03a cmpne r5,r5,zero
  2682. 41ab0: 8962b03a or r17,r17,r5
  2683. 41ab4: 89a3883a add r17,r17,r6
  2684. 41ab8: 2253883a add r9,r4,r9
  2685. 41abc: 898d803a cmpltu r6,r17,r6
  2686. 41ac0: 3251883a add r8,r6,r9
  2687. 41ac4: 1021883a mov r16,r2
  2688. 41ac8: 003ee506 br 41660 <__alt_data_end+0xfffcf660>
  2689. 41acc: 4984b03a or r2,r9,r6
  2690. 41ad0: 103e6326 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
  2691. 41ad4: 8987c83a sub r3,r17,r6
  2692. 41ad8: 88c9803a cmpltu r4,r17,r3
  2693. 41adc: 4245c83a sub r2,r8,r9
  2694. 41ae0: 1105c83a sub r2,r2,r4
  2695. 41ae4: 1100202c andhi r4,r2,128
  2696. 41ae8: 203ebb26 beq r4,zero,415d8 <__alt_data_end+0xfffcf5d8>
  2697. 41aec: 3463c83a sub r17,r6,r17
  2698. 41af0: 4a07c83a sub r3,r9,r8
  2699. 41af4: 344d803a cmpltu r6,r6,r17
  2700. 41af8: 1991c83a sub r8,r3,r6
  2701. 41afc: 3825883a mov r18,r7
  2702. 41b00: 003e5706 br 41460 <__alt_data_end+0xfffcf460>
  2703. 41b04: 4984b03a or r2,r9,r6
  2704. 41b08: 10002e26 beq r2,zero,41bc4 <__adddf3+0x7e0>
  2705. 41b0c: 4004d0fa srli r2,r8,3
  2706. 41b10: 8822d0fa srli r17,r17,3
  2707. 41b14: 4010977a slli r8,r8,29
  2708. 41b18: 10c0022c andhi r3,r2,8
  2709. 41b1c: 4462b03a or r17,r8,r17
  2710. 41b20: 18000826 beq r3,zero,41b44 <__adddf3+0x760>
  2711. 41b24: 4808d0fa srli r4,r9,3
  2712. 41b28: 20c0022c andhi r3,r4,8
  2713. 41b2c: 1800051e bne r3,zero,41b44 <__adddf3+0x760>
  2714. 41b30: 300cd0fa srli r6,r6,3
  2715. 41b34: 4806977a slli r3,r9,29
  2716. 41b38: 2005883a mov r2,r4
  2717. 41b3c: 3825883a mov r18,r7
  2718. 41b40: 19a2b03a or r17,r3,r6
  2719. 41b44: 8810d77a srli r8,r17,29
  2720. 41b48: 100490fa slli r2,r2,3
  2721. 41b4c: 882290fa slli r17,r17,3
  2722. 41b50: 0401ffc4 movi r16,2047
  2723. 41b54: 4090b03a or r8,r8,r2
  2724. 41b58: 003e4106 br 41460 <__alt_data_end+0xfffcf460>
  2725. 41b5c: 0141ffc4 movi r5,2047
  2726. 41b60: 117fc71e bne r2,r5,41a80 <__alt_data_end+0xfffcfa80>
  2727. 41b64: 4811883a mov r8,r9
  2728. 41b68: 3023883a mov r17,r6
  2729. 41b6c: 1021883a mov r16,r2
  2730. 41b70: 003e3b06 br 41460 <__alt_data_end+0xfffcf460>
  2731. 41b74: 10002f26 beq r2,zero,41c34 <__adddf3+0x850>
  2732. 41b78: 4984b03a or r2,r9,r6
  2733. 41b7c: 10001126 beq r2,zero,41bc4 <__adddf3+0x7e0>
  2734. 41b80: 4004d0fa srli r2,r8,3
  2735. 41b84: 8822d0fa srli r17,r17,3
  2736. 41b88: 4010977a slli r8,r8,29
  2737. 41b8c: 10c0022c andhi r3,r2,8
  2738. 41b90: 4462b03a or r17,r8,r17
  2739. 41b94: 183feb26 beq r3,zero,41b44 <__alt_data_end+0xfffcfb44>
  2740. 41b98: 4808d0fa srli r4,r9,3
  2741. 41b9c: 20c0022c andhi r3,r4,8
  2742. 41ba0: 183fe81e bne r3,zero,41b44 <__alt_data_end+0xfffcfb44>
  2743. 41ba4: 300cd0fa srli r6,r6,3
  2744. 41ba8: 4806977a slli r3,r9,29
  2745. 41bac: 2005883a mov r2,r4
  2746. 41bb0: 19a2b03a or r17,r3,r6
  2747. 41bb4: 003fe306 br 41b44 <__alt_data_end+0xfffcfb44>
  2748. 41bb8: 0011883a mov r8,zero
  2749. 41bbc: 0005883a mov r2,zero
  2750. 41bc0: 003e3f06 br 414c0 <__alt_data_end+0xfffcf4c0>
  2751. 41bc4: 0401ffc4 movi r16,2047
  2752. 41bc8: 003e2506 br 41460 <__alt_data_end+0xfffcf460>
  2753. 41bcc: 0013883a mov r9,zero
  2754. 41bd0: 003f8406 br 419e4 <__alt_data_end+0xfffcf9e4>
  2755. 41bd4: 0005883a mov r2,zero
  2756. 41bd8: 0007883a mov r3,zero
  2757. 41bdc: 003e8906 br 41604 <__alt_data_end+0xfffcf604>
  2758. 41be0: 197ff804 addi r5,r3,-32
  2759. 41be4: 01000804 movi r4,32
  2760. 41be8: 414ad83a srl r5,r8,r5
  2761. 41bec: 19002426 beq r3,r4,41c80 <__adddf3+0x89c>
  2762. 41bf0: 01001004 movi r4,64
  2763. 41bf4: 20c7c83a sub r3,r4,r3
  2764. 41bf8: 40c6983a sll r3,r8,r3
  2765. 41bfc: 1c46b03a or r3,r3,r17
  2766. 41c00: 1806c03a cmpne r3,r3,zero
  2767. 41c04: 28e2b03a or r17,r5,r3
  2768. 41c08: 0007883a mov r3,zero
  2769. 41c0c: 003f2306 br 4189c <__alt_data_end+0xfffcf89c>
  2770. 41c10: 0007883a mov r3,zero
  2771. 41c14: 5811883a mov r8,r11
  2772. 41c18: 00bfffc4 movi r2,-1
  2773. 41c1c: 0401ffc4 movi r16,2047
  2774. 41c20: 003e7806 br 41604 <__alt_data_end+0xfffcf604>
  2775. 41c24: 4462b03a or r17,r8,r17
  2776. 41c28: 8822c03a cmpne r17,r17,zero
  2777. 41c2c: 0009883a mov r4,zero
  2778. 41c30: 003fa006 br 41ab4 <__alt_data_end+0xfffcfab4>
  2779. 41c34: 4811883a mov r8,r9
  2780. 41c38: 3023883a mov r17,r6
  2781. 41c3c: 0401ffc4 movi r16,2047
  2782. 41c40: 003e0706 br 41460 <__alt_data_end+0xfffcf460>
  2783. 41c44: 4811883a mov r8,r9
  2784. 41c48: 3023883a mov r17,r6
  2785. 41c4c: 003e0406 br 41460 <__alt_data_end+0xfffcf460>
  2786. 41c50: 21fff804 addi r7,r4,-32
  2787. 41c54: 01400804 movi r5,32
  2788. 41c58: 41ced83a srl r7,r8,r7
  2789. 41c5c: 21400a26 beq r4,r5,41c88 <__adddf3+0x8a4>
  2790. 41c60: 01401004 movi r5,64
  2791. 41c64: 2909c83a sub r4,r5,r4
  2792. 41c68: 4108983a sll r4,r8,r4
  2793. 41c6c: 2448b03a or r4,r4,r17
  2794. 41c70: 2008c03a cmpne r4,r4,zero
  2795. 41c74: 3922b03a or r17,r7,r4
  2796. 41c78: 0009883a mov r4,zero
  2797. 41c7c: 003f8d06 br 41ab4 <__alt_data_end+0xfffcfab4>
  2798. 41c80: 0007883a mov r3,zero
  2799. 41c84: 003fdd06 br 41bfc <__alt_data_end+0xfffcfbfc>
  2800. 41c88: 0009883a mov r4,zero
  2801. 41c8c: 003ff706 br 41c6c <__alt_data_end+0xfffcfc6c>
  2802. 00041c90 <__fixdfsi>:
  2803. 41c90: 280cd53a srli r6,r5,20
  2804. 41c94: 00c00434 movhi r3,16
  2805. 41c98: 18ffffc4 addi r3,r3,-1
  2806. 41c9c: 3181ffcc andi r6,r6,2047
  2807. 41ca0: 01c0ff84 movi r7,1022
  2808. 41ca4: 28c6703a and r3,r5,r3
  2809. 41ca8: 280ad7fa srli r5,r5,31
  2810. 41cac: 3980120e bge r7,r6,41cf8 <__fixdfsi+0x68>
  2811. 41cb0: 00810744 movi r2,1053
  2812. 41cb4: 11800c16 blt r2,r6,41ce8 <__fixdfsi+0x58>
  2813. 41cb8: 00810cc4 movi r2,1075
  2814. 41cbc: 1185c83a sub r2,r2,r6
  2815. 41cc0: 01c007c4 movi r7,31
  2816. 41cc4: 18c00434 orhi r3,r3,16
  2817. 41cc8: 38800d16 blt r7,r2,41d00 <__fixdfsi+0x70>
  2818. 41ccc: 31befb44 addi r6,r6,-1043
  2819. 41cd0: 2084d83a srl r2,r4,r2
  2820. 41cd4: 1986983a sll r3,r3,r6
  2821. 41cd8: 1884b03a or r2,r3,r2
  2822. 41cdc: 28000726 beq r5,zero,41cfc <__fixdfsi+0x6c>
  2823. 41ce0: 0085c83a sub r2,zero,r2
  2824. 41ce4: f800283a ret
  2825. 41ce8: 00a00034 movhi r2,32768
  2826. 41cec: 10bfffc4 addi r2,r2,-1
  2827. 41cf0: 2885883a add r2,r5,r2
  2828. 41cf4: f800283a ret
  2829. 41cf8: 0005883a mov r2,zero
  2830. 41cfc: f800283a ret
  2831. 41d00: 008104c4 movi r2,1043
  2832. 41d04: 1185c83a sub r2,r2,r6
  2833. 41d08: 1884d83a srl r2,r3,r2
  2834. 41d0c: 003ff306 br 41cdc <__alt_data_end+0xfffcfcdc>
  2835. 00041d10 <__floatsidf>:
  2836. 41d10: defffd04 addi sp,sp,-12
  2837. 41d14: dfc00215 stw ra,8(sp)
  2838. 41d18: dc400115 stw r17,4(sp)
  2839. 41d1c: dc000015 stw r16,0(sp)
  2840. 41d20: 20002b26 beq r4,zero,41dd0 <__floatsidf+0xc0>
  2841. 41d24: 2023883a mov r17,r4
  2842. 41d28: 2020d7fa srli r16,r4,31
  2843. 41d2c: 20002d16 blt r4,zero,41de4 <__floatsidf+0xd4>
  2844. 41d30: 8809883a mov r4,r17
  2845. 41d34: 0041efc0 call 41efc <__clzsi2>
  2846. 41d38: 01410784 movi r5,1054
  2847. 41d3c: 288bc83a sub r5,r5,r2
  2848. 41d40: 01010cc4 movi r4,1075
  2849. 41d44: 2149c83a sub r4,r4,r5
  2850. 41d48: 00c007c4 movi r3,31
  2851. 41d4c: 1900160e bge r3,r4,41da8 <__floatsidf+0x98>
  2852. 41d50: 00c104c4 movi r3,1043
  2853. 41d54: 1947c83a sub r3,r3,r5
  2854. 41d58: 88c6983a sll r3,r17,r3
  2855. 41d5c: 00800434 movhi r2,16
  2856. 41d60: 10bfffc4 addi r2,r2,-1
  2857. 41d64: 1886703a and r3,r3,r2
  2858. 41d68: 2941ffcc andi r5,r5,2047
  2859. 41d6c: 800d883a mov r6,r16
  2860. 41d70: 0005883a mov r2,zero
  2861. 41d74: 280a953a slli r5,r5,20
  2862. 41d78: 31803fcc andi r6,r6,255
  2863. 41d7c: 01000434 movhi r4,16
  2864. 41d80: 300c97fa slli r6,r6,31
  2865. 41d84: 213fffc4 addi r4,r4,-1
  2866. 41d88: 1906703a and r3,r3,r4
  2867. 41d8c: 1946b03a or r3,r3,r5
  2868. 41d90: 1986b03a or r3,r3,r6
  2869. 41d94: dfc00217 ldw ra,8(sp)
  2870. 41d98: dc400117 ldw r17,4(sp)
  2871. 41d9c: dc000017 ldw r16,0(sp)
  2872. 41da0: dec00304 addi sp,sp,12
  2873. 41da4: f800283a ret
  2874. 41da8: 00c002c4 movi r3,11
  2875. 41dac: 1887c83a sub r3,r3,r2
  2876. 41db0: 88c6d83a srl r3,r17,r3
  2877. 41db4: 8904983a sll r2,r17,r4
  2878. 41db8: 01000434 movhi r4,16
  2879. 41dbc: 213fffc4 addi r4,r4,-1
  2880. 41dc0: 2941ffcc andi r5,r5,2047
  2881. 41dc4: 1906703a and r3,r3,r4
  2882. 41dc8: 800d883a mov r6,r16
  2883. 41dcc: 003fe906 br 41d74 <__alt_data_end+0xfffcfd74>
  2884. 41dd0: 000d883a mov r6,zero
  2885. 41dd4: 000b883a mov r5,zero
  2886. 41dd8: 0007883a mov r3,zero
  2887. 41ddc: 0005883a mov r2,zero
  2888. 41de0: 003fe406 br 41d74 <__alt_data_end+0xfffcfd74>
  2889. 41de4: 0123c83a sub r17,zero,r4
  2890. 41de8: 003fd106 br 41d30 <__alt_data_end+0xfffcfd30>
  2891. 00041dec <__extendsfdf2>:
  2892. 41dec: 200ad5fa srli r5,r4,23
  2893. 41df0: defffd04 addi sp,sp,-12
  2894. 41df4: dc400115 stw r17,4(sp)
  2895. 41df8: 29403fcc andi r5,r5,255
  2896. 41dfc: 29800044 addi r6,r5,1
  2897. 41e00: 04402034 movhi r17,128
  2898. 41e04: dc000015 stw r16,0(sp)
  2899. 41e08: 8c7fffc4 addi r17,r17,-1
  2900. 41e0c: dfc00215 stw ra,8(sp)
  2901. 41e10: 31803fcc andi r6,r6,255
  2902. 41e14: 00800044 movi r2,1
  2903. 41e18: 8922703a and r17,r17,r4
  2904. 41e1c: 2020d7fa srli r16,r4,31
  2905. 41e20: 1180110e bge r2,r6,41e68 <__extendsfdf2+0x7c>
  2906. 41e24: 880cd0fa srli r6,r17,3
  2907. 41e28: 8822977a slli r17,r17,29
  2908. 41e2c: 2940e004 addi r5,r5,896
  2909. 41e30: 2941ffcc andi r5,r5,2047
  2910. 41e34: 2804953a slli r2,r5,20
  2911. 41e38: 01400434 movhi r5,16
  2912. 41e3c: 800697fa slli r3,r16,31
  2913. 41e40: 297fffc4 addi r5,r5,-1
  2914. 41e44: 314a703a and r5,r6,r5
  2915. 41e48: 288ab03a or r5,r5,r2
  2916. 41e4c: 28c6b03a or r3,r5,r3
  2917. 41e50: 8805883a mov r2,r17
  2918. 41e54: dfc00217 ldw ra,8(sp)
  2919. 41e58: dc400117 ldw r17,4(sp)
  2920. 41e5c: dc000017 ldw r16,0(sp)
  2921. 41e60: dec00304 addi sp,sp,12
  2922. 41e64: f800283a ret
  2923. 41e68: 2800111e bne r5,zero,41eb0 <__extendsfdf2+0xc4>
  2924. 41e6c: 88001c26 beq r17,zero,41ee0 <__extendsfdf2+0xf4>
  2925. 41e70: 8809883a mov r4,r17
  2926. 41e74: 0041efc0 call 41efc <__clzsi2>
  2927. 41e78: 00c00284 movi r3,10
  2928. 41e7c: 18801b16 blt r3,r2,41eec <__extendsfdf2+0x100>
  2929. 41e80: 018002c4 movi r6,11
  2930. 41e84: 308dc83a sub r6,r6,r2
  2931. 41e88: 11000544 addi r4,r2,21
  2932. 41e8c: 8986d83a srl r3,r17,r6
  2933. 41e90: 8922983a sll r17,r17,r4
  2934. 41e94: 0180e244 movi r6,905
  2935. 41e98: 01400434 movhi r5,16
  2936. 41e9c: 3085c83a sub r2,r6,r2
  2937. 41ea0: 297fffc4 addi r5,r5,-1
  2938. 41ea4: 194c703a and r6,r3,r5
  2939. 41ea8: 1141ffcc andi r5,r2,2047
  2940. 41eac: 003fe006 br 41e30 <__alt_data_end+0xfffcfe30>
  2941. 41eb0: 88000826 beq r17,zero,41ed4 <__extendsfdf2+0xe8>
  2942. 41eb4: 880cd0fa srli r6,r17,3
  2943. 41eb8: 00800434 movhi r2,16
  2944. 41ebc: 10bfffc4 addi r2,r2,-1
  2945. 41ec0: 31800234 orhi r6,r6,8
  2946. 41ec4: 8822977a slli r17,r17,29
  2947. 41ec8: 308c703a and r6,r6,r2
  2948. 41ecc: 0141ffc4 movi r5,2047
  2949. 41ed0: 003fd706 br 41e30 <__alt_data_end+0xfffcfe30>
  2950. 41ed4: 0141ffc4 movi r5,2047
  2951. 41ed8: 000d883a mov r6,zero
  2952. 41edc: 003fd406 br 41e30 <__alt_data_end+0xfffcfe30>
  2953. 41ee0: 000b883a mov r5,zero
  2954. 41ee4: 000d883a mov r6,zero
  2955. 41ee8: 003fd106 br 41e30 <__alt_data_end+0xfffcfe30>
  2956. 41eec: 11bffd44 addi r6,r2,-11
  2957. 41ef0: 8986983a sll r3,r17,r6
  2958. 41ef4: 0023883a mov r17,zero
  2959. 41ef8: 003fe606 br 41e94 <__alt_data_end+0xfffcfe94>
  2960. 00041efc <__clzsi2>:
  2961. 41efc: 00bfffd4 movui r2,65535
  2962. 41f00: 11000536 bltu r2,r4,41f18 <__clzsi2+0x1c>
  2963. 41f04: 00803fc4 movi r2,255
  2964. 41f08: 11000f36 bltu r2,r4,41f48 <__clzsi2+0x4c>
  2965. 41f0c: 00800804 movi r2,32
  2966. 41f10: 0007883a mov r3,zero
  2967. 41f14: 00000506 br 41f2c <__clzsi2+0x30>
  2968. 41f18: 00804034 movhi r2,256
  2969. 41f1c: 10bfffc4 addi r2,r2,-1
  2970. 41f20: 11000c2e bgeu r2,r4,41f54 <__clzsi2+0x58>
  2971. 41f24: 00800204 movi r2,8
  2972. 41f28: 00c00604 movi r3,24
  2973. 41f2c: 20c8d83a srl r4,r4,r3
  2974. 41f30: 00c00174 movhi r3,5
  2975. 41f34: 18c83584 addi r3,r3,8406
  2976. 41f38: 1909883a add r4,r3,r4
  2977. 41f3c: 20c00003 ldbu r3,0(r4)
  2978. 41f40: 10c5c83a sub r2,r2,r3
  2979. 41f44: f800283a ret
  2980. 41f48: 00800604 movi r2,24
  2981. 41f4c: 00c00204 movi r3,8
  2982. 41f50: 003ff606 br 41f2c <__alt_data_end+0xfffcff2c>
  2983. 41f54: 00800404 movi r2,16
  2984. 41f58: 1007883a mov r3,r2
  2985. 41f5c: 003ff306 br 41f2c <__alt_data_end+0xfffcff2c>
  2986. 00041f60 <_getc_r>:
  2987. 41f60: defffd04 addi sp,sp,-12
  2988. 41f64: dc000115 stw r16,4(sp)
  2989. 41f68: dfc00215 stw ra,8(sp)
  2990. 41f6c: 2021883a mov r16,r4
  2991. 41f70: 20000226 beq r4,zero,41f7c <_getc_r+0x1c>
  2992. 41f74: 20800e17 ldw r2,56(r4)
  2993. 41f78: 10000c26 beq r2,zero,41fac <_getc_r+0x4c>
  2994. 41f7c: 28800117 ldw r2,4(r5)
  2995. 41f80: 10bfffc4 addi r2,r2,-1
  2996. 41f84: 28800115 stw r2,4(r5)
  2997. 41f88: 10000c16 blt r2,zero,41fbc <_getc_r+0x5c>
  2998. 41f8c: 28800017 ldw r2,0(r5)
  2999. 41f90: 10c00044 addi r3,r2,1
  3000. 41f94: 28c00015 stw r3,0(r5)
  3001. 41f98: 10800003 ldbu r2,0(r2)
  3002. 41f9c: dfc00217 ldw ra,8(sp)
  3003. 41fa0: dc000117 ldw r16,4(sp)
  3004. 41fa4: dec00304 addi sp,sp,12
  3005. 41fa8: f800283a ret
  3006. 41fac: d9400015 stw r5,0(sp)
  3007. 41fb0: 004652c0 call 4652c <__sinit>
  3008. 41fb4: d9400017 ldw r5,0(sp)
  3009. 41fb8: 003ff006 br 41f7c <__alt_data_end+0xfffcff7c>
  3010. 41fbc: 8009883a mov r4,r16
  3011. 41fc0: dfc00217 ldw ra,8(sp)
  3012. 41fc4: dc000117 ldw r16,4(sp)
  3013. 41fc8: dec00304 addi sp,sp,12
  3014. 41fcc: 00420e41 jmpi 420e4 <__srget_r>
  3015. 00041fd0 <getc>:
  3016. 41fd0: 00800174 movhi r2,5
  3017. 41fd4: defffd04 addi sp,sp,-12
  3018. 41fd8: 10908b04 addi r2,r2,16940
  3019. 41fdc: dc400115 stw r17,4(sp)
  3020. 41fe0: 14400017 ldw r17,0(r2)
  3021. 41fe4: dc000015 stw r16,0(sp)
  3022. 41fe8: dfc00215 stw ra,8(sp)
  3023. 41fec: 2021883a mov r16,r4
  3024. 41ff0: 88000226 beq r17,zero,41ffc <getc+0x2c>
  3025. 41ff4: 88800e17 ldw r2,56(r17)
  3026. 41ff8: 10000d26 beq r2,zero,42030 <getc+0x60>
  3027. 41ffc: 80800117 ldw r2,4(r16)
  3028. 42000: 10bfffc4 addi r2,r2,-1
  3029. 42004: 80800115 stw r2,4(r16)
  3030. 42008: 10000c16 blt r2,zero,4203c <getc+0x6c>
  3031. 4200c: 80800017 ldw r2,0(r16)
  3032. 42010: 10c00044 addi r3,r2,1
  3033. 42014: 80c00015 stw r3,0(r16)
  3034. 42018: 10800003 ldbu r2,0(r2)
  3035. 4201c: dfc00217 ldw ra,8(sp)
  3036. 42020: dc400117 ldw r17,4(sp)
  3037. 42024: dc000017 ldw r16,0(sp)
  3038. 42028: dec00304 addi sp,sp,12
  3039. 4202c: f800283a ret
  3040. 42030: 8809883a mov r4,r17
  3041. 42034: 004652c0 call 4652c <__sinit>
  3042. 42038: 003ff006 br 41ffc <__alt_data_end+0xfffcfffc>
  3043. 4203c: 800b883a mov r5,r16
  3044. 42040: 8809883a mov r4,r17
  3045. 42044: dfc00217 ldw ra,8(sp)
  3046. 42048: dc400117 ldw r17,4(sp)
  3047. 4204c: dc000017 ldw r16,0(sp)
  3048. 42050: dec00304 addi sp,sp,12
  3049. 42054: 00420e41 jmpi 420e4 <__srget_r>
  3050. 00042058 <_printf_r>:
  3051. 42058: defffd04 addi sp,sp,-12
  3052. 4205c: 2805883a mov r2,r5
  3053. 42060: dfc00015 stw ra,0(sp)
  3054. 42064: d9800115 stw r6,4(sp)
  3055. 42068: d9c00215 stw r7,8(sp)
  3056. 4206c: 21400217 ldw r5,8(r4)
  3057. 42070: d9c00104 addi r7,sp,4
  3058. 42074: 100d883a mov r6,r2
  3059. 42078: 004216c0 call 4216c <___vfprintf_internal_r>
  3060. 4207c: dfc00017 ldw ra,0(sp)
  3061. 42080: dec00304 addi sp,sp,12
  3062. 42084: f800283a ret
  3063. 00042088 <printf>:
  3064. 42088: defffc04 addi sp,sp,-16
  3065. 4208c: dfc00015 stw ra,0(sp)
  3066. 42090: d9400115 stw r5,4(sp)
  3067. 42094: d9800215 stw r6,8(sp)
  3068. 42098: d9c00315 stw r7,12(sp)
  3069. 4209c: 00800174 movhi r2,5
  3070. 420a0: 10908b04 addi r2,r2,16940
  3071. 420a4: 10800017 ldw r2,0(r2)
  3072. 420a8: 200b883a mov r5,r4
  3073. 420ac: d9800104 addi r6,sp,4
  3074. 420b0: 11000217 ldw r4,8(r2)
  3075. 420b4: 00444480 call 44448 <__vfprintf_internal>
  3076. 420b8: dfc00017 ldw ra,0(sp)
  3077. 420bc: dec00404 addi sp,sp,16
  3078. 420c0: f800283a ret
  3079. 000420c4 <_putchar_r>:
  3080. 420c4: 21800217 ldw r6,8(r4)
  3081. 420c8: 00489e81 jmpi 489e8 <_putc_r>
  3082. 000420cc <putchar>:
  3083. 420cc: 00800174 movhi r2,5
  3084. 420d0: 10908b04 addi r2,r2,16940
  3085. 420d4: 200b883a mov r5,r4
  3086. 420d8: 11000017 ldw r4,0(r2)
  3087. 420dc: 21800217 ldw r6,8(r4)
  3088. 420e0: 00489e81 jmpi 489e8 <_putc_r>
  3089. 000420e4 <__srget_r>:
  3090. 420e4: defffd04 addi sp,sp,-12
  3091. 420e8: dc400115 stw r17,4(sp)
  3092. 420ec: dc000015 stw r16,0(sp)
  3093. 420f0: dfc00215 stw ra,8(sp)
  3094. 420f4: 2023883a mov r17,r4
  3095. 420f8: 2821883a mov r16,r5
  3096. 420fc: 20000226 beq r4,zero,42108 <__srget_r+0x24>
  3097. 42100: 20800e17 ldw r2,56(r4)
  3098. 42104: 10001026 beq r2,zero,42148 <__srget_r+0x64>
  3099. 42108: 800b883a mov r5,r16
  3100. 4210c: 8809883a mov r4,r17
  3101. 42110: 0048b6c0 call 48b6c <__srefill_r>
  3102. 42114: 10000e1e bne r2,zero,42150 <__srget_r+0x6c>
  3103. 42118: 80c00017 ldw r3,0(r16)
  3104. 4211c: 80800117 ldw r2,4(r16)
  3105. 42120: 19000044 addi r4,r3,1
  3106. 42124: 10bfffc4 addi r2,r2,-1
  3107. 42128: 80800115 stw r2,4(r16)
  3108. 4212c: 81000015 stw r4,0(r16)
  3109. 42130: 18800003 ldbu r2,0(r3)
  3110. 42134: dfc00217 ldw ra,8(sp)
  3111. 42138: dc400117 ldw r17,4(sp)
  3112. 4213c: dc000017 ldw r16,0(sp)
  3113. 42140: dec00304 addi sp,sp,12
  3114. 42144: f800283a ret
  3115. 42148: 004652c0 call 4652c <__sinit>
  3116. 4214c: 003fee06 br 42108 <__alt_data_end+0xfffd0108>
  3117. 42150: 00bfffc4 movi r2,-1
  3118. 42154: 003ff706 br 42134 <__alt_data_end+0xfffd0134>
  3119. 00042158 <__srget>:
  3120. 42158: 00800174 movhi r2,5
  3121. 4215c: 10908b04 addi r2,r2,16940
  3122. 42160: 200b883a mov r5,r4
  3123. 42164: 11000017 ldw r4,0(r2)
  3124. 42168: 00420e41 jmpi 420e4 <__srget_r>
  3125. 0004216c <___vfprintf_internal_r>:
  3126. 4216c: deffb804 addi sp,sp,-288
  3127. 42170: dfc04715 stw ra,284(sp)
  3128. 42174: ddc04515 stw r23,276(sp)
  3129. 42178: dd404315 stw r21,268(sp)
  3130. 4217c: d9002d15 stw r4,180(sp)
  3131. 42180: 282f883a mov r23,r5
  3132. 42184: 302b883a mov r21,r6
  3133. 42188: d9c02e15 stw r7,184(sp)
  3134. 4218c: df004615 stw fp,280(sp)
  3135. 42190: dd804415 stw r22,272(sp)
  3136. 42194: dd004215 stw r20,264(sp)
  3137. 42198: dcc04115 stw r19,260(sp)
  3138. 4219c: dc804015 stw r18,256(sp)
  3139. 421a0: dc403f15 stw r17,252(sp)
  3140. 421a4: dc003e15 stw r16,248(sp)
  3141. 421a8: 0046be40 call 46be4 <_localeconv_r>
  3142. 421ac: 10800017 ldw r2,0(r2)
  3143. 421b0: 1009883a mov r4,r2
  3144. 421b4: d8803415 stw r2,208(sp)
  3145. 421b8: 00490200 call 49020 <strlen>
  3146. 421bc: d8803715 stw r2,220(sp)
  3147. 421c0: d8802d17 ldw r2,180(sp)
  3148. 421c4: 10000226 beq r2,zero,421d0 <___vfprintf_internal_r+0x64>
  3149. 421c8: 10800e17 ldw r2,56(r2)
  3150. 421cc: 1000fb26 beq r2,zero,425bc <___vfprintf_internal_r+0x450>
  3151. 421d0: b880030b ldhu r2,12(r23)
  3152. 421d4: 10c8000c andi r3,r2,8192
  3153. 421d8: 1800061e bne r3,zero,421f4 <___vfprintf_internal_r+0x88>
  3154. 421dc: b9001917 ldw r4,100(r23)
  3155. 421e0: 00f7ffc4 movi r3,-8193
  3156. 421e4: 10880014 ori r2,r2,8192
  3157. 421e8: 20c6703a and r3,r4,r3
  3158. 421ec: b880030d sth r2,12(r23)
  3159. 421f0: b8c01915 stw r3,100(r23)
  3160. 421f4: 10c0020c andi r3,r2,8
  3161. 421f8: 1800c326 beq r3,zero,42508 <___vfprintf_internal_r+0x39c>
  3162. 421fc: b8c00417 ldw r3,16(r23)
  3163. 42200: 1800c126 beq r3,zero,42508 <___vfprintf_internal_r+0x39c>
  3164. 42204: 1080068c andi r2,r2,26
  3165. 42208: 00c00284 movi r3,10
  3166. 4220c: 10c0c626 beq r2,r3,42528 <___vfprintf_internal_r+0x3bc>
  3167. 42210: d8c00404 addi r3,sp,16
  3168. 42214: 05000174 movhi r20,5
  3169. 42218: d9001e04 addi r4,sp,120
  3170. 4221c: a5088784 addi r20,r20,8734
  3171. 42220: d8c01e15 stw r3,120(sp)
  3172. 42224: d8002015 stw zero,128(sp)
  3173. 42228: d8001f15 stw zero,124(sp)
  3174. 4222c: d8003315 stw zero,204(sp)
  3175. 42230: d8003615 stw zero,216(sp)
  3176. 42234: d8003815 stw zero,224(sp)
  3177. 42238: 1811883a mov r8,r3
  3178. 4223c: d8003915 stw zero,228(sp)
  3179. 42240: d8003a15 stw zero,232(sp)
  3180. 42244: d8002f15 stw zero,188(sp)
  3181. 42248: d9002815 stw r4,160(sp)
  3182. 4224c: a8800007 ldb r2,0(r21)
  3183. 42250: 10028b26 beq r2,zero,42c80 <___vfprintf_internal_r+0xb14>
  3184. 42254: 00c00944 movi r3,37
  3185. 42258: a823883a mov r17,r21
  3186. 4225c: 10c0021e bne r2,r3,42268 <___vfprintf_internal_r+0xfc>
  3187. 42260: 00001406 br 422b4 <___vfprintf_internal_r+0x148>
  3188. 42264: 10c00326 beq r2,r3,42274 <___vfprintf_internal_r+0x108>
  3189. 42268: 8c400044 addi r17,r17,1
  3190. 4226c: 88800007 ldb r2,0(r17)
  3191. 42270: 103ffc1e bne r2,zero,42264 <__alt_data_end+0xfffd0264>
  3192. 42274: 8d61c83a sub r16,r17,r21
  3193. 42278: 80000e26 beq r16,zero,422b4 <___vfprintf_internal_r+0x148>
  3194. 4227c: d8c02017 ldw r3,128(sp)
  3195. 42280: d8801f17 ldw r2,124(sp)
  3196. 42284: 45400015 stw r21,0(r8)
  3197. 42288: 1c07883a add r3,r3,r16
  3198. 4228c: 10800044 addi r2,r2,1
  3199. 42290: d8c02015 stw r3,128(sp)
  3200. 42294: 44000115 stw r16,4(r8)
  3201. 42298: d8801f15 stw r2,124(sp)
  3202. 4229c: 00c001c4 movi r3,7
  3203. 422a0: 1880a916 blt r3,r2,42548 <___vfprintf_internal_r+0x3dc>
  3204. 422a4: 42000204 addi r8,r8,8
  3205. 422a8: d9402f17 ldw r5,188(sp)
  3206. 422ac: 2c0b883a add r5,r5,r16
  3207. 422b0: d9402f15 stw r5,188(sp)
  3208. 422b4: 88800007 ldb r2,0(r17)
  3209. 422b8: 1000aa26 beq r2,zero,42564 <___vfprintf_internal_r+0x3f8>
  3210. 422bc: 8d400044 addi r21,r17,1
  3211. 422c0: 8c400047 ldb r17,1(r17)
  3212. 422c4: 0021883a mov r16,zero
  3213. 422c8: 00bfffc4 movi r2,-1
  3214. 422cc: 0025883a mov r18,zero
  3215. 422d0: dc002905 stb r16,164(sp)
  3216. 422d4: d8002785 stb zero,158(sp)
  3217. 422d8: d8002b05 stb zero,172(sp)
  3218. 422dc: d8802a15 stw r2,168(sp)
  3219. 422e0: d8003115 stw zero,196(sp)
  3220. 422e4: 04c01604 movi r19,88
  3221. 422e8: 05800244 movi r22,9
  3222. 422ec: 9021883a mov r16,r18
  3223. 422f0: 4039883a mov fp,r8
  3224. 422f4: ad400044 addi r21,r21,1
  3225. 422f8: 88bff804 addi r2,r17,-32
  3226. 422fc: 98833236 bltu r19,r2,42fc8 <___vfprintf_internal_r+0xe5c>
  3227. 42300: 100490ba slli r2,r2,2
  3228. 42304: 00c00134 movhi r3,4
  3229. 42308: 18c8c604 addi r3,r3,8984
  3230. 4230c: 10c5883a add r2,r2,r3
  3231. 42310: 10800017 ldw r2,0(r2)
  3232. 42314: 1000683a jmp r2
  3233. 42318: 00042ec0 call 42ec <__alt_mem_onchip_memory2-0x3bd14>
  3234. 4231c: 00042fc8 cmpgei zero,zero,4287
  3235. 42320: 00042fc8 cmpgei zero,zero,4287
  3236. 42324: 00042ee0 cmpeqi zero,zero,4283
  3237. 42328: 00042fc8 cmpgei zero,zero,4287
  3238. 4232c: 00042fc8 cmpgei zero,zero,4287
  3239. 42330: 00042fc8 cmpgei zero,zero,4287
  3240. 42334: 00042fc8 cmpgei zero,zero,4287
  3241. 42338: 00042fc8 cmpgei zero,zero,4287
  3242. 4233c: 00042fc8 cmpgei zero,zero,4287
  3243. 42340: 000425c8 cmpgei zero,zero,4247
  3244. 42344: 00042dd0 cmplti zero,zero,4279
  3245. 42348: 00042fc8 cmpgei zero,zero,4287
  3246. 4234c: 0004248c andi zero,zero,4242
  3247. 42350: 000425ec andhi zero,zero,4247
  3248. 42354: 00042fc8 cmpgei zero,zero,4287
  3249. 42358: 0004263c xorhi zero,zero,4248
  3250. 4235c: 00042648 cmpgei zero,zero,4249
  3251. 42360: 00042648 cmpgei zero,zero,4249
  3252. 42364: 00042648 cmpgei zero,zero,4249
  3253. 42368: 00042648 cmpgei zero,zero,4249
  3254. 4236c: 00042648 cmpgei zero,zero,4249
  3255. 42370: 00042648 cmpgei zero,zero,4249
  3256. 42374: 00042648 cmpgei zero,zero,4249
  3257. 42378: 00042648 cmpgei zero,zero,4249
  3258. 4237c: 00042648 cmpgei zero,zero,4249
  3259. 42380: 00042fc8 cmpgei zero,zero,4287
  3260. 42384: 00042fc8 cmpgei zero,zero,4287
  3261. 42388: 00042fc8 cmpgei zero,zero,4287
  3262. 4238c: 00042fc8 cmpgei zero,zero,4287
  3263. 42390: 00042fc8 cmpgei zero,zero,4287
  3264. 42394: 00042fc8 cmpgei zero,zero,4287
  3265. 42398: 00042fc8 cmpgei zero,zero,4287
  3266. 4239c: 00042fc8 cmpgei zero,zero,4287
  3267. 423a0: 00042fc8 cmpgei zero,zero,4287
  3268. 423a4: 00042fc8 cmpgei zero,zero,4287
  3269. 423a8: 00042684 movi zero,4250
  3270. 423ac: 0004274c andi zero,zero,4253
  3271. 423b0: 00042fc8 cmpgei zero,zero,4287
  3272. 423b4: 0004274c andi zero,zero,4253
  3273. 423b8: 00042fc8 cmpgei zero,zero,4287
  3274. 423bc: 00042fc8 cmpgei zero,zero,4287
  3275. 423c0: 00042fc8 cmpgei zero,zero,4287
  3276. 423c4: 00042fc8 cmpgei zero,zero,4287
  3277. 423c8: 000427f8 rdprs zero,zero,4255
  3278. 423cc: 00042fc8 cmpgei zero,zero,4287
  3279. 423d0: 00042fc8 cmpgei zero,zero,4287
  3280. 423d4: 00042804 movi zero,4256
  3281. 423d8: 00042fc8 cmpgei zero,zero,4287
  3282. 423dc: 00042fc8 cmpgei zero,zero,4287
  3283. 423e0: 00042fc8 cmpgei zero,zero,4287
  3284. 423e4: 00042fc8 cmpgei zero,zero,4287
  3285. 423e8: 00042fc8 cmpgei zero,zero,4287
  3286. 423ec: 00042c88 cmpgei zero,zero,4274
  3287. 423f0: 00042fc8 cmpgei zero,zero,4287
  3288. 423f4: 00042fc8 cmpgei zero,zero,4287
  3289. 423f8: 00042cf4 movhi zero,4275
  3290. 423fc: 00042fc8 cmpgei zero,zero,4287
  3291. 42400: 00042fc8 cmpgei zero,zero,4287
  3292. 42404: 00042fc8 cmpgei zero,zero,4287
  3293. 42408: 00042fc8 cmpgei zero,zero,4287
  3294. 4240c: 00042fc8 cmpgei zero,zero,4287
  3295. 42410: 00042fc8 cmpgei zero,zero,4287
  3296. 42414: 00042fc8 cmpgei zero,zero,4287
  3297. 42418: 00042fc8 cmpgei zero,zero,4287
  3298. 4241c: 00042fc8 cmpgei zero,zero,4287
  3299. 42420: 00042fc8 cmpgei zero,zero,4287
  3300. 42424: 00042f6c andhi zero,zero,4285
  3301. 42428: 00042eec andhi zero,zero,4283
  3302. 4242c: 0004274c andi zero,zero,4253
  3303. 42430: 0004274c andi zero,zero,4253
  3304. 42434: 0004274c andi zero,zero,4253
  3305. 42438: 00042f0c andi zero,zero,4284
  3306. 4243c: 00042eec andhi zero,zero,4283
  3307. 42440: 00042fc8 cmpgei zero,zero,4287
  3308. 42444: 00042fc8 cmpgei zero,zero,4287
  3309. 42448: 00042f18 cmpnei zero,zero,4284
  3310. 4244c: 00042fc8 cmpgei zero,zero,4287
  3311. 42450: 00042f2c andhi zero,zero,4284
  3312. 42454: 00042db0 cmpltui zero,zero,4278
  3313. 42458: 00042498 cmpnei zero,zero,4242
  3314. 4245c: 00042de8 cmpgeui zero,zero,4279
  3315. 42460: 00042fc8 cmpgei zero,zero,4287
  3316. 42464: 00042df4 movhi zero,4279
  3317. 42468: 00042fc8 cmpgei zero,zero,4287
  3318. 4246c: 00042e58 cmpnei zero,zero,4281
  3319. 42470: 00042fc8 cmpgei zero,zero,4287
  3320. 42474: 00042fc8 cmpgei zero,zero,4287
  3321. 42478: 00042e78 rdprs zero,zero,4281
  3322. 4247c: d8c03117 ldw r3,196(sp)
  3323. 42480: d8802e15 stw r2,184(sp)
  3324. 42484: 00c7c83a sub r3,zero,r3
  3325. 42488: d8c03115 stw r3,196(sp)
  3326. 4248c: 84000114 ori r16,r16,4
  3327. 42490: ac400007 ldb r17,0(r21)
  3328. 42494: 003f9706 br 422f4 <__alt_data_end+0xfffd02f4>
  3329. 42498: 00800c04 movi r2,48
  3330. 4249c: d8802705 stb r2,156(sp)
  3331. 424a0: 00801e04 movi r2,120
  3332. 424a4: d8802745 stb r2,157(sp)
  3333. 424a8: d9002a17 ldw r4,168(sp)
  3334. 424ac: d8802e17 ldw r2,184(sp)
  3335. 424b0: d8002785 stb zero,158(sp)
  3336. 424b4: e011883a mov r8,fp
  3337. 424b8: 10c00104 addi r3,r2,4
  3338. 424bc: 14c00017 ldw r19,0(r2)
  3339. 424c0: 002d883a mov r22,zero
  3340. 424c4: 80800094 ori r2,r16,2
  3341. 424c8: 2002ca16 blt r4,zero,42ff4 <___vfprintf_internal_r+0xe88>
  3342. 424cc: 00bfdfc4 movi r2,-129
  3343. 424d0: 80a4703a and r18,r16,r2
  3344. 424d4: d8c02e15 stw r3,184(sp)
  3345. 424d8: 94800094 ori r18,r18,2
  3346. 424dc: 9802b41e bne r19,zero,42fb0 <___vfprintf_internal_r+0xe44>
  3347. 424e0: 01400174 movhi r5,5
  3348. 424e4: 29488004 addi r5,r5,8704
  3349. 424e8: d9403915 stw r5,228(sp)
  3350. 424ec: 04401e04 movi r17,120
  3351. 424f0: d8802a17 ldw r2,168(sp)
  3352. 424f4: 0039883a mov fp,zero
  3353. 424f8: 1001fa26 beq r2,zero,42ce4 <___vfprintf_internal_r+0xb78>
  3354. 424fc: 0027883a mov r19,zero
  3355. 42500: 002d883a mov r22,zero
  3356. 42504: 00021906 br 42d6c <___vfprintf_internal_r+0xc00>
  3357. 42508: d9002d17 ldw r4,180(sp)
  3358. 4250c: b80b883a mov r5,r23
  3359. 42510: 00445200 call 44520 <__swsetup_r>
  3360. 42514: 1005dc1e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c>
  3361. 42518: b880030b ldhu r2,12(r23)
  3362. 4251c: 00c00284 movi r3,10
  3363. 42520: 1080068c andi r2,r2,26
  3364. 42524: 10ff3a1e bne r2,r3,42210 <__alt_data_end+0xfffd0210>
  3365. 42528: b880038f ldh r2,14(r23)
  3366. 4252c: 103f3816 blt r2,zero,42210 <__alt_data_end+0xfffd0210>
  3367. 42530: d9c02e17 ldw r7,184(sp)
  3368. 42534: d9002d17 ldw r4,180(sp)
  3369. 42538: a80d883a mov r6,r21
  3370. 4253c: b80b883a mov r5,r23
  3371. 42540: 00444640 call 44464 <__sbprintf>
  3372. 42544: 00001106 br 4258c <___vfprintf_internal_r+0x420>
  3373. 42548: d9002d17 ldw r4,180(sp)
  3374. 4254c: d9801e04 addi r6,sp,120
  3375. 42550: b80b883a mov r5,r23
  3376. 42554: 00491b40 call 491b4 <__sprint_r>
  3377. 42558: 1000081e bne r2,zero,4257c <___vfprintf_internal_r+0x410>
  3378. 4255c: da000404 addi r8,sp,16
  3379. 42560: 003f5106 br 422a8 <__alt_data_end+0xfffd02a8>
  3380. 42564: d8802017 ldw r2,128(sp)
  3381. 42568: 10000426 beq r2,zero,4257c <___vfprintf_internal_r+0x410>
  3382. 4256c: d9002d17 ldw r4,180(sp)
  3383. 42570: d9801e04 addi r6,sp,120
  3384. 42574: b80b883a mov r5,r23
  3385. 42578: 00491b40 call 491b4 <__sprint_r>
  3386. 4257c: b880030b ldhu r2,12(r23)
  3387. 42580: 1080100c andi r2,r2,64
  3388. 42584: 1005c01e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c>
  3389. 42588: d8802f17 ldw r2,188(sp)
  3390. 4258c: dfc04717 ldw ra,284(sp)
  3391. 42590: df004617 ldw fp,280(sp)
  3392. 42594: ddc04517 ldw r23,276(sp)
  3393. 42598: dd804417 ldw r22,272(sp)
  3394. 4259c: dd404317 ldw r21,268(sp)
  3395. 425a0: dd004217 ldw r20,264(sp)
  3396. 425a4: dcc04117 ldw r19,260(sp)
  3397. 425a8: dc804017 ldw r18,256(sp)
  3398. 425ac: dc403f17 ldw r17,252(sp)
  3399. 425b0: dc003e17 ldw r16,248(sp)
  3400. 425b4: dec04804 addi sp,sp,288
  3401. 425b8: f800283a ret
  3402. 425bc: d9002d17 ldw r4,180(sp)
  3403. 425c0: 004652c0 call 4652c <__sinit>
  3404. 425c4: 003f0206 br 421d0 <__alt_data_end+0xfffd01d0>
  3405. 425c8: d9002e17 ldw r4,184(sp)
  3406. 425cc: d9402e17 ldw r5,184(sp)
  3407. 425d0: 21000017 ldw r4,0(r4)
  3408. 425d4: 28800104 addi r2,r5,4
  3409. 425d8: d9003115 stw r4,196(sp)
  3410. 425dc: 203fa716 blt r4,zero,4247c <__alt_data_end+0xfffd047c>
  3411. 425e0: d8802e15 stw r2,184(sp)
  3412. 425e4: ac400007 ldb r17,0(r21)
  3413. 425e8: 003f4206 br 422f4 <__alt_data_end+0xfffd02f4>
  3414. 425ec: ac400007 ldb r17,0(r21)
  3415. 425f0: 01000a84 movi r4,42
  3416. 425f4: a8c00044 addi r3,r21,1
  3417. 425f8: 89075826 beq r17,r4,4435c <___vfprintf_internal_r+0x21f0>
  3418. 425fc: 8cbff404 addi r18,r17,-48
  3419. 42600: b486ae36 bltu r22,r18,440bc <___vfprintf_internal_r+0x1f50>
  3420. 42604: 0009883a mov r4,zero
  3421. 42608: 1823883a mov r17,r3
  3422. 4260c: 01400284 movi r5,10
  3423. 42610: 004c9f80 call 4c9f8 <__mulsi3>
  3424. 42614: 88c00007 ldb r3,0(r17)
  3425. 42618: 1489883a add r4,r2,r18
  3426. 4261c: 8d400044 addi r21,r17,1
  3427. 42620: 1cbff404 addi r18,r3,-48
  3428. 42624: a823883a mov r17,r21
  3429. 42628: b4bff82e bgeu r22,r18,4260c <__alt_data_end+0xfffd060c>
  3430. 4262c: 1823883a mov r17,r3
  3431. 42630: 2005f616 blt r4,zero,43e0c <___vfprintf_internal_r+0x1ca0>
  3432. 42634: d9002a15 stw r4,168(sp)
  3433. 42638: 003f2f06 br 422f8 <__alt_data_end+0xfffd02f8>
  3434. 4263c: 84002014 ori r16,r16,128
  3435. 42640: ac400007 ldb r17,0(r21)
  3436. 42644: 003f2b06 br 422f4 <__alt_data_end+0xfffd02f4>
  3437. 42648: 8cbff404 addi r18,r17,-48
  3438. 4264c: d8003115 stw zero,196(sp)
  3439. 42650: 0009883a mov r4,zero
  3440. 42654: a823883a mov r17,r21
  3441. 42658: 01400284 movi r5,10
  3442. 4265c: 004c9f80 call 4c9f8 <__mulsi3>
  3443. 42660: 88c00007 ldb r3,0(r17)
  3444. 42664: 9089883a add r4,r18,r2
  3445. 42668: ad400044 addi r21,r21,1
  3446. 4266c: 1cbff404 addi r18,r3,-48
  3447. 42670: a823883a mov r17,r21
  3448. 42674: b4bff82e bgeu r22,r18,42658 <__alt_data_end+0xfffd0658>
  3449. 42678: 1823883a mov r17,r3
  3450. 4267c: d9003115 stw r4,196(sp)
  3451. 42680: 003f1d06 br 422f8 <__alt_data_end+0xfffd02f8>
  3452. 42684: 8025883a mov r18,r16
  3453. 42688: dc002903 ldbu r16,164(sp)
  3454. 4268c: e011883a mov r8,fp
  3455. 42690: 84003fcc andi r16,r16,255
  3456. 42694: 8007531e bne r16,zero,443e4 <___vfprintf_internal_r+0x2278>
  3457. 42698: 94800414 ori r18,r18,16
  3458. 4269c: 9080080c andi r2,r18,32
  3459. 426a0: 1003a326 beq r2,zero,43530 <___vfprintf_internal_r+0x13c4>
  3460. 426a4: d9002e17 ldw r4,184(sp)
  3461. 426a8: 20800117 ldw r2,4(r4)
  3462. 426ac: 24c00017 ldw r19,0(r4)
  3463. 426b0: 21000204 addi r4,r4,8
  3464. 426b4: d9002e15 stw r4,184(sp)
  3465. 426b8: 102d883a mov r22,r2
  3466. 426bc: 10047316 blt r2,zero,4388c <___vfprintf_internal_r+0x1720>
  3467. 426c0: d9002a17 ldw r4,168(sp)
  3468. 426c4: df002783 ldbu fp,158(sp)
  3469. 426c8: 2003e416 blt r4,zero,4365c <___vfprintf_internal_r+0x14f0>
  3470. 426cc: 00ffdfc4 movi r3,-129
  3471. 426d0: 9d84b03a or r2,r19,r22
  3472. 426d4: 90e4703a and r18,r18,r3
  3473. 426d8: 10018026 beq r2,zero,42cdc <___vfprintf_internal_r+0xb70>
  3474. 426dc: b003ab26 beq r22,zero,4358c <___vfprintf_internal_r+0x1420>
  3475. 426e0: dc402915 stw r17,164(sp)
  3476. 426e4: dc001e04 addi r16,sp,120
  3477. 426e8: b023883a mov r17,r22
  3478. 426ec: 402d883a mov r22,r8
  3479. 426f0: 9809883a mov r4,r19
  3480. 426f4: 880b883a mov r5,r17
  3481. 426f8: 01800284 movi r6,10
  3482. 426fc: 000f883a mov r7,zero
  3483. 42700: 004c2800 call 4c280 <__umoddi3>
  3484. 42704: 10800c04 addi r2,r2,48
  3485. 42708: 843fffc4 addi r16,r16,-1
  3486. 4270c: 9809883a mov r4,r19
  3487. 42710: 880b883a mov r5,r17
  3488. 42714: 80800005 stb r2,0(r16)
  3489. 42718: 01800284 movi r6,10
  3490. 4271c: 000f883a mov r7,zero
  3491. 42720: 004bc840 call 4bc84 <__udivdi3>
  3492. 42724: 1027883a mov r19,r2
  3493. 42728: 10c4b03a or r2,r2,r3
  3494. 4272c: 1823883a mov r17,r3
  3495. 42730: 103fef1e bne r2,zero,426f0 <__alt_data_end+0xfffd06f0>
  3496. 42734: d8c02817 ldw r3,160(sp)
  3497. 42738: dc402917 ldw r17,164(sp)
  3498. 4273c: b011883a mov r8,r22
  3499. 42740: 1c07c83a sub r3,r3,r16
  3500. 42744: d8c02b15 stw r3,172(sp)
  3501. 42748: 00005f06 br 428c8 <___vfprintf_internal_r+0x75c>
  3502. 4274c: 8025883a mov r18,r16
  3503. 42750: dc002903 ldbu r16,164(sp)
  3504. 42754: e011883a mov r8,fp
  3505. 42758: 84003fcc andi r16,r16,255
  3506. 4275c: 80071e1e bne r16,zero,443d8 <___vfprintf_internal_r+0x226c>
  3507. 42760: 9080020c andi r2,r18,8
  3508. 42764: 1004af26 beq r2,zero,43a24 <___vfprintf_internal_r+0x18b8>
  3509. 42768: d9002e17 ldw r4,184(sp)
  3510. 4276c: d9402e17 ldw r5,184(sp)
  3511. 42770: d8802e17 ldw r2,184(sp)
  3512. 42774: 21000017 ldw r4,0(r4)
  3513. 42778: 29400117 ldw r5,4(r5)
  3514. 4277c: 10800204 addi r2,r2,8
  3515. 42780: d9003615 stw r4,216(sp)
  3516. 42784: d9403815 stw r5,224(sp)
  3517. 42788: d8802e15 stw r2,184(sp)
  3518. 4278c: d9003617 ldw r4,216(sp)
  3519. 42790: d9403817 ldw r5,224(sp)
  3520. 42794: da003d15 stw r8,244(sp)
  3521. 42798: 04000044 movi r16,1
  3522. 4279c: 0048d400 call 48d40 <__fpclassifyd>
  3523. 427a0: da003d17 ldw r8,244(sp)
  3524. 427a4: 1404441e bne r2,r16,438b8 <___vfprintf_internal_r+0x174c>
  3525. 427a8: d9003617 ldw r4,216(sp)
  3526. 427ac: d9403817 ldw r5,224(sp)
  3527. 427b0: 000d883a mov r6,zero
  3528. 427b4: 000f883a mov r7,zero
  3529. 427b8: 004d5540 call 4d554 <__ledf2>
  3530. 427bc: da003d17 ldw r8,244(sp)
  3531. 427c0: 1005e316 blt r2,zero,43f50 <___vfprintf_internal_r+0x1de4>
  3532. 427c4: df002783 ldbu fp,158(sp)
  3533. 427c8: 008011c4 movi r2,71
  3534. 427cc: 1445580e bge r2,r17,43d30 <___vfprintf_internal_r+0x1bc4>
  3535. 427d0: 04000174 movhi r16,5
  3536. 427d4: 84087804 addi r16,r16,8672
  3537. 427d8: 00c000c4 movi r3,3
  3538. 427dc: 00bfdfc4 movi r2,-129
  3539. 427e0: d8c02915 stw r3,164(sp)
  3540. 427e4: 90a4703a and r18,r18,r2
  3541. 427e8: d8c02b15 stw r3,172(sp)
  3542. 427ec: d8002a15 stw zero,168(sp)
  3543. 427f0: d8003215 stw zero,200(sp)
  3544. 427f4: 00003a06 br 428e0 <___vfprintf_internal_r+0x774>
  3545. 427f8: 84000214 ori r16,r16,8
  3546. 427fc: ac400007 ldb r17,0(r21)
  3547. 42800: 003ebc06 br 422f4 <__alt_data_end+0xfffd02f4>
  3548. 42804: 8025883a mov r18,r16
  3549. 42808: dc002903 ldbu r16,164(sp)
  3550. 4280c: e011883a mov r8,fp
  3551. 42810: 84003fcc andi r16,r16,255
  3552. 42814: 8007001e bne r16,zero,44418 <___vfprintf_internal_r+0x22ac>
  3553. 42818: 94800414 ori r18,r18,16
  3554. 4281c: 9080080c andi r2,r18,32
  3555. 42820: 1002fa26 beq r2,zero,4340c <___vfprintf_internal_r+0x12a0>
  3556. 42824: d9002e17 ldw r4,184(sp)
  3557. 42828: d9402a17 ldw r5,168(sp)
  3558. 4282c: d8002785 stb zero,158(sp)
  3559. 42830: 20800204 addi r2,r4,8
  3560. 42834: 24c00017 ldw r19,0(r4)
  3561. 42838: 25800117 ldw r22,4(r4)
  3562. 4283c: 2804b116 blt r5,zero,43b04 <___vfprintf_internal_r+0x1998>
  3563. 42840: 013fdfc4 movi r4,-129
  3564. 42844: 9d86b03a or r3,r19,r22
  3565. 42848: d8802e15 stw r2,184(sp)
  3566. 4284c: 9124703a and r18,r18,r4
  3567. 42850: 1802fb1e bne r3,zero,43440 <___vfprintf_internal_r+0x12d4>
  3568. 42854: d8c02a17 ldw r3,168(sp)
  3569. 42858: 0039883a mov fp,zero
  3570. 4285c: 1805e526 beq r3,zero,43ff4 <___vfprintf_internal_r+0x1e88>
  3571. 42860: 0027883a mov r19,zero
  3572. 42864: 002d883a mov r22,zero
  3573. 42868: dc001e04 addi r16,sp,120
  3574. 4286c: 9806d0fa srli r3,r19,3
  3575. 42870: b008977a slli r4,r22,29
  3576. 42874: b02cd0fa srli r22,r22,3
  3577. 42878: 9cc001cc andi r19,r19,7
  3578. 4287c: 98800c04 addi r2,r19,48
  3579. 42880: 843fffc4 addi r16,r16,-1
  3580. 42884: 20e6b03a or r19,r4,r3
  3581. 42888: 80800005 stb r2,0(r16)
  3582. 4288c: 9d86b03a or r3,r19,r22
  3583. 42890: 183ff61e bne r3,zero,4286c <__alt_data_end+0xfffd086c>
  3584. 42894: 90c0004c andi r3,r18,1
  3585. 42898: 18014126 beq r3,zero,42da0 <___vfprintf_internal_r+0xc34>
  3586. 4289c: 10803fcc andi r2,r2,255
  3587. 428a0: 1080201c xori r2,r2,128
  3588. 428a4: 10bfe004 addi r2,r2,-128
  3589. 428a8: 00c00c04 movi r3,48
  3590. 428ac: 10c13c26 beq r2,r3,42da0 <___vfprintf_internal_r+0xc34>
  3591. 428b0: 80ffffc5 stb r3,-1(r16)
  3592. 428b4: d8c02817 ldw r3,160(sp)
  3593. 428b8: 80bfffc4 addi r2,r16,-1
  3594. 428bc: 1021883a mov r16,r2
  3595. 428c0: 1887c83a sub r3,r3,r2
  3596. 428c4: d8c02b15 stw r3,172(sp)
  3597. 428c8: d8802b17 ldw r2,172(sp)
  3598. 428cc: d9002a17 ldw r4,168(sp)
  3599. 428d0: 1100010e bge r2,r4,428d8 <___vfprintf_internal_r+0x76c>
  3600. 428d4: 2005883a mov r2,r4
  3601. 428d8: d8802915 stw r2,164(sp)
  3602. 428dc: d8003215 stw zero,200(sp)
  3603. 428e0: e7003fcc andi fp,fp,255
  3604. 428e4: e700201c xori fp,fp,128
  3605. 428e8: e73fe004 addi fp,fp,-128
  3606. 428ec: e0000326 beq fp,zero,428fc <___vfprintf_internal_r+0x790>
  3607. 428f0: d8c02917 ldw r3,164(sp)
  3608. 428f4: 18c00044 addi r3,r3,1
  3609. 428f8: d8c02915 stw r3,164(sp)
  3610. 428fc: 90c0008c andi r3,r18,2
  3611. 42900: d8c02c15 stw r3,176(sp)
  3612. 42904: 18000326 beq r3,zero,42914 <___vfprintf_internal_r+0x7a8>
  3613. 42908: d8c02917 ldw r3,164(sp)
  3614. 4290c: 18c00084 addi r3,r3,2
  3615. 42910: d8c02915 stw r3,164(sp)
  3616. 42914: 90c0210c andi r3,r18,132
  3617. 42918: d8c03015 stw r3,192(sp)
  3618. 4291c: 1801c51e bne r3,zero,43034 <___vfprintf_internal_r+0xec8>
  3619. 42920: d9003117 ldw r4,196(sp)
  3620. 42924: d8c02917 ldw r3,164(sp)
  3621. 42928: 20e7c83a sub r19,r4,r3
  3622. 4292c: 04c1c10e bge zero,r19,43034 <___vfprintf_internal_r+0xec8>
  3623. 42930: 02400404 movi r9,16
  3624. 42934: d8c02017 ldw r3,128(sp)
  3625. 42938: d8801f17 ldw r2,124(sp)
  3626. 4293c: 4cc52f0e bge r9,r19,43dfc <___vfprintf_internal_r+0x1c90>
  3627. 42940: 01400174 movhi r5,5
  3628. 42944: 29488b84 addi r5,r5,8750
  3629. 42948: dc403b15 stw r17,236(sp)
  3630. 4294c: d9403515 stw r5,212(sp)
  3631. 42950: 9823883a mov r17,r19
  3632. 42954: 482d883a mov r22,r9
  3633. 42958: 9027883a mov r19,r18
  3634. 4295c: 070001c4 movi fp,7
  3635. 42960: 8025883a mov r18,r16
  3636. 42964: dc002d17 ldw r16,180(sp)
  3637. 42968: 00000306 br 42978 <___vfprintf_internal_r+0x80c>
  3638. 4296c: 8c7ffc04 addi r17,r17,-16
  3639. 42970: 42000204 addi r8,r8,8
  3640. 42974: b440130e bge r22,r17,429c4 <___vfprintf_internal_r+0x858>
  3641. 42978: 01000174 movhi r4,5
  3642. 4297c: 18c00404 addi r3,r3,16
  3643. 42980: 10800044 addi r2,r2,1
  3644. 42984: 21088b84 addi r4,r4,8750
  3645. 42988: 41000015 stw r4,0(r8)
  3646. 4298c: 45800115 stw r22,4(r8)
  3647. 42990: d8c02015 stw r3,128(sp)
  3648. 42994: d8801f15 stw r2,124(sp)
  3649. 42998: e0bff40e bge fp,r2,4296c <__alt_data_end+0xfffd096c>
  3650. 4299c: d9801e04 addi r6,sp,120
  3651. 429a0: b80b883a mov r5,r23
  3652. 429a4: 8009883a mov r4,r16
  3653. 429a8: 00491b40 call 491b4 <__sprint_r>
  3654. 429ac: 103ef31e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  3655. 429b0: 8c7ffc04 addi r17,r17,-16
  3656. 429b4: d8c02017 ldw r3,128(sp)
  3657. 429b8: d8801f17 ldw r2,124(sp)
  3658. 429bc: da000404 addi r8,sp,16
  3659. 429c0: b47fed16 blt r22,r17,42978 <__alt_data_end+0xfffd0978>
  3660. 429c4: 9021883a mov r16,r18
  3661. 429c8: 9825883a mov r18,r19
  3662. 429cc: 8827883a mov r19,r17
  3663. 429d0: dc403b17 ldw r17,236(sp)
  3664. 429d4: d9403517 ldw r5,212(sp)
  3665. 429d8: 98c7883a add r3,r19,r3
  3666. 429dc: 10800044 addi r2,r2,1
  3667. 429e0: 41400015 stw r5,0(r8)
  3668. 429e4: 44c00115 stw r19,4(r8)
  3669. 429e8: d8c02015 stw r3,128(sp)
  3670. 429ec: d8801f15 stw r2,124(sp)
  3671. 429f0: 010001c4 movi r4,7
  3672. 429f4: 2082c516 blt r4,r2,4350c <___vfprintf_internal_r+0x13a0>
  3673. 429f8: df002787 ldb fp,158(sp)
  3674. 429fc: 42000204 addi r8,r8,8
  3675. 42a00: e0000c26 beq fp,zero,42a34 <___vfprintf_internal_r+0x8c8>
  3676. 42a04: d8801f17 ldw r2,124(sp)
  3677. 42a08: d9002784 addi r4,sp,158
  3678. 42a0c: 18c00044 addi r3,r3,1
  3679. 42a10: 10800044 addi r2,r2,1
  3680. 42a14: 41000015 stw r4,0(r8)
  3681. 42a18: 01000044 movi r4,1
  3682. 42a1c: 41000115 stw r4,4(r8)
  3683. 42a20: d8c02015 stw r3,128(sp)
  3684. 42a24: d8801f15 stw r2,124(sp)
  3685. 42a28: 010001c4 movi r4,7
  3686. 42a2c: 20825e16 blt r4,r2,433a8 <___vfprintf_internal_r+0x123c>
  3687. 42a30: 42000204 addi r8,r8,8
  3688. 42a34: d8802c17 ldw r2,176(sp)
  3689. 42a38: 10000c26 beq r2,zero,42a6c <___vfprintf_internal_r+0x900>
  3690. 42a3c: d8801f17 ldw r2,124(sp)
  3691. 42a40: d9002704 addi r4,sp,156
  3692. 42a44: 18c00084 addi r3,r3,2
  3693. 42a48: 10800044 addi r2,r2,1
  3694. 42a4c: 41000015 stw r4,0(r8)
  3695. 42a50: 01000084 movi r4,2
  3696. 42a54: 41000115 stw r4,4(r8)
  3697. 42a58: d8c02015 stw r3,128(sp)
  3698. 42a5c: d8801f15 stw r2,124(sp)
  3699. 42a60: 010001c4 movi r4,7
  3700. 42a64: 20825816 blt r4,r2,433c8 <___vfprintf_internal_r+0x125c>
  3701. 42a68: 42000204 addi r8,r8,8
  3702. 42a6c: d9003017 ldw r4,192(sp)
  3703. 42a70: 00802004 movi r2,128
  3704. 42a74: 2081bb26 beq r4,r2,43164 <___vfprintf_internal_r+0xff8>
  3705. 42a78: d9402a17 ldw r5,168(sp)
  3706. 42a7c: d8802b17 ldw r2,172(sp)
  3707. 42a80: 28adc83a sub r22,r5,r2
  3708. 42a84: 0580310e bge zero,r22,42b4c <___vfprintf_internal_r+0x9e0>
  3709. 42a88: 07000404 movi fp,16
  3710. 42a8c: d8801f17 ldw r2,124(sp)
  3711. 42a90: e584360e bge fp,r22,43b6c <___vfprintf_internal_r+0x1a00>
  3712. 42a94: 01400174 movhi r5,5
  3713. 42a98: 29488784 addi r5,r5,8734
  3714. 42a9c: dc402a15 stw r17,168(sp)
  3715. 42aa0: d9402c15 stw r5,176(sp)
  3716. 42aa4: b023883a mov r17,r22
  3717. 42aa8: 04c001c4 movi r19,7
  3718. 42aac: a82d883a mov r22,r21
  3719. 42ab0: 902b883a mov r21,r18
  3720. 42ab4: 8025883a mov r18,r16
  3721. 42ab8: dc002d17 ldw r16,180(sp)
  3722. 42abc: 00000306 br 42acc <___vfprintf_internal_r+0x960>
  3723. 42ac0: 8c7ffc04 addi r17,r17,-16
  3724. 42ac4: 42000204 addi r8,r8,8
  3725. 42ac8: e440110e bge fp,r17,42b10 <___vfprintf_internal_r+0x9a4>
  3726. 42acc: 18c00404 addi r3,r3,16
  3727. 42ad0: 10800044 addi r2,r2,1
  3728. 42ad4: 45000015 stw r20,0(r8)
  3729. 42ad8: 47000115 stw fp,4(r8)
  3730. 42adc: d8c02015 stw r3,128(sp)
  3731. 42ae0: d8801f15 stw r2,124(sp)
  3732. 42ae4: 98bff60e bge r19,r2,42ac0 <__alt_data_end+0xfffd0ac0>
  3733. 42ae8: d9801e04 addi r6,sp,120
  3734. 42aec: b80b883a mov r5,r23
  3735. 42af0: 8009883a mov r4,r16
  3736. 42af4: 00491b40 call 491b4 <__sprint_r>
  3737. 42af8: 103ea01e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  3738. 42afc: 8c7ffc04 addi r17,r17,-16
  3739. 42b00: d8c02017 ldw r3,128(sp)
  3740. 42b04: d8801f17 ldw r2,124(sp)
  3741. 42b08: da000404 addi r8,sp,16
  3742. 42b0c: e47fef16 blt fp,r17,42acc <__alt_data_end+0xfffd0acc>
  3743. 42b10: 9021883a mov r16,r18
  3744. 42b14: a825883a mov r18,r21
  3745. 42b18: b02b883a mov r21,r22
  3746. 42b1c: 882d883a mov r22,r17
  3747. 42b20: dc402a17 ldw r17,168(sp)
  3748. 42b24: d9002c17 ldw r4,176(sp)
  3749. 42b28: 1d87883a add r3,r3,r22
  3750. 42b2c: 10800044 addi r2,r2,1
  3751. 42b30: 41000015 stw r4,0(r8)
  3752. 42b34: 45800115 stw r22,4(r8)
  3753. 42b38: d8c02015 stw r3,128(sp)
  3754. 42b3c: d8801f15 stw r2,124(sp)
  3755. 42b40: 010001c4 movi r4,7
  3756. 42b44: 20821016 blt r4,r2,43388 <___vfprintf_internal_r+0x121c>
  3757. 42b48: 42000204 addi r8,r8,8
  3758. 42b4c: 9080400c andi r2,r18,256
  3759. 42b50: 10013a1e bne r2,zero,4303c <___vfprintf_internal_r+0xed0>
  3760. 42b54: d9402b17 ldw r5,172(sp)
  3761. 42b58: d8801f17 ldw r2,124(sp)
  3762. 42b5c: 44000015 stw r16,0(r8)
  3763. 42b60: 1947883a add r3,r3,r5
  3764. 42b64: 10800044 addi r2,r2,1
  3765. 42b68: 41400115 stw r5,4(r8)
  3766. 42b6c: d8c02015 stw r3,128(sp)
  3767. 42b70: d8801f15 stw r2,124(sp)
  3768. 42b74: 010001c4 movi r4,7
  3769. 42b78: 2081f516 blt r4,r2,43350 <___vfprintf_internal_r+0x11e4>
  3770. 42b7c: 42000204 addi r8,r8,8
  3771. 42b80: 9480010c andi r18,r18,4
  3772. 42b84: 90003226 beq r18,zero,42c50 <___vfprintf_internal_r+0xae4>
  3773. 42b88: d9403117 ldw r5,196(sp)
  3774. 42b8c: d8802917 ldw r2,164(sp)
  3775. 42b90: 28a1c83a sub r16,r5,r2
  3776. 42b94: 04002e0e bge zero,r16,42c50 <___vfprintf_internal_r+0xae4>
  3777. 42b98: 04400404 movi r17,16
  3778. 42b9c: d8801f17 ldw r2,124(sp)
  3779. 42ba0: 8c04c40e bge r17,r16,43eb4 <___vfprintf_internal_r+0x1d48>
  3780. 42ba4: 01400174 movhi r5,5
  3781. 42ba8: 29488b84 addi r5,r5,8750
  3782. 42bac: d9403515 stw r5,212(sp)
  3783. 42bb0: 048001c4 movi r18,7
  3784. 42bb4: dcc02d17 ldw r19,180(sp)
  3785. 42bb8: 00000306 br 42bc8 <___vfprintf_internal_r+0xa5c>
  3786. 42bbc: 843ffc04 addi r16,r16,-16
  3787. 42bc0: 42000204 addi r8,r8,8
  3788. 42bc4: 8c00130e bge r17,r16,42c14 <___vfprintf_internal_r+0xaa8>
  3789. 42bc8: 01000174 movhi r4,5
  3790. 42bcc: 18c00404 addi r3,r3,16
  3791. 42bd0: 10800044 addi r2,r2,1
  3792. 42bd4: 21088b84 addi r4,r4,8750
  3793. 42bd8: 41000015 stw r4,0(r8)
  3794. 42bdc: 44400115 stw r17,4(r8)
  3795. 42be0: d8c02015 stw r3,128(sp)
  3796. 42be4: d8801f15 stw r2,124(sp)
  3797. 42be8: 90bff40e bge r18,r2,42bbc <__alt_data_end+0xfffd0bbc>
  3798. 42bec: d9801e04 addi r6,sp,120
  3799. 42bf0: b80b883a mov r5,r23
  3800. 42bf4: 9809883a mov r4,r19
  3801. 42bf8: 00491b40 call 491b4 <__sprint_r>
  3802. 42bfc: 103e5f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  3803. 42c00: 843ffc04 addi r16,r16,-16
  3804. 42c04: d8c02017 ldw r3,128(sp)
  3805. 42c08: d8801f17 ldw r2,124(sp)
  3806. 42c0c: da000404 addi r8,sp,16
  3807. 42c10: 8c3fed16 blt r17,r16,42bc8 <__alt_data_end+0xfffd0bc8>
  3808. 42c14: d9403517 ldw r5,212(sp)
  3809. 42c18: 1c07883a add r3,r3,r16
  3810. 42c1c: 10800044 addi r2,r2,1
  3811. 42c20: 41400015 stw r5,0(r8)
  3812. 42c24: 44000115 stw r16,4(r8)
  3813. 42c28: d8c02015 stw r3,128(sp)
  3814. 42c2c: d8801f15 stw r2,124(sp)
  3815. 42c30: 010001c4 movi r4,7
  3816. 42c34: 2080060e bge r4,r2,42c50 <___vfprintf_internal_r+0xae4>
  3817. 42c38: d9002d17 ldw r4,180(sp)
  3818. 42c3c: d9801e04 addi r6,sp,120
  3819. 42c40: b80b883a mov r5,r23
  3820. 42c44: 00491b40 call 491b4 <__sprint_r>
  3821. 42c48: 103e4c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  3822. 42c4c: d8c02017 ldw r3,128(sp)
  3823. 42c50: d8803117 ldw r2,196(sp)
  3824. 42c54: d9002917 ldw r4,164(sp)
  3825. 42c58: 1100010e bge r2,r4,42c60 <___vfprintf_internal_r+0xaf4>
  3826. 42c5c: 2005883a mov r2,r4
  3827. 42c60: d9402f17 ldw r5,188(sp)
  3828. 42c64: 288b883a add r5,r5,r2
  3829. 42c68: d9402f15 stw r5,188(sp)
  3830. 42c6c: 1801c01e bne r3,zero,43370 <___vfprintf_internal_r+0x1204>
  3831. 42c70: a8800007 ldb r2,0(r21)
  3832. 42c74: d8001f15 stw zero,124(sp)
  3833. 42c78: da000404 addi r8,sp,16
  3834. 42c7c: 103d751e bne r2,zero,42254 <__alt_data_end+0xfffd0254>
  3835. 42c80: a823883a mov r17,r21
  3836. 42c84: 003d8b06 br 422b4 <__alt_data_end+0xfffd02b4>
  3837. 42c88: 8025883a mov r18,r16
  3838. 42c8c: dc002903 ldbu r16,164(sp)
  3839. 42c90: e011883a mov r8,fp
  3840. 42c94: 84003fcc andi r16,r16,255
  3841. 42c98: 8005e51e bne r16,zero,44430 <___vfprintf_internal_r+0x22c4>
  3842. 42c9c: 94800414 ori r18,r18,16
  3843. 42ca0: 9080080c andi r2,r18,32
  3844. 42ca4: 10022b26 beq r2,zero,43554 <___vfprintf_internal_r+0x13e8>
  3845. 42ca8: d9002e17 ldw r4,184(sp)
  3846. 42cac: d9402a17 ldw r5,168(sp)
  3847. 42cb0: d8002785 stb zero,158(sp)
  3848. 42cb4: 20c00204 addi r3,r4,8
  3849. 42cb8: 24c00017 ldw r19,0(r4)
  3850. 42cbc: 25800117 ldw r22,4(r4)
  3851. 42cc0: 28042e16 blt r5,zero,43d7c <___vfprintf_internal_r+0x1c10>
  3852. 42cc4: 013fdfc4 movi r4,-129
  3853. 42cc8: 9d84b03a or r2,r19,r22
  3854. 42ccc: d8c02e15 stw r3,184(sp)
  3855. 42cd0: 9124703a and r18,r18,r4
  3856. 42cd4: 0039883a mov fp,zero
  3857. 42cd8: 103e801e bne r2,zero,426dc <__alt_data_end+0xfffd06dc>
  3858. 42cdc: d9002a17 ldw r4,168(sp)
  3859. 42ce0: 2002e01e bne r4,zero,43864 <___vfprintf_internal_r+0x16f8>
  3860. 42ce4: d8002a15 stw zero,168(sp)
  3861. 42ce8: d8002b15 stw zero,172(sp)
  3862. 42cec: dc001e04 addi r16,sp,120
  3863. 42cf0: 003ef506 br 428c8 <__alt_data_end+0xfffd08c8>
  3864. 42cf4: 8025883a mov r18,r16
  3865. 42cf8: dc002903 ldbu r16,164(sp)
  3866. 42cfc: e011883a mov r8,fp
  3867. 42d00: 84003fcc andi r16,r16,255
  3868. 42d04: 8005ba1e bne r16,zero,443f0 <___vfprintf_internal_r+0x2284>
  3869. 42d08: 01000174 movhi r4,5
  3870. 42d0c: 21087b04 addi r4,r4,8684
  3871. 42d10: d9003915 stw r4,228(sp)
  3872. 42d14: 9080080c andi r2,r18,32
  3873. 42d18: 10006126 beq r2,zero,42ea0 <___vfprintf_internal_r+0xd34>
  3874. 42d1c: d9402e17 ldw r5,184(sp)
  3875. 42d20: 2cc00017 ldw r19,0(r5)
  3876. 42d24: 2d800117 ldw r22,4(r5)
  3877. 42d28: 29400204 addi r5,r5,8
  3878. 42d2c: d9402e15 stw r5,184(sp)
  3879. 42d30: 9080004c andi r2,r18,1
  3880. 42d34: 1001ac26 beq r2,zero,433e8 <___vfprintf_internal_r+0x127c>
  3881. 42d38: 9d84b03a or r2,r19,r22
  3882. 42d3c: 10038526 beq r2,zero,43b54 <___vfprintf_internal_r+0x19e8>
  3883. 42d40: d8c02a17 ldw r3,168(sp)
  3884. 42d44: 00800c04 movi r2,48
  3885. 42d48: d8802705 stb r2,156(sp)
  3886. 42d4c: dc402745 stb r17,157(sp)
  3887. 42d50: d8002785 stb zero,158(sp)
  3888. 42d54: 90800094 ori r2,r18,2
  3889. 42d58: 18047916 blt r3,zero,43f40 <___vfprintf_internal_r+0x1dd4>
  3890. 42d5c: 00bfdfc4 movi r2,-129
  3891. 42d60: 90a4703a and r18,r18,r2
  3892. 42d64: 94800094 ori r18,r18,2
  3893. 42d68: 0039883a mov fp,zero
  3894. 42d6c: d9003917 ldw r4,228(sp)
  3895. 42d70: dc001e04 addi r16,sp,120
  3896. 42d74: 988003cc andi r2,r19,15
  3897. 42d78: b006973a slli r3,r22,28
  3898. 42d7c: 2085883a add r2,r4,r2
  3899. 42d80: 9826d13a srli r19,r19,4
  3900. 42d84: 10800003 ldbu r2,0(r2)
  3901. 42d88: b02cd13a srli r22,r22,4
  3902. 42d8c: 843fffc4 addi r16,r16,-1
  3903. 42d90: 1ce6b03a or r19,r3,r19
  3904. 42d94: 80800005 stb r2,0(r16)
  3905. 42d98: 9d84b03a or r2,r19,r22
  3906. 42d9c: 103ff51e bne r2,zero,42d74 <__alt_data_end+0xfffd0d74>
  3907. 42da0: d8c02817 ldw r3,160(sp)
  3908. 42da4: 1c07c83a sub r3,r3,r16
  3909. 42da8: d8c02b15 stw r3,172(sp)
  3910. 42dac: 003ec606 br 428c8 <__alt_data_end+0xfffd08c8>
  3911. 42db0: 8025883a mov r18,r16
  3912. 42db4: dc002903 ldbu r16,164(sp)
  3913. 42db8: e011883a mov r8,fp
  3914. 42dbc: 84003fcc andi r16,r16,255
  3915. 42dc0: 803e9626 beq r16,zero,4281c <__alt_data_end+0xfffd081c>
  3916. 42dc4: d8c02b03 ldbu r3,172(sp)
  3917. 42dc8: d8c02785 stb r3,158(sp)
  3918. 42dcc: 003e9306 br 4281c <__alt_data_end+0xfffd081c>
  3919. 42dd0: 00c00044 movi r3,1
  3920. 42dd4: d8c02905 stb r3,164(sp)
  3921. 42dd8: 00c00ac4 movi r3,43
  3922. 42ddc: d8c02b05 stb r3,172(sp)
  3923. 42de0: ac400007 ldb r17,0(r21)
  3924. 42de4: 003d4306 br 422f4 <__alt_data_end+0xfffd02f4>
  3925. 42de8: 84000814 ori r16,r16,32
  3926. 42dec: ac400007 ldb r17,0(r21)
  3927. 42df0: 003d4006 br 422f4 <__alt_data_end+0xfffd02f4>
  3928. 42df4: d8802e17 ldw r2,184(sp)
  3929. 42df8: 8025883a mov r18,r16
  3930. 42dfc: d8002785 stb zero,158(sp)
  3931. 42e00: 14000017 ldw r16,0(r2)
  3932. 42e04: e011883a mov r8,fp
  3933. 42e08: 14c00104 addi r19,r2,4
  3934. 42e0c: 80042d26 beq r16,zero,43ec4 <___vfprintf_internal_r+0x1d58>
  3935. 42e10: d8c02a17 ldw r3,168(sp)
  3936. 42e14: 1803e416 blt r3,zero,43da8 <___vfprintf_internal_r+0x1c3c>
  3937. 42e18: 180d883a mov r6,r3
  3938. 42e1c: 000b883a mov r5,zero
  3939. 42e20: 8009883a mov r4,r16
  3940. 42e24: df003d15 stw fp,244(sp)
  3941. 42e28: 00475dc0 call 475dc <memchr>
  3942. 42e2c: da003d17 ldw r8,244(sp)
  3943. 42e30: 10046826 beq r2,zero,43fd4 <___vfprintf_internal_r+0x1e68>
  3944. 42e34: 1405c83a sub r2,r2,r16
  3945. 42e38: d8802b15 stw r2,172(sp)
  3946. 42e3c: 1003e016 blt r2,zero,43dc0 <___vfprintf_internal_r+0x1c54>
  3947. 42e40: df002783 ldbu fp,158(sp)
  3948. 42e44: d8802915 stw r2,164(sp)
  3949. 42e48: dcc02e15 stw r19,184(sp)
  3950. 42e4c: d8002a15 stw zero,168(sp)
  3951. 42e50: d8003215 stw zero,200(sp)
  3952. 42e54: 003ea206 br 428e0 <__alt_data_end+0xfffd08e0>
  3953. 42e58: 8025883a mov r18,r16
  3954. 42e5c: dc002903 ldbu r16,164(sp)
  3955. 42e60: e011883a mov r8,fp
  3956. 42e64: 84003fcc andi r16,r16,255
  3957. 42e68: 803f8d26 beq r16,zero,42ca0 <__alt_data_end+0xfffd0ca0>
  3958. 42e6c: d8c02b03 ldbu r3,172(sp)
  3959. 42e70: d8c02785 stb r3,158(sp)
  3960. 42e74: 003f8a06 br 42ca0 <__alt_data_end+0xfffd0ca0>
  3961. 42e78: 8025883a mov r18,r16
  3962. 42e7c: dc002903 ldbu r16,164(sp)
  3963. 42e80: e011883a mov r8,fp
  3964. 42e84: 84003fcc andi r16,r16,255
  3965. 42e88: 8005661e bne r16,zero,44424 <___vfprintf_internal_r+0x22b8>
  3966. 42e8c: 01000174 movhi r4,5
  3967. 42e90: 21088004 addi r4,r4,8704
  3968. 42e94: d9003915 stw r4,228(sp)
  3969. 42e98: 9080080c andi r2,r18,32
  3970. 42e9c: 103f9f1e bne r2,zero,42d1c <__alt_data_end+0xfffd0d1c>
  3971. 42ea0: 9080040c andi r2,r18,16
  3972. 42ea4: 1002eb26 beq r2,zero,43a54 <___vfprintf_internal_r+0x18e8>
  3973. 42ea8: d8802e17 ldw r2,184(sp)
  3974. 42eac: 002d883a mov r22,zero
  3975. 42eb0: 14c00017 ldw r19,0(r2)
  3976. 42eb4: 10800104 addi r2,r2,4
  3977. 42eb8: d8802e15 stw r2,184(sp)
  3978. 42ebc: 003f9c06 br 42d30 <__alt_data_end+0xfffd0d30>
  3979. 42ec0: d8802b07 ldb r2,172(sp)
  3980. 42ec4: 1002e11e bne r2,zero,43a4c <___vfprintf_internal_r+0x18e0>
  3981. 42ec8: 00c00044 movi r3,1
  3982. 42ecc: d8c02905 stb r3,164(sp)
  3983. 42ed0: 00c00804 movi r3,32
  3984. 42ed4: d8c02b05 stb r3,172(sp)
  3985. 42ed8: ac400007 ldb r17,0(r21)
  3986. 42edc: 003d0506 br 422f4 <__alt_data_end+0xfffd02f4>
  3987. 42ee0: 84000054 ori r16,r16,1
  3988. 42ee4: ac400007 ldb r17,0(r21)
  3989. 42ee8: 003d0206 br 422f4 <__alt_data_end+0xfffd02f4>
  3990. 42eec: 8025883a mov r18,r16
  3991. 42ef0: dc002903 ldbu r16,164(sp)
  3992. 42ef4: e011883a mov r8,fp
  3993. 42ef8: 84003fcc andi r16,r16,255
  3994. 42efc: 803de726 beq r16,zero,4269c <__alt_data_end+0xfffd069c>
  3995. 42f00: d8c02b03 ldbu r3,172(sp)
  3996. 42f04: d8c02785 stb r3,158(sp)
  3997. 42f08: 003de406 br 4269c <__alt_data_end+0xfffd069c>
  3998. 42f0c: 84001014 ori r16,r16,64
  3999. 42f10: ac400007 ldb r17,0(r21)
  4000. 42f14: 003cf706 br 422f4 <__alt_data_end+0xfffd02f4>
  4001. 42f18: ac400007 ldb r17,0(r21)
  4002. 42f1c: 00801b04 movi r2,108
  4003. 42f20: 88838f26 beq r17,r2,43d60 <___vfprintf_internal_r+0x1bf4>
  4004. 42f24: 84000414 ori r16,r16,16
  4005. 42f28: 003cf206 br 422f4 <__alt_data_end+0xfffd02f4>
  4006. 42f2c: 8025883a mov r18,r16
  4007. 42f30: dc002903 ldbu r16,164(sp)
  4008. 42f34: e011883a mov r8,fp
  4009. 42f38: 84003fcc andi r16,r16,255
  4010. 42f3c: 80053f1e bne r16,zero,4443c <___vfprintf_internal_r+0x22d0>
  4011. 42f40: 9080080c andi r2,r18,32
  4012. 42f44: 1002d226 beq r2,zero,43a90 <___vfprintf_internal_r+0x1924>
  4013. 42f48: d9002e17 ldw r4,184(sp)
  4014. 42f4c: d9402f17 ldw r5,188(sp)
  4015. 42f50: 20800017 ldw r2,0(r4)
  4016. 42f54: 2807d7fa srai r3,r5,31
  4017. 42f58: 21000104 addi r4,r4,4
  4018. 42f5c: d9002e15 stw r4,184(sp)
  4019. 42f60: 11400015 stw r5,0(r2)
  4020. 42f64: 10c00115 stw r3,4(r2)
  4021. 42f68: 003cb806 br 4224c <__alt_data_end+0xfffd024c>
  4022. 42f6c: d8c02e17 ldw r3,184(sp)
  4023. 42f70: d9002e17 ldw r4,184(sp)
  4024. 42f74: 8025883a mov r18,r16
  4025. 42f78: 18800017 ldw r2,0(r3)
  4026. 42f7c: 21000104 addi r4,r4,4
  4027. 42f80: 00c00044 movi r3,1
  4028. 42f84: e011883a mov r8,fp
  4029. 42f88: d8c02915 stw r3,164(sp)
  4030. 42f8c: d8002785 stb zero,158(sp)
  4031. 42f90: d8801405 stb r2,80(sp)
  4032. 42f94: d9002e15 stw r4,184(sp)
  4033. 42f98: d8c02b15 stw r3,172(sp)
  4034. 42f9c: d8002a15 stw zero,168(sp)
  4035. 42fa0: d8003215 stw zero,200(sp)
  4036. 42fa4: dc001404 addi r16,sp,80
  4037. 42fa8: 0039883a mov fp,zero
  4038. 42fac: 003e5306 br 428fc <__alt_data_end+0xfffd08fc>
  4039. 42fb0: 01000174 movhi r4,5
  4040. 42fb4: 21088004 addi r4,r4,8704
  4041. 42fb8: 0039883a mov fp,zero
  4042. 42fbc: d9003915 stw r4,228(sp)
  4043. 42fc0: 04401e04 movi r17,120
  4044. 42fc4: 003f6906 br 42d6c <__alt_data_end+0xfffd0d6c>
  4045. 42fc8: 8025883a mov r18,r16
  4046. 42fcc: dc002903 ldbu r16,164(sp)
  4047. 42fd0: e011883a mov r8,fp
  4048. 42fd4: 84003fcc andi r16,r16,255
  4049. 42fd8: 8005081e bne r16,zero,443fc <___vfprintf_internal_r+0x2290>
  4050. 42fdc: 883d6126 beq r17,zero,42564 <__alt_data_end+0xfffd0564>
  4051. 42fe0: 00c00044 movi r3,1
  4052. 42fe4: d8c02915 stw r3,164(sp)
  4053. 42fe8: dc401405 stb r17,80(sp)
  4054. 42fec: d8002785 stb zero,158(sp)
  4055. 42ff0: 003fe906 br 42f98 <__alt_data_end+0xfffd0f98>
  4056. 42ff4: 01400174 movhi r5,5
  4057. 42ff8: 29488004 addi r5,r5,8704
  4058. 42ffc: d9403915 stw r5,228(sp)
  4059. 43000: d8c02e15 stw r3,184(sp)
  4060. 43004: 1025883a mov r18,r2
  4061. 43008: 04401e04 movi r17,120
  4062. 4300c: 9d84b03a or r2,r19,r22
  4063. 43010: 1000fc1e bne r2,zero,43404 <___vfprintf_internal_r+0x1298>
  4064. 43014: 0039883a mov fp,zero
  4065. 43018: 00800084 movi r2,2
  4066. 4301c: 10803fcc andi r2,r2,255
  4067. 43020: 00c00044 movi r3,1
  4068. 43024: 10c20f26 beq r2,r3,43864 <___vfprintf_internal_r+0x16f8>
  4069. 43028: 00c00084 movi r3,2
  4070. 4302c: 10fd3326 beq r2,r3,424fc <__alt_data_end+0xfffd04fc>
  4071. 43030: 003e0b06 br 42860 <__alt_data_end+0xfffd0860>
  4072. 43034: d8c02017 ldw r3,128(sp)
  4073. 43038: 003e7106 br 42a00 <__alt_data_end+0xfffd0a00>
  4074. 4303c: 00801944 movi r2,101
  4075. 43040: 14407e0e bge r2,r17,4323c <___vfprintf_internal_r+0x10d0>
  4076. 43044: d9003617 ldw r4,216(sp)
  4077. 43048: d9403817 ldw r5,224(sp)
  4078. 4304c: 000d883a mov r6,zero
  4079. 43050: 000f883a mov r7,zero
  4080. 43054: d8c03c15 stw r3,240(sp)
  4081. 43058: da003d15 stw r8,244(sp)
  4082. 4305c: 004d3f00 call 4d3f0 <__eqdf2>
  4083. 43060: d8c03c17 ldw r3,240(sp)
  4084. 43064: da003d17 ldw r8,244(sp)
  4085. 43068: 1000f71e bne r2,zero,43448 <___vfprintf_internal_r+0x12dc>
  4086. 4306c: d8801f17 ldw r2,124(sp)
  4087. 43070: 01000174 movhi r4,5
  4088. 43074: 21088704 addi r4,r4,8732
  4089. 43078: 18c00044 addi r3,r3,1
  4090. 4307c: 10800044 addi r2,r2,1
  4091. 43080: 41000015 stw r4,0(r8)
  4092. 43084: 01000044 movi r4,1
  4093. 43088: 41000115 stw r4,4(r8)
  4094. 4308c: d8c02015 stw r3,128(sp)
  4095. 43090: d8801f15 stw r2,124(sp)
  4096. 43094: 010001c4 movi r4,7
  4097. 43098: 2082b816 blt r4,r2,43b7c <___vfprintf_internal_r+0x1a10>
  4098. 4309c: 42000204 addi r8,r8,8
  4099. 430a0: d8802617 ldw r2,152(sp)
  4100. 430a4: d9403317 ldw r5,204(sp)
  4101. 430a8: 11400216 blt r2,r5,430b4 <___vfprintf_internal_r+0xf48>
  4102. 430ac: 9080004c andi r2,r18,1
  4103. 430b0: 103eb326 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80>
  4104. 430b4: d8803717 ldw r2,220(sp)
  4105. 430b8: d9003417 ldw r4,208(sp)
  4106. 430bc: d9403717 ldw r5,220(sp)
  4107. 430c0: 1887883a add r3,r3,r2
  4108. 430c4: d8801f17 ldw r2,124(sp)
  4109. 430c8: 41000015 stw r4,0(r8)
  4110. 430cc: 41400115 stw r5,4(r8)
  4111. 430d0: 10800044 addi r2,r2,1
  4112. 430d4: d8c02015 stw r3,128(sp)
  4113. 430d8: d8801f15 stw r2,124(sp)
  4114. 430dc: 010001c4 movi r4,7
  4115. 430e0: 20832916 blt r4,r2,43d88 <___vfprintf_internal_r+0x1c1c>
  4116. 430e4: 42000204 addi r8,r8,8
  4117. 430e8: d8803317 ldw r2,204(sp)
  4118. 430ec: 143fffc4 addi r16,r2,-1
  4119. 430f0: 043ea30e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80>
  4120. 430f4: 04400404 movi r17,16
  4121. 430f8: d8801f17 ldw r2,124(sp)
  4122. 430fc: 8c00880e bge r17,r16,43320 <___vfprintf_internal_r+0x11b4>
  4123. 43100: 01400174 movhi r5,5
  4124. 43104: 29488784 addi r5,r5,8734
  4125. 43108: d9402c15 stw r5,176(sp)
  4126. 4310c: 058001c4 movi r22,7
  4127. 43110: dcc02d17 ldw r19,180(sp)
  4128. 43114: 00000306 br 43124 <___vfprintf_internal_r+0xfb8>
  4129. 43118: 42000204 addi r8,r8,8
  4130. 4311c: 843ffc04 addi r16,r16,-16
  4131. 43120: 8c00820e bge r17,r16,4332c <___vfprintf_internal_r+0x11c0>
  4132. 43124: 18c00404 addi r3,r3,16
  4133. 43128: 10800044 addi r2,r2,1
  4134. 4312c: 45000015 stw r20,0(r8)
  4135. 43130: 44400115 stw r17,4(r8)
  4136. 43134: d8c02015 stw r3,128(sp)
  4137. 43138: d8801f15 stw r2,124(sp)
  4138. 4313c: b0bff60e bge r22,r2,43118 <__alt_data_end+0xfffd1118>
  4139. 43140: d9801e04 addi r6,sp,120
  4140. 43144: b80b883a mov r5,r23
  4141. 43148: 9809883a mov r4,r19
  4142. 4314c: 00491b40 call 491b4 <__sprint_r>
  4143. 43150: 103d0a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4144. 43154: d8c02017 ldw r3,128(sp)
  4145. 43158: d8801f17 ldw r2,124(sp)
  4146. 4315c: da000404 addi r8,sp,16
  4147. 43160: 003fee06 br 4311c <__alt_data_end+0xfffd111c>
  4148. 43164: d9403117 ldw r5,196(sp)
  4149. 43168: d8802917 ldw r2,164(sp)
  4150. 4316c: 28adc83a sub r22,r5,r2
  4151. 43170: 05be410e bge zero,r22,42a78 <__alt_data_end+0xfffd0a78>
  4152. 43174: 07000404 movi fp,16
  4153. 43178: d8801f17 ldw r2,124(sp)
  4154. 4317c: e5838f0e bge fp,r22,43fbc <___vfprintf_internal_r+0x1e50>
  4155. 43180: 01400174 movhi r5,5
  4156. 43184: 29488784 addi r5,r5,8734
  4157. 43188: dc403015 stw r17,192(sp)
  4158. 4318c: d9402c15 stw r5,176(sp)
  4159. 43190: b023883a mov r17,r22
  4160. 43194: 04c001c4 movi r19,7
  4161. 43198: a82d883a mov r22,r21
  4162. 4319c: 902b883a mov r21,r18
  4163. 431a0: 8025883a mov r18,r16
  4164. 431a4: dc002d17 ldw r16,180(sp)
  4165. 431a8: 00000306 br 431b8 <___vfprintf_internal_r+0x104c>
  4166. 431ac: 8c7ffc04 addi r17,r17,-16
  4167. 431b0: 42000204 addi r8,r8,8
  4168. 431b4: e440110e bge fp,r17,431fc <___vfprintf_internal_r+0x1090>
  4169. 431b8: 18c00404 addi r3,r3,16
  4170. 431bc: 10800044 addi r2,r2,1
  4171. 431c0: 45000015 stw r20,0(r8)
  4172. 431c4: 47000115 stw fp,4(r8)
  4173. 431c8: d8c02015 stw r3,128(sp)
  4174. 431cc: d8801f15 stw r2,124(sp)
  4175. 431d0: 98bff60e bge r19,r2,431ac <__alt_data_end+0xfffd11ac>
  4176. 431d4: d9801e04 addi r6,sp,120
  4177. 431d8: b80b883a mov r5,r23
  4178. 431dc: 8009883a mov r4,r16
  4179. 431e0: 00491b40 call 491b4 <__sprint_r>
  4180. 431e4: 103ce51e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4181. 431e8: 8c7ffc04 addi r17,r17,-16
  4182. 431ec: d8c02017 ldw r3,128(sp)
  4183. 431f0: d8801f17 ldw r2,124(sp)
  4184. 431f4: da000404 addi r8,sp,16
  4185. 431f8: e47fef16 blt fp,r17,431b8 <__alt_data_end+0xfffd11b8>
  4186. 431fc: 9021883a mov r16,r18
  4187. 43200: a825883a mov r18,r21
  4188. 43204: b02b883a mov r21,r22
  4189. 43208: 882d883a mov r22,r17
  4190. 4320c: dc403017 ldw r17,192(sp)
  4191. 43210: d9002c17 ldw r4,176(sp)
  4192. 43214: 1d87883a add r3,r3,r22
  4193. 43218: 10800044 addi r2,r2,1
  4194. 4321c: 41000015 stw r4,0(r8)
  4195. 43220: 45800115 stw r22,4(r8)
  4196. 43224: d8c02015 stw r3,128(sp)
  4197. 43228: d8801f15 stw r2,124(sp)
  4198. 4322c: 010001c4 movi r4,7
  4199. 43230: 20818e16 blt r4,r2,4386c <___vfprintf_internal_r+0x1700>
  4200. 43234: 42000204 addi r8,r8,8
  4201. 43238: 003e0f06 br 42a78 <__alt_data_end+0xfffd0a78>
  4202. 4323c: d9403317 ldw r5,204(sp)
  4203. 43240: 00800044 movi r2,1
  4204. 43244: 18c00044 addi r3,r3,1
  4205. 43248: 1141530e bge r2,r5,43798 <___vfprintf_internal_r+0x162c>
  4206. 4324c: dc401f17 ldw r17,124(sp)
  4207. 43250: 00800044 movi r2,1
  4208. 43254: 40800115 stw r2,4(r8)
  4209. 43258: 8c400044 addi r17,r17,1
  4210. 4325c: 44000015 stw r16,0(r8)
  4211. 43260: d8c02015 stw r3,128(sp)
  4212. 43264: dc401f15 stw r17,124(sp)
  4213. 43268: 008001c4 movi r2,7
  4214. 4326c: 14416b16 blt r2,r17,4381c <___vfprintf_internal_r+0x16b0>
  4215. 43270: 42000204 addi r8,r8,8
  4216. 43274: d8803717 ldw r2,220(sp)
  4217. 43278: d9003417 ldw r4,208(sp)
  4218. 4327c: 8c400044 addi r17,r17,1
  4219. 43280: 10c7883a add r3,r2,r3
  4220. 43284: 40800115 stw r2,4(r8)
  4221. 43288: 41000015 stw r4,0(r8)
  4222. 4328c: d8c02015 stw r3,128(sp)
  4223. 43290: dc401f15 stw r17,124(sp)
  4224. 43294: 008001c4 movi r2,7
  4225. 43298: 14416916 blt r2,r17,43840 <___vfprintf_internal_r+0x16d4>
  4226. 4329c: 45800204 addi r22,r8,8
  4227. 432a0: d9003617 ldw r4,216(sp)
  4228. 432a4: d9403817 ldw r5,224(sp)
  4229. 432a8: 000d883a mov r6,zero
  4230. 432ac: 000f883a mov r7,zero
  4231. 432b0: d8c03c15 stw r3,240(sp)
  4232. 432b4: 004d3f00 call 4d3f0 <__eqdf2>
  4233. 432b8: d8c03c17 ldw r3,240(sp)
  4234. 432bc: 1000bc26 beq r2,zero,435b0 <___vfprintf_internal_r+0x1444>
  4235. 432c0: d9403317 ldw r5,204(sp)
  4236. 432c4: 84000044 addi r16,r16,1
  4237. 432c8: 8c400044 addi r17,r17,1
  4238. 432cc: 28bfffc4 addi r2,r5,-1
  4239. 432d0: 1887883a add r3,r3,r2
  4240. 432d4: b0800115 stw r2,4(r22)
  4241. 432d8: b4000015 stw r16,0(r22)
  4242. 432dc: d8c02015 stw r3,128(sp)
  4243. 432e0: dc401f15 stw r17,124(sp)
  4244. 432e4: 008001c4 movi r2,7
  4245. 432e8: 14414316 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c>
  4246. 432ec: b5800204 addi r22,r22,8
  4247. 432f0: d9003a17 ldw r4,232(sp)
  4248. 432f4: df0022c4 addi fp,sp,139
  4249. 432f8: 8c400044 addi r17,r17,1
  4250. 432fc: 20c7883a add r3,r4,r3
  4251. 43300: b7000015 stw fp,0(r22)
  4252. 43304: b1000115 stw r4,4(r22)
  4253. 43308: d8c02015 stw r3,128(sp)
  4254. 4330c: dc401f15 stw r17,124(sp)
  4255. 43310: 008001c4 movi r2,7
  4256. 43314: 14400e16 blt r2,r17,43350 <___vfprintf_internal_r+0x11e4>
  4257. 43318: b2000204 addi r8,r22,8
  4258. 4331c: 003e1806 br 42b80 <__alt_data_end+0xfffd0b80>
  4259. 43320: 01000174 movhi r4,5
  4260. 43324: 21088784 addi r4,r4,8734
  4261. 43328: d9002c15 stw r4,176(sp)
  4262. 4332c: d9002c17 ldw r4,176(sp)
  4263. 43330: 1c07883a add r3,r3,r16
  4264. 43334: 44000115 stw r16,4(r8)
  4265. 43338: 41000015 stw r4,0(r8)
  4266. 4333c: 10800044 addi r2,r2,1
  4267. 43340: d8c02015 stw r3,128(sp)
  4268. 43344: d8801f15 stw r2,124(sp)
  4269. 43348: 010001c4 movi r4,7
  4270. 4334c: 20be0b0e bge r4,r2,42b7c <__alt_data_end+0xfffd0b7c>
  4271. 43350: d9002d17 ldw r4,180(sp)
  4272. 43354: d9801e04 addi r6,sp,120
  4273. 43358: b80b883a mov r5,r23
  4274. 4335c: 00491b40 call 491b4 <__sprint_r>
  4275. 43360: 103c861e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4276. 43364: d8c02017 ldw r3,128(sp)
  4277. 43368: da000404 addi r8,sp,16
  4278. 4336c: 003e0406 br 42b80 <__alt_data_end+0xfffd0b80>
  4279. 43370: d9002d17 ldw r4,180(sp)
  4280. 43374: d9801e04 addi r6,sp,120
  4281. 43378: b80b883a mov r5,r23
  4282. 4337c: 00491b40 call 491b4 <__sprint_r>
  4283. 43380: 103e3b26 beq r2,zero,42c70 <__alt_data_end+0xfffd0c70>
  4284. 43384: 003c7d06 br 4257c <__alt_data_end+0xfffd057c>
  4285. 43388: d9002d17 ldw r4,180(sp)
  4286. 4338c: d9801e04 addi r6,sp,120
  4287. 43390: b80b883a mov r5,r23
  4288. 43394: 00491b40 call 491b4 <__sprint_r>
  4289. 43398: 103c781e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4290. 4339c: d8c02017 ldw r3,128(sp)
  4291. 433a0: da000404 addi r8,sp,16
  4292. 433a4: 003de906 br 42b4c <__alt_data_end+0xfffd0b4c>
  4293. 433a8: d9002d17 ldw r4,180(sp)
  4294. 433ac: d9801e04 addi r6,sp,120
  4295. 433b0: b80b883a mov r5,r23
  4296. 433b4: 00491b40 call 491b4 <__sprint_r>
  4297. 433b8: 103c701e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4298. 433bc: d8c02017 ldw r3,128(sp)
  4299. 433c0: da000404 addi r8,sp,16
  4300. 433c4: 003d9b06 br 42a34 <__alt_data_end+0xfffd0a34>
  4301. 433c8: d9002d17 ldw r4,180(sp)
  4302. 433cc: d9801e04 addi r6,sp,120
  4303. 433d0: b80b883a mov r5,r23
  4304. 433d4: 00491b40 call 491b4 <__sprint_r>
  4305. 433d8: 103c681e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4306. 433dc: d8c02017 ldw r3,128(sp)
  4307. 433e0: da000404 addi r8,sp,16
  4308. 433e4: 003da106 br 42a6c <__alt_data_end+0xfffd0a6c>
  4309. 433e8: d9402a17 ldw r5,168(sp)
  4310. 433ec: d8002785 stb zero,158(sp)
  4311. 433f0: 283f0616 blt r5,zero,4300c <__alt_data_end+0xfffd100c>
  4312. 433f4: 00ffdfc4 movi r3,-129
  4313. 433f8: 9d84b03a or r2,r19,r22
  4314. 433fc: 90e4703a and r18,r18,r3
  4315. 43400: 103c3b26 beq r2,zero,424f0 <__alt_data_end+0xfffd04f0>
  4316. 43404: 0039883a mov fp,zero
  4317. 43408: 003e5806 br 42d6c <__alt_data_end+0xfffd0d6c>
  4318. 4340c: 9080040c andi r2,r18,16
  4319. 43410: 1001b326 beq r2,zero,43ae0 <___vfprintf_internal_r+0x1974>
  4320. 43414: d8c02e17 ldw r3,184(sp)
  4321. 43418: d9002a17 ldw r4,168(sp)
  4322. 4341c: d8002785 stb zero,158(sp)
  4323. 43420: 18800104 addi r2,r3,4
  4324. 43424: 1cc00017 ldw r19,0(r3)
  4325. 43428: 002d883a mov r22,zero
  4326. 4342c: 2001b516 blt r4,zero,43b04 <___vfprintf_internal_r+0x1998>
  4327. 43430: 00ffdfc4 movi r3,-129
  4328. 43434: d8802e15 stw r2,184(sp)
  4329. 43438: 90e4703a and r18,r18,r3
  4330. 4343c: 983d0526 beq r19,zero,42854 <__alt_data_end+0xfffd0854>
  4331. 43440: 0039883a mov fp,zero
  4332. 43444: 003d0806 br 42868 <__alt_data_end+0xfffd0868>
  4333. 43448: dc402617 ldw r17,152(sp)
  4334. 4344c: 0441d30e bge zero,r17,43b9c <___vfprintf_internal_r+0x1a30>
  4335. 43450: dc403217 ldw r17,200(sp)
  4336. 43454: d8803317 ldw r2,204(sp)
  4337. 43458: 1440010e bge r2,r17,43460 <___vfprintf_internal_r+0x12f4>
  4338. 4345c: 1023883a mov r17,r2
  4339. 43460: 04400a0e bge zero,r17,4348c <___vfprintf_internal_r+0x1320>
  4340. 43464: d8801f17 ldw r2,124(sp)
  4341. 43468: 1c47883a add r3,r3,r17
  4342. 4346c: 44000015 stw r16,0(r8)
  4343. 43470: 10800044 addi r2,r2,1
  4344. 43474: 44400115 stw r17,4(r8)
  4345. 43478: d8c02015 stw r3,128(sp)
  4346. 4347c: d8801f15 stw r2,124(sp)
  4347. 43480: 010001c4 movi r4,7
  4348. 43484: 20826516 blt r4,r2,43e1c <___vfprintf_internal_r+0x1cb0>
  4349. 43488: 42000204 addi r8,r8,8
  4350. 4348c: 88026116 blt r17,zero,43e14 <___vfprintf_internal_r+0x1ca8>
  4351. 43490: d9003217 ldw r4,200(sp)
  4352. 43494: 2463c83a sub r17,r4,r17
  4353. 43498: 04407b0e bge zero,r17,43688 <___vfprintf_internal_r+0x151c>
  4354. 4349c: 05800404 movi r22,16
  4355. 434a0: d8801f17 ldw r2,124(sp)
  4356. 434a4: b4419d0e bge r22,r17,43b1c <___vfprintf_internal_r+0x19b0>
  4357. 434a8: 01000174 movhi r4,5
  4358. 434ac: 21088784 addi r4,r4,8734
  4359. 434b0: d9002c15 stw r4,176(sp)
  4360. 434b4: 070001c4 movi fp,7
  4361. 434b8: dcc02d17 ldw r19,180(sp)
  4362. 434bc: 00000306 br 434cc <___vfprintf_internal_r+0x1360>
  4363. 434c0: 42000204 addi r8,r8,8
  4364. 434c4: 8c7ffc04 addi r17,r17,-16
  4365. 434c8: b441970e bge r22,r17,43b28 <___vfprintf_internal_r+0x19bc>
  4366. 434cc: 18c00404 addi r3,r3,16
  4367. 434d0: 10800044 addi r2,r2,1
  4368. 434d4: 45000015 stw r20,0(r8)
  4369. 434d8: 45800115 stw r22,4(r8)
  4370. 434dc: d8c02015 stw r3,128(sp)
  4371. 434e0: d8801f15 stw r2,124(sp)
  4372. 434e4: e0bff60e bge fp,r2,434c0 <__alt_data_end+0xfffd14c0>
  4373. 434e8: d9801e04 addi r6,sp,120
  4374. 434ec: b80b883a mov r5,r23
  4375. 434f0: 9809883a mov r4,r19
  4376. 434f4: 00491b40 call 491b4 <__sprint_r>
  4377. 434f8: 103c201e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4378. 434fc: d8c02017 ldw r3,128(sp)
  4379. 43500: d8801f17 ldw r2,124(sp)
  4380. 43504: da000404 addi r8,sp,16
  4381. 43508: 003fee06 br 434c4 <__alt_data_end+0xfffd14c4>
  4382. 4350c: d9002d17 ldw r4,180(sp)
  4383. 43510: d9801e04 addi r6,sp,120
  4384. 43514: b80b883a mov r5,r23
  4385. 43518: 00491b40 call 491b4 <__sprint_r>
  4386. 4351c: 103c171e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4387. 43520: d8c02017 ldw r3,128(sp)
  4388. 43524: df002787 ldb fp,158(sp)
  4389. 43528: da000404 addi r8,sp,16
  4390. 4352c: 003d3406 br 42a00 <__alt_data_end+0xfffd0a00>
  4391. 43530: 9080040c andi r2,r18,16
  4392. 43534: 10016126 beq r2,zero,43abc <___vfprintf_internal_r+0x1950>
  4393. 43538: d9402e17 ldw r5,184(sp)
  4394. 4353c: 2cc00017 ldw r19,0(r5)
  4395. 43540: 29400104 addi r5,r5,4
  4396. 43544: d9402e15 stw r5,184(sp)
  4397. 43548: 982dd7fa srai r22,r19,31
  4398. 4354c: b005883a mov r2,r22
  4399. 43550: 003c5a06 br 426bc <__alt_data_end+0xfffd06bc>
  4400. 43554: 9080040c andi r2,r18,16
  4401. 43558: 10003526 beq r2,zero,43630 <___vfprintf_internal_r+0x14c4>
  4402. 4355c: d8c02e17 ldw r3,184(sp)
  4403. 43560: d9002a17 ldw r4,168(sp)
  4404. 43564: d8002785 stb zero,158(sp)
  4405. 43568: 18800104 addi r2,r3,4
  4406. 4356c: 1cc00017 ldw r19,0(r3)
  4407. 43570: 002d883a mov r22,zero
  4408. 43574: 20003716 blt r4,zero,43654 <___vfprintf_internal_r+0x14e8>
  4409. 43578: 00ffdfc4 movi r3,-129
  4410. 4357c: d8802e15 stw r2,184(sp)
  4411. 43580: 90e4703a and r18,r18,r3
  4412. 43584: 0039883a mov fp,zero
  4413. 43588: 983dd426 beq r19,zero,42cdc <__alt_data_end+0xfffd0cdc>
  4414. 4358c: 00800244 movi r2,9
  4415. 43590: 14fc5336 bltu r2,r19,426e0 <__alt_data_end+0xfffd06e0>
  4416. 43594: d8c02817 ldw r3,160(sp)
  4417. 43598: dc001dc4 addi r16,sp,119
  4418. 4359c: 9cc00c04 addi r19,r19,48
  4419. 435a0: 1c07c83a sub r3,r3,r16
  4420. 435a4: dcc01dc5 stb r19,119(sp)
  4421. 435a8: d8c02b15 stw r3,172(sp)
  4422. 435ac: 003cc606 br 428c8 <__alt_data_end+0xfffd08c8>
  4423. 435b0: d8803317 ldw r2,204(sp)
  4424. 435b4: 143fffc4 addi r16,r2,-1
  4425. 435b8: 043f4d0e bge zero,r16,432f0 <__alt_data_end+0xfffd12f0>
  4426. 435bc: 07000404 movi fp,16
  4427. 435c0: e400810e bge fp,r16,437c8 <___vfprintf_internal_r+0x165c>
  4428. 435c4: 01400174 movhi r5,5
  4429. 435c8: 29488784 addi r5,r5,8734
  4430. 435cc: d9402c15 stw r5,176(sp)
  4431. 435d0: 01c001c4 movi r7,7
  4432. 435d4: dcc02d17 ldw r19,180(sp)
  4433. 435d8: 00000306 br 435e8 <___vfprintf_internal_r+0x147c>
  4434. 435dc: b5800204 addi r22,r22,8
  4435. 435e0: 843ffc04 addi r16,r16,-16
  4436. 435e4: e4007b0e bge fp,r16,437d4 <___vfprintf_internal_r+0x1668>
  4437. 435e8: 18c00404 addi r3,r3,16
  4438. 435ec: 8c400044 addi r17,r17,1
  4439. 435f0: b5000015 stw r20,0(r22)
  4440. 435f4: b7000115 stw fp,4(r22)
  4441. 435f8: d8c02015 stw r3,128(sp)
  4442. 435fc: dc401f15 stw r17,124(sp)
  4443. 43600: 3c7ff60e bge r7,r17,435dc <__alt_data_end+0xfffd15dc>
  4444. 43604: d9801e04 addi r6,sp,120
  4445. 43608: b80b883a mov r5,r23
  4446. 4360c: 9809883a mov r4,r19
  4447. 43610: d9c03c15 stw r7,240(sp)
  4448. 43614: 00491b40 call 491b4 <__sprint_r>
  4449. 43618: d9c03c17 ldw r7,240(sp)
  4450. 4361c: 103bd71e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4451. 43620: d8c02017 ldw r3,128(sp)
  4452. 43624: dc401f17 ldw r17,124(sp)
  4453. 43628: dd800404 addi r22,sp,16
  4454. 4362c: 003fec06 br 435e0 <__alt_data_end+0xfffd15e0>
  4455. 43630: 9080100c andi r2,r18,64
  4456. 43634: d8002785 stb zero,158(sp)
  4457. 43638: 10010e26 beq r2,zero,43a74 <___vfprintf_internal_r+0x1908>
  4458. 4363c: d9402e17 ldw r5,184(sp)
  4459. 43640: d8c02a17 ldw r3,168(sp)
  4460. 43644: 002d883a mov r22,zero
  4461. 43648: 28800104 addi r2,r5,4
  4462. 4364c: 2cc0000b ldhu r19,0(r5)
  4463. 43650: 183fc90e bge r3,zero,43578 <__alt_data_end+0xfffd1578>
  4464. 43654: d8802e15 stw r2,184(sp)
  4465. 43658: 0039883a mov fp,zero
  4466. 4365c: 9d84b03a or r2,r19,r22
  4467. 43660: 103c1e1e bne r2,zero,426dc <__alt_data_end+0xfffd06dc>
  4468. 43664: 00800044 movi r2,1
  4469. 43668: 003e6c06 br 4301c <__alt_data_end+0xfffd101c>
  4470. 4366c: d9002d17 ldw r4,180(sp)
  4471. 43670: d9801e04 addi r6,sp,120
  4472. 43674: b80b883a mov r5,r23
  4473. 43678: 00491b40 call 491b4 <__sprint_r>
  4474. 4367c: 103bbf1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4475. 43680: d8c02017 ldw r3,128(sp)
  4476. 43684: da000404 addi r8,sp,16
  4477. 43688: d9003217 ldw r4,200(sp)
  4478. 4368c: d8802617 ldw r2,152(sp)
  4479. 43690: d9403317 ldw r5,204(sp)
  4480. 43694: 8123883a add r17,r16,r4
  4481. 43698: 11400216 blt r2,r5,436a4 <___vfprintf_internal_r+0x1538>
  4482. 4369c: 9100004c andi r4,r18,1
  4483. 436a0: 20000d26 beq r4,zero,436d8 <___vfprintf_internal_r+0x156c>
  4484. 436a4: d9003717 ldw r4,220(sp)
  4485. 436a8: d9403417 ldw r5,208(sp)
  4486. 436ac: 1907883a add r3,r3,r4
  4487. 436b0: d9001f17 ldw r4,124(sp)
  4488. 436b4: 41400015 stw r5,0(r8)
  4489. 436b8: d9403717 ldw r5,220(sp)
  4490. 436bc: 21000044 addi r4,r4,1
  4491. 436c0: d8c02015 stw r3,128(sp)
  4492. 436c4: 41400115 stw r5,4(r8)
  4493. 436c8: d9001f15 stw r4,124(sp)
  4494. 436cc: 014001c4 movi r5,7
  4495. 436d0: 2901e816 blt r5,r4,43e74 <___vfprintf_internal_r+0x1d08>
  4496. 436d4: 42000204 addi r8,r8,8
  4497. 436d8: d9003317 ldw r4,204(sp)
  4498. 436dc: 8121883a add r16,r16,r4
  4499. 436e0: 2085c83a sub r2,r4,r2
  4500. 436e4: 8461c83a sub r16,r16,r17
  4501. 436e8: 1400010e bge r2,r16,436f0 <___vfprintf_internal_r+0x1584>
  4502. 436ec: 1021883a mov r16,r2
  4503. 436f0: 04000a0e bge zero,r16,4371c <___vfprintf_internal_r+0x15b0>
  4504. 436f4: d9001f17 ldw r4,124(sp)
  4505. 436f8: 1c07883a add r3,r3,r16
  4506. 436fc: 44400015 stw r17,0(r8)
  4507. 43700: 21000044 addi r4,r4,1
  4508. 43704: 44000115 stw r16,4(r8)
  4509. 43708: d8c02015 stw r3,128(sp)
  4510. 4370c: d9001f15 stw r4,124(sp)
  4511. 43710: 014001c4 movi r5,7
  4512. 43714: 2901fb16 blt r5,r4,43f04 <___vfprintf_internal_r+0x1d98>
  4513. 43718: 42000204 addi r8,r8,8
  4514. 4371c: 8001f716 blt r16,zero,43efc <___vfprintf_internal_r+0x1d90>
  4515. 43720: 1421c83a sub r16,r2,r16
  4516. 43724: 043d160e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80>
  4517. 43728: 04400404 movi r17,16
  4518. 4372c: d8801f17 ldw r2,124(sp)
  4519. 43730: 8c3efb0e bge r17,r16,43320 <__alt_data_end+0xfffd1320>
  4520. 43734: 01400174 movhi r5,5
  4521. 43738: 29488784 addi r5,r5,8734
  4522. 4373c: d9402c15 stw r5,176(sp)
  4523. 43740: 058001c4 movi r22,7
  4524. 43744: dcc02d17 ldw r19,180(sp)
  4525. 43748: 00000306 br 43758 <___vfprintf_internal_r+0x15ec>
  4526. 4374c: 42000204 addi r8,r8,8
  4527. 43750: 843ffc04 addi r16,r16,-16
  4528. 43754: 8c3ef50e bge r17,r16,4332c <__alt_data_end+0xfffd132c>
  4529. 43758: 18c00404 addi r3,r3,16
  4530. 4375c: 10800044 addi r2,r2,1
  4531. 43760: 45000015 stw r20,0(r8)
  4532. 43764: 44400115 stw r17,4(r8)
  4533. 43768: d8c02015 stw r3,128(sp)
  4534. 4376c: d8801f15 stw r2,124(sp)
  4535. 43770: b0bff60e bge r22,r2,4374c <__alt_data_end+0xfffd174c>
  4536. 43774: d9801e04 addi r6,sp,120
  4537. 43778: b80b883a mov r5,r23
  4538. 4377c: 9809883a mov r4,r19
  4539. 43780: 00491b40 call 491b4 <__sprint_r>
  4540. 43784: 103b7d1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4541. 43788: d8c02017 ldw r3,128(sp)
  4542. 4378c: d8801f17 ldw r2,124(sp)
  4543. 43790: da000404 addi r8,sp,16
  4544. 43794: 003fee06 br 43750 <__alt_data_end+0xfffd1750>
  4545. 43798: 9088703a and r4,r18,r2
  4546. 4379c: 203eab1e bne r4,zero,4324c <__alt_data_end+0xfffd124c>
  4547. 437a0: dc401f17 ldw r17,124(sp)
  4548. 437a4: 40800115 stw r2,4(r8)
  4549. 437a8: 44000015 stw r16,0(r8)
  4550. 437ac: 8c400044 addi r17,r17,1
  4551. 437b0: d8c02015 stw r3,128(sp)
  4552. 437b4: dc401f15 stw r17,124(sp)
  4553. 437b8: 008001c4 movi r2,7
  4554. 437bc: 14400e16 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c>
  4555. 437c0: 45800204 addi r22,r8,8
  4556. 437c4: 003eca06 br 432f0 <__alt_data_end+0xfffd12f0>
  4557. 437c8: 01000174 movhi r4,5
  4558. 437cc: 21088784 addi r4,r4,8734
  4559. 437d0: d9002c15 stw r4,176(sp)
  4560. 437d4: d8802c17 ldw r2,176(sp)
  4561. 437d8: 1c07883a add r3,r3,r16
  4562. 437dc: 8c400044 addi r17,r17,1
  4563. 437e0: b0800015 stw r2,0(r22)
  4564. 437e4: b4000115 stw r16,4(r22)
  4565. 437e8: d8c02015 stw r3,128(sp)
  4566. 437ec: dc401f15 stw r17,124(sp)
  4567. 437f0: 008001c4 movi r2,7
  4568. 437f4: 147ebd0e bge r2,r17,432ec <__alt_data_end+0xfffd12ec>
  4569. 437f8: d9002d17 ldw r4,180(sp)
  4570. 437fc: d9801e04 addi r6,sp,120
  4571. 43800: b80b883a mov r5,r23
  4572. 43804: 00491b40 call 491b4 <__sprint_r>
  4573. 43808: 103b5c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4574. 4380c: d8c02017 ldw r3,128(sp)
  4575. 43810: dc401f17 ldw r17,124(sp)
  4576. 43814: dd800404 addi r22,sp,16
  4577. 43818: 003eb506 br 432f0 <__alt_data_end+0xfffd12f0>
  4578. 4381c: d9002d17 ldw r4,180(sp)
  4579. 43820: d9801e04 addi r6,sp,120
  4580. 43824: b80b883a mov r5,r23
  4581. 43828: 00491b40 call 491b4 <__sprint_r>
  4582. 4382c: 103b531e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4583. 43830: d8c02017 ldw r3,128(sp)
  4584. 43834: dc401f17 ldw r17,124(sp)
  4585. 43838: da000404 addi r8,sp,16
  4586. 4383c: 003e8d06 br 43274 <__alt_data_end+0xfffd1274>
  4587. 43840: d9002d17 ldw r4,180(sp)
  4588. 43844: d9801e04 addi r6,sp,120
  4589. 43848: b80b883a mov r5,r23
  4590. 4384c: 00491b40 call 491b4 <__sprint_r>
  4591. 43850: 103b4a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4592. 43854: d8c02017 ldw r3,128(sp)
  4593. 43858: dc401f17 ldw r17,124(sp)
  4594. 4385c: dd800404 addi r22,sp,16
  4595. 43860: 003e8f06 br 432a0 <__alt_data_end+0xfffd12a0>
  4596. 43864: 0027883a mov r19,zero
  4597. 43868: 003f4a06 br 43594 <__alt_data_end+0xfffd1594>
  4598. 4386c: d9002d17 ldw r4,180(sp)
  4599. 43870: d9801e04 addi r6,sp,120
  4600. 43874: b80b883a mov r5,r23
  4601. 43878: 00491b40 call 491b4 <__sprint_r>
  4602. 4387c: 103b3f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4603. 43880: d8c02017 ldw r3,128(sp)
  4604. 43884: da000404 addi r8,sp,16
  4605. 43888: 003c7b06 br 42a78 <__alt_data_end+0xfffd0a78>
  4606. 4388c: d9402a17 ldw r5,168(sp)
  4607. 43890: 04e7c83a sub r19,zero,r19
  4608. 43894: 07000b44 movi fp,45
  4609. 43898: 9804c03a cmpne r2,r19,zero
  4610. 4389c: 05adc83a sub r22,zero,r22
  4611. 438a0: df002785 stb fp,158(sp)
  4612. 438a4: b0adc83a sub r22,r22,r2
  4613. 438a8: 28017b16 blt r5,zero,43e98 <___vfprintf_internal_r+0x1d2c>
  4614. 438ac: 00bfdfc4 movi r2,-129
  4615. 438b0: 90a4703a and r18,r18,r2
  4616. 438b4: 003b8906 br 426dc <__alt_data_end+0xfffd06dc>
  4617. 438b8: d9003617 ldw r4,216(sp)
  4618. 438bc: d9403817 ldw r5,224(sp)
  4619. 438c0: da003d15 stw r8,244(sp)
  4620. 438c4: 0048d400 call 48d40 <__fpclassifyd>
  4621. 438c8: da003d17 ldw r8,244(sp)
  4622. 438cc: 1000f026 beq r2,zero,43c90 <___vfprintf_internal_r+0x1b24>
  4623. 438d0: d9002a17 ldw r4,168(sp)
  4624. 438d4: 05bff7c4 movi r22,-33
  4625. 438d8: 00bfffc4 movi r2,-1
  4626. 438dc: 8dac703a and r22,r17,r22
  4627. 438e0: 20820026 beq r4,r2,440e4 <___vfprintf_internal_r+0x1f78>
  4628. 438e4: 008011c4 movi r2,71
  4629. 438e8: b081f726 beq r22,r2,440c8 <___vfprintf_internal_r+0x1f5c>
  4630. 438ec: d9003817 ldw r4,224(sp)
  4631. 438f0: 90c04014 ori r3,r18,256
  4632. 438f4: d8c02c15 stw r3,176(sp)
  4633. 438f8: 20021516 blt r4,zero,44150 <___vfprintf_internal_r+0x1fe4>
  4634. 438fc: dcc03817 ldw r19,224(sp)
  4635. 43900: d8002905 stb zero,164(sp)
  4636. 43904: 00801984 movi r2,102
  4637. 43908: 8881f926 beq r17,r2,440f0 <___vfprintf_internal_r+0x1f84>
  4638. 4390c: 00801184 movi r2,70
  4639. 43910: 88821c26 beq r17,r2,44184 <___vfprintf_internal_r+0x2018>
  4640. 43914: 00801144 movi r2,69
  4641. 43918: b081ef26 beq r22,r2,440d8 <___vfprintf_internal_r+0x1f6c>
  4642. 4391c: d8c02a17 ldw r3,168(sp)
  4643. 43920: d8802104 addi r2,sp,132
  4644. 43924: d8800315 stw r2,12(sp)
  4645. 43928: d9403617 ldw r5,216(sp)
  4646. 4392c: d8802504 addi r2,sp,148
  4647. 43930: d9002d17 ldw r4,180(sp)
  4648. 43934: d8800215 stw r2,8(sp)
  4649. 43938: d8802604 addi r2,sp,152
  4650. 4393c: d8c00015 stw r3,0(sp)
  4651. 43940: d8800115 stw r2,4(sp)
  4652. 43944: 01c00084 movi r7,2
  4653. 43948: 980d883a mov r6,r19
  4654. 4394c: d8c03c15 stw r3,240(sp)
  4655. 43950: da003d15 stw r8,244(sp)
  4656. 43954: 004489c0 call 4489c <_dtoa_r>
  4657. 43958: 1021883a mov r16,r2
  4658. 4395c: 008019c4 movi r2,103
  4659. 43960: d8c03c17 ldw r3,240(sp)
  4660. 43964: da003d17 ldw r8,244(sp)
  4661. 43968: 88817126 beq r17,r2,43f30 <___vfprintf_internal_r+0x1dc4>
  4662. 4396c: 008011c4 movi r2,71
  4663. 43970: 88829126 beq r17,r2,443b8 <___vfprintf_internal_r+0x224c>
  4664. 43974: 80f9883a add fp,r16,r3
  4665. 43978: d9003617 ldw r4,216(sp)
  4666. 4397c: 000d883a mov r6,zero
  4667. 43980: 000f883a mov r7,zero
  4668. 43984: 980b883a mov r5,r19
  4669. 43988: da003d15 stw r8,244(sp)
  4670. 4398c: 004d3f00 call 4d3f0 <__eqdf2>
  4671. 43990: da003d17 ldw r8,244(sp)
  4672. 43994: 10018d26 beq r2,zero,43fcc <___vfprintf_internal_r+0x1e60>
  4673. 43998: d8802117 ldw r2,132(sp)
  4674. 4399c: 1700062e bgeu r2,fp,439b8 <___vfprintf_internal_r+0x184c>
  4675. 439a0: 01000c04 movi r4,48
  4676. 439a4: 10c00044 addi r3,r2,1
  4677. 439a8: d8c02115 stw r3,132(sp)
  4678. 439ac: 11000005 stb r4,0(r2)
  4679. 439b0: d8802117 ldw r2,132(sp)
  4680. 439b4: 173ffb36 bltu r2,fp,439a4 <__alt_data_end+0xfffd19a4>
  4681. 439b8: 1405c83a sub r2,r2,r16
  4682. 439bc: d8803315 stw r2,204(sp)
  4683. 439c0: 008011c4 movi r2,71
  4684. 439c4: b0817626 beq r22,r2,43fa0 <___vfprintf_internal_r+0x1e34>
  4685. 439c8: 00801944 movi r2,101
  4686. 439cc: 1442800e bge r2,r17,443d0 <___vfprintf_internal_r+0x2264>
  4687. 439d0: d8c02617 ldw r3,152(sp)
  4688. 439d4: 00801984 movi r2,102
  4689. 439d8: d8c03215 stw r3,200(sp)
  4690. 439dc: 8881fe26 beq r17,r2,441d8 <___vfprintf_internal_r+0x206c>
  4691. 439e0: d8c03217 ldw r3,200(sp)
  4692. 439e4: d9003317 ldw r4,204(sp)
  4693. 439e8: 1901dd16 blt r3,r4,44160 <___vfprintf_internal_r+0x1ff4>
  4694. 439ec: 9480004c andi r18,r18,1
  4695. 439f0: 90022b1e bne r18,zero,442a0 <___vfprintf_internal_r+0x2134>
  4696. 439f4: 1805883a mov r2,r3
  4697. 439f8: 18028316 blt r3,zero,44408 <___vfprintf_internal_r+0x229c>
  4698. 439fc: d8c03217 ldw r3,200(sp)
  4699. 43a00: 044019c4 movi r17,103
  4700. 43a04: d8c02b15 stw r3,172(sp)
  4701. 43a08: df002907 ldb fp,164(sp)
  4702. 43a0c: e001531e bne fp,zero,43f5c <___vfprintf_internal_r+0x1df0>
  4703. 43a10: df002783 ldbu fp,158(sp)
  4704. 43a14: d8802915 stw r2,164(sp)
  4705. 43a18: dc802c17 ldw r18,176(sp)
  4706. 43a1c: d8002a15 stw zero,168(sp)
  4707. 43a20: 003baf06 br 428e0 <__alt_data_end+0xfffd08e0>
  4708. 43a24: d8c02e17 ldw r3,184(sp)
  4709. 43a28: d9002e17 ldw r4,184(sp)
  4710. 43a2c: d9402e17 ldw r5,184(sp)
  4711. 43a30: 18c00017 ldw r3,0(r3)
  4712. 43a34: 21000117 ldw r4,4(r4)
  4713. 43a38: 29400204 addi r5,r5,8
  4714. 43a3c: d8c03615 stw r3,216(sp)
  4715. 43a40: d9003815 stw r4,224(sp)
  4716. 43a44: d9402e15 stw r5,184(sp)
  4717. 43a48: 003b5006 br 4278c <__alt_data_end+0xfffd078c>
  4718. 43a4c: ac400007 ldb r17,0(r21)
  4719. 43a50: 003a2806 br 422f4 <__alt_data_end+0xfffd02f4>
  4720. 43a54: 9080100c andi r2,r18,64
  4721. 43a58: 1000a826 beq r2,zero,43cfc <___vfprintf_internal_r+0x1b90>
  4722. 43a5c: d8c02e17 ldw r3,184(sp)
  4723. 43a60: 002d883a mov r22,zero
  4724. 43a64: 1cc0000b ldhu r19,0(r3)
  4725. 43a68: 18c00104 addi r3,r3,4
  4726. 43a6c: d8c02e15 stw r3,184(sp)
  4727. 43a70: 003caf06 br 42d30 <__alt_data_end+0xfffd0d30>
  4728. 43a74: d9002e17 ldw r4,184(sp)
  4729. 43a78: d9402a17 ldw r5,168(sp)
  4730. 43a7c: 002d883a mov r22,zero
  4731. 43a80: 20800104 addi r2,r4,4
  4732. 43a84: 24c00017 ldw r19,0(r4)
  4733. 43a88: 283ebb0e bge r5,zero,43578 <__alt_data_end+0xfffd1578>
  4734. 43a8c: 003ef106 br 43654 <__alt_data_end+0xfffd1654>
  4735. 43a90: 9080040c andi r2,r18,16
  4736. 43a94: 1000921e bne r2,zero,43ce0 <___vfprintf_internal_r+0x1b74>
  4737. 43a98: 9480100c andi r18,r18,64
  4738. 43a9c: 90013926 beq r18,zero,43f84 <___vfprintf_internal_r+0x1e18>
  4739. 43aa0: d9402e17 ldw r5,184(sp)
  4740. 43aa4: d8c02f17 ldw r3,188(sp)
  4741. 43aa8: 28800017 ldw r2,0(r5)
  4742. 43aac: 29400104 addi r5,r5,4
  4743. 43ab0: d9402e15 stw r5,184(sp)
  4744. 43ab4: 10c0000d sth r3,0(r2)
  4745. 43ab8: 0039e406 br 4224c <__alt_data_end+0xfffd024c>
  4746. 43abc: 9080100c andi r2,r18,64
  4747. 43ac0: 10008026 beq r2,zero,43cc4 <___vfprintf_internal_r+0x1b58>
  4748. 43ac4: d8802e17 ldw r2,184(sp)
  4749. 43ac8: 14c0000f ldh r19,0(r2)
  4750. 43acc: 10800104 addi r2,r2,4
  4751. 43ad0: d8802e15 stw r2,184(sp)
  4752. 43ad4: 982dd7fa srai r22,r19,31
  4753. 43ad8: b005883a mov r2,r22
  4754. 43adc: 003af706 br 426bc <__alt_data_end+0xfffd06bc>
  4755. 43ae0: 9080100c andi r2,r18,64
  4756. 43ae4: d8002785 stb zero,158(sp)
  4757. 43ae8: 10008a1e bne r2,zero,43d14 <___vfprintf_internal_r+0x1ba8>
  4758. 43aec: d9002e17 ldw r4,184(sp)
  4759. 43af0: d9402a17 ldw r5,168(sp)
  4760. 43af4: 002d883a mov r22,zero
  4761. 43af8: 20800104 addi r2,r4,4
  4762. 43afc: 24c00017 ldw r19,0(r4)
  4763. 43b00: 283e4b0e bge r5,zero,43430 <__alt_data_end+0xfffd1430>
  4764. 43b04: 9d86b03a or r3,r19,r22
  4765. 43b08: d8802e15 stw r2,184(sp)
  4766. 43b0c: 183e4c1e bne r3,zero,43440 <__alt_data_end+0xfffd1440>
  4767. 43b10: 0039883a mov fp,zero
  4768. 43b14: 0005883a mov r2,zero
  4769. 43b18: 003d4006 br 4301c <__alt_data_end+0xfffd101c>
  4770. 43b1c: 01400174 movhi r5,5
  4771. 43b20: 29488784 addi r5,r5,8734
  4772. 43b24: d9402c15 stw r5,176(sp)
  4773. 43b28: d9402c17 ldw r5,176(sp)
  4774. 43b2c: 1c47883a add r3,r3,r17
  4775. 43b30: 10800044 addi r2,r2,1
  4776. 43b34: 41400015 stw r5,0(r8)
  4777. 43b38: 44400115 stw r17,4(r8)
  4778. 43b3c: d8c02015 stw r3,128(sp)
  4779. 43b40: d8801f15 stw r2,124(sp)
  4780. 43b44: 010001c4 movi r4,7
  4781. 43b48: 20bec816 blt r4,r2,4366c <__alt_data_end+0xfffd166c>
  4782. 43b4c: 42000204 addi r8,r8,8
  4783. 43b50: 003ecd06 br 43688 <__alt_data_end+0xfffd1688>
  4784. 43b54: d9002a17 ldw r4,168(sp)
  4785. 43b58: d8002785 stb zero,158(sp)
  4786. 43b5c: 203d2d16 blt r4,zero,43014 <__alt_data_end+0xfffd1014>
  4787. 43b60: 00bfdfc4 movi r2,-129
  4788. 43b64: 90a4703a and r18,r18,r2
  4789. 43b68: 003a6106 br 424f0 <__alt_data_end+0xfffd04f0>
  4790. 43b6c: 01000174 movhi r4,5
  4791. 43b70: 21088784 addi r4,r4,8734
  4792. 43b74: d9002c15 stw r4,176(sp)
  4793. 43b78: 003bea06 br 42b24 <__alt_data_end+0xfffd0b24>
  4794. 43b7c: d9002d17 ldw r4,180(sp)
  4795. 43b80: d9801e04 addi r6,sp,120
  4796. 43b84: b80b883a mov r5,r23
  4797. 43b88: 00491b40 call 491b4 <__sprint_r>
  4798. 43b8c: 103a7b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4799. 43b90: d8c02017 ldw r3,128(sp)
  4800. 43b94: da000404 addi r8,sp,16
  4801. 43b98: 003d4106 br 430a0 <__alt_data_end+0xfffd10a0>
  4802. 43b9c: d8801f17 ldw r2,124(sp)
  4803. 43ba0: 01400174 movhi r5,5
  4804. 43ba4: 01000044 movi r4,1
  4805. 43ba8: 18c00044 addi r3,r3,1
  4806. 43bac: 10800044 addi r2,r2,1
  4807. 43bb0: 29488704 addi r5,r5,8732
  4808. 43bb4: 41000115 stw r4,4(r8)
  4809. 43bb8: 41400015 stw r5,0(r8)
  4810. 43bbc: d8c02015 stw r3,128(sp)
  4811. 43bc0: d8801f15 stw r2,124(sp)
  4812. 43bc4: 010001c4 movi r4,7
  4813. 43bc8: 20805c16 blt r4,r2,43d3c <___vfprintf_internal_r+0x1bd0>
  4814. 43bcc: 42000204 addi r8,r8,8
  4815. 43bd0: 8800041e bne r17,zero,43be4 <___vfprintf_internal_r+0x1a78>
  4816. 43bd4: d8803317 ldw r2,204(sp)
  4817. 43bd8: 1000021e bne r2,zero,43be4 <___vfprintf_internal_r+0x1a78>
  4818. 43bdc: 9080004c andi r2,r18,1
  4819. 43be0: 103be726 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80>
  4820. 43be4: d9003717 ldw r4,220(sp)
  4821. 43be8: d8801f17 ldw r2,124(sp)
  4822. 43bec: d9403417 ldw r5,208(sp)
  4823. 43bf0: 20c7883a add r3,r4,r3
  4824. 43bf4: 10800044 addi r2,r2,1
  4825. 43bf8: 41000115 stw r4,4(r8)
  4826. 43bfc: 41400015 stw r5,0(r8)
  4827. 43c00: d8c02015 stw r3,128(sp)
  4828. 43c04: d8801f15 stw r2,124(sp)
  4829. 43c08: 010001c4 movi r4,7
  4830. 43c0c: 20812116 blt r4,r2,44094 <___vfprintf_internal_r+0x1f28>
  4831. 43c10: 42000204 addi r8,r8,8
  4832. 43c14: 0463c83a sub r17,zero,r17
  4833. 43c18: 0440730e bge zero,r17,43de8 <___vfprintf_internal_r+0x1c7c>
  4834. 43c1c: 05800404 movi r22,16
  4835. 43c20: b440860e bge r22,r17,43e3c <___vfprintf_internal_r+0x1cd0>
  4836. 43c24: 01400174 movhi r5,5
  4837. 43c28: 29488784 addi r5,r5,8734
  4838. 43c2c: d9402c15 stw r5,176(sp)
  4839. 43c30: 070001c4 movi fp,7
  4840. 43c34: dcc02d17 ldw r19,180(sp)
  4841. 43c38: 00000306 br 43c48 <___vfprintf_internal_r+0x1adc>
  4842. 43c3c: 42000204 addi r8,r8,8
  4843. 43c40: 8c7ffc04 addi r17,r17,-16
  4844. 43c44: b440800e bge r22,r17,43e48 <___vfprintf_internal_r+0x1cdc>
  4845. 43c48: 18c00404 addi r3,r3,16
  4846. 43c4c: 10800044 addi r2,r2,1
  4847. 43c50: 45000015 stw r20,0(r8)
  4848. 43c54: 45800115 stw r22,4(r8)
  4849. 43c58: d8c02015 stw r3,128(sp)
  4850. 43c5c: d8801f15 stw r2,124(sp)
  4851. 43c60: e0bff60e bge fp,r2,43c3c <__alt_data_end+0xfffd1c3c>
  4852. 43c64: d9801e04 addi r6,sp,120
  4853. 43c68: b80b883a mov r5,r23
  4854. 43c6c: 9809883a mov r4,r19
  4855. 43c70: 00491b40 call 491b4 <__sprint_r>
  4856. 43c74: 103a411e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4857. 43c78: d8c02017 ldw r3,128(sp)
  4858. 43c7c: d8801f17 ldw r2,124(sp)
  4859. 43c80: da000404 addi r8,sp,16
  4860. 43c84: 003fee06 br 43c40 <__alt_data_end+0xfffd1c40>
  4861. 43c88: 00bfffc4 movi r2,-1
  4862. 43c8c: 003a3f06 br 4258c <__alt_data_end+0xfffd058c>
  4863. 43c90: 008011c4 movi r2,71
  4864. 43c94: 1440b816 blt r2,r17,43f78 <___vfprintf_internal_r+0x1e0c>
  4865. 43c98: 04000174 movhi r16,5
  4866. 43c9c: 84087904 addi r16,r16,8676
  4867. 43ca0: 00c000c4 movi r3,3
  4868. 43ca4: 00bfdfc4 movi r2,-129
  4869. 43ca8: d8c02915 stw r3,164(sp)
  4870. 43cac: 90a4703a and r18,r18,r2
  4871. 43cb0: df002783 ldbu fp,158(sp)
  4872. 43cb4: d8c02b15 stw r3,172(sp)
  4873. 43cb8: d8002a15 stw zero,168(sp)
  4874. 43cbc: d8003215 stw zero,200(sp)
  4875. 43cc0: 003b0706 br 428e0 <__alt_data_end+0xfffd08e0>
  4876. 43cc4: d8c02e17 ldw r3,184(sp)
  4877. 43cc8: 1cc00017 ldw r19,0(r3)
  4878. 43ccc: 18c00104 addi r3,r3,4
  4879. 43cd0: d8c02e15 stw r3,184(sp)
  4880. 43cd4: 982dd7fa srai r22,r19,31
  4881. 43cd8: b005883a mov r2,r22
  4882. 43cdc: 003a7706 br 426bc <__alt_data_end+0xfffd06bc>
  4883. 43ce0: d8c02e17 ldw r3,184(sp)
  4884. 43ce4: d9002f17 ldw r4,188(sp)
  4885. 43ce8: 18800017 ldw r2,0(r3)
  4886. 43cec: 18c00104 addi r3,r3,4
  4887. 43cf0: d8c02e15 stw r3,184(sp)
  4888. 43cf4: 11000015 stw r4,0(r2)
  4889. 43cf8: 00395406 br 4224c <__alt_data_end+0xfffd024c>
  4890. 43cfc: d9002e17 ldw r4,184(sp)
  4891. 43d00: 002d883a mov r22,zero
  4892. 43d04: 24c00017 ldw r19,0(r4)
  4893. 43d08: 21000104 addi r4,r4,4
  4894. 43d0c: d9002e15 stw r4,184(sp)
  4895. 43d10: 003c0706 br 42d30 <__alt_data_end+0xfffd0d30>
  4896. 43d14: d9402e17 ldw r5,184(sp)
  4897. 43d18: d8c02a17 ldw r3,168(sp)
  4898. 43d1c: 002d883a mov r22,zero
  4899. 43d20: 28800104 addi r2,r5,4
  4900. 43d24: 2cc0000b ldhu r19,0(r5)
  4901. 43d28: 183dc10e bge r3,zero,43430 <__alt_data_end+0xfffd1430>
  4902. 43d2c: 003f7506 br 43b04 <__alt_data_end+0xfffd1b04>
  4903. 43d30: 04000174 movhi r16,5
  4904. 43d34: 84087704 addi r16,r16,8668
  4905. 43d38: 003aa706 br 427d8 <__alt_data_end+0xfffd07d8>
  4906. 43d3c: d9002d17 ldw r4,180(sp)
  4907. 43d40: d9801e04 addi r6,sp,120
  4908. 43d44: b80b883a mov r5,r23
  4909. 43d48: 00491b40 call 491b4 <__sprint_r>
  4910. 43d4c: 103a0b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4911. 43d50: dc402617 ldw r17,152(sp)
  4912. 43d54: d8c02017 ldw r3,128(sp)
  4913. 43d58: da000404 addi r8,sp,16
  4914. 43d5c: 003f9c06 br 43bd0 <__alt_data_end+0xfffd1bd0>
  4915. 43d60: ac400043 ldbu r17,1(r21)
  4916. 43d64: 84000814 ori r16,r16,32
  4917. 43d68: ad400044 addi r21,r21,1
  4918. 43d6c: 8c403fcc andi r17,r17,255
  4919. 43d70: 8c40201c xori r17,r17,128
  4920. 43d74: 8c7fe004 addi r17,r17,-128
  4921. 43d78: 00395e06 br 422f4 <__alt_data_end+0xfffd02f4>
  4922. 43d7c: d8c02e15 stw r3,184(sp)
  4923. 43d80: 0039883a mov fp,zero
  4924. 43d84: 003e3506 br 4365c <__alt_data_end+0xfffd165c>
  4925. 43d88: d9002d17 ldw r4,180(sp)
  4926. 43d8c: d9801e04 addi r6,sp,120
  4927. 43d90: b80b883a mov r5,r23
  4928. 43d94: 00491b40 call 491b4 <__sprint_r>
  4929. 43d98: 1039f81e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4930. 43d9c: d8c02017 ldw r3,128(sp)
  4931. 43da0: da000404 addi r8,sp,16
  4932. 43da4: 003cd006 br 430e8 <__alt_data_end+0xfffd10e8>
  4933. 43da8: 8009883a mov r4,r16
  4934. 43dac: df003d15 stw fp,244(sp)
  4935. 43db0: 00490200 call 49020 <strlen>
  4936. 43db4: d8802b15 stw r2,172(sp)
  4937. 43db8: da003d17 ldw r8,244(sp)
  4938. 43dbc: 103c200e bge r2,zero,42e40 <__alt_data_end+0xfffd0e40>
  4939. 43dc0: 0005883a mov r2,zero
  4940. 43dc4: 003c1e06 br 42e40 <__alt_data_end+0xfffd0e40>
  4941. 43dc8: d9002d17 ldw r4,180(sp)
  4942. 43dcc: d9801e04 addi r6,sp,120
  4943. 43dd0: b80b883a mov r5,r23
  4944. 43dd4: 00491b40 call 491b4 <__sprint_r>
  4945. 43dd8: 1039e81e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4946. 43ddc: d8c02017 ldw r3,128(sp)
  4947. 43de0: d8801f17 ldw r2,124(sp)
  4948. 43de4: da000404 addi r8,sp,16
  4949. 43de8: d9403317 ldw r5,204(sp)
  4950. 43dec: 10800044 addi r2,r2,1
  4951. 43df0: 44000015 stw r16,0(r8)
  4952. 43df4: 28c7883a add r3,r5,r3
  4953. 43df8: 003b5b06 br 42b68 <__alt_data_end+0xfffd0b68>
  4954. 43dfc: 01000174 movhi r4,5
  4955. 43e00: 21088b84 addi r4,r4,8750
  4956. 43e04: d9003515 stw r4,212(sp)
  4957. 43e08: 003af206 br 429d4 <__alt_data_end+0xfffd09d4>
  4958. 43e0c: 013fffc4 movi r4,-1
  4959. 43e10: 003a0806 br 42634 <__alt_data_end+0xfffd0634>
  4960. 43e14: 0023883a mov r17,zero
  4961. 43e18: 003d9d06 br 43490 <__alt_data_end+0xfffd1490>
  4962. 43e1c: d9002d17 ldw r4,180(sp)
  4963. 43e20: d9801e04 addi r6,sp,120
  4964. 43e24: b80b883a mov r5,r23
  4965. 43e28: 00491b40 call 491b4 <__sprint_r>
  4966. 43e2c: 1039d31e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4967. 43e30: d8c02017 ldw r3,128(sp)
  4968. 43e34: da000404 addi r8,sp,16
  4969. 43e38: 003d9406 br 4348c <__alt_data_end+0xfffd148c>
  4970. 43e3c: 01000174 movhi r4,5
  4971. 43e40: 21088784 addi r4,r4,8734
  4972. 43e44: d9002c15 stw r4,176(sp)
  4973. 43e48: d9002c17 ldw r4,176(sp)
  4974. 43e4c: 1c47883a add r3,r3,r17
  4975. 43e50: 10800044 addi r2,r2,1
  4976. 43e54: 41000015 stw r4,0(r8)
  4977. 43e58: 44400115 stw r17,4(r8)
  4978. 43e5c: d8c02015 stw r3,128(sp)
  4979. 43e60: d8801f15 stw r2,124(sp)
  4980. 43e64: 010001c4 movi r4,7
  4981. 43e68: 20bfd716 blt r4,r2,43dc8 <__alt_data_end+0xfffd1dc8>
  4982. 43e6c: 42000204 addi r8,r8,8
  4983. 43e70: 003fdd06 br 43de8 <__alt_data_end+0xfffd1de8>
  4984. 43e74: d9002d17 ldw r4,180(sp)
  4985. 43e78: d9801e04 addi r6,sp,120
  4986. 43e7c: b80b883a mov r5,r23
  4987. 43e80: 00491b40 call 491b4 <__sprint_r>
  4988. 43e84: 1039bd1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  4989. 43e88: d8802617 ldw r2,152(sp)
  4990. 43e8c: d8c02017 ldw r3,128(sp)
  4991. 43e90: da000404 addi r8,sp,16
  4992. 43e94: 003e1006 br 436d8 <__alt_data_end+0xfffd16d8>
  4993. 43e98: 00800044 movi r2,1
  4994. 43e9c: 10803fcc andi r2,r2,255
  4995. 43ea0: 00c00044 movi r3,1
  4996. 43ea4: 10fa0d26 beq r2,r3,426dc <__alt_data_end+0xfffd06dc>
  4997. 43ea8: 00c00084 movi r3,2
  4998. 43eac: 10fbaf26 beq r2,r3,42d6c <__alt_data_end+0xfffd0d6c>
  4999. 43eb0: 003a6d06 br 42868 <__alt_data_end+0xfffd0868>
  5000. 43eb4: 01000174 movhi r4,5
  5001. 43eb8: 21088b84 addi r4,r4,8750
  5002. 43ebc: d9003515 stw r4,212(sp)
  5003. 43ec0: 003b5406 br 42c14 <__alt_data_end+0xfffd0c14>
  5004. 43ec4: d8802a17 ldw r2,168(sp)
  5005. 43ec8: 00c00184 movi r3,6
  5006. 43ecc: 1880012e bgeu r3,r2,43ed4 <___vfprintf_internal_r+0x1d68>
  5007. 43ed0: 1805883a mov r2,r3
  5008. 43ed4: d8802b15 stw r2,172(sp)
  5009. 43ed8: 1000ef16 blt r2,zero,44298 <___vfprintf_internal_r+0x212c>
  5010. 43edc: 04000174 movhi r16,5
  5011. 43ee0: d8802915 stw r2,164(sp)
  5012. 43ee4: dcc02e15 stw r19,184(sp)
  5013. 43ee8: d8002a15 stw zero,168(sp)
  5014. 43eec: d8003215 stw zero,200(sp)
  5015. 43ef0: 84088504 addi r16,r16,8724
  5016. 43ef4: 0039883a mov fp,zero
  5017. 43ef8: 003a8006 br 428fc <__alt_data_end+0xfffd08fc>
  5018. 43efc: 0021883a mov r16,zero
  5019. 43f00: 003e0706 br 43720 <__alt_data_end+0xfffd1720>
  5020. 43f04: d9002d17 ldw r4,180(sp)
  5021. 43f08: d9801e04 addi r6,sp,120
  5022. 43f0c: b80b883a mov r5,r23
  5023. 43f10: 00491b40 call 491b4 <__sprint_r>
  5024. 43f14: 1039991e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  5025. 43f18: d8802617 ldw r2,152(sp)
  5026. 43f1c: d9403317 ldw r5,204(sp)
  5027. 43f20: d8c02017 ldw r3,128(sp)
  5028. 43f24: da000404 addi r8,sp,16
  5029. 43f28: 2885c83a sub r2,r5,r2
  5030. 43f2c: 003dfb06 br 4371c <__alt_data_end+0xfffd171c>
  5031. 43f30: 9080004c andi r2,r18,1
  5032. 43f34: 103e8f1e bne r2,zero,43974 <__alt_data_end+0xfffd1974>
  5033. 43f38: d8802117 ldw r2,132(sp)
  5034. 43f3c: 003e9e06 br 439b8 <__alt_data_end+0xfffd19b8>
  5035. 43f40: 1025883a mov r18,r2
  5036. 43f44: 0039883a mov fp,zero
  5037. 43f48: 00800084 movi r2,2
  5038. 43f4c: 003fd306 br 43e9c <__alt_data_end+0xfffd1e9c>
  5039. 43f50: 07000b44 movi fp,45
  5040. 43f54: df002785 stb fp,158(sp)
  5041. 43f58: 003a1b06 br 427c8 <__alt_data_end+0xfffd07c8>
  5042. 43f5c: 00c00b44 movi r3,45
  5043. 43f60: d8c02785 stb r3,158(sp)
  5044. 43f64: d8802915 stw r2,164(sp)
  5045. 43f68: dc802c17 ldw r18,176(sp)
  5046. 43f6c: d8002a15 stw zero,168(sp)
  5047. 43f70: 07000b44 movi fp,45
  5048. 43f74: 003a5e06 br 428f0 <__alt_data_end+0xfffd08f0>
  5049. 43f78: 04000174 movhi r16,5
  5050. 43f7c: 84087a04 addi r16,r16,8680
  5051. 43f80: 003f4706 br 43ca0 <__alt_data_end+0xfffd1ca0>
  5052. 43f84: d9002e17 ldw r4,184(sp)
  5053. 43f88: d9402f17 ldw r5,188(sp)
  5054. 43f8c: 20800017 ldw r2,0(r4)
  5055. 43f90: 21000104 addi r4,r4,4
  5056. 43f94: d9002e15 stw r4,184(sp)
  5057. 43f98: 11400015 stw r5,0(r2)
  5058. 43f9c: 0038ab06 br 4224c <__alt_data_end+0xfffd024c>
  5059. 43fa0: dd802617 ldw r22,152(sp)
  5060. 43fa4: 00bfff44 movi r2,-3
  5061. 43fa8: b0801c16 blt r22,r2,4401c <___vfprintf_internal_r+0x1eb0>
  5062. 43fac: d9402a17 ldw r5,168(sp)
  5063. 43fb0: 2d801a16 blt r5,r22,4401c <___vfprintf_internal_r+0x1eb0>
  5064. 43fb4: dd803215 stw r22,200(sp)
  5065. 43fb8: 003e8906 br 439e0 <__alt_data_end+0xfffd19e0>
  5066. 43fbc: 01000174 movhi r4,5
  5067. 43fc0: 21088784 addi r4,r4,8734
  5068. 43fc4: d9002c15 stw r4,176(sp)
  5069. 43fc8: 003c9106 br 43210 <__alt_data_end+0xfffd1210>
  5070. 43fcc: e005883a mov r2,fp
  5071. 43fd0: 003e7906 br 439b8 <__alt_data_end+0xfffd19b8>
  5072. 43fd4: d9002a17 ldw r4,168(sp)
  5073. 43fd8: df002783 ldbu fp,158(sp)
  5074. 43fdc: dcc02e15 stw r19,184(sp)
  5075. 43fe0: d9002915 stw r4,164(sp)
  5076. 43fe4: d9002b15 stw r4,172(sp)
  5077. 43fe8: d8002a15 stw zero,168(sp)
  5078. 43fec: d8003215 stw zero,200(sp)
  5079. 43ff0: 003a3b06 br 428e0 <__alt_data_end+0xfffd08e0>
  5080. 43ff4: 9080004c andi r2,r18,1
  5081. 43ff8: 0039883a mov fp,zero
  5082. 43ffc: 10000426 beq r2,zero,44010 <___vfprintf_internal_r+0x1ea4>
  5083. 44000: 00800c04 movi r2,48
  5084. 44004: dc001dc4 addi r16,sp,119
  5085. 44008: d8801dc5 stb r2,119(sp)
  5086. 4400c: 003b6406 br 42da0 <__alt_data_end+0xfffd0da0>
  5087. 44010: d8002b15 stw zero,172(sp)
  5088. 44014: dc001e04 addi r16,sp,120
  5089. 44018: 003a2b06 br 428c8 <__alt_data_end+0xfffd08c8>
  5090. 4401c: 8c7fff84 addi r17,r17,-2
  5091. 44020: b5bfffc4 addi r22,r22,-1
  5092. 44024: dd802615 stw r22,152(sp)
  5093. 44028: dc4022c5 stb r17,139(sp)
  5094. 4402c: b000bf16 blt r22,zero,4432c <___vfprintf_internal_r+0x21c0>
  5095. 44030: 00800ac4 movi r2,43
  5096. 44034: d8802305 stb r2,140(sp)
  5097. 44038: 00800244 movi r2,9
  5098. 4403c: 15807016 blt r2,r22,44200 <___vfprintf_internal_r+0x2094>
  5099. 44040: 00800c04 movi r2,48
  5100. 44044: b5800c04 addi r22,r22,48
  5101. 44048: d8802345 stb r2,141(sp)
  5102. 4404c: dd802385 stb r22,142(sp)
  5103. 44050: d88023c4 addi r2,sp,143
  5104. 44054: df0022c4 addi fp,sp,139
  5105. 44058: d8c03317 ldw r3,204(sp)
  5106. 4405c: 1739c83a sub fp,r2,fp
  5107. 44060: d9003317 ldw r4,204(sp)
  5108. 44064: e0c7883a add r3,fp,r3
  5109. 44068: df003a15 stw fp,232(sp)
  5110. 4406c: d8c02b15 stw r3,172(sp)
  5111. 44070: 00800044 movi r2,1
  5112. 44074: 1100b30e bge r2,r4,44344 <___vfprintf_internal_r+0x21d8>
  5113. 44078: d8c02b17 ldw r3,172(sp)
  5114. 4407c: 18c00044 addi r3,r3,1
  5115. 44080: d8c02b15 stw r3,172(sp)
  5116. 44084: 1805883a mov r2,r3
  5117. 44088: 1800ac16 blt r3,zero,4433c <___vfprintf_internal_r+0x21d0>
  5118. 4408c: d8003215 stw zero,200(sp)
  5119. 44090: 003e5d06 br 43a08 <__alt_data_end+0xfffd1a08>
  5120. 44094: d9002d17 ldw r4,180(sp)
  5121. 44098: d9801e04 addi r6,sp,120
  5122. 4409c: b80b883a mov r5,r23
  5123. 440a0: 00491b40 call 491b4 <__sprint_r>
  5124. 440a4: 1039351e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
  5125. 440a8: dc402617 ldw r17,152(sp)
  5126. 440ac: d8c02017 ldw r3,128(sp)
  5127. 440b0: d8801f17 ldw r2,124(sp)
  5128. 440b4: da000404 addi r8,sp,16
  5129. 440b8: 003ed606 br 43c14 <__alt_data_end+0xfffd1c14>
  5130. 440bc: 182b883a mov r21,r3
  5131. 440c0: d8002a15 stw zero,168(sp)
  5132. 440c4: 00388c06 br 422f8 <__alt_data_end+0xfffd02f8>
  5133. 440c8: d8802a17 ldw r2,168(sp)
  5134. 440cc: 103e071e bne r2,zero,438ec <__alt_data_end+0xfffd18ec>
  5135. 440d0: dc002a15 stw r16,168(sp)
  5136. 440d4: 003e0506 br 438ec <__alt_data_end+0xfffd18ec>
  5137. 440d8: d9002a17 ldw r4,168(sp)
  5138. 440dc: 20c00044 addi r3,r4,1
  5139. 440e0: 003e0f06 br 43920 <__alt_data_end+0xfffd1920>
  5140. 440e4: 01400184 movi r5,6
  5141. 440e8: d9402a15 stw r5,168(sp)
  5142. 440ec: 003dff06 br 438ec <__alt_data_end+0xfffd18ec>
  5143. 440f0: d8802104 addi r2,sp,132
  5144. 440f4: d8800315 stw r2,12(sp)
  5145. 440f8: d8802504 addi r2,sp,148
  5146. 440fc: d8800215 stw r2,8(sp)
  5147. 44100: d8802604 addi r2,sp,152
  5148. 44104: d8800115 stw r2,4(sp)
  5149. 44108: d8802a17 ldw r2,168(sp)
  5150. 4410c: d9403617 ldw r5,216(sp)
  5151. 44110: d9002d17 ldw r4,180(sp)
  5152. 44114: d8800015 stw r2,0(sp)
  5153. 44118: 01c000c4 movi r7,3
  5154. 4411c: 980d883a mov r6,r19
  5155. 44120: da003d15 stw r8,244(sp)
  5156. 44124: 004489c0 call 4489c <_dtoa_r>
  5157. 44128: d8c02a17 ldw r3,168(sp)
  5158. 4412c: da003d17 ldw r8,244(sp)
  5159. 44130: 1021883a mov r16,r2
  5160. 44134: 10f9883a add fp,r2,r3
  5161. 44138: 81000007 ldb r4,0(r16)
  5162. 4413c: 00800c04 movi r2,48
  5163. 44140: 20805e26 beq r4,r2,442bc <___vfprintf_internal_r+0x2150>
  5164. 44144: d8c02617 ldw r3,152(sp)
  5165. 44148: e0f9883a add fp,fp,r3
  5166. 4414c: 003e0a06 br 43978 <__alt_data_end+0xfffd1978>
  5167. 44150: 00c00b44 movi r3,45
  5168. 44154: 24e0003c xorhi r19,r4,32768
  5169. 44158: d8c02905 stb r3,164(sp)
  5170. 4415c: 003de906 br 43904 <__alt_data_end+0xfffd1904>
  5171. 44160: d8c03217 ldw r3,200(sp)
  5172. 44164: 00c07a0e bge zero,r3,44350 <___vfprintf_internal_r+0x21e4>
  5173. 44168: 00800044 movi r2,1
  5174. 4416c: d9003317 ldw r4,204(sp)
  5175. 44170: 1105883a add r2,r2,r4
  5176. 44174: d8802b15 stw r2,172(sp)
  5177. 44178: 10004e16 blt r2,zero,442b4 <___vfprintf_internal_r+0x2148>
  5178. 4417c: 044019c4 movi r17,103
  5179. 44180: 003e2106 br 43a08 <__alt_data_end+0xfffd1a08>
  5180. 44184: d9002a17 ldw r4,168(sp)
  5181. 44188: d8802104 addi r2,sp,132
  5182. 4418c: d8800315 stw r2,12(sp)
  5183. 44190: d9000015 stw r4,0(sp)
  5184. 44194: d8802504 addi r2,sp,148
  5185. 44198: d9403617 ldw r5,216(sp)
  5186. 4419c: d9002d17 ldw r4,180(sp)
  5187. 441a0: d8800215 stw r2,8(sp)
  5188. 441a4: d8802604 addi r2,sp,152
  5189. 441a8: d8800115 stw r2,4(sp)
  5190. 441ac: 01c000c4 movi r7,3
  5191. 441b0: 980d883a mov r6,r19
  5192. 441b4: da003d15 stw r8,244(sp)
  5193. 441b8: 004489c0 call 4489c <_dtoa_r>
  5194. 441bc: d8c02a17 ldw r3,168(sp)
  5195. 441c0: da003d17 ldw r8,244(sp)
  5196. 441c4: 1021883a mov r16,r2
  5197. 441c8: 00801184 movi r2,70
  5198. 441cc: 80f9883a add fp,r16,r3
  5199. 441d0: 88bfd926 beq r17,r2,44138 <__alt_data_end+0xfffd2138>
  5200. 441d4: 003de806 br 43978 <__alt_data_end+0xfffd1978>
  5201. 441d8: d9002a17 ldw r4,168(sp)
  5202. 441dc: 00c04d0e bge zero,r3,44314 <___vfprintf_internal_r+0x21a8>
  5203. 441e0: 2000441e bne r4,zero,442f4 <___vfprintf_internal_r+0x2188>
  5204. 441e4: 9480004c andi r18,r18,1
  5205. 441e8: 9000421e bne r18,zero,442f4 <___vfprintf_internal_r+0x2188>
  5206. 441ec: 1805883a mov r2,r3
  5207. 441f0: 18006f16 blt r3,zero,443b0 <___vfprintf_internal_r+0x2244>
  5208. 441f4: d8c03217 ldw r3,200(sp)
  5209. 441f8: d8c02b15 stw r3,172(sp)
  5210. 441fc: 003e0206 br 43a08 <__alt_data_end+0xfffd1a08>
  5211. 44200: df0022c4 addi fp,sp,139
  5212. 44204: dc002a15 stw r16,168(sp)
  5213. 44208: 4027883a mov r19,r8
  5214. 4420c: e021883a mov r16,fp
  5215. 44210: b009883a mov r4,r22
  5216. 44214: 01400284 movi r5,10
  5217. 44218: 004c8c80 call 4c8c8 <__modsi3>
  5218. 4421c: 10800c04 addi r2,r2,48
  5219. 44220: 843fffc4 addi r16,r16,-1
  5220. 44224: b009883a mov r4,r22
  5221. 44228: 01400284 movi r5,10
  5222. 4422c: 80800005 stb r2,0(r16)
  5223. 44230: 004c8440 call 4c844 <__divsi3>
  5224. 44234: 102d883a mov r22,r2
  5225. 44238: 00800244 movi r2,9
  5226. 4423c: 15bff416 blt r2,r22,44210 <__alt_data_end+0xfffd2210>
  5227. 44240: 9811883a mov r8,r19
  5228. 44244: b0800c04 addi r2,r22,48
  5229. 44248: 8027883a mov r19,r16
  5230. 4424c: 997fffc4 addi r5,r19,-1
  5231. 44250: 98bfffc5 stb r2,-1(r19)
  5232. 44254: dc002a17 ldw r16,168(sp)
  5233. 44258: 2f006d2e bgeu r5,fp,44410 <___vfprintf_internal_r+0x22a4>
  5234. 4425c: d9c02384 addi r7,sp,142
  5235. 44260: 3ccfc83a sub r7,r7,r19
  5236. 44264: d9002344 addi r4,sp,141
  5237. 44268: e1cf883a add r7,fp,r7
  5238. 4426c: 00000106 br 44274 <___vfprintf_internal_r+0x2108>
  5239. 44270: 28800003 ldbu r2,0(r5)
  5240. 44274: 20800005 stb r2,0(r4)
  5241. 44278: 21000044 addi r4,r4,1
  5242. 4427c: 29400044 addi r5,r5,1
  5243. 44280: 393ffb1e bne r7,r4,44270 <__alt_data_end+0xfffd2270>
  5244. 44284: d8802304 addi r2,sp,140
  5245. 44288: 14c5c83a sub r2,r2,r19
  5246. 4428c: d8c02344 addi r3,sp,141
  5247. 44290: 1885883a add r2,r3,r2
  5248. 44294: 003f7006 br 44058 <__alt_data_end+0xfffd2058>
  5249. 44298: 0005883a mov r2,zero
  5250. 4429c: 003f0f06 br 43edc <__alt_data_end+0xfffd1edc>
  5251. 442a0: d8c03217 ldw r3,200(sp)
  5252. 442a4: 18c00044 addi r3,r3,1
  5253. 442a8: d8c02b15 stw r3,172(sp)
  5254. 442ac: 1805883a mov r2,r3
  5255. 442b0: 183fb20e bge r3,zero,4417c <__alt_data_end+0xfffd217c>
  5256. 442b4: 0005883a mov r2,zero
  5257. 442b8: 003fb006 br 4417c <__alt_data_end+0xfffd217c>
  5258. 442bc: d9003617 ldw r4,216(sp)
  5259. 442c0: 000d883a mov r6,zero
  5260. 442c4: 000f883a mov r7,zero
  5261. 442c8: 980b883a mov r5,r19
  5262. 442cc: d8c03c15 stw r3,240(sp)
  5263. 442d0: da003d15 stw r8,244(sp)
  5264. 442d4: 004d3f00 call 4d3f0 <__eqdf2>
  5265. 442d8: d8c03c17 ldw r3,240(sp)
  5266. 442dc: da003d17 ldw r8,244(sp)
  5267. 442e0: 103f9826 beq r2,zero,44144 <__alt_data_end+0xfffd2144>
  5268. 442e4: 00800044 movi r2,1
  5269. 442e8: 10c7c83a sub r3,r2,r3
  5270. 442ec: d8c02615 stw r3,152(sp)
  5271. 442f0: 003f9506 br 44148 <__alt_data_end+0xfffd2148>
  5272. 442f4: d9002a17 ldw r4,168(sp)
  5273. 442f8: d8c03217 ldw r3,200(sp)
  5274. 442fc: 20800044 addi r2,r4,1
  5275. 44300: 1885883a add r2,r3,r2
  5276. 44304: d8802b15 stw r2,172(sp)
  5277. 44308: 103dbf0e bge r2,zero,43a08 <__alt_data_end+0xfffd1a08>
  5278. 4430c: 0005883a mov r2,zero
  5279. 44310: 003dbd06 br 43a08 <__alt_data_end+0xfffd1a08>
  5280. 44314: 2000201e bne r4,zero,44398 <___vfprintf_internal_r+0x222c>
  5281. 44318: 9480004c andi r18,r18,1
  5282. 4431c: 90001e1e bne r18,zero,44398 <___vfprintf_internal_r+0x222c>
  5283. 44320: 00800044 movi r2,1
  5284. 44324: d8802b15 stw r2,172(sp)
  5285. 44328: 003db706 br 43a08 <__alt_data_end+0xfffd1a08>
  5286. 4432c: 00800b44 movi r2,45
  5287. 44330: 05adc83a sub r22,zero,r22
  5288. 44334: d8802305 stb r2,140(sp)
  5289. 44338: 003f3f06 br 44038 <__alt_data_end+0xfffd2038>
  5290. 4433c: 0005883a mov r2,zero
  5291. 44340: 003f5206 br 4408c <__alt_data_end+0xfffd208c>
  5292. 44344: 90a4703a and r18,r18,r2
  5293. 44348: 903f4e26 beq r18,zero,44084 <__alt_data_end+0xfffd2084>
  5294. 4434c: 003f4a06 br 44078 <__alt_data_end+0xfffd2078>
  5295. 44350: 00800084 movi r2,2
  5296. 44354: 10c5c83a sub r2,r2,r3
  5297. 44358: 003f8406 br 4416c <__alt_data_end+0xfffd216c>
  5298. 4435c: d9402e17 ldw r5,184(sp)
  5299. 44360: d9002e17 ldw r4,184(sp)
  5300. 44364: ac400043 ldbu r17,1(r21)
  5301. 44368: 29400017 ldw r5,0(r5)
  5302. 4436c: 20800104 addi r2,r4,4
  5303. 44370: d8802e15 stw r2,184(sp)
  5304. 44374: d9402a15 stw r5,168(sp)
  5305. 44378: 182b883a mov r21,r3
  5306. 4437c: 283e7b0e bge r5,zero,43d6c <__alt_data_end+0xfffd1d6c>
  5307. 44380: 8c403fcc andi r17,r17,255
  5308. 44384: 017fffc4 movi r5,-1
  5309. 44388: 8c40201c xori r17,r17,128
  5310. 4438c: d9402a15 stw r5,168(sp)
  5311. 44390: 8c7fe004 addi r17,r17,-128
  5312. 44394: 0037d706 br 422f4 <__alt_data_end+0xfffd02f4>
  5313. 44398: d8c02a17 ldw r3,168(sp)
  5314. 4439c: 18c00084 addi r3,r3,2
  5315. 443a0: d8c02b15 stw r3,172(sp)
  5316. 443a4: 1805883a mov r2,r3
  5317. 443a8: 183d970e bge r3,zero,43a08 <__alt_data_end+0xfffd1a08>
  5318. 443ac: 003fd706 br 4430c <__alt_data_end+0xfffd230c>
  5319. 443b0: 0005883a mov r2,zero
  5320. 443b4: 003f8f06 br 441f4 <__alt_data_end+0xfffd21f4>
  5321. 443b8: 9080004c andi r2,r18,1
  5322. 443bc: 103f821e bne r2,zero,441c8 <__alt_data_end+0xfffd21c8>
  5323. 443c0: d8802117 ldw r2,132(sp)
  5324. 443c4: 1405c83a sub r2,r2,r16
  5325. 443c8: d8803315 stw r2,204(sp)
  5326. 443cc: b47ef426 beq r22,r17,43fa0 <__alt_data_end+0xfffd1fa0>
  5327. 443d0: dd802617 ldw r22,152(sp)
  5328. 443d4: 003f1206 br 44020 <__alt_data_end+0xfffd2020>
  5329. 443d8: d8c02b03 ldbu r3,172(sp)
  5330. 443dc: d8c02785 stb r3,158(sp)
  5331. 443e0: 0038df06 br 42760 <__alt_data_end+0xfffd0760>
  5332. 443e4: d8c02b03 ldbu r3,172(sp)
  5333. 443e8: d8c02785 stb r3,158(sp)
  5334. 443ec: 0038aa06 br 42698 <__alt_data_end+0xfffd0698>
  5335. 443f0: d8c02b03 ldbu r3,172(sp)
  5336. 443f4: d8c02785 stb r3,158(sp)
  5337. 443f8: 003a4306 br 42d08 <__alt_data_end+0xfffd0d08>
  5338. 443fc: d8c02b03 ldbu r3,172(sp)
  5339. 44400: d8c02785 stb r3,158(sp)
  5340. 44404: 003af506 br 42fdc <__alt_data_end+0xfffd0fdc>
  5341. 44408: 0005883a mov r2,zero
  5342. 4440c: 003d7b06 br 439fc <__alt_data_end+0xfffd19fc>
  5343. 44410: d8802344 addi r2,sp,141
  5344. 44414: 003f1006 br 44058 <__alt_data_end+0xfffd2058>
  5345. 44418: d8c02b03 ldbu r3,172(sp)
  5346. 4441c: d8c02785 stb r3,158(sp)
  5347. 44420: 0038fd06 br 42818 <__alt_data_end+0xfffd0818>
  5348. 44424: d8c02b03 ldbu r3,172(sp)
  5349. 44428: d8c02785 stb r3,158(sp)
  5350. 4442c: 003a9706 br 42e8c <__alt_data_end+0xfffd0e8c>
  5351. 44430: d8c02b03 ldbu r3,172(sp)
  5352. 44434: d8c02785 stb r3,158(sp)
  5353. 44438: 003a1806 br 42c9c <__alt_data_end+0xfffd0c9c>
  5354. 4443c: d8c02b03 ldbu r3,172(sp)
  5355. 44440: d8c02785 stb r3,158(sp)
  5356. 44444: 003abe06 br 42f40 <__alt_data_end+0xfffd0f40>
  5357. 00044448 <__vfprintf_internal>:
  5358. 44448: 00800174 movhi r2,5
  5359. 4444c: 10908b04 addi r2,r2,16940
  5360. 44450: 300f883a mov r7,r6
  5361. 44454: 280d883a mov r6,r5
  5362. 44458: 200b883a mov r5,r4
  5363. 4445c: 11000017 ldw r4,0(r2)
  5364. 44460: 004216c1 jmpi 4216c <___vfprintf_internal_r>
  5365. 00044464 <__sbprintf>:
  5366. 44464: 2880030b ldhu r2,12(r5)
  5367. 44468: 2ac01917 ldw r11,100(r5)
  5368. 4446c: 2a80038b ldhu r10,14(r5)
  5369. 44470: 2a400717 ldw r9,28(r5)
  5370. 44474: 2a000917 ldw r8,36(r5)
  5371. 44478: defee204 addi sp,sp,-1144
  5372. 4447c: 00c10004 movi r3,1024
  5373. 44480: dc011a15 stw r16,1128(sp)
  5374. 44484: 10bfff4c andi r2,r2,65533
  5375. 44488: 2821883a mov r16,r5
  5376. 4448c: d8cb883a add r5,sp,r3
  5377. 44490: dc811c15 stw r18,1136(sp)
  5378. 44494: dc411b15 stw r17,1132(sp)
  5379. 44498: dfc11d15 stw ra,1140(sp)
  5380. 4449c: 2025883a mov r18,r4
  5381. 444a0: d881030d sth r2,1036(sp)
  5382. 444a4: dac11915 stw r11,1124(sp)
  5383. 444a8: da81038d sth r10,1038(sp)
  5384. 444ac: da410715 stw r9,1052(sp)
  5385. 444b0: da010915 stw r8,1060(sp)
  5386. 444b4: dec10015 stw sp,1024(sp)
  5387. 444b8: dec10415 stw sp,1040(sp)
  5388. 444bc: d8c10215 stw r3,1032(sp)
  5389. 444c0: d8c10515 stw r3,1044(sp)
  5390. 444c4: d8010615 stw zero,1048(sp)
  5391. 444c8: 004216c0 call 4216c <___vfprintf_internal_r>
  5392. 444cc: 1023883a mov r17,r2
  5393. 444d0: 10000416 blt r2,zero,444e4 <__sbprintf+0x80>
  5394. 444d4: d9410004 addi r5,sp,1024
  5395. 444d8: 9009883a mov r4,r18
  5396. 444dc: 00461400 call 46140 <_fflush_r>
  5397. 444e0: 10000d1e bne r2,zero,44518 <__sbprintf+0xb4>
  5398. 444e4: d881030b ldhu r2,1036(sp)
  5399. 444e8: 1080100c andi r2,r2,64
  5400. 444ec: 10000326 beq r2,zero,444fc <__sbprintf+0x98>
  5401. 444f0: 8080030b ldhu r2,12(r16)
  5402. 444f4: 10801014 ori r2,r2,64
  5403. 444f8: 8080030d sth r2,12(r16)
  5404. 444fc: 8805883a mov r2,r17
  5405. 44500: dfc11d17 ldw ra,1140(sp)
  5406. 44504: dc811c17 ldw r18,1136(sp)
  5407. 44508: dc411b17 ldw r17,1132(sp)
  5408. 4450c: dc011a17 ldw r16,1128(sp)
  5409. 44510: dec11e04 addi sp,sp,1144
  5410. 44514: f800283a ret
  5411. 44518: 047fffc4 movi r17,-1
  5412. 4451c: 003ff106 br 444e4 <__alt_data_end+0xfffd24e4>
  5413. 00044520 <__swsetup_r>:
  5414. 44520: 00800174 movhi r2,5
  5415. 44524: defffd04 addi sp,sp,-12
  5416. 44528: 10908b04 addi r2,r2,16940
  5417. 4452c: dc400115 stw r17,4(sp)
  5418. 44530: 2023883a mov r17,r4
  5419. 44534: 11000017 ldw r4,0(r2)
  5420. 44538: dc000015 stw r16,0(sp)
  5421. 4453c: dfc00215 stw ra,8(sp)
  5422. 44540: 2821883a mov r16,r5
  5423. 44544: 20000226 beq r4,zero,44550 <__swsetup_r+0x30>
  5424. 44548: 20800e17 ldw r2,56(r4)
  5425. 4454c: 10003126 beq r2,zero,44614 <__swsetup_r+0xf4>
  5426. 44550: 8080030b ldhu r2,12(r16)
  5427. 44554: 10c0020c andi r3,r2,8
  5428. 44558: 1009883a mov r4,r2
  5429. 4455c: 18000f26 beq r3,zero,4459c <__swsetup_r+0x7c>
  5430. 44560: 80c00417 ldw r3,16(r16)
  5431. 44564: 18001526 beq r3,zero,445bc <__swsetup_r+0x9c>
  5432. 44568: 1100004c andi r4,r2,1
  5433. 4456c: 20001c1e bne r4,zero,445e0 <__swsetup_r+0xc0>
  5434. 44570: 1080008c andi r2,r2,2
  5435. 44574: 1000291e bne r2,zero,4461c <__swsetup_r+0xfc>
  5436. 44578: 80800517 ldw r2,20(r16)
  5437. 4457c: 80800215 stw r2,8(r16)
  5438. 44580: 18001c26 beq r3,zero,445f4 <__swsetup_r+0xd4>
  5439. 44584: 0005883a mov r2,zero
  5440. 44588: dfc00217 ldw ra,8(sp)
  5441. 4458c: dc400117 ldw r17,4(sp)
  5442. 44590: dc000017 ldw r16,0(sp)
  5443. 44594: dec00304 addi sp,sp,12
  5444. 44598: f800283a ret
  5445. 4459c: 2080040c andi r2,r4,16
  5446. 445a0: 10002e26 beq r2,zero,4465c <__swsetup_r+0x13c>
  5447. 445a4: 2080010c andi r2,r4,4
  5448. 445a8: 10001e1e bne r2,zero,44624 <__swsetup_r+0x104>
  5449. 445ac: 80c00417 ldw r3,16(r16)
  5450. 445b0: 20800214 ori r2,r4,8
  5451. 445b4: 8080030d sth r2,12(r16)
  5452. 445b8: 183feb1e bne r3,zero,44568 <__alt_data_end+0xfffd2568>
  5453. 445bc: 1100a00c andi r4,r2,640
  5454. 445c0: 01408004 movi r5,512
  5455. 445c4: 217fe826 beq r4,r5,44568 <__alt_data_end+0xfffd2568>
  5456. 445c8: 800b883a mov r5,r16
  5457. 445cc: 8809883a mov r4,r17
  5458. 445d0: 0046c140 call 46c14 <__smakebuf_r>
  5459. 445d4: 8080030b ldhu r2,12(r16)
  5460. 445d8: 80c00417 ldw r3,16(r16)
  5461. 445dc: 003fe206 br 44568 <__alt_data_end+0xfffd2568>
  5462. 445e0: 80800517 ldw r2,20(r16)
  5463. 445e4: 80000215 stw zero,8(r16)
  5464. 445e8: 0085c83a sub r2,zero,r2
  5465. 445ec: 80800615 stw r2,24(r16)
  5466. 445f0: 183fe41e bne r3,zero,44584 <__alt_data_end+0xfffd2584>
  5467. 445f4: 80c0030b ldhu r3,12(r16)
  5468. 445f8: 0005883a mov r2,zero
  5469. 445fc: 1900200c andi r4,r3,128
  5470. 44600: 203fe126 beq r4,zero,44588 <__alt_data_end+0xfffd2588>
  5471. 44604: 18c01014 ori r3,r3,64
  5472. 44608: 80c0030d sth r3,12(r16)
  5473. 4460c: 00bfffc4 movi r2,-1
  5474. 44610: 003fdd06 br 44588 <__alt_data_end+0xfffd2588>
  5475. 44614: 004652c0 call 4652c <__sinit>
  5476. 44618: 003fcd06 br 44550 <__alt_data_end+0xfffd2550>
  5477. 4461c: 0005883a mov r2,zero
  5478. 44620: 003fd606 br 4457c <__alt_data_end+0xfffd257c>
  5479. 44624: 81400c17 ldw r5,48(r16)
  5480. 44628: 28000626 beq r5,zero,44644 <__swsetup_r+0x124>
  5481. 4462c: 80801004 addi r2,r16,64
  5482. 44630: 28800326 beq r5,r2,44640 <__swsetup_r+0x120>
  5483. 44634: 8809883a mov r4,r17
  5484. 44638: 00466a00 call 466a0 <_free_r>
  5485. 4463c: 8100030b ldhu r4,12(r16)
  5486. 44640: 80000c15 stw zero,48(r16)
  5487. 44644: 80c00417 ldw r3,16(r16)
  5488. 44648: 00bff6c4 movi r2,-37
  5489. 4464c: 1108703a and r4,r2,r4
  5490. 44650: 80000115 stw zero,4(r16)
  5491. 44654: 80c00015 stw r3,0(r16)
  5492. 44658: 003fd506 br 445b0 <__alt_data_end+0xfffd25b0>
  5493. 4465c: 00800244 movi r2,9
  5494. 44660: 88800015 stw r2,0(r17)
  5495. 44664: 20801014 ori r2,r4,64
  5496. 44668: 8080030d sth r2,12(r16)
  5497. 4466c: 00bfffc4 movi r2,-1
  5498. 44670: 003fc506 br 44588 <__alt_data_end+0xfffd2588>
  5499. 00044674 <quorem>:
  5500. 44674: defff204 addi sp,sp,-56
  5501. 44678: ddc00b15 stw r23,44(sp)
  5502. 4467c: 20800417 ldw r2,16(r4)
  5503. 44680: 2dc00417 ldw r23,16(r5)
  5504. 44684: dfc00d15 stw ra,52(sp)
  5505. 44688: df000c15 stw fp,48(sp)
  5506. 4468c: dd800a15 stw r22,40(sp)
  5507. 44690: dd400915 stw r21,36(sp)
  5508. 44694: dd000815 stw r20,32(sp)
  5509. 44698: dcc00715 stw r19,28(sp)
  5510. 4469c: dc800615 stw r18,24(sp)
  5511. 446a0: dc400515 stw r17,20(sp)
  5512. 446a4: dc000415 stw r16,16(sp)
  5513. 446a8: 15c07a16 blt r2,r23,44894 <quorem+0x220>
  5514. 446ac: bdffffc4 addi r23,r23,-1
  5515. 446b0: bde9883a add r20,r23,r23
  5516. 446b4: 28c00504 addi r3,r5,20
  5517. 446b8: a529883a add r20,r20,r20
  5518. 446bc: 1d39883a add fp,r3,r20
  5519. 446c0: 24c00504 addi r19,r4,20
  5520. 446c4: d9400215 stw r5,8(sp)
  5521. 446c8: 9d29883a add r20,r19,r20
  5522. 446cc: e1400017 ldw r5,0(fp)
  5523. 446d0: d9000015 stw r4,0(sp)
  5524. 446d4: a1000017 ldw r4,0(r20)
  5525. 446d8: 29400044 addi r5,r5,1
  5526. 446dc: d8c00115 stw r3,4(sp)
  5527. 446e0: dd000315 stw r20,12(sp)
  5528. 446e4: 004c93c0 call 4c93c <__udivsi3>
  5529. 446e8: 1025883a mov r18,r2
  5530. 446ec: 10003026 beq r2,zero,447b0 <quorem+0x13c>
  5531. 446f0: dc400117 ldw r17,4(sp)
  5532. 446f4: 9829883a mov r20,r19
  5533. 446f8: 002d883a mov r22,zero
  5534. 446fc: 0021883a mov r16,zero
  5535. 44700: 8d400017 ldw r21,0(r17)
  5536. 44704: 900b883a mov r5,r18
  5537. 44708: 8c400104 addi r17,r17,4
  5538. 4470c: a93fffcc andi r4,r21,65535
  5539. 44710: 004c9f80 call 4c9f8 <__mulsi3>
  5540. 44714: a808d43a srli r4,r21,16
  5541. 44718: 900b883a mov r5,r18
  5542. 4471c: 15ad883a add r22,r2,r22
  5543. 44720: 004c9f80 call 4c9f8 <__mulsi3>
  5544. 44724: a1000017 ldw r4,0(r20)
  5545. 44728: b00cd43a srli r6,r22,16
  5546. 4472c: b0ffffcc andi r3,r22,65535
  5547. 44730: 217fffcc andi r5,r4,65535
  5548. 44734: 2c21883a add r16,r5,r16
  5549. 44738: 80c7c83a sub r3,r16,r3
  5550. 4473c: 2008d43a srli r4,r4,16
  5551. 44740: 1185883a add r2,r2,r6
  5552. 44744: 1821d43a srai r16,r3,16
  5553. 44748: 117fffcc andi r5,r2,65535
  5554. 4474c: 2149c83a sub r4,r4,r5
  5555. 44750: 2421883a add r16,r4,r16
  5556. 44754: 8008943a slli r4,r16,16
  5557. 44758: 18ffffcc andi r3,r3,65535
  5558. 4475c: 102cd43a srli r22,r2,16
  5559. 44760: 20c8b03a or r4,r4,r3
  5560. 44764: a1000015 stw r4,0(r20)
  5561. 44768: 8021d43a srai r16,r16,16
  5562. 4476c: a5000104 addi r20,r20,4
  5563. 44770: e47fe32e bgeu fp,r17,44700 <__alt_data_end+0xfffd2700>
  5564. 44774: d8c00317 ldw r3,12(sp)
  5565. 44778: 18800017 ldw r2,0(r3)
  5566. 4477c: 10000c1e bne r2,zero,447b0 <quorem+0x13c>
  5567. 44780: 18bfff04 addi r2,r3,-4
  5568. 44784: 9880082e bgeu r19,r2,447a8 <quorem+0x134>
  5569. 44788: 18ffff17 ldw r3,-4(r3)
  5570. 4478c: 18000326 beq r3,zero,4479c <quorem+0x128>
  5571. 44790: 00000506 br 447a8 <quorem+0x134>
  5572. 44794: 10c00017 ldw r3,0(r2)
  5573. 44798: 1800031e bne r3,zero,447a8 <quorem+0x134>
  5574. 4479c: 10bfff04 addi r2,r2,-4
  5575. 447a0: bdffffc4 addi r23,r23,-1
  5576. 447a4: 98bffb36 bltu r19,r2,44794 <__alt_data_end+0xfffd2794>
  5577. 447a8: d8c00017 ldw r3,0(sp)
  5578. 447ac: 1dc00415 stw r23,16(r3)
  5579. 447b0: d9400217 ldw r5,8(sp)
  5580. 447b4: d9000017 ldw r4,0(sp)
  5581. 447b8: 00482b40 call 482b4 <__mcmp>
  5582. 447bc: 10002816 blt r2,zero,44860 <quorem+0x1ec>
  5583. 447c0: dc400117 ldw r17,4(sp)
  5584. 447c4: 94800044 addi r18,r18,1
  5585. 447c8: 980d883a mov r6,r19
  5586. 447cc: 0007883a mov r3,zero
  5587. 447d0: 31000017 ldw r4,0(r6)
  5588. 447d4: 89400017 ldw r5,0(r17)
  5589. 447d8: 31800104 addi r6,r6,4
  5590. 447dc: 20bfffcc andi r2,r4,65535
  5591. 447e0: 10c7883a add r3,r2,r3
  5592. 447e4: 28bfffcc andi r2,r5,65535
  5593. 447e8: 1885c83a sub r2,r3,r2
  5594. 447ec: 280ad43a srli r5,r5,16
  5595. 447f0: 2008d43a srli r4,r4,16
  5596. 447f4: 1007d43a srai r3,r2,16
  5597. 447f8: 10bfffcc andi r2,r2,65535
  5598. 447fc: 2149c83a sub r4,r4,r5
  5599. 44800: 20c9883a add r4,r4,r3
  5600. 44804: 200a943a slli r5,r4,16
  5601. 44808: 8c400104 addi r17,r17,4
  5602. 4480c: 2007d43a srai r3,r4,16
  5603. 44810: 2884b03a or r2,r5,r2
  5604. 44814: 30bfff15 stw r2,-4(r6)
  5605. 44818: e47fed2e bgeu fp,r17,447d0 <__alt_data_end+0xfffd27d0>
  5606. 4481c: bdc5883a add r2,r23,r23
  5607. 44820: 1085883a add r2,r2,r2
  5608. 44824: 9887883a add r3,r19,r2
  5609. 44828: 18800017 ldw r2,0(r3)
  5610. 4482c: 10000c1e bne r2,zero,44860 <quorem+0x1ec>
  5611. 44830: 18bfff04 addi r2,r3,-4
  5612. 44834: 9880082e bgeu r19,r2,44858 <quorem+0x1e4>
  5613. 44838: 18ffff17 ldw r3,-4(r3)
  5614. 4483c: 18000326 beq r3,zero,4484c <quorem+0x1d8>
  5615. 44840: 00000506 br 44858 <quorem+0x1e4>
  5616. 44844: 10c00017 ldw r3,0(r2)
  5617. 44848: 1800031e bne r3,zero,44858 <quorem+0x1e4>
  5618. 4484c: 10bfff04 addi r2,r2,-4
  5619. 44850: bdffffc4 addi r23,r23,-1
  5620. 44854: 98bffb36 bltu r19,r2,44844 <__alt_data_end+0xfffd2844>
  5621. 44858: d8c00017 ldw r3,0(sp)
  5622. 4485c: 1dc00415 stw r23,16(r3)
  5623. 44860: 9005883a mov r2,r18
  5624. 44864: dfc00d17 ldw ra,52(sp)
  5625. 44868: df000c17 ldw fp,48(sp)
  5626. 4486c: ddc00b17 ldw r23,44(sp)
  5627. 44870: dd800a17 ldw r22,40(sp)
  5628. 44874: dd400917 ldw r21,36(sp)
  5629. 44878: dd000817 ldw r20,32(sp)
  5630. 4487c: dcc00717 ldw r19,28(sp)
  5631. 44880: dc800617 ldw r18,24(sp)
  5632. 44884: dc400517 ldw r17,20(sp)
  5633. 44888: dc000417 ldw r16,16(sp)
  5634. 4488c: dec00e04 addi sp,sp,56
  5635. 44890: f800283a ret
  5636. 44894: 0005883a mov r2,zero
  5637. 44898: 003ff206 br 44864 <__alt_data_end+0xfffd2864>
  5638. 0004489c <_dtoa_r>:
  5639. 4489c: 20801017 ldw r2,64(r4)
  5640. 448a0: deffde04 addi sp,sp,-136
  5641. 448a4: df002015 stw fp,128(sp)
  5642. 448a8: dcc01b15 stw r19,108(sp)
  5643. 448ac: dc801a15 stw r18,104(sp)
  5644. 448b0: dc401915 stw r17,100(sp)
  5645. 448b4: dc001815 stw r16,96(sp)
  5646. 448b8: dfc02115 stw ra,132(sp)
  5647. 448bc: ddc01f15 stw r23,124(sp)
  5648. 448c0: dd801e15 stw r22,120(sp)
  5649. 448c4: dd401d15 stw r21,116(sp)
  5650. 448c8: dd001c15 stw r20,112(sp)
  5651. 448cc: d9c00315 stw r7,12(sp)
  5652. 448d0: 2039883a mov fp,r4
  5653. 448d4: 3023883a mov r17,r6
  5654. 448d8: 2825883a mov r18,r5
  5655. 448dc: dc002417 ldw r16,144(sp)
  5656. 448e0: 3027883a mov r19,r6
  5657. 448e4: 10000826 beq r2,zero,44908 <_dtoa_r+0x6c>
  5658. 448e8: 21801117 ldw r6,68(r4)
  5659. 448ec: 00c00044 movi r3,1
  5660. 448f0: 100b883a mov r5,r2
  5661. 448f4: 1986983a sll r3,r3,r6
  5662. 448f8: 11800115 stw r6,4(r2)
  5663. 448fc: 10c00215 stw r3,8(r2)
  5664. 44900: 00479d80 call 479d8 <_Bfree>
  5665. 44904: e0001015 stw zero,64(fp)
  5666. 44908: 88002e16 blt r17,zero,449c4 <_dtoa_r+0x128>
  5667. 4490c: 80000015 stw zero,0(r16)
  5668. 44910: 889ffc2c andhi r2,r17,32752
  5669. 44914: 00dffc34 movhi r3,32752
  5670. 44918: 10c01c26 beq r2,r3,4498c <_dtoa_r+0xf0>
  5671. 4491c: 000d883a mov r6,zero
  5672. 44920: 000f883a mov r7,zero
  5673. 44924: 9009883a mov r4,r18
  5674. 44928: 980b883a mov r5,r19
  5675. 4492c: 004d3f00 call 4d3f0 <__eqdf2>
  5676. 44930: 10002b1e bne r2,zero,449e0 <_dtoa_r+0x144>
  5677. 44934: d9c02317 ldw r7,140(sp)
  5678. 44938: 00800044 movi r2,1
  5679. 4493c: 38800015 stw r2,0(r7)
  5680. 44940: d8802517 ldw r2,148(sp)
  5681. 44944: 10019e26 beq r2,zero,44fc0 <_dtoa_r+0x724>
  5682. 44948: d8c02517 ldw r3,148(sp)
  5683. 4494c: 00800174 movhi r2,5
  5684. 44950: 10888744 addi r2,r2,8733
  5685. 44954: 18800015 stw r2,0(r3)
  5686. 44958: 10bfffc4 addi r2,r2,-1
  5687. 4495c: dfc02117 ldw ra,132(sp)
  5688. 44960: df002017 ldw fp,128(sp)
  5689. 44964: ddc01f17 ldw r23,124(sp)
  5690. 44968: dd801e17 ldw r22,120(sp)
  5691. 4496c: dd401d17 ldw r21,116(sp)
  5692. 44970: dd001c17 ldw r20,112(sp)
  5693. 44974: dcc01b17 ldw r19,108(sp)
  5694. 44978: dc801a17 ldw r18,104(sp)
  5695. 4497c: dc401917 ldw r17,100(sp)
  5696. 44980: dc001817 ldw r16,96(sp)
  5697. 44984: dec02204 addi sp,sp,136
  5698. 44988: f800283a ret
  5699. 4498c: d8c02317 ldw r3,140(sp)
  5700. 44990: 0089c3c4 movi r2,9999
  5701. 44994: 18800015 stw r2,0(r3)
  5702. 44998: 90017726 beq r18,zero,44f78 <_dtoa_r+0x6dc>
  5703. 4499c: 00800174 movhi r2,5
  5704. 449a0: 10889304 addi r2,r2,8780
  5705. 449a4: d9002517 ldw r4,148(sp)
  5706. 449a8: 203fec26 beq r4,zero,4495c <__alt_data_end+0xfffd295c>
  5707. 449ac: 10c000c7 ldb r3,3(r2)
  5708. 449b0: 1801781e bne r3,zero,44f94 <_dtoa_r+0x6f8>
  5709. 449b4: 10c000c4 addi r3,r2,3
  5710. 449b8: d9802517 ldw r6,148(sp)
  5711. 449bc: 30c00015 stw r3,0(r6)
  5712. 449c0: 003fe606 br 4495c <__alt_data_end+0xfffd295c>
  5713. 449c4: 04e00034 movhi r19,32768
  5714. 449c8: 9cffffc4 addi r19,r19,-1
  5715. 449cc: 00800044 movi r2,1
  5716. 449d0: 8ce6703a and r19,r17,r19
  5717. 449d4: 80800015 stw r2,0(r16)
  5718. 449d8: 9823883a mov r17,r19
  5719. 449dc: 003fcc06 br 44910 <__alt_data_end+0xfffd2910>
  5720. 449e0: d8800204 addi r2,sp,8
  5721. 449e4: d8800015 stw r2,0(sp)
  5722. 449e8: d9c00104 addi r7,sp,4
  5723. 449ec: 900b883a mov r5,r18
  5724. 449f0: 980d883a mov r6,r19
  5725. 449f4: e009883a mov r4,fp
  5726. 449f8: 8820d53a srli r16,r17,20
  5727. 449fc: 00486800 call 48680 <__d2b>
  5728. 44a00: d8800915 stw r2,36(sp)
  5729. 44a04: 8001651e bne r16,zero,44f9c <_dtoa_r+0x700>
  5730. 44a08: dd800217 ldw r22,8(sp)
  5731. 44a0c: dc000117 ldw r16,4(sp)
  5732. 44a10: 00800804 movi r2,32
  5733. 44a14: b421883a add r16,r22,r16
  5734. 44a18: 80c10c84 addi r3,r16,1074
  5735. 44a1c: 10c2d10e bge r2,r3,45564 <_dtoa_r+0xcc8>
  5736. 44a20: 00801004 movi r2,64
  5737. 44a24: 81010484 addi r4,r16,1042
  5738. 44a28: 10c7c83a sub r3,r2,r3
  5739. 44a2c: 9108d83a srl r4,r18,r4
  5740. 44a30: 88e2983a sll r17,r17,r3
  5741. 44a34: 2448b03a or r4,r4,r17
  5742. 44a38: 004e7b00 call 4e7b0 <__floatunsidf>
  5743. 44a3c: 017f8434 movhi r5,65040
  5744. 44a40: 01800044 movi r6,1
  5745. 44a44: 1009883a mov r4,r2
  5746. 44a48: 194b883a add r5,r3,r5
  5747. 44a4c: 843fffc4 addi r16,r16,-1
  5748. 44a50: d9801115 stw r6,68(sp)
  5749. 44a54: 000d883a mov r6,zero
  5750. 44a58: 01cffe34 movhi r7,16376
  5751. 44a5c: 004deb40 call 4deb4 <__subdf3>
  5752. 44a60: 0198dbf4 movhi r6,25455
  5753. 44a64: 01cff4f4 movhi r7,16339
  5754. 44a68: 3190d844 addi r6,r6,17249
  5755. 44a6c: 39e1e9c4 addi r7,r7,-30809
  5756. 44a70: 1009883a mov r4,r2
  5757. 44a74: 180b883a mov r5,r3
  5758. 44a78: 004d6480 call 4d648 <__muldf3>
  5759. 44a7c: 01a2d874 movhi r6,35681
  5760. 44a80: 01cff1f4 movhi r7,16327
  5761. 44a84: 31b22cc4 addi r6,r6,-14157
  5762. 44a88: 39e28a04 addi r7,r7,-30168
  5763. 44a8c: 180b883a mov r5,r3
  5764. 44a90: 1009883a mov r4,r2
  5765. 44a94: 00413e40 call 413e4 <__adddf3>
  5766. 44a98: 8009883a mov r4,r16
  5767. 44a9c: 1029883a mov r20,r2
  5768. 44aa0: 1823883a mov r17,r3
  5769. 44aa4: 0041d100 call 41d10 <__floatsidf>
  5770. 44aa8: 019427f4 movhi r6,20639
  5771. 44aac: 01cff4f4 movhi r7,16339
  5772. 44ab0: 319e7ec4 addi r6,r6,31227
  5773. 44ab4: 39d104c4 addi r7,r7,17427
  5774. 44ab8: 1009883a mov r4,r2
  5775. 44abc: 180b883a mov r5,r3
  5776. 44ac0: 004d6480 call 4d648 <__muldf3>
  5777. 44ac4: 100d883a mov r6,r2
  5778. 44ac8: 180f883a mov r7,r3
  5779. 44acc: a009883a mov r4,r20
  5780. 44ad0: 880b883a mov r5,r17
  5781. 44ad4: 00413e40 call 413e4 <__adddf3>
  5782. 44ad8: 1009883a mov r4,r2
  5783. 44adc: 180b883a mov r5,r3
  5784. 44ae0: 1029883a mov r20,r2
  5785. 44ae4: 1823883a mov r17,r3
  5786. 44ae8: 0041c900 call 41c90 <__fixdfsi>
  5787. 44aec: 000d883a mov r6,zero
  5788. 44af0: 000f883a mov r7,zero
  5789. 44af4: a009883a mov r4,r20
  5790. 44af8: 880b883a mov r5,r17
  5791. 44afc: d8800515 stw r2,20(sp)
  5792. 44b00: 004d5540 call 4d554 <__ledf2>
  5793. 44b04: 10028716 blt r2,zero,45524 <_dtoa_r+0xc88>
  5794. 44b08: d8c00517 ldw r3,20(sp)
  5795. 44b0c: 00800584 movi r2,22
  5796. 44b10: 10c27536 bltu r2,r3,454e8 <_dtoa_r+0xc4c>
  5797. 44b14: 180490fa slli r2,r3,3
  5798. 44b18: 00c00174 movhi r3,5
  5799. 44b1c: 18c8ae04 addi r3,r3,8888
  5800. 44b20: 1885883a add r2,r3,r2
  5801. 44b24: 11000017 ldw r4,0(r2)
  5802. 44b28: 11400117 ldw r5,4(r2)
  5803. 44b2c: 900d883a mov r6,r18
  5804. 44b30: 980f883a mov r7,r19
  5805. 44b34: 004d4780 call 4d478 <__gedf2>
  5806. 44b38: 00828d0e bge zero,r2,45570 <_dtoa_r+0xcd4>
  5807. 44b3c: d9000517 ldw r4,20(sp)
  5808. 44b40: d8000e15 stw zero,56(sp)
  5809. 44b44: 213fffc4 addi r4,r4,-1
  5810. 44b48: d9000515 stw r4,20(sp)
  5811. 44b4c: b42dc83a sub r22,r22,r16
  5812. 44b50: b5bfffc4 addi r22,r22,-1
  5813. 44b54: b0026f16 blt r22,zero,45514 <_dtoa_r+0xc78>
  5814. 44b58: d8000815 stw zero,32(sp)
  5815. 44b5c: d9c00517 ldw r7,20(sp)
  5816. 44b60: 38026416 blt r7,zero,454f4 <_dtoa_r+0xc58>
  5817. 44b64: b1ed883a add r22,r22,r7
  5818. 44b68: d9c00d15 stw r7,52(sp)
  5819. 44b6c: d8000a15 stw zero,40(sp)
  5820. 44b70: d9800317 ldw r6,12(sp)
  5821. 44b74: 00800244 movi r2,9
  5822. 44b78: 11811436 bltu r2,r6,44fcc <_dtoa_r+0x730>
  5823. 44b7c: 00800144 movi r2,5
  5824. 44b80: 1184e10e bge r2,r6,45f08 <_dtoa_r+0x166c>
  5825. 44b84: 31bfff04 addi r6,r6,-4
  5826. 44b88: d9800315 stw r6,12(sp)
  5827. 44b8c: 0023883a mov r17,zero
  5828. 44b90: d9800317 ldw r6,12(sp)
  5829. 44b94: 008000c4 movi r2,3
  5830. 44b98: 30836726 beq r6,r2,45938 <_dtoa_r+0x109c>
  5831. 44b9c: 1183410e bge r2,r6,458a4 <_dtoa_r+0x1008>
  5832. 44ba0: d9c00317 ldw r7,12(sp)
  5833. 44ba4: 00800104 movi r2,4
  5834. 44ba8: 38827c26 beq r7,r2,4559c <_dtoa_r+0xd00>
  5835. 44bac: 00800144 movi r2,5
  5836. 44bb0: 3884c41e bne r7,r2,45ec4 <_dtoa_r+0x1628>
  5837. 44bb4: 00800044 movi r2,1
  5838. 44bb8: d8800b15 stw r2,44(sp)
  5839. 44bbc: d8c00517 ldw r3,20(sp)
  5840. 44bc0: d9002217 ldw r4,136(sp)
  5841. 44bc4: 1907883a add r3,r3,r4
  5842. 44bc8: 19800044 addi r6,r3,1
  5843. 44bcc: d8c00c15 stw r3,48(sp)
  5844. 44bd0: d9800615 stw r6,24(sp)
  5845. 44bd4: 0183a40e bge zero,r6,45a68 <_dtoa_r+0x11cc>
  5846. 44bd8: d9800617 ldw r6,24(sp)
  5847. 44bdc: 3021883a mov r16,r6
  5848. 44be0: e0001115 stw zero,68(fp)
  5849. 44be4: 008005c4 movi r2,23
  5850. 44be8: 1184c92e bgeu r2,r6,45f10 <_dtoa_r+0x1674>
  5851. 44bec: 00c00044 movi r3,1
  5852. 44bf0: 00800104 movi r2,4
  5853. 44bf4: 1085883a add r2,r2,r2
  5854. 44bf8: 11000504 addi r4,r2,20
  5855. 44bfc: 180b883a mov r5,r3
  5856. 44c00: 18c00044 addi r3,r3,1
  5857. 44c04: 313ffb2e bgeu r6,r4,44bf4 <__alt_data_end+0xfffd2bf4>
  5858. 44c08: e1401115 stw r5,68(fp)
  5859. 44c0c: e009883a mov r4,fp
  5860. 44c10: 00479300 call 47930 <_Balloc>
  5861. 44c14: d8800715 stw r2,28(sp)
  5862. 44c18: e0801015 stw r2,64(fp)
  5863. 44c1c: 00800384 movi r2,14
  5864. 44c20: 1400f736 bltu r2,r16,45000 <_dtoa_r+0x764>
  5865. 44c24: 8800f626 beq r17,zero,45000 <_dtoa_r+0x764>
  5866. 44c28: d9c00517 ldw r7,20(sp)
  5867. 44c2c: 01c39a0e bge zero,r7,45a98 <_dtoa_r+0x11fc>
  5868. 44c30: 388003cc andi r2,r7,15
  5869. 44c34: 100490fa slli r2,r2,3
  5870. 44c38: 382bd13a srai r21,r7,4
  5871. 44c3c: 00c00174 movhi r3,5
  5872. 44c40: 18c8ae04 addi r3,r3,8888
  5873. 44c44: 1885883a add r2,r3,r2
  5874. 44c48: a8c0040c andi r3,r21,16
  5875. 44c4c: 12400017 ldw r9,0(r2)
  5876. 44c50: 12000117 ldw r8,4(r2)
  5877. 44c54: 18037926 beq r3,zero,45a3c <_dtoa_r+0x11a0>
  5878. 44c58: 00800174 movhi r2,5
  5879. 44c5c: 1088a404 addi r2,r2,8848
  5880. 44c60: 11800817 ldw r6,32(r2)
  5881. 44c64: 11c00917 ldw r7,36(r2)
  5882. 44c68: 9009883a mov r4,r18
  5883. 44c6c: 980b883a mov r5,r19
  5884. 44c70: da001715 stw r8,92(sp)
  5885. 44c74: da401615 stw r9,88(sp)
  5886. 44c78: 004ca200 call 4ca20 <__divdf3>
  5887. 44c7c: da001717 ldw r8,92(sp)
  5888. 44c80: da401617 ldw r9,88(sp)
  5889. 44c84: ad4003cc andi r21,r21,15
  5890. 44c88: 040000c4 movi r16,3
  5891. 44c8c: 1023883a mov r17,r2
  5892. 44c90: 1829883a mov r20,r3
  5893. 44c94: a8001126 beq r21,zero,44cdc <_dtoa_r+0x440>
  5894. 44c98: 05c00174 movhi r23,5
  5895. 44c9c: bdc8a404 addi r23,r23,8848
  5896. 44ca0: 4805883a mov r2,r9
  5897. 44ca4: 4007883a mov r3,r8
  5898. 44ca8: a980004c andi r6,r21,1
  5899. 44cac: 1009883a mov r4,r2
  5900. 44cb0: a82bd07a srai r21,r21,1
  5901. 44cb4: 180b883a mov r5,r3
  5902. 44cb8: 30000426 beq r6,zero,44ccc <_dtoa_r+0x430>
  5903. 44cbc: b9800017 ldw r6,0(r23)
  5904. 44cc0: b9c00117 ldw r7,4(r23)
  5905. 44cc4: 84000044 addi r16,r16,1
  5906. 44cc8: 004d6480 call 4d648 <__muldf3>
  5907. 44ccc: bdc00204 addi r23,r23,8
  5908. 44cd0: a83ff51e bne r21,zero,44ca8 <__alt_data_end+0xfffd2ca8>
  5909. 44cd4: 1013883a mov r9,r2
  5910. 44cd8: 1811883a mov r8,r3
  5911. 44cdc: 480d883a mov r6,r9
  5912. 44ce0: 400f883a mov r7,r8
  5913. 44ce4: 8809883a mov r4,r17
  5914. 44ce8: a00b883a mov r5,r20
  5915. 44cec: 004ca200 call 4ca20 <__divdf3>
  5916. 44cf0: d8800f15 stw r2,60(sp)
  5917. 44cf4: d8c01015 stw r3,64(sp)
  5918. 44cf8: d8c00e17 ldw r3,56(sp)
  5919. 44cfc: 18000626 beq r3,zero,44d18 <_dtoa_r+0x47c>
  5920. 44d00: d9000f17 ldw r4,60(sp)
  5921. 44d04: d9401017 ldw r5,64(sp)
  5922. 44d08: 000d883a mov r6,zero
  5923. 44d0c: 01cffc34 movhi r7,16368
  5924. 44d10: 004d5540 call 4d554 <__ledf2>
  5925. 44d14: 10040b16 blt r2,zero,45d44 <_dtoa_r+0x14a8>
  5926. 44d18: 8009883a mov r4,r16
  5927. 44d1c: 0041d100 call 41d10 <__floatsidf>
  5928. 44d20: d9800f17 ldw r6,60(sp)
  5929. 44d24: d9c01017 ldw r7,64(sp)
  5930. 44d28: 1009883a mov r4,r2
  5931. 44d2c: 180b883a mov r5,r3
  5932. 44d30: 004d6480 call 4d648 <__muldf3>
  5933. 44d34: 000d883a mov r6,zero
  5934. 44d38: 01d00734 movhi r7,16412
  5935. 44d3c: 1009883a mov r4,r2
  5936. 44d40: 180b883a mov r5,r3
  5937. 44d44: 00413e40 call 413e4 <__adddf3>
  5938. 44d48: 1021883a mov r16,r2
  5939. 44d4c: d8800617 ldw r2,24(sp)
  5940. 44d50: 047f3034 movhi r17,64704
  5941. 44d54: 1c63883a add r17,r3,r17
  5942. 44d58: 10031826 beq r2,zero,459bc <_dtoa_r+0x1120>
  5943. 44d5c: d8c00517 ldw r3,20(sp)
  5944. 44d60: db000617 ldw r12,24(sp)
  5945. 44d64: d8c01315 stw r3,76(sp)
  5946. 44d68: d9000b17 ldw r4,44(sp)
  5947. 44d6c: 20038f26 beq r4,zero,45bac <_dtoa_r+0x1310>
  5948. 44d70: 60bfffc4 addi r2,r12,-1
  5949. 44d74: 100490fa slli r2,r2,3
  5950. 44d78: 00c00174 movhi r3,5
  5951. 44d7c: 18c8ae04 addi r3,r3,8888
  5952. 44d80: 1885883a add r2,r3,r2
  5953. 44d84: 11800017 ldw r6,0(r2)
  5954. 44d88: 11c00117 ldw r7,4(r2)
  5955. 44d8c: d8800717 ldw r2,28(sp)
  5956. 44d90: 0009883a mov r4,zero
  5957. 44d94: 014ff834 movhi r5,16352
  5958. 44d98: db001615 stw r12,88(sp)
  5959. 44d9c: 15c00044 addi r23,r2,1
  5960. 44da0: 004ca200 call 4ca20 <__divdf3>
  5961. 44da4: 800d883a mov r6,r16
  5962. 44da8: 880f883a mov r7,r17
  5963. 44dac: 1009883a mov r4,r2
  5964. 44db0: 180b883a mov r5,r3
  5965. 44db4: 004deb40 call 4deb4 <__subdf3>
  5966. 44db8: d9401017 ldw r5,64(sp)
  5967. 44dbc: d9000f17 ldw r4,60(sp)
  5968. 44dc0: 102b883a mov r21,r2
  5969. 44dc4: d8c01215 stw r3,72(sp)
  5970. 44dc8: 0041c900 call 41c90 <__fixdfsi>
  5971. 44dcc: 1009883a mov r4,r2
  5972. 44dd0: 1029883a mov r20,r2
  5973. 44dd4: 0041d100 call 41d10 <__floatsidf>
  5974. 44dd8: d9000f17 ldw r4,60(sp)
  5975. 44ddc: d9401017 ldw r5,64(sp)
  5976. 44de0: 100d883a mov r6,r2
  5977. 44de4: 180f883a mov r7,r3
  5978. 44de8: 004deb40 call 4deb4 <__subdf3>
  5979. 44dec: 1823883a mov r17,r3
  5980. 44df0: d8c00717 ldw r3,28(sp)
  5981. 44df4: d9401217 ldw r5,72(sp)
  5982. 44df8: a2000c04 addi r8,r20,48
  5983. 44dfc: 1021883a mov r16,r2
  5984. 44e00: 1a000005 stb r8,0(r3)
  5985. 44e04: 800d883a mov r6,r16
  5986. 44e08: 880f883a mov r7,r17
  5987. 44e0c: a809883a mov r4,r21
  5988. 44e10: 4029883a mov r20,r8
  5989. 44e14: 004d4780 call 4d478 <__gedf2>
  5990. 44e18: 00841d16 blt zero,r2,45e90 <_dtoa_r+0x15f4>
  5991. 44e1c: 800d883a mov r6,r16
  5992. 44e20: 880f883a mov r7,r17
  5993. 44e24: 0009883a mov r4,zero
  5994. 44e28: 014ffc34 movhi r5,16368
  5995. 44e2c: 004deb40 call 4deb4 <__subdf3>
  5996. 44e30: d9401217 ldw r5,72(sp)
  5997. 44e34: 100d883a mov r6,r2
  5998. 44e38: 180f883a mov r7,r3
  5999. 44e3c: a809883a mov r4,r21
  6000. 44e40: 004d4780 call 4d478 <__gedf2>
  6001. 44e44: db001617 ldw r12,88(sp)
  6002. 44e48: 00840e16 blt zero,r2,45e84 <_dtoa_r+0x15e8>
  6003. 44e4c: 00800044 movi r2,1
  6004. 44e50: 13006b0e bge r2,r12,45000 <_dtoa_r+0x764>
  6005. 44e54: d9000717 ldw r4,28(sp)
  6006. 44e58: dd800f15 stw r22,60(sp)
  6007. 44e5c: dcc01015 stw r19,64(sp)
  6008. 44e60: 2319883a add r12,r4,r12
  6009. 44e64: dcc01217 ldw r19,72(sp)
  6010. 44e68: 602d883a mov r22,r12
  6011. 44e6c: dc801215 stw r18,72(sp)
  6012. 44e70: b825883a mov r18,r23
  6013. 44e74: 00000906 br 44e9c <_dtoa_r+0x600>
  6014. 44e78: 004deb40 call 4deb4 <__subdf3>
  6015. 44e7c: a80d883a mov r6,r21
  6016. 44e80: 980f883a mov r7,r19
  6017. 44e84: 1009883a mov r4,r2
  6018. 44e88: 180b883a mov r5,r3
  6019. 44e8c: 004d5540 call 4d554 <__ledf2>
  6020. 44e90: 1003e816 blt r2,zero,45e34 <_dtoa_r+0x1598>
  6021. 44e94: b825883a mov r18,r23
  6022. 44e98: bd83e926 beq r23,r22,45e40 <_dtoa_r+0x15a4>
  6023. 44e9c: a809883a mov r4,r21
  6024. 44ea0: 980b883a mov r5,r19
  6025. 44ea4: 000d883a mov r6,zero
  6026. 44ea8: 01d00934 movhi r7,16420
  6027. 44eac: 004d6480 call 4d648 <__muldf3>
  6028. 44eb0: 000d883a mov r6,zero
  6029. 44eb4: 01d00934 movhi r7,16420
  6030. 44eb8: 8009883a mov r4,r16
  6031. 44ebc: 880b883a mov r5,r17
  6032. 44ec0: 102b883a mov r21,r2
  6033. 44ec4: 1827883a mov r19,r3
  6034. 44ec8: 004d6480 call 4d648 <__muldf3>
  6035. 44ecc: 180b883a mov r5,r3
  6036. 44ed0: 1009883a mov r4,r2
  6037. 44ed4: 1821883a mov r16,r3
  6038. 44ed8: 1023883a mov r17,r2
  6039. 44edc: 0041c900 call 41c90 <__fixdfsi>
  6040. 44ee0: 1009883a mov r4,r2
  6041. 44ee4: 1029883a mov r20,r2
  6042. 44ee8: 0041d100 call 41d10 <__floatsidf>
  6043. 44eec: 8809883a mov r4,r17
  6044. 44ef0: 800b883a mov r5,r16
  6045. 44ef4: 100d883a mov r6,r2
  6046. 44ef8: 180f883a mov r7,r3
  6047. 44efc: 004deb40 call 4deb4 <__subdf3>
  6048. 44f00: a5000c04 addi r20,r20,48
  6049. 44f04: a80d883a mov r6,r21
  6050. 44f08: 980f883a mov r7,r19
  6051. 44f0c: 1009883a mov r4,r2
  6052. 44f10: 180b883a mov r5,r3
  6053. 44f14: 95000005 stb r20,0(r18)
  6054. 44f18: 1021883a mov r16,r2
  6055. 44f1c: 1823883a mov r17,r3
  6056. 44f20: 004d5540 call 4d554 <__ledf2>
  6057. 44f24: bdc00044 addi r23,r23,1
  6058. 44f28: 800d883a mov r6,r16
  6059. 44f2c: 880f883a mov r7,r17
  6060. 44f30: 0009883a mov r4,zero
  6061. 44f34: 014ffc34 movhi r5,16368
  6062. 44f38: 103fcf0e bge r2,zero,44e78 <__alt_data_end+0xfffd2e78>
  6063. 44f3c: d8c01317 ldw r3,76(sp)
  6064. 44f40: d8c00515 stw r3,20(sp)
  6065. 44f44: d9400917 ldw r5,36(sp)
  6066. 44f48: e009883a mov r4,fp
  6067. 44f4c: 00479d80 call 479d8 <_Bfree>
  6068. 44f50: d9000517 ldw r4,20(sp)
  6069. 44f54: d9802317 ldw r6,140(sp)
  6070. 44f58: d9c02517 ldw r7,148(sp)
  6071. 44f5c: b8000005 stb zero,0(r23)
  6072. 44f60: 20800044 addi r2,r4,1
  6073. 44f64: 30800015 stw r2,0(r6)
  6074. 44f68: 3802aa26 beq r7,zero,45a14 <_dtoa_r+0x1178>
  6075. 44f6c: 3dc00015 stw r23,0(r7)
  6076. 44f70: d8800717 ldw r2,28(sp)
  6077. 44f74: 003e7906 br 4495c <__alt_data_end+0xfffd295c>
  6078. 44f78: 00800434 movhi r2,16
  6079. 44f7c: 10bfffc4 addi r2,r2,-1
  6080. 44f80: 88a2703a and r17,r17,r2
  6081. 44f84: 883e851e bne r17,zero,4499c <__alt_data_end+0xfffd299c>
  6082. 44f88: 00800174 movhi r2,5
  6083. 44f8c: 10889004 addi r2,r2,8768
  6084. 44f90: 003e8406 br 449a4 <__alt_data_end+0xfffd29a4>
  6085. 44f94: 10c00204 addi r3,r2,8
  6086. 44f98: 003e8706 br 449b8 <__alt_data_end+0xfffd29b8>
  6087. 44f9c: 01400434 movhi r5,16
  6088. 44fa0: 297fffc4 addi r5,r5,-1
  6089. 44fa4: 994a703a and r5,r19,r5
  6090. 44fa8: 9009883a mov r4,r18
  6091. 44fac: 843f0044 addi r16,r16,-1023
  6092. 44fb0: 294ffc34 orhi r5,r5,16368
  6093. 44fb4: dd800217 ldw r22,8(sp)
  6094. 44fb8: d8001115 stw zero,68(sp)
  6095. 44fbc: 003ea506 br 44a54 <__alt_data_end+0xfffd2a54>
  6096. 44fc0: 00800174 movhi r2,5
  6097. 44fc4: 10888704 addi r2,r2,8732
  6098. 44fc8: 003e6406 br 4495c <__alt_data_end+0xfffd295c>
  6099. 44fcc: e0001115 stw zero,68(fp)
  6100. 44fd0: 000b883a mov r5,zero
  6101. 44fd4: e009883a mov r4,fp
  6102. 44fd8: 00479300 call 47930 <_Balloc>
  6103. 44fdc: 01bfffc4 movi r6,-1
  6104. 44fe0: 01c00044 movi r7,1
  6105. 44fe4: d8800715 stw r2,28(sp)
  6106. 44fe8: d9800c15 stw r6,48(sp)
  6107. 44fec: e0801015 stw r2,64(fp)
  6108. 44ff0: d8000315 stw zero,12(sp)
  6109. 44ff4: d9c00b15 stw r7,44(sp)
  6110. 44ff8: d9800615 stw r6,24(sp)
  6111. 44ffc: d8002215 stw zero,136(sp)
  6112. 45000: d8800117 ldw r2,4(sp)
  6113. 45004: 10008916 blt r2,zero,4522c <_dtoa_r+0x990>
  6114. 45008: d9000517 ldw r4,20(sp)
  6115. 4500c: 00c00384 movi r3,14
  6116. 45010: 19008616 blt r3,r4,4522c <_dtoa_r+0x990>
  6117. 45014: 200490fa slli r2,r4,3
  6118. 45018: 00c00174 movhi r3,5
  6119. 4501c: d9802217 ldw r6,136(sp)
  6120. 45020: 18c8ae04 addi r3,r3,8888
  6121. 45024: 1885883a add r2,r3,r2
  6122. 45028: 14000017 ldw r16,0(r2)
  6123. 4502c: 14400117 ldw r17,4(r2)
  6124. 45030: 30016316 blt r6,zero,455c0 <_dtoa_r+0xd24>
  6125. 45034: 800d883a mov r6,r16
  6126. 45038: 880f883a mov r7,r17
  6127. 4503c: 9009883a mov r4,r18
  6128. 45040: 980b883a mov r5,r19
  6129. 45044: 004ca200 call 4ca20 <__divdf3>
  6130. 45048: 180b883a mov r5,r3
  6131. 4504c: 1009883a mov r4,r2
  6132. 45050: 0041c900 call 41c90 <__fixdfsi>
  6133. 45054: 1009883a mov r4,r2
  6134. 45058: 102b883a mov r21,r2
  6135. 4505c: 0041d100 call 41d10 <__floatsidf>
  6136. 45060: 800d883a mov r6,r16
  6137. 45064: 880f883a mov r7,r17
  6138. 45068: 1009883a mov r4,r2
  6139. 4506c: 180b883a mov r5,r3
  6140. 45070: 004d6480 call 4d648 <__muldf3>
  6141. 45074: 100d883a mov r6,r2
  6142. 45078: 180f883a mov r7,r3
  6143. 4507c: 9009883a mov r4,r18
  6144. 45080: 980b883a mov r5,r19
  6145. 45084: 004deb40 call 4deb4 <__subdf3>
  6146. 45088: d9c00717 ldw r7,28(sp)
  6147. 4508c: 1009883a mov r4,r2
  6148. 45090: a8800c04 addi r2,r21,48
  6149. 45094: 38800005 stb r2,0(r7)
  6150. 45098: 3dc00044 addi r23,r7,1
  6151. 4509c: d9c00617 ldw r7,24(sp)
  6152. 450a0: 01800044 movi r6,1
  6153. 450a4: 180b883a mov r5,r3
  6154. 450a8: 2005883a mov r2,r4
  6155. 450ac: 39803826 beq r7,r6,45190 <_dtoa_r+0x8f4>
  6156. 450b0: 000d883a mov r6,zero
  6157. 450b4: 01d00934 movhi r7,16420
  6158. 450b8: 004d6480 call 4d648 <__muldf3>
  6159. 450bc: 000d883a mov r6,zero
  6160. 450c0: 000f883a mov r7,zero
  6161. 450c4: 1009883a mov r4,r2
  6162. 450c8: 180b883a mov r5,r3
  6163. 450cc: 1025883a mov r18,r2
  6164. 450d0: 1827883a mov r19,r3
  6165. 450d4: 004d3f00 call 4d3f0 <__eqdf2>
  6166. 450d8: 103f9a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44>
  6167. 450dc: d9c00617 ldw r7,24(sp)
  6168. 450e0: d8c00717 ldw r3,28(sp)
  6169. 450e4: b829883a mov r20,r23
  6170. 450e8: 38bfffc4 addi r2,r7,-1
  6171. 450ec: 18ad883a add r22,r3,r2
  6172. 450f0: 00000a06 br 4511c <_dtoa_r+0x880>
  6173. 450f4: 004d6480 call 4d648 <__muldf3>
  6174. 450f8: 000d883a mov r6,zero
  6175. 450fc: 000f883a mov r7,zero
  6176. 45100: 1009883a mov r4,r2
  6177. 45104: 180b883a mov r5,r3
  6178. 45108: 1025883a mov r18,r2
  6179. 4510c: 1827883a mov r19,r3
  6180. 45110: b829883a mov r20,r23
  6181. 45114: 004d3f00 call 4d3f0 <__eqdf2>
  6182. 45118: 103f8a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44>
  6183. 4511c: 800d883a mov r6,r16
  6184. 45120: 880f883a mov r7,r17
  6185. 45124: 9009883a mov r4,r18
  6186. 45128: 980b883a mov r5,r19
  6187. 4512c: 004ca200 call 4ca20 <__divdf3>
  6188. 45130: 180b883a mov r5,r3
  6189. 45134: 1009883a mov r4,r2
  6190. 45138: 0041c900 call 41c90 <__fixdfsi>
  6191. 4513c: 1009883a mov r4,r2
  6192. 45140: 102b883a mov r21,r2
  6193. 45144: 0041d100 call 41d10 <__floatsidf>
  6194. 45148: 800d883a mov r6,r16
  6195. 4514c: 880f883a mov r7,r17
  6196. 45150: 1009883a mov r4,r2
  6197. 45154: 180b883a mov r5,r3
  6198. 45158: 004d6480 call 4d648 <__muldf3>
  6199. 4515c: 100d883a mov r6,r2
  6200. 45160: 180f883a mov r7,r3
  6201. 45164: 9009883a mov r4,r18
  6202. 45168: 980b883a mov r5,r19
  6203. 4516c: 004deb40 call 4deb4 <__subdf3>
  6204. 45170: aa000c04 addi r8,r21,48
  6205. 45174: a2000005 stb r8,0(r20)
  6206. 45178: 000d883a mov r6,zero
  6207. 4517c: 01d00934 movhi r7,16420
  6208. 45180: 1009883a mov r4,r2
  6209. 45184: 180b883a mov r5,r3
  6210. 45188: a5c00044 addi r23,r20,1
  6211. 4518c: b53fd91e bne r22,r20,450f4 <__alt_data_end+0xfffd30f4>
  6212. 45190: 100d883a mov r6,r2
  6213. 45194: 180f883a mov r7,r3
  6214. 45198: 1009883a mov r4,r2
  6215. 4519c: 180b883a mov r5,r3
  6216. 451a0: 00413e40 call 413e4 <__adddf3>
  6217. 451a4: 100d883a mov r6,r2
  6218. 451a8: 180f883a mov r7,r3
  6219. 451ac: 8009883a mov r4,r16
  6220. 451b0: 880b883a mov r5,r17
  6221. 451b4: 1027883a mov r19,r2
  6222. 451b8: 1825883a mov r18,r3
  6223. 451bc: 004d5540 call 4d554 <__ledf2>
  6224. 451c0: 10000816 blt r2,zero,451e4 <_dtoa_r+0x948>
  6225. 451c4: 980d883a mov r6,r19
  6226. 451c8: 900f883a mov r7,r18
  6227. 451cc: 8009883a mov r4,r16
  6228. 451d0: 880b883a mov r5,r17
  6229. 451d4: 004d3f00 call 4d3f0 <__eqdf2>
  6230. 451d8: 103f5a1e bne r2,zero,44f44 <__alt_data_end+0xfffd2f44>
  6231. 451dc: ad40004c andi r21,r21,1
  6232. 451e0: a83f5826 beq r21,zero,44f44 <__alt_data_end+0xfffd2f44>
  6233. 451e4: bd3fffc3 ldbu r20,-1(r23)
  6234. 451e8: b8bfffc4 addi r2,r23,-1
  6235. 451ec: 1007883a mov r3,r2
  6236. 451f0: 01400e44 movi r5,57
  6237. 451f4: d9800717 ldw r6,28(sp)
  6238. 451f8: 00000506 br 45210 <_dtoa_r+0x974>
  6239. 451fc: 18ffffc4 addi r3,r3,-1
  6240. 45200: 11824726 beq r2,r6,45b20 <_dtoa_r+0x1284>
  6241. 45204: 1d000003 ldbu r20,0(r3)
  6242. 45208: 102f883a mov r23,r2
  6243. 4520c: 10bfffc4 addi r2,r2,-1
  6244. 45210: a1003fcc andi r4,r20,255
  6245. 45214: 2100201c xori r4,r4,128
  6246. 45218: 213fe004 addi r4,r4,-128
  6247. 4521c: 217ff726 beq r4,r5,451fc <__alt_data_end+0xfffd31fc>
  6248. 45220: a2000044 addi r8,r20,1
  6249. 45224: 12000005 stb r8,0(r2)
  6250. 45228: 003f4606 br 44f44 <__alt_data_end+0xfffd2f44>
  6251. 4522c: d9000b17 ldw r4,44(sp)
  6252. 45230: 2000c826 beq r4,zero,45554 <_dtoa_r+0xcb8>
  6253. 45234: d9800317 ldw r6,12(sp)
  6254. 45238: 00c00044 movi r3,1
  6255. 4523c: 1980f90e bge r3,r6,45624 <_dtoa_r+0xd88>
  6256. 45240: d8800617 ldw r2,24(sp)
  6257. 45244: d8c00a17 ldw r3,40(sp)
  6258. 45248: 157fffc4 addi r21,r2,-1
  6259. 4524c: 1d41f316 blt r3,r21,45a1c <_dtoa_r+0x1180>
  6260. 45250: 1d6bc83a sub r21,r3,r21
  6261. 45254: d9c00617 ldw r7,24(sp)
  6262. 45258: 3802aa16 blt r7,zero,45d04 <_dtoa_r+0x1468>
  6263. 4525c: dd000817 ldw r20,32(sp)
  6264. 45260: d8800617 ldw r2,24(sp)
  6265. 45264: d8c00817 ldw r3,32(sp)
  6266. 45268: 01400044 movi r5,1
  6267. 4526c: e009883a mov r4,fp
  6268. 45270: 1887883a add r3,r3,r2
  6269. 45274: d8c00815 stw r3,32(sp)
  6270. 45278: b0ad883a add r22,r22,r2
  6271. 4527c: 0047d640 call 47d64 <__i2b>
  6272. 45280: 1023883a mov r17,r2
  6273. 45284: a0000826 beq r20,zero,452a8 <_dtoa_r+0xa0c>
  6274. 45288: 0580070e bge zero,r22,452a8 <_dtoa_r+0xa0c>
  6275. 4528c: a005883a mov r2,r20
  6276. 45290: b500b916 blt r22,r20,45578 <_dtoa_r+0xcdc>
  6277. 45294: d9000817 ldw r4,32(sp)
  6278. 45298: a0a9c83a sub r20,r20,r2
  6279. 4529c: b0adc83a sub r22,r22,r2
  6280. 452a0: 2089c83a sub r4,r4,r2
  6281. 452a4: d9000815 stw r4,32(sp)
  6282. 452a8: d9800a17 ldw r6,40(sp)
  6283. 452ac: 0181810e bge zero,r6,458b4 <_dtoa_r+0x1018>
  6284. 452b0: d9c00b17 ldw r7,44(sp)
  6285. 452b4: 3800b326 beq r7,zero,45584 <_dtoa_r+0xce8>
  6286. 452b8: a800b226 beq r21,zero,45584 <_dtoa_r+0xce8>
  6287. 452bc: 880b883a mov r5,r17
  6288. 452c0: a80d883a mov r6,r21
  6289. 452c4: e009883a mov r4,fp
  6290. 452c8: 004802c0 call 4802c <__pow5mult>
  6291. 452cc: d9800917 ldw r6,36(sp)
  6292. 452d0: 100b883a mov r5,r2
  6293. 452d4: e009883a mov r4,fp
  6294. 452d8: 1023883a mov r17,r2
  6295. 452dc: 0047da00 call 47da0 <__multiply>
  6296. 452e0: 1021883a mov r16,r2
  6297. 452e4: d8800a17 ldw r2,40(sp)
  6298. 452e8: d9400917 ldw r5,36(sp)
  6299. 452ec: e009883a mov r4,fp
  6300. 452f0: 1545c83a sub r2,r2,r21
  6301. 452f4: d8800a15 stw r2,40(sp)
  6302. 452f8: 00479d80 call 479d8 <_Bfree>
  6303. 452fc: d8c00a17 ldw r3,40(sp)
  6304. 45300: 18009f1e bne r3,zero,45580 <_dtoa_r+0xce4>
  6305. 45304: 05c00044 movi r23,1
  6306. 45308: e009883a mov r4,fp
  6307. 4530c: b80b883a mov r5,r23
  6308. 45310: 0047d640 call 47d64 <__i2b>
  6309. 45314: d9000d17 ldw r4,52(sp)
  6310. 45318: 102b883a mov r21,r2
  6311. 4531c: 2000ce26 beq r4,zero,45658 <_dtoa_r+0xdbc>
  6312. 45320: 200d883a mov r6,r4
  6313. 45324: 100b883a mov r5,r2
  6314. 45328: e009883a mov r4,fp
  6315. 4532c: 004802c0 call 4802c <__pow5mult>
  6316. 45330: d9800317 ldw r6,12(sp)
  6317. 45334: 102b883a mov r21,r2
  6318. 45338: b981810e bge r23,r6,45940 <_dtoa_r+0x10a4>
  6319. 4533c: 0027883a mov r19,zero
  6320. 45340: a8800417 ldw r2,16(r21)
  6321. 45344: 05c00804 movi r23,32
  6322. 45348: 10800104 addi r2,r2,4
  6323. 4534c: 1085883a add r2,r2,r2
  6324. 45350: 1085883a add r2,r2,r2
  6325. 45354: a885883a add r2,r21,r2
  6326. 45358: 11000017 ldw r4,0(r2)
  6327. 4535c: 0047c4c0 call 47c4c <__hi0bits>
  6328. 45360: b885c83a sub r2,r23,r2
  6329. 45364: 1585883a add r2,r2,r22
  6330. 45368: 108007cc andi r2,r2,31
  6331. 4536c: 1000b326 beq r2,zero,4563c <_dtoa_r+0xda0>
  6332. 45370: 00c00804 movi r3,32
  6333. 45374: 1887c83a sub r3,r3,r2
  6334. 45378: 01000104 movi r4,4
  6335. 4537c: 20c2cd0e bge r4,r3,45eb4 <_dtoa_r+0x1618>
  6336. 45380: 00c00704 movi r3,28
  6337. 45384: 1885c83a sub r2,r3,r2
  6338. 45388: d8c00817 ldw r3,32(sp)
  6339. 4538c: a0a9883a add r20,r20,r2
  6340. 45390: b0ad883a add r22,r22,r2
  6341. 45394: 1887883a add r3,r3,r2
  6342. 45398: d8c00815 stw r3,32(sp)
  6343. 4539c: d9800817 ldw r6,32(sp)
  6344. 453a0: 0180040e bge zero,r6,453b4 <_dtoa_r+0xb18>
  6345. 453a4: 800b883a mov r5,r16
  6346. 453a8: e009883a mov r4,fp
  6347. 453ac: 004816c0 call 4816c <__lshift>
  6348. 453b0: 1021883a mov r16,r2
  6349. 453b4: 0580050e bge zero,r22,453cc <_dtoa_r+0xb30>
  6350. 453b8: a80b883a mov r5,r21
  6351. 453bc: b00d883a mov r6,r22
  6352. 453c0: e009883a mov r4,fp
  6353. 453c4: 004816c0 call 4816c <__lshift>
  6354. 453c8: 102b883a mov r21,r2
  6355. 453cc: d9c00e17 ldw r7,56(sp)
  6356. 453d0: 3801211e bne r7,zero,45858 <_dtoa_r+0xfbc>
  6357. 453d4: d9800617 ldw r6,24(sp)
  6358. 453d8: 0181380e bge zero,r6,458bc <_dtoa_r+0x1020>
  6359. 453dc: d8c00b17 ldw r3,44(sp)
  6360. 453e0: 1800ab1e bne r3,zero,45690 <_dtoa_r+0xdf4>
  6361. 453e4: dc800717 ldw r18,28(sp)
  6362. 453e8: dcc00617 ldw r19,24(sp)
  6363. 453ec: 9029883a mov r20,r18
  6364. 453f0: 00000206 br 453fc <_dtoa_r+0xb60>
  6365. 453f4: 0047a000 call 47a00 <__multadd>
  6366. 453f8: 1021883a mov r16,r2
  6367. 453fc: a80b883a mov r5,r21
  6368. 45400: 8009883a mov r4,r16
  6369. 45404: 00446740 call 44674 <quorem>
  6370. 45408: 10800c04 addi r2,r2,48
  6371. 4540c: 90800005 stb r2,0(r18)
  6372. 45410: 94800044 addi r18,r18,1
  6373. 45414: 9507c83a sub r3,r18,r20
  6374. 45418: 000f883a mov r7,zero
  6375. 4541c: 01800284 movi r6,10
  6376. 45420: 800b883a mov r5,r16
  6377. 45424: e009883a mov r4,fp
  6378. 45428: 1cfff216 blt r3,r19,453f4 <__alt_data_end+0xfffd33f4>
  6379. 4542c: 1011883a mov r8,r2
  6380. 45430: d8800617 ldw r2,24(sp)
  6381. 45434: 0082370e bge zero,r2,45d14 <_dtoa_r+0x1478>
  6382. 45438: d9000717 ldw r4,28(sp)
  6383. 4543c: 0025883a mov r18,zero
  6384. 45440: 20af883a add r23,r4,r2
  6385. 45444: 01800044 movi r6,1
  6386. 45448: 800b883a mov r5,r16
  6387. 4544c: e009883a mov r4,fp
  6388. 45450: da001715 stw r8,92(sp)
  6389. 45454: 004816c0 call 4816c <__lshift>
  6390. 45458: a80b883a mov r5,r21
  6391. 4545c: 1009883a mov r4,r2
  6392. 45460: d8800915 stw r2,36(sp)
  6393. 45464: 00482b40 call 482b4 <__mcmp>
  6394. 45468: da001717 ldw r8,92(sp)
  6395. 4546c: 0081800e bge zero,r2,45a70 <_dtoa_r+0x11d4>
  6396. 45470: b93fffc3 ldbu r4,-1(r23)
  6397. 45474: b8bfffc4 addi r2,r23,-1
  6398. 45478: 1007883a mov r3,r2
  6399. 4547c: 01800e44 movi r6,57
  6400. 45480: d9c00717 ldw r7,28(sp)
  6401. 45484: 00000506 br 4549c <_dtoa_r+0xc00>
  6402. 45488: 18ffffc4 addi r3,r3,-1
  6403. 4548c: 11c12326 beq r2,r7,4591c <_dtoa_r+0x1080>
  6404. 45490: 19000003 ldbu r4,0(r3)
  6405. 45494: 102f883a mov r23,r2
  6406. 45498: 10bfffc4 addi r2,r2,-1
  6407. 4549c: 21403fcc andi r5,r4,255
  6408. 454a0: 2940201c xori r5,r5,128
  6409. 454a4: 297fe004 addi r5,r5,-128
  6410. 454a8: 29bff726 beq r5,r6,45488 <__alt_data_end+0xfffd3488>
  6411. 454ac: 21000044 addi r4,r4,1
  6412. 454b0: 11000005 stb r4,0(r2)
  6413. 454b4: a80b883a mov r5,r21
  6414. 454b8: e009883a mov r4,fp
  6415. 454bc: 00479d80 call 479d8 <_Bfree>
  6416. 454c0: 883ea026 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44>
  6417. 454c4: 90000426 beq r18,zero,454d8 <_dtoa_r+0xc3c>
  6418. 454c8: 94400326 beq r18,r17,454d8 <_dtoa_r+0xc3c>
  6419. 454cc: 900b883a mov r5,r18
  6420. 454d0: e009883a mov r4,fp
  6421. 454d4: 00479d80 call 479d8 <_Bfree>
  6422. 454d8: 880b883a mov r5,r17
  6423. 454dc: e009883a mov r4,fp
  6424. 454e0: 00479d80 call 479d8 <_Bfree>
  6425. 454e4: 003e9706 br 44f44 <__alt_data_end+0xfffd2f44>
  6426. 454e8: 01800044 movi r6,1
  6427. 454ec: d9800e15 stw r6,56(sp)
  6428. 454f0: 003d9606 br 44b4c <__alt_data_end+0xfffd2b4c>
  6429. 454f4: d8800817 ldw r2,32(sp)
  6430. 454f8: d8c00517 ldw r3,20(sp)
  6431. 454fc: d8000d15 stw zero,52(sp)
  6432. 45500: 10c5c83a sub r2,r2,r3
  6433. 45504: 00c9c83a sub r4,zero,r3
  6434. 45508: d8800815 stw r2,32(sp)
  6435. 4550c: d9000a15 stw r4,40(sp)
  6436. 45510: 003d9706 br 44b70 <__alt_data_end+0xfffd2b70>
  6437. 45514: 05adc83a sub r22,zero,r22
  6438. 45518: dd800815 stw r22,32(sp)
  6439. 4551c: 002d883a mov r22,zero
  6440. 45520: 003d8e06 br 44b5c <__alt_data_end+0xfffd2b5c>
  6441. 45524: d9000517 ldw r4,20(sp)
  6442. 45528: 0041d100 call 41d10 <__floatsidf>
  6443. 4552c: 100d883a mov r6,r2
  6444. 45530: 180f883a mov r7,r3
  6445. 45534: a009883a mov r4,r20
  6446. 45538: 880b883a mov r5,r17
  6447. 4553c: 004d3f00 call 4d3f0 <__eqdf2>
  6448. 45540: 103d7126 beq r2,zero,44b08 <__alt_data_end+0xfffd2b08>
  6449. 45544: d9c00517 ldw r7,20(sp)
  6450. 45548: 39ffffc4 addi r7,r7,-1
  6451. 4554c: d9c00515 stw r7,20(sp)
  6452. 45550: 003d6d06 br 44b08 <__alt_data_end+0xfffd2b08>
  6453. 45554: dd400a17 ldw r21,40(sp)
  6454. 45558: dd000817 ldw r20,32(sp)
  6455. 4555c: 0023883a mov r17,zero
  6456. 45560: 003f4806 br 45284 <__alt_data_end+0xfffd3284>
  6457. 45564: 10e3c83a sub r17,r2,r3
  6458. 45568: 9448983a sll r4,r18,r17
  6459. 4556c: 003d3206 br 44a38 <__alt_data_end+0xfffd2a38>
  6460. 45570: d8000e15 stw zero,56(sp)
  6461. 45574: 003d7506 br 44b4c <__alt_data_end+0xfffd2b4c>
  6462. 45578: b005883a mov r2,r22
  6463. 4557c: 003f4506 br 45294 <__alt_data_end+0xfffd3294>
  6464. 45580: dc000915 stw r16,36(sp)
  6465. 45584: d9800a17 ldw r6,40(sp)
  6466. 45588: d9400917 ldw r5,36(sp)
  6467. 4558c: e009883a mov r4,fp
  6468. 45590: 004802c0 call 4802c <__pow5mult>
  6469. 45594: 1021883a mov r16,r2
  6470. 45598: 003f5a06 br 45304 <__alt_data_end+0xfffd3304>
  6471. 4559c: 01c00044 movi r7,1
  6472. 455a0: d9c00b15 stw r7,44(sp)
  6473. 455a4: d8802217 ldw r2,136(sp)
  6474. 455a8: 0081280e bge zero,r2,45a4c <_dtoa_r+0x11b0>
  6475. 455ac: 100d883a mov r6,r2
  6476. 455b0: 1021883a mov r16,r2
  6477. 455b4: d8800c15 stw r2,48(sp)
  6478. 455b8: d8800615 stw r2,24(sp)
  6479. 455bc: 003d8806 br 44be0 <__alt_data_end+0xfffd2be0>
  6480. 455c0: d8800617 ldw r2,24(sp)
  6481. 455c4: 00be9b16 blt zero,r2,45034 <__alt_data_end+0xfffd3034>
  6482. 455c8: 10010f1e bne r2,zero,45a08 <_dtoa_r+0x116c>
  6483. 455cc: 880b883a mov r5,r17
  6484. 455d0: 000d883a mov r6,zero
  6485. 455d4: 01d00534 movhi r7,16404
  6486. 455d8: 8009883a mov r4,r16
  6487. 455dc: 004d6480 call 4d648 <__muldf3>
  6488. 455e0: 900d883a mov r6,r18
  6489. 455e4: 980f883a mov r7,r19
  6490. 455e8: 1009883a mov r4,r2
  6491. 455ec: 180b883a mov r5,r3
  6492. 455f0: 004d4780 call 4d478 <__gedf2>
  6493. 455f4: 002b883a mov r21,zero
  6494. 455f8: 0023883a mov r17,zero
  6495. 455fc: 1000bf16 blt r2,zero,458fc <_dtoa_r+0x1060>
  6496. 45600: d9802217 ldw r6,136(sp)
  6497. 45604: ddc00717 ldw r23,28(sp)
  6498. 45608: 018c303a nor r6,zero,r6
  6499. 4560c: d9800515 stw r6,20(sp)
  6500. 45610: a80b883a mov r5,r21
  6501. 45614: e009883a mov r4,fp
  6502. 45618: 00479d80 call 479d8 <_Bfree>
  6503. 4561c: 883e4926 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44>
  6504. 45620: 003fad06 br 454d8 <__alt_data_end+0xfffd34d8>
  6505. 45624: d9c01117 ldw r7,68(sp)
  6506. 45628: 3801bc26 beq r7,zero,45d1c <_dtoa_r+0x1480>
  6507. 4562c: 10810cc4 addi r2,r2,1075
  6508. 45630: dd400a17 ldw r21,40(sp)
  6509. 45634: dd000817 ldw r20,32(sp)
  6510. 45638: 003f0a06 br 45264 <__alt_data_end+0xfffd3264>
  6511. 4563c: 00800704 movi r2,28
  6512. 45640: d9000817 ldw r4,32(sp)
  6513. 45644: a0a9883a add r20,r20,r2
  6514. 45648: b0ad883a add r22,r22,r2
  6515. 4564c: 2089883a add r4,r4,r2
  6516. 45650: d9000815 stw r4,32(sp)
  6517. 45654: 003f5106 br 4539c <__alt_data_end+0xfffd339c>
  6518. 45658: d8c00317 ldw r3,12(sp)
  6519. 4565c: b8c1fc0e bge r23,r3,45e50 <_dtoa_r+0x15b4>
  6520. 45660: 0027883a mov r19,zero
  6521. 45664: b805883a mov r2,r23
  6522. 45668: 003f3e06 br 45364 <__alt_data_end+0xfffd3364>
  6523. 4566c: 880b883a mov r5,r17
  6524. 45670: e009883a mov r4,fp
  6525. 45674: 000f883a mov r7,zero
  6526. 45678: 01800284 movi r6,10
  6527. 4567c: 0047a000 call 47a00 <__multadd>
  6528. 45680: d9000c17 ldw r4,48(sp)
  6529. 45684: 1023883a mov r17,r2
  6530. 45688: 0102040e bge zero,r4,45e9c <_dtoa_r+0x1600>
  6531. 4568c: d9000615 stw r4,24(sp)
  6532. 45690: 0500050e bge zero,r20,456a8 <_dtoa_r+0xe0c>
  6533. 45694: 880b883a mov r5,r17
  6534. 45698: a00d883a mov r6,r20
  6535. 4569c: e009883a mov r4,fp
  6536. 456a0: 004816c0 call 4816c <__lshift>
  6537. 456a4: 1023883a mov r17,r2
  6538. 456a8: 9801241e bne r19,zero,45b3c <_dtoa_r+0x12a0>
  6539. 456ac: 8829883a mov r20,r17
  6540. 456b0: d9000617 ldw r4,24(sp)
  6541. 456b4: dcc00717 ldw r19,28(sp)
  6542. 456b8: 9480004c andi r18,r18,1
  6543. 456bc: 20bfffc4 addi r2,r4,-1
  6544. 456c0: 9885883a add r2,r19,r2
  6545. 456c4: d8800415 stw r2,16(sp)
  6546. 456c8: dc800615 stw r18,24(sp)
  6547. 456cc: a80b883a mov r5,r21
  6548. 456d0: 8009883a mov r4,r16
  6549. 456d4: 00446740 call 44674 <quorem>
  6550. 456d8: 880b883a mov r5,r17
  6551. 456dc: 8009883a mov r4,r16
  6552. 456e0: 102f883a mov r23,r2
  6553. 456e4: 00482b40 call 482b4 <__mcmp>
  6554. 456e8: a80b883a mov r5,r21
  6555. 456ec: a00d883a mov r6,r20
  6556. 456f0: e009883a mov r4,fp
  6557. 456f4: 102d883a mov r22,r2
  6558. 456f8: 00483140 call 48314 <__mdiff>
  6559. 456fc: 1007883a mov r3,r2
  6560. 45700: 10800317 ldw r2,12(r2)
  6561. 45704: bc800c04 addi r18,r23,48
  6562. 45708: 180b883a mov r5,r3
  6563. 4570c: 10004e1e bne r2,zero,45848 <_dtoa_r+0xfac>
  6564. 45710: 8009883a mov r4,r16
  6565. 45714: d8c01615 stw r3,88(sp)
  6566. 45718: 00482b40 call 482b4 <__mcmp>
  6567. 4571c: d8c01617 ldw r3,88(sp)
  6568. 45720: e009883a mov r4,fp
  6569. 45724: d8801615 stw r2,88(sp)
  6570. 45728: 180b883a mov r5,r3
  6571. 4572c: 00479d80 call 479d8 <_Bfree>
  6572. 45730: d8801617 ldw r2,88(sp)
  6573. 45734: 1000041e bne r2,zero,45748 <_dtoa_r+0xeac>
  6574. 45738: d9800317 ldw r6,12(sp)
  6575. 4573c: 3000021e bne r6,zero,45748 <_dtoa_r+0xeac>
  6576. 45740: d8c00617 ldw r3,24(sp)
  6577. 45744: 18003726 beq r3,zero,45824 <_dtoa_r+0xf88>
  6578. 45748: b0002016 blt r22,zero,457cc <_dtoa_r+0xf30>
  6579. 4574c: b000041e bne r22,zero,45760 <_dtoa_r+0xec4>
  6580. 45750: d9000317 ldw r4,12(sp)
  6581. 45754: 2000021e bne r4,zero,45760 <_dtoa_r+0xec4>
  6582. 45758: d8c00617 ldw r3,24(sp)
  6583. 4575c: 18001b26 beq r3,zero,457cc <_dtoa_r+0xf30>
  6584. 45760: 00810716 blt zero,r2,45b80 <_dtoa_r+0x12e4>
  6585. 45764: d8c00417 ldw r3,16(sp)
  6586. 45768: 9d800044 addi r22,r19,1
  6587. 4576c: 9c800005 stb r18,0(r19)
  6588. 45770: b02f883a mov r23,r22
  6589. 45774: 98c10626 beq r19,r3,45b90 <_dtoa_r+0x12f4>
  6590. 45778: 800b883a mov r5,r16
  6591. 4577c: 000f883a mov r7,zero
  6592. 45780: 01800284 movi r6,10
  6593. 45784: e009883a mov r4,fp
  6594. 45788: 0047a000 call 47a00 <__multadd>
  6595. 4578c: 1021883a mov r16,r2
  6596. 45790: 000f883a mov r7,zero
  6597. 45794: 01800284 movi r6,10
  6598. 45798: 880b883a mov r5,r17
  6599. 4579c: e009883a mov r4,fp
  6600. 457a0: 8d002526 beq r17,r20,45838 <_dtoa_r+0xf9c>
  6601. 457a4: 0047a000 call 47a00 <__multadd>
  6602. 457a8: a00b883a mov r5,r20
  6603. 457ac: 000f883a mov r7,zero
  6604. 457b0: 01800284 movi r6,10
  6605. 457b4: e009883a mov r4,fp
  6606. 457b8: 1023883a mov r17,r2
  6607. 457bc: 0047a000 call 47a00 <__multadd>
  6608. 457c0: 1029883a mov r20,r2
  6609. 457c4: b027883a mov r19,r22
  6610. 457c8: 003fc006 br 456cc <__alt_data_end+0xfffd36cc>
  6611. 457cc: 9011883a mov r8,r18
  6612. 457d0: 00800e0e bge zero,r2,4580c <_dtoa_r+0xf70>
  6613. 457d4: 800b883a mov r5,r16
  6614. 457d8: 01800044 movi r6,1
  6615. 457dc: e009883a mov r4,fp
  6616. 457e0: da001715 stw r8,92(sp)
  6617. 457e4: 004816c0 call 4816c <__lshift>
  6618. 457e8: a80b883a mov r5,r21
  6619. 457ec: 1009883a mov r4,r2
  6620. 457f0: 1021883a mov r16,r2
  6621. 457f4: 00482b40 call 482b4 <__mcmp>
  6622. 457f8: da001717 ldw r8,92(sp)
  6623. 457fc: 0081960e bge zero,r2,45e58 <_dtoa_r+0x15bc>
  6624. 45800: 00800e44 movi r2,57
  6625. 45804: 40817026 beq r8,r2,45dc8 <_dtoa_r+0x152c>
  6626. 45808: ba000c44 addi r8,r23,49
  6627. 4580c: 8825883a mov r18,r17
  6628. 45810: 9dc00044 addi r23,r19,1
  6629. 45814: 9a000005 stb r8,0(r19)
  6630. 45818: a023883a mov r17,r20
  6631. 4581c: dc000915 stw r16,36(sp)
  6632. 45820: 003f2406 br 454b4 <__alt_data_end+0xfffd34b4>
  6633. 45824: 00800e44 movi r2,57
  6634. 45828: 9011883a mov r8,r18
  6635. 4582c: 90816626 beq r18,r2,45dc8 <_dtoa_r+0x152c>
  6636. 45830: 05bff516 blt zero,r22,45808 <__alt_data_end+0xfffd3808>
  6637. 45834: 003ff506 br 4580c <__alt_data_end+0xfffd380c>
  6638. 45838: 0047a000 call 47a00 <__multadd>
  6639. 4583c: 1023883a mov r17,r2
  6640. 45840: 1029883a mov r20,r2
  6641. 45844: 003fdf06 br 457c4 <__alt_data_end+0xfffd37c4>
  6642. 45848: e009883a mov r4,fp
  6643. 4584c: 00479d80 call 479d8 <_Bfree>
  6644. 45850: 00800044 movi r2,1
  6645. 45854: 003fbc06 br 45748 <__alt_data_end+0xfffd3748>
  6646. 45858: a80b883a mov r5,r21
  6647. 4585c: 8009883a mov r4,r16
  6648. 45860: 00482b40 call 482b4 <__mcmp>
  6649. 45864: 103edb0e bge r2,zero,453d4 <__alt_data_end+0xfffd33d4>
  6650. 45868: 800b883a mov r5,r16
  6651. 4586c: 000f883a mov r7,zero
  6652. 45870: 01800284 movi r6,10
  6653. 45874: e009883a mov r4,fp
  6654. 45878: 0047a000 call 47a00 <__multadd>
  6655. 4587c: 1021883a mov r16,r2
  6656. 45880: d8800517 ldw r2,20(sp)
  6657. 45884: d8c00b17 ldw r3,44(sp)
  6658. 45888: 10bfffc4 addi r2,r2,-1
  6659. 4588c: d8800515 stw r2,20(sp)
  6660. 45890: 183f761e bne r3,zero,4566c <__alt_data_end+0xfffd366c>
  6661. 45894: d9000c17 ldw r4,48(sp)
  6662. 45898: 0101730e bge zero,r4,45e68 <_dtoa_r+0x15cc>
  6663. 4589c: d9000615 stw r4,24(sp)
  6664. 458a0: 003ed006 br 453e4 <__alt_data_end+0xfffd33e4>
  6665. 458a4: 00800084 movi r2,2
  6666. 458a8: 3081861e bne r6,r2,45ec4 <_dtoa_r+0x1628>
  6667. 458ac: d8000b15 stw zero,44(sp)
  6668. 458b0: 003f3c06 br 455a4 <__alt_data_end+0xfffd35a4>
  6669. 458b4: dc000917 ldw r16,36(sp)
  6670. 458b8: 003e9206 br 45304 <__alt_data_end+0xfffd3304>
  6671. 458bc: d9c00317 ldw r7,12(sp)
  6672. 458c0: 00800084 movi r2,2
  6673. 458c4: 11fec50e bge r2,r7,453dc <__alt_data_end+0xfffd33dc>
  6674. 458c8: d9000617 ldw r4,24(sp)
  6675. 458cc: 20013c1e bne r4,zero,45dc0 <_dtoa_r+0x1524>
  6676. 458d0: a80b883a mov r5,r21
  6677. 458d4: 000f883a mov r7,zero
  6678. 458d8: 01800144 movi r6,5
  6679. 458dc: e009883a mov r4,fp
  6680. 458e0: 0047a000 call 47a00 <__multadd>
  6681. 458e4: 100b883a mov r5,r2
  6682. 458e8: 8009883a mov r4,r16
  6683. 458ec: 102b883a mov r21,r2
  6684. 458f0: 00482b40 call 482b4 <__mcmp>
  6685. 458f4: dc000915 stw r16,36(sp)
  6686. 458f8: 00bf410e bge zero,r2,45600 <__alt_data_end+0xfffd3600>
  6687. 458fc: d9c00717 ldw r7,28(sp)
  6688. 45900: 00800c44 movi r2,49
  6689. 45904: 38800005 stb r2,0(r7)
  6690. 45908: d8800517 ldw r2,20(sp)
  6691. 4590c: 3dc00044 addi r23,r7,1
  6692. 45910: 10800044 addi r2,r2,1
  6693. 45914: d8800515 stw r2,20(sp)
  6694. 45918: 003f3d06 br 45610 <__alt_data_end+0xfffd3610>
  6695. 4591c: d9800517 ldw r6,20(sp)
  6696. 45920: d9c00717 ldw r7,28(sp)
  6697. 45924: 00800c44 movi r2,49
  6698. 45928: 31800044 addi r6,r6,1
  6699. 4592c: d9800515 stw r6,20(sp)
  6700. 45930: 38800005 stb r2,0(r7)
  6701. 45934: 003edf06 br 454b4 <__alt_data_end+0xfffd34b4>
  6702. 45938: d8000b15 stw zero,44(sp)
  6703. 4593c: 003c9f06 br 44bbc <__alt_data_end+0xfffd2bbc>
  6704. 45940: 903e7e1e bne r18,zero,4533c <__alt_data_end+0xfffd333c>
  6705. 45944: 00800434 movhi r2,16
  6706. 45948: 10bfffc4 addi r2,r2,-1
  6707. 4594c: 9884703a and r2,r19,r2
  6708. 45950: 1000ea1e bne r2,zero,45cfc <_dtoa_r+0x1460>
  6709. 45954: 9cdffc2c andhi r19,r19,32752
  6710. 45958: 9800e826 beq r19,zero,45cfc <_dtoa_r+0x1460>
  6711. 4595c: d9c00817 ldw r7,32(sp)
  6712. 45960: b5800044 addi r22,r22,1
  6713. 45964: 04c00044 movi r19,1
  6714. 45968: 39c00044 addi r7,r7,1
  6715. 4596c: d9c00815 stw r7,32(sp)
  6716. 45970: d8800d17 ldw r2,52(sp)
  6717. 45974: 103e721e bne r2,zero,45340 <__alt_data_end+0xfffd3340>
  6718. 45978: 00800044 movi r2,1
  6719. 4597c: 003e7906 br 45364 <__alt_data_end+0xfffd3364>
  6720. 45980: 8009883a mov r4,r16
  6721. 45984: 0041d100 call 41d10 <__floatsidf>
  6722. 45988: d9800f17 ldw r6,60(sp)
  6723. 4598c: d9c01017 ldw r7,64(sp)
  6724. 45990: 1009883a mov r4,r2
  6725. 45994: 180b883a mov r5,r3
  6726. 45998: 004d6480 call 4d648 <__muldf3>
  6727. 4599c: 000d883a mov r6,zero
  6728. 459a0: 01d00734 movhi r7,16412
  6729. 459a4: 1009883a mov r4,r2
  6730. 459a8: 180b883a mov r5,r3
  6731. 459ac: 00413e40 call 413e4 <__adddf3>
  6732. 459b0: 047f3034 movhi r17,64704
  6733. 459b4: 1021883a mov r16,r2
  6734. 459b8: 1c63883a add r17,r3,r17
  6735. 459bc: d9000f17 ldw r4,60(sp)
  6736. 459c0: d9401017 ldw r5,64(sp)
  6737. 459c4: 000d883a mov r6,zero
  6738. 459c8: 01d00534 movhi r7,16404
  6739. 459cc: 004deb40 call 4deb4 <__subdf3>
  6740. 459d0: 800d883a mov r6,r16
  6741. 459d4: 880f883a mov r7,r17
  6742. 459d8: 1009883a mov r4,r2
  6743. 459dc: 180b883a mov r5,r3
  6744. 459e0: 102b883a mov r21,r2
  6745. 459e4: 1829883a mov r20,r3
  6746. 459e8: 004d4780 call 4d478 <__gedf2>
  6747. 459ec: 00806c16 blt zero,r2,45ba0 <_dtoa_r+0x1304>
  6748. 459f0: 89e0003c xorhi r7,r17,32768
  6749. 459f4: 800d883a mov r6,r16
  6750. 459f8: a809883a mov r4,r21
  6751. 459fc: a00b883a mov r5,r20
  6752. 45a00: 004d5540 call 4d554 <__ledf2>
  6753. 45a04: 103d7e0e bge r2,zero,45000 <__alt_data_end+0xfffd3000>
  6754. 45a08: 002b883a mov r21,zero
  6755. 45a0c: 0023883a mov r17,zero
  6756. 45a10: 003efb06 br 45600 <__alt_data_end+0xfffd3600>
  6757. 45a14: d8800717 ldw r2,28(sp)
  6758. 45a18: 003bd006 br 4495c <__alt_data_end+0xfffd295c>
  6759. 45a1c: d9000a17 ldw r4,40(sp)
  6760. 45a20: d9800d17 ldw r6,52(sp)
  6761. 45a24: dd400a15 stw r21,40(sp)
  6762. 45a28: a905c83a sub r2,r21,r4
  6763. 45a2c: 308d883a add r6,r6,r2
  6764. 45a30: d9800d15 stw r6,52(sp)
  6765. 45a34: 002b883a mov r21,zero
  6766. 45a38: 003e0606 br 45254 <__alt_data_end+0xfffd3254>
  6767. 45a3c: 9023883a mov r17,r18
  6768. 45a40: 9829883a mov r20,r19
  6769. 45a44: 04000084 movi r16,2
  6770. 45a48: 003c9206 br 44c94 <__alt_data_end+0xfffd2c94>
  6771. 45a4c: 04000044 movi r16,1
  6772. 45a50: dc000c15 stw r16,48(sp)
  6773. 45a54: dc000615 stw r16,24(sp)
  6774. 45a58: dc002215 stw r16,136(sp)
  6775. 45a5c: e0001115 stw zero,68(fp)
  6776. 45a60: 000b883a mov r5,zero
  6777. 45a64: 003c6906 br 44c0c <__alt_data_end+0xfffd2c0c>
  6778. 45a68: 3021883a mov r16,r6
  6779. 45a6c: 003ffb06 br 45a5c <__alt_data_end+0xfffd3a5c>
  6780. 45a70: 1000021e bne r2,zero,45a7c <_dtoa_r+0x11e0>
  6781. 45a74: 4200004c andi r8,r8,1
  6782. 45a78: 403e7d1e bne r8,zero,45470 <__alt_data_end+0xfffd3470>
  6783. 45a7c: 01000c04 movi r4,48
  6784. 45a80: 00000106 br 45a88 <_dtoa_r+0x11ec>
  6785. 45a84: 102f883a mov r23,r2
  6786. 45a88: b8bfffc4 addi r2,r23,-1
  6787. 45a8c: 10c00007 ldb r3,0(r2)
  6788. 45a90: 193ffc26 beq r3,r4,45a84 <__alt_data_end+0xfffd3a84>
  6789. 45a94: 003e8706 br 454b4 <__alt_data_end+0xfffd34b4>
  6790. 45a98: d8800517 ldw r2,20(sp)
  6791. 45a9c: 00a3c83a sub r17,zero,r2
  6792. 45aa0: 8800a426 beq r17,zero,45d34 <_dtoa_r+0x1498>
  6793. 45aa4: 888003cc andi r2,r17,15
  6794. 45aa8: 100490fa slli r2,r2,3
  6795. 45aac: 00c00174 movhi r3,5
  6796. 45ab0: 18c8ae04 addi r3,r3,8888
  6797. 45ab4: 1885883a add r2,r3,r2
  6798. 45ab8: 11800017 ldw r6,0(r2)
  6799. 45abc: 11c00117 ldw r7,4(r2)
  6800. 45ac0: 9009883a mov r4,r18
  6801. 45ac4: 980b883a mov r5,r19
  6802. 45ac8: 8823d13a srai r17,r17,4
  6803. 45acc: 004d6480 call 4d648 <__muldf3>
  6804. 45ad0: d8800f15 stw r2,60(sp)
  6805. 45ad4: d8c01015 stw r3,64(sp)
  6806. 45ad8: 8800e826 beq r17,zero,45e7c <_dtoa_r+0x15e0>
  6807. 45adc: 05000174 movhi r20,5
  6808. 45ae0: a508a404 addi r20,r20,8848
  6809. 45ae4: 04000084 movi r16,2
  6810. 45ae8: 8980004c andi r6,r17,1
  6811. 45aec: 1009883a mov r4,r2
  6812. 45af0: 8823d07a srai r17,r17,1
  6813. 45af4: 180b883a mov r5,r3
  6814. 45af8: 30000426 beq r6,zero,45b0c <_dtoa_r+0x1270>
  6815. 45afc: a1800017 ldw r6,0(r20)
  6816. 45b00: a1c00117 ldw r7,4(r20)
  6817. 45b04: 84000044 addi r16,r16,1
  6818. 45b08: 004d6480 call 4d648 <__muldf3>
  6819. 45b0c: a5000204 addi r20,r20,8
  6820. 45b10: 883ff51e bne r17,zero,45ae8 <__alt_data_end+0xfffd3ae8>
  6821. 45b14: d8800f15 stw r2,60(sp)
  6822. 45b18: d8c01015 stw r3,64(sp)
  6823. 45b1c: 003c7606 br 44cf8 <__alt_data_end+0xfffd2cf8>
  6824. 45b20: 00c00c04 movi r3,48
  6825. 45b24: 10c00005 stb r3,0(r2)
  6826. 45b28: d8c00517 ldw r3,20(sp)
  6827. 45b2c: bd3fffc3 ldbu r20,-1(r23)
  6828. 45b30: 18c00044 addi r3,r3,1
  6829. 45b34: d8c00515 stw r3,20(sp)
  6830. 45b38: 003db906 br 45220 <__alt_data_end+0xfffd3220>
  6831. 45b3c: 89400117 ldw r5,4(r17)
  6832. 45b40: e009883a mov r4,fp
  6833. 45b44: 00479300 call 47930 <_Balloc>
  6834. 45b48: 89800417 ldw r6,16(r17)
  6835. 45b4c: 89400304 addi r5,r17,12
  6836. 45b50: 11000304 addi r4,r2,12
  6837. 45b54: 31800084 addi r6,r6,2
  6838. 45b58: 318d883a add r6,r6,r6
  6839. 45b5c: 318d883a add r6,r6,r6
  6840. 45b60: 1027883a mov r19,r2
  6841. 45b64: 00476c00 call 476c0 <memcpy>
  6842. 45b68: 01800044 movi r6,1
  6843. 45b6c: 980b883a mov r5,r19
  6844. 45b70: e009883a mov r4,fp
  6845. 45b74: 004816c0 call 4816c <__lshift>
  6846. 45b78: 1029883a mov r20,r2
  6847. 45b7c: 003ecc06 br 456b0 <__alt_data_end+0xfffd36b0>
  6848. 45b80: 00800e44 movi r2,57
  6849. 45b84: 90809026 beq r18,r2,45dc8 <_dtoa_r+0x152c>
  6850. 45b88: 92000044 addi r8,r18,1
  6851. 45b8c: 003f1f06 br 4580c <__alt_data_end+0xfffd380c>
  6852. 45b90: 9011883a mov r8,r18
  6853. 45b94: 8825883a mov r18,r17
  6854. 45b98: a023883a mov r17,r20
  6855. 45b9c: 003e2906 br 45444 <__alt_data_end+0xfffd3444>
  6856. 45ba0: 002b883a mov r21,zero
  6857. 45ba4: 0023883a mov r17,zero
  6858. 45ba8: 003f5406 br 458fc <__alt_data_end+0xfffd38fc>
  6859. 45bac: 61bfffc4 addi r6,r12,-1
  6860. 45bb0: 300490fa slli r2,r6,3
  6861. 45bb4: 00c00174 movhi r3,5
  6862. 45bb8: 18c8ae04 addi r3,r3,8888
  6863. 45bbc: 1885883a add r2,r3,r2
  6864. 45bc0: 11000017 ldw r4,0(r2)
  6865. 45bc4: 11400117 ldw r5,4(r2)
  6866. 45bc8: d8800717 ldw r2,28(sp)
  6867. 45bcc: 880f883a mov r7,r17
  6868. 45bd0: d9801215 stw r6,72(sp)
  6869. 45bd4: 800d883a mov r6,r16
  6870. 45bd8: db001615 stw r12,88(sp)
  6871. 45bdc: 15c00044 addi r23,r2,1
  6872. 45be0: 004d6480 call 4d648 <__muldf3>
  6873. 45be4: d9401017 ldw r5,64(sp)
  6874. 45be8: d9000f17 ldw r4,60(sp)
  6875. 45bec: d8c01515 stw r3,84(sp)
  6876. 45bf0: d8801415 stw r2,80(sp)
  6877. 45bf4: 0041c900 call 41c90 <__fixdfsi>
  6878. 45bf8: 1009883a mov r4,r2
  6879. 45bfc: 1021883a mov r16,r2
  6880. 45c00: 0041d100 call 41d10 <__floatsidf>
  6881. 45c04: d9000f17 ldw r4,60(sp)
  6882. 45c08: d9401017 ldw r5,64(sp)
  6883. 45c0c: 100d883a mov r6,r2
  6884. 45c10: 180f883a mov r7,r3
  6885. 45c14: 004deb40 call 4deb4 <__subdf3>
  6886. 45c18: 1829883a mov r20,r3
  6887. 45c1c: d8c00717 ldw r3,28(sp)
  6888. 45c20: 84000c04 addi r16,r16,48
  6889. 45c24: 1023883a mov r17,r2
  6890. 45c28: 1c000005 stb r16,0(r3)
  6891. 45c2c: db001617 ldw r12,88(sp)
  6892. 45c30: 00800044 movi r2,1
  6893. 45c34: 60802226 beq r12,r2,45cc0 <_dtoa_r+0x1424>
  6894. 45c38: d9c00717 ldw r7,28(sp)
  6895. 45c3c: 8805883a mov r2,r17
  6896. 45c40: b82b883a mov r21,r23
  6897. 45c44: 3b19883a add r12,r7,r12
  6898. 45c48: 6023883a mov r17,r12
  6899. 45c4c: a007883a mov r3,r20
  6900. 45c50: dc800f15 stw r18,60(sp)
  6901. 45c54: 000d883a mov r6,zero
  6902. 45c58: 01d00934 movhi r7,16420
  6903. 45c5c: 1009883a mov r4,r2
  6904. 45c60: 180b883a mov r5,r3
  6905. 45c64: 004d6480 call 4d648 <__muldf3>
  6906. 45c68: 180b883a mov r5,r3
  6907. 45c6c: 1009883a mov r4,r2
  6908. 45c70: 1829883a mov r20,r3
  6909. 45c74: 1025883a mov r18,r2
  6910. 45c78: 0041c900 call 41c90 <__fixdfsi>
  6911. 45c7c: 1009883a mov r4,r2
  6912. 45c80: 1021883a mov r16,r2
  6913. 45c84: 0041d100 call 41d10 <__floatsidf>
  6914. 45c88: 100d883a mov r6,r2
  6915. 45c8c: 180f883a mov r7,r3
  6916. 45c90: 9009883a mov r4,r18
  6917. 45c94: a00b883a mov r5,r20
  6918. 45c98: 84000c04 addi r16,r16,48
  6919. 45c9c: 004deb40 call 4deb4 <__subdf3>
  6920. 45ca0: ad400044 addi r21,r21,1
  6921. 45ca4: ac3fffc5 stb r16,-1(r21)
  6922. 45ca8: ac7fea1e bne r21,r17,45c54 <__alt_data_end+0xfffd3c54>
  6923. 45cac: 1023883a mov r17,r2
  6924. 45cb0: d8801217 ldw r2,72(sp)
  6925. 45cb4: dc800f17 ldw r18,60(sp)
  6926. 45cb8: 1829883a mov r20,r3
  6927. 45cbc: b8af883a add r23,r23,r2
  6928. 45cc0: d9001417 ldw r4,80(sp)
  6929. 45cc4: d9401517 ldw r5,84(sp)
  6930. 45cc8: 000d883a mov r6,zero
  6931. 45ccc: 01cff834 movhi r7,16352
  6932. 45cd0: 00413e40 call 413e4 <__adddf3>
  6933. 45cd4: 880d883a mov r6,r17
  6934. 45cd8: a00f883a mov r7,r20
  6935. 45cdc: 1009883a mov r4,r2
  6936. 45ce0: 180b883a mov r5,r3
  6937. 45ce4: 004d5540 call 4d554 <__ledf2>
  6938. 45ce8: 10003e0e bge r2,zero,45de4 <_dtoa_r+0x1548>
  6939. 45cec: d9001317 ldw r4,76(sp)
  6940. 45cf0: bd3fffc3 ldbu r20,-1(r23)
  6941. 45cf4: d9000515 stw r4,20(sp)
  6942. 45cf8: 003d3b06 br 451e8 <__alt_data_end+0xfffd31e8>
  6943. 45cfc: 0027883a mov r19,zero
  6944. 45d00: 003f1b06 br 45970 <__alt_data_end+0xfffd3970>
  6945. 45d04: d8800817 ldw r2,32(sp)
  6946. 45d08: 11e9c83a sub r20,r2,r7
  6947. 45d0c: 0005883a mov r2,zero
  6948. 45d10: 003d5406 br 45264 <__alt_data_end+0xfffd3264>
  6949. 45d14: 00800044 movi r2,1
  6950. 45d18: 003dc706 br 45438 <__alt_data_end+0xfffd3438>
  6951. 45d1c: d8c00217 ldw r3,8(sp)
  6952. 45d20: 00800d84 movi r2,54
  6953. 45d24: dd400a17 ldw r21,40(sp)
  6954. 45d28: 10c5c83a sub r2,r2,r3
  6955. 45d2c: dd000817 ldw r20,32(sp)
  6956. 45d30: 003d4c06 br 45264 <__alt_data_end+0xfffd3264>
  6957. 45d34: dc800f15 stw r18,60(sp)
  6958. 45d38: dcc01015 stw r19,64(sp)
  6959. 45d3c: 04000084 movi r16,2
  6960. 45d40: 003bed06 br 44cf8 <__alt_data_end+0xfffd2cf8>
  6961. 45d44: d9000617 ldw r4,24(sp)
  6962. 45d48: 203f0d26 beq r4,zero,45980 <__alt_data_end+0xfffd3980>
  6963. 45d4c: d9800c17 ldw r6,48(sp)
  6964. 45d50: 01bcab0e bge zero,r6,45000 <__alt_data_end+0xfffd3000>
  6965. 45d54: d9401017 ldw r5,64(sp)
  6966. 45d58: d9000f17 ldw r4,60(sp)
  6967. 45d5c: 000d883a mov r6,zero
  6968. 45d60: 01d00934 movhi r7,16420
  6969. 45d64: 004d6480 call 4d648 <__muldf3>
  6970. 45d68: 81000044 addi r4,r16,1
  6971. 45d6c: d8800f15 stw r2,60(sp)
  6972. 45d70: d8c01015 stw r3,64(sp)
  6973. 45d74: 0041d100 call 41d10 <__floatsidf>
  6974. 45d78: d9800f17 ldw r6,60(sp)
  6975. 45d7c: d9c01017 ldw r7,64(sp)
  6976. 45d80: 1009883a mov r4,r2
  6977. 45d84: 180b883a mov r5,r3
  6978. 45d88: 004d6480 call 4d648 <__muldf3>
  6979. 45d8c: 01d00734 movhi r7,16412
  6980. 45d90: 000d883a mov r6,zero
  6981. 45d94: 1009883a mov r4,r2
  6982. 45d98: 180b883a mov r5,r3
  6983. 45d9c: 00413e40 call 413e4 <__adddf3>
  6984. 45da0: d9c00517 ldw r7,20(sp)
  6985. 45da4: 047f3034 movhi r17,64704
  6986. 45da8: 1021883a mov r16,r2
  6987. 45dac: 39ffffc4 addi r7,r7,-1
  6988. 45db0: d9c01315 stw r7,76(sp)
  6989. 45db4: 1c63883a add r17,r3,r17
  6990. 45db8: db000c17 ldw r12,48(sp)
  6991. 45dbc: 003bea06 br 44d68 <__alt_data_end+0xfffd2d68>
  6992. 45dc0: dc000915 stw r16,36(sp)
  6993. 45dc4: 003e0e06 br 45600 <__alt_data_end+0xfffd3600>
  6994. 45dc8: 01000e44 movi r4,57
  6995. 45dcc: 8825883a mov r18,r17
  6996. 45dd0: 9dc00044 addi r23,r19,1
  6997. 45dd4: 99000005 stb r4,0(r19)
  6998. 45dd8: a023883a mov r17,r20
  6999. 45ddc: dc000915 stw r16,36(sp)
  7000. 45de0: 003da406 br 45474 <__alt_data_end+0xfffd3474>
  7001. 45de4: d9801417 ldw r6,80(sp)
  7002. 45de8: d9c01517 ldw r7,84(sp)
  7003. 45dec: 0009883a mov r4,zero
  7004. 45df0: 014ff834 movhi r5,16352
  7005. 45df4: 004deb40 call 4deb4 <__subdf3>
  7006. 45df8: 880d883a mov r6,r17
  7007. 45dfc: a00f883a mov r7,r20
  7008. 45e00: 1009883a mov r4,r2
  7009. 45e04: 180b883a mov r5,r3
  7010. 45e08: 004d4780 call 4d478 <__gedf2>
  7011. 45e0c: 00bc7c0e bge zero,r2,45000 <__alt_data_end+0xfffd3000>
  7012. 45e10: 01000c04 movi r4,48
  7013. 45e14: 00000106 br 45e1c <_dtoa_r+0x1580>
  7014. 45e18: 102f883a mov r23,r2
  7015. 45e1c: b8bfffc4 addi r2,r23,-1
  7016. 45e20: 10c00007 ldb r3,0(r2)
  7017. 45e24: 193ffc26 beq r3,r4,45e18 <__alt_data_end+0xfffd3e18>
  7018. 45e28: d9801317 ldw r6,76(sp)
  7019. 45e2c: d9800515 stw r6,20(sp)
  7020. 45e30: 003c4406 br 44f44 <__alt_data_end+0xfffd2f44>
  7021. 45e34: d9801317 ldw r6,76(sp)
  7022. 45e38: d9800515 stw r6,20(sp)
  7023. 45e3c: 003cea06 br 451e8 <__alt_data_end+0xfffd31e8>
  7024. 45e40: dd800f17 ldw r22,60(sp)
  7025. 45e44: dcc01017 ldw r19,64(sp)
  7026. 45e48: dc801217 ldw r18,72(sp)
  7027. 45e4c: 003c6c06 br 45000 <__alt_data_end+0xfffd3000>
  7028. 45e50: 903e031e bne r18,zero,45660 <__alt_data_end+0xfffd3660>
  7029. 45e54: 003ebb06 br 45944 <__alt_data_end+0xfffd3944>
  7030. 45e58: 103e6c1e bne r2,zero,4580c <__alt_data_end+0xfffd380c>
  7031. 45e5c: 4080004c andi r2,r8,1
  7032. 45e60: 103e6a26 beq r2,zero,4580c <__alt_data_end+0xfffd380c>
  7033. 45e64: 003e6606 br 45800 <__alt_data_end+0xfffd3800>
  7034. 45e68: d8c00317 ldw r3,12(sp)
  7035. 45e6c: 00800084 movi r2,2
  7036. 45e70: 10c02916 blt r2,r3,45f18 <_dtoa_r+0x167c>
  7037. 45e74: d9000c17 ldw r4,48(sp)
  7038. 45e78: 003e8806 br 4589c <__alt_data_end+0xfffd389c>
  7039. 45e7c: 04000084 movi r16,2
  7040. 45e80: 003b9d06 br 44cf8 <__alt_data_end+0xfffd2cf8>
  7041. 45e84: d9001317 ldw r4,76(sp)
  7042. 45e88: d9000515 stw r4,20(sp)
  7043. 45e8c: 003cd606 br 451e8 <__alt_data_end+0xfffd31e8>
  7044. 45e90: d8801317 ldw r2,76(sp)
  7045. 45e94: d8800515 stw r2,20(sp)
  7046. 45e98: 003c2a06 br 44f44 <__alt_data_end+0xfffd2f44>
  7047. 45e9c: d9800317 ldw r6,12(sp)
  7048. 45ea0: 00800084 movi r2,2
  7049. 45ea4: 11801516 blt r2,r6,45efc <_dtoa_r+0x1660>
  7050. 45ea8: d9c00c17 ldw r7,48(sp)
  7051. 45eac: d9c00615 stw r7,24(sp)
  7052. 45eb0: 003df706 br 45690 <__alt_data_end+0xfffd3690>
  7053. 45eb4: 193d3926 beq r3,r4,4539c <__alt_data_end+0xfffd339c>
  7054. 45eb8: 00c00f04 movi r3,60
  7055. 45ebc: 1885c83a sub r2,r3,r2
  7056. 45ec0: 003ddf06 br 45640 <__alt_data_end+0xfffd3640>
  7057. 45ec4: e009883a mov r4,fp
  7058. 45ec8: e0001115 stw zero,68(fp)
  7059. 45ecc: 000b883a mov r5,zero
  7060. 45ed0: 00479300 call 47930 <_Balloc>
  7061. 45ed4: d8800715 stw r2,28(sp)
  7062. 45ed8: d8c00717 ldw r3,28(sp)
  7063. 45edc: 00bfffc4 movi r2,-1
  7064. 45ee0: 01000044 movi r4,1
  7065. 45ee4: d8800c15 stw r2,48(sp)
  7066. 45ee8: e0c01015 stw r3,64(fp)
  7067. 45eec: d9000b15 stw r4,44(sp)
  7068. 45ef0: d8800615 stw r2,24(sp)
  7069. 45ef4: d8002215 stw zero,136(sp)
  7070. 45ef8: 003c4106 br 45000 <__alt_data_end+0xfffd3000>
  7071. 45efc: d8c00c17 ldw r3,48(sp)
  7072. 45f00: d8c00615 stw r3,24(sp)
  7073. 45f04: 003e7006 br 458c8 <__alt_data_end+0xfffd38c8>
  7074. 45f08: 04400044 movi r17,1
  7075. 45f0c: 003b2006 br 44b90 <__alt_data_end+0xfffd2b90>
  7076. 45f10: 000b883a mov r5,zero
  7077. 45f14: 003b3d06 br 44c0c <__alt_data_end+0xfffd2c0c>
  7078. 45f18: d8800c17 ldw r2,48(sp)
  7079. 45f1c: d8800615 stw r2,24(sp)
  7080. 45f20: 003e6906 br 458c8 <__alt_data_end+0xfffd38c8>
  7081. 00045f24 <__sflush_r>:
  7082. 45f24: 2880030b ldhu r2,12(r5)
  7083. 45f28: defffb04 addi sp,sp,-20
  7084. 45f2c: dcc00315 stw r19,12(sp)
  7085. 45f30: dc400115 stw r17,4(sp)
  7086. 45f34: dfc00415 stw ra,16(sp)
  7087. 45f38: dc800215 stw r18,8(sp)
  7088. 45f3c: dc000015 stw r16,0(sp)
  7089. 45f40: 10c0020c andi r3,r2,8
  7090. 45f44: 2823883a mov r17,r5
  7091. 45f48: 2027883a mov r19,r4
  7092. 45f4c: 1800311e bne r3,zero,46014 <__sflush_r+0xf0>
  7093. 45f50: 28c00117 ldw r3,4(r5)
  7094. 45f54: 10820014 ori r2,r2,2048
  7095. 45f58: 2880030d sth r2,12(r5)
  7096. 45f5c: 00c04b0e bge zero,r3,4608c <__sflush_r+0x168>
  7097. 45f60: 8a000a17 ldw r8,40(r17)
  7098. 45f64: 40002326 beq r8,zero,45ff4 <__sflush_r+0xd0>
  7099. 45f68: 9c000017 ldw r16,0(r19)
  7100. 45f6c: 10c4000c andi r3,r2,4096
  7101. 45f70: 98000015 stw zero,0(r19)
  7102. 45f74: 18004826 beq r3,zero,46098 <__sflush_r+0x174>
  7103. 45f78: 89801417 ldw r6,80(r17)
  7104. 45f7c: 10c0010c andi r3,r2,4
  7105. 45f80: 18000626 beq r3,zero,45f9c <__sflush_r+0x78>
  7106. 45f84: 88c00117 ldw r3,4(r17)
  7107. 45f88: 88800c17 ldw r2,48(r17)
  7108. 45f8c: 30cdc83a sub r6,r6,r3
  7109. 45f90: 10000226 beq r2,zero,45f9c <__sflush_r+0x78>
  7110. 45f94: 88800f17 ldw r2,60(r17)
  7111. 45f98: 308dc83a sub r6,r6,r2
  7112. 45f9c: 89400717 ldw r5,28(r17)
  7113. 45fa0: 000f883a mov r7,zero
  7114. 45fa4: 9809883a mov r4,r19
  7115. 45fa8: 403ee83a callr r8
  7116. 45fac: 00ffffc4 movi r3,-1
  7117. 45fb0: 10c04426 beq r2,r3,460c4 <__sflush_r+0x1a0>
  7118. 45fb4: 88c0030b ldhu r3,12(r17)
  7119. 45fb8: 89000417 ldw r4,16(r17)
  7120. 45fbc: 88000115 stw zero,4(r17)
  7121. 45fc0: 197dffcc andi r5,r3,63487
  7122. 45fc4: 8940030d sth r5,12(r17)
  7123. 45fc8: 89000015 stw r4,0(r17)
  7124. 45fcc: 18c4000c andi r3,r3,4096
  7125. 45fd0: 18002c1e bne r3,zero,46084 <__sflush_r+0x160>
  7126. 45fd4: 89400c17 ldw r5,48(r17)
  7127. 45fd8: 9c000015 stw r16,0(r19)
  7128. 45fdc: 28000526 beq r5,zero,45ff4 <__sflush_r+0xd0>
  7129. 45fe0: 88801004 addi r2,r17,64
  7130. 45fe4: 28800226 beq r5,r2,45ff0 <__sflush_r+0xcc>
  7131. 45fe8: 9809883a mov r4,r19
  7132. 45fec: 00466a00 call 466a0 <_free_r>
  7133. 45ff0: 88000c15 stw zero,48(r17)
  7134. 45ff4: 0005883a mov r2,zero
  7135. 45ff8: dfc00417 ldw ra,16(sp)
  7136. 45ffc: dcc00317 ldw r19,12(sp)
  7137. 46000: dc800217 ldw r18,8(sp)
  7138. 46004: dc400117 ldw r17,4(sp)
  7139. 46008: dc000017 ldw r16,0(sp)
  7140. 4600c: dec00504 addi sp,sp,20
  7141. 46010: f800283a ret
  7142. 46014: 2c800417 ldw r18,16(r5)
  7143. 46018: 903ff626 beq r18,zero,45ff4 <__alt_data_end+0xfffd3ff4>
  7144. 4601c: 2c000017 ldw r16,0(r5)
  7145. 46020: 108000cc andi r2,r2,3
  7146. 46024: 2c800015 stw r18,0(r5)
  7147. 46028: 84a1c83a sub r16,r16,r18
  7148. 4602c: 1000131e bne r2,zero,4607c <__sflush_r+0x158>
  7149. 46030: 28800517 ldw r2,20(r5)
  7150. 46034: 88800215 stw r2,8(r17)
  7151. 46038: 04000316 blt zero,r16,46048 <__sflush_r+0x124>
  7152. 4603c: 003fed06 br 45ff4 <__alt_data_end+0xfffd3ff4>
  7153. 46040: 90a5883a add r18,r18,r2
  7154. 46044: 043feb0e bge zero,r16,45ff4 <__alt_data_end+0xfffd3ff4>
  7155. 46048: 88800917 ldw r2,36(r17)
  7156. 4604c: 89400717 ldw r5,28(r17)
  7157. 46050: 800f883a mov r7,r16
  7158. 46054: 900d883a mov r6,r18
  7159. 46058: 9809883a mov r4,r19
  7160. 4605c: 103ee83a callr r2
  7161. 46060: 80a1c83a sub r16,r16,r2
  7162. 46064: 00bff616 blt zero,r2,46040 <__alt_data_end+0xfffd4040>
  7163. 46068: 88c0030b ldhu r3,12(r17)
  7164. 4606c: 00bfffc4 movi r2,-1
  7165. 46070: 18c01014 ori r3,r3,64
  7166. 46074: 88c0030d sth r3,12(r17)
  7167. 46078: 003fdf06 br 45ff8 <__alt_data_end+0xfffd3ff8>
  7168. 4607c: 0005883a mov r2,zero
  7169. 46080: 003fec06 br 46034 <__alt_data_end+0xfffd4034>
  7170. 46084: 88801415 stw r2,80(r17)
  7171. 46088: 003fd206 br 45fd4 <__alt_data_end+0xfffd3fd4>
  7172. 4608c: 28c00f17 ldw r3,60(r5)
  7173. 46090: 00ffb316 blt zero,r3,45f60 <__alt_data_end+0xfffd3f60>
  7174. 46094: 003fd706 br 45ff4 <__alt_data_end+0xfffd3ff4>
  7175. 46098: 89400717 ldw r5,28(r17)
  7176. 4609c: 000d883a mov r6,zero
  7177. 460a0: 01c00044 movi r7,1
  7178. 460a4: 9809883a mov r4,r19
  7179. 460a8: 403ee83a callr r8
  7180. 460ac: 100d883a mov r6,r2
  7181. 460b0: 00bfffc4 movi r2,-1
  7182. 460b4: 30801426 beq r6,r2,46108 <__sflush_r+0x1e4>
  7183. 460b8: 8880030b ldhu r2,12(r17)
  7184. 460bc: 8a000a17 ldw r8,40(r17)
  7185. 460c0: 003fae06 br 45f7c <__alt_data_end+0xfffd3f7c>
  7186. 460c4: 98c00017 ldw r3,0(r19)
  7187. 460c8: 183fba26 beq r3,zero,45fb4 <__alt_data_end+0xfffd3fb4>
  7188. 460cc: 01000744 movi r4,29
  7189. 460d0: 19000626 beq r3,r4,460ec <__sflush_r+0x1c8>
  7190. 460d4: 01000584 movi r4,22
  7191. 460d8: 19000426 beq r3,r4,460ec <__sflush_r+0x1c8>
  7192. 460dc: 88c0030b ldhu r3,12(r17)
  7193. 460e0: 18c01014 ori r3,r3,64
  7194. 460e4: 88c0030d sth r3,12(r17)
  7195. 460e8: 003fc306 br 45ff8 <__alt_data_end+0xfffd3ff8>
  7196. 460ec: 8880030b ldhu r2,12(r17)
  7197. 460f0: 88c00417 ldw r3,16(r17)
  7198. 460f4: 88000115 stw zero,4(r17)
  7199. 460f8: 10bdffcc andi r2,r2,63487
  7200. 460fc: 8880030d sth r2,12(r17)
  7201. 46100: 88c00015 stw r3,0(r17)
  7202. 46104: 003fb306 br 45fd4 <__alt_data_end+0xfffd3fd4>
  7203. 46108: 98800017 ldw r2,0(r19)
  7204. 4610c: 103fea26 beq r2,zero,460b8 <__alt_data_end+0xfffd40b8>
  7205. 46110: 00c00744 movi r3,29
  7206. 46114: 10c00226 beq r2,r3,46120 <__sflush_r+0x1fc>
  7207. 46118: 00c00584 movi r3,22
  7208. 4611c: 10c0031e bne r2,r3,4612c <__sflush_r+0x208>
  7209. 46120: 9c000015 stw r16,0(r19)
  7210. 46124: 0005883a mov r2,zero
  7211. 46128: 003fb306 br 45ff8 <__alt_data_end+0xfffd3ff8>
  7212. 4612c: 88c0030b ldhu r3,12(r17)
  7213. 46130: 3005883a mov r2,r6
  7214. 46134: 18c01014 ori r3,r3,64
  7215. 46138: 88c0030d sth r3,12(r17)
  7216. 4613c: 003fae06 br 45ff8 <__alt_data_end+0xfffd3ff8>
  7217. 00046140 <_fflush_r>:
  7218. 46140: defffd04 addi sp,sp,-12
  7219. 46144: dc000115 stw r16,4(sp)
  7220. 46148: dfc00215 stw ra,8(sp)
  7221. 4614c: 2021883a mov r16,r4
  7222. 46150: 20000226 beq r4,zero,4615c <_fflush_r+0x1c>
  7223. 46154: 20800e17 ldw r2,56(r4)
  7224. 46158: 10000c26 beq r2,zero,4618c <_fflush_r+0x4c>
  7225. 4615c: 2880030f ldh r2,12(r5)
  7226. 46160: 1000051e bne r2,zero,46178 <_fflush_r+0x38>
  7227. 46164: 0005883a mov r2,zero
  7228. 46168: dfc00217 ldw ra,8(sp)
  7229. 4616c: dc000117 ldw r16,4(sp)
  7230. 46170: dec00304 addi sp,sp,12
  7231. 46174: f800283a ret
  7232. 46178: 8009883a mov r4,r16
  7233. 4617c: dfc00217 ldw ra,8(sp)
  7234. 46180: dc000117 ldw r16,4(sp)
  7235. 46184: dec00304 addi sp,sp,12
  7236. 46188: 0045f241 jmpi 45f24 <__sflush_r>
  7237. 4618c: d9400015 stw r5,0(sp)
  7238. 46190: 004652c0 call 4652c <__sinit>
  7239. 46194: d9400017 ldw r5,0(sp)
  7240. 46198: 003ff006 br 4615c <__alt_data_end+0xfffd415c>
  7241. 0004619c <fflush>:
  7242. 4619c: 20000526 beq r4,zero,461b4 <fflush+0x18>
  7243. 461a0: 00800174 movhi r2,5
  7244. 461a4: 10908b04 addi r2,r2,16940
  7245. 461a8: 200b883a mov r5,r4
  7246. 461ac: 11000017 ldw r4,0(r2)
  7247. 461b0: 00461401 jmpi 46140 <_fflush_r>
  7248. 461b4: 00800174 movhi r2,5
  7249. 461b8: 10908a04 addi r2,r2,16936
  7250. 461bc: 11000017 ldw r4,0(r2)
  7251. 461c0: 01400134 movhi r5,4
  7252. 461c4: 29585004 addi r5,r5,24896
  7253. 461c8: 0046a741 jmpi 46a74 <_fwalk_reent>
  7254. 000461cc <__fp_unlock>:
  7255. 461cc: 0005883a mov r2,zero
  7256. 461d0: f800283a ret
  7257. 000461d4 <_cleanup_r>:
  7258. 461d4: 01400174 movhi r5,5
  7259. 461d8: 296aa604 addi r5,r5,-21864
  7260. 461dc: 0046a741 jmpi 46a74 <_fwalk_reent>
  7261. 000461e0 <__sinit.part.1>:
  7262. 461e0: defff704 addi sp,sp,-36
  7263. 461e4: 00c00134 movhi r3,4
  7264. 461e8: dfc00815 stw ra,32(sp)
  7265. 461ec: ddc00715 stw r23,28(sp)
  7266. 461f0: dd800615 stw r22,24(sp)
  7267. 461f4: dd400515 stw r21,20(sp)
  7268. 461f8: dd000415 stw r20,16(sp)
  7269. 461fc: dcc00315 stw r19,12(sp)
  7270. 46200: dc800215 stw r18,8(sp)
  7271. 46204: dc400115 stw r17,4(sp)
  7272. 46208: dc000015 stw r16,0(sp)
  7273. 4620c: 18d87504 addi r3,r3,25044
  7274. 46210: 24000117 ldw r16,4(r4)
  7275. 46214: 20c00f15 stw r3,60(r4)
  7276. 46218: 2080bb04 addi r2,r4,748
  7277. 4621c: 00c000c4 movi r3,3
  7278. 46220: 20c0b915 stw r3,740(r4)
  7279. 46224: 2080ba15 stw r2,744(r4)
  7280. 46228: 2000b815 stw zero,736(r4)
  7281. 4622c: 05c00204 movi r23,8
  7282. 46230: 00800104 movi r2,4
  7283. 46234: 2025883a mov r18,r4
  7284. 46238: b80d883a mov r6,r23
  7285. 4623c: 81001704 addi r4,r16,92
  7286. 46240: 000b883a mov r5,zero
  7287. 46244: 80000015 stw zero,0(r16)
  7288. 46248: 80000115 stw zero,4(r16)
  7289. 4624c: 80000215 stw zero,8(r16)
  7290. 46250: 8080030d sth r2,12(r16)
  7291. 46254: 80001915 stw zero,100(r16)
  7292. 46258: 8000038d sth zero,14(r16)
  7293. 4625c: 80000415 stw zero,16(r16)
  7294. 46260: 80000515 stw zero,20(r16)
  7295. 46264: 80000615 stw zero,24(r16)
  7296. 46268: 00478080 call 47808 <memset>
  7297. 4626c: 05800174 movhi r22,5
  7298. 46270: 94400217 ldw r17,8(r18)
  7299. 46274: 05400174 movhi r21,5
  7300. 46278: 05000174 movhi r20,5
  7301. 4627c: 04c00174 movhi r19,5
  7302. 46280: b5a38204 addi r22,r22,-29176
  7303. 46284: ad639904 addi r21,r21,-29084
  7304. 46288: a523b804 addi r20,r20,-28960
  7305. 4628c: 9ce3cf04 addi r19,r19,-28868
  7306. 46290: 85800815 stw r22,32(r16)
  7307. 46294: 85400915 stw r21,36(r16)
  7308. 46298: 85000a15 stw r20,40(r16)
  7309. 4629c: 84c00b15 stw r19,44(r16)
  7310. 462a0: 84000715 stw r16,28(r16)
  7311. 462a4: 00800284 movi r2,10
  7312. 462a8: 8880030d sth r2,12(r17)
  7313. 462ac: 00800044 movi r2,1
  7314. 462b0: b80d883a mov r6,r23
  7315. 462b4: 89001704 addi r4,r17,92
  7316. 462b8: 000b883a mov r5,zero
  7317. 462bc: 88000015 stw zero,0(r17)
  7318. 462c0: 88000115 stw zero,4(r17)
  7319. 462c4: 88000215 stw zero,8(r17)
  7320. 462c8: 88001915 stw zero,100(r17)
  7321. 462cc: 8880038d sth r2,14(r17)
  7322. 462d0: 88000415 stw zero,16(r17)
  7323. 462d4: 88000515 stw zero,20(r17)
  7324. 462d8: 88000615 stw zero,24(r17)
  7325. 462dc: 00478080 call 47808 <memset>
  7326. 462e0: 94000317 ldw r16,12(r18)
  7327. 462e4: 00800484 movi r2,18
  7328. 462e8: 8c400715 stw r17,28(r17)
  7329. 462ec: 8d800815 stw r22,32(r17)
  7330. 462f0: 8d400915 stw r21,36(r17)
  7331. 462f4: 8d000a15 stw r20,40(r17)
  7332. 462f8: 8cc00b15 stw r19,44(r17)
  7333. 462fc: 8080030d sth r2,12(r16)
  7334. 46300: 00800084 movi r2,2
  7335. 46304: 80000015 stw zero,0(r16)
  7336. 46308: 80000115 stw zero,4(r16)
  7337. 4630c: 80000215 stw zero,8(r16)
  7338. 46310: 80001915 stw zero,100(r16)
  7339. 46314: 8080038d sth r2,14(r16)
  7340. 46318: 80000415 stw zero,16(r16)
  7341. 4631c: 80000515 stw zero,20(r16)
  7342. 46320: 80000615 stw zero,24(r16)
  7343. 46324: b80d883a mov r6,r23
  7344. 46328: 000b883a mov r5,zero
  7345. 4632c: 81001704 addi r4,r16,92
  7346. 46330: 00478080 call 47808 <memset>
  7347. 46334: 00800044 movi r2,1
  7348. 46338: 84000715 stw r16,28(r16)
  7349. 4633c: 85800815 stw r22,32(r16)
  7350. 46340: 85400915 stw r21,36(r16)
  7351. 46344: 85000a15 stw r20,40(r16)
  7352. 46348: 84c00b15 stw r19,44(r16)
  7353. 4634c: 90800e15 stw r2,56(r18)
  7354. 46350: dfc00817 ldw ra,32(sp)
  7355. 46354: ddc00717 ldw r23,28(sp)
  7356. 46358: dd800617 ldw r22,24(sp)
  7357. 4635c: dd400517 ldw r21,20(sp)
  7358. 46360: dd000417 ldw r20,16(sp)
  7359. 46364: dcc00317 ldw r19,12(sp)
  7360. 46368: dc800217 ldw r18,8(sp)
  7361. 4636c: dc400117 ldw r17,4(sp)
  7362. 46370: dc000017 ldw r16,0(sp)
  7363. 46374: dec00904 addi sp,sp,36
  7364. 46378: f800283a ret
  7365. 0004637c <__fp_lock>:
  7366. 4637c: 0005883a mov r2,zero
  7367. 46380: f800283a ret
  7368. 00046384 <__sfmoreglue>:
  7369. 46384: defffc04 addi sp,sp,-16
  7370. 46388: dc800215 stw r18,8(sp)
  7371. 4638c: 2825883a mov r18,r5
  7372. 46390: dc000015 stw r16,0(sp)
  7373. 46394: 01401a04 movi r5,104
  7374. 46398: 2021883a mov r16,r4
  7375. 4639c: 913fffc4 addi r4,r18,-1
  7376. 463a0: dfc00315 stw ra,12(sp)
  7377. 463a4: dc400115 stw r17,4(sp)
  7378. 463a8: 004c9f80 call 4c9f8 <__mulsi3>
  7379. 463ac: 8009883a mov r4,r16
  7380. 463b0: 11401d04 addi r5,r2,116
  7381. 463b4: 1023883a mov r17,r2
  7382. 463b8: 0046dd00 call 46dd0 <_malloc_r>
  7383. 463bc: 1021883a mov r16,r2
  7384. 463c0: 10000726 beq r2,zero,463e0 <__sfmoreglue+0x5c>
  7385. 463c4: 11000304 addi r4,r2,12
  7386. 463c8: 10000015 stw zero,0(r2)
  7387. 463cc: 14800115 stw r18,4(r2)
  7388. 463d0: 11000215 stw r4,8(r2)
  7389. 463d4: 89801a04 addi r6,r17,104
  7390. 463d8: 000b883a mov r5,zero
  7391. 463dc: 00478080 call 47808 <memset>
  7392. 463e0: 8005883a mov r2,r16
  7393. 463e4: dfc00317 ldw ra,12(sp)
  7394. 463e8: dc800217 ldw r18,8(sp)
  7395. 463ec: dc400117 ldw r17,4(sp)
  7396. 463f0: dc000017 ldw r16,0(sp)
  7397. 463f4: dec00404 addi sp,sp,16
  7398. 463f8: f800283a ret
  7399. 000463fc <__sfp>:
  7400. 463fc: defffb04 addi sp,sp,-20
  7401. 46400: dc000015 stw r16,0(sp)
  7402. 46404: 04000174 movhi r16,5
  7403. 46408: 84108a04 addi r16,r16,16936
  7404. 4640c: dcc00315 stw r19,12(sp)
  7405. 46410: 2027883a mov r19,r4
  7406. 46414: 81000017 ldw r4,0(r16)
  7407. 46418: dfc00415 stw ra,16(sp)
  7408. 4641c: dc800215 stw r18,8(sp)
  7409. 46420: 20800e17 ldw r2,56(r4)
  7410. 46424: dc400115 stw r17,4(sp)
  7411. 46428: 1000021e bne r2,zero,46434 <__sfp+0x38>
  7412. 4642c: 00461e00 call 461e0 <__sinit.part.1>
  7413. 46430: 81000017 ldw r4,0(r16)
  7414. 46434: 2480b804 addi r18,r4,736
  7415. 46438: 047fffc4 movi r17,-1
  7416. 4643c: 91000117 ldw r4,4(r18)
  7417. 46440: 94000217 ldw r16,8(r18)
  7418. 46444: 213fffc4 addi r4,r4,-1
  7419. 46448: 20000a16 blt r4,zero,46474 <__sfp+0x78>
  7420. 4644c: 8080030f ldh r2,12(r16)
  7421. 46450: 10000c26 beq r2,zero,46484 <__sfp+0x88>
  7422. 46454: 80c01d04 addi r3,r16,116
  7423. 46458: 00000206 br 46464 <__sfp+0x68>
  7424. 4645c: 18bfe60f ldh r2,-104(r3)
  7425. 46460: 10000826 beq r2,zero,46484 <__sfp+0x88>
  7426. 46464: 213fffc4 addi r4,r4,-1
  7427. 46468: 1c3ffd04 addi r16,r3,-12
  7428. 4646c: 18c01a04 addi r3,r3,104
  7429. 46470: 247ffa1e bne r4,r17,4645c <__alt_data_end+0xfffd445c>
  7430. 46474: 90800017 ldw r2,0(r18)
  7431. 46478: 10001d26 beq r2,zero,464f0 <__sfp+0xf4>
  7432. 4647c: 1025883a mov r18,r2
  7433. 46480: 003fee06 br 4643c <__alt_data_end+0xfffd443c>
  7434. 46484: 00bfffc4 movi r2,-1
  7435. 46488: 8080038d sth r2,14(r16)
  7436. 4648c: 00800044 movi r2,1
  7437. 46490: 8080030d sth r2,12(r16)
  7438. 46494: 80001915 stw zero,100(r16)
  7439. 46498: 80000015 stw zero,0(r16)
  7440. 4649c: 80000215 stw zero,8(r16)
  7441. 464a0: 80000115 stw zero,4(r16)
  7442. 464a4: 80000415 stw zero,16(r16)
  7443. 464a8: 80000515 stw zero,20(r16)
  7444. 464ac: 80000615 stw zero,24(r16)
  7445. 464b0: 01800204 movi r6,8
  7446. 464b4: 000b883a mov r5,zero
  7447. 464b8: 81001704 addi r4,r16,92
  7448. 464bc: 00478080 call 47808 <memset>
  7449. 464c0: 8005883a mov r2,r16
  7450. 464c4: 80000c15 stw zero,48(r16)
  7451. 464c8: 80000d15 stw zero,52(r16)
  7452. 464cc: 80001115 stw zero,68(r16)
  7453. 464d0: 80001215 stw zero,72(r16)
  7454. 464d4: dfc00417 ldw ra,16(sp)
  7455. 464d8: dcc00317 ldw r19,12(sp)
  7456. 464dc: dc800217 ldw r18,8(sp)
  7457. 464e0: dc400117 ldw r17,4(sp)
  7458. 464e4: dc000017 ldw r16,0(sp)
  7459. 464e8: dec00504 addi sp,sp,20
  7460. 464ec: f800283a ret
  7461. 464f0: 01400104 movi r5,4
  7462. 464f4: 9809883a mov r4,r19
  7463. 464f8: 00463840 call 46384 <__sfmoreglue>
  7464. 464fc: 90800015 stw r2,0(r18)
  7465. 46500: 103fde1e bne r2,zero,4647c <__alt_data_end+0xfffd447c>
  7466. 46504: 00800304 movi r2,12
  7467. 46508: 98800015 stw r2,0(r19)
  7468. 4650c: 0005883a mov r2,zero
  7469. 46510: 003ff006 br 464d4 <__alt_data_end+0xfffd44d4>
  7470. 00046514 <_cleanup>:
  7471. 46514: 00800174 movhi r2,5
  7472. 46518: 10908a04 addi r2,r2,16936
  7473. 4651c: 11000017 ldw r4,0(r2)
  7474. 46520: 01400174 movhi r5,5
  7475. 46524: 296aa604 addi r5,r5,-21864
  7476. 46528: 0046a741 jmpi 46a74 <_fwalk_reent>
  7477. 0004652c <__sinit>:
  7478. 4652c: 20800e17 ldw r2,56(r4)
  7479. 46530: 10000126 beq r2,zero,46538 <__sinit+0xc>
  7480. 46534: f800283a ret
  7481. 46538: 00461e01 jmpi 461e0 <__sinit.part.1>
  7482. 0004653c <__sfp_lock_acquire>:
  7483. 4653c: f800283a ret
  7484. 00046540 <__sfp_lock_release>:
  7485. 46540: f800283a ret
  7486. 00046544 <__sinit_lock_acquire>:
  7487. 46544: f800283a ret
  7488. 00046548 <__sinit_lock_release>:
  7489. 46548: f800283a ret
  7490. 0004654c <__fp_lock_all>:
  7491. 4654c: 00800174 movhi r2,5
  7492. 46550: 10908b04 addi r2,r2,16940
  7493. 46554: 11000017 ldw r4,0(r2)
  7494. 46558: 01400134 movhi r5,4
  7495. 4655c: 2958df04 addi r5,r5,25468
  7496. 46560: 00469b01 jmpi 469b0 <_fwalk>
  7497. 00046564 <__fp_unlock_all>:
  7498. 46564: 00800174 movhi r2,5
  7499. 46568: 10908b04 addi r2,r2,16940
  7500. 4656c: 11000017 ldw r4,0(r2)
  7501. 46570: 01400134 movhi r5,4
  7502. 46574: 29587304 addi r5,r5,25036
  7503. 46578: 00469b01 jmpi 469b0 <_fwalk>
  7504. 0004657c <_malloc_trim_r>:
  7505. 4657c: defffb04 addi sp,sp,-20
  7506. 46580: dcc00315 stw r19,12(sp)
  7507. 46584: 04c00174 movhi r19,5
  7508. 46588: dc800215 stw r18,8(sp)
  7509. 4658c: dc400115 stw r17,4(sp)
  7510. 46590: dc000015 stw r16,0(sp)
  7511. 46594: dfc00415 stw ra,16(sp)
  7512. 46598: 2821883a mov r16,r5
  7513. 4659c: 9ccabe04 addi r19,r19,11000
  7514. 465a0: 2025883a mov r18,r4
  7515. 465a4: 004edf40 call 4edf4 <__malloc_lock>
  7516. 465a8: 98800217 ldw r2,8(r19)
  7517. 465ac: 14400117 ldw r17,4(r2)
  7518. 465b0: 00bfff04 movi r2,-4
  7519. 465b4: 88a2703a and r17,r17,r2
  7520. 465b8: 8c21c83a sub r16,r17,r16
  7521. 465bc: 8403fbc4 addi r16,r16,4079
  7522. 465c0: 8020d33a srli r16,r16,12
  7523. 465c4: 0083ffc4 movi r2,4095
  7524. 465c8: 843fffc4 addi r16,r16,-1
  7525. 465cc: 8020933a slli r16,r16,12
  7526. 465d0: 1400060e bge r2,r16,465ec <_malloc_trim_r+0x70>
  7527. 465d4: 000b883a mov r5,zero
  7528. 465d8: 9009883a mov r4,r18
  7529. 465dc: 0048db40 call 48db4 <_sbrk_r>
  7530. 465e0: 98c00217 ldw r3,8(r19)
  7531. 465e4: 1c47883a add r3,r3,r17
  7532. 465e8: 10c00a26 beq r2,r3,46614 <_malloc_trim_r+0x98>
  7533. 465ec: 9009883a mov r4,r18
  7534. 465f0: 004ee180 call 4ee18 <__malloc_unlock>
  7535. 465f4: 0005883a mov r2,zero
  7536. 465f8: dfc00417 ldw ra,16(sp)
  7537. 465fc: dcc00317 ldw r19,12(sp)
  7538. 46600: dc800217 ldw r18,8(sp)
  7539. 46604: dc400117 ldw r17,4(sp)
  7540. 46608: dc000017 ldw r16,0(sp)
  7541. 4660c: dec00504 addi sp,sp,20
  7542. 46610: f800283a ret
  7543. 46614: 040bc83a sub r5,zero,r16
  7544. 46618: 9009883a mov r4,r18
  7545. 4661c: 0048db40 call 48db4 <_sbrk_r>
  7546. 46620: 00ffffc4 movi r3,-1
  7547. 46624: 10c00d26 beq r2,r3,4665c <_malloc_trim_r+0xe0>
  7548. 46628: 00c00174 movhi r3,5
  7549. 4662c: 18d7b304 addi r3,r3,24268
  7550. 46630: 18800017 ldw r2,0(r3)
  7551. 46634: 99000217 ldw r4,8(r19)
  7552. 46638: 8c23c83a sub r17,r17,r16
  7553. 4663c: 8c400054 ori r17,r17,1
  7554. 46640: 1421c83a sub r16,r2,r16
  7555. 46644: 24400115 stw r17,4(r4)
  7556. 46648: 9009883a mov r4,r18
  7557. 4664c: 1c000015 stw r16,0(r3)
  7558. 46650: 004ee180 call 4ee18 <__malloc_unlock>
  7559. 46654: 00800044 movi r2,1
  7560. 46658: 003fe706 br 465f8 <__alt_data_end+0xfffd45f8>
  7561. 4665c: 000b883a mov r5,zero
  7562. 46660: 9009883a mov r4,r18
  7563. 46664: 0048db40 call 48db4 <_sbrk_r>
  7564. 46668: 99000217 ldw r4,8(r19)
  7565. 4666c: 014003c4 movi r5,15
  7566. 46670: 1107c83a sub r3,r2,r4
  7567. 46674: 28ffdd0e bge r5,r3,465ec <__alt_data_end+0xfffd45ec>
  7568. 46678: 01400174 movhi r5,5
  7569. 4667c: 29508d04 addi r5,r5,16948
  7570. 46680: 29400017 ldw r5,0(r5)
  7571. 46684: 18c00054 ori r3,r3,1
  7572. 46688: 20c00115 stw r3,4(r4)
  7573. 4668c: 00c00174 movhi r3,5
  7574. 46690: 1145c83a sub r2,r2,r5
  7575. 46694: 18d7b304 addi r3,r3,24268
  7576. 46698: 18800015 stw r2,0(r3)
  7577. 4669c: 003fd306 br 465ec <__alt_data_end+0xfffd45ec>
  7578. 000466a0 <_free_r>:
  7579. 466a0: 28004126 beq r5,zero,467a8 <_free_r+0x108>
  7580. 466a4: defffd04 addi sp,sp,-12
  7581. 466a8: dc400115 stw r17,4(sp)
  7582. 466ac: dc000015 stw r16,0(sp)
  7583. 466b0: 2023883a mov r17,r4
  7584. 466b4: 2821883a mov r16,r5
  7585. 466b8: dfc00215 stw ra,8(sp)
  7586. 466bc: 004edf40 call 4edf4 <__malloc_lock>
  7587. 466c0: 81ffff17 ldw r7,-4(r16)
  7588. 466c4: 00bfff84 movi r2,-2
  7589. 466c8: 01000174 movhi r4,5
  7590. 466cc: 81bffe04 addi r6,r16,-8
  7591. 466d0: 3884703a and r2,r7,r2
  7592. 466d4: 210abe04 addi r4,r4,11000
  7593. 466d8: 308b883a add r5,r6,r2
  7594. 466dc: 2a400117 ldw r9,4(r5)
  7595. 466e0: 22000217 ldw r8,8(r4)
  7596. 466e4: 00ffff04 movi r3,-4
  7597. 466e8: 48c6703a and r3,r9,r3
  7598. 466ec: 2a005726 beq r5,r8,4684c <_free_r+0x1ac>
  7599. 466f0: 28c00115 stw r3,4(r5)
  7600. 466f4: 39c0004c andi r7,r7,1
  7601. 466f8: 3800091e bne r7,zero,46720 <_free_r+0x80>
  7602. 466fc: 823ffe17 ldw r8,-8(r16)
  7603. 46700: 22400204 addi r9,r4,8
  7604. 46704: 320dc83a sub r6,r6,r8
  7605. 46708: 31c00217 ldw r7,8(r6)
  7606. 4670c: 1205883a add r2,r2,r8
  7607. 46710: 3a406526 beq r7,r9,468a8 <_free_r+0x208>
  7608. 46714: 32000317 ldw r8,12(r6)
  7609. 46718: 3a000315 stw r8,12(r7)
  7610. 4671c: 41c00215 stw r7,8(r8)
  7611. 46720: 28cf883a add r7,r5,r3
  7612. 46724: 39c00117 ldw r7,4(r7)
  7613. 46728: 39c0004c andi r7,r7,1
  7614. 4672c: 38003a26 beq r7,zero,46818 <_free_r+0x178>
  7615. 46730: 10c00054 ori r3,r2,1
  7616. 46734: 30c00115 stw r3,4(r6)
  7617. 46738: 3087883a add r3,r6,r2
  7618. 4673c: 18800015 stw r2,0(r3)
  7619. 46740: 00c07fc4 movi r3,511
  7620. 46744: 18801936 bltu r3,r2,467ac <_free_r+0x10c>
  7621. 46748: 1004d0fa srli r2,r2,3
  7622. 4674c: 01c00044 movi r7,1
  7623. 46750: 21400117 ldw r5,4(r4)
  7624. 46754: 10c00044 addi r3,r2,1
  7625. 46758: 18c7883a add r3,r3,r3
  7626. 4675c: 1005d0ba srai r2,r2,2
  7627. 46760: 18c7883a add r3,r3,r3
  7628. 46764: 18c7883a add r3,r3,r3
  7629. 46768: 1907883a add r3,r3,r4
  7630. 4676c: 3884983a sll r2,r7,r2
  7631. 46770: 19c00017 ldw r7,0(r3)
  7632. 46774: 1a3ffe04 addi r8,r3,-8
  7633. 46778: 1144b03a or r2,r2,r5
  7634. 4677c: 32000315 stw r8,12(r6)
  7635. 46780: 31c00215 stw r7,8(r6)
  7636. 46784: 20800115 stw r2,4(r4)
  7637. 46788: 19800015 stw r6,0(r3)
  7638. 4678c: 39800315 stw r6,12(r7)
  7639. 46790: 8809883a mov r4,r17
  7640. 46794: dfc00217 ldw ra,8(sp)
  7641. 46798: dc400117 ldw r17,4(sp)
  7642. 4679c: dc000017 ldw r16,0(sp)
  7643. 467a0: dec00304 addi sp,sp,12
  7644. 467a4: 004ee181 jmpi 4ee18 <__malloc_unlock>
  7645. 467a8: f800283a ret
  7646. 467ac: 100ad27a srli r5,r2,9
  7647. 467b0: 00c00104 movi r3,4
  7648. 467b4: 19404a36 bltu r3,r5,468e0 <_free_r+0x240>
  7649. 467b8: 100ad1ba srli r5,r2,6
  7650. 467bc: 28c00e44 addi r3,r5,57
  7651. 467c0: 18c7883a add r3,r3,r3
  7652. 467c4: 29400e04 addi r5,r5,56
  7653. 467c8: 18c7883a add r3,r3,r3
  7654. 467cc: 18c7883a add r3,r3,r3
  7655. 467d0: 1909883a add r4,r3,r4
  7656. 467d4: 20c00017 ldw r3,0(r4)
  7657. 467d8: 01c00174 movhi r7,5
  7658. 467dc: 213ffe04 addi r4,r4,-8
  7659. 467e0: 39cabe04 addi r7,r7,11000
  7660. 467e4: 20c04426 beq r4,r3,468f8 <_free_r+0x258>
  7661. 467e8: 01ffff04 movi r7,-4
  7662. 467ec: 19400117 ldw r5,4(r3)
  7663. 467f0: 29ca703a and r5,r5,r7
  7664. 467f4: 1140022e bgeu r2,r5,46800 <_free_r+0x160>
  7665. 467f8: 18c00217 ldw r3,8(r3)
  7666. 467fc: 20fffb1e bne r4,r3,467ec <__alt_data_end+0xfffd47ec>
  7667. 46800: 19000317 ldw r4,12(r3)
  7668. 46804: 31000315 stw r4,12(r6)
  7669. 46808: 30c00215 stw r3,8(r6)
  7670. 4680c: 21800215 stw r6,8(r4)
  7671. 46810: 19800315 stw r6,12(r3)
  7672. 46814: 003fde06 br 46790 <__alt_data_end+0xfffd4790>
  7673. 46818: 29c00217 ldw r7,8(r5)
  7674. 4681c: 10c5883a add r2,r2,r3
  7675. 46820: 00c00174 movhi r3,5
  7676. 46824: 18cac004 addi r3,r3,11008
  7677. 46828: 38c03b26 beq r7,r3,46918 <_free_r+0x278>
  7678. 4682c: 2a000317 ldw r8,12(r5)
  7679. 46830: 11400054 ori r5,r2,1
  7680. 46834: 3087883a add r3,r6,r2
  7681. 46838: 3a000315 stw r8,12(r7)
  7682. 4683c: 41c00215 stw r7,8(r8)
  7683. 46840: 31400115 stw r5,4(r6)
  7684. 46844: 18800015 stw r2,0(r3)
  7685. 46848: 003fbd06 br 46740 <__alt_data_end+0xfffd4740>
  7686. 4684c: 39c0004c andi r7,r7,1
  7687. 46850: 10c5883a add r2,r2,r3
  7688. 46854: 3800071e bne r7,zero,46874 <_free_r+0x1d4>
  7689. 46858: 81fffe17 ldw r7,-8(r16)
  7690. 4685c: 31cdc83a sub r6,r6,r7
  7691. 46860: 30c00317 ldw r3,12(r6)
  7692. 46864: 31400217 ldw r5,8(r6)
  7693. 46868: 11c5883a add r2,r2,r7
  7694. 4686c: 28c00315 stw r3,12(r5)
  7695. 46870: 19400215 stw r5,8(r3)
  7696. 46874: 10c00054 ori r3,r2,1
  7697. 46878: 30c00115 stw r3,4(r6)
  7698. 4687c: 00c00174 movhi r3,5
  7699. 46880: 18d08e04 addi r3,r3,16952
  7700. 46884: 18c00017 ldw r3,0(r3)
  7701. 46888: 21800215 stw r6,8(r4)
  7702. 4688c: 10ffc036 bltu r2,r3,46790 <__alt_data_end+0xfffd4790>
  7703. 46890: 00800174 movhi r2,5
  7704. 46894: 1097aa04 addi r2,r2,24232
  7705. 46898: 11400017 ldw r5,0(r2)
  7706. 4689c: 8809883a mov r4,r17
  7707. 468a0: 004657c0 call 4657c <_malloc_trim_r>
  7708. 468a4: 003fba06 br 46790 <__alt_data_end+0xfffd4790>
  7709. 468a8: 28c9883a add r4,r5,r3
  7710. 468ac: 21000117 ldw r4,4(r4)
  7711. 468b0: 2100004c andi r4,r4,1
  7712. 468b4: 2000391e bne r4,zero,4699c <_free_r+0x2fc>
  7713. 468b8: 29c00217 ldw r7,8(r5)
  7714. 468bc: 29000317 ldw r4,12(r5)
  7715. 468c0: 1885883a add r2,r3,r2
  7716. 468c4: 10c00054 ori r3,r2,1
  7717. 468c8: 39000315 stw r4,12(r7)
  7718. 468cc: 21c00215 stw r7,8(r4)
  7719. 468d0: 30c00115 stw r3,4(r6)
  7720. 468d4: 308d883a add r6,r6,r2
  7721. 468d8: 30800015 stw r2,0(r6)
  7722. 468dc: 003fac06 br 46790 <__alt_data_end+0xfffd4790>
  7723. 468e0: 00c00504 movi r3,20
  7724. 468e4: 19401536 bltu r3,r5,4693c <_free_r+0x29c>
  7725. 468e8: 28c01704 addi r3,r5,92
  7726. 468ec: 18c7883a add r3,r3,r3
  7727. 468f0: 294016c4 addi r5,r5,91
  7728. 468f4: 003fb406 br 467c8 <__alt_data_end+0xfffd47c8>
  7729. 468f8: 280bd0ba srai r5,r5,2
  7730. 468fc: 00c00044 movi r3,1
  7731. 46900: 38800117 ldw r2,4(r7)
  7732. 46904: 194a983a sll r5,r3,r5
  7733. 46908: 2007883a mov r3,r4
  7734. 4690c: 2884b03a or r2,r5,r2
  7735. 46910: 38800115 stw r2,4(r7)
  7736. 46914: 003fbb06 br 46804 <__alt_data_end+0xfffd4804>
  7737. 46918: 21800515 stw r6,20(r4)
  7738. 4691c: 21800415 stw r6,16(r4)
  7739. 46920: 10c00054 ori r3,r2,1
  7740. 46924: 31c00315 stw r7,12(r6)
  7741. 46928: 31c00215 stw r7,8(r6)
  7742. 4692c: 30c00115 stw r3,4(r6)
  7743. 46930: 308d883a add r6,r6,r2
  7744. 46934: 30800015 stw r2,0(r6)
  7745. 46938: 003f9506 br 46790 <__alt_data_end+0xfffd4790>
  7746. 4693c: 00c01504 movi r3,84
  7747. 46940: 19400536 bltu r3,r5,46958 <_free_r+0x2b8>
  7748. 46944: 100ad33a srli r5,r2,12
  7749. 46948: 28c01bc4 addi r3,r5,111
  7750. 4694c: 18c7883a add r3,r3,r3
  7751. 46950: 29401b84 addi r5,r5,110
  7752. 46954: 003f9c06 br 467c8 <__alt_data_end+0xfffd47c8>
  7753. 46958: 00c05504 movi r3,340
  7754. 4695c: 19400536 bltu r3,r5,46974 <_free_r+0x2d4>
  7755. 46960: 100ad3fa srli r5,r2,15
  7756. 46964: 28c01e04 addi r3,r5,120
  7757. 46968: 18c7883a add r3,r3,r3
  7758. 4696c: 29401dc4 addi r5,r5,119
  7759. 46970: 003f9506 br 467c8 <__alt_data_end+0xfffd47c8>
  7760. 46974: 00c15504 movi r3,1364
  7761. 46978: 19400536 bltu r3,r5,46990 <_free_r+0x2f0>
  7762. 4697c: 100ad4ba srli r5,r2,18
  7763. 46980: 28c01f44 addi r3,r5,125
  7764. 46984: 18c7883a add r3,r3,r3
  7765. 46988: 29401f04 addi r5,r5,124
  7766. 4698c: 003f8e06 br 467c8 <__alt_data_end+0xfffd47c8>
  7767. 46990: 00c03f84 movi r3,254
  7768. 46994: 01401f84 movi r5,126
  7769. 46998: 003f8b06 br 467c8 <__alt_data_end+0xfffd47c8>
  7770. 4699c: 10c00054 ori r3,r2,1
  7771. 469a0: 30c00115 stw r3,4(r6)
  7772. 469a4: 308d883a add r6,r6,r2
  7773. 469a8: 30800015 stw r2,0(r6)
  7774. 469ac: 003f7806 br 46790 <__alt_data_end+0xfffd4790>
  7775. 000469b0 <_fwalk>:
  7776. 469b0: defff704 addi sp,sp,-36
  7777. 469b4: dd000415 stw r20,16(sp)
  7778. 469b8: dfc00815 stw ra,32(sp)
  7779. 469bc: ddc00715 stw r23,28(sp)
  7780. 469c0: dd800615 stw r22,24(sp)
  7781. 469c4: dd400515 stw r21,20(sp)
  7782. 469c8: dcc00315 stw r19,12(sp)
  7783. 469cc: dc800215 stw r18,8(sp)
  7784. 469d0: dc400115 stw r17,4(sp)
  7785. 469d4: dc000015 stw r16,0(sp)
  7786. 469d8: 2500b804 addi r20,r4,736
  7787. 469dc: a0002326 beq r20,zero,46a6c <_fwalk+0xbc>
  7788. 469e0: 282b883a mov r21,r5
  7789. 469e4: 002f883a mov r23,zero
  7790. 469e8: 05800044 movi r22,1
  7791. 469ec: 04ffffc4 movi r19,-1
  7792. 469f0: a4400117 ldw r17,4(r20)
  7793. 469f4: a4800217 ldw r18,8(r20)
  7794. 469f8: 8c7fffc4 addi r17,r17,-1
  7795. 469fc: 88000d16 blt r17,zero,46a34 <_fwalk+0x84>
  7796. 46a00: 94000304 addi r16,r18,12
  7797. 46a04: 94800384 addi r18,r18,14
  7798. 46a08: 8080000b ldhu r2,0(r16)
  7799. 46a0c: 8c7fffc4 addi r17,r17,-1
  7800. 46a10: 813ffd04 addi r4,r16,-12
  7801. 46a14: b080042e bgeu r22,r2,46a28 <_fwalk+0x78>
  7802. 46a18: 9080000f ldh r2,0(r18)
  7803. 46a1c: 14c00226 beq r2,r19,46a28 <_fwalk+0x78>
  7804. 46a20: a83ee83a callr r21
  7805. 46a24: b8aeb03a or r23,r23,r2
  7806. 46a28: 84001a04 addi r16,r16,104
  7807. 46a2c: 94801a04 addi r18,r18,104
  7808. 46a30: 8cfff51e bne r17,r19,46a08 <__alt_data_end+0xfffd4a08>
  7809. 46a34: a5000017 ldw r20,0(r20)
  7810. 46a38: a03fed1e bne r20,zero,469f0 <__alt_data_end+0xfffd49f0>
  7811. 46a3c: b805883a mov r2,r23
  7812. 46a40: dfc00817 ldw ra,32(sp)
  7813. 46a44: ddc00717 ldw r23,28(sp)
  7814. 46a48: dd800617 ldw r22,24(sp)
  7815. 46a4c: dd400517 ldw r21,20(sp)
  7816. 46a50: dd000417 ldw r20,16(sp)
  7817. 46a54: dcc00317 ldw r19,12(sp)
  7818. 46a58: dc800217 ldw r18,8(sp)
  7819. 46a5c: dc400117 ldw r17,4(sp)
  7820. 46a60: dc000017 ldw r16,0(sp)
  7821. 46a64: dec00904 addi sp,sp,36
  7822. 46a68: f800283a ret
  7823. 46a6c: 002f883a mov r23,zero
  7824. 46a70: 003ff206 br 46a3c <__alt_data_end+0xfffd4a3c>
  7825. 00046a74 <_fwalk_reent>:
  7826. 46a74: defff704 addi sp,sp,-36
  7827. 46a78: dd000415 stw r20,16(sp)
  7828. 46a7c: dfc00815 stw ra,32(sp)
  7829. 46a80: ddc00715 stw r23,28(sp)
  7830. 46a84: dd800615 stw r22,24(sp)
  7831. 46a88: dd400515 stw r21,20(sp)
  7832. 46a8c: dcc00315 stw r19,12(sp)
  7833. 46a90: dc800215 stw r18,8(sp)
  7834. 46a94: dc400115 stw r17,4(sp)
  7835. 46a98: dc000015 stw r16,0(sp)
  7836. 46a9c: 2500b804 addi r20,r4,736
  7837. 46aa0: a0002326 beq r20,zero,46b30 <_fwalk_reent+0xbc>
  7838. 46aa4: 282b883a mov r21,r5
  7839. 46aa8: 2027883a mov r19,r4
  7840. 46aac: 002f883a mov r23,zero
  7841. 46ab0: 05800044 movi r22,1
  7842. 46ab4: 04bfffc4 movi r18,-1
  7843. 46ab8: a4400117 ldw r17,4(r20)
  7844. 46abc: a4000217 ldw r16,8(r20)
  7845. 46ac0: 8c7fffc4 addi r17,r17,-1
  7846. 46ac4: 88000c16 blt r17,zero,46af8 <_fwalk_reent+0x84>
  7847. 46ac8: 84000304 addi r16,r16,12
  7848. 46acc: 8080000b ldhu r2,0(r16)
  7849. 46ad0: 8c7fffc4 addi r17,r17,-1
  7850. 46ad4: 817ffd04 addi r5,r16,-12
  7851. 46ad8: b080052e bgeu r22,r2,46af0 <_fwalk_reent+0x7c>
  7852. 46adc: 8080008f ldh r2,2(r16)
  7853. 46ae0: 9809883a mov r4,r19
  7854. 46ae4: 14800226 beq r2,r18,46af0 <_fwalk_reent+0x7c>
  7855. 46ae8: a83ee83a callr r21
  7856. 46aec: b8aeb03a or r23,r23,r2
  7857. 46af0: 84001a04 addi r16,r16,104
  7858. 46af4: 8cbff51e bne r17,r18,46acc <__alt_data_end+0xfffd4acc>
  7859. 46af8: a5000017 ldw r20,0(r20)
  7860. 46afc: a03fee1e bne r20,zero,46ab8 <__alt_data_end+0xfffd4ab8>
  7861. 46b00: b805883a mov r2,r23
  7862. 46b04: dfc00817 ldw ra,32(sp)
  7863. 46b08: ddc00717 ldw r23,28(sp)
  7864. 46b0c: dd800617 ldw r22,24(sp)
  7865. 46b10: dd400517 ldw r21,20(sp)
  7866. 46b14: dd000417 ldw r20,16(sp)
  7867. 46b18: dcc00317 ldw r19,12(sp)
  7868. 46b1c: dc800217 ldw r18,8(sp)
  7869. 46b20: dc400117 ldw r17,4(sp)
  7870. 46b24: dc000017 ldw r16,0(sp)
  7871. 46b28: dec00904 addi sp,sp,36
  7872. 46b2c: f800283a ret
  7873. 46b30: 002f883a mov r23,zero
  7874. 46b34: 003ff206 br 46b00 <__alt_data_end+0xfffd4b00>
  7875. 00046b38 <_setlocale_r>:
  7876. 46b38: 30001b26 beq r6,zero,46ba8 <_setlocale_r+0x70>
  7877. 46b3c: 01400174 movhi r5,5
  7878. 46b40: defffe04 addi sp,sp,-8
  7879. 46b44: 29489404 addi r5,r5,8784
  7880. 46b48: 3009883a mov r4,r6
  7881. 46b4c: dc000015 stw r16,0(sp)
  7882. 46b50: dfc00115 stw ra,4(sp)
  7883. 46b54: 3021883a mov r16,r6
  7884. 46b58: 0048f440 call 48f44 <strcmp>
  7885. 46b5c: 1000061e bne r2,zero,46b78 <_setlocale_r+0x40>
  7886. 46b60: 00800174 movhi r2,5
  7887. 46b64: 10887604 addi r2,r2,8664
  7888. 46b68: dfc00117 ldw ra,4(sp)
  7889. 46b6c: dc000017 ldw r16,0(sp)
  7890. 46b70: dec00204 addi sp,sp,8
  7891. 46b74: f800283a ret
  7892. 46b78: 01400174 movhi r5,5
  7893. 46b7c: 29487604 addi r5,r5,8664
  7894. 46b80: 8009883a mov r4,r16
  7895. 46b84: 0048f440 call 48f44 <strcmp>
  7896. 46b88: 103ff526 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60>
  7897. 46b8c: 01400174 movhi r5,5
  7898. 46b90: 29487f04 addi r5,r5,8700
  7899. 46b94: 8009883a mov r4,r16
  7900. 46b98: 0048f440 call 48f44 <strcmp>
  7901. 46b9c: 103ff026 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60>
  7902. 46ba0: 0005883a mov r2,zero
  7903. 46ba4: 003ff006 br 46b68 <__alt_data_end+0xfffd4b68>
  7904. 46ba8: 00800174 movhi r2,5
  7905. 46bac: 10887604 addi r2,r2,8664
  7906. 46bb0: f800283a ret
  7907. 00046bb4 <__locale_charset>:
  7908. 46bb4: 00800174 movhi r2,5
  7909. 46bb8: 108aa804 addi r2,r2,10912
  7910. 46bbc: f800283a ret
  7911. 00046bc0 <__locale_mb_cur_max>:
  7912. 46bc0: 00800174 movhi r2,5
  7913. 46bc4: 10908c04 addi r2,r2,16944
  7914. 46bc8: 10800017 ldw r2,0(r2)
  7915. 46bcc: f800283a ret
  7916. 00046bd0 <__locale_msgcharset>:
  7917. 46bd0: 00800174 movhi r2,5
  7918. 46bd4: 108aa004 addi r2,r2,10880
  7919. 46bd8: f800283a ret
  7920. 00046bdc <__locale_cjk_lang>:
  7921. 46bdc: 0005883a mov r2,zero
  7922. 46be0: f800283a ret
  7923. 00046be4 <_localeconv_r>:
  7924. 46be4: 00800174 movhi r2,5
  7925. 46be8: 108ab004 addi r2,r2,10944
  7926. 46bec: f800283a ret
  7927. 00046bf0 <setlocale>:
  7928. 46bf0: 00800174 movhi r2,5
  7929. 46bf4: 10908b04 addi r2,r2,16940
  7930. 46bf8: 280d883a mov r6,r5
  7931. 46bfc: 200b883a mov r5,r4
  7932. 46c00: 11000017 ldw r4,0(r2)
  7933. 46c04: 0046b381 jmpi 46b38 <_setlocale_r>
  7934. 00046c08 <localeconv>:
  7935. 46c08: 00800174 movhi r2,5
  7936. 46c0c: 108ab004 addi r2,r2,10944
  7937. 46c10: f800283a ret
  7938. 00046c14 <__smakebuf_r>:
  7939. 46c14: 2880030b ldhu r2,12(r5)
  7940. 46c18: 10c0008c andi r3,r2,2
  7941. 46c1c: 1800411e bne r3,zero,46d24 <__smakebuf_r+0x110>
  7942. 46c20: deffec04 addi sp,sp,-80
  7943. 46c24: dc000f15 stw r16,60(sp)
  7944. 46c28: 2821883a mov r16,r5
  7945. 46c2c: 2940038f ldh r5,14(r5)
  7946. 46c30: dc401015 stw r17,64(sp)
  7947. 46c34: dfc01315 stw ra,76(sp)
  7948. 46c38: dcc01215 stw r19,72(sp)
  7949. 46c3c: dc801115 stw r18,68(sp)
  7950. 46c40: 2023883a mov r17,r4
  7951. 46c44: 28001c16 blt r5,zero,46cb8 <__smakebuf_r+0xa4>
  7952. 46c48: d80d883a mov r6,sp
  7953. 46c4c: 004ada40 call 4ada4 <_fstat_r>
  7954. 46c50: 10001816 blt r2,zero,46cb4 <__smakebuf_r+0xa0>
  7955. 46c54: d8800117 ldw r2,4(sp)
  7956. 46c58: 00e00014 movui r3,32768
  7957. 46c5c: 10bc000c andi r2,r2,61440
  7958. 46c60: 14c80020 cmpeqi r19,r2,8192
  7959. 46c64: 10c03726 beq r2,r3,46d44 <__smakebuf_r+0x130>
  7960. 46c68: 80c0030b ldhu r3,12(r16)
  7961. 46c6c: 18c20014 ori r3,r3,2048
  7962. 46c70: 80c0030d sth r3,12(r16)
  7963. 46c74: 00c80004 movi r3,8192
  7964. 46c78: 10c0521e bne r2,r3,46dc4 <__smakebuf_r+0x1b0>
  7965. 46c7c: 8140038f ldh r5,14(r16)
  7966. 46c80: 8809883a mov r4,r17
  7967. 46c84: 004b2c80 call 4b2c8 <_isatty_r>
  7968. 46c88: 10004c26 beq r2,zero,46dbc <__smakebuf_r+0x1a8>
  7969. 46c8c: 8080030b ldhu r2,12(r16)
  7970. 46c90: 80c010c4 addi r3,r16,67
  7971. 46c94: 80c00015 stw r3,0(r16)
  7972. 46c98: 10800054 ori r2,r2,1
  7973. 46c9c: 8080030d sth r2,12(r16)
  7974. 46ca0: 00800044 movi r2,1
  7975. 46ca4: 80c00415 stw r3,16(r16)
  7976. 46ca8: 80800515 stw r2,20(r16)
  7977. 46cac: 04810004 movi r18,1024
  7978. 46cb0: 00000706 br 46cd0 <__smakebuf_r+0xbc>
  7979. 46cb4: 8080030b ldhu r2,12(r16)
  7980. 46cb8: 10c0200c andi r3,r2,128
  7981. 46cbc: 18001f1e bne r3,zero,46d3c <__smakebuf_r+0x128>
  7982. 46cc0: 04810004 movi r18,1024
  7983. 46cc4: 10820014 ori r2,r2,2048
  7984. 46cc8: 8080030d sth r2,12(r16)
  7985. 46ccc: 0027883a mov r19,zero
  7986. 46cd0: 900b883a mov r5,r18
  7987. 46cd4: 8809883a mov r4,r17
  7988. 46cd8: 0046dd00 call 46dd0 <_malloc_r>
  7989. 46cdc: 10002c26 beq r2,zero,46d90 <__smakebuf_r+0x17c>
  7990. 46ce0: 80c0030b ldhu r3,12(r16)
  7991. 46ce4: 01000134 movhi r4,4
  7992. 46ce8: 21187504 addi r4,r4,25044
  7993. 46cec: 89000f15 stw r4,60(r17)
  7994. 46cf0: 18c02014 ori r3,r3,128
  7995. 46cf4: 80c0030d sth r3,12(r16)
  7996. 46cf8: 80800015 stw r2,0(r16)
  7997. 46cfc: 80800415 stw r2,16(r16)
  7998. 46d00: 84800515 stw r18,20(r16)
  7999. 46d04: 98001a1e bne r19,zero,46d70 <__smakebuf_r+0x15c>
  8000. 46d08: dfc01317 ldw ra,76(sp)
  8001. 46d0c: dcc01217 ldw r19,72(sp)
  8002. 46d10: dc801117 ldw r18,68(sp)
  8003. 46d14: dc401017 ldw r17,64(sp)
  8004. 46d18: dc000f17 ldw r16,60(sp)
  8005. 46d1c: dec01404 addi sp,sp,80
  8006. 46d20: f800283a ret
  8007. 46d24: 288010c4 addi r2,r5,67
  8008. 46d28: 28800015 stw r2,0(r5)
  8009. 46d2c: 28800415 stw r2,16(r5)
  8010. 46d30: 00800044 movi r2,1
  8011. 46d34: 28800515 stw r2,20(r5)
  8012. 46d38: f800283a ret
  8013. 46d3c: 04801004 movi r18,64
  8014. 46d40: 003fe006 br 46cc4 <__alt_data_end+0xfffd4cc4>
  8015. 46d44: 81000a17 ldw r4,40(r16)
  8016. 46d48: 00c00174 movhi r3,5
  8017. 46d4c: 18e3b804 addi r3,r3,-28960
  8018. 46d50: 20ffc51e bne r4,r3,46c68 <__alt_data_end+0xfffd4c68>
  8019. 46d54: 8080030b ldhu r2,12(r16)
  8020. 46d58: 04810004 movi r18,1024
  8021. 46d5c: 84801315 stw r18,76(r16)
  8022. 46d60: 1484b03a or r2,r2,r18
  8023. 46d64: 8080030d sth r2,12(r16)
  8024. 46d68: 0027883a mov r19,zero
  8025. 46d6c: 003fd806 br 46cd0 <__alt_data_end+0xfffd4cd0>
  8026. 46d70: 8140038f ldh r5,14(r16)
  8027. 46d74: 8809883a mov r4,r17
  8028. 46d78: 004b2c80 call 4b2c8 <_isatty_r>
  8029. 46d7c: 103fe226 beq r2,zero,46d08 <__alt_data_end+0xfffd4d08>
  8030. 46d80: 8080030b ldhu r2,12(r16)
  8031. 46d84: 10800054 ori r2,r2,1
  8032. 46d88: 8080030d sth r2,12(r16)
  8033. 46d8c: 003fde06 br 46d08 <__alt_data_end+0xfffd4d08>
  8034. 46d90: 8080030b ldhu r2,12(r16)
  8035. 46d94: 10c0800c andi r3,r2,512
  8036. 46d98: 183fdb1e bne r3,zero,46d08 <__alt_data_end+0xfffd4d08>
  8037. 46d9c: 10800094 ori r2,r2,2
  8038. 46da0: 80c010c4 addi r3,r16,67
  8039. 46da4: 8080030d sth r2,12(r16)
  8040. 46da8: 00800044 movi r2,1
  8041. 46dac: 80c00015 stw r3,0(r16)
  8042. 46db0: 80c00415 stw r3,16(r16)
  8043. 46db4: 80800515 stw r2,20(r16)
  8044. 46db8: 003fd306 br 46d08 <__alt_data_end+0xfffd4d08>
  8045. 46dbc: 04810004 movi r18,1024
  8046. 46dc0: 003fc306 br 46cd0 <__alt_data_end+0xfffd4cd0>
  8047. 46dc4: 0027883a mov r19,zero
  8048. 46dc8: 04810004 movi r18,1024
  8049. 46dcc: 003fc006 br 46cd0 <__alt_data_end+0xfffd4cd0>
  8050. 00046dd0 <_malloc_r>:
  8051. 46dd0: defff504 addi sp,sp,-44
  8052. 46dd4: dc800315 stw r18,12(sp)
  8053. 46dd8: dfc00a15 stw ra,40(sp)
  8054. 46ddc: df000915 stw fp,36(sp)
  8055. 46de0: ddc00815 stw r23,32(sp)
  8056. 46de4: dd800715 stw r22,28(sp)
  8057. 46de8: dd400615 stw r21,24(sp)
  8058. 46dec: dd000515 stw r20,20(sp)
  8059. 46df0: dcc00415 stw r19,16(sp)
  8060. 46df4: dc400215 stw r17,8(sp)
  8061. 46df8: dc000115 stw r16,4(sp)
  8062. 46dfc: 288002c4 addi r2,r5,11
  8063. 46e00: 00c00584 movi r3,22
  8064. 46e04: 2025883a mov r18,r4
  8065. 46e08: 18807f2e bgeu r3,r2,47008 <_malloc_r+0x238>
  8066. 46e0c: 047ffe04 movi r17,-8
  8067. 46e10: 1462703a and r17,r2,r17
  8068. 46e14: 8800a316 blt r17,zero,470a4 <_malloc_r+0x2d4>
  8069. 46e18: 8940a236 bltu r17,r5,470a4 <_malloc_r+0x2d4>
  8070. 46e1c: 004edf40 call 4edf4 <__malloc_lock>
  8071. 46e20: 00807dc4 movi r2,503
  8072. 46e24: 1441e92e bgeu r2,r17,475cc <_malloc_r+0x7fc>
  8073. 46e28: 8804d27a srli r2,r17,9
  8074. 46e2c: 1000a126 beq r2,zero,470b4 <_malloc_r+0x2e4>
  8075. 46e30: 00c00104 movi r3,4
  8076. 46e34: 18811e36 bltu r3,r2,472b0 <_malloc_r+0x4e0>
  8077. 46e38: 8804d1ba srli r2,r17,6
  8078. 46e3c: 12000e44 addi r8,r2,57
  8079. 46e40: 11c00e04 addi r7,r2,56
  8080. 46e44: 4209883a add r4,r8,r8
  8081. 46e48: 04c00174 movhi r19,5
  8082. 46e4c: 2109883a add r4,r4,r4
  8083. 46e50: 9ccabe04 addi r19,r19,11000
  8084. 46e54: 2109883a add r4,r4,r4
  8085. 46e58: 9909883a add r4,r19,r4
  8086. 46e5c: 24000117 ldw r16,4(r4)
  8087. 46e60: 213ffe04 addi r4,r4,-8
  8088. 46e64: 24009726 beq r4,r16,470c4 <_malloc_r+0x2f4>
  8089. 46e68: 80800117 ldw r2,4(r16)
  8090. 46e6c: 01bfff04 movi r6,-4
  8091. 46e70: 014003c4 movi r5,15
  8092. 46e74: 1184703a and r2,r2,r6
  8093. 46e78: 1447c83a sub r3,r2,r17
  8094. 46e7c: 28c00716 blt r5,r3,46e9c <_malloc_r+0xcc>
  8095. 46e80: 1800920e bge r3,zero,470cc <_malloc_r+0x2fc>
  8096. 46e84: 84000317 ldw r16,12(r16)
  8097. 46e88: 24008e26 beq r4,r16,470c4 <_malloc_r+0x2f4>
  8098. 46e8c: 80800117 ldw r2,4(r16)
  8099. 46e90: 1184703a and r2,r2,r6
  8100. 46e94: 1447c83a sub r3,r2,r17
  8101. 46e98: 28fff90e bge r5,r3,46e80 <__alt_data_end+0xfffd4e80>
  8102. 46e9c: 3809883a mov r4,r7
  8103. 46ea0: 01800174 movhi r6,5
  8104. 46ea4: 9c000417 ldw r16,16(r19)
  8105. 46ea8: 318abe04 addi r6,r6,11000
  8106. 46eac: 32000204 addi r8,r6,8
  8107. 46eb0: 82013426 beq r16,r8,47384 <_malloc_r+0x5b4>
  8108. 46eb4: 80c00117 ldw r3,4(r16)
  8109. 46eb8: 00bfff04 movi r2,-4
  8110. 46ebc: 188e703a and r7,r3,r2
  8111. 46ec0: 3c45c83a sub r2,r7,r17
  8112. 46ec4: 00c003c4 movi r3,15
  8113. 46ec8: 18811f16 blt r3,r2,47348 <_malloc_r+0x578>
  8114. 46ecc: 32000515 stw r8,20(r6)
  8115. 46ed0: 32000415 stw r8,16(r6)
  8116. 46ed4: 10007f0e bge r2,zero,470d4 <_malloc_r+0x304>
  8117. 46ed8: 00807fc4 movi r2,511
  8118. 46edc: 11c0fd36 bltu r2,r7,472d4 <_malloc_r+0x504>
  8119. 46ee0: 3806d0fa srli r3,r7,3
  8120. 46ee4: 01c00044 movi r7,1
  8121. 46ee8: 30800117 ldw r2,4(r6)
  8122. 46eec: 19400044 addi r5,r3,1
  8123. 46ef0: 294b883a add r5,r5,r5
  8124. 46ef4: 1807d0ba srai r3,r3,2
  8125. 46ef8: 294b883a add r5,r5,r5
  8126. 46efc: 294b883a add r5,r5,r5
  8127. 46f00: 298b883a add r5,r5,r6
  8128. 46f04: 38c6983a sll r3,r7,r3
  8129. 46f08: 29c00017 ldw r7,0(r5)
  8130. 46f0c: 2a7ffe04 addi r9,r5,-8
  8131. 46f10: 1886b03a or r3,r3,r2
  8132. 46f14: 82400315 stw r9,12(r16)
  8133. 46f18: 81c00215 stw r7,8(r16)
  8134. 46f1c: 30c00115 stw r3,4(r6)
  8135. 46f20: 2c000015 stw r16,0(r5)
  8136. 46f24: 3c000315 stw r16,12(r7)
  8137. 46f28: 2005d0ba srai r2,r4,2
  8138. 46f2c: 01400044 movi r5,1
  8139. 46f30: 288a983a sll r5,r5,r2
  8140. 46f34: 19406f36 bltu r3,r5,470f4 <_malloc_r+0x324>
  8141. 46f38: 28c4703a and r2,r5,r3
  8142. 46f3c: 10000a1e bne r2,zero,46f68 <_malloc_r+0x198>
  8143. 46f40: 00bfff04 movi r2,-4
  8144. 46f44: 294b883a add r5,r5,r5
  8145. 46f48: 2088703a and r4,r4,r2
  8146. 46f4c: 28c4703a and r2,r5,r3
  8147. 46f50: 21000104 addi r4,r4,4
  8148. 46f54: 1000041e bne r2,zero,46f68 <_malloc_r+0x198>
  8149. 46f58: 294b883a add r5,r5,r5
  8150. 46f5c: 28c4703a and r2,r5,r3
  8151. 46f60: 21000104 addi r4,r4,4
  8152. 46f64: 103ffc26 beq r2,zero,46f58 <__alt_data_end+0xfffd4f58>
  8153. 46f68: 02bfff04 movi r10,-4
  8154. 46f6c: 024003c4 movi r9,15
  8155. 46f70: 21800044 addi r6,r4,1
  8156. 46f74: 318d883a add r6,r6,r6
  8157. 46f78: 318d883a add r6,r6,r6
  8158. 46f7c: 318d883a add r6,r6,r6
  8159. 46f80: 998d883a add r6,r19,r6
  8160. 46f84: 333ffe04 addi r12,r6,-8
  8161. 46f88: 2017883a mov r11,r4
  8162. 46f8c: 31800104 addi r6,r6,4
  8163. 46f90: 34000017 ldw r16,0(r6)
  8164. 46f94: 31fffd04 addi r7,r6,-12
  8165. 46f98: 81c0041e bne r16,r7,46fac <_malloc_r+0x1dc>
  8166. 46f9c: 0000fb06 br 4738c <_malloc_r+0x5bc>
  8167. 46fa0: 1801030e bge r3,zero,473b0 <_malloc_r+0x5e0>
  8168. 46fa4: 84000317 ldw r16,12(r16)
  8169. 46fa8: 81c0f826 beq r16,r7,4738c <_malloc_r+0x5bc>
  8170. 46fac: 80800117 ldw r2,4(r16)
  8171. 46fb0: 1284703a and r2,r2,r10
  8172. 46fb4: 1447c83a sub r3,r2,r17
  8173. 46fb8: 48fff90e bge r9,r3,46fa0 <__alt_data_end+0xfffd4fa0>
  8174. 46fbc: 80800317 ldw r2,12(r16)
  8175. 46fc0: 81000217 ldw r4,8(r16)
  8176. 46fc4: 89400054 ori r5,r17,1
  8177. 46fc8: 81400115 stw r5,4(r16)
  8178. 46fcc: 20800315 stw r2,12(r4)
  8179. 46fd0: 11000215 stw r4,8(r2)
  8180. 46fd4: 8463883a add r17,r16,r17
  8181. 46fd8: 9c400515 stw r17,20(r19)
  8182. 46fdc: 9c400415 stw r17,16(r19)
  8183. 46fe0: 18800054 ori r2,r3,1
  8184. 46fe4: 88800115 stw r2,4(r17)
  8185. 46fe8: 8a000315 stw r8,12(r17)
  8186. 46fec: 8a000215 stw r8,8(r17)
  8187. 46ff0: 88e3883a add r17,r17,r3
  8188. 46ff4: 88c00015 stw r3,0(r17)
  8189. 46ff8: 9009883a mov r4,r18
  8190. 46ffc: 004ee180 call 4ee18 <__malloc_unlock>
  8191. 47000: 80800204 addi r2,r16,8
  8192. 47004: 00001b06 br 47074 <_malloc_r+0x2a4>
  8193. 47008: 04400404 movi r17,16
  8194. 4700c: 89402536 bltu r17,r5,470a4 <_malloc_r+0x2d4>
  8195. 47010: 004edf40 call 4edf4 <__malloc_lock>
  8196. 47014: 00800184 movi r2,6
  8197. 47018: 01000084 movi r4,2
  8198. 4701c: 04c00174 movhi r19,5
  8199. 47020: 1085883a add r2,r2,r2
  8200. 47024: 9ccabe04 addi r19,r19,11000
  8201. 47028: 1085883a add r2,r2,r2
  8202. 4702c: 9885883a add r2,r19,r2
  8203. 47030: 14000117 ldw r16,4(r2)
  8204. 47034: 10fffe04 addi r3,r2,-8
  8205. 47038: 80c0d926 beq r16,r3,473a0 <_malloc_r+0x5d0>
  8206. 4703c: 80c00117 ldw r3,4(r16)
  8207. 47040: 81000317 ldw r4,12(r16)
  8208. 47044: 00bfff04 movi r2,-4
  8209. 47048: 1884703a and r2,r3,r2
  8210. 4704c: 81400217 ldw r5,8(r16)
  8211. 47050: 8085883a add r2,r16,r2
  8212. 47054: 10c00117 ldw r3,4(r2)
  8213. 47058: 29000315 stw r4,12(r5)
  8214. 4705c: 21400215 stw r5,8(r4)
  8215. 47060: 18c00054 ori r3,r3,1
  8216. 47064: 10c00115 stw r3,4(r2)
  8217. 47068: 9009883a mov r4,r18
  8218. 4706c: 004ee180 call 4ee18 <__malloc_unlock>
  8219. 47070: 80800204 addi r2,r16,8
  8220. 47074: dfc00a17 ldw ra,40(sp)
  8221. 47078: df000917 ldw fp,36(sp)
  8222. 4707c: ddc00817 ldw r23,32(sp)
  8223. 47080: dd800717 ldw r22,28(sp)
  8224. 47084: dd400617 ldw r21,24(sp)
  8225. 47088: dd000517 ldw r20,20(sp)
  8226. 4708c: dcc00417 ldw r19,16(sp)
  8227. 47090: dc800317 ldw r18,12(sp)
  8228. 47094: dc400217 ldw r17,8(sp)
  8229. 47098: dc000117 ldw r16,4(sp)
  8230. 4709c: dec00b04 addi sp,sp,44
  8231. 470a0: f800283a ret
  8232. 470a4: 00800304 movi r2,12
  8233. 470a8: 90800015 stw r2,0(r18)
  8234. 470ac: 0005883a mov r2,zero
  8235. 470b0: 003ff006 br 47074 <__alt_data_end+0xfffd5074>
  8236. 470b4: 01002004 movi r4,128
  8237. 470b8: 02001004 movi r8,64
  8238. 470bc: 01c00fc4 movi r7,63
  8239. 470c0: 003f6106 br 46e48 <__alt_data_end+0xfffd4e48>
  8240. 470c4: 4009883a mov r4,r8
  8241. 470c8: 003f7506 br 46ea0 <__alt_data_end+0xfffd4ea0>
  8242. 470cc: 81000317 ldw r4,12(r16)
  8243. 470d0: 003fde06 br 4704c <__alt_data_end+0xfffd504c>
  8244. 470d4: 81c5883a add r2,r16,r7
  8245. 470d8: 11400117 ldw r5,4(r2)
  8246. 470dc: 9009883a mov r4,r18
  8247. 470e0: 29400054 ori r5,r5,1
  8248. 470e4: 11400115 stw r5,4(r2)
  8249. 470e8: 004ee180 call 4ee18 <__malloc_unlock>
  8250. 470ec: 80800204 addi r2,r16,8
  8251. 470f0: 003fe006 br 47074 <__alt_data_end+0xfffd5074>
  8252. 470f4: 9c000217 ldw r16,8(r19)
  8253. 470f8: 00bfff04 movi r2,-4
  8254. 470fc: 85800117 ldw r22,4(r16)
  8255. 47100: b0ac703a and r22,r22,r2
  8256. 47104: b4400336 bltu r22,r17,47114 <_malloc_r+0x344>
  8257. 47108: b445c83a sub r2,r22,r17
  8258. 4710c: 00c003c4 movi r3,15
  8259. 47110: 18805d16 blt r3,r2,47288 <_malloc_r+0x4b8>
  8260. 47114: 05c00174 movhi r23,5
  8261. 47118: 00800174 movhi r2,5
  8262. 4711c: 1097aa04 addi r2,r2,24232
  8263. 47120: bdd08d04 addi r23,r23,16948
  8264. 47124: 15400017 ldw r21,0(r2)
  8265. 47128: b8c00017 ldw r3,0(r23)
  8266. 4712c: 00bfffc4 movi r2,-1
  8267. 47130: 858d883a add r6,r16,r22
  8268. 47134: 8d6b883a add r21,r17,r21
  8269. 47138: 1880ea26 beq r3,r2,474e4 <_malloc_r+0x714>
  8270. 4713c: ad4403c4 addi r21,r21,4111
  8271. 47140: 00bc0004 movi r2,-4096
  8272. 47144: a8aa703a and r21,r21,r2
  8273. 47148: a80b883a mov r5,r21
  8274. 4714c: 9009883a mov r4,r18
  8275. 47150: d9800015 stw r6,0(sp)
  8276. 47154: 0048db40 call 48db4 <_sbrk_r>
  8277. 47158: 1029883a mov r20,r2
  8278. 4715c: 00bfffc4 movi r2,-1
  8279. 47160: d9800017 ldw r6,0(sp)
  8280. 47164: a080e826 beq r20,r2,47508 <_malloc_r+0x738>
  8281. 47168: a180a636 bltu r20,r6,47404 <_malloc_r+0x634>
  8282. 4716c: 07000174 movhi fp,5
  8283. 47170: e717b304 addi fp,fp,24268
  8284. 47174: e0800017 ldw r2,0(fp)
  8285. 47178: a887883a add r3,r21,r2
  8286. 4717c: e0c00015 stw r3,0(fp)
  8287. 47180: 3500e626 beq r6,r20,4751c <_malloc_r+0x74c>
  8288. 47184: b9000017 ldw r4,0(r23)
  8289. 47188: 00bfffc4 movi r2,-1
  8290. 4718c: 2080ee26 beq r4,r2,47548 <_malloc_r+0x778>
  8291. 47190: a185c83a sub r2,r20,r6
  8292. 47194: 10c5883a add r2,r2,r3
  8293. 47198: e0800015 stw r2,0(fp)
  8294. 4719c: a0c001cc andi r3,r20,7
  8295. 471a0: 1800bc26 beq r3,zero,47494 <_malloc_r+0x6c4>
  8296. 471a4: a0e9c83a sub r20,r20,r3
  8297. 471a8: 00840204 movi r2,4104
  8298. 471ac: a5000204 addi r20,r20,8
  8299. 471b0: 10c7c83a sub r3,r2,r3
  8300. 471b4: a545883a add r2,r20,r21
  8301. 471b8: 1083ffcc andi r2,r2,4095
  8302. 471bc: 18abc83a sub r21,r3,r2
  8303. 471c0: a80b883a mov r5,r21
  8304. 471c4: 9009883a mov r4,r18
  8305. 471c8: 0048db40 call 48db4 <_sbrk_r>
  8306. 471cc: 00ffffc4 movi r3,-1
  8307. 471d0: 10c0e126 beq r2,r3,47558 <_malloc_r+0x788>
  8308. 471d4: 1505c83a sub r2,r2,r20
  8309. 471d8: 1545883a add r2,r2,r21
  8310. 471dc: 10800054 ori r2,r2,1
  8311. 471e0: e0c00017 ldw r3,0(fp)
  8312. 471e4: 9d000215 stw r20,8(r19)
  8313. 471e8: a0800115 stw r2,4(r20)
  8314. 471ec: a8c7883a add r3,r21,r3
  8315. 471f0: e0c00015 stw r3,0(fp)
  8316. 471f4: 84c00e26 beq r16,r19,47230 <_malloc_r+0x460>
  8317. 471f8: 018003c4 movi r6,15
  8318. 471fc: 3580a72e bgeu r6,r22,4749c <_malloc_r+0x6cc>
  8319. 47200: 81400117 ldw r5,4(r16)
  8320. 47204: 013ffe04 movi r4,-8
  8321. 47208: b0bffd04 addi r2,r22,-12
  8322. 4720c: 1104703a and r2,r2,r4
  8323. 47210: 2900004c andi r4,r5,1
  8324. 47214: 2088b03a or r4,r4,r2
  8325. 47218: 81000115 stw r4,4(r16)
  8326. 4721c: 01400144 movi r5,5
  8327. 47220: 8089883a add r4,r16,r2
  8328. 47224: 21400115 stw r5,4(r4)
  8329. 47228: 21400215 stw r5,8(r4)
  8330. 4722c: 3080cd36 bltu r6,r2,47564 <_malloc_r+0x794>
  8331. 47230: 00800174 movhi r2,5
  8332. 47234: 1097a904 addi r2,r2,24228
  8333. 47238: 11000017 ldw r4,0(r2)
  8334. 4723c: 20c0012e bgeu r4,r3,47244 <_malloc_r+0x474>
  8335. 47240: 10c00015 stw r3,0(r2)
  8336. 47244: 00800174 movhi r2,5
  8337. 47248: 1097a804 addi r2,r2,24224
  8338. 4724c: 11000017 ldw r4,0(r2)
  8339. 47250: 9c000217 ldw r16,8(r19)
  8340. 47254: 20c0012e bgeu r4,r3,4725c <_malloc_r+0x48c>
  8341. 47258: 10c00015 stw r3,0(r2)
  8342. 4725c: 80c00117 ldw r3,4(r16)
  8343. 47260: 00bfff04 movi r2,-4
  8344. 47264: 1886703a and r3,r3,r2
  8345. 47268: 1c45c83a sub r2,r3,r17
  8346. 4726c: 1c400236 bltu r3,r17,47278 <_malloc_r+0x4a8>
  8347. 47270: 00c003c4 movi r3,15
  8348. 47274: 18800416 blt r3,r2,47288 <_malloc_r+0x4b8>
  8349. 47278: 9009883a mov r4,r18
  8350. 4727c: 004ee180 call 4ee18 <__malloc_unlock>
  8351. 47280: 0005883a mov r2,zero
  8352. 47284: 003f7b06 br 47074 <__alt_data_end+0xfffd5074>
  8353. 47288: 88c00054 ori r3,r17,1
  8354. 4728c: 80c00115 stw r3,4(r16)
  8355. 47290: 8463883a add r17,r16,r17
  8356. 47294: 10800054 ori r2,r2,1
  8357. 47298: 9c400215 stw r17,8(r19)
  8358. 4729c: 88800115 stw r2,4(r17)
  8359. 472a0: 9009883a mov r4,r18
  8360. 472a4: 004ee180 call 4ee18 <__malloc_unlock>
  8361. 472a8: 80800204 addi r2,r16,8
  8362. 472ac: 003f7106 br 47074 <__alt_data_end+0xfffd5074>
  8363. 472b0: 00c00504 movi r3,20
  8364. 472b4: 18804a2e bgeu r3,r2,473e0 <_malloc_r+0x610>
  8365. 472b8: 00c01504 movi r3,84
  8366. 472bc: 18806e36 bltu r3,r2,47478 <_malloc_r+0x6a8>
  8367. 472c0: 8804d33a srli r2,r17,12
  8368. 472c4: 12001bc4 addi r8,r2,111
  8369. 472c8: 11c01b84 addi r7,r2,110
  8370. 472cc: 4209883a add r4,r8,r8
  8371. 472d0: 003edd06 br 46e48 <__alt_data_end+0xfffd4e48>
  8372. 472d4: 3804d27a srli r2,r7,9
  8373. 472d8: 00c00104 movi r3,4
  8374. 472dc: 1880442e bgeu r3,r2,473f0 <_malloc_r+0x620>
  8375. 472e0: 00c00504 movi r3,20
  8376. 472e4: 18808136 bltu r3,r2,474ec <_malloc_r+0x71c>
  8377. 472e8: 11401704 addi r5,r2,92
  8378. 472ec: 10c016c4 addi r3,r2,91
  8379. 472f0: 294b883a add r5,r5,r5
  8380. 472f4: 294b883a add r5,r5,r5
  8381. 472f8: 294b883a add r5,r5,r5
  8382. 472fc: 994b883a add r5,r19,r5
  8383. 47300: 28800017 ldw r2,0(r5)
  8384. 47304: 01800174 movhi r6,5
  8385. 47308: 297ffe04 addi r5,r5,-8
  8386. 4730c: 318abe04 addi r6,r6,11000
  8387. 47310: 28806526 beq r5,r2,474a8 <_malloc_r+0x6d8>
  8388. 47314: 01bfff04 movi r6,-4
  8389. 47318: 10c00117 ldw r3,4(r2)
  8390. 4731c: 1986703a and r3,r3,r6
  8391. 47320: 38c0022e bgeu r7,r3,4732c <_malloc_r+0x55c>
  8392. 47324: 10800217 ldw r2,8(r2)
  8393. 47328: 28bffb1e bne r5,r2,47318 <__alt_data_end+0xfffd5318>
  8394. 4732c: 11400317 ldw r5,12(r2)
  8395. 47330: 98c00117 ldw r3,4(r19)
  8396. 47334: 81400315 stw r5,12(r16)
  8397. 47338: 80800215 stw r2,8(r16)
  8398. 4733c: 2c000215 stw r16,8(r5)
  8399. 47340: 14000315 stw r16,12(r2)
  8400. 47344: 003ef806 br 46f28 <__alt_data_end+0xfffd4f28>
  8401. 47348: 88c00054 ori r3,r17,1
  8402. 4734c: 80c00115 stw r3,4(r16)
  8403. 47350: 8463883a add r17,r16,r17
  8404. 47354: 34400515 stw r17,20(r6)
  8405. 47358: 34400415 stw r17,16(r6)
  8406. 4735c: 10c00054 ori r3,r2,1
  8407. 47360: 8a000315 stw r8,12(r17)
  8408. 47364: 8a000215 stw r8,8(r17)
  8409. 47368: 88c00115 stw r3,4(r17)
  8410. 4736c: 88a3883a add r17,r17,r2
  8411. 47370: 88800015 stw r2,0(r17)
  8412. 47374: 9009883a mov r4,r18
  8413. 47378: 004ee180 call 4ee18 <__malloc_unlock>
  8414. 4737c: 80800204 addi r2,r16,8
  8415. 47380: 003f3c06 br 47074 <__alt_data_end+0xfffd5074>
  8416. 47384: 30c00117 ldw r3,4(r6)
  8417. 47388: 003ee706 br 46f28 <__alt_data_end+0xfffd4f28>
  8418. 4738c: 5ac00044 addi r11,r11,1
  8419. 47390: 588000cc andi r2,r11,3
  8420. 47394: 31800204 addi r6,r6,8
  8421. 47398: 103efd1e bne r2,zero,46f90 <__alt_data_end+0xfffd4f90>
  8422. 4739c: 00002406 br 47430 <_malloc_r+0x660>
  8423. 473a0: 14000317 ldw r16,12(r2)
  8424. 473a4: 143f251e bne r2,r16,4703c <__alt_data_end+0xfffd503c>
  8425. 473a8: 21000084 addi r4,r4,2
  8426. 473ac: 003ebc06 br 46ea0 <__alt_data_end+0xfffd4ea0>
  8427. 473b0: 8085883a add r2,r16,r2
  8428. 473b4: 10c00117 ldw r3,4(r2)
  8429. 473b8: 81000317 ldw r4,12(r16)
  8430. 473bc: 81400217 ldw r5,8(r16)
  8431. 473c0: 18c00054 ori r3,r3,1
  8432. 473c4: 10c00115 stw r3,4(r2)
  8433. 473c8: 29000315 stw r4,12(r5)
  8434. 473cc: 21400215 stw r5,8(r4)
  8435. 473d0: 9009883a mov r4,r18
  8436. 473d4: 004ee180 call 4ee18 <__malloc_unlock>
  8437. 473d8: 80800204 addi r2,r16,8
  8438. 473dc: 003f2506 br 47074 <__alt_data_end+0xfffd5074>
  8439. 473e0: 12001704 addi r8,r2,92
  8440. 473e4: 11c016c4 addi r7,r2,91
  8441. 473e8: 4209883a add r4,r8,r8
  8442. 473ec: 003e9606 br 46e48 <__alt_data_end+0xfffd4e48>
  8443. 473f0: 3804d1ba srli r2,r7,6
  8444. 473f4: 11400e44 addi r5,r2,57
  8445. 473f8: 10c00e04 addi r3,r2,56
  8446. 473fc: 294b883a add r5,r5,r5
  8447. 47400: 003fbc06 br 472f4 <__alt_data_end+0xfffd52f4>
  8448. 47404: 84ff5926 beq r16,r19,4716c <__alt_data_end+0xfffd516c>
  8449. 47408: 00800174 movhi r2,5
  8450. 4740c: 108abe04 addi r2,r2,11000
  8451. 47410: 14000217 ldw r16,8(r2)
  8452. 47414: 00bfff04 movi r2,-4
  8453. 47418: 80c00117 ldw r3,4(r16)
  8454. 4741c: 1886703a and r3,r3,r2
  8455. 47420: 003f9106 br 47268 <__alt_data_end+0xfffd5268>
  8456. 47424: 60800217 ldw r2,8(r12)
  8457. 47428: 213fffc4 addi r4,r4,-1
  8458. 4742c: 1300651e bne r2,r12,475c4 <_malloc_r+0x7f4>
  8459. 47430: 208000cc andi r2,r4,3
  8460. 47434: 633ffe04 addi r12,r12,-8
  8461. 47438: 103ffa1e bne r2,zero,47424 <__alt_data_end+0xfffd5424>
  8462. 4743c: 98800117 ldw r2,4(r19)
  8463. 47440: 0146303a nor r3,zero,r5
  8464. 47444: 1884703a and r2,r3,r2
  8465. 47448: 98800115 stw r2,4(r19)
  8466. 4744c: 294b883a add r5,r5,r5
  8467. 47450: 117f2836 bltu r2,r5,470f4 <__alt_data_end+0xfffd50f4>
  8468. 47454: 283f2726 beq r5,zero,470f4 <__alt_data_end+0xfffd50f4>
  8469. 47458: 2886703a and r3,r5,r2
  8470. 4745c: 5809883a mov r4,r11
  8471. 47460: 183ec31e bne r3,zero,46f70 <__alt_data_end+0xfffd4f70>
  8472. 47464: 294b883a add r5,r5,r5
  8473. 47468: 2886703a and r3,r5,r2
  8474. 4746c: 21000104 addi r4,r4,4
  8475. 47470: 183ffc26 beq r3,zero,47464 <__alt_data_end+0xfffd5464>
  8476. 47474: 003ebe06 br 46f70 <__alt_data_end+0xfffd4f70>
  8477. 47478: 00c05504 movi r3,340
  8478. 4747c: 18801236 bltu r3,r2,474c8 <_malloc_r+0x6f8>
  8479. 47480: 8804d3fa srli r2,r17,15
  8480. 47484: 12001e04 addi r8,r2,120
  8481. 47488: 11c01dc4 addi r7,r2,119
  8482. 4748c: 4209883a add r4,r8,r8
  8483. 47490: 003e6d06 br 46e48 <__alt_data_end+0xfffd4e48>
  8484. 47494: 00c40004 movi r3,4096
  8485. 47498: 003f4606 br 471b4 <__alt_data_end+0xfffd51b4>
  8486. 4749c: 00800044 movi r2,1
  8487. 474a0: a0800115 stw r2,4(r20)
  8488. 474a4: 003f7406 br 47278 <__alt_data_end+0xfffd5278>
  8489. 474a8: 1805d0ba srai r2,r3,2
  8490. 474ac: 01c00044 movi r7,1
  8491. 474b0: 30c00117 ldw r3,4(r6)
  8492. 474b4: 388e983a sll r7,r7,r2
  8493. 474b8: 2805883a mov r2,r5
  8494. 474bc: 38c6b03a or r3,r7,r3
  8495. 474c0: 30c00115 stw r3,4(r6)
  8496. 474c4: 003f9b06 br 47334 <__alt_data_end+0xfffd5334>
  8497. 474c8: 00c15504 movi r3,1364
  8498. 474cc: 18801a36 bltu r3,r2,47538 <_malloc_r+0x768>
  8499. 474d0: 8804d4ba srli r2,r17,18
  8500. 474d4: 12001f44 addi r8,r2,125
  8501. 474d8: 11c01f04 addi r7,r2,124
  8502. 474dc: 4209883a add r4,r8,r8
  8503. 474e0: 003e5906 br 46e48 <__alt_data_end+0xfffd4e48>
  8504. 474e4: ad400404 addi r21,r21,16
  8505. 474e8: 003f1706 br 47148 <__alt_data_end+0xfffd5148>
  8506. 474ec: 00c01504 movi r3,84
  8507. 474f0: 18802336 bltu r3,r2,47580 <_malloc_r+0x7b0>
  8508. 474f4: 3804d33a srli r2,r7,12
  8509. 474f8: 11401bc4 addi r5,r2,111
  8510. 474fc: 10c01b84 addi r3,r2,110
  8511. 47500: 294b883a add r5,r5,r5
  8512. 47504: 003f7b06 br 472f4 <__alt_data_end+0xfffd52f4>
  8513. 47508: 9c000217 ldw r16,8(r19)
  8514. 4750c: 00bfff04 movi r2,-4
  8515. 47510: 80c00117 ldw r3,4(r16)
  8516. 47514: 1886703a and r3,r3,r2
  8517. 47518: 003f5306 br 47268 <__alt_data_end+0xfffd5268>
  8518. 4751c: 3083ffcc andi r2,r6,4095
  8519. 47520: 103f181e bne r2,zero,47184 <__alt_data_end+0xfffd5184>
  8520. 47524: 99000217 ldw r4,8(r19)
  8521. 47528: b545883a add r2,r22,r21
  8522. 4752c: 10800054 ori r2,r2,1
  8523. 47530: 20800115 stw r2,4(r4)
  8524. 47534: 003f3e06 br 47230 <__alt_data_end+0xfffd5230>
  8525. 47538: 01003f84 movi r4,254
  8526. 4753c: 02001fc4 movi r8,127
  8527. 47540: 01c01f84 movi r7,126
  8528. 47544: 003e4006 br 46e48 <__alt_data_end+0xfffd4e48>
  8529. 47548: 00800174 movhi r2,5
  8530. 4754c: 10908d04 addi r2,r2,16948
  8531. 47550: 15000015 stw r20,0(r2)
  8532. 47554: 003f1106 br 4719c <__alt_data_end+0xfffd519c>
  8533. 47558: 00800044 movi r2,1
  8534. 4755c: 002b883a mov r21,zero
  8535. 47560: 003f1f06 br 471e0 <__alt_data_end+0xfffd51e0>
  8536. 47564: 81400204 addi r5,r16,8
  8537. 47568: 9009883a mov r4,r18
  8538. 4756c: 00466a00 call 466a0 <_free_r>
  8539. 47570: 00800174 movhi r2,5
  8540. 47574: 1097b304 addi r2,r2,24268
  8541. 47578: 10c00017 ldw r3,0(r2)
  8542. 4757c: 003f2c06 br 47230 <__alt_data_end+0xfffd5230>
  8543. 47580: 00c05504 movi r3,340
  8544. 47584: 18800536 bltu r3,r2,4759c <_malloc_r+0x7cc>
  8545. 47588: 3804d3fa srli r2,r7,15
  8546. 4758c: 11401e04 addi r5,r2,120
  8547. 47590: 10c01dc4 addi r3,r2,119
  8548. 47594: 294b883a add r5,r5,r5
  8549. 47598: 003f5606 br 472f4 <__alt_data_end+0xfffd52f4>
  8550. 4759c: 00c15504 movi r3,1364
  8551. 475a0: 18800536 bltu r3,r2,475b8 <_malloc_r+0x7e8>
  8552. 475a4: 3804d4ba srli r2,r7,18
  8553. 475a8: 11401f44 addi r5,r2,125
  8554. 475ac: 10c01f04 addi r3,r2,124
  8555. 475b0: 294b883a add r5,r5,r5
  8556. 475b4: 003f4f06 br 472f4 <__alt_data_end+0xfffd52f4>
  8557. 475b8: 01403f84 movi r5,254
  8558. 475bc: 00c01f84 movi r3,126
  8559. 475c0: 003f4c06 br 472f4 <__alt_data_end+0xfffd52f4>
  8560. 475c4: 98800117 ldw r2,4(r19)
  8561. 475c8: 003fa006 br 4744c <__alt_data_end+0xfffd544c>
  8562. 475cc: 8808d0fa srli r4,r17,3
  8563. 475d0: 20800044 addi r2,r4,1
  8564. 475d4: 1085883a add r2,r2,r2
  8565. 475d8: 003e9006 br 4701c <__alt_data_end+0xfffd501c>
  8566. 000475dc <memchr>:
  8567. 475dc: 208000cc andi r2,r4,3
  8568. 475e0: 280f883a mov r7,r5
  8569. 475e4: 10003426 beq r2,zero,476b8 <memchr+0xdc>
  8570. 475e8: 30bfffc4 addi r2,r6,-1
  8571. 475ec: 30001a26 beq r6,zero,47658 <memchr+0x7c>
  8572. 475f0: 20c00003 ldbu r3,0(r4)
  8573. 475f4: 29803fcc andi r6,r5,255
  8574. 475f8: 30c0051e bne r6,r3,47610 <memchr+0x34>
  8575. 475fc: 00001806 br 47660 <memchr+0x84>
  8576. 47600: 10001526 beq r2,zero,47658 <memchr+0x7c>
  8577. 47604: 20c00003 ldbu r3,0(r4)
  8578. 47608: 10bfffc4 addi r2,r2,-1
  8579. 4760c: 30c01426 beq r6,r3,47660 <memchr+0x84>
  8580. 47610: 21000044 addi r4,r4,1
  8581. 47614: 20c000cc andi r3,r4,3
  8582. 47618: 183ff91e bne r3,zero,47600 <__alt_data_end+0xfffd5600>
  8583. 4761c: 020000c4 movi r8,3
  8584. 47620: 40801136 bltu r8,r2,47668 <memchr+0x8c>
  8585. 47624: 10000c26 beq r2,zero,47658 <memchr+0x7c>
  8586. 47628: 20c00003 ldbu r3,0(r4)
  8587. 4762c: 29403fcc andi r5,r5,255
  8588. 47630: 28c00b26 beq r5,r3,47660 <memchr+0x84>
  8589. 47634: 20c00044 addi r3,r4,1
  8590. 47638: 39803fcc andi r6,r7,255
  8591. 4763c: 2089883a add r4,r4,r2
  8592. 47640: 00000306 br 47650 <memchr+0x74>
  8593. 47644: 18c00044 addi r3,r3,1
  8594. 47648: 197fffc3 ldbu r5,-1(r3)
  8595. 4764c: 31400526 beq r6,r5,47664 <memchr+0x88>
  8596. 47650: 1805883a mov r2,r3
  8597. 47654: 20fffb1e bne r4,r3,47644 <__alt_data_end+0xfffd5644>
  8598. 47658: 0005883a mov r2,zero
  8599. 4765c: f800283a ret
  8600. 47660: 2005883a mov r2,r4
  8601. 47664: f800283a ret
  8602. 47668: 28c03fcc andi r3,r5,255
  8603. 4766c: 1812923a slli r9,r3,8
  8604. 47670: 02ffbff4 movhi r11,65279
  8605. 47674: 02a02074 movhi r10,32897
  8606. 47678: 48d2b03a or r9,r9,r3
  8607. 4767c: 4806943a slli r3,r9,16
  8608. 47680: 5affbfc4 addi r11,r11,-257
  8609. 47684: 52a02004 addi r10,r10,-32640
  8610. 47688: 48d2b03a or r9,r9,r3
  8611. 4768c: 20c00017 ldw r3,0(r4)
  8612. 47690: 48c6f03a xor r3,r9,r3
  8613. 47694: 1acd883a add r6,r3,r11
  8614. 47698: 00c6303a nor r3,zero,r3
  8615. 4769c: 30c6703a and r3,r6,r3
  8616. 476a0: 1a86703a and r3,r3,r10
  8617. 476a4: 183fe01e bne r3,zero,47628 <__alt_data_end+0xfffd5628>
  8618. 476a8: 10bfff04 addi r2,r2,-4
  8619. 476ac: 21000104 addi r4,r4,4
  8620. 476b0: 40bff636 bltu r8,r2,4768c <__alt_data_end+0xfffd568c>
  8621. 476b4: 003fdb06 br 47624 <__alt_data_end+0xfffd5624>
  8622. 476b8: 3005883a mov r2,r6
  8623. 476bc: 003fd706 br 4761c <__alt_data_end+0xfffd561c>
  8624. 000476c0 <memcpy>:
  8625. 476c0: defffd04 addi sp,sp,-12
  8626. 476c4: dfc00215 stw ra,8(sp)
  8627. 476c8: dc400115 stw r17,4(sp)
  8628. 476cc: dc000015 stw r16,0(sp)
  8629. 476d0: 00c003c4 movi r3,15
  8630. 476d4: 2005883a mov r2,r4
  8631. 476d8: 1980452e bgeu r3,r6,477f0 <memcpy+0x130>
  8632. 476dc: 2906b03a or r3,r5,r4
  8633. 476e0: 18c000cc andi r3,r3,3
  8634. 476e4: 1800441e bne r3,zero,477f8 <memcpy+0x138>
  8635. 476e8: 347ffc04 addi r17,r6,-16
  8636. 476ec: 8822d13a srli r17,r17,4
  8637. 476f0: 28c00104 addi r3,r5,4
  8638. 476f4: 23400104 addi r13,r4,4
  8639. 476f8: 8820913a slli r16,r17,4
  8640. 476fc: 2b000204 addi r12,r5,8
  8641. 47700: 22c00204 addi r11,r4,8
  8642. 47704: 84000504 addi r16,r16,20
  8643. 47708: 2a800304 addi r10,r5,12
  8644. 4770c: 22400304 addi r9,r4,12
  8645. 47710: 2c21883a add r16,r5,r16
  8646. 47714: 2811883a mov r8,r5
  8647. 47718: 200f883a mov r7,r4
  8648. 4771c: 41000017 ldw r4,0(r8)
  8649. 47720: 1fc00017 ldw ra,0(r3)
  8650. 47724: 63c00017 ldw r15,0(r12)
  8651. 47728: 39000015 stw r4,0(r7)
  8652. 4772c: 53800017 ldw r14,0(r10)
  8653. 47730: 6fc00015 stw ra,0(r13)
  8654. 47734: 5bc00015 stw r15,0(r11)
  8655. 47738: 4b800015 stw r14,0(r9)
  8656. 4773c: 18c00404 addi r3,r3,16
  8657. 47740: 39c00404 addi r7,r7,16
  8658. 47744: 42000404 addi r8,r8,16
  8659. 47748: 6b400404 addi r13,r13,16
  8660. 4774c: 63000404 addi r12,r12,16
  8661. 47750: 5ac00404 addi r11,r11,16
  8662. 47754: 52800404 addi r10,r10,16
  8663. 47758: 4a400404 addi r9,r9,16
  8664. 4775c: 1c3fef1e bne r3,r16,4771c <__alt_data_end+0xfffd571c>
  8665. 47760: 89c00044 addi r7,r17,1
  8666. 47764: 380e913a slli r7,r7,4
  8667. 47768: 310003cc andi r4,r6,15
  8668. 4776c: 02c000c4 movi r11,3
  8669. 47770: 11c7883a add r3,r2,r7
  8670. 47774: 29cb883a add r5,r5,r7
  8671. 47778: 5900212e bgeu r11,r4,47800 <memcpy+0x140>
  8672. 4777c: 1813883a mov r9,r3
  8673. 47780: 2811883a mov r8,r5
  8674. 47784: 200f883a mov r7,r4
  8675. 47788: 42800017 ldw r10,0(r8)
  8676. 4778c: 4a400104 addi r9,r9,4
  8677. 47790: 39ffff04 addi r7,r7,-4
  8678. 47794: 4abfff15 stw r10,-4(r9)
  8679. 47798: 42000104 addi r8,r8,4
  8680. 4779c: 59fffa36 bltu r11,r7,47788 <__alt_data_end+0xfffd5788>
  8681. 477a0: 213fff04 addi r4,r4,-4
  8682. 477a4: 2008d0ba srli r4,r4,2
  8683. 477a8: 318000cc andi r6,r6,3
  8684. 477ac: 21000044 addi r4,r4,1
  8685. 477b0: 2109883a add r4,r4,r4
  8686. 477b4: 2109883a add r4,r4,r4
  8687. 477b8: 1907883a add r3,r3,r4
  8688. 477bc: 290b883a add r5,r5,r4
  8689. 477c0: 30000626 beq r6,zero,477dc <memcpy+0x11c>
  8690. 477c4: 198d883a add r6,r3,r6
  8691. 477c8: 29c00003 ldbu r7,0(r5)
  8692. 477cc: 18c00044 addi r3,r3,1
  8693. 477d0: 29400044 addi r5,r5,1
  8694. 477d4: 19ffffc5 stb r7,-1(r3)
  8695. 477d8: 19bffb1e bne r3,r6,477c8 <__alt_data_end+0xfffd57c8>
  8696. 477dc: dfc00217 ldw ra,8(sp)
  8697. 477e0: dc400117 ldw r17,4(sp)
  8698. 477e4: dc000017 ldw r16,0(sp)
  8699. 477e8: dec00304 addi sp,sp,12
  8700. 477ec: f800283a ret
  8701. 477f0: 2007883a mov r3,r4
  8702. 477f4: 003ff206 br 477c0 <__alt_data_end+0xfffd57c0>
  8703. 477f8: 2007883a mov r3,r4
  8704. 477fc: 003ff106 br 477c4 <__alt_data_end+0xfffd57c4>
  8705. 47800: 200d883a mov r6,r4
  8706. 47804: 003fee06 br 477c0 <__alt_data_end+0xfffd57c0>
  8707. 00047808 <memset>:
  8708. 47808: 20c000cc andi r3,r4,3
  8709. 4780c: 2005883a mov r2,r4
  8710. 47810: 18004426 beq r3,zero,47924 <memset+0x11c>
  8711. 47814: 31ffffc4 addi r7,r6,-1
  8712. 47818: 30004026 beq r6,zero,4791c <memset+0x114>
  8713. 4781c: 2813883a mov r9,r5
  8714. 47820: 200d883a mov r6,r4
  8715. 47824: 2007883a mov r3,r4
  8716. 47828: 00000406 br 4783c <memset+0x34>
  8717. 4782c: 3a3fffc4 addi r8,r7,-1
  8718. 47830: 31800044 addi r6,r6,1
  8719. 47834: 38003926 beq r7,zero,4791c <memset+0x114>
  8720. 47838: 400f883a mov r7,r8
  8721. 4783c: 18c00044 addi r3,r3,1
  8722. 47840: 32400005 stb r9,0(r6)
  8723. 47844: 1a0000cc andi r8,r3,3
  8724. 47848: 403ff81e bne r8,zero,4782c <__alt_data_end+0xfffd582c>
  8725. 4784c: 010000c4 movi r4,3
  8726. 47850: 21c02d2e bgeu r4,r7,47908 <memset+0x100>
  8727. 47854: 29003fcc andi r4,r5,255
  8728. 47858: 200c923a slli r6,r4,8
  8729. 4785c: 3108b03a or r4,r6,r4
  8730. 47860: 200c943a slli r6,r4,16
  8731. 47864: 218cb03a or r6,r4,r6
  8732. 47868: 010003c4 movi r4,15
  8733. 4786c: 21c0182e bgeu r4,r7,478d0 <memset+0xc8>
  8734. 47870: 3b3ffc04 addi r12,r7,-16
  8735. 47874: 6018d13a srli r12,r12,4
  8736. 47878: 1a000104 addi r8,r3,4
  8737. 4787c: 1ac00204 addi r11,r3,8
  8738. 47880: 6008913a slli r4,r12,4
  8739. 47884: 1a800304 addi r10,r3,12
  8740. 47888: 1813883a mov r9,r3
  8741. 4788c: 21000504 addi r4,r4,20
  8742. 47890: 1909883a add r4,r3,r4
  8743. 47894: 49800015 stw r6,0(r9)
  8744. 47898: 41800015 stw r6,0(r8)
  8745. 4789c: 59800015 stw r6,0(r11)
  8746. 478a0: 51800015 stw r6,0(r10)
  8747. 478a4: 42000404 addi r8,r8,16
  8748. 478a8: 4a400404 addi r9,r9,16
  8749. 478ac: 5ac00404 addi r11,r11,16
  8750. 478b0: 52800404 addi r10,r10,16
  8751. 478b4: 413ff71e bne r8,r4,47894 <__alt_data_end+0xfffd5894>
  8752. 478b8: 63000044 addi r12,r12,1
  8753. 478bc: 6018913a slli r12,r12,4
  8754. 478c0: 39c003cc andi r7,r7,15
  8755. 478c4: 010000c4 movi r4,3
  8756. 478c8: 1b07883a add r3,r3,r12
  8757. 478cc: 21c00e2e bgeu r4,r7,47908 <memset+0x100>
  8758. 478d0: 1813883a mov r9,r3
  8759. 478d4: 3811883a mov r8,r7
  8760. 478d8: 010000c4 movi r4,3
  8761. 478dc: 49800015 stw r6,0(r9)
  8762. 478e0: 423fff04 addi r8,r8,-4
  8763. 478e4: 4a400104 addi r9,r9,4
  8764. 478e8: 223ffc36 bltu r4,r8,478dc <__alt_data_end+0xfffd58dc>
  8765. 478ec: 393fff04 addi r4,r7,-4
  8766. 478f0: 2008d0ba srli r4,r4,2
  8767. 478f4: 39c000cc andi r7,r7,3
  8768. 478f8: 21000044 addi r4,r4,1
  8769. 478fc: 2109883a add r4,r4,r4
  8770. 47900: 2109883a add r4,r4,r4
  8771. 47904: 1907883a add r3,r3,r4
  8772. 47908: 38000526 beq r7,zero,47920 <memset+0x118>
  8773. 4790c: 19cf883a add r7,r3,r7
  8774. 47910: 19400005 stb r5,0(r3)
  8775. 47914: 18c00044 addi r3,r3,1
  8776. 47918: 38fffd1e bne r7,r3,47910 <__alt_data_end+0xfffd5910>
  8777. 4791c: f800283a ret
  8778. 47920: f800283a ret
  8779. 47924: 2007883a mov r3,r4
  8780. 47928: 300f883a mov r7,r6
  8781. 4792c: 003fc706 br 4784c <__alt_data_end+0xfffd584c>
  8782. 00047930 <_Balloc>:
  8783. 47930: 20801317 ldw r2,76(r4)
  8784. 47934: defffc04 addi sp,sp,-16
  8785. 47938: dc400115 stw r17,4(sp)
  8786. 4793c: dc000015 stw r16,0(sp)
  8787. 47940: dfc00315 stw ra,12(sp)
  8788. 47944: dc800215 stw r18,8(sp)
  8789. 47948: 2023883a mov r17,r4
  8790. 4794c: 2821883a mov r16,r5
  8791. 47950: 10000f26 beq r2,zero,47990 <_Balloc+0x60>
  8792. 47954: 8407883a add r3,r16,r16
  8793. 47958: 18c7883a add r3,r3,r3
  8794. 4795c: 10c7883a add r3,r2,r3
  8795. 47960: 18800017 ldw r2,0(r3)
  8796. 47964: 10001126 beq r2,zero,479ac <_Balloc+0x7c>
  8797. 47968: 11000017 ldw r4,0(r2)
  8798. 4796c: 19000015 stw r4,0(r3)
  8799. 47970: 10000415 stw zero,16(r2)
  8800. 47974: 10000315 stw zero,12(r2)
  8801. 47978: dfc00317 ldw ra,12(sp)
  8802. 4797c: dc800217 ldw r18,8(sp)
  8803. 47980: dc400117 ldw r17,4(sp)
  8804. 47984: dc000017 ldw r16,0(sp)
  8805. 47988: dec00404 addi sp,sp,16
  8806. 4798c: f800283a ret
  8807. 47990: 01800844 movi r6,33
  8808. 47994: 01400104 movi r5,4
  8809. 47998: 004a9bc0 call 4a9bc <_calloc_r>
  8810. 4799c: 88801315 stw r2,76(r17)
  8811. 479a0: 103fec1e bne r2,zero,47954 <__alt_data_end+0xfffd5954>
  8812. 479a4: 0005883a mov r2,zero
  8813. 479a8: 003ff306 br 47978 <__alt_data_end+0xfffd5978>
  8814. 479ac: 01400044 movi r5,1
  8815. 479b0: 2c24983a sll r18,r5,r16
  8816. 479b4: 8809883a mov r4,r17
  8817. 479b8: 91800144 addi r6,r18,5
  8818. 479bc: 318d883a add r6,r6,r6
  8819. 479c0: 318d883a add r6,r6,r6
  8820. 479c4: 004a9bc0 call 4a9bc <_calloc_r>
  8821. 479c8: 103ff626 beq r2,zero,479a4 <__alt_data_end+0xfffd59a4>
  8822. 479cc: 14000115 stw r16,4(r2)
  8823. 479d0: 14800215 stw r18,8(r2)
  8824. 479d4: 003fe606 br 47970 <__alt_data_end+0xfffd5970>
  8825. 000479d8 <_Bfree>:
  8826. 479d8: 28000826 beq r5,zero,479fc <_Bfree+0x24>
  8827. 479dc: 28c00117 ldw r3,4(r5)
  8828. 479e0: 20801317 ldw r2,76(r4)
  8829. 479e4: 18c7883a add r3,r3,r3
  8830. 479e8: 18c7883a add r3,r3,r3
  8831. 479ec: 10c5883a add r2,r2,r3
  8832. 479f0: 10c00017 ldw r3,0(r2)
  8833. 479f4: 28c00015 stw r3,0(r5)
  8834. 479f8: 11400015 stw r5,0(r2)
  8835. 479fc: f800283a ret
  8836. 00047a00 <__multadd>:
  8837. 47a00: defff704 addi sp,sp,-36
  8838. 47a04: dc800215 stw r18,8(sp)
  8839. 47a08: 2c800417 ldw r18,16(r5)
  8840. 47a0c: dd800615 stw r22,24(sp)
  8841. 47a10: dd400515 stw r21,20(sp)
  8842. 47a14: dd000415 stw r20,16(sp)
  8843. 47a18: dcc00315 stw r19,12(sp)
  8844. 47a1c: dc400115 stw r17,4(sp)
  8845. 47a20: dc000015 stw r16,0(sp)
  8846. 47a24: dfc00815 stw ra,32(sp)
  8847. 47a28: ddc00715 stw r23,28(sp)
  8848. 47a2c: 2827883a mov r19,r5
  8849. 47a30: 2029883a mov r20,r4
  8850. 47a34: 3023883a mov r17,r6
  8851. 47a38: 3821883a mov r16,r7
  8852. 47a3c: 2d400504 addi r21,r5,20
  8853. 47a40: 002d883a mov r22,zero
  8854. 47a44: adc00017 ldw r23,0(r21)
  8855. 47a48: 880b883a mov r5,r17
  8856. 47a4c: ad400104 addi r21,r21,4
  8857. 47a50: b93fffcc andi r4,r23,65535
  8858. 47a54: 004c9f80 call 4c9f8 <__mulsi3>
  8859. 47a58: b808d43a srli r4,r23,16
  8860. 47a5c: 880b883a mov r5,r17
  8861. 47a60: 1421883a add r16,r2,r16
  8862. 47a64: 004c9f80 call 4c9f8 <__mulsi3>
  8863. 47a68: 800ed43a srli r7,r16,16
  8864. 47a6c: 80ffffcc andi r3,r16,65535
  8865. 47a70: b5800044 addi r22,r22,1
  8866. 47a74: 11c5883a add r2,r2,r7
  8867. 47a78: 100e943a slli r7,r2,16
  8868. 47a7c: 1020d43a srli r16,r2,16
  8869. 47a80: 38c7883a add r3,r7,r3
  8870. 47a84: a8ffff15 stw r3,-4(r21)
  8871. 47a88: b4bfee16 blt r22,r18,47a44 <__alt_data_end+0xfffd5a44>
  8872. 47a8c: 80000926 beq r16,zero,47ab4 <__multadd+0xb4>
  8873. 47a90: 98800217 ldw r2,8(r19)
  8874. 47a94: 9080130e bge r18,r2,47ae4 <__multadd+0xe4>
  8875. 47a98: 90800144 addi r2,r18,5
  8876. 47a9c: 1085883a add r2,r2,r2
  8877. 47aa0: 1085883a add r2,r2,r2
  8878. 47aa4: 9885883a add r2,r19,r2
  8879. 47aa8: 14000015 stw r16,0(r2)
  8880. 47aac: 94800044 addi r18,r18,1
  8881. 47ab0: 9c800415 stw r18,16(r19)
  8882. 47ab4: 9805883a mov r2,r19
  8883. 47ab8: dfc00817 ldw ra,32(sp)
  8884. 47abc: ddc00717 ldw r23,28(sp)
  8885. 47ac0: dd800617 ldw r22,24(sp)
  8886. 47ac4: dd400517 ldw r21,20(sp)
  8887. 47ac8: dd000417 ldw r20,16(sp)
  8888. 47acc: dcc00317 ldw r19,12(sp)
  8889. 47ad0: dc800217 ldw r18,8(sp)
  8890. 47ad4: dc400117 ldw r17,4(sp)
  8891. 47ad8: dc000017 ldw r16,0(sp)
  8892. 47adc: dec00904 addi sp,sp,36
  8893. 47ae0: f800283a ret
  8894. 47ae4: 99400117 ldw r5,4(r19)
  8895. 47ae8: a009883a mov r4,r20
  8896. 47aec: 29400044 addi r5,r5,1
  8897. 47af0: 00479300 call 47930 <_Balloc>
  8898. 47af4: 99800417 ldw r6,16(r19)
  8899. 47af8: 99400304 addi r5,r19,12
  8900. 47afc: 11000304 addi r4,r2,12
  8901. 47b00: 31800084 addi r6,r6,2
  8902. 47b04: 318d883a add r6,r6,r6
  8903. 47b08: 318d883a add r6,r6,r6
  8904. 47b0c: 1023883a mov r17,r2
  8905. 47b10: 00476c00 call 476c0 <memcpy>
  8906. 47b14: 98000a26 beq r19,zero,47b40 <__multadd+0x140>
  8907. 47b18: 98c00117 ldw r3,4(r19)
  8908. 47b1c: a0801317 ldw r2,76(r20)
  8909. 47b20: 18c7883a add r3,r3,r3
  8910. 47b24: 18c7883a add r3,r3,r3
  8911. 47b28: 10c5883a add r2,r2,r3
  8912. 47b2c: 10c00017 ldw r3,0(r2)
  8913. 47b30: 98c00015 stw r3,0(r19)
  8914. 47b34: 14c00015 stw r19,0(r2)
  8915. 47b38: 8827883a mov r19,r17
  8916. 47b3c: 003fd606 br 47a98 <__alt_data_end+0xfffd5a98>
  8917. 47b40: 8827883a mov r19,r17
  8918. 47b44: 003fd406 br 47a98 <__alt_data_end+0xfffd5a98>
  8919. 00047b48 <__s2b>:
  8920. 47b48: defff904 addi sp,sp,-28
  8921. 47b4c: dc400115 stw r17,4(sp)
  8922. 47b50: dc000015 stw r16,0(sp)
  8923. 47b54: 2023883a mov r17,r4
  8924. 47b58: 2821883a mov r16,r5
  8925. 47b5c: 39000204 addi r4,r7,8
  8926. 47b60: 01400244 movi r5,9
  8927. 47b64: dcc00315 stw r19,12(sp)
  8928. 47b68: dc800215 stw r18,8(sp)
  8929. 47b6c: dfc00615 stw ra,24(sp)
  8930. 47b70: dd400515 stw r21,20(sp)
  8931. 47b74: dd000415 stw r20,16(sp)
  8932. 47b78: 3825883a mov r18,r7
  8933. 47b7c: 3027883a mov r19,r6
  8934. 47b80: 004c8440 call 4c844 <__divsi3>
  8935. 47b84: 00c00044 movi r3,1
  8936. 47b88: 000b883a mov r5,zero
  8937. 47b8c: 1880030e bge r3,r2,47b9c <__s2b+0x54>
  8938. 47b90: 18c7883a add r3,r3,r3
  8939. 47b94: 29400044 addi r5,r5,1
  8940. 47b98: 18bffd16 blt r3,r2,47b90 <__alt_data_end+0xfffd5b90>
  8941. 47b9c: 8809883a mov r4,r17
  8942. 47ba0: 00479300 call 47930 <_Balloc>
  8943. 47ba4: d8c00717 ldw r3,28(sp)
  8944. 47ba8: 10c00515 stw r3,20(r2)
  8945. 47bac: 00c00044 movi r3,1
  8946. 47bb0: 10c00415 stw r3,16(r2)
  8947. 47bb4: 00c00244 movi r3,9
  8948. 47bb8: 1cc0210e bge r3,r19,47c40 <__s2b+0xf8>
  8949. 47bbc: 80eb883a add r21,r16,r3
  8950. 47bc0: a829883a mov r20,r21
  8951. 47bc4: 84e1883a add r16,r16,r19
  8952. 47bc8: a1c00007 ldb r7,0(r20)
  8953. 47bcc: 01800284 movi r6,10
  8954. 47bd0: a5000044 addi r20,r20,1
  8955. 47bd4: 100b883a mov r5,r2
  8956. 47bd8: 39fff404 addi r7,r7,-48
  8957. 47bdc: 8809883a mov r4,r17
  8958. 47be0: 0047a000 call 47a00 <__multadd>
  8959. 47be4: a43ff81e bne r20,r16,47bc8 <__alt_data_end+0xfffd5bc8>
  8960. 47be8: ace1883a add r16,r21,r19
  8961. 47bec: 843ffe04 addi r16,r16,-8
  8962. 47bf0: 9c800a0e bge r19,r18,47c1c <__s2b+0xd4>
  8963. 47bf4: 94e5c83a sub r18,r18,r19
  8964. 47bf8: 84a5883a add r18,r16,r18
  8965. 47bfc: 81c00007 ldb r7,0(r16)
  8966. 47c00: 01800284 movi r6,10
  8967. 47c04: 84000044 addi r16,r16,1
  8968. 47c08: 100b883a mov r5,r2
  8969. 47c0c: 39fff404 addi r7,r7,-48
  8970. 47c10: 8809883a mov r4,r17
  8971. 47c14: 0047a000 call 47a00 <__multadd>
  8972. 47c18: 84bff81e bne r16,r18,47bfc <__alt_data_end+0xfffd5bfc>
  8973. 47c1c: dfc00617 ldw ra,24(sp)
  8974. 47c20: dd400517 ldw r21,20(sp)
  8975. 47c24: dd000417 ldw r20,16(sp)
  8976. 47c28: dcc00317 ldw r19,12(sp)
  8977. 47c2c: dc800217 ldw r18,8(sp)
  8978. 47c30: dc400117 ldw r17,4(sp)
  8979. 47c34: dc000017 ldw r16,0(sp)
  8980. 47c38: dec00704 addi sp,sp,28
  8981. 47c3c: f800283a ret
  8982. 47c40: 84000284 addi r16,r16,10
  8983. 47c44: 1827883a mov r19,r3
  8984. 47c48: 003fe906 br 47bf0 <__alt_data_end+0xfffd5bf0>
  8985. 00047c4c <__hi0bits>:
  8986. 47c4c: 20bfffec andhi r2,r4,65535
  8987. 47c50: 1000141e bne r2,zero,47ca4 <__hi0bits+0x58>
  8988. 47c54: 2008943a slli r4,r4,16
  8989. 47c58: 00800404 movi r2,16
  8990. 47c5c: 20ffc02c andhi r3,r4,65280
  8991. 47c60: 1800021e bne r3,zero,47c6c <__hi0bits+0x20>
  8992. 47c64: 2008923a slli r4,r4,8
  8993. 47c68: 10800204 addi r2,r2,8
  8994. 47c6c: 20fc002c andhi r3,r4,61440
  8995. 47c70: 1800021e bne r3,zero,47c7c <__hi0bits+0x30>
  8996. 47c74: 2008913a slli r4,r4,4
  8997. 47c78: 10800104 addi r2,r2,4
  8998. 47c7c: 20f0002c andhi r3,r4,49152
  8999. 47c80: 1800031e bne r3,zero,47c90 <__hi0bits+0x44>
  9000. 47c84: 2109883a add r4,r4,r4
  9001. 47c88: 10800084 addi r2,r2,2
  9002. 47c8c: 2109883a add r4,r4,r4
  9003. 47c90: 20000316 blt r4,zero,47ca0 <__hi0bits+0x54>
  9004. 47c94: 2110002c andhi r4,r4,16384
  9005. 47c98: 2000041e bne r4,zero,47cac <__hi0bits+0x60>
  9006. 47c9c: 00800804 movi r2,32
  9007. 47ca0: f800283a ret
  9008. 47ca4: 0005883a mov r2,zero
  9009. 47ca8: 003fec06 br 47c5c <__alt_data_end+0xfffd5c5c>
  9010. 47cac: 10800044 addi r2,r2,1
  9011. 47cb0: f800283a ret
  9012. 00047cb4 <__lo0bits>:
  9013. 47cb4: 20c00017 ldw r3,0(r4)
  9014. 47cb8: 188001cc andi r2,r3,7
  9015. 47cbc: 10000826 beq r2,zero,47ce0 <__lo0bits+0x2c>
  9016. 47cc0: 1880004c andi r2,r3,1
  9017. 47cc4: 1000211e bne r2,zero,47d4c <__lo0bits+0x98>
  9018. 47cc8: 1880008c andi r2,r3,2
  9019. 47ccc: 1000211e bne r2,zero,47d54 <__lo0bits+0xa0>
  9020. 47cd0: 1806d0ba srli r3,r3,2
  9021. 47cd4: 00800084 movi r2,2
  9022. 47cd8: 20c00015 stw r3,0(r4)
  9023. 47cdc: f800283a ret
  9024. 47ce0: 18bfffcc andi r2,r3,65535
  9025. 47ce4: 10001326 beq r2,zero,47d34 <__lo0bits+0x80>
  9026. 47ce8: 0005883a mov r2,zero
  9027. 47cec: 19403fcc andi r5,r3,255
  9028. 47cf0: 2800021e bne r5,zero,47cfc <__lo0bits+0x48>
  9029. 47cf4: 1806d23a srli r3,r3,8
  9030. 47cf8: 10800204 addi r2,r2,8
  9031. 47cfc: 194003cc andi r5,r3,15
  9032. 47d00: 2800021e bne r5,zero,47d0c <__lo0bits+0x58>
  9033. 47d04: 1806d13a srli r3,r3,4
  9034. 47d08: 10800104 addi r2,r2,4
  9035. 47d0c: 194000cc andi r5,r3,3
  9036. 47d10: 2800021e bne r5,zero,47d1c <__lo0bits+0x68>
  9037. 47d14: 1806d0ba srli r3,r3,2
  9038. 47d18: 10800084 addi r2,r2,2
  9039. 47d1c: 1940004c andi r5,r3,1
  9040. 47d20: 2800081e bne r5,zero,47d44 <__lo0bits+0x90>
  9041. 47d24: 1806d07a srli r3,r3,1
  9042. 47d28: 1800051e bne r3,zero,47d40 <__lo0bits+0x8c>
  9043. 47d2c: 00800804 movi r2,32
  9044. 47d30: f800283a ret
  9045. 47d34: 1806d43a srli r3,r3,16
  9046. 47d38: 00800404 movi r2,16
  9047. 47d3c: 003feb06 br 47cec <__alt_data_end+0xfffd5cec>
  9048. 47d40: 10800044 addi r2,r2,1
  9049. 47d44: 20c00015 stw r3,0(r4)
  9050. 47d48: f800283a ret
  9051. 47d4c: 0005883a mov r2,zero
  9052. 47d50: f800283a ret
  9053. 47d54: 1806d07a srli r3,r3,1
  9054. 47d58: 00800044 movi r2,1
  9055. 47d5c: 20c00015 stw r3,0(r4)
  9056. 47d60: f800283a ret
  9057. 00047d64 <__i2b>:
  9058. 47d64: defffd04 addi sp,sp,-12
  9059. 47d68: dc000015 stw r16,0(sp)
  9060. 47d6c: 04000044 movi r16,1
  9061. 47d70: dc400115 stw r17,4(sp)
  9062. 47d74: 2823883a mov r17,r5
  9063. 47d78: 800b883a mov r5,r16
  9064. 47d7c: dfc00215 stw ra,8(sp)
  9065. 47d80: 00479300 call 47930 <_Balloc>
  9066. 47d84: 14400515 stw r17,20(r2)
  9067. 47d88: 14000415 stw r16,16(r2)
  9068. 47d8c: dfc00217 ldw ra,8(sp)
  9069. 47d90: dc400117 ldw r17,4(sp)
  9070. 47d94: dc000017 ldw r16,0(sp)
  9071. 47d98: dec00304 addi sp,sp,12
  9072. 47d9c: f800283a ret
  9073. 00047da0 <__multiply>:
  9074. 47da0: deffef04 addi sp,sp,-68
  9075. 47da4: dc400815 stw r17,32(sp)
  9076. 47da8: dc000715 stw r16,28(sp)
  9077. 47dac: 34400417 ldw r17,16(r6)
  9078. 47db0: 2c000417 ldw r16,16(r5)
  9079. 47db4: dd800d15 stw r22,52(sp)
  9080. 47db8: dc800915 stw r18,36(sp)
  9081. 47dbc: dfc01015 stw ra,64(sp)
  9082. 47dc0: df000f15 stw fp,60(sp)
  9083. 47dc4: ddc00e15 stw r23,56(sp)
  9084. 47dc8: dd400c15 stw r21,48(sp)
  9085. 47dcc: dd000b15 stw r20,44(sp)
  9086. 47dd0: dcc00a15 stw r19,40(sp)
  9087. 47dd4: 2825883a mov r18,r5
  9088. 47dd8: 302d883a mov r22,r6
  9089. 47ddc: 8440050e bge r16,r17,47df4 <__multiply+0x54>
  9090. 47de0: 8007883a mov r3,r16
  9091. 47de4: 3025883a mov r18,r6
  9092. 47de8: 8821883a mov r16,r17
  9093. 47dec: 282d883a mov r22,r5
  9094. 47df0: 1823883a mov r17,r3
  9095. 47df4: 90800217 ldw r2,8(r18)
  9096. 47df8: 8447883a add r3,r16,r17
  9097. 47dfc: d8c00215 stw r3,8(sp)
  9098. 47e00: 91400117 ldw r5,4(r18)
  9099. 47e04: 10c0010e bge r2,r3,47e0c <__multiply+0x6c>
  9100. 47e08: 29400044 addi r5,r5,1
  9101. 47e0c: 00479300 call 47930 <_Balloc>
  9102. 47e10: d8c00217 ldw r3,8(sp)
  9103. 47e14: d8800615 stw r2,24(sp)
  9104. 47e18: 18eb883a add r21,r3,r3
  9105. 47e1c: ad6b883a add r21,r21,r21
  9106. 47e20: 10c00504 addi r3,r2,20
  9107. 47e24: 1d6b883a add r21,r3,r21
  9108. 47e28: d8c00115 stw r3,4(sp)
  9109. 47e2c: dd400315 stw r21,12(sp)
  9110. 47e30: 1805883a mov r2,r3
  9111. 47e34: 1d40042e bgeu r3,r21,47e48 <__multiply+0xa8>
  9112. 47e38: d8c00317 ldw r3,12(sp)
  9113. 47e3c: 10000015 stw zero,0(r2)
  9114. 47e40: 10800104 addi r2,r2,4
  9115. 47e44: 10fffc36 bltu r2,r3,47e38 <__alt_data_end+0xfffd5e38>
  9116. 47e48: 8c63883a add r17,r17,r17
  9117. 47e4c: b5800504 addi r22,r22,20
  9118. 47e50: 8c63883a add r17,r17,r17
  9119. 47e54: 94800504 addi r18,r18,20
  9120. 47e58: 8421883a add r16,r16,r16
  9121. 47e5c: b463883a add r17,r22,r17
  9122. 47e60: 8421883a add r16,r16,r16
  9123. 47e64: dd800015 stw r22,0(sp)
  9124. 47e68: dc800415 stw r18,16(sp)
  9125. 47e6c: dc400515 stw r17,20(sp)
  9126. 47e70: 9429883a add r20,r18,r16
  9127. 47e74: b4404f2e bgeu r22,r17,47fb4 <__multiply+0x214>
  9128. 47e78: d8c00017 ldw r3,0(sp)
  9129. 47e7c: 1c800017 ldw r18,0(r3)
  9130. 47e80: 947fffcc andi r17,r18,65535
  9131. 47e84: 88001e26 beq r17,zero,47f00 <__multiply+0x160>
  9132. 47e88: dd800117 ldw r22,4(sp)
  9133. 47e8c: dd400417 ldw r21,16(sp)
  9134. 47e90: 0027883a mov r19,zero
  9135. 47e94: ac800017 ldw r18,0(r21)
  9136. 47e98: b4000017 ldw r16,0(r22)
  9137. 47e9c: 880b883a mov r5,r17
  9138. 47ea0: 913fffcc andi r4,r18,65535
  9139. 47ea4: 004c9f80 call 4c9f8 <__mulsi3>
  9140. 47ea8: 9008d43a srli r4,r18,16
  9141. 47eac: 84bfffcc andi r18,r16,65535
  9142. 47eb0: 1485883a add r2,r2,r18
  9143. 47eb4: 14e5883a add r18,r2,r19
  9144. 47eb8: 8020d43a srli r16,r16,16
  9145. 47ebc: 9026d43a srli r19,r18,16
  9146. 47ec0: 880b883a mov r5,r17
  9147. 47ec4: 004c9f80 call 4c9f8 <__mulsi3>
  9148. 47ec8: 1405883a add r2,r2,r16
  9149. 47ecc: 14e1883a add r16,r2,r19
  9150. 47ed0: 90ffffcc andi r3,r18,65535
  9151. 47ed4: 8024943a slli r18,r16,16
  9152. 47ed8: ad400104 addi r21,r21,4
  9153. 47edc: b005883a mov r2,r22
  9154. 47ee0: 90c6b03a or r3,r18,r3
  9155. 47ee4: b0c00015 stw r3,0(r22)
  9156. 47ee8: 8026d43a srli r19,r16,16
  9157. 47eec: b5800104 addi r22,r22,4
  9158. 47ef0: ad3fe836 bltu r21,r20,47e94 <__alt_data_end+0xfffd5e94>
  9159. 47ef4: d8c00017 ldw r3,0(sp)
  9160. 47ef8: 14c00115 stw r19,4(r2)
  9161. 47efc: 1c800017 ldw r18,0(r3)
  9162. 47f00: 9024d43a srli r18,r18,16
  9163. 47f04: 90002226 beq r18,zero,47f90 <__multiply+0x1f0>
  9164. 47f08: d8c00117 ldw r3,4(sp)
  9165. 47f0c: dd800417 ldw r22,16(sp)
  9166. 47f10: 002f883a mov r23,zero
  9167. 47f14: 1f000017 ldw fp,0(r3)
  9168. 47f18: 1823883a mov r17,r3
  9169. 47f1c: 182b883a mov r21,r3
  9170. 47f20: e021883a mov r16,fp
  9171. 47f24: 00000106 br 47f2c <__multiply+0x18c>
  9172. 47f28: 982b883a mov r21,r19
  9173. 47f2c: b100000b ldhu r4,0(r22)
  9174. 47f30: 8020d43a srli r16,r16,16
  9175. 47f34: 900b883a mov r5,r18
  9176. 47f38: 004c9f80 call 4c9f8 <__mulsi3>
  9177. 47f3c: 1405883a add r2,r2,r16
  9178. 47f40: 15ef883a add r23,r2,r23
  9179. 47f44: b804943a slli r2,r23,16
  9180. 47f48: e0ffffcc andi r3,fp,65535
  9181. 47f4c: 8c400104 addi r17,r17,4
  9182. 47f50: 10c6b03a or r3,r2,r3
  9183. 47f54: 88ffff15 stw r3,-4(r17)
  9184. 47f58: b5800104 addi r22,r22,4
  9185. 47f5c: b13fff17 ldw r4,-4(r22)
  9186. 47f60: acc00104 addi r19,r21,4
  9187. 47f64: 900b883a mov r5,r18
  9188. 47f68: 2008d43a srli r4,r4,16
  9189. 47f6c: 9c000017 ldw r16,0(r19)
  9190. 47f70: 004c9f80 call 4c9f8 <__mulsi3>
  9191. 47f74: b806d43a srli r3,r23,16
  9192. 47f78: 813fffcc andi r4,r16,65535
  9193. 47f7c: 1105883a add r2,r2,r4
  9194. 47f80: 10f9883a add fp,r2,r3
  9195. 47f84: e02ed43a srli r23,fp,16
  9196. 47f88: b53fe736 bltu r22,r20,47f28 <__alt_data_end+0xfffd5f28>
  9197. 47f8c: af000115 stw fp,4(r21)
  9198. 47f90: d8c00017 ldw r3,0(sp)
  9199. 47f94: d9000517 ldw r4,20(sp)
  9200. 47f98: 18c00104 addi r3,r3,4
  9201. 47f9c: d8c00015 stw r3,0(sp)
  9202. 47fa0: d8c00117 ldw r3,4(sp)
  9203. 47fa4: 18c00104 addi r3,r3,4
  9204. 47fa8: d8c00115 stw r3,4(sp)
  9205. 47fac: d8c00017 ldw r3,0(sp)
  9206. 47fb0: 193fb136 bltu r3,r4,47e78 <__alt_data_end+0xfffd5e78>
  9207. 47fb4: d8c00217 ldw r3,8(sp)
  9208. 47fb8: 00c00c0e bge zero,r3,47fec <__multiply+0x24c>
  9209. 47fbc: d8c00317 ldw r3,12(sp)
  9210. 47fc0: 18bfff17 ldw r2,-4(r3)
  9211. 47fc4: 1d7fff04 addi r21,r3,-4
  9212. 47fc8: 10000326 beq r2,zero,47fd8 <__multiply+0x238>
  9213. 47fcc: 00000706 br 47fec <__multiply+0x24c>
  9214. 47fd0: a8800017 ldw r2,0(r21)
  9215. 47fd4: 1000051e bne r2,zero,47fec <__multiply+0x24c>
  9216. 47fd8: d8c00217 ldw r3,8(sp)
  9217. 47fdc: ad7fff04 addi r21,r21,-4
  9218. 47fe0: 18ffffc4 addi r3,r3,-1
  9219. 47fe4: d8c00215 stw r3,8(sp)
  9220. 47fe8: 183ff91e bne r3,zero,47fd0 <__alt_data_end+0xfffd5fd0>
  9221. 47fec: d8c00617 ldw r3,24(sp)
  9222. 47ff0: d9000217 ldw r4,8(sp)
  9223. 47ff4: 1805883a mov r2,r3
  9224. 47ff8: 19000415 stw r4,16(r3)
  9225. 47ffc: dfc01017 ldw ra,64(sp)
  9226. 48000: df000f17 ldw fp,60(sp)
  9227. 48004: ddc00e17 ldw r23,56(sp)
  9228. 48008: dd800d17 ldw r22,52(sp)
  9229. 4800c: dd400c17 ldw r21,48(sp)
  9230. 48010: dd000b17 ldw r20,44(sp)
  9231. 48014: dcc00a17 ldw r19,40(sp)
  9232. 48018: dc800917 ldw r18,36(sp)
  9233. 4801c: dc400817 ldw r17,32(sp)
  9234. 48020: dc000717 ldw r16,28(sp)
  9235. 48024: dec01104 addi sp,sp,68
  9236. 48028: f800283a ret
  9237. 0004802c <__pow5mult>:
  9238. 4802c: defffa04 addi sp,sp,-24
  9239. 48030: dcc00315 stw r19,12(sp)
  9240. 48034: dc000015 stw r16,0(sp)
  9241. 48038: dfc00515 stw ra,20(sp)
  9242. 4803c: dd000415 stw r20,16(sp)
  9243. 48040: dc800215 stw r18,8(sp)
  9244. 48044: dc400115 stw r17,4(sp)
  9245. 48048: 308000cc andi r2,r6,3
  9246. 4804c: 3021883a mov r16,r6
  9247. 48050: 2027883a mov r19,r4
  9248. 48054: 10002f1e bne r2,zero,48114 <__pow5mult+0xe8>
  9249. 48058: 2825883a mov r18,r5
  9250. 4805c: 8021d0ba srai r16,r16,2
  9251. 48060: 80001a26 beq r16,zero,480cc <__pow5mult+0xa0>
  9252. 48064: 9c401217 ldw r17,72(r19)
  9253. 48068: 8800061e bne r17,zero,48084 <__pow5mult+0x58>
  9254. 4806c: 00003406 br 48140 <__pow5mult+0x114>
  9255. 48070: 8021d07a srai r16,r16,1
  9256. 48074: 80001526 beq r16,zero,480cc <__pow5mult+0xa0>
  9257. 48078: 88800017 ldw r2,0(r17)
  9258. 4807c: 10001c26 beq r2,zero,480f0 <__pow5mult+0xc4>
  9259. 48080: 1023883a mov r17,r2
  9260. 48084: 8080004c andi r2,r16,1
  9261. 48088: 103ff926 beq r2,zero,48070 <__alt_data_end+0xfffd6070>
  9262. 4808c: 880d883a mov r6,r17
  9263. 48090: 900b883a mov r5,r18
  9264. 48094: 9809883a mov r4,r19
  9265. 48098: 0047da00 call 47da0 <__multiply>
  9266. 4809c: 90001b26 beq r18,zero,4810c <__pow5mult+0xe0>
  9267. 480a0: 91000117 ldw r4,4(r18)
  9268. 480a4: 98c01317 ldw r3,76(r19)
  9269. 480a8: 8021d07a srai r16,r16,1
  9270. 480ac: 2109883a add r4,r4,r4
  9271. 480b0: 2109883a add r4,r4,r4
  9272. 480b4: 1907883a add r3,r3,r4
  9273. 480b8: 19000017 ldw r4,0(r3)
  9274. 480bc: 91000015 stw r4,0(r18)
  9275. 480c0: 1c800015 stw r18,0(r3)
  9276. 480c4: 1025883a mov r18,r2
  9277. 480c8: 803feb1e bne r16,zero,48078 <__alt_data_end+0xfffd6078>
  9278. 480cc: 9005883a mov r2,r18
  9279. 480d0: dfc00517 ldw ra,20(sp)
  9280. 480d4: dd000417 ldw r20,16(sp)
  9281. 480d8: dcc00317 ldw r19,12(sp)
  9282. 480dc: dc800217 ldw r18,8(sp)
  9283. 480e0: dc400117 ldw r17,4(sp)
  9284. 480e4: dc000017 ldw r16,0(sp)
  9285. 480e8: dec00604 addi sp,sp,24
  9286. 480ec: f800283a ret
  9287. 480f0: 880d883a mov r6,r17
  9288. 480f4: 880b883a mov r5,r17
  9289. 480f8: 9809883a mov r4,r19
  9290. 480fc: 0047da00 call 47da0 <__multiply>
  9291. 48100: 88800015 stw r2,0(r17)
  9292. 48104: 10000015 stw zero,0(r2)
  9293. 48108: 003fdd06 br 48080 <__alt_data_end+0xfffd6080>
  9294. 4810c: 1025883a mov r18,r2
  9295. 48110: 003fd706 br 48070 <__alt_data_end+0xfffd6070>
  9296. 48114: 10bfffc4 addi r2,r2,-1
  9297. 48118: 1085883a add r2,r2,r2
  9298. 4811c: 00c00174 movhi r3,5
  9299. 48120: 18c89704 addi r3,r3,8796
  9300. 48124: 1085883a add r2,r2,r2
  9301. 48128: 1885883a add r2,r3,r2
  9302. 4812c: 11800017 ldw r6,0(r2)
  9303. 48130: 000f883a mov r7,zero
  9304. 48134: 0047a000 call 47a00 <__multadd>
  9305. 48138: 1025883a mov r18,r2
  9306. 4813c: 003fc706 br 4805c <__alt_data_end+0xfffd605c>
  9307. 48140: 05000044 movi r20,1
  9308. 48144: a00b883a mov r5,r20
  9309. 48148: 9809883a mov r4,r19
  9310. 4814c: 00479300 call 47930 <_Balloc>
  9311. 48150: 1023883a mov r17,r2
  9312. 48154: 00809c44 movi r2,625
  9313. 48158: 88800515 stw r2,20(r17)
  9314. 4815c: 8d000415 stw r20,16(r17)
  9315. 48160: 9c401215 stw r17,72(r19)
  9316. 48164: 88000015 stw zero,0(r17)
  9317. 48168: 003fc606 br 48084 <__alt_data_end+0xfffd6084>
  9318. 0004816c <__lshift>:
  9319. 4816c: defff904 addi sp,sp,-28
  9320. 48170: dd400515 stw r21,20(sp)
  9321. 48174: dcc00315 stw r19,12(sp)
  9322. 48178: 302bd17a srai r21,r6,5
  9323. 4817c: 2cc00417 ldw r19,16(r5)
  9324. 48180: 28800217 ldw r2,8(r5)
  9325. 48184: dd000415 stw r20,16(sp)
  9326. 48188: ace7883a add r19,r21,r19
  9327. 4818c: dc800215 stw r18,8(sp)
  9328. 48190: dc400115 stw r17,4(sp)
  9329. 48194: dc000015 stw r16,0(sp)
  9330. 48198: dfc00615 stw ra,24(sp)
  9331. 4819c: 9c000044 addi r16,r19,1
  9332. 481a0: 2823883a mov r17,r5
  9333. 481a4: 3029883a mov r20,r6
  9334. 481a8: 2025883a mov r18,r4
  9335. 481ac: 29400117 ldw r5,4(r5)
  9336. 481b0: 1400030e bge r2,r16,481c0 <__lshift+0x54>
  9337. 481b4: 1085883a add r2,r2,r2
  9338. 481b8: 29400044 addi r5,r5,1
  9339. 481bc: 143ffd16 blt r2,r16,481b4 <__alt_data_end+0xfffd61b4>
  9340. 481c0: 9009883a mov r4,r18
  9341. 481c4: 00479300 call 47930 <_Balloc>
  9342. 481c8: 10c00504 addi r3,r2,20
  9343. 481cc: 0540070e bge zero,r21,481ec <__lshift+0x80>
  9344. 481d0: ad6b883a add r21,r21,r21
  9345. 481d4: ad6b883a add r21,r21,r21
  9346. 481d8: 1809883a mov r4,r3
  9347. 481dc: 1d47883a add r3,r3,r21
  9348. 481e0: 20000015 stw zero,0(r4)
  9349. 481e4: 21000104 addi r4,r4,4
  9350. 481e8: 193ffd1e bne r3,r4,481e0 <__alt_data_end+0xfffd61e0>
  9351. 481ec: 8a000417 ldw r8,16(r17)
  9352. 481f0: 89000504 addi r4,r17,20
  9353. 481f4: a18007cc andi r6,r20,31
  9354. 481f8: 4211883a add r8,r8,r8
  9355. 481fc: 4211883a add r8,r8,r8
  9356. 48200: 2211883a add r8,r4,r8
  9357. 48204: 30002326 beq r6,zero,48294 <__lshift+0x128>
  9358. 48208: 02400804 movi r9,32
  9359. 4820c: 4993c83a sub r9,r9,r6
  9360. 48210: 000b883a mov r5,zero
  9361. 48214: 21c00017 ldw r7,0(r4)
  9362. 48218: 1815883a mov r10,r3
  9363. 4821c: 18c00104 addi r3,r3,4
  9364. 48220: 398e983a sll r7,r7,r6
  9365. 48224: 21000104 addi r4,r4,4
  9366. 48228: 394ab03a or r5,r7,r5
  9367. 4822c: 197fff15 stw r5,-4(r3)
  9368. 48230: 217fff17 ldw r5,-4(r4)
  9369. 48234: 2a4ad83a srl r5,r5,r9
  9370. 48238: 223ff636 bltu r4,r8,48214 <__alt_data_end+0xfffd6214>
  9371. 4823c: 51400115 stw r5,4(r10)
  9372. 48240: 28001a1e bne r5,zero,482ac <__lshift+0x140>
  9373. 48244: 843fffc4 addi r16,r16,-1
  9374. 48248: 14000415 stw r16,16(r2)
  9375. 4824c: 88000826 beq r17,zero,48270 <__lshift+0x104>
  9376. 48250: 89000117 ldw r4,4(r17)
  9377. 48254: 90c01317 ldw r3,76(r18)
  9378. 48258: 2109883a add r4,r4,r4
  9379. 4825c: 2109883a add r4,r4,r4
  9380. 48260: 1907883a add r3,r3,r4
  9381. 48264: 19000017 ldw r4,0(r3)
  9382. 48268: 89000015 stw r4,0(r17)
  9383. 4826c: 1c400015 stw r17,0(r3)
  9384. 48270: dfc00617 ldw ra,24(sp)
  9385. 48274: dd400517 ldw r21,20(sp)
  9386. 48278: dd000417 ldw r20,16(sp)
  9387. 4827c: dcc00317 ldw r19,12(sp)
  9388. 48280: dc800217 ldw r18,8(sp)
  9389. 48284: dc400117 ldw r17,4(sp)
  9390. 48288: dc000017 ldw r16,0(sp)
  9391. 4828c: dec00704 addi sp,sp,28
  9392. 48290: f800283a ret
  9393. 48294: 21400017 ldw r5,0(r4)
  9394. 48298: 18c00104 addi r3,r3,4
  9395. 4829c: 21000104 addi r4,r4,4
  9396. 482a0: 197fff15 stw r5,-4(r3)
  9397. 482a4: 223ffb36 bltu r4,r8,48294 <__alt_data_end+0xfffd6294>
  9398. 482a8: 003fe606 br 48244 <__alt_data_end+0xfffd6244>
  9399. 482ac: 9c000084 addi r16,r19,2
  9400. 482b0: 003fe406 br 48244 <__alt_data_end+0xfffd6244>
  9401. 000482b4 <__mcmp>:
  9402. 482b4: 20800417 ldw r2,16(r4)
  9403. 482b8: 28c00417 ldw r3,16(r5)
  9404. 482bc: 10c5c83a sub r2,r2,r3
  9405. 482c0: 1000111e bne r2,zero,48308 <__mcmp+0x54>
  9406. 482c4: 18c7883a add r3,r3,r3
  9407. 482c8: 18c7883a add r3,r3,r3
  9408. 482cc: 21000504 addi r4,r4,20
  9409. 482d0: 29400504 addi r5,r5,20
  9410. 482d4: 20c5883a add r2,r4,r3
  9411. 482d8: 28cb883a add r5,r5,r3
  9412. 482dc: 00000106 br 482e4 <__mcmp+0x30>
  9413. 482e0: 20800a2e bgeu r4,r2,4830c <__mcmp+0x58>
  9414. 482e4: 10bfff04 addi r2,r2,-4
  9415. 482e8: 297fff04 addi r5,r5,-4
  9416. 482ec: 11800017 ldw r6,0(r2)
  9417. 482f0: 28c00017 ldw r3,0(r5)
  9418. 482f4: 30fffa26 beq r6,r3,482e0 <__alt_data_end+0xfffd62e0>
  9419. 482f8: 30c00236 bltu r6,r3,48304 <__mcmp+0x50>
  9420. 482fc: 00800044 movi r2,1
  9421. 48300: f800283a ret
  9422. 48304: 00bfffc4 movi r2,-1
  9423. 48308: f800283a ret
  9424. 4830c: 0005883a mov r2,zero
  9425. 48310: f800283a ret
  9426. 00048314 <__mdiff>:
  9427. 48314: 28c00417 ldw r3,16(r5)
  9428. 48318: 30800417 ldw r2,16(r6)
  9429. 4831c: defffa04 addi sp,sp,-24
  9430. 48320: dcc00315 stw r19,12(sp)
  9431. 48324: dc800215 stw r18,8(sp)
  9432. 48328: dfc00515 stw ra,20(sp)
  9433. 4832c: dd000415 stw r20,16(sp)
  9434. 48330: dc400115 stw r17,4(sp)
  9435. 48334: dc000015 stw r16,0(sp)
  9436. 48338: 1887c83a sub r3,r3,r2
  9437. 4833c: 2825883a mov r18,r5
  9438. 48340: 3027883a mov r19,r6
  9439. 48344: 1800141e bne r3,zero,48398 <__mdiff+0x84>
  9440. 48348: 1085883a add r2,r2,r2
  9441. 4834c: 1085883a add r2,r2,r2
  9442. 48350: 2a000504 addi r8,r5,20
  9443. 48354: 34000504 addi r16,r6,20
  9444. 48358: 4087883a add r3,r8,r2
  9445. 4835c: 8085883a add r2,r16,r2
  9446. 48360: 00000106 br 48368 <__mdiff+0x54>
  9447. 48364: 40c0592e bgeu r8,r3,484cc <__mdiff+0x1b8>
  9448. 48368: 18ffff04 addi r3,r3,-4
  9449. 4836c: 10bfff04 addi r2,r2,-4
  9450. 48370: 19c00017 ldw r7,0(r3)
  9451. 48374: 11400017 ldw r5,0(r2)
  9452. 48378: 397ffa26 beq r7,r5,48364 <__alt_data_end+0xfffd6364>
  9453. 4837c: 3940592e bgeu r7,r5,484e4 <__mdiff+0x1d0>
  9454. 48380: 9005883a mov r2,r18
  9455. 48384: 4023883a mov r17,r8
  9456. 48388: 9825883a mov r18,r19
  9457. 4838c: 05000044 movi r20,1
  9458. 48390: 1027883a mov r19,r2
  9459. 48394: 00000406 br 483a8 <__mdiff+0x94>
  9460. 48398: 18005616 blt r3,zero,484f4 <__mdiff+0x1e0>
  9461. 4839c: 34400504 addi r17,r6,20
  9462. 483a0: 2c000504 addi r16,r5,20
  9463. 483a4: 0029883a mov r20,zero
  9464. 483a8: 91400117 ldw r5,4(r18)
  9465. 483ac: 00479300 call 47930 <_Balloc>
  9466. 483b0: 92400417 ldw r9,16(r18)
  9467. 483b4: 9b000417 ldw r12,16(r19)
  9468. 483b8: 12c00504 addi r11,r2,20
  9469. 483bc: 4a51883a add r8,r9,r9
  9470. 483c0: 6319883a add r12,r12,r12
  9471. 483c4: 4211883a add r8,r8,r8
  9472. 483c8: 6319883a add r12,r12,r12
  9473. 483cc: 15000315 stw r20,12(r2)
  9474. 483d0: 8211883a add r8,r16,r8
  9475. 483d4: 8b19883a add r12,r17,r12
  9476. 483d8: 0007883a mov r3,zero
  9477. 483dc: 81400017 ldw r5,0(r16)
  9478. 483e0: 89c00017 ldw r7,0(r17)
  9479. 483e4: 59800104 addi r6,r11,4
  9480. 483e8: 293fffcc andi r4,r5,65535
  9481. 483ec: 20c7883a add r3,r4,r3
  9482. 483f0: 393fffcc andi r4,r7,65535
  9483. 483f4: 1909c83a sub r4,r3,r4
  9484. 483f8: 280ad43a srli r5,r5,16
  9485. 483fc: 380ed43a srli r7,r7,16
  9486. 48400: 2007d43a srai r3,r4,16
  9487. 48404: 213fffcc andi r4,r4,65535
  9488. 48408: 29cbc83a sub r5,r5,r7
  9489. 4840c: 28c7883a add r3,r5,r3
  9490. 48410: 180a943a slli r5,r3,16
  9491. 48414: 8c400104 addi r17,r17,4
  9492. 48418: 84000104 addi r16,r16,4
  9493. 4841c: 2908b03a or r4,r5,r4
  9494. 48420: 59000015 stw r4,0(r11)
  9495. 48424: 1807d43a srai r3,r3,16
  9496. 48428: 3015883a mov r10,r6
  9497. 4842c: 3017883a mov r11,r6
  9498. 48430: 8b3fea36 bltu r17,r12,483dc <__alt_data_end+0xfffd63dc>
  9499. 48434: 8200162e bgeu r16,r8,48490 <__mdiff+0x17c>
  9500. 48438: 8017883a mov r11,r16
  9501. 4843c: 59400017 ldw r5,0(r11)
  9502. 48440: 31800104 addi r6,r6,4
  9503. 48444: 5ac00104 addi r11,r11,4
  9504. 48448: 293fffcc andi r4,r5,65535
  9505. 4844c: 20c7883a add r3,r4,r3
  9506. 48450: 280ed43a srli r7,r5,16
  9507. 48454: 180bd43a srai r5,r3,16
  9508. 48458: 193fffcc andi r4,r3,65535
  9509. 4845c: 3947883a add r3,r7,r5
  9510. 48460: 180a943a slli r5,r3,16
  9511. 48464: 1807d43a srai r3,r3,16
  9512. 48468: 2908b03a or r4,r5,r4
  9513. 4846c: 313fff15 stw r4,-4(r6)
  9514. 48470: 5a3ff236 bltu r11,r8,4843c <__alt_data_end+0xfffd643c>
  9515. 48474: 0406303a nor r3,zero,r16
  9516. 48478: 1a07883a add r3,r3,r8
  9517. 4847c: 1806d0ba srli r3,r3,2
  9518. 48480: 18c00044 addi r3,r3,1
  9519. 48484: 18c7883a add r3,r3,r3
  9520. 48488: 18c7883a add r3,r3,r3
  9521. 4848c: 50d5883a add r10,r10,r3
  9522. 48490: 50ffff04 addi r3,r10,-4
  9523. 48494: 2000041e bne r4,zero,484a8 <__mdiff+0x194>
  9524. 48498: 18ffff04 addi r3,r3,-4
  9525. 4849c: 19000017 ldw r4,0(r3)
  9526. 484a0: 4a7fffc4 addi r9,r9,-1
  9527. 484a4: 203ffc26 beq r4,zero,48498 <__alt_data_end+0xfffd6498>
  9528. 484a8: 12400415 stw r9,16(r2)
  9529. 484ac: dfc00517 ldw ra,20(sp)
  9530. 484b0: dd000417 ldw r20,16(sp)
  9531. 484b4: dcc00317 ldw r19,12(sp)
  9532. 484b8: dc800217 ldw r18,8(sp)
  9533. 484bc: dc400117 ldw r17,4(sp)
  9534. 484c0: dc000017 ldw r16,0(sp)
  9535. 484c4: dec00604 addi sp,sp,24
  9536. 484c8: f800283a ret
  9537. 484cc: 000b883a mov r5,zero
  9538. 484d0: 00479300 call 47930 <_Balloc>
  9539. 484d4: 00c00044 movi r3,1
  9540. 484d8: 10c00415 stw r3,16(r2)
  9541. 484dc: 10000515 stw zero,20(r2)
  9542. 484e0: 003ff206 br 484ac <__alt_data_end+0xfffd64ac>
  9543. 484e4: 8023883a mov r17,r16
  9544. 484e8: 0029883a mov r20,zero
  9545. 484ec: 4021883a mov r16,r8
  9546. 484f0: 003fad06 br 483a8 <__alt_data_end+0xfffd63a8>
  9547. 484f4: 9005883a mov r2,r18
  9548. 484f8: 94400504 addi r17,r18,20
  9549. 484fc: 9c000504 addi r16,r19,20
  9550. 48500: 9825883a mov r18,r19
  9551. 48504: 05000044 movi r20,1
  9552. 48508: 1027883a mov r19,r2
  9553. 4850c: 003fa606 br 483a8 <__alt_data_end+0xfffd63a8>
  9554. 00048510 <__ulp>:
  9555. 48510: 295ffc2c andhi r5,r5,32752
  9556. 48514: 00bf3034 movhi r2,64704
  9557. 48518: 2887883a add r3,r5,r2
  9558. 4851c: 00c0020e bge zero,r3,48528 <__ulp+0x18>
  9559. 48520: 0005883a mov r2,zero
  9560. 48524: f800283a ret
  9561. 48528: 00c7c83a sub r3,zero,r3
  9562. 4852c: 1807d53a srai r3,r3,20
  9563. 48530: 008004c4 movi r2,19
  9564. 48534: 10c00b0e bge r2,r3,48564 <__ulp+0x54>
  9565. 48538: 18bffb04 addi r2,r3,-20
  9566. 4853c: 01000784 movi r4,30
  9567. 48540: 0007883a mov r3,zero
  9568. 48544: 20800516 blt r4,r2,4855c <__ulp+0x4c>
  9569. 48548: 010007c4 movi r4,31
  9570. 4854c: 2089c83a sub r4,r4,r2
  9571. 48550: 00800044 movi r2,1
  9572. 48554: 1104983a sll r2,r2,r4
  9573. 48558: f800283a ret
  9574. 4855c: 00800044 movi r2,1
  9575. 48560: f800283a ret
  9576. 48564: 01400234 movhi r5,8
  9577. 48568: 28c7d83a sra r3,r5,r3
  9578. 4856c: 0005883a mov r2,zero
  9579. 48570: f800283a ret
  9580. 00048574 <__b2d>:
  9581. 48574: defffa04 addi sp,sp,-24
  9582. 48578: dc000015 stw r16,0(sp)
  9583. 4857c: 24000417 ldw r16,16(r4)
  9584. 48580: dc400115 stw r17,4(sp)
  9585. 48584: 24400504 addi r17,r4,20
  9586. 48588: 8421883a add r16,r16,r16
  9587. 4858c: 8421883a add r16,r16,r16
  9588. 48590: 8c21883a add r16,r17,r16
  9589. 48594: dc800215 stw r18,8(sp)
  9590. 48598: 84bfff17 ldw r18,-4(r16)
  9591. 4859c: dd000415 stw r20,16(sp)
  9592. 485a0: dcc00315 stw r19,12(sp)
  9593. 485a4: 9009883a mov r4,r18
  9594. 485a8: 2829883a mov r20,r5
  9595. 485ac: dfc00515 stw ra,20(sp)
  9596. 485b0: 0047c4c0 call 47c4c <__hi0bits>
  9597. 485b4: 00c00804 movi r3,32
  9598. 485b8: 1889c83a sub r4,r3,r2
  9599. 485bc: a1000015 stw r4,0(r20)
  9600. 485c0: 01000284 movi r4,10
  9601. 485c4: 84ffff04 addi r19,r16,-4
  9602. 485c8: 20801216 blt r4,r2,48614 <__b2d+0xa0>
  9603. 485cc: 018002c4 movi r6,11
  9604. 485d0: 308dc83a sub r6,r6,r2
  9605. 485d4: 9186d83a srl r3,r18,r6
  9606. 485d8: 18cffc34 orhi r3,r3,16368
  9607. 485dc: 8cc0212e bgeu r17,r19,48664 <__b2d+0xf0>
  9608. 485e0: 813ffe17 ldw r4,-8(r16)
  9609. 485e4: 218cd83a srl r6,r4,r6
  9610. 485e8: 10800544 addi r2,r2,21
  9611. 485ec: 9084983a sll r2,r18,r2
  9612. 485f0: 1184b03a or r2,r2,r6
  9613. 485f4: dfc00517 ldw ra,20(sp)
  9614. 485f8: dd000417 ldw r20,16(sp)
  9615. 485fc: dcc00317 ldw r19,12(sp)
  9616. 48600: dc800217 ldw r18,8(sp)
  9617. 48604: dc400117 ldw r17,4(sp)
  9618. 48608: dc000017 ldw r16,0(sp)
  9619. 4860c: dec00604 addi sp,sp,24
  9620. 48610: f800283a ret
  9621. 48614: 8cc00f2e bgeu r17,r19,48654 <__b2d+0xe0>
  9622. 48618: 117ffd44 addi r5,r2,-11
  9623. 4861c: 80bffe17 ldw r2,-8(r16)
  9624. 48620: 28000e26 beq r5,zero,4865c <__b2d+0xe8>
  9625. 48624: 1949c83a sub r4,r3,r5
  9626. 48628: 9164983a sll r18,r18,r5
  9627. 4862c: 1106d83a srl r3,r2,r4
  9628. 48630: 81bffe04 addi r6,r16,-8
  9629. 48634: 948ffc34 orhi r18,r18,16368
  9630. 48638: 90c6b03a or r3,r18,r3
  9631. 4863c: 89800e2e bgeu r17,r6,48678 <__b2d+0x104>
  9632. 48640: 81bffd17 ldw r6,-12(r16)
  9633. 48644: 1144983a sll r2,r2,r5
  9634. 48648: 310ad83a srl r5,r6,r4
  9635. 4864c: 2884b03a or r2,r5,r2
  9636. 48650: 003fe806 br 485f4 <__alt_data_end+0xfffd65f4>
  9637. 48654: 10bffd44 addi r2,r2,-11
  9638. 48658: 1000041e bne r2,zero,4866c <__b2d+0xf8>
  9639. 4865c: 90cffc34 orhi r3,r18,16368
  9640. 48660: 003fe406 br 485f4 <__alt_data_end+0xfffd65f4>
  9641. 48664: 000d883a mov r6,zero
  9642. 48668: 003fdf06 br 485e8 <__alt_data_end+0xfffd65e8>
  9643. 4866c: 90a4983a sll r18,r18,r2
  9644. 48670: 0005883a mov r2,zero
  9645. 48674: 003ff906 br 4865c <__alt_data_end+0xfffd665c>
  9646. 48678: 1144983a sll r2,r2,r5
  9647. 4867c: 003fdd06 br 485f4 <__alt_data_end+0xfffd65f4>
  9648. 00048680 <__d2b>:
  9649. 48680: defff804 addi sp,sp,-32
  9650. 48684: dc000215 stw r16,8(sp)
  9651. 48688: 3021883a mov r16,r6
  9652. 4868c: dc400315 stw r17,12(sp)
  9653. 48690: 8022907a slli r17,r16,1
  9654. 48694: dd000615 stw r20,24(sp)
  9655. 48698: 2829883a mov r20,r5
  9656. 4869c: 01400044 movi r5,1
  9657. 486a0: dcc00515 stw r19,20(sp)
  9658. 486a4: dc800415 stw r18,16(sp)
  9659. 486a8: dfc00715 stw ra,28(sp)
  9660. 486ac: 3825883a mov r18,r7
  9661. 486b0: 8822d57a srli r17,r17,21
  9662. 486b4: 00479300 call 47930 <_Balloc>
  9663. 486b8: 1027883a mov r19,r2
  9664. 486bc: 00800434 movhi r2,16
  9665. 486c0: 10bfffc4 addi r2,r2,-1
  9666. 486c4: 808c703a and r6,r16,r2
  9667. 486c8: 88000126 beq r17,zero,486d0 <__d2b+0x50>
  9668. 486cc: 31800434 orhi r6,r6,16
  9669. 486d0: d9800015 stw r6,0(sp)
  9670. 486d4: a0002426 beq r20,zero,48768 <__d2b+0xe8>
  9671. 486d8: d9000104 addi r4,sp,4
  9672. 486dc: dd000115 stw r20,4(sp)
  9673. 486e0: 0047cb40 call 47cb4 <__lo0bits>
  9674. 486e4: d8c00017 ldw r3,0(sp)
  9675. 486e8: 10002f1e bne r2,zero,487a8 <__d2b+0x128>
  9676. 486ec: d9000117 ldw r4,4(sp)
  9677. 486f0: 99000515 stw r4,20(r19)
  9678. 486f4: 1821003a cmpeq r16,r3,zero
  9679. 486f8: 01000084 movi r4,2
  9680. 486fc: 2421c83a sub r16,r4,r16
  9681. 48700: 98c00615 stw r3,24(r19)
  9682. 48704: 9c000415 stw r16,16(r19)
  9683. 48708: 88001f1e bne r17,zero,48788 <__d2b+0x108>
  9684. 4870c: 10bef384 addi r2,r2,-1074
  9685. 48710: 90800015 stw r2,0(r18)
  9686. 48714: 00900034 movhi r2,16384
  9687. 48718: 10bfffc4 addi r2,r2,-1
  9688. 4871c: 8085883a add r2,r16,r2
  9689. 48720: 1085883a add r2,r2,r2
  9690. 48724: 1085883a add r2,r2,r2
  9691. 48728: 9885883a add r2,r19,r2
  9692. 4872c: 11000517 ldw r4,20(r2)
  9693. 48730: 8020917a slli r16,r16,5
  9694. 48734: 0047c4c0 call 47c4c <__hi0bits>
  9695. 48738: d8c00817 ldw r3,32(sp)
  9696. 4873c: 8085c83a sub r2,r16,r2
  9697. 48740: 18800015 stw r2,0(r3)
  9698. 48744: 9805883a mov r2,r19
  9699. 48748: dfc00717 ldw ra,28(sp)
  9700. 4874c: dd000617 ldw r20,24(sp)
  9701. 48750: dcc00517 ldw r19,20(sp)
  9702. 48754: dc800417 ldw r18,16(sp)
  9703. 48758: dc400317 ldw r17,12(sp)
  9704. 4875c: dc000217 ldw r16,8(sp)
  9705. 48760: dec00804 addi sp,sp,32
  9706. 48764: f800283a ret
  9707. 48768: d809883a mov r4,sp
  9708. 4876c: 0047cb40 call 47cb4 <__lo0bits>
  9709. 48770: d8c00017 ldw r3,0(sp)
  9710. 48774: 04000044 movi r16,1
  9711. 48778: 9c000415 stw r16,16(r19)
  9712. 4877c: 98c00515 stw r3,20(r19)
  9713. 48780: 10800804 addi r2,r2,32
  9714. 48784: 883fe126 beq r17,zero,4870c <__alt_data_end+0xfffd670c>
  9715. 48788: 00c00d44 movi r3,53
  9716. 4878c: 8c7ef344 addi r17,r17,-1075
  9717. 48790: 88a3883a add r17,r17,r2
  9718. 48794: 1885c83a sub r2,r3,r2
  9719. 48798: d8c00817 ldw r3,32(sp)
  9720. 4879c: 94400015 stw r17,0(r18)
  9721. 487a0: 18800015 stw r2,0(r3)
  9722. 487a4: 003fe706 br 48744 <__alt_data_end+0xfffd6744>
  9723. 487a8: 01000804 movi r4,32
  9724. 487ac: 2089c83a sub r4,r4,r2
  9725. 487b0: 1908983a sll r4,r3,r4
  9726. 487b4: d9400117 ldw r5,4(sp)
  9727. 487b8: 1886d83a srl r3,r3,r2
  9728. 487bc: 2148b03a or r4,r4,r5
  9729. 487c0: 99000515 stw r4,20(r19)
  9730. 487c4: d8c00015 stw r3,0(sp)
  9731. 487c8: 003fca06 br 486f4 <__alt_data_end+0xfffd66f4>
  9732. 000487cc <__ratio>:
  9733. 487cc: defff904 addi sp,sp,-28
  9734. 487d0: dc400315 stw r17,12(sp)
  9735. 487d4: 2823883a mov r17,r5
  9736. 487d8: d9400104 addi r5,sp,4
  9737. 487dc: dfc00615 stw ra,24(sp)
  9738. 487e0: dcc00515 stw r19,20(sp)
  9739. 487e4: dc800415 stw r18,16(sp)
  9740. 487e8: 2027883a mov r19,r4
  9741. 487ec: dc000215 stw r16,8(sp)
  9742. 487f0: 00485740 call 48574 <__b2d>
  9743. 487f4: d80b883a mov r5,sp
  9744. 487f8: 8809883a mov r4,r17
  9745. 487fc: 1025883a mov r18,r2
  9746. 48800: 1821883a mov r16,r3
  9747. 48804: 00485740 call 48574 <__b2d>
  9748. 48808: 8a000417 ldw r8,16(r17)
  9749. 4880c: 99000417 ldw r4,16(r19)
  9750. 48810: d9400117 ldw r5,4(sp)
  9751. 48814: 2209c83a sub r4,r4,r8
  9752. 48818: 2010917a slli r8,r4,5
  9753. 4881c: d9000017 ldw r4,0(sp)
  9754. 48820: 2909c83a sub r4,r5,r4
  9755. 48824: 4109883a add r4,r8,r4
  9756. 48828: 01000e0e bge zero,r4,48864 <__ratio+0x98>
  9757. 4882c: 2008953a slli r4,r4,20
  9758. 48830: 2421883a add r16,r4,r16
  9759. 48834: 100d883a mov r6,r2
  9760. 48838: 180f883a mov r7,r3
  9761. 4883c: 9009883a mov r4,r18
  9762. 48840: 800b883a mov r5,r16
  9763. 48844: 004ca200 call 4ca20 <__divdf3>
  9764. 48848: dfc00617 ldw ra,24(sp)
  9765. 4884c: dcc00517 ldw r19,20(sp)
  9766. 48850: dc800417 ldw r18,16(sp)
  9767. 48854: dc400317 ldw r17,12(sp)
  9768. 48858: dc000217 ldw r16,8(sp)
  9769. 4885c: dec00704 addi sp,sp,28
  9770. 48860: f800283a ret
  9771. 48864: 2008953a slli r4,r4,20
  9772. 48868: 1907c83a sub r3,r3,r4
  9773. 4886c: 003ff106 br 48834 <__alt_data_end+0xfffd6834>
  9774. 00048870 <_mprec_log10>:
  9775. 48870: defffe04 addi sp,sp,-8
  9776. 48874: dc000015 stw r16,0(sp)
  9777. 48878: dfc00115 stw ra,4(sp)
  9778. 4887c: 008005c4 movi r2,23
  9779. 48880: 2021883a mov r16,r4
  9780. 48884: 11000d0e bge r2,r4,488bc <_mprec_log10+0x4c>
  9781. 48888: 0005883a mov r2,zero
  9782. 4888c: 00cffc34 movhi r3,16368
  9783. 48890: 843fffc4 addi r16,r16,-1
  9784. 48894: 000d883a mov r6,zero
  9785. 48898: 01d00934 movhi r7,16420
  9786. 4889c: 1009883a mov r4,r2
  9787. 488a0: 180b883a mov r5,r3
  9788. 488a4: 004d6480 call 4d648 <__muldf3>
  9789. 488a8: 803ff91e bne r16,zero,48890 <__alt_data_end+0xfffd6890>
  9790. 488ac: dfc00117 ldw ra,4(sp)
  9791. 488b0: dc000017 ldw r16,0(sp)
  9792. 488b4: dec00204 addi sp,sp,8
  9793. 488b8: f800283a ret
  9794. 488bc: 202090fa slli r16,r4,3
  9795. 488c0: 00800174 movhi r2,5
  9796. 488c4: 1088ae04 addi r2,r2,8888
  9797. 488c8: 1421883a add r16,r2,r16
  9798. 488cc: 80800017 ldw r2,0(r16)
  9799. 488d0: 80c00117 ldw r3,4(r16)
  9800. 488d4: dfc00117 ldw ra,4(sp)
  9801. 488d8: dc000017 ldw r16,0(sp)
  9802. 488dc: dec00204 addi sp,sp,8
  9803. 488e0: f800283a ret
  9804. 000488e4 <__copybits>:
  9805. 488e4: 297fffc4 addi r5,r5,-1
  9806. 488e8: 280fd17a srai r7,r5,5
  9807. 488ec: 30c00417 ldw r3,16(r6)
  9808. 488f0: 30800504 addi r2,r6,20
  9809. 488f4: 39c00044 addi r7,r7,1
  9810. 488f8: 18c7883a add r3,r3,r3
  9811. 488fc: 39cf883a add r7,r7,r7
  9812. 48900: 18c7883a add r3,r3,r3
  9813. 48904: 39cf883a add r7,r7,r7
  9814. 48908: 10c7883a add r3,r2,r3
  9815. 4890c: 21cf883a add r7,r4,r7
  9816. 48910: 10c00d2e bgeu r2,r3,48948 <__copybits+0x64>
  9817. 48914: 200b883a mov r5,r4
  9818. 48918: 12000017 ldw r8,0(r2)
  9819. 4891c: 29400104 addi r5,r5,4
  9820. 48920: 10800104 addi r2,r2,4
  9821. 48924: 2a3fff15 stw r8,-4(r5)
  9822. 48928: 10fffb36 bltu r2,r3,48918 <__alt_data_end+0xfffd6918>
  9823. 4892c: 1985c83a sub r2,r3,r6
  9824. 48930: 10bffac4 addi r2,r2,-21
  9825. 48934: 1004d0ba srli r2,r2,2
  9826. 48938: 10800044 addi r2,r2,1
  9827. 4893c: 1085883a add r2,r2,r2
  9828. 48940: 1085883a add r2,r2,r2
  9829. 48944: 2089883a add r4,r4,r2
  9830. 48948: 21c0032e bgeu r4,r7,48958 <__copybits+0x74>
  9831. 4894c: 20000015 stw zero,0(r4)
  9832. 48950: 21000104 addi r4,r4,4
  9833. 48954: 21fffd36 bltu r4,r7,4894c <__alt_data_end+0xfffd694c>
  9834. 48958: f800283a ret
  9835. 0004895c <__any_on>:
  9836. 4895c: 20c00417 ldw r3,16(r4)
  9837. 48960: 2805d17a srai r2,r5,5
  9838. 48964: 21000504 addi r4,r4,20
  9839. 48968: 18800d0e bge r3,r2,489a0 <__any_on+0x44>
  9840. 4896c: 18c7883a add r3,r3,r3
  9841. 48970: 18c7883a add r3,r3,r3
  9842. 48974: 20c7883a add r3,r4,r3
  9843. 48978: 20c0192e bgeu r4,r3,489e0 <__any_on+0x84>
  9844. 4897c: 18bfff17 ldw r2,-4(r3)
  9845. 48980: 18ffff04 addi r3,r3,-4
  9846. 48984: 1000041e bne r2,zero,48998 <__any_on+0x3c>
  9847. 48988: 20c0142e bgeu r4,r3,489dc <__any_on+0x80>
  9848. 4898c: 18ffff04 addi r3,r3,-4
  9849. 48990: 19400017 ldw r5,0(r3)
  9850. 48994: 283ffc26 beq r5,zero,48988 <__alt_data_end+0xfffd6988>
  9851. 48998: 00800044 movi r2,1
  9852. 4899c: f800283a ret
  9853. 489a0: 10c00a0e bge r2,r3,489cc <__any_on+0x70>
  9854. 489a4: 1085883a add r2,r2,r2
  9855. 489a8: 1085883a add r2,r2,r2
  9856. 489ac: 294007cc andi r5,r5,31
  9857. 489b0: 2087883a add r3,r4,r2
  9858. 489b4: 283ff026 beq r5,zero,48978 <__alt_data_end+0xfffd6978>
  9859. 489b8: 19800017 ldw r6,0(r3)
  9860. 489bc: 3144d83a srl r2,r6,r5
  9861. 489c0: 114a983a sll r5,r2,r5
  9862. 489c4: 317ff41e bne r6,r5,48998 <__alt_data_end+0xfffd6998>
  9863. 489c8: 003feb06 br 48978 <__alt_data_end+0xfffd6978>
  9864. 489cc: 1085883a add r2,r2,r2
  9865. 489d0: 1085883a add r2,r2,r2
  9866. 489d4: 2087883a add r3,r4,r2
  9867. 489d8: 003fe706 br 48978 <__alt_data_end+0xfffd6978>
  9868. 489dc: f800283a ret
  9869. 489e0: 0005883a mov r2,zero
  9870. 489e4: f800283a ret
  9871. 000489e8 <_putc_r>:
  9872. 489e8: defffc04 addi sp,sp,-16
  9873. 489ec: dc000215 stw r16,8(sp)
  9874. 489f0: dfc00315 stw ra,12(sp)
  9875. 489f4: 2021883a mov r16,r4
  9876. 489f8: 20000226 beq r4,zero,48a04 <_putc_r+0x1c>
  9877. 489fc: 20800e17 ldw r2,56(r4)
  9878. 48a00: 10001b26 beq r2,zero,48a70 <_putc_r+0x88>
  9879. 48a04: 30800217 ldw r2,8(r6)
  9880. 48a08: 10bfffc4 addi r2,r2,-1
  9881. 48a0c: 30800215 stw r2,8(r6)
  9882. 48a10: 10000a16 blt r2,zero,48a3c <_putc_r+0x54>
  9883. 48a14: 30800017 ldw r2,0(r6)
  9884. 48a18: 11400005 stb r5,0(r2)
  9885. 48a1c: 30800017 ldw r2,0(r6)
  9886. 48a20: 10c00044 addi r3,r2,1
  9887. 48a24: 30c00015 stw r3,0(r6)
  9888. 48a28: 10800003 ldbu r2,0(r2)
  9889. 48a2c: dfc00317 ldw ra,12(sp)
  9890. 48a30: dc000217 ldw r16,8(sp)
  9891. 48a34: dec00404 addi sp,sp,16
  9892. 48a38: f800283a ret
  9893. 48a3c: 30c00617 ldw r3,24(r6)
  9894. 48a40: 10c00616 blt r2,r3,48a5c <_putc_r+0x74>
  9895. 48a44: 30800017 ldw r2,0(r6)
  9896. 48a48: 00c00284 movi r3,10
  9897. 48a4c: 11400005 stb r5,0(r2)
  9898. 48a50: 30800017 ldw r2,0(r6)
  9899. 48a54: 11400003 ldbu r5,0(r2)
  9900. 48a58: 28fff11e bne r5,r3,48a20 <__alt_data_end+0xfffd6a20>
  9901. 48a5c: 8009883a mov r4,r16
  9902. 48a60: dfc00317 ldw ra,12(sp)
  9903. 48a64: dc000217 ldw r16,8(sp)
  9904. 48a68: dec00404 addi sp,sp,16
  9905. 48a6c: 004a7b01 jmpi 4a7b0 <__swbuf_r>
  9906. 48a70: d9400015 stw r5,0(sp)
  9907. 48a74: d9800115 stw r6,4(sp)
  9908. 48a78: 004652c0 call 4652c <__sinit>
  9909. 48a7c: d9800117 ldw r6,4(sp)
  9910. 48a80: d9400017 ldw r5,0(sp)
  9911. 48a84: 003fdf06 br 48a04 <__alt_data_end+0xfffd6a04>
  9912. 00048a88 <putc>:
  9913. 48a88: 00800174 movhi r2,5
  9914. 48a8c: defffc04 addi sp,sp,-16
  9915. 48a90: 10908b04 addi r2,r2,16940
  9916. 48a94: dc000115 stw r16,4(sp)
  9917. 48a98: 14000017 ldw r16,0(r2)
  9918. 48a9c: dc400215 stw r17,8(sp)
  9919. 48aa0: dfc00315 stw ra,12(sp)
  9920. 48aa4: 2023883a mov r17,r4
  9921. 48aa8: 80000226 beq r16,zero,48ab4 <putc+0x2c>
  9922. 48aac: 80800e17 ldw r2,56(r16)
  9923. 48ab0: 10001a26 beq r2,zero,48b1c <putc+0x94>
  9924. 48ab4: 28800217 ldw r2,8(r5)
  9925. 48ab8: 10bfffc4 addi r2,r2,-1
  9926. 48abc: 28800215 stw r2,8(r5)
  9927. 48ac0: 10000b16 blt r2,zero,48af0 <putc+0x68>
  9928. 48ac4: 28800017 ldw r2,0(r5)
  9929. 48ac8: 14400005 stb r17,0(r2)
  9930. 48acc: 28800017 ldw r2,0(r5)
  9931. 48ad0: 10c00044 addi r3,r2,1
  9932. 48ad4: 28c00015 stw r3,0(r5)
  9933. 48ad8: 10800003 ldbu r2,0(r2)
  9934. 48adc: dfc00317 ldw ra,12(sp)
  9935. 48ae0: dc400217 ldw r17,8(sp)
  9936. 48ae4: dc000117 ldw r16,4(sp)
  9937. 48ae8: dec00404 addi sp,sp,16
  9938. 48aec: f800283a ret
  9939. 48af0: 28c00617 ldw r3,24(r5)
  9940. 48af4: 10c00e16 blt r2,r3,48b30 <putc+0xa8>
  9941. 48af8: 28800017 ldw r2,0(r5)
  9942. 48afc: 01000284 movi r4,10
  9943. 48b00: 14400005 stb r17,0(r2)
  9944. 48b04: 28800017 ldw r2,0(r5)
  9945. 48b08: 10c00003 ldbu r3,0(r2)
  9946. 48b0c: 193ff01e bne r3,r4,48ad0 <__alt_data_end+0xfffd6ad0>
  9947. 48b10: 280d883a mov r6,r5
  9948. 48b14: 180b883a mov r5,r3
  9949. 48b18: 00000706 br 48b38 <putc+0xb0>
  9950. 48b1c: 8009883a mov r4,r16
  9951. 48b20: d9400015 stw r5,0(sp)
  9952. 48b24: 004652c0 call 4652c <__sinit>
  9953. 48b28: d9400017 ldw r5,0(sp)
  9954. 48b2c: 003fe106 br 48ab4 <__alt_data_end+0xfffd6ab4>
  9955. 48b30: 280d883a mov r6,r5
  9956. 48b34: 880b883a mov r5,r17
  9957. 48b38: 8009883a mov r4,r16
  9958. 48b3c: dfc00317 ldw ra,12(sp)
  9959. 48b40: dc400217 ldw r17,8(sp)
  9960. 48b44: dc000117 ldw r16,4(sp)
  9961. 48b48: dec00404 addi sp,sp,16
  9962. 48b4c: 004a7b01 jmpi 4a7b0 <__swbuf_r>
  9963. 00048b50 <lflush>:
  9964. 48b50: 2080030b ldhu r2,12(r4)
  9965. 48b54: 00c00244 movi r3,9
  9966. 48b58: 1080024c andi r2,r2,9
  9967. 48b5c: 10c00226 beq r2,r3,48b68 <lflush+0x18>
  9968. 48b60: 0005883a mov r2,zero
  9969. 48b64: f800283a ret
  9970. 48b68: 004619c1 jmpi 4619c <fflush>
  9971. 00048b6c <__srefill_r>:
  9972. 48b6c: defffc04 addi sp,sp,-16
  9973. 48b70: dc400115 stw r17,4(sp)
  9974. 48b74: dc000015 stw r16,0(sp)
  9975. 48b78: dfc00315 stw ra,12(sp)
  9976. 48b7c: dc800215 stw r18,8(sp)
  9977. 48b80: 2023883a mov r17,r4
  9978. 48b84: 2821883a mov r16,r5
  9979. 48b88: 20000226 beq r4,zero,48b94 <__srefill_r+0x28>
  9980. 48b8c: 20800e17 ldw r2,56(r4)
  9981. 48b90: 10003c26 beq r2,zero,48c84 <__srefill_r+0x118>
  9982. 48b94: 80c0030b ldhu r3,12(r16)
  9983. 48b98: 1908000c andi r4,r3,8192
  9984. 48b9c: 1805883a mov r2,r3
  9985. 48ba0: 2000071e bne r4,zero,48bc0 <__srefill_r+0x54>
  9986. 48ba4: 81001917 ldw r4,100(r16)
  9987. 48ba8: 18880014 ori r2,r3,8192
  9988. 48bac: 00f7ffc4 movi r3,-8193
  9989. 48bb0: 20c8703a and r4,r4,r3
  9990. 48bb4: 8080030d sth r2,12(r16)
  9991. 48bb8: 1007883a mov r3,r2
  9992. 48bbc: 81001915 stw r4,100(r16)
  9993. 48bc0: 80000115 stw zero,4(r16)
  9994. 48bc4: 1100080c andi r4,r2,32
  9995. 48bc8: 2000571e bne r4,zero,48d28 <__srefill_r+0x1bc>
  9996. 48bcc: 1100010c andi r4,r2,4
  9997. 48bd0: 20001f26 beq r4,zero,48c50 <__srefill_r+0xe4>
  9998. 48bd4: 81400c17 ldw r5,48(r16)
  9999. 48bd8: 28000826 beq r5,zero,48bfc <__srefill_r+0x90>
  10000. 48bdc: 80801004 addi r2,r16,64
  10001. 48be0: 28800226 beq r5,r2,48bec <__srefill_r+0x80>
  10002. 48be4: 8809883a mov r4,r17
  10003. 48be8: 00466a00 call 466a0 <_free_r>
  10004. 48bec: 80800f17 ldw r2,60(r16)
  10005. 48bf0: 80000c15 stw zero,48(r16)
  10006. 48bf4: 80800115 stw r2,4(r16)
  10007. 48bf8: 1000391e bne r2,zero,48ce0 <__srefill_r+0x174>
  10008. 48bfc: 80800417 ldw r2,16(r16)
  10009. 48c00: 10004b26 beq r2,zero,48d30 <__srefill_r+0x1c4>
  10010. 48c04: 8480030b ldhu r18,12(r16)
  10011. 48c08: 908000cc andi r2,r18,3
  10012. 48c0c: 10001f1e bne r2,zero,48c8c <__srefill_r+0x120>
  10013. 48c10: 81800417 ldw r6,16(r16)
  10014. 48c14: 80800817 ldw r2,32(r16)
  10015. 48c18: 81c00517 ldw r7,20(r16)
  10016. 48c1c: 81400717 ldw r5,28(r16)
  10017. 48c20: 81800015 stw r6,0(r16)
  10018. 48c24: 8809883a mov r4,r17
  10019. 48c28: 103ee83a callr r2
  10020. 48c2c: 80800115 stw r2,4(r16)
  10021. 48c30: 00800e0e bge zero,r2,48c6c <__srefill_r+0x100>
  10022. 48c34: 0005883a mov r2,zero
  10023. 48c38: dfc00317 ldw ra,12(sp)
  10024. 48c3c: dc800217 ldw r18,8(sp)
  10025. 48c40: dc400117 ldw r17,4(sp)
  10026. 48c44: dc000017 ldw r16,0(sp)
  10027. 48c48: dec00404 addi sp,sp,16
  10028. 48c4c: f800283a ret
  10029. 48c50: 1100040c andi r4,r2,16
  10030. 48c54: 20003026 beq r4,zero,48d18 <__srefill_r+0x1ac>
  10031. 48c58: 1080020c andi r2,r2,8
  10032. 48c5c: 1000241e bne r2,zero,48cf0 <__srefill_r+0x184>
  10033. 48c60: 18c00114 ori r3,r3,4
  10034. 48c64: 80c0030d sth r3,12(r16)
  10035. 48c68: 003fe406 br 48bfc <__alt_data_end+0xfffd6bfc>
  10036. 48c6c: 80c0030b ldhu r3,12(r16)
  10037. 48c70: 1000161e bne r2,zero,48ccc <__srefill_r+0x160>
  10038. 48c74: 18c00814 ori r3,r3,32
  10039. 48c78: 00bfffc4 movi r2,-1
  10040. 48c7c: 80c0030d sth r3,12(r16)
  10041. 48c80: 003fed06 br 48c38 <__alt_data_end+0xfffd6c38>
  10042. 48c84: 004652c0 call 4652c <__sinit>
  10043. 48c88: 003fc206 br 48b94 <__alt_data_end+0xfffd6b94>
  10044. 48c8c: 00800174 movhi r2,5
  10045. 48c90: 10908a04 addi r2,r2,16936
  10046. 48c94: 11000017 ldw r4,0(r2)
  10047. 48c98: 01400174 movhi r5,5
  10048. 48c9c: 00800044 movi r2,1
  10049. 48ca0: 2962d404 addi r5,r5,-29872
  10050. 48ca4: 8080030d sth r2,12(r16)
  10051. 48ca8: 00469b00 call 469b0 <_fwalk>
  10052. 48cac: 00800244 movi r2,9
  10053. 48cb0: 8480030d sth r18,12(r16)
  10054. 48cb4: 9480024c andi r18,r18,9
  10055. 48cb8: 90bfd51e bne r18,r2,48c10 <__alt_data_end+0xfffd6c10>
  10056. 48cbc: 800b883a mov r5,r16
  10057. 48cc0: 8809883a mov r4,r17
  10058. 48cc4: 0045f240 call 45f24 <__sflush_r>
  10059. 48cc8: 003fd106 br 48c10 <__alt_data_end+0xfffd6c10>
  10060. 48ccc: 18c01014 ori r3,r3,64
  10061. 48cd0: 80000115 stw zero,4(r16)
  10062. 48cd4: 00bfffc4 movi r2,-1
  10063. 48cd8: 80c0030d sth r3,12(r16)
  10064. 48cdc: 003fd606 br 48c38 <__alt_data_end+0xfffd6c38>
  10065. 48ce0: 80c00e17 ldw r3,56(r16)
  10066. 48ce4: 0005883a mov r2,zero
  10067. 48ce8: 80c00015 stw r3,0(r16)
  10068. 48cec: 003fd206 br 48c38 <__alt_data_end+0xfffd6c38>
  10069. 48cf0: 800b883a mov r5,r16
  10070. 48cf4: 8809883a mov r4,r17
  10071. 48cf8: 00461400 call 46140 <_fflush_r>
  10072. 48cfc: 10000a1e bne r2,zero,48d28 <__srefill_r+0x1bc>
  10073. 48d00: 8080030b ldhu r2,12(r16)
  10074. 48d04: 00fffdc4 movi r3,-9
  10075. 48d08: 80000215 stw zero,8(r16)
  10076. 48d0c: 1886703a and r3,r3,r2
  10077. 48d10: 80000615 stw zero,24(r16)
  10078. 48d14: 003fd206 br 48c60 <__alt_data_end+0xfffd6c60>
  10079. 48d18: 00800244 movi r2,9
  10080. 48d1c: 88800015 stw r2,0(r17)
  10081. 48d20: 18c01014 ori r3,r3,64
  10082. 48d24: 80c0030d sth r3,12(r16)
  10083. 48d28: 00bfffc4 movi r2,-1
  10084. 48d2c: 003fc206 br 48c38 <__alt_data_end+0xfffd6c38>
  10085. 48d30: 800b883a mov r5,r16
  10086. 48d34: 8809883a mov r4,r17
  10087. 48d38: 0046c140 call 46c14 <__smakebuf_r>
  10088. 48d3c: 003fb106 br 48c04 <__alt_data_end+0xfffd6c04>
  10089. 00048d40 <__fpclassifyd>:
  10090. 48d40: 00a00034 movhi r2,32768
  10091. 48d44: 10bfffc4 addi r2,r2,-1
  10092. 48d48: 2884703a and r2,r5,r2
  10093. 48d4c: 10000726 beq r2,zero,48d6c <__fpclassifyd+0x2c>
  10094. 48d50: 00fffc34 movhi r3,65520
  10095. 48d54: 019ff834 movhi r6,32736
  10096. 48d58: 28c7883a add r3,r5,r3
  10097. 48d5c: 31bfffc4 addi r6,r6,-1
  10098. 48d60: 30c00536 bltu r6,r3,48d78 <__fpclassifyd+0x38>
  10099. 48d64: 00800104 movi r2,4
  10100. 48d68: f800283a ret
  10101. 48d6c: 2000021e bne r4,zero,48d78 <__fpclassifyd+0x38>
  10102. 48d70: 00800084 movi r2,2
  10103. 48d74: f800283a ret
  10104. 48d78: 00dffc34 movhi r3,32752
  10105. 48d7c: 019ff834 movhi r6,32736
  10106. 48d80: 28cb883a add r5,r5,r3
  10107. 48d84: 31bfffc4 addi r6,r6,-1
  10108. 48d88: 317ff62e bgeu r6,r5,48d64 <__alt_data_end+0xfffd6d64>
  10109. 48d8c: 01400434 movhi r5,16
  10110. 48d90: 297fffc4 addi r5,r5,-1
  10111. 48d94: 28800236 bltu r5,r2,48da0 <__fpclassifyd+0x60>
  10112. 48d98: 008000c4 movi r2,3
  10113. 48d9c: f800283a ret
  10114. 48da0: 10c00226 beq r2,r3,48dac <__fpclassifyd+0x6c>
  10115. 48da4: 0005883a mov r2,zero
  10116. 48da8: f800283a ret
  10117. 48dac: 2005003a cmpeq r2,r4,zero
  10118. 48db0: f800283a ret
  10119. 00048db4 <_sbrk_r>:
  10120. 48db4: defffd04 addi sp,sp,-12
  10121. 48db8: dc000015 stw r16,0(sp)
  10122. 48dbc: 04000174 movhi r16,5
  10123. 48dc0: dc400115 stw r17,4(sp)
  10124. 48dc4: 8417ab04 addi r16,r16,24236
  10125. 48dc8: 2023883a mov r17,r4
  10126. 48dcc: 2809883a mov r4,r5
  10127. 48dd0: dfc00215 stw ra,8(sp)
  10128. 48dd4: 80000015 stw zero,0(r16)
  10129. 48dd8: 004f0000 call 4f000 <sbrk>
  10130. 48ddc: 00ffffc4 movi r3,-1
  10131. 48de0: 10c00526 beq r2,r3,48df8 <_sbrk_r+0x44>
  10132. 48de4: dfc00217 ldw ra,8(sp)
  10133. 48de8: dc400117 ldw r17,4(sp)
  10134. 48dec: dc000017 ldw r16,0(sp)
  10135. 48df0: dec00304 addi sp,sp,12
  10136. 48df4: f800283a ret
  10137. 48df8: 80c00017 ldw r3,0(r16)
  10138. 48dfc: 183ff926 beq r3,zero,48de4 <__alt_data_end+0xfffd6de4>
  10139. 48e00: 88c00015 stw r3,0(r17)
  10140. 48e04: 003ff706 br 48de4 <__alt_data_end+0xfffd6de4>
  10141. 00048e08 <__sread>:
  10142. 48e08: defffe04 addi sp,sp,-8
  10143. 48e0c: dc000015 stw r16,0(sp)
  10144. 48e10: 2821883a mov r16,r5
  10145. 48e14: 2940038f ldh r5,14(r5)
  10146. 48e18: dfc00115 stw ra,4(sp)
  10147. 48e1c: 004b4d80 call 4b4d8 <_read_r>
  10148. 48e20: 10000716 blt r2,zero,48e40 <__sread+0x38>
  10149. 48e24: 80c01417 ldw r3,80(r16)
  10150. 48e28: 1887883a add r3,r3,r2
  10151. 48e2c: 80c01415 stw r3,80(r16)
  10152. 48e30: dfc00117 ldw ra,4(sp)
  10153. 48e34: dc000017 ldw r16,0(sp)
  10154. 48e38: dec00204 addi sp,sp,8
  10155. 48e3c: f800283a ret
  10156. 48e40: 80c0030b ldhu r3,12(r16)
  10157. 48e44: 18fbffcc andi r3,r3,61439
  10158. 48e48: 80c0030d sth r3,12(r16)
  10159. 48e4c: dfc00117 ldw ra,4(sp)
  10160. 48e50: dc000017 ldw r16,0(sp)
  10161. 48e54: dec00204 addi sp,sp,8
  10162. 48e58: f800283a ret
  10163. 00048e5c <__seofread>:
  10164. 48e5c: 0005883a mov r2,zero
  10165. 48e60: f800283a ret
  10166. 00048e64 <__swrite>:
  10167. 48e64: 2880030b ldhu r2,12(r5)
  10168. 48e68: defffb04 addi sp,sp,-20
  10169. 48e6c: dcc00315 stw r19,12(sp)
  10170. 48e70: dc800215 stw r18,8(sp)
  10171. 48e74: dc400115 stw r17,4(sp)
  10172. 48e78: dc000015 stw r16,0(sp)
  10173. 48e7c: dfc00415 stw ra,16(sp)
  10174. 48e80: 10c0400c andi r3,r2,256
  10175. 48e84: 2821883a mov r16,r5
  10176. 48e88: 2023883a mov r17,r4
  10177. 48e8c: 3025883a mov r18,r6
  10178. 48e90: 3827883a mov r19,r7
  10179. 48e94: 18000526 beq r3,zero,48eac <__swrite+0x48>
  10180. 48e98: 2940038f ldh r5,14(r5)
  10181. 48e9c: 01c00084 movi r7,2
  10182. 48ea0: 000d883a mov r6,zero
  10183. 48ea4: 004b31c0 call 4b31c <_lseek_r>
  10184. 48ea8: 8080030b ldhu r2,12(r16)
  10185. 48eac: 8140038f ldh r5,14(r16)
  10186. 48eb0: 10bbffcc andi r2,r2,61439
  10187. 48eb4: 980f883a mov r7,r19
  10188. 48eb8: 900d883a mov r6,r18
  10189. 48ebc: 8809883a mov r4,r17
  10190. 48ec0: 8080030d sth r2,12(r16)
  10191. 48ec4: dfc00417 ldw ra,16(sp)
  10192. 48ec8: dcc00317 ldw r19,12(sp)
  10193. 48ecc: dc800217 ldw r18,8(sp)
  10194. 48ed0: dc400117 ldw r17,4(sp)
  10195. 48ed4: dc000017 ldw r16,0(sp)
  10196. 48ed8: dec00504 addi sp,sp,20
  10197. 48edc: 004a9081 jmpi 4a908 <_write_r>
  10198. 00048ee0 <__sseek>:
  10199. 48ee0: defffe04 addi sp,sp,-8
  10200. 48ee4: dc000015 stw r16,0(sp)
  10201. 48ee8: 2821883a mov r16,r5
  10202. 48eec: 2940038f ldh r5,14(r5)
  10203. 48ef0: dfc00115 stw ra,4(sp)
  10204. 48ef4: 004b31c0 call 4b31c <_lseek_r>
  10205. 48ef8: 00ffffc4 movi r3,-1
  10206. 48efc: 10c00826 beq r2,r3,48f20 <__sseek+0x40>
  10207. 48f00: 80c0030b ldhu r3,12(r16)
  10208. 48f04: 80801415 stw r2,80(r16)
  10209. 48f08: 18c40014 ori r3,r3,4096
  10210. 48f0c: 80c0030d sth r3,12(r16)
  10211. 48f10: dfc00117 ldw ra,4(sp)
  10212. 48f14: dc000017 ldw r16,0(sp)
  10213. 48f18: dec00204 addi sp,sp,8
  10214. 48f1c: f800283a ret
  10215. 48f20: 80c0030b ldhu r3,12(r16)
  10216. 48f24: 18fbffcc andi r3,r3,61439
  10217. 48f28: 80c0030d sth r3,12(r16)
  10218. 48f2c: dfc00117 ldw ra,4(sp)
  10219. 48f30: dc000017 ldw r16,0(sp)
  10220. 48f34: dec00204 addi sp,sp,8
  10221. 48f38: f800283a ret
  10222. 00048f3c <__sclose>:
  10223. 48f3c: 2940038f ldh r5,14(r5)
  10224. 48f40: 004a9681 jmpi 4a968 <_close_r>
  10225. 00048f44 <strcmp>:
  10226. 48f44: 2144b03a or r2,r4,r5
  10227. 48f48: 108000cc andi r2,r2,3
  10228. 48f4c: 1000171e bne r2,zero,48fac <strcmp+0x68>
  10229. 48f50: 20800017 ldw r2,0(r4)
  10230. 48f54: 28c00017 ldw r3,0(r5)
  10231. 48f58: 10c0141e bne r2,r3,48fac <strcmp+0x68>
  10232. 48f5c: 027fbff4 movhi r9,65279
  10233. 48f60: 4a7fbfc4 addi r9,r9,-257
  10234. 48f64: 0086303a nor r3,zero,r2
  10235. 48f68: 02202074 movhi r8,32897
  10236. 48f6c: 1245883a add r2,r2,r9
  10237. 48f70: 42202004 addi r8,r8,-32640
  10238. 48f74: 10c4703a and r2,r2,r3
  10239. 48f78: 1204703a and r2,r2,r8
  10240. 48f7c: 10000226 beq r2,zero,48f88 <strcmp+0x44>
  10241. 48f80: 00002306 br 49010 <strcmp+0xcc>
  10242. 48f84: 1000221e bne r2,zero,49010 <strcmp+0xcc>
  10243. 48f88: 21000104 addi r4,r4,4
  10244. 48f8c: 20c00017 ldw r3,0(r4)
  10245. 48f90: 29400104 addi r5,r5,4
  10246. 48f94: 29800017 ldw r6,0(r5)
  10247. 48f98: 1a4f883a add r7,r3,r9
  10248. 48f9c: 00c4303a nor r2,zero,r3
  10249. 48fa0: 3884703a and r2,r7,r2
  10250. 48fa4: 1204703a and r2,r2,r8
  10251. 48fa8: 19bff626 beq r3,r6,48f84 <__alt_data_end+0xfffd6f84>
  10252. 48fac: 20800003 ldbu r2,0(r4)
  10253. 48fb0: 10c03fcc andi r3,r2,255
  10254. 48fb4: 18c0201c xori r3,r3,128
  10255. 48fb8: 18ffe004 addi r3,r3,-128
  10256. 48fbc: 18000c26 beq r3,zero,48ff0 <strcmp+0xac>
  10257. 48fc0: 29800007 ldb r6,0(r5)
  10258. 48fc4: 19800326 beq r3,r6,48fd4 <strcmp+0x90>
  10259. 48fc8: 00001306 br 49018 <strcmp+0xd4>
  10260. 48fcc: 29800007 ldb r6,0(r5)
  10261. 48fd0: 11800b1e bne r2,r6,49000 <strcmp+0xbc>
  10262. 48fd4: 21000044 addi r4,r4,1
  10263. 48fd8: 20c00003 ldbu r3,0(r4)
  10264. 48fdc: 29400044 addi r5,r5,1
  10265. 48fe0: 18803fcc andi r2,r3,255
  10266. 48fe4: 1080201c xori r2,r2,128
  10267. 48fe8: 10bfe004 addi r2,r2,-128
  10268. 48fec: 103ff71e bne r2,zero,48fcc <__alt_data_end+0xfffd6fcc>
  10269. 48ff0: 0007883a mov r3,zero
  10270. 48ff4: 28800003 ldbu r2,0(r5)
  10271. 48ff8: 1885c83a sub r2,r3,r2
  10272. 48ffc: f800283a ret
  10273. 49000: 28800003 ldbu r2,0(r5)
  10274. 49004: 18c03fcc andi r3,r3,255
  10275. 49008: 1885c83a sub r2,r3,r2
  10276. 4900c: f800283a ret
  10277. 49010: 0005883a mov r2,zero
  10278. 49014: f800283a ret
  10279. 49018: 10c03fcc andi r3,r2,255
  10280. 4901c: 003ff506 br 48ff4 <__alt_data_end+0xfffd6ff4>
  10281. 00049020 <strlen>:
  10282. 49020: 208000cc andi r2,r4,3
  10283. 49024: 10002026 beq r2,zero,490a8 <strlen+0x88>
  10284. 49028: 20800007 ldb r2,0(r4)
  10285. 4902c: 10002026 beq r2,zero,490b0 <strlen+0x90>
  10286. 49030: 2005883a mov r2,r4
  10287. 49034: 00000206 br 49040 <strlen+0x20>
  10288. 49038: 10c00007 ldb r3,0(r2)
  10289. 4903c: 18001826 beq r3,zero,490a0 <strlen+0x80>
  10290. 49040: 10800044 addi r2,r2,1
  10291. 49044: 10c000cc andi r3,r2,3
  10292. 49048: 183ffb1e bne r3,zero,49038 <__alt_data_end+0xfffd7038>
  10293. 4904c: 10c00017 ldw r3,0(r2)
  10294. 49050: 01ffbff4 movhi r7,65279
  10295. 49054: 39ffbfc4 addi r7,r7,-257
  10296. 49058: 00ca303a nor r5,zero,r3
  10297. 4905c: 01a02074 movhi r6,32897
  10298. 49060: 19c7883a add r3,r3,r7
  10299. 49064: 31a02004 addi r6,r6,-32640
  10300. 49068: 1946703a and r3,r3,r5
  10301. 4906c: 1986703a and r3,r3,r6
  10302. 49070: 1800091e bne r3,zero,49098 <strlen+0x78>
  10303. 49074: 10800104 addi r2,r2,4
  10304. 49078: 10c00017 ldw r3,0(r2)
  10305. 4907c: 19cb883a add r5,r3,r7
  10306. 49080: 00c6303a nor r3,zero,r3
  10307. 49084: 28c6703a and r3,r5,r3
  10308. 49088: 1986703a and r3,r3,r6
  10309. 4908c: 183ff926 beq r3,zero,49074 <__alt_data_end+0xfffd7074>
  10310. 49090: 00000106 br 49098 <strlen+0x78>
  10311. 49094: 10800044 addi r2,r2,1
  10312. 49098: 10c00007 ldb r3,0(r2)
  10313. 4909c: 183ffd1e bne r3,zero,49094 <__alt_data_end+0xfffd7094>
  10314. 490a0: 1105c83a sub r2,r2,r4
  10315. 490a4: f800283a ret
  10316. 490a8: 2005883a mov r2,r4
  10317. 490ac: 003fe706 br 4904c <__alt_data_end+0xfffd704c>
  10318. 490b0: 0005883a mov r2,zero
  10319. 490b4: f800283a ret
  10320. 000490b8 <__sprint_r.part.0>:
  10321. 490b8: 28801917 ldw r2,100(r5)
  10322. 490bc: defff604 addi sp,sp,-40
  10323. 490c0: dd400515 stw r21,20(sp)
  10324. 490c4: dfc00915 stw ra,36(sp)
  10325. 490c8: df000815 stw fp,32(sp)
  10326. 490cc: ddc00715 stw r23,28(sp)
  10327. 490d0: dd800615 stw r22,24(sp)
  10328. 490d4: dd000415 stw r20,16(sp)
  10329. 490d8: dcc00315 stw r19,12(sp)
  10330. 490dc: dc800215 stw r18,8(sp)
  10331. 490e0: dc400115 stw r17,4(sp)
  10332. 490e4: dc000015 stw r16,0(sp)
  10333. 490e8: 1088000c andi r2,r2,8192
  10334. 490ec: 302b883a mov r21,r6
  10335. 490f0: 10002e26 beq r2,zero,491ac <__sprint_r.part.0+0xf4>
  10336. 490f4: 30800217 ldw r2,8(r6)
  10337. 490f8: 35800017 ldw r22,0(r6)
  10338. 490fc: 10002926 beq r2,zero,491a4 <__sprint_r.part.0+0xec>
  10339. 49100: 2827883a mov r19,r5
  10340. 49104: 2029883a mov r20,r4
  10341. 49108: b5c00104 addi r23,r22,4
  10342. 4910c: 04bfffc4 movi r18,-1
  10343. 49110: bc400017 ldw r17,0(r23)
  10344. 49114: b4000017 ldw r16,0(r22)
  10345. 49118: 0039883a mov fp,zero
  10346. 4911c: 8822d0ba srli r17,r17,2
  10347. 49120: 8800031e bne r17,zero,49130 <__sprint_r.part.0+0x78>
  10348. 49124: 00001806 br 49188 <__sprint_r.part.0+0xd0>
  10349. 49128: 84000104 addi r16,r16,4
  10350. 4912c: 8f001526 beq r17,fp,49184 <__sprint_r.part.0+0xcc>
  10351. 49130: 81400017 ldw r5,0(r16)
  10352. 49134: 980d883a mov r6,r19
  10353. 49138: a009883a mov r4,r20
  10354. 4913c: 004ad000 call 4ad00 <_fputwc_r>
  10355. 49140: e7000044 addi fp,fp,1
  10356. 49144: 14bff81e bne r2,r18,49128 <__alt_data_end+0xfffd7128>
  10357. 49148: 9005883a mov r2,r18
  10358. 4914c: a8000215 stw zero,8(r21)
  10359. 49150: a8000115 stw zero,4(r21)
  10360. 49154: dfc00917 ldw ra,36(sp)
  10361. 49158: df000817 ldw fp,32(sp)
  10362. 4915c: ddc00717 ldw r23,28(sp)
  10363. 49160: dd800617 ldw r22,24(sp)
  10364. 49164: dd400517 ldw r21,20(sp)
  10365. 49168: dd000417 ldw r20,16(sp)
  10366. 4916c: dcc00317 ldw r19,12(sp)
  10367. 49170: dc800217 ldw r18,8(sp)
  10368. 49174: dc400117 ldw r17,4(sp)
  10369. 49178: dc000017 ldw r16,0(sp)
  10370. 4917c: dec00a04 addi sp,sp,40
  10371. 49180: f800283a ret
  10372. 49184: a8800217 ldw r2,8(r21)
  10373. 49188: 8c63883a add r17,r17,r17
  10374. 4918c: 8c63883a add r17,r17,r17
  10375. 49190: 1445c83a sub r2,r2,r17
  10376. 49194: a8800215 stw r2,8(r21)
  10377. 49198: b5800204 addi r22,r22,8
  10378. 4919c: bdc00204 addi r23,r23,8
  10379. 491a0: 103fdb1e bne r2,zero,49110 <__alt_data_end+0xfffd7110>
  10380. 491a4: 0005883a mov r2,zero
  10381. 491a8: 003fe806 br 4914c <__alt_data_end+0xfffd714c>
  10382. 491ac: 004ae000 call 4ae00 <__sfvwrite_r>
  10383. 491b0: 003fe606 br 4914c <__alt_data_end+0xfffd714c>
  10384. 000491b4 <__sprint_r>:
  10385. 491b4: 30c00217 ldw r3,8(r6)
  10386. 491b8: 18000126 beq r3,zero,491c0 <__sprint_r+0xc>
  10387. 491bc: 00490b81 jmpi 490b8 <__sprint_r.part.0>
  10388. 491c0: 30000115 stw zero,4(r6)
  10389. 491c4: 0005883a mov r2,zero
  10390. 491c8: f800283a ret
  10391. 000491cc <___vfiprintf_internal_r>:
  10392. 491cc: deffca04 addi sp,sp,-216
  10393. 491d0: dd403115 stw r21,196(sp)
  10394. 491d4: dfc03515 stw ra,212(sp)
  10395. 491d8: df003415 stw fp,208(sp)
  10396. 491dc: ddc03315 stw r23,204(sp)
  10397. 491e0: dd803215 stw r22,200(sp)
  10398. 491e4: dd003015 stw r20,192(sp)
  10399. 491e8: dcc02f15 stw r19,188(sp)
  10400. 491ec: dc802e15 stw r18,184(sp)
  10401. 491f0: dc402d15 stw r17,180(sp)
  10402. 491f4: dc002c15 stw r16,176(sp)
  10403. 491f8: d9002115 stw r4,132(sp)
  10404. 491fc: d9402015 stw r5,128(sp)
  10405. 49200: d9c02215 stw r7,136(sp)
  10406. 49204: 302b883a mov r21,r6
  10407. 49208: 20000226 beq r4,zero,49214 <___vfiprintf_internal_r+0x48>
  10408. 4920c: 20800e17 ldw r2,56(r4)
  10409. 49210: 1000cf26 beq r2,zero,49550 <___vfiprintf_internal_r+0x384>
  10410. 49214: d8c02017 ldw r3,128(sp)
  10411. 49218: 1880030b ldhu r2,12(r3)
  10412. 4921c: 10c8000c andi r3,r2,8192
  10413. 49220: 1800071e bne r3,zero,49240 <___vfiprintf_internal_r+0x74>
  10414. 49224: d9402017 ldw r5,128(sp)
  10415. 49228: 00f7ffc4 movi r3,-8193
  10416. 4922c: 10880014 ori r2,r2,8192
  10417. 49230: 29001917 ldw r4,100(r5)
  10418. 49234: 2880030d sth r2,12(r5)
  10419. 49238: 20c6703a and r3,r4,r3
  10420. 4923c: 28c01915 stw r3,100(r5)
  10421. 49240: 10c0020c andi r3,r2,8
  10422. 49244: 1800a526 beq r3,zero,494dc <___vfiprintf_internal_r+0x310>
  10423. 49248: d9002017 ldw r4,128(sp)
  10424. 4924c: 20c00417 ldw r3,16(r4)
  10425. 49250: 1800a226 beq r3,zero,494dc <___vfiprintf_internal_r+0x310>
  10426. 49254: 1080068c andi r2,r2,26
  10427. 49258: 00c00284 movi r3,10
  10428. 4925c: 10c0a826 beq r2,r3,49500 <___vfiprintf_internal_r+0x334>
  10429. 49260: d9001a04 addi r4,sp,104
  10430. 49264: d94019c4 addi r5,sp,103
  10431. 49268: 04800174 movhi r18,5
  10432. 4926c: 2145c83a sub r2,r4,r5
  10433. 49270: 9488e004 addi r18,r18,9088
  10434. 49274: d9001e15 stw r4,120(sp)
  10435. 49278: d9401f15 stw r5,124(sp)
  10436. 4927c: dec01a15 stw sp,104(sp)
  10437. 49280: d8001c15 stw zero,112(sp)
  10438. 49284: d8001b15 stw zero,108(sp)
  10439. 49288: d811883a mov r8,sp
  10440. 4928c: d8002615 stw zero,152(sp)
  10441. 49290: d8002415 stw zero,144(sp)
  10442. 49294: d8802815 stw r2,160(sp)
  10443. 49298: a82d883a mov r22,r21
  10444. 4929c: b0800007 ldb r2,0(r22)
  10445. 492a0: 10040d26 beq r2,zero,4a2d8 <___vfiprintf_internal_r+0x110c>
  10446. 492a4: 00c00944 movi r3,37
  10447. 492a8: b029883a mov r20,r22
  10448. 492ac: 10c0021e bne r2,r3,492b8 <___vfiprintf_internal_r+0xec>
  10449. 492b0: 00001606 br 4930c <___vfiprintf_internal_r+0x140>
  10450. 492b4: 10c00326 beq r2,r3,492c4 <___vfiprintf_internal_r+0xf8>
  10451. 492b8: a5000044 addi r20,r20,1
  10452. 492bc: a0800007 ldb r2,0(r20)
  10453. 492c0: 103ffc1e bne r2,zero,492b4 <__alt_data_end+0xfffd72b4>
  10454. 492c4: a5a1c83a sub r16,r20,r22
  10455. 492c8: 80001026 beq r16,zero,4930c <___vfiprintf_internal_r+0x140>
  10456. 492cc: d8c01c17 ldw r3,112(sp)
  10457. 492d0: d8801b17 ldw r2,108(sp)
  10458. 492d4: 45800015 stw r22,0(r8)
  10459. 492d8: 80c7883a add r3,r16,r3
  10460. 492dc: 10800044 addi r2,r2,1
  10461. 492e0: 44000115 stw r16,4(r8)
  10462. 492e4: d8c01c15 stw r3,112(sp)
  10463. 492e8: d8801b15 stw r2,108(sp)
  10464. 492ec: 010001c4 movi r4,7
  10465. 492f0: 2080750e bge r4,r2,494c8 <___vfiprintf_internal_r+0x2fc>
  10466. 492f4: 1803951e bne r3,zero,4a14c <___vfiprintf_internal_r+0xf80>
  10467. 492f8: d8c02417 ldw r3,144(sp)
  10468. 492fc: d8001b15 stw zero,108(sp)
  10469. 49300: d811883a mov r8,sp
  10470. 49304: 1c07883a add r3,r3,r16
  10471. 49308: d8c02415 stw r3,144(sp)
  10472. 4930c: a0800007 ldb r2,0(r20)
  10473. 49310: 1002e026 beq r2,zero,49e94 <___vfiprintf_internal_r+0xcc8>
  10474. 49314: a5800044 addi r22,r20,1
  10475. 49318: a0c00047 ldb r3,1(r20)
  10476. 4931c: d8001d85 stb zero,118(sp)
  10477. 49320: 0027883a mov r19,zero
  10478. 49324: d8002305 stb zero,140(sp)
  10479. 49328: 043fffc4 movi r16,-1
  10480. 4932c: d8002515 stw zero,148(sp)
  10481. 49330: 0023883a mov r17,zero
  10482. 49334: 05001604 movi r20,88
  10483. 49338: 05400244 movi r21,9
  10484. 4933c: 402f883a mov r23,r8
  10485. 49340: b5800044 addi r22,r22,1
  10486. 49344: 18bff804 addi r2,r3,-32
  10487. 49348: a0827736 bltu r20,r2,49d28 <___vfiprintf_internal_r+0xb5c>
  10488. 4934c: 100490ba slli r2,r2,2
  10489. 49350: 01000174 movhi r4,5
  10490. 49354: 2124d904 addi r4,r4,-27804
  10491. 49358: 1105883a add r2,r2,r4
  10492. 4935c: 10800017 ldw r2,0(r2)
  10493. 49360: 1000683a jmp r2
  10494. 49364: 00049a28 cmpgeui zero,zero,4712
  10495. 49368: 00049d28 cmpgeui zero,zero,4724
  10496. 4936c: 00049d28 cmpgeui zero,zero,4724
  10497. 49370: 00049a44 movi zero,4713
  10498. 49374: 00049d28 cmpgeui zero,zero,4724
  10499. 49378: 00049d28 cmpgeui zero,zero,4724
  10500. 4937c: 00049d28 cmpgeui zero,zero,4724
  10501. 49380: 00049d28 cmpgeui zero,zero,4724
  10502. 49384: 00049d28 cmpgeui zero,zero,4724
  10503. 49388: 00049d28 cmpgeui zero,zero,4724
  10504. 4938c: 00049c4c andi zero,zero,4721
  10505. 49390: 00049c70 cmpltui zero,zero,4721
  10506. 49394: 00049d28 cmpgeui zero,zero,4724
  10507. 49398: 00049568 cmpgeui zero,zero,4693
  10508. 4939c: 00049c84 movi zero,4722
  10509. 493a0: 00049d28 cmpgeui zero,zero,4724
  10510. 493a4: 00049a50 cmplti zero,zero,4713
  10511. 493a8: 00049a5c xori zero,zero,4713
  10512. 493ac: 00049a5c xori zero,zero,4713
  10513. 493b0: 00049a5c xori zero,zero,4713
  10514. 493b4: 00049a5c xori zero,zero,4713
  10515. 493b8: 00049a5c xori zero,zero,4713
  10516. 493bc: 00049a5c xori zero,zero,4713
  10517. 493c0: 00049a5c xori zero,zero,4713
  10518. 493c4: 00049a5c xori zero,zero,4713
  10519. 493c8: 00049a5c xori zero,zero,4713
  10520. 493cc: 00049d28 cmpgeui zero,zero,4724
  10521. 493d0: 00049d28 cmpgeui zero,zero,4724
  10522. 493d4: 00049d28 cmpgeui zero,zero,4724
  10523. 493d8: 00049d28 cmpgeui zero,zero,4724
  10524. 493dc: 00049d28 cmpgeui zero,zero,4724
  10525. 493e0: 00049d28 cmpgeui zero,zero,4724
  10526. 493e4: 00049d28 cmpgeui zero,zero,4724
  10527. 493e8: 00049d28 cmpgeui zero,zero,4724
  10528. 493ec: 00049d28 cmpgeui zero,zero,4724
  10529. 493f0: 00049d28 cmpgeui zero,zero,4724
  10530. 493f4: 00049a9c xori zero,zero,4714
  10531. 493f8: 00049d28 cmpgeui zero,zero,4724
  10532. 493fc: 00049d28 cmpgeui zero,zero,4724
  10533. 49400: 00049d28 cmpgeui zero,zero,4724
  10534. 49404: 00049d28 cmpgeui zero,zero,4724
  10535. 49408: 00049d28 cmpgeui zero,zero,4724
  10536. 4940c: 00049d28 cmpgeui zero,zero,4724
  10537. 49410: 00049d28 cmpgeui zero,zero,4724
  10538. 49414: 00049d28 cmpgeui zero,zero,4724
  10539. 49418: 00049d28 cmpgeui zero,zero,4724
  10540. 4941c: 00049d28 cmpgeui zero,zero,4724
  10541. 49420: 00049ad8 cmpnei zero,zero,4715
  10542. 49424: 00049d28 cmpgeui zero,zero,4724
  10543. 49428: 00049d28 cmpgeui zero,zero,4724
  10544. 4942c: 00049d28 cmpgeui zero,zero,4724
  10545. 49430: 00049d28 cmpgeui zero,zero,4724
  10546. 49434: 00049d28 cmpgeui zero,zero,4724
  10547. 49438: 00049b34 movhi zero,4716
  10548. 4943c: 00049d28 cmpgeui zero,zero,4724
  10549. 49440: 00049d28 cmpgeui zero,zero,4724
  10550. 49444: 00049ba8 cmpgeui zero,zero,4718
  10551. 49448: 00049d28 cmpgeui zero,zero,4724
  10552. 4944c: 00049d28 cmpgeui zero,zero,4724
  10553. 49450: 00049d28 cmpgeui zero,zero,4724
  10554. 49454: 00049d28 cmpgeui zero,zero,4724
  10555. 49458: 00049d28 cmpgeui zero,zero,4724
  10556. 4945c: 00049d28 cmpgeui zero,zero,4724
  10557. 49460: 00049d28 cmpgeui zero,zero,4724
  10558. 49464: 00049d28 cmpgeui zero,zero,4724
  10559. 49468: 00049d28 cmpgeui zero,zero,4724
  10560. 4946c: 00049d28 cmpgeui zero,zero,4724
  10561. 49470: 00049950 cmplti zero,zero,4709
  10562. 49474: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668>
  10563. 49478: 00049d28 cmpgeui zero,zero,4724
  10564. 4947c: 00049d28 cmpgeui zero,zero,4724
  10565. 49480: 00049d28 cmpgeui zero,zero,4724
  10566. 49484: 00049cd0 cmplti zero,zero,4723
  10567. 49488: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668>
  10568. 4948c: 00049d28 cmpgeui zero,zero,4724
  10569. 49490: 00049d28 cmpgeui zero,zero,4724
  10570. 49494: 00049828 cmpgeui zero,zero,4704
  10571. 49498: 00049d28 cmpgeui zero,zero,4724
  10572. 4949c: 0004983c xorhi zero,zero,4704
  10573. 494a0: 00049874 movhi zero,4705
  10574. 494a4: 00049574 movhi zero,4693
  10575. 494a8: 0004981c xori zero,zero,4704
  10576. 494ac: 00049d28 cmpgeui zero,zero,4724
  10577. 494b0: 00049be8 cmpgeui zero,zero,4719
  10578. 494b4: 00049d28 cmpgeui zero,zero,4724
  10579. 494b8: 00049c34 movhi zero,4720
  10580. 494bc: 00049d28 cmpgeui zero,zero,4724
  10581. 494c0: 00049d28 cmpgeui zero,zero,4724
  10582. 494c4: 000498f8 rdprs zero,zero,4707
  10583. 494c8: 42000204 addi r8,r8,8
  10584. 494cc: d8c02417 ldw r3,144(sp)
  10585. 494d0: 1c07883a add r3,r3,r16
  10586. 494d4: d8c02415 stw r3,144(sp)
  10587. 494d8: 003f8c06 br 4930c <__alt_data_end+0xfffd730c>
  10588. 494dc: d9402017 ldw r5,128(sp)
  10589. 494e0: d9002117 ldw r4,132(sp)
  10590. 494e4: 00445200 call 44520 <__swsetup_r>
  10591. 494e8: 1003c11e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224>
  10592. 494ec: d9402017 ldw r5,128(sp)
  10593. 494f0: 00c00284 movi r3,10
  10594. 494f4: 2880030b ldhu r2,12(r5)
  10595. 494f8: 1080068c andi r2,r2,26
  10596. 494fc: 10ff581e bne r2,r3,49260 <__alt_data_end+0xfffd7260>
  10597. 49500: d8c02017 ldw r3,128(sp)
  10598. 49504: 1880038f ldh r2,14(r3)
  10599. 49508: 103f5516 blt r2,zero,49260 <__alt_data_end+0xfffd7260>
  10600. 4950c: d9c02217 ldw r7,136(sp)
  10601. 49510: d9002117 ldw r4,132(sp)
  10602. 49514: a80d883a mov r6,r21
  10603. 49518: 180b883a mov r5,r3
  10604. 4951c: 004a6f40 call 4a6f4 <__sbprintf>
  10605. 49520: dfc03517 ldw ra,212(sp)
  10606. 49524: df003417 ldw fp,208(sp)
  10607. 49528: ddc03317 ldw r23,204(sp)
  10608. 4952c: dd803217 ldw r22,200(sp)
  10609. 49530: dd403117 ldw r21,196(sp)
  10610. 49534: dd003017 ldw r20,192(sp)
  10611. 49538: dcc02f17 ldw r19,188(sp)
  10612. 4953c: dc802e17 ldw r18,184(sp)
  10613. 49540: dc402d17 ldw r17,180(sp)
  10614. 49544: dc002c17 ldw r16,176(sp)
  10615. 49548: dec03604 addi sp,sp,216
  10616. 4954c: f800283a ret
  10617. 49550: 004652c0 call 4652c <__sinit>
  10618. 49554: 003f2f06 br 49214 <__alt_data_end+0xfffd7214>
  10619. 49558: d8c02517 ldw r3,148(sp)
  10620. 4955c: d8802215 stw r2,136(sp)
  10621. 49560: 00c7c83a sub r3,zero,r3
  10622. 49564: d8c02515 stw r3,148(sp)
  10623. 49568: 8c400114 ori r17,r17,4
  10624. 4956c: b0c00007 ldb r3,0(r22)
  10625. 49570: 003f7306 br 49340 <__alt_data_end+0xfffd7340>
  10626. 49574: 00800c04 movi r2,48
  10627. 49578: d9402217 ldw r5,136(sp)
  10628. 4957c: d8801d05 stb r2,116(sp)
  10629. 49580: 00801e04 movi r2,120
  10630. 49584: d8801d45 stb r2,117(sp)
  10631. 49588: d8001d85 stb zero,118(sp)
  10632. 4958c: b811883a mov r8,r23
  10633. 49590: 28c00104 addi r3,r5,4
  10634. 49594: 2cc00017 ldw r19,0(r5)
  10635. 49598: 0029883a mov r20,zero
  10636. 4959c: 88800094 ori r2,r17,2
  10637. 495a0: 80032516 blt r16,zero,4a238 <___vfiprintf_internal_r+0x106c>
  10638. 495a4: 00bfdfc4 movi r2,-129
  10639. 495a8: 88a2703a and r17,r17,r2
  10640. 495ac: d8c02215 stw r3,136(sp)
  10641. 495b0: 8c400094 ori r17,r17,2
  10642. 495b4: 98032a1e bne r19,zero,4a260 <___vfiprintf_internal_r+0x1094>
  10643. 495b8: 00800174 movhi r2,5
  10644. 495bc: 10888004 addi r2,r2,8704
  10645. 495c0: d8802615 stw r2,152(sp)
  10646. 495c4: 002b883a mov r21,zero
  10647. 495c8: 8001741e bne r16,zero,49b9c <___vfiprintf_internal_r+0x9d0>
  10648. 495cc: 0021883a mov r16,zero
  10649. 495d0: 0029883a mov r20,zero
  10650. 495d4: ddc01a04 addi r23,sp,104
  10651. 495d8: 8027883a mov r19,r16
  10652. 495dc: 8500010e bge r16,r20,495e4 <___vfiprintf_internal_r+0x418>
  10653. 495e0: a027883a mov r19,r20
  10654. 495e4: ad403fcc andi r21,r21,255
  10655. 495e8: ad40201c xori r21,r21,128
  10656. 495ec: ad7fe004 addi r21,r21,-128
  10657. 495f0: a8000126 beq r21,zero,495f8 <___vfiprintf_internal_r+0x42c>
  10658. 495f4: 9cc00044 addi r19,r19,1
  10659. 495f8: 89c0008c andi r7,r17,2
  10660. 495fc: 38000126 beq r7,zero,49604 <___vfiprintf_internal_r+0x438>
  10661. 49600: 9cc00084 addi r19,r19,2
  10662. 49604: 88c0210c andi r3,r17,132
  10663. 49608: 1801dd1e bne r3,zero,49d80 <___vfiprintf_internal_r+0xbb4>
  10664. 4960c: d9402517 ldw r5,148(sp)
  10665. 49610: 2cebc83a sub r21,r5,r19
  10666. 49614: 0541da0e bge zero,r21,49d80 <___vfiprintf_internal_r+0xbb4>
  10667. 49618: 07000404 movi fp,16
  10668. 4961c: d8801c17 ldw r2,112(sp)
  10669. 49620: e543be0e bge fp,r21,4a51c <___vfiprintf_internal_r+0x1350>
  10670. 49624: 01400174 movhi r5,5
  10671. 49628: 2948e404 addi r5,r5,9104
  10672. 4962c: dc002715 stw r16,156(sp)
  10673. 49630: d9801b17 ldw r6,108(sp)
  10674. 49634: a821883a mov r16,r21
  10675. 49638: d9402315 stw r5,140(sp)
  10676. 4963c: 028001c4 movi r10,7
  10677. 49640: d9c02915 stw r7,164(sp)
  10678. 49644: 182b883a mov r21,r3
  10679. 49648: 00000506 br 49660 <___vfiprintf_internal_r+0x494>
  10680. 4964c: 31000084 addi r4,r6,2
  10681. 49650: 42000204 addi r8,r8,8
  10682. 49654: 180d883a mov r6,r3
  10683. 49658: 843ffc04 addi r16,r16,-16
  10684. 4965c: e4000f0e bge fp,r16,4969c <___vfiprintf_internal_r+0x4d0>
  10685. 49660: 01000174 movhi r4,5
  10686. 49664: 10800404 addi r2,r2,16
  10687. 49668: 30c00044 addi r3,r6,1
  10688. 4966c: 2108e404 addi r4,r4,9104
  10689. 49670: 41000015 stw r4,0(r8)
  10690. 49674: 47000115 stw fp,4(r8)
  10691. 49678: d8801c15 stw r2,112(sp)
  10692. 4967c: d8c01b15 stw r3,108(sp)
  10693. 49680: 50fff20e bge r10,r3,4964c <__alt_data_end+0xfffd764c>
  10694. 49684: 1001b21e bne r2,zero,49d50 <___vfiprintf_internal_r+0xb84>
  10695. 49688: 843ffc04 addi r16,r16,-16
  10696. 4968c: 000d883a mov r6,zero
  10697. 49690: 01000044 movi r4,1
  10698. 49694: d811883a mov r8,sp
  10699. 49698: e43ff116 blt fp,r16,49660 <__alt_data_end+0xfffd7660>
  10700. 4969c: a807883a mov r3,r21
  10701. 496a0: d9c02917 ldw r7,164(sp)
  10702. 496a4: 802b883a mov r21,r16
  10703. 496a8: dc002717 ldw r16,156(sp)
  10704. 496ac: d9402317 ldw r5,140(sp)
  10705. 496b0: a885883a add r2,r21,r2
  10706. 496b4: 45400115 stw r21,4(r8)
  10707. 496b8: 41400015 stw r5,0(r8)
  10708. 496bc: d8801c15 stw r2,112(sp)
  10709. 496c0: d9001b15 stw r4,108(sp)
  10710. 496c4: 014001c4 movi r5,7
  10711. 496c8: 29026216 blt r5,r4,4a054 <___vfiprintf_internal_r+0xe88>
  10712. 496cc: d9801d87 ldb r6,118(sp)
  10713. 496d0: 42000204 addi r8,r8,8
  10714. 496d4: 21400044 addi r5,r4,1
  10715. 496d8: 3001ae1e bne r6,zero,49d94 <___vfiprintf_internal_r+0xbc8>
  10716. 496dc: 3801bb26 beq r7,zero,49dcc <___vfiprintf_internal_r+0xc00>
  10717. 496e0: d9001d04 addi r4,sp,116
  10718. 496e4: 10800084 addi r2,r2,2
  10719. 496e8: 41000015 stw r4,0(r8)
  10720. 496ec: 01000084 movi r4,2
  10721. 496f0: 41000115 stw r4,4(r8)
  10722. 496f4: d8801c15 stw r2,112(sp)
  10723. 496f8: d9401b15 stw r5,108(sp)
  10724. 496fc: 010001c4 movi r4,7
  10725. 49700: 2142680e bge r4,r5,4a0a4 <___vfiprintf_internal_r+0xed8>
  10726. 49704: 1002b11e bne r2,zero,4a1cc <___vfiprintf_internal_r+0x1000>
  10727. 49708: 01802004 movi r6,128
  10728. 4970c: 01400044 movi r5,1
  10729. 49710: 0009883a mov r4,zero
  10730. 49714: d811883a mov r8,sp
  10731. 49718: 1981ae1e bne r3,r6,49dd4 <___vfiprintf_internal_r+0xc08>
  10732. 4971c: d8c02517 ldw r3,148(sp)
  10733. 49720: 1cf9c83a sub fp,r3,r19
  10734. 49724: 0701ab0e bge zero,fp,49dd4 <___vfiprintf_internal_r+0xc08>
  10735. 49728: 05400404 movi r21,16
  10736. 4972c: af03a90e bge r21,fp,4a5d4 <___vfiprintf_internal_r+0x1408>
  10737. 49730: 01400174 movhi r5,5
  10738. 49734: 2948e004 addi r5,r5,9088
  10739. 49738: d9402315 stw r5,140(sp)
  10740. 4973c: 01c001c4 movi r7,7
  10741. 49740: 00000506 br 49758 <___vfiprintf_internal_r+0x58c>
  10742. 49744: 21800084 addi r6,r4,2
  10743. 49748: 42000204 addi r8,r8,8
  10744. 4974c: 1809883a mov r4,r3
  10745. 49750: e73ffc04 addi fp,fp,-16
  10746. 49754: af000d0e bge r21,fp,4978c <___vfiprintf_internal_r+0x5c0>
  10747. 49758: 10800404 addi r2,r2,16
  10748. 4975c: 20c00044 addi r3,r4,1
  10749. 49760: 44800015 stw r18,0(r8)
  10750. 49764: 45400115 stw r21,4(r8)
  10751. 49768: d8801c15 stw r2,112(sp)
  10752. 4976c: d8c01b15 stw r3,108(sp)
  10753. 49770: 38fff40e bge r7,r3,49744 <__alt_data_end+0xfffd7744>
  10754. 49774: 10022b1e bne r2,zero,4a024 <___vfiprintf_internal_r+0xe58>
  10755. 49778: e73ffc04 addi fp,fp,-16
  10756. 4977c: 01800044 movi r6,1
  10757. 49780: 0009883a mov r4,zero
  10758. 49784: d811883a mov r8,sp
  10759. 49788: af3ff316 blt r21,fp,49758 <__alt_data_end+0xfffd7758>
  10760. 4978c: d8c02317 ldw r3,140(sp)
  10761. 49790: 1705883a add r2,r2,fp
  10762. 49794: 47000115 stw fp,4(r8)
  10763. 49798: 40c00015 stw r3,0(r8)
  10764. 4979c: d8801c15 stw r2,112(sp)
  10765. 497a0: d9801b15 stw r6,108(sp)
  10766. 497a4: 00c001c4 movi r3,7
  10767. 497a8: 19829416 blt r3,r6,4a1fc <___vfiprintf_internal_r+0x1030>
  10768. 497ac: 8521c83a sub r16,r16,r20
  10769. 497b0: 42000204 addi r8,r8,8
  10770. 497b4: 31400044 addi r5,r6,1
  10771. 497b8: 3009883a mov r4,r6
  10772. 497bc: 04018716 blt zero,r16,49ddc <___vfiprintf_internal_r+0xc10>
  10773. 497c0: a085883a add r2,r20,r2
  10774. 497c4: 45c00015 stw r23,0(r8)
  10775. 497c8: 45000115 stw r20,4(r8)
  10776. 497cc: d8801c15 stw r2,112(sp)
  10777. 497d0: d9401b15 stw r5,108(sp)
  10778. 497d4: 00c001c4 movi r3,7
  10779. 497d8: 1941c20e bge r3,r5,49ee4 <___vfiprintf_internal_r+0xd18>
  10780. 497dc: 1002531e bne r2,zero,4a12c <___vfiprintf_internal_r+0xf60>
  10781. 497e0: d8001b15 stw zero,108(sp)
  10782. 497e4: 8c40010c andi r17,r17,4
  10783. 497e8: 88023226 beq r17,zero,4a0b4 <___vfiprintf_internal_r+0xee8>
  10784. 497ec: d9002517 ldw r4,148(sp)
  10785. 497f0: 24e3c83a sub r17,r4,r19
  10786. 497f4: 04432916 blt zero,r17,4a49c <___vfiprintf_internal_r+0x12d0>
  10787. 497f8: d8802517 ldw r2,148(sp)
  10788. 497fc: 14c0010e bge r2,r19,49804 <___vfiprintf_internal_r+0x638>
  10789. 49800: 9805883a mov r2,r19
  10790. 49804: d8c02417 ldw r3,144(sp)
  10791. 49808: 1887883a add r3,r3,r2
  10792. 4980c: d8c02415 stw r3,144(sp)
  10793. 49810: d8001b15 stw zero,108(sp)
  10794. 49814: d811883a mov r8,sp
  10795. 49818: 003ea006 br 4929c <__alt_data_end+0xfffd729c>
  10796. 4981c: 8c400814 ori r17,r17,32
  10797. 49820: b0c00007 ldb r3,0(r22)
  10798. 49824: 003ec606 br 49340 <__alt_data_end+0xfffd7340>
  10799. 49828: b0c00007 ldb r3,0(r22)
  10800. 4982c: 00801b04 movi r2,108
  10801. 49830: 18832026 beq r3,r2,4a4b4 <___vfiprintf_internal_r+0x12e8>
  10802. 49834: 8c400414 ori r17,r17,16
  10803. 49838: 003ec106 br 49340 <__alt_data_end+0xfffd7340>
  10804. 4983c: 9cc03fcc andi r19,r19,255
  10805. 49840: b811883a mov r8,r23
  10806. 49844: 9803981e bne r19,zero,4a6a8 <___vfiprintf_internal_r+0x14dc>
  10807. 49848: 8880080c andi r2,r17,32
  10808. 4984c: 1002be26 beq r2,zero,4a348 <___vfiprintf_internal_r+0x117c>
  10809. 49850: d9002217 ldw r4,136(sp)
  10810. 49854: d9402417 ldw r5,144(sp)
  10811. 49858: 20800017 ldw r2,0(r4)
  10812. 4985c: 2807d7fa srai r3,r5,31
  10813. 49860: 21000104 addi r4,r4,4
  10814. 49864: d9002215 stw r4,136(sp)
  10815. 49868: 11400015 stw r5,0(r2)
  10816. 4986c: 10c00115 stw r3,4(r2)
  10817. 49870: 003e8a06 br 4929c <__alt_data_end+0xfffd729c>
  10818. 49874: 9cc03fcc andi r19,r19,255
  10819. 49878: b811883a mov r8,r23
  10820. 4987c: 9803871e bne r19,zero,4a69c <___vfiprintf_internal_r+0x14d0>
  10821. 49880: 8880080c andi r2,r17,32
  10822. 49884: 10009a26 beq r2,zero,49af0 <___vfiprintf_internal_r+0x924>
  10823. 49888: d9002217 ldw r4,136(sp)
  10824. 4988c: d8001d85 stb zero,118(sp)
  10825. 49890: 20800204 addi r2,r4,8
  10826. 49894: 24c00017 ldw r19,0(r4)
  10827. 49898: 25000117 ldw r20,4(r4)
  10828. 4989c: 8002a416 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164>
  10829. 498a0: 013fdfc4 movi r4,-129
  10830. 498a4: 9d06b03a or r3,r19,r20
  10831. 498a8: d8802215 stw r2,136(sp)
  10832. 498ac: 8922703a and r17,r17,r4
  10833. 498b0: 18009b26 beq r3,zero,49b20 <___vfiprintf_internal_r+0x954>
  10834. 498b4: 002b883a mov r21,zero
  10835. 498b8: ddc01a04 addi r23,sp,104
  10836. 498bc: 9806d0fa srli r3,r19,3
  10837. 498c0: a008977a slli r4,r20,29
  10838. 498c4: a028d0fa srli r20,r20,3
  10839. 498c8: 9cc001cc andi r19,r19,7
  10840. 498cc: 98800c04 addi r2,r19,48
  10841. 498d0: bdffffc4 addi r23,r23,-1
  10842. 498d4: 20e6b03a or r19,r4,r3
  10843. 498d8: b8800005 stb r2,0(r23)
  10844. 498dc: 9d06b03a or r3,r19,r20
  10845. 498e0: 183ff61e bne r3,zero,498bc <__alt_data_end+0xfffd78bc>
  10846. 498e4: 88c0004c andi r3,r17,1
  10847. 498e8: 18021f1e bne r3,zero,4a168 <___vfiprintf_internal_r+0xf9c>
  10848. 498ec: d9401e17 ldw r5,120(sp)
  10849. 498f0: 2de9c83a sub r20,r5,r23
  10850. 498f4: 003f3806 br 495d8 <__alt_data_end+0xfffd75d8>
  10851. 498f8: 9cc03fcc andi r19,r19,255
  10852. 498fc: b811883a mov r8,r23
  10853. 49900: 98034f1e bne r19,zero,4a640 <___vfiprintf_internal_r+0x1474>
  10854. 49904: 00800174 movhi r2,5
  10855. 49908: 10888004 addi r2,r2,8704
  10856. 4990c: d8802615 stw r2,152(sp)
  10857. 49910: 8880080c andi r2,r17,32
  10858. 49914: 1000ac26 beq r2,zero,49bc8 <___vfiprintf_internal_r+0x9fc>
  10859. 49918: d9002217 ldw r4,136(sp)
  10860. 4991c: 24c00017 ldw r19,0(r4)
  10861. 49920: 25000117 ldw r20,4(r4)
  10862. 49924: 21000204 addi r4,r4,8
  10863. 49928: d9002215 stw r4,136(sp)
  10864. 4992c: 8880004c andi r2,r17,1
  10865. 49930: 1001e726 beq r2,zero,4a0d0 <___vfiprintf_internal_r+0xf04>
  10866. 49934: 9d04b03a or r2,r19,r20
  10867. 49938: 10025c1e bne r2,zero,4a2ac <___vfiprintf_internal_r+0x10e0>
  10868. 4993c: d8001d85 stb zero,118(sp)
  10869. 49940: 80024416 blt r16,zero,4a254 <___vfiprintf_internal_r+0x1088>
  10870. 49944: 00bfdfc4 movi r2,-129
  10871. 49948: 88a2703a and r17,r17,r2
  10872. 4994c: 003f1d06 br 495c4 <__alt_data_end+0xfffd75c4>
  10873. 49950: d8c02217 ldw r3,136(sp)
  10874. 49954: 04c00044 movi r19,1
  10875. 49958: b811883a mov r8,r23
  10876. 4995c: 18800017 ldw r2,0(r3)
  10877. 49960: 18c00104 addi r3,r3,4
  10878. 49964: d8001d85 stb zero,118(sp)
  10879. 49968: d8801005 stb r2,64(sp)
  10880. 4996c: d8c02215 stw r3,136(sp)
  10881. 49970: 9829883a mov r20,r19
  10882. 49974: ddc01004 addi r23,sp,64
  10883. 49978: 0021883a mov r16,zero
  10884. 4997c: 003f1e06 br 495f8 <__alt_data_end+0xfffd75f8>
  10885. 49980: 9cc03fcc andi r19,r19,255
  10886. 49984: b811883a mov r8,r23
  10887. 49988: 9803331e bne r19,zero,4a658 <___vfiprintf_internal_r+0x148c>
  10888. 4998c: 8880080c andi r2,r17,32
  10889. 49990: 10004826 beq r2,zero,49ab4 <___vfiprintf_internal_r+0x8e8>
  10890. 49994: d9002217 ldw r4,136(sp)
  10891. 49998: 20800117 ldw r2,4(r4)
  10892. 4999c: 24c00017 ldw r19,0(r4)
  10893. 499a0: 21000204 addi r4,r4,8
  10894. 499a4: d9002215 stw r4,136(sp)
  10895. 499a8: 1029883a mov r20,r2
  10896. 499ac: 10024c16 blt r2,zero,4a2e0 <___vfiprintf_internal_r+0x1114>
  10897. 499b0: dd401d83 ldbu r21,118(sp)
  10898. 499b4: 80007116 blt r16,zero,49b7c <___vfiprintf_internal_r+0x9b0>
  10899. 499b8: 00ffdfc4 movi r3,-129
  10900. 499bc: 9d04b03a or r2,r19,r20
  10901. 499c0: 88e2703a and r17,r17,r3
  10902. 499c4: 1000d126 beq r2,zero,49d0c <___vfiprintf_internal_r+0xb40>
  10903. 499c8: a0023526 beq r20,zero,4a2a0 <___vfiprintf_internal_r+0x10d4>
  10904. 499cc: ddc01a04 addi r23,sp,104
  10905. 499d0: 4039883a mov fp,r8
  10906. 499d4: 9809883a mov r4,r19
  10907. 499d8: a00b883a mov r5,r20
  10908. 499dc: 01800284 movi r6,10
  10909. 499e0: 000f883a mov r7,zero
  10910. 499e4: 004c2800 call 4c280 <__umoddi3>
  10911. 499e8: 10800c04 addi r2,r2,48
  10912. 499ec: bdffffc4 addi r23,r23,-1
  10913. 499f0: 9809883a mov r4,r19
  10914. 499f4: a00b883a mov r5,r20
  10915. 499f8: b8800005 stb r2,0(r23)
  10916. 499fc: 01800284 movi r6,10
  10917. 49a00: 000f883a mov r7,zero
  10918. 49a04: 004bc840 call 4bc84 <__udivdi3>
  10919. 49a08: 1027883a mov r19,r2
  10920. 49a0c: 10c4b03a or r2,r2,r3
  10921. 49a10: 1829883a mov r20,r3
  10922. 49a14: 103fef1e bne r2,zero,499d4 <__alt_data_end+0xfffd79d4>
  10923. 49a18: d9001e17 ldw r4,120(sp)
  10924. 49a1c: e011883a mov r8,fp
  10925. 49a20: 25e9c83a sub r20,r4,r23
  10926. 49a24: 003eec06 br 495d8 <__alt_data_end+0xfffd75d8>
  10927. 49a28: d8802307 ldb r2,140(sp)
  10928. 49a2c: 1002361e bne r2,zero,4a308 <___vfiprintf_internal_r+0x113c>
  10929. 49a30: 00c00804 movi r3,32
  10930. 49a34: d8c02305 stb r3,140(sp)
  10931. 49a38: 04c00044 movi r19,1
  10932. 49a3c: b0c00007 ldb r3,0(r22)
  10933. 49a40: 003e3f06 br 49340 <__alt_data_end+0xfffd7340>
  10934. 49a44: 8c400054 ori r17,r17,1
  10935. 49a48: b0c00007 ldb r3,0(r22)
  10936. 49a4c: 003e3c06 br 49340 <__alt_data_end+0xfffd7340>
  10937. 49a50: 8c402014 ori r17,r17,128
  10938. 49a54: b0c00007 ldb r3,0(r22)
  10939. 49a58: 003e3906 br 49340 <__alt_data_end+0xfffd7340>
  10940. 49a5c: dc002715 stw r16,156(sp)
  10941. 49a60: d8002515 stw zero,148(sp)
  10942. 49a64: 1f3ff404 addi fp,r3,-48
  10943. 49a68: 0009883a mov r4,zero
  10944. 49a6c: b021883a mov r16,r22
  10945. 49a70: 01400284 movi r5,10
  10946. 49a74: 004c9f80 call 4c9f8 <__mulsi3>
  10947. 49a78: 80c00007 ldb r3,0(r16)
  10948. 49a7c: e089883a add r4,fp,r2
  10949. 49a80: b5800044 addi r22,r22,1
  10950. 49a84: 1f3ff404 addi fp,r3,-48
  10951. 49a88: b021883a mov r16,r22
  10952. 49a8c: af3ff82e bgeu r21,fp,49a70 <__alt_data_end+0xfffd7a70>
  10953. 49a90: d9002515 stw r4,148(sp)
  10954. 49a94: dc002717 ldw r16,156(sp)
  10955. 49a98: 003e2a06 br 49344 <__alt_data_end+0xfffd7344>
  10956. 49a9c: 9cc03fcc andi r19,r19,255
  10957. 49aa0: b811883a mov r8,r23
  10958. 49aa4: 9802e91e bne r19,zero,4a64c <___vfiprintf_internal_r+0x1480>
  10959. 49aa8: 8c400414 ori r17,r17,16
  10960. 49aac: 8880080c andi r2,r17,32
  10961. 49ab0: 103fb81e bne r2,zero,49994 <__alt_data_end+0xfffd7994>
  10962. 49ab4: 8880040c andi r2,r17,16
  10963. 49ab8: 10022e26 beq r2,zero,4a374 <___vfiprintf_internal_r+0x11a8>
  10964. 49abc: d9402217 ldw r5,136(sp)
  10965. 49ac0: 2cc00017 ldw r19,0(r5)
  10966. 49ac4: 29400104 addi r5,r5,4
  10967. 49ac8: d9402215 stw r5,136(sp)
  10968. 49acc: 9829d7fa srai r20,r19,31
  10969. 49ad0: a005883a mov r2,r20
  10970. 49ad4: 003fb506 br 499ac <__alt_data_end+0xfffd79ac>
  10971. 49ad8: 9cc03fcc andi r19,r19,255
  10972. 49adc: b811883a mov r8,r23
  10973. 49ae0: 9802fa1e bne r19,zero,4a6cc <___vfiprintf_internal_r+0x1500>
  10974. 49ae4: 8c400414 ori r17,r17,16
  10975. 49ae8: 8880080c andi r2,r17,32
  10976. 49aec: 103f661e bne r2,zero,49888 <__alt_data_end+0xfffd7888>
  10977. 49af0: 8880040c andi r2,r17,16
  10978. 49af4: 10020626 beq r2,zero,4a310 <___vfiprintf_internal_r+0x1144>
  10979. 49af8: d9402217 ldw r5,136(sp)
  10980. 49afc: d8001d85 stb zero,118(sp)
  10981. 49b00: 0029883a mov r20,zero
  10982. 49b04: 28800104 addi r2,r5,4
  10983. 49b08: 2cc00017 ldw r19,0(r5)
  10984. 49b0c: 80020816 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164>
  10985. 49b10: 00ffdfc4 movi r3,-129
  10986. 49b14: d8802215 stw r2,136(sp)
  10987. 49b18: 88e2703a and r17,r17,r3
  10988. 49b1c: 983f651e bne r19,zero,498b4 <__alt_data_end+0xfffd78b4>
  10989. 49b20: 002b883a mov r21,zero
  10990. 49b24: 8002cf26 beq r16,zero,4a664 <___vfiprintf_internal_r+0x1498>
  10991. 49b28: 0027883a mov r19,zero
  10992. 49b2c: 0029883a mov r20,zero
  10993. 49b30: 003f6106 br 498b8 <__alt_data_end+0xfffd78b8>
  10994. 49b34: 9cc03fcc andi r19,r19,255
  10995. 49b38: b811883a mov r8,r23
  10996. 49b3c: 9802e01e bne r19,zero,4a6c0 <___vfiprintf_internal_r+0x14f4>
  10997. 49b40: 8c400414 ori r17,r17,16
  10998. 49b44: 8880080c andi r2,r17,32
  10999. 49b48: 1000641e bne r2,zero,49cdc <___vfiprintf_internal_r+0xb10>
  11000. 49b4c: 8880040c andi r2,r17,16
  11001. 49b50: 1001c81e bne r2,zero,4a274 <___vfiprintf_internal_r+0x10a8>
  11002. 49b54: 8880100c andi r2,r17,64
  11003. 49b58: d8001d85 stb zero,118(sp)
  11004. 49b5c: 1002281e bne r2,zero,4a400 <___vfiprintf_internal_r+0x1234>
  11005. 49b60: d9002217 ldw r4,136(sp)
  11006. 49b64: 0029883a mov r20,zero
  11007. 49b68: 20800104 addi r2,r4,4
  11008. 49b6c: 24c00017 ldw r19,0(r4)
  11009. 49b70: 8001c60e bge r16,zero,4a28c <___vfiprintf_internal_r+0x10c0>
  11010. 49b74: d8802215 stw r2,136(sp)
  11011. 49b78: 002b883a mov r21,zero
  11012. 49b7c: 9d04b03a or r2,r19,r20
  11013. 49b80: 103f911e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8>
  11014. 49b84: 00800044 movi r2,1
  11015. 49b88: 10803fcc andi r2,r2,255
  11016. 49b8c: 00c00044 movi r3,1
  11017. 49b90: 10c05f26 beq r2,r3,49d10 <___vfiprintf_internal_r+0xb44>
  11018. 49b94: 00c00084 movi r3,2
  11019. 49b98: 10ffe31e bne r2,r3,49b28 <__alt_data_end+0xfffd7b28>
  11020. 49b9c: 0027883a mov r19,zero
  11021. 49ba0: 0029883a mov r20,zero
  11022. 49ba4: 00015106 br 4a0ec <___vfiprintf_internal_r+0xf20>
  11023. 49ba8: 9cc03fcc andi r19,r19,255
  11024. 49bac: b811883a mov r8,r23
  11025. 49bb0: 9802c01e bne r19,zero,4a6b4 <___vfiprintf_internal_r+0x14e8>
  11026. 49bb4: 01400174 movhi r5,5
  11027. 49bb8: 29487b04 addi r5,r5,8684
  11028. 49bbc: d9402615 stw r5,152(sp)
  11029. 49bc0: 8880080c andi r2,r17,32
  11030. 49bc4: 103f541e bne r2,zero,49918 <__alt_data_end+0xfffd7918>
  11031. 49bc8: 8880040c andi r2,r17,16
  11032. 49bcc: 1001f226 beq r2,zero,4a398 <___vfiprintf_internal_r+0x11cc>
  11033. 49bd0: d9402217 ldw r5,136(sp)
  11034. 49bd4: 0029883a mov r20,zero
  11035. 49bd8: 2cc00017 ldw r19,0(r5)
  11036. 49bdc: 29400104 addi r5,r5,4
  11037. 49be0: d9402215 stw r5,136(sp)
  11038. 49be4: 003f5106 br 4992c <__alt_data_end+0xfffd792c>
  11039. 49be8: d8c02217 ldw r3,136(sp)
  11040. 49bec: b811883a mov r8,r23
  11041. 49bf0: d8001d85 stb zero,118(sp)
  11042. 49bf4: 1dc00017 ldw r23,0(r3)
  11043. 49bf8: 1f000104 addi fp,r3,4
  11044. 49bfc: b8025926 beq r23,zero,4a564 <___vfiprintf_internal_r+0x1398>
  11045. 49c00: 80023316 blt r16,zero,4a4d0 <___vfiprintf_internal_r+0x1304>
  11046. 49c04: 800d883a mov r6,r16
  11047. 49c08: 000b883a mov r5,zero
  11048. 49c0c: b809883a mov r4,r23
  11049. 49c10: da002a15 stw r8,168(sp)
  11050. 49c14: 00475dc0 call 475dc <memchr>
  11051. 49c18: da002a17 ldw r8,168(sp)
  11052. 49c1c: 10026826 beq r2,zero,4a5c0 <___vfiprintf_internal_r+0x13f4>
  11053. 49c20: 15e9c83a sub r20,r2,r23
  11054. 49c24: dd401d83 ldbu r21,118(sp)
  11055. 49c28: df002215 stw fp,136(sp)
  11056. 49c2c: 0021883a mov r16,zero
  11057. 49c30: 003e6906 br 495d8 <__alt_data_end+0xfffd75d8>
  11058. 49c34: 9cc03fcc andi r19,r19,255
  11059. 49c38: b811883a mov r8,r23
  11060. 49c3c: 983fc126 beq r19,zero,49b44 <__alt_data_end+0xfffd7b44>
  11061. 49c40: d8c02303 ldbu r3,140(sp)
  11062. 49c44: d8c01d85 stb r3,118(sp)
  11063. 49c48: 003fbe06 br 49b44 <__alt_data_end+0xfffd7b44>
  11064. 49c4c: d9002217 ldw r4,136(sp)
  11065. 49c50: d9402217 ldw r5,136(sp)
  11066. 49c54: 21000017 ldw r4,0(r4)
  11067. 49c58: 28800104 addi r2,r5,4
  11068. 49c5c: d9002515 stw r4,148(sp)
  11069. 49c60: 203e3d16 blt r4,zero,49558 <__alt_data_end+0xfffd7558>
  11070. 49c64: d8802215 stw r2,136(sp)
  11071. 49c68: b0c00007 ldb r3,0(r22)
  11072. 49c6c: 003db406 br 49340 <__alt_data_end+0xfffd7340>
  11073. 49c70: 00c00ac4 movi r3,43
  11074. 49c74: d8c02305 stb r3,140(sp)
  11075. 49c78: 04c00044 movi r19,1
  11076. 49c7c: b0c00007 ldb r3,0(r22)
  11077. 49c80: 003daf06 br 49340 <__alt_data_end+0xfffd7340>
  11078. 49c84: b0c00007 ldb r3,0(r22)
  11079. 49c88: 01000a84 movi r4,42
  11080. 49c8c: b4000044 addi r16,r22,1
  11081. 49c90: 19025e26 beq r3,r4,4a60c <___vfiprintf_internal_r+0x1440>
  11082. 49c94: 1f3ff404 addi fp,r3,-48
  11083. 49c98: 0009883a mov r4,zero
  11084. 49c9c: af025236 bltu r21,fp,4a5e8 <___vfiprintf_internal_r+0x141c>
  11085. 49ca0: 01400284 movi r5,10
  11086. 49ca4: 004c9f80 call 4c9f8 <__mulsi3>
  11087. 49ca8: 80c00007 ldb r3,0(r16)
  11088. 49cac: 1709883a add r4,r2,fp
  11089. 49cb0: 85800044 addi r22,r16,1
  11090. 49cb4: 1f3ff404 addi fp,r3,-48
  11091. 49cb8: b021883a mov r16,r22
  11092. 49cbc: af3ff82e bgeu r21,fp,49ca0 <__alt_data_end+0xfffd7ca0>
  11093. 49cc0: 2021883a mov r16,r4
  11094. 49cc4: 203d9f0e bge r4,zero,49344 <__alt_data_end+0xfffd7344>
  11095. 49cc8: 043fffc4 movi r16,-1
  11096. 49ccc: 003d9d06 br 49344 <__alt_data_end+0xfffd7344>
  11097. 49cd0: 8c401014 ori r17,r17,64
  11098. 49cd4: b0c00007 ldb r3,0(r22)
  11099. 49cd8: 003d9906 br 49340 <__alt_data_end+0xfffd7340>
  11100. 49cdc: d9002217 ldw r4,136(sp)
  11101. 49ce0: d8001d85 stb zero,118(sp)
  11102. 49ce4: 20c00204 addi r3,r4,8
  11103. 49ce8: 24c00017 ldw r19,0(r4)
  11104. 49cec: 25000117 ldw r20,4(r4)
  11105. 49cf0: 8001e716 blt r16,zero,4a490 <___vfiprintf_internal_r+0x12c4>
  11106. 49cf4: 013fdfc4 movi r4,-129
  11107. 49cf8: 9d04b03a or r2,r19,r20
  11108. 49cfc: d8c02215 stw r3,136(sp)
  11109. 49d00: 8922703a and r17,r17,r4
  11110. 49d04: 002b883a mov r21,zero
  11111. 49d08: 103f2f1e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8>
  11112. 49d0c: 803e2f26 beq r16,zero,495cc <__alt_data_end+0xfffd75cc>
  11113. 49d10: 0027883a mov r19,zero
  11114. 49d14: 9cc00c04 addi r19,r19,48
  11115. 49d18: dcc019c5 stb r19,103(sp)
  11116. 49d1c: dd002817 ldw r20,160(sp)
  11117. 49d20: ddc019c4 addi r23,sp,103
  11118. 49d24: 003e2c06 br 495d8 <__alt_data_end+0xfffd75d8>
  11119. 49d28: 9cc03fcc andi r19,r19,255
  11120. 49d2c: b811883a mov r8,r23
  11121. 49d30: 9802571e bne r19,zero,4a690 <___vfiprintf_internal_r+0x14c4>
  11122. 49d34: 18005726 beq r3,zero,49e94 <___vfiprintf_internal_r+0xcc8>
  11123. 49d38: 04c00044 movi r19,1
  11124. 49d3c: d8c01005 stb r3,64(sp)
  11125. 49d40: d8001d85 stb zero,118(sp)
  11126. 49d44: 9829883a mov r20,r19
  11127. 49d48: ddc01004 addi r23,sp,64
  11128. 49d4c: 003f0a06 br 49978 <__alt_data_end+0xfffd7978>
  11129. 49d50: d9402017 ldw r5,128(sp)
  11130. 49d54: d9002117 ldw r4,132(sp)
  11131. 49d58: d9801a04 addi r6,sp,104
  11132. 49d5c: da802a15 stw r10,168(sp)
  11133. 49d60: 00490b80 call 490b8 <__sprint_r.part.0>
  11134. 49d64: da802a17 ldw r10,168(sp)
  11135. 49d68: 1000501e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0>
  11136. 49d6c: d9801b17 ldw r6,108(sp)
  11137. 49d70: d8801c17 ldw r2,112(sp)
  11138. 49d74: d811883a mov r8,sp
  11139. 49d78: 31000044 addi r4,r6,1
  11140. 49d7c: 003e3606 br 49658 <__alt_data_end+0xfffd7658>
  11141. 49d80: d9001b17 ldw r4,108(sp)
  11142. 49d84: d8801c17 ldw r2,112(sp)
  11143. 49d88: 21400044 addi r5,r4,1
  11144. 49d8c: d9801d87 ldb r6,118(sp)
  11145. 49d90: 303e5226 beq r6,zero,496dc <__alt_data_end+0xfffd76dc>
  11146. 49d94: 01800044 movi r6,1
  11147. 49d98: d9001d84 addi r4,sp,118
  11148. 49d9c: 1185883a add r2,r2,r6
  11149. 49da0: 41000015 stw r4,0(r8)
  11150. 49da4: 41800115 stw r6,4(r8)
  11151. 49da8: d8801c15 stw r2,112(sp)
  11152. 49dac: d9401b15 stw r5,108(sp)
  11153. 49db0: 010001c4 movi r4,7
  11154. 49db4: 2140b00e bge r4,r5,4a078 <___vfiprintf_internal_r+0xeac>
  11155. 49db8: 1000f61e bne r2,zero,4a194 <___vfiprintf_internal_r+0xfc8>
  11156. 49dbc: 3800b31e bne r7,zero,4a08c <___vfiprintf_internal_r+0xec0>
  11157. 49dc0: 0009883a mov r4,zero
  11158. 49dc4: 300b883a mov r5,r6
  11159. 49dc8: d811883a mov r8,sp
  11160. 49dcc: 01802004 movi r6,128
  11161. 49dd0: 19be5226 beq r3,r6,4971c <__alt_data_end+0xfffd771c>
  11162. 49dd4: 8521c83a sub r16,r16,r20
  11163. 49dd8: 043e790e bge zero,r16,497c0 <__alt_data_end+0xfffd77c0>
  11164. 49ddc: 05400404 movi r21,16
  11165. 49de0: ac01b00e bge r21,r16,4a4a4 <___vfiprintf_internal_r+0x12d8>
  11166. 49de4: 01400174 movhi r5,5
  11167. 49de8: 2948e004 addi r5,r5,9088
  11168. 49dec: d9402315 stw r5,140(sp)
  11169. 49df0: 070001c4 movi fp,7
  11170. 49df4: 00000506 br 49e0c <___vfiprintf_internal_r+0xc40>
  11171. 49df8: 21400084 addi r5,r4,2
  11172. 49dfc: 42000204 addi r8,r8,8
  11173. 49e00: 1809883a mov r4,r3
  11174. 49e04: 843ffc04 addi r16,r16,-16
  11175. 49e08: ac000d0e bge r21,r16,49e40 <___vfiprintf_internal_r+0xc74>
  11176. 49e0c: 10800404 addi r2,r2,16
  11177. 49e10: 20c00044 addi r3,r4,1
  11178. 49e14: 44800015 stw r18,0(r8)
  11179. 49e18: 45400115 stw r21,4(r8)
  11180. 49e1c: d8801c15 stw r2,112(sp)
  11181. 49e20: d8c01b15 stw r3,108(sp)
  11182. 49e24: e0fff40e bge fp,r3,49df8 <__alt_data_end+0xfffd7df8>
  11183. 49e28: 1000101e bne r2,zero,49e6c <___vfiprintf_internal_r+0xca0>
  11184. 49e2c: 843ffc04 addi r16,r16,-16
  11185. 49e30: 01400044 movi r5,1
  11186. 49e34: 0009883a mov r4,zero
  11187. 49e38: d811883a mov r8,sp
  11188. 49e3c: ac3ff316 blt r21,r16,49e0c <__alt_data_end+0xfffd7e0c>
  11189. 49e40: d8c02317 ldw r3,140(sp)
  11190. 49e44: 1405883a add r2,r2,r16
  11191. 49e48: 44000115 stw r16,4(r8)
  11192. 49e4c: 40c00015 stw r3,0(r8)
  11193. 49e50: d8801c15 stw r2,112(sp)
  11194. 49e54: d9401b15 stw r5,108(sp)
  11195. 49e58: 00c001c4 movi r3,7
  11196. 49e5c: 19401916 blt r3,r5,49ec4 <___vfiprintf_internal_r+0xcf8>
  11197. 49e60: 42000204 addi r8,r8,8
  11198. 49e64: 29400044 addi r5,r5,1
  11199. 49e68: 003e5506 br 497c0 <__alt_data_end+0xfffd77c0>
  11200. 49e6c: d9402017 ldw r5,128(sp)
  11201. 49e70: d9002117 ldw r4,132(sp)
  11202. 49e74: d9801a04 addi r6,sp,104
  11203. 49e78: 00490b80 call 490b8 <__sprint_r.part.0>
  11204. 49e7c: 10000b1e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0>
  11205. 49e80: d9001b17 ldw r4,108(sp)
  11206. 49e84: d8801c17 ldw r2,112(sp)
  11207. 49e88: d811883a mov r8,sp
  11208. 49e8c: 21400044 addi r5,r4,1
  11209. 49e90: 003fdc06 br 49e04 <__alt_data_end+0xfffd7e04>
  11210. 49e94: d8801c17 ldw r2,112(sp)
  11211. 49e98: 10000426 beq r2,zero,49eac <___vfiprintf_internal_r+0xce0>
  11212. 49e9c: d9402017 ldw r5,128(sp)
  11213. 49ea0: d9002117 ldw r4,132(sp)
  11214. 49ea4: d9801a04 addi r6,sp,104
  11215. 49ea8: 00490b80 call 490b8 <__sprint_r.part.0>
  11216. 49eac: d9402017 ldw r5,128(sp)
  11217. 49eb0: 2880030b ldhu r2,12(r5)
  11218. 49eb4: 1080100c andi r2,r2,64
  11219. 49eb8: 10014d1e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224>
  11220. 49ebc: d8802417 ldw r2,144(sp)
  11221. 49ec0: 003d9706 br 49520 <__alt_data_end+0xfffd7520>
  11222. 49ec4: 1000d21e bne r2,zero,4a210 <___vfiprintf_internal_r+0x1044>
  11223. 49ec8: 00c00044 movi r3,1
  11224. 49ecc: a005883a mov r2,r20
  11225. 49ed0: ddc00015 stw r23,0(sp)
  11226. 49ed4: dd000115 stw r20,4(sp)
  11227. 49ed8: dd001c15 stw r20,112(sp)
  11228. 49edc: d8c01b15 stw r3,108(sp)
  11229. 49ee0: d811883a mov r8,sp
  11230. 49ee4: 42000204 addi r8,r8,8
  11231. 49ee8: 8c40010c andi r17,r17,4
  11232. 49eec: 88004026 beq r17,zero,49ff0 <___vfiprintf_internal_r+0xe24>
  11233. 49ef0: d9002517 ldw r4,148(sp)
  11234. 49ef4: 24e3c83a sub r17,r4,r19
  11235. 49ef8: 04403d0e bge zero,r17,49ff0 <___vfiprintf_internal_r+0xe24>
  11236. 49efc: 04000404 movi r16,16
  11237. 49f00: 8441a90e bge r16,r17,4a5a8 <___vfiprintf_internal_r+0x13dc>
  11238. 49f04: 00c00174 movhi r3,5
  11239. 49f08: 18c8e404 addi r3,r3,9104
  11240. 49f0c: d9001b17 ldw r4,108(sp)
  11241. 49f10: d8c02315 stw r3,140(sp)
  11242. 49f14: 050001c4 movi r20,7
  11243. 49f18: dd402117 ldw r21,132(sp)
  11244. 49f1c: ddc02017 ldw r23,128(sp)
  11245. 49f20: 00000506 br 49f38 <___vfiprintf_internal_r+0xd6c>
  11246. 49f24: 21400084 addi r5,r4,2
  11247. 49f28: 42000204 addi r8,r8,8
  11248. 49f2c: 1809883a mov r4,r3
  11249. 49f30: 8c7ffc04 addi r17,r17,-16
  11250. 49f34: 84400f0e bge r16,r17,49f74 <___vfiprintf_internal_r+0xda8>
  11251. 49f38: 01400174 movhi r5,5
  11252. 49f3c: 10800404 addi r2,r2,16
  11253. 49f40: 20c00044 addi r3,r4,1
  11254. 49f44: 2948e404 addi r5,r5,9104
  11255. 49f48: 41400015 stw r5,0(r8)
  11256. 49f4c: 44000115 stw r16,4(r8)
  11257. 49f50: d8801c15 stw r2,112(sp)
  11258. 49f54: d8c01b15 stw r3,108(sp)
  11259. 49f58: a0fff20e bge r20,r3,49f24 <__alt_data_end+0xfffd7f24>
  11260. 49f5c: 1000141e bne r2,zero,49fb0 <___vfiprintf_internal_r+0xde4>
  11261. 49f60: 8c7ffc04 addi r17,r17,-16
  11262. 49f64: 01400044 movi r5,1
  11263. 49f68: 0009883a mov r4,zero
  11264. 49f6c: d811883a mov r8,sp
  11265. 49f70: 847ff116 blt r16,r17,49f38 <__alt_data_end+0xfffd7f38>
  11266. 49f74: d8c02317 ldw r3,140(sp)
  11267. 49f78: 1445883a add r2,r2,r17
  11268. 49f7c: 44400115 stw r17,4(r8)
  11269. 49f80: 40c00015 stw r3,0(r8)
  11270. 49f84: d8801c15 stw r2,112(sp)
  11271. 49f88: d9401b15 stw r5,108(sp)
  11272. 49f8c: 00c001c4 movi r3,7
  11273. 49f90: 1940170e bge r3,r5,49ff0 <___vfiprintf_internal_r+0xe24>
  11274. 49f94: 1000101e bne r2,zero,49fd8 <___vfiprintf_internal_r+0xe0c>
  11275. 49f98: d8802517 ldw r2,148(sp)
  11276. 49f9c: 14c11616 blt r2,r19,4a3f8 <___vfiprintf_internal_r+0x122c>
  11277. 49fa0: d9002417 ldw r4,144(sp)
  11278. 49fa4: 2089883a add r4,r4,r2
  11279. 49fa8: d9002415 stw r4,144(sp)
  11280. 49fac: 003e1806 br 49810 <__alt_data_end+0xfffd7810>
  11281. 49fb0: d9801a04 addi r6,sp,104
  11282. 49fb4: b80b883a mov r5,r23
  11283. 49fb8: a809883a mov r4,r21
  11284. 49fbc: 00490b80 call 490b8 <__sprint_r.part.0>
  11285. 49fc0: 103fba1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11286. 49fc4: d9001b17 ldw r4,108(sp)
  11287. 49fc8: d8801c17 ldw r2,112(sp)
  11288. 49fcc: d811883a mov r8,sp
  11289. 49fd0: 21400044 addi r5,r4,1
  11290. 49fd4: 003fd606 br 49f30 <__alt_data_end+0xfffd7f30>
  11291. 49fd8: d9402017 ldw r5,128(sp)
  11292. 49fdc: d9002117 ldw r4,132(sp)
  11293. 49fe0: d9801a04 addi r6,sp,104
  11294. 49fe4: 00490b80 call 490b8 <__sprint_r.part.0>
  11295. 49fe8: 103fb01e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11296. 49fec: d8801c17 ldw r2,112(sp)
  11297. 49ff0: d8c02517 ldw r3,148(sp)
  11298. 49ff4: 1cc0010e bge r3,r19,49ffc <___vfiprintf_internal_r+0xe30>
  11299. 49ff8: 9807883a mov r3,r19
  11300. 49ffc: d9002417 ldw r4,144(sp)
  11301. 4a000: 20c9883a add r4,r4,r3
  11302. 4a004: d9002415 stw r4,144(sp)
  11303. 4a008: 103e0126 beq r2,zero,49810 <__alt_data_end+0xfffd7810>
  11304. 4a00c: d9402017 ldw r5,128(sp)
  11305. 4a010: d9002117 ldw r4,132(sp)
  11306. 4a014: d9801a04 addi r6,sp,104
  11307. 4a018: 00490b80 call 490b8 <__sprint_r.part.0>
  11308. 4a01c: 103dfc26 beq r2,zero,49810 <__alt_data_end+0xfffd7810>
  11309. 4a020: 003fa206 br 49eac <__alt_data_end+0xfffd7eac>
  11310. 4a024: d9402017 ldw r5,128(sp)
  11311. 4a028: d9002117 ldw r4,132(sp)
  11312. 4a02c: d9801a04 addi r6,sp,104
  11313. 4a030: d9c02b15 stw r7,172(sp)
  11314. 4a034: 00490b80 call 490b8 <__sprint_r.part.0>
  11315. 4a038: d9c02b17 ldw r7,172(sp)
  11316. 4a03c: 103f9b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11317. 4a040: d9001b17 ldw r4,108(sp)
  11318. 4a044: d8801c17 ldw r2,112(sp)
  11319. 4a048: d811883a mov r8,sp
  11320. 4a04c: 21800044 addi r6,r4,1
  11321. 4a050: 003dbf06 br 49750 <__alt_data_end+0xfffd7750>
  11322. 4a054: 1000d81e bne r2,zero,4a3b8 <___vfiprintf_internal_r+0x11ec>
  11323. 4a058: d9001d87 ldb r4,118(sp)
  11324. 4a05c: 20000a26 beq r4,zero,4a088 <___vfiprintf_internal_r+0xebc>
  11325. 4a060: 00800044 movi r2,1
  11326. 4a064: d9001d84 addi r4,sp,118
  11327. 4a068: 100b883a mov r5,r2
  11328. 4a06c: d9000015 stw r4,0(sp)
  11329. 4a070: d8800115 stw r2,4(sp)
  11330. 4a074: d811883a mov r8,sp
  11331. 4a078: 2809883a mov r4,r5
  11332. 4a07c: 42000204 addi r8,r8,8
  11333. 4a080: 29400044 addi r5,r5,1
  11334. 4a084: 003d9506 br 496dc <__alt_data_end+0xfffd76dc>
  11335. 4a088: 3800fd26 beq r7,zero,4a480 <___vfiprintf_internal_r+0x12b4>
  11336. 4a08c: 00800084 movi r2,2
  11337. 4a090: d9001d04 addi r4,sp,116
  11338. 4a094: d9000015 stw r4,0(sp)
  11339. 4a098: d8800115 stw r2,4(sp)
  11340. 4a09c: 01400044 movi r5,1
  11341. 4a0a0: d811883a mov r8,sp
  11342. 4a0a4: 2809883a mov r4,r5
  11343. 4a0a8: 42000204 addi r8,r8,8
  11344. 4a0ac: 29400044 addi r5,r5,1
  11345. 4a0b0: 003f4606 br 49dcc <__alt_data_end+0xfffd7dcc>
  11346. 4a0b4: d8802517 ldw r2,148(sp)
  11347. 4a0b8: 14c0010e bge r2,r19,4a0c0 <___vfiprintf_internal_r+0xef4>
  11348. 4a0bc: 9805883a mov r2,r19
  11349. 4a0c0: d9402417 ldw r5,144(sp)
  11350. 4a0c4: 288b883a add r5,r5,r2
  11351. 4a0c8: d9402415 stw r5,144(sp)
  11352. 4a0cc: 003dd006 br 49810 <__alt_data_end+0xfffd7810>
  11353. 4a0d0: d8001d85 stb zero,118(sp)
  11354. 4a0d4: 80005d16 blt r16,zero,4a24c <___vfiprintf_internal_r+0x1080>
  11355. 4a0d8: 00ffdfc4 movi r3,-129
  11356. 4a0dc: 9d04b03a or r2,r19,r20
  11357. 4a0e0: 88e2703a and r17,r17,r3
  11358. 4a0e4: 103d3726 beq r2,zero,495c4 <__alt_data_end+0xfffd75c4>
  11359. 4a0e8: 002b883a mov r21,zero
  11360. 4a0ec: d9002617 ldw r4,152(sp)
  11361. 4a0f0: ddc01a04 addi r23,sp,104
  11362. 4a0f4: 988003cc andi r2,r19,15
  11363. 4a0f8: a006973a slli r3,r20,28
  11364. 4a0fc: 2085883a add r2,r4,r2
  11365. 4a100: 9826d13a srli r19,r19,4
  11366. 4a104: 10800003 ldbu r2,0(r2)
  11367. 4a108: a028d13a srli r20,r20,4
  11368. 4a10c: bdffffc4 addi r23,r23,-1
  11369. 4a110: 1ce6b03a or r19,r3,r19
  11370. 4a114: b8800005 stb r2,0(r23)
  11371. 4a118: 9d04b03a or r2,r19,r20
  11372. 4a11c: 103ff51e bne r2,zero,4a0f4 <__alt_data_end+0xfffd80f4>
  11373. 4a120: d8801e17 ldw r2,120(sp)
  11374. 4a124: 15e9c83a sub r20,r2,r23
  11375. 4a128: 003d2b06 br 495d8 <__alt_data_end+0xfffd75d8>
  11376. 4a12c: d9402017 ldw r5,128(sp)
  11377. 4a130: d9002117 ldw r4,132(sp)
  11378. 4a134: d9801a04 addi r6,sp,104
  11379. 4a138: 00490b80 call 490b8 <__sprint_r.part.0>
  11380. 4a13c: 103f5b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11381. 4a140: d8801c17 ldw r2,112(sp)
  11382. 4a144: d811883a mov r8,sp
  11383. 4a148: 003f6706 br 49ee8 <__alt_data_end+0xfffd7ee8>
  11384. 4a14c: d9402017 ldw r5,128(sp)
  11385. 4a150: d9002117 ldw r4,132(sp)
  11386. 4a154: d9801a04 addi r6,sp,104
  11387. 4a158: 00490b80 call 490b8 <__sprint_r.part.0>
  11388. 4a15c: 103f531e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11389. 4a160: d811883a mov r8,sp
  11390. 4a164: 003cd906 br 494cc <__alt_data_end+0xfffd74cc>
  11391. 4a168: 10803fcc andi r2,r2,255
  11392. 4a16c: 1080201c xori r2,r2,128
  11393. 4a170: 10bfe004 addi r2,r2,-128
  11394. 4a174: 00c00c04 movi r3,48
  11395. 4a178: 10ffe926 beq r2,r3,4a120 <__alt_data_end+0xfffd8120>
  11396. 4a17c: b8ffffc5 stb r3,-1(r23)
  11397. 4a180: d8c01e17 ldw r3,120(sp)
  11398. 4a184: b8bfffc4 addi r2,r23,-1
  11399. 4a188: 102f883a mov r23,r2
  11400. 4a18c: 18a9c83a sub r20,r3,r2
  11401. 4a190: 003d1106 br 495d8 <__alt_data_end+0xfffd75d8>
  11402. 4a194: d9402017 ldw r5,128(sp)
  11403. 4a198: d9002117 ldw r4,132(sp)
  11404. 4a19c: d9801a04 addi r6,sp,104
  11405. 4a1a0: d8c02a15 stw r3,168(sp)
  11406. 4a1a4: d9c02b15 stw r7,172(sp)
  11407. 4a1a8: 00490b80 call 490b8 <__sprint_r.part.0>
  11408. 4a1ac: d8c02a17 ldw r3,168(sp)
  11409. 4a1b0: d9c02b17 ldw r7,172(sp)
  11410. 4a1b4: 103f3d1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11411. 4a1b8: d9001b17 ldw r4,108(sp)
  11412. 4a1bc: d8801c17 ldw r2,112(sp)
  11413. 4a1c0: d811883a mov r8,sp
  11414. 4a1c4: 21400044 addi r5,r4,1
  11415. 4a1c8: 003d4406 br 496dc <__alt_data_end+0xfffd76dc>
  11416. 4a1cc: d9402017 ldw r5,128(sp)
  11417. 4a1d0: d9002117 ldw r4,132(sp)
  11418. 4a1d4: d9801a04 addi r6,sp,104
  11419. 4a1d8: d8c02a15 stw r3,168(sp)
  11420. 4a1dc: 00490b80 call 490b8 <__sprint_r.part.0>
  11421. 4a1e0: d8c02a17 ldw r3,168(sp)
  11422. 4a1e4: 103f311e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11423. 4a1e8: d9001b17 ldw r4,108(sp)
  11424. 4a1ec: d8801c17 ldw r2,112(sp)
  11425. 4a1f0: d811883a mov r8,sp
  11426. 4a1f4: 21400044 addi r5,r4,1
  11427. 4a1f8: 003ef406 br 49dcc <__alt_data_end+0xfffd7dcc>
  11428. 4a1fc: 1000bd1e bne r2,zero,4a4f4 <___vfiprintf_internal_r+0x1328>
  11429. 4a200: 01400044 movi r5,1
  11430. 4a204: 0009883a mov r4,zero
  11431. 4a208: d811883a mov r8,sp
  11432. 4a20c: 003ef106 br 49dd4 <__alt_data_end+0xfffd7dd4>
  11433. 4a210: d9402017 ldw r5,128(sp)
  11434. 4a214: d9002117 ldw r4,132(sp)
  11435. 4a218: d9801a04 addi r6,sp,104
  11436. 4a21c: 00490b80 call 490b8 <__sprint_r.part.0>
  11437. 4a220: 103f221e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11438. 4a224: d9401b17 ldw r5,108(sp)
  11439. 4a228: d8801c17 ldw r2,112(sp)
  11440. 4a22c: d811883a mov r8,sp
  11441. 4a230: 29400044 addi r5,r5,1
  11442. 4a234: 003d6206 br 497c0 <__alt_data_end+0xfffd77c0>
  11443. 4a238: 01400174 movhi r5,5
  11444. 4a23c: 29488004 addi r5,r5,8704
  11445. 4a240: d9402615 stw r5,152(sp)
  11446. 4a244: d8c02215 stw r3,136(sp)
  11447. 4a248: 1023883a mov r17,r2
  11448. 4a24c: 9d04b03a or r2,r19,r20
  11449. 4a250: 103fa51e bne r2,zero,4a0e8 <__alt_data_end+0xfffd80e8>
  11450. 4a254: 002b883a mov r21,zero
  11451. 4a258: 00800084 movi r2,2
  11452. 4a25c: 003e4a06 br 49b88 <__alt_data_end+0xfffd7b88>
  11453. 4a260: 01400174 movhi r5,5
  11454. 4a264: 29488004 addi r5,r5,8704
  11455. 4a268: 002b883a mov r21,zero
  11456. 4a26c: d9402615 stw r5,152(sp)
  11457. 4a270: 003f9e06 br 4a0ec <__alt_data_end+0xfffd80ec>
  11458. 4a274: d9402217 ldw r5,136(sp)
  11459. 4a278: d8001d85 stb zero,118(sp)
  11460. 4a27c: 0029883a mov r20,zero
  11461. 4a280: 28800104 addi r2,r5,4
  11462. 4a284: 2cc00017 ldw r19,0(r5)
  11463. 4a288: 803e3a16 blt r16,zero,49b74 <__alt_data_end+0xfffd7b74>
  11464. 4a28c: 00ffdfc4 movi r3,-129
  11465. 4a290: d8802215 stw r2,136(sp)
  11466. 4a294: 88e2703a and r17,r17,r3
  11467. 4a298: 002b883a mov r21,zero
  11468. 4a29c: 983e9b26 beq r19,zero,49d0c <__alt_data_end+0xfffd7d0c>
  11469. 4a2a0: 00800244 movi r2,9
  11470. 4a2a4: 14fdc936 bltu r2,r19,499cc <__alt_data_end+0xfffd79cc>
  11471. 4a2a8: 003e9a06 br 49d14 <__alt_data_end+0xfffd7d14>
  11472. 4a2ac: 00800c04 movi r2,48
  11473. 4a2b0: d8c01d45 stb r3,117(sp)
  11474. 4a2b4: d8801d05 stb r2,116(sp)
  11475. 4a2b8: d8001d85 stb zero,118(sp)
  11476. 4a2bc: 88c00094 ori r3,r17,2
  11477. 4a2c0: 80009c16 blt r16,zero,4a534 <___vfiprintf_internal_r+0x1368>
  11478. 4a2c4: 00bfdfc4 movi r2,-129
  11479. 4a2c8: 88a2703a and r17,r17,r2
  11480. 4a2cc: 8c400094 ori r17,r17,2
  11481. 4a2d0: 002b883a mov r21,zero
  11482. 4a2d4: 003f8506 br 4a0ec <__alt_data_end+0xfffd80ec>
  11483. 4a2d8: b029883a mov r20,r22
  11484. 4a2dc: 003c0b06 br 4930c <__alt_data_end+0xfffd730c>
  11485. 4a2e0: 04e7c83a sub r19,zero,r19
  11486. 4a2e4: 05400b44 movi r21,45
  11487. 4a2e8: 9804c03a cmpne r2,r19,zero
  11488. 4a2ec: 0529c83a sub r20,zero,r20
  11489. 4a2f0: dd401d85 stb r21,118(sp)
  11490. 4a2f4: a0a9c83a sub r20,r20,r2
  11491. 4a2f8: 80009716 blt r16,zero,4a558 <___vfiprintf_internal_r+0x138c>
  11492. 4a2fc: 00bfdfc4 movi r2,-129
  11493. 4a300: 88a2703a and r17,r17,r2
  11494. 4a304: 003db006 br 499c8 <__alt_data_end+0xfffd79c8>
  11495. 4a308: b0c00007 ldb r3,0(r22)
  11496. 4a30c: 003c0c06 br 49340 <__alt_data_end+0xfffd7340>
  11497. 4a310: 8880100c andi r2,r17,64
  11498. 4a314: d8001d85 stb zero,118(sp)
  11499. 4a318: 1000461e bne r2,zero,4a434 <___vfiprintf_internal_r+0x1268>
  11500. 4a31c: d9002217 ldw r4,136(sp)
  11501. 4a320: 0029883a mov r20,zero
  11502. 4a324: 20800104 addi r2,r4,4
  11503. 4a328: 24c00017 ldw r19,0(r4)
  11504. 4a32c: 803df80e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10>
  11505. 4a330: 9d06b03a or r3,r19,r20
  11506. 4a334: d8802215 stw r2,136(sp)
  11507. 4a338: 183d5e1e bne r3,zero,498b4 <__alt_data_end+0xfffd78b4>
  11508. 4a33c: 002b883a mov r21,zero
  11509. 4a340: 0005883a mov r2,zero
  11510. 4a344: 003e1006 br 49b88 <__alt_data_end+0xfffd7b88>
  11511. 4a348: 8880040c andi r2,r17,16
  11512. 4a34c: 1000321e bne r2,zero,4a418 <___vfiprintf_internal_r+0x124c>
  11513. 4a350: 8c40100c andi r17,r17,64
  11514. 4a354: 88008d26 beq r17,zero,4a58c <___vfiprintf_internal_r+0x13c0>
  11515. 4a358: d9402217 ldw r5,136(sp)
  11516. 4a35c: d8c02417 ldw r3,144(sp)
  11517. 4a360: 28800017 ldw r2,0(r5)
  11518. 4a364: 29400104 addi r5,r5,4
  11519. 4a368: d9402215 stw r5,136(sp)
  11520. 4a36c: 10c0000d sth r3,0(r2)
  11521. 4a370: 003bca06 br 4929c <__alt_data_end+0xfffd729c>
  11522. 4a374: 8880100c andi r2,r17,64
  11523. 4a378: 10003a26 beq r2,zero,4a464 <___vfiprintf_internal_r+0x1298>
  11524. 4a37c: d8802217 ldw r2,136(sp)
  11525. 4a380: 14c0000f ldh r19,0(r2)
  11526. 4a384: 10800104 addi r2,r2,4
  11527. 4a388: d8802215 stw r2,136(sp)
  11528. 4a38c: 9829d7fa srai r20,r19,31
  11529. 4a390: a005883a mov r2,r20
  11530. 4a394: 003d8506 br 499ac <__alt_data_end+0xfffd79ac>
  11531. 4a398: 8880100c andi r2,r17,64
  11532. 4a39c: 10002b26 beq r2,zero,4a44c <___vfiprintf_internal_r+0x1280>
  11533. 4a3a0: d8802217 ldw r2,136(sp)
  11534. 4a3a4: 0029883a mov r20,zero
  11535. 4a3a8: 14c0000b ldhu r19,0(r2)
  11536. 4a3ac: 10800104 addi r2,r2,4
  11537. 4a3b0: d8802215 stw r2,136(sp)
  11538. 4a3b4: 003d5d06 br 4992c <__alt_data_end+0xfffd792c>
  11539. 4a3b8: d9402017 ldw r5,128(sp)
  11540. 4a3bc: d9002117 ldw r4,132(sp)
  11541. 4a3c0: d9801a04 addi r6,sp,104
  11542. 4a3c4: d8c02a15 stw r3,168(sp)
  11543. 4a3c8: d9c02b15 stw r7,172(sp)
  11544. 4a3cc: 00490b80 call 490b8 <__sprint_r.part.0>
  11545. 4a3d0: d8c02a17 ldw r3,168(sp)
  11546. 4a3d4: d9c02b17 ldw r7,172(sp)
  11547. 4a3d8: 103eb41e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11548. 4a3dc: d9001b17 ldw r4,108(sp)
  11549. 4a3e0: d8801c17 ldw r2,112(sp)
  11550. 4a3e4: d811883a mov r8,sp
  11551. 4a3e8: 21400044 addi r5,r4,1
  11552. 4a3ec: 003e6706 br 49d8c <__alt_data_end+0xfffd7d8c>
  11553. 4a3f0: 00bfffc4 movi r2,-1
  11554. 4a3f4: 003c4a06 br 49520 <__alt_data_end+0xfffd7520>
  11555. 4a3f8: 9805883a mov r2,r19
  11556. 4a3fc: 003ee806 br 49fa0 <__alt_data_end+0xfffd7fa0>
  11557. 4a400: d8c02217 ldw r3,136(sp)
  11558. 4a404: 0029883a mov r20,zero
  11559. 4a408: 18800104 addi r2,r3,4
  11560. 4a40c: 1cc0000b ldhu r19,0(r3)
  11561. 4a410: 803f9e0e bge r16,zero,4a28c <__alt_data_end+0xfffd828c>
  11562. 4a414: 003dd706 br 49b74 <__alt_data_end+0xfffd7b74>
  11563. 4a418: d8c02217 ldw r3,136(sp)
  11564. 4a41c: d9002417 ldw r4,144(sp)
  11565. 4a420: 18800017 ldw r2,0(r3)
  11566. 4a424: 18c00104 addi r3,r3,4
  11567. 4a428: d8c02215 stw r3,136(sp)
  11568. 4a42c: 11000015 stw r4,0(r2)
  11569. 4a430: 003b9a06 br 4929c <__alt_data_end+0xfffd729c>
  11570. 4a434: d8c02217 ldw r3,136(sp)
  11571. 4a438: 0029883a mov r20,zero
  11572. 4a43c: 18800104 addi r2,r3,4
  11573. 4a440: 1cc0000b ldhu r19,0(r3)
  11574. 4a444: 803db20e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10>
  11575. 4a448: 003fb906 br 4a330 <__alt_data_end+0xfffd8330>
  11576. 4a44c: d9002217 ldw r4,136(sp)
  11577. 4a450: 0029883a mov r20,zero
  11578. 4a454: 24c00017 ldw r19,0(r4)
  11579. 4a458: 21000104 addi r4,r4,4
  11580. 4a45c: d9002215 stw r4,136(sp)
  11581. 4a460: 003d3206 br 4992c <__alt_data_end+0xfffd792c>
  11582. 4a464: d8c02217 ldw r3,136(sp)
  11583. 4a468: 1cc00017 ldw r19,0(r3)
  11584. 4a46c: 18c00104 addi r3,r3,4
  11585. 4a470: d8c02215 stw r3,136(sp)
  11586. 4a474: 9829d7fa srai r20,r19,31
  11587. 4a478: a005883a mov r2,r20
  11588. 4a47c: 003d4b06 br 499ac <__alt_data_end+0xfffd79ac>
  11589. 4a480: 0009883a mov r4,zero
  11590. 4a484: 01400044 movi r5,1
  11591. 4a488: d811883a mov r8,sp
  11592. 4a48c: 003e4f06 br 49dcc <__alt_data_end+0xfffd7dcc>
  11593. 4a490: d8c02215 stw r3,136(sp)
  11594. 4a494: 002b883a mov r21,zero
  11595. 4a498: 003db806 br 49b7c <__alt_data_end+0xfffd7b7c>
  11596. 4a49c: d811883a mov r8,sp
  11597. 4a4a0: 003e9606 br 49efc <__alt_data_end+0xfffd7efc>
  11598. 4a4a4: 01000174 movhi r4,5
  11599. 4a4a8: 2108e004 addi r4,r4,9088
  11600. 4a4ac: d9002315 stw r4,140(sp)
  11601. 4a4b0: 003e6306 br 49e40 <__alt_data_end+0xfffd7e40>
  11602. 4a4b4: b0c00043 ldbu r3,1(r22)
  11603. 4a4b8: 8c400814 ori r17,r17,32
  11604. 4a4bc: b5800044 addi r22,r22,1
  11605. 4a4c0: 18c03fcc andi r3,r3,255
  11606. 4a4c4: 18c0201c xori r3,r3,128
  11607. 4a4c8: 18ffe004 addi r3,r3,-128
  11608. 4a4cc: 003b9c06 br 49340 <__alt_data_end+0xfffd7340>
  11609. 4a4d0: b809883a mov r4,r23
  11610. 4a4d4: da002a15 stw r8,168(sp)
  11611. 4a4d8: 00490200 call 49020 <strlen>
  11612. 4a4dc: 1029883a mov r20,r2
  11613. 4a4e0: dd401d83 ldbu r21,118(sp)
  11614. 4a4e4: df002215 stw fp,136(sp)
  11615. 4a4e8: 0021883a mov r16,zero
  11616. 4a4ec: da002a17 ldw r8,168(sp)
  11617. 4a4f0: 003c3906 br 495d8 <__alt_data_end+0xfffd75d8>
  11618. 4a4f4: d9402017 ldw r5,128(sp)
  11619. 4a4f8: d9002117 ldw r4,132(sp)
  11620. 4a4fc: d9801a04 addi r6,sp,104
  11621. 4a500: 00490b80 call 490b8 <__sprint_r.part.0>
  11622. 4a504: 103e691e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
  11623. 4a508: d9001b17 ldw r4,108(sp)
  11624. 4a50c: d8801c17 ldw r2,112(sp)
  11625. 4a510: d811883a mov r8,sp
  11626. 4a514: 21400044 addi r5,r4,1
  11627. 4a518: 003e2e06 br 49dd4 <__alt_data_end+0xfffd7dd4>
  11628. 4a51c: 01000174 movhi r4,5
  11629. 4a520: 2108e404 addi r4,r4,9104
  11630. 4a524: d9002315 stw r4,140(sp)
  11631. 4a528: d9001b17 ldw r4,108(sp)
  11632. 4a52c: 21000044 addi r4,r4,1
  11633. 4a530: 003c5e06 br 496ac <__alt_data_end+0xfffd76ac>
  11634. 4a534: 002b883a mov r21,zero
  11635. 4a538: 00800084 movi r2,2
  11636. 4a53c: 10803fcc andi r2,r2,255
  11637. 4a540: 01000044 movi r4,1
  11638. 4a544: 11002b26 beq r2,r4,4a5f4 <___vfiprintf_internal_r+0x1428>
  11639. 4a548: 01000084 movi r4,2
  11640. 4a54c: 11002b1e bne r2,r4,4a5fc <___vfiprintf_internal_r+0x1430>
  11641. 4a550: 1823883a mov r17,r3
  11642. 4a554: 003ee506 br 4a0ec <__alt_data_end+0xfffd80ec>
  11643. 4a558: 8807883a mov r3,r17
  11644. 4a55c: 00800044 movi r2,1
  11645. 4a560: 003ff606 br 4a53c <__alt_data_end+0xfffd853c>
  11646. 4a564: 00800184 movi r2,6
  11647. 4a568: 1400012e bgeu r2,r16,4a570 <___vfiprintf_internal_r+0x13a4>
  11648. 4a56c: 1021883a mov r16,r2
  11649. 4a570: 8029883a mov r20,r16
  11650. 4a574: 8027883a mov r19,r16
  11651. 4a578: 80002216 blt r16,zero,4a604 <___vfiprintf_internal_r+0x1438>
  11652. 4a57c: 05c00174 movhi r23,5
  11653. 4a580: df002215 stw fp,136(sp)
  11654. 4a584: bdc88504 addi r23,r23,8724
  11655. 4a588: 003cfb06 br 49978 <__alt_data_end+0xfffd7978>
  11656. 4a58c: d9002217 ldw r4,136(sp)
  11657. 4a590: d9402417 ldw r5,144(sp)
  11658. 4a594: 20800017 ldw r2,0(r4)
  11659. 4a598: 21000104 addi r4,r4,4
  11660. 4a59c: d9002215 stw r4,136(sp)
  11661. 4a5a0: 11400015 stw r5,0(r2)
  11662. 4a5a4: 003b3d06 br 4929c <__alt_data_end+0xfffd729c>
  11663. 4a5a8: 01400174 movhi r5,5
  11664. 4a5ac: 2948e404 addi r5,r5,9104
  11665. 4a5b0: d9402315 stw r5,140(sp)
  11666. 4a5b4: d9401b17 ldw r5,108(sp)
  11667. 4a5b8: 29400044 addi r5,r5,1
  11668. 4a5bc: 003e6d06 br 49f74 <__alt_data_end+0xfffd7f74>
  11669. 4a5c0: 8029883a mov r20,r16
  11670. 4a5c4: dd401d83 ldbu r21,118(sp)
  11671. 4a5c8: df002215 stw fp,136(sp)
  11672. 4a5cc: 0021883a mov r16,zero
  11673. 4a5d0: 003c0106 br 495d8 <__alt_data_end+0xfffd75d8>
  11674. 4a5d4: 00c00174 movhi r3,5
  11675. 4a5d8: 18c8e004 addi r3,r3,9088
  11676. 4a5dc: d8c02315 stw r3,140(sp)
  11677. 4a5e0: 280d883a mov r6,r5
  11678. 4a5e4: 003c6906 br 4978c <__alt_data_end+0xfffd778c>
  11679. 4a5e8: 802d883a mov r22,r16
  11680. 4a5ec: 0021883a mov r16,zero
  11681. 4a5f0: 003b5406 br 49344 <__alt_data_end+0xfffd7344>
  11682. 4a5f4: 1823883a mov r17,r3
  11683. 4a5f8: 003cf306 br 499c8 <__alt_data_end+0xfffd79c8>
  11684. 4a5fc: 1823883a mov r17,r3
  11685. 4a600: 003cad06 br 498b8 <__alt_data_end+0xfffd78b8>
  11686. 4a604: 0027883a mov r19,zero
  11687. 4a608: 003fdc06 br 4a57c <__alt_data_end+0xfffd857c>
  11688. 4a60c: d9402217 ldw r5,136(sp)
  11689. 4a610: 8005883a mov r2,r16
  11690. 4a614: b0c00043 ldbu r3,1(r22)
  11691. 4a618: 2c000017 ldw r16,0(r5)
  11692. 4a61c: 29000104 addi r4,r5,4
  11693. 4a620: d9002215 stw r4,136(sp)
  11694. 4a624: 102d883a mov r22,r2
  11695. 4a628: 803fa50e bge r16,zero,4a4c0 <__alt_data_end+0xfffd84c0>
  11696. 4a62c: 18c03fcc andi r3,r3,255
  11697. 4a630: 18c0201c xori r3,r3,128
  11698. 4a634: 043fffc4 movi r16,-1
  11699. 4a638: 18ffe004 addi r3,r3,-128
  11700. 4a63c: 003b4006 br 49340 <__alt_data_end+0xfffd7340>
  11701. 4a640: d9402303 ldbu r5,140(sp)
  11702. 4a644: d9401d85 stb r5,118(sp)
  11703. 4a648: 003cae06 br 49904 <__alt_data_end+0xfffd7904>
  11704. 4a64c: d8c02303 ldbu r3,140(sp)
  11705. 4a650: d8c01d85 stb r3,118(sp)
  11706. 4a654: 003d1406 br 49aa8 <__alt_data_end+0xfffd7aa8>
  11707. 4a658: d8c02303 ldbu r3,140(sp)
  11708. 4a65c: d8c01d85 stb r3,118(sp)
  11709. 4a660: 003cca06 br 4998c <__alt_data_end+0xfffd798c>
  11710. 4a664: 8880004c andi r2,r17,1
  11711. 4a668: 002b883a mov r21,zero
  11712. 4a66c: 10000526 beq r2,zero,4a684 <___vfiprintf_internal_r+0x14b8>
  11713. 4a670: 00800c04 movi r2,48
  11714. 4a674: d88019c5 stb r2,103(sp)
  11715. 4a678: dd002817 ldw r20,160(sp)
  11716. 4a67c: ddc019c4 addi r23,sp,103
  11717. 4a680: 003bd506 br 495d8 <__alt_data_end+0xfffd75d8>
  11718. 4a684: 0029883a mov r20,zero
  11719. 4a688: ddc01a04 addi r23,sp,104
  11720. 4a68c: 003bd206 br 495d8 <__alt_data_end+0xfffd75d8>
  11721. 4a690: d9002303 ldbu r4,140(sp)
  11722. 4a694: d9001d85 stb r4,118(sp)
  11723. 4a698: 003da606 br 49d34 <__alt_data_end+0xfffd7d34>
  11724. 4a69c: d8c02303 ldbu r3,140(sp)
  11725. 4a6a0: d8c01d85 stb r3,118(sp)
  11726. 4a6a4: 003c7606 br 49880 <__alt_data_end+0xfffd7880>
  11727. 4a6a8: d8c02303 ldbu r3,140(sp)
  11728. 4a6ac: d8c01d85 stb r3,118(sp)
  11729. 4a6b0: 003c6506 br 49848 <__alt_data_end+0xfffd7848>
  11730. 4a6b4: d9002303 ldbu r4,140(sp)
  11731. 4a6b8: d9001d85 stb r4,118(sp)
  11732. 4a6bc: 003d3d06 br 49bb4 <__alt_data_end+0xfffd7bb4>
  11733. 4a6c0: d8c02303 ldbu r3,140(sp)
  11734. 4a6c4: d8c01d85 stb r3,118(sp)
  11735. 4a6c8: 003d1d06 br 49b40 <__alt_data_end+0xfffd7b40>
  11736. 4a6cc: d8c02303 ldbu r3,140(sp)
  11737. 4a6d0: d8c01d85 stb r3,118(sp)
  11738. 4a6d4: 003d0306 br 49ae4 <__alt_data_end+0xfffd7ae4>
  11739. 0004a6d8 <__vfiprintf_internal>:
  11740. 4a6d8: 00800174 movhi r2,5
  11741. 4a6dc: 10908b04 addi r2,r2,16940
  11742. 4a6e0: 300f883a mov r7,r6
  11743. 4a6e4: 280d883a mov r6,r5
  11744. 4a6e8: 200b883a mov r5,r4
  11745. 4a6ec: 11000017 ldw r4,0(r2)
  11746. 4a6f0: 00491cc1 jmpi 491cc <___vfiprintf_internal_r>
  11747. 0004a6f4 <__sbprintf>:
  11748. 4a6f4: 2880030b ldhu r2,12(r5)
  11749. 4a6f8: 2ac01917 ldw r11,100(r5)
  11750. 4a6fc: 2a80038b ldhu r10,14(r5)
  11751. 4a700: 2a400717 ldw r9,28(r5)
  11752. 4a704: 2a000917 ldw r8,36(r5)
  11753. 4a708: defee204 addi sp,sp,-1144
  11754. 4a70c: 00c10004 movi r3,1024
  11755. 4a710: dc011a15 stw r16,1128(sp)
  11756. 4a714: 10bfff4c andi r2,r2,65533
  11757. 4a718: 2821883a mov r16,r5
  11758. 4a71c: d8cb883a add r5,sp,r3
  11759. 4a720: dc811c15 stw r18,1136(sp)
  11760. 4a724: dc411b15 stw r17,1132(sp)
  11761. 4a728: dfc11d15 stw ra,1140(sp)
  11762. 4a72c: 2025883a mov r18,r4
  11763. 4a730: d881030d sth r2,1036(sp)
  11764. 4a734: dac11915 stw r11,1124(sp)
  11765. 4a738: da81038d sth r10,1038(sp)
  11766. 4a73c: da410715 stw r9,1052(sp)
  11767. 4a740: da010915 stw r8,1060(sp)
  11768. 4a744: dec10015 stw sp,1024(sp)
  11769. 4a748: dec10415 stw sp,1040(sp)
  11770. 4a74c: d8c10215 stw r3,1032(sp)
  11771. 4a750: d8c10515 stw r3,1044(sp)
  11772. 4a754: d8010615 stw zero,1048(sp)
  11773. 4a758: 00491cc0 call 491cc <___vfiprintf_internal_r>
  11774. 4a75c: 1023883a mov r17,r2
  11775. 4a760: 10000416 blt r2,zero,4a774 <__sbprintf+0x80>
  11776. 4a764: d9410004 addi r5,sp,1024
  11777. 4a768: 9009883a mov r4,r18
  11778. 4a76c: 00461400 call 46140 <_fflush_r>
  11779. 4a770: 10000d1e bne r2,zero,4a7a8 <__sbprintf+0xb4>
  11780. 4a774: d881030b ldhu r2,1036(sp)
  11781. 4a778: 1080100c andi r2,r2,64
  11782. 4a77c: 10000326 beq r2,zero,4a78c <__sbprintf+0x98>
  11783. 4a780: 8080030b ldhu r2,12(r16)
  11784. 4a784: 10801014 ori r2,r2,64
  11785. 4a788: 8080030d sth r2,12(r16)
  11786. 4a78c: 8805883a mov r2,r17
  11787. 4a790: dfc11d17 ldw ra,1140(sp)
  11788. 4a794: dc811c17 ldw r18,1136(sp)
  11789. 4a798: dc411b17 ldw r17,1132(sp)
  11790. 4a79c: dc011a17 ldw r16,1128(sp)
  11791. 4a7a0: dec11e04 addi sp,sp,1144
  11792. 4a7a4: f800283a ret
  11793. 4a7a8: 047fffc4 movi r17,-1
  11794. 4a7ac: 003ff106 br 4a774 <__alt_data_end+0xfffd8774>
  11795. 0004a7b0 <__swbuf_r>:
  11796. 4a7b0: defffb04 addi sp,sp,-20
  11797. 4a7b4: dcc00315 stw r19,12(sp)
  11798. 4a7b8: dc800215 stw r18,8(sp)
  11799. 4a7bc: dc000015 stw r16,0(sp)
  11800. 4a7c0: dfc00415 stw ra,16(sp)
  11801. 4a7c4: dc400115 stw r17,4(sp)
  11802. 4a7c8: 2025883a mov r18,r4
  11803. 4a7cc: 2827883a mov r19,r5
  11804. 4a7d0: 3021883a mov r16,r6
  11805. 4a7d4: 20000226 beq r4,zero,4a7e0 <__swbuf_r+0x30>
  11806. 4a7d8: 20800e17 ldw r2,56(r4)
  11807. 4a7dc: 10004226 beq r2,zero,4a8e8 <__swbuf_r+0x138>
  11808. 4a7e0: 80800617 ldw r2,24(r16)
  11809. 4a7e4: 8100030b ldhu r4,12(r16)
  11810. 4a7e8: 80800215 stw r2,8(r16)
  11811. 4a7ec: 2080020c andi r2,r4,8
  11812. 4a7f0: 10003626 beq r2,zero,4a8cc <__swbuf_r+0x11c>
  11813. 4a7f4: 80c00417 ldw r3,16(r16)
  11814. 4a7f8: 18003426 beq r3,zero,4a8cc <__swbuf_r+0x11c>
  11815. 4a7fc: 2088000c andi r2,r4,8192
  11816. 4a800: 9c403fcc andi r17,r19,255
  11817. 4a804: 10001a26 beq r2,zero,4a870 <__swbuf_r+0xc0>
  11818. 4a808: 80800017 ldw r2,0(r16)
  11819. 4a80c: 81000517 ldw r4,20(r16)
  11820. 4a810: 10c7c83a sub r3,r2,r3
  11821. 4a814: 1900200e bge r3,r4,4a898 <__swbuf_r+0xe8>
  11822. 4a818: 18c00044 addi r3,r3,1
  11823. 4a81c: 81000217 ldw r4,8(r16)
  11824. 4a820: 11400044 addi r5,r2,1
  11825. 4a824: 81400015 stw r5,0(r16)
  11826. 4a828: 213fffc4 addi r4,r4,-1
  11827. 4a82c: 81000215 stw r4,8(r16)
  11828. 4a830: 14c00005 stb r19,0(r2)
  11829. 4a834: 80800517 ldw r2,20(r16)
  11830. 4a838: 10c01e26 beq r2,r3,4a8b4 <__swbuf_r+0x104>
  11831. 4a83c: 8080030b ldhu r2,12(r16)
  11832. 4a840: 1080004c andi r2,r2,1
  11833. 4a844: 10000226 beq r2,zero,4a850 <__swbuf_r+0xa0>
  11834. 4a848: 00800284 movi r2,10
  11835. 4a84c: 88801926 beq r17,r2,4a8b4 <__swbuf_r+0x104>
  11836. 4a850: 8805883a mov r2,r17
  11837. 4a854: dfc00417 ldw ra,16(sp)
  11838. 4a858: dcc00317 ldw r19,12(sp)
  11839. 4a85c: dc800217 ldw r18,8(sp)
  11840. 4a860: dc400117 ldw r17,4(sp)
  11841. 4a864: dc000017 ldw r16,0(sp)
  11842. 4a868: dec00504 addi sp,sp,20
  11843. 4a86c: f800283a ret
  11844. 4a870: 81401917 ldw r5,100(r16)
  11845. 4a874: 00b7ffc4 movi r2,-8193
  11846. 4a878: 21080014 ori r4,r4,8192
  11847. 4a87c: 2884703a and r2,r5,r2
  11848. 4a880: 80801915 stw r2,100(r16)
  11849. 4a884: 80800017 ldw r2,0(r16)
  11850. 4a888: 8100030d sth r4,12(r16)
  11851. 4a88c: 81000517 ldw r4,20(r16)
  11852. 4a890: 10c7c83a sub r3,r2,r3
  11853. 4a894: 193fe016 blt r3,r4,4a818 <__alt_data_end+0xfffd8818>
  11854. 4a898: 800b883a mov r5,r16
  11855. 4a89c: 9009883a mov r4,r18
  11856. 4a8a0: 00461400 call 46140 <_fflush_r>
  11857. 4a8a4: 1000071e bne r2,zero,4a8c4 <__swbuf_r+0x114>
  11858. 4a8a8: 80800017 ldw r2,0(r16)
  11859. 4a8ac: 00c00044 movi r3,1
  11860. 4a8b0: 003fda06 br 4a81c <__alt_data_end+0xfffd881c>
  11861. 4a8b4: 800b883a mov r5,r16
  11862. 4a8b8: 9009883a mov r4,r18
  11863. 4a8bc: 00461400 call 46140 <_fflush_r>
  11864. 4a8c0: 103fe326 beq r2,zero,4a850 <__alt_data_end+0xfffd8850>
  11865. 4a8c4: 00bfffc4 movi r2,-1
  11866. 4a8c8: 003fe206 br 4a854 <__alt_data_end+0xfffd8854>
  11867. 4a8cc: 800b883a mov r5,r16
  11868. 4a8d0: 9009883a mov r4,r18
  11869. 4a8d4: 00445200 call 44520 <__swsetup_r>
  11870. 4a8d8: 103ffa1e bne r2,zero,4a8c4 <__alt_data_end+0xfffd88c4>
  11871. 4a8dc: 8100030b ldhu r4,12(r16)
  11872. 4a8e0: 80c00417 ldw r3,16(r16)
  11873. 4a8e4: 003fc506 br 4a7fc <__alt_data_end+0xfffd87fc>
  11874. 4a8e8: 004652c0 call 4652c <__sinit>
  11875. 4a8ec: 003fbc06 br 4a7e0 <__alt_data_end+0xfffd87e0>
  11876. 0004a8f0 <__swbuf>:
  11877. 4a8f0: 00800174 movhi r2,5
  11878. 4a8f4: 10908b04 addi r2,r2,16940
  11879. 4a8f8: 280d883a mov r6,r5
  11880. 4a8fc: 200b883a mov r5,r4
  11881. 4a900: 11000017 ldw r4,0(r2)
  11882. 4a904: 004a7b01 jmpi 4a7b0 <__swbuf_r>
  11883. 0004a908 <_write_r>:
  11884. 4a908: defffd04 addi sp,sp,-12
  11885. 4a90c: 2805883a mov r2,r5
  11886. 4a910: dc000015 stw r16,0(sp)
  11887. 4a914: 04000174 movhi r16,5
  11888. 4a918: dc400115 stw r17,4(sp)
  11889. 4a91c: 300b883a mov r5,r6
  11890. 4a920: 8417ab04 addi r16,r16,24236
  11891. 4a924: 2023883a mov r17,r4
  11892. 4a928: 380d883a mov r6,r7
  11893. 4a92c: 1009883a mov r4,r2
  11894. 4a930: dfc00215 stw ra,8(sp)
  11895. 4a934: 80000015 stw zero,0(r16)
  11896. 4a938: 004f0ec0 call 4f0ec <write>
  11897. 4a93c: 00ffffc4 movi r3,-1
  11898. 4a940: 10c00526 beq r2,r3,4a958 <_write_r+0x50>
  11899. 4a944: dfc00217 ldw ra,8(sp)
  11900. 4a948: dc400117 ldw r17,4(sp)
  11901. 4a94c: dc000017 ldw r16,0(sp)
  11902. 4a950: dec00304 addi sp,sp,12
  11903. 4a954: f800283a ret
  11904. 4a958: 80c00017 ldw r3,0(r16)
  11905. 4a95c: 183ff926 beq r3,zero,4a944 <__alt_data_end+0xfffd8944>
  11906. 4a960: 88c00015 stw r3,0(r17)
  11907. 4a964: 003ff706 br 4a944 <__alt_data_end+0xfffd8944>
  11908. 0004a968 <_close_r>:
  11909. 4a968: defffd04 addi sp,sp,-12
  11910. 4a96c: dc000015 stw r16,0(sp)
  11911. 4a970: 04000174 movhi r16,5
  11912. 4a974: dc400115 stw r17,4(sp)
  11913. 4a978: 8417ab04 addi r16,r16,24236
  11914. 4a97c: 2023883a mov r17,r4
  11915. 4a980: 2809883a mov r4,r5
  11916. 4a984: dfc00215 stw ra,8(sp)
  11917. 4a988: 80000015 stw zero,0(r16)
  11918. 4a98c: 004e8940 call 4e894 <close>
  11919. 4a990: 00ffffc4 movi r3,-1
  11920. 4a994: 10c00526 beq r2,r3,4a9ac <_close_r+0x44>
  11921. 4a998: dfc00217 ldw ra,8(sp)
  11922. 4a99c: dc400117 ldw r17,4(sp)
  11923. 4a9a0: dc000017 ldw r16,0(sp)
  11924. 4a9a4: dec00304 addi sp,sp,12
  11925. 4a9a8: f800283a ret
  11926. 4a9ac: 80c00017 ldw r3,0(r16)
  11927. 4a9b0: 183ff926 beq r3,zero,4a998 <__alt_data_end+0xfffd8998>
  11928. 4a9b4: 88c00015 stw r3,0(r17)
  11929. 4a9b8: 003ff706 br 4a998 <__alt_data_end+0xfffd8998>
  11930. 0004a9bc <_calloc_r>:
  11931. 4a9bc: defffe04 addi sp,sp,-8
  11932. 4a9c0: 2805883a mov r2,r5
  11933. 4a9c4: dc000015 stw r16,0(sp)
  11934. 4a9c8: 300b883a mov r5,r6
  11935. 4a9cc: 2021883a mov r16,r4
  11936. 4a9d0: 1009883a mov r4,r2
  11937. 4a9d4: dfc00115 stw ra,4(sp)
  11938. 4a9d8: 004c9f80 call 4c9f8 <__mulsi3>
  11939. 4a9dc: 100b883a mov r5,r2
  11940. 4a9e0: 8009883a mov r4,r16
  11941. 4a9e4: 0046dd00 call 46dd0 <_malloc_r>
  11942. 4a9e8: 10002926 beq r2,zero,4aa90 <_calloc_r+0xd4>
  11943. 4a9ec: 11bfff17 ldw r6,-4(r2)
  11944. 4a9f0: 1021883a mov r16,r2
  11945. 4a9f4: 00bfff04 movi r2,-4
  11946. 4a9f8: 308c703a and r6,r6,r2
  11947. 4a9fc: 00c00904 movi r3,36
  11948. 4aa00: 308d883a add r6,r6,r2
  11949. 4aa04: 19801636 bltu r3,r6,4aa60 <_calloc_r+0xa4>
  11950. 4aa08: 008004c4 movi r2,19
  11951. 4aa0c: 11800b2e bgeu r2,r6,4aa3c <_calloc_r+0x80>
  11952. 4aa10: 80000015 stw zero,0(r16)
  11953. 4aa14: 80000115 stw zero,4(r16)
  11954. 4aa18: 008006c4 movi r2,27
  11955. 4aa1c: 11801a2e bgeu r2,r6,4aa88 <_calloc_r+0xcc>
  11956. 4aa20: 80000215 stw zero,8(r16)
  11957. 4aa24: 80000315 stw zero,12(r16)
  11958. 4aa28: 30c0151e bne r6,r3,4aa80 <_calloc_r+0xc4>
  11959. 4aa2c: 80000415 stw zero,16(r16)
  11960. 4aa30: 80800604 addi r2,r16,24
  11961. 4aa34: 80000515 stw zero,20(r16)
  11962. 4aa38: 00000106 br 4aa40 <_calloc_r+0x84>
  11963. 4aa3c: 8005883a mov r2,r16
  11964. 4aa40: 10000015 stw zero,0(r2)
  11965. 4aa44: 10000115 stw zero,4(r2)
  11966. 4aa48: 10000215 stw zero,8(r2)
  11967. 4aa4c: 8005883a mov r2,r16
  11968. 4aa50: dfc00117 ldw ra,4(sp)
  11969. 4aa54: dc000017 ldw r16,0(sp)
  11970. 4aa58: dec00204 addi sp,sp,8
  11971. 4aa5c: f800283a ret
  11972. 4aa60: 000b883a mov r5,zero
  11973. 4aa64: 8009883a mov r4,r16
  11974. 4aa68: 00478080 call 47808 <memset>
  11975. 4aa6c: 8005883a mov r2,r16
  11976. 4aa70: dfc00117 ldw ra,4(sp)
  11977. 4aa74: dc000017 ldw r16,0(sp)
  11978. 4aa78: dec00204 addi sp,sp,8
  11979. 4aa7c: f800283a ret
  11980. 4aa80: 80800404 addi r2,r16,16
  11981. 4aa84: 003fee06 br 4aa40 <__alt_data_end+0xfffd8a40>
  11982. 4aa88: 80800204 addi r2,r16,8
  11983. 4aa8c: 003fec06 br 4aa40 <__alt_data_end+0xfffd8a40>
  11984. 4aa90: 0005883a mov r2,zero
  11985. 4aa94: 003fee06 br 4aa50 <__alt_data_end+0xfffd8a50>
  11986. 0004aa98 <_fclose_r>:
  11987. 4aa98: 28003926 beq r5,zero,4ab80 <_fclose_r+0xe8>
  11988. 4aa9c: defffc04 addi sp,sp,-16
  11989. 4aaa0: dc400115 stw r17,4(sp)
  11990. 4aaa4: dc000015 stw r16,0(sp)
  11991. 4aaa8: dfc00315 stw ra,12(sp)
  11992. 4aaac: dc800215 stw r18,8(sp)
  11993. 4aab0: 2023883a mov r17,r4
  11994. 4aab4: 2821883a mov r16,r5
  11995. 4aab8: 20000226 beq r4,zero,4aac4 <_fclose_r+0x2c>
  11996. 4aabc: 20800e17 ldw r2,56(r4)
  11997. 4aac0: 10002726 beq r2,zero,4ab60 <_fclose_r+0xc8>
  11998. 4aac4: 8080030f ldh r2,12(r16)
  11999. 4aac8: 1000071e bne r2,zero,4aae8 <_fclose_r+0x50>
  12000. 4aacc: 0005883a mov r2,zero
  12001. 4aad0: dfc00317 ldw ra,12(sp)
  12002. 4aad4: dc800217 ldw r18,8(sp)
  12003. 4aad8: dc400117 ldw r17,4(sp)
  12004. 4aadc: dc000017 ldw r16,0(sp)
  12005. 4aae0: dec00404 addi sp,sp,16
  12006. 4aae4: f800283a ret
  12007. 4aae8: 800b883a mov r5,r16
  12008. 4aaec: 8809883a mov r4,r17
  12009. 4aaf0: 0045f240 call 45f24 <__sflush_r>
  12010. 4aaf4: 1025883a mov r18,r2
  12011. 4aaf8: 80800b17 ldw r2,44(r16)
  12012. 4aafc: 10000426 beq r2,zero,4ab10 <_fclose_r+0x78>
  12013. 4ab00: 81400717 ldw r5,28(r16)
  12014. 4ab04: 8809883a mov r4,r17
  12015. 4ab08: 103ee83a callr r2
  12016. 4ab0c: 10001616 blt r2,zero,4ab68 <_fclose_r+0xd0>
  12017. 4ab10: 8080030b ldhu r2,12(r16)
  12018. 4ab14: 1080200c andi r2,r2,128
  12019. 4ab18: 1000151e bne r2,zero,4ab70 <_fclose_r+0xd8>
  12020. 4ab1c: 81400c17 ldw r5,48(r16)
  12021. 4ab20: 28000526 beq r5,zero,4ab38 <_fclose_r+0xa0>
  12022. 4ab24: 80801004 addi r2,r16,64
  12023. 4ab28: 28800226 beq r5,r2,4ab34 <_fclose_r+0x9c>
  12024. 4ab2c: 8809883a mov r4,r17
  12025. 4ab30: 00466a00 call 466a0 <_free_r>
  12026. 4ab34: 80000c15 stw zero,48(r16)
  12027. 4ab38: 81401117 ldw r5,68(r16)
  12028. 4ab3c: 28000326 beq r5,zero,4ab4c <_fclose_r+0xb4>
  12029. 4ab40: 8809883a mov r4,r17
  12030. 4ab44: 00466a00 call 466a0 <_free_r>
  12031. 4ab48: 80001115 stw zero,68(r16)
  12032. 4ab4c: 004653c0 call 4653c <__sfp_lock_acquire>
  12033. 4ab50: 8000030d sth zero,12(r16)
  12034. 4ab54: 00465400 call 46540 <__sfp_lock_release>
  12035. 4ab58: 9005883a mov r2,r18
  12036. 4ab5c: 003fdc06 br 4aad0 <__alt_data_end+0xfffd8ad0>
  12037. 4ab60: 004652c0 call 4652c <__sinit>
  12038. 4ab64: 003fd706 br 4aac4 <__alt_data_end+0xfffd8ac4>
  12039. 4ab68: 04bfffc4 movi r18,-1
  12040. 4ab6c: 003fe806 br 4ab10 <__alt_data_end+0xfffd8b10>
  12041. 4ab70: 81400417 ldw r5,16(r16)
  12042. 4ab74: 8809883a mov r4,r17
  12043. 4ab78: 00466a00 call 466a0 <_free_r>
  12044. 4ab7c: 003fe706 br 4ab1c <__alt_data_end+0xfffd8b1c>
  12045. 4ab80: 0005883a mov r2,zero
  12046. 4ab84: f800283a ret
  12047. 0004ab88 <fclose>:
  12048. 4ab88: 00800174 movhi r2,5
  12049. 4ab8c: 10908b04 addi r2,r2,16940
  12050. 4ab90: 200b883a mov r5,r4
  12051. 4ab94: 11000017 ldw r4,0(r2)
  12052. 4ab98: 004aa981 jmpi 4aa98 <_fclose_r>
  12053. 0004ab9c <__fputwc>:
  12054. 4ab9c: defff804 addi sp,sp,-32
  12055. 4aba0: dcc00415 stw r19,16(sp)
  12056. 4aba4: dc800315 stw r18,12(sp)
  12057. 4aba8: dc000115 stw r16,4(sp)
  12058. 4abac: dfc00715 stw ra,28(sp)
  12059. 4abb0: dd400615 stw r21,24(sp)
  12060. 4abb4: dd000515 stw r20,20(sp)
  12061. 4abb8: dc400215 stw r17,8(sp)
  12062. 4abbc: 2027883a mov r19,r4
  12063. 4abc0: 2825883a mov r18,r5
  12064. 4abc4: 3021883a mov r16,r6
  12065. 4abc8: 0046bc00 call 46bc0 <__locale_mb_cur_max>
  12066. 4abcc: 00c00044 movi r3,1
  12067. 4abd0: 10c03e26 beq r2,r3,4accc <__fputwc+0x130>
  12068. 4abd4: 81c01704 addi r7,r16,92
  12069. 4abd8: 900d883a mov r6,r18
  12070. 4abdc: d80b883a mov r5,sp
  12071. 4abe0: 9809883a mov r4,r19
  12072. 4abe4: 004ba9c0 call 4ba9c <_wcrtomb_r>
  12073. 4abe8: 1029883a mov r20,r2
  12074. 4abec: 00bfffc4 movi r2,-1
  12075. 4abf0: a0802026 beq r20,r2,4ac74 <__fputwc+0xd8>
  12076. 4abf4: d9400003 ldbu r5,0(sp)
  12077. 4abf8: a0001c26 beq r20,zero,4ac6c <__fputwc+0xd0>
  12078. 4abfc: 0023883a mov r17,zero
  12079. 4ac00: 05400284 movi r21,10
  12080. 4ac04: 00000906 br 4ac2c <__fputwc+0x90>
  12081. 4ac08: 80800017 ldw r2,0(r16)
  12082. 4ac0c: 11400005 stb r5,0(r2)
  12083. 4ac10: 80c00017 ldw r3,0(r16)
  12084. 4ac14: 18c00044 addi r3,r3,1
  12085. 4ac18: 80c00015 stw r3,0(r16)
  12086. 4ac1c: 8c400044 addi r17,r17,1
  12087. 4ac20: dc45883a add r2,sp,r17
  12088. 4ac24: 8d00112e bgeu r17,r20,4ac6c <__fputwc+0xd0>
  12089. 4ac28: 11400003 ldbu r5,0(r2)
  12090. 4ac2c: 80c00217 ldw r3,8(r16)
  12091. 4ac30: 18ffffc4 addi r3,r3,-1
  12092. 4ac34: 80c00215 stw r3,8(r16)
  12093. 4ac38: 183ff30e bge r3,zero,4ac08 <__alt_data_end+0xfffd8c08>
  12094. 4ac3c: 80800617 ldw r2,24(r16)
  12095. 4ac40: 18801916 blt r3,r2,4aca8 <__fputwc+0x10c>
  12096. 4ac44: 80800017 ldw r2,0(r16)
  12097. 4ac48: 11400005 stb r5,0(r2)
  12098. 4ac4c: 80800017 ldw r2,0(r16)
  12099. 4ac50: 10c00003 ldbu r3,0(r2)
  12100. 4ac54: 10800044 addi r2,r2,1
  12101. 4ac58: 1d402326 beq r3,r21,4ace8 <__fputwc+0x14c>
  12102. 4ac5c: 80800015 stw r2,0(r16)
  12103. 4ac60: 8c400044 addi r17,r17,1
  12104. 4ac64: dc45883a add r2,sp,r17
  12105. 4ac68: 8d3fef36 bltu r17,r20,4ac28 <__alt_data_end+0xfffd8c28>
  12106. 4ac6c: 9005883a mov r2,r18
  12107. 4ac70: 00000406 br 4ac84 <__fputwc+0xe8>
  12108. 4ac74: 80c0030b ldhu r3,12(r16)
  12109. 4ac78: a005883a mov r2,r20
  12110. 4ac7c: 18c01014 ori r3,r3,64
  12111. 4ac80: 80c0030d sth r3,12(r16)
  12112. 4ac84: dfc00717 ldw ra,28(sp)
  12113. 4ac88: dd400617 ldw r21,24(sp)
  12114. 4ac8c: dd000517 ldw r20,20(sp)
  12115. 4ac90: dcc00417 ldw r19,16(sp)
  12116. 4ac94: dc800317 ldw r18,12(sp)
  12117. 4ac98: dc400217 ldw r17,8(sp)
  12118. 4ac9c: dc000117 ldw r16,4(sp)
  12119. 4aca0: dec00804 addi sp,sp,32
  12120. 4aca4: f800283a ret
  12121. 4aca8: 800d883a mov r6,r16
  12122. 4acac: 29403fcc andi r5,r5,255
  12123. 4acb0: 9809883a mov r4,r19
  12124. 4acb4: 004a7b00 call 4a7b0 <__swbuf_r>
  12125. 4acb8: 10bfffe0 cmpeqi r2,r2,-1
  12126. 4acbc: 10803fcc andi r2,r2,255
  12127. 4acc0: 103fd626 beq r2,zero,4ac1c <__alt_data_end+0xfffd8c1c>
  12128. 4acc4: 00bfffc4 movi r2,-1
  12129. 4acc8: 003fee06 br 4ac84 <__alt_data_end+0xfffd8c84>
  12130. 4accc: 90ffffc4 addi r3,r18,-1
  12131. 4acd0: 01003f84 movi r4,254
  12132. 4acd4: 20ffbf36 bltu r4,r3,4abd4 <__alt_data_end+0xfffd8bd4>
  12133. 4acd8: 900b883a mov r5,r18
  12134. 4acdc: dc800005 stb r18,0(sp)
  12135. 4ace0: 1029883a mov r20,r2
  12136. 4ace4: 003fc506 br 4abfc <__alt_data_end+0xfffd8bfc>
  12137. 4ace8: 800d883a mov r6,r16
  12138. 4acec: a80b883a mov r5,r21
  12139. 4acf0: 9809883a mov r4,r19
  12140. 4acf4: 004a7b00 call 4a7b0 <__swbuf_r>
  12141. 4acf8: 10bfffe0 cmpeqi r2,r2,-1
  12142. 4acfc: 003fef06 br 4acbc <__alt_data_end+0xfffd8cbc>
  12143. 0004ad00 <_fputwc_r>:
  12144. 4ad00: 3080030b ldhu r2,12(r6)
  12145. 4ad04: 10c8000c andi r3,r2,8192
  12146. 4ad08: 1800051e bne r3,zero,4ad20 <_fputwc_r+0x20>
  12147. 4ad0c: 30c01917 ldw r3,100(r6)
  12148. 4ad10: 10880014 ori r2,r2,8192
  12149. 4ad14: 3080030d sth r2,12(r6)
  12150. 4ad18: 18880014 ori r2,r3,8192
  12151. 4ad1c: 30801915 stw r2,100(r6)
  12152. 4ad20: 004ab9c1 jmpi 4ab9c <__fputwc>
  12153. 0004ad24 <fputwc>:
  12154. 4ad24: 00800174 movhi r2,5
  12155. 4ad28: defffc04 addi sp,sp,-16
  12156. 4ad2c: 10908b04 addi r2,r2,16940
  12157. 4ad30: dc000115 stw r16,4(sp)
  12158. 4ad34: 14000017 ldw r16,0(r2)
  12159. 4ad38: dc400215 stw r17,8(sp)
  12160. 4ad3c: dfc00315 stw ra,12(sp)
  12161. 4ad40: 2023883a mov r17,r4
  12162. 4ad44: 80000226 beq r16,zero,4ad50 <fputwc+0x2c>
  12163. 4ad48: 80800e17 ldw r2,56(r16)
  12164. 4ad4c: 10001026 beq r2,zero,4ad90 <fputwc+0x6c>
  12165. 4ad50: 2880030b ldhu r2,12(r5)
  12166. 4ad54: 10c8000c andi r3,r2,8192
  12167. 4ad58: 1800051e bne r3,zero,4ad70 <fputwc+0x4c>
  12168. 4ad5c: 28c01917 ldw r3,100(r5)
  12169. 4ad60: 10880014 ori r2,r2,8192
  12170. 4ad64: 2880030d sth r2,12(r5)
  12171. 4ad68: 18880014 ori r2,r3,8192
  12172. 4ad6c: 28801915 stw r2,100(r5)
  12173. 4ad70: 280d883a mov r6,r5
  12174. 4ad74: 8009883a mov r4,r16
  12175. 4ad78: 880b883a mov r5,r17
  12176. 4ad7c: dfc00317 ldw ra,12(sp)
  12177. 4ad80: dc400217 ldw r17,8(sp)
  12178. 4ad84: dc000117 ldw r16,4(sp)
  12179. 4ad88: dec00404 addi sp,sp,16
  12180. 4ad8c: 004ab9c1 jmpi 4ab9c <__fputwc>
  12181. 4ad90: 8009883a mov r4,r16
  12182. 4ad94: d9400015 stw r5,0(sp)
  12183. 4ad98: 004652c0 call 4652c <__sinit>
  12184. 4ad9c: d9400017 ldw r5,0(sp)
  12185. 4ada0: 003feb06 br 4ad50 <__alt_data_end+0xfffd8d50>
  12186. 0004ada4 <_fstat_r>:
  12187. 4ada4: defffd04 addi sp,sp,-12
  12188. 4ada8: 2805883a mov r2,r5
  12189. 4adac: dc000015 stw r16,0(sp)
  12190. 4adb0: 04000174 movhi r16,5
  12191. 4adb4: dc400115 stw r17,4(sp)
  12192. 4adb8: 8417ab04 addi r16,r16,24236
  12193. 4adbc: 2023883a mov r17,r4
  12194. 4adc0: 300b883a mov r5,r6
  12195. 4adc4: 1009883a mov r4,r2
  12196. 4adc8: dfc00215 stw ra,8(sp)
  12197. 4adcc: 80000015 stw zero,0(r16)
  12198. 4add0: 004e9d40 call 4e9d4 <fstat>
  12199. 4add4: 00ffffc4 movi r3,-1
  12200. 4add8: 10c00526 beq r2,r3,4adf0 <_fstat_r+0x4c>
  12201. 4addc: dfc00217 ldw ra,8(sp)
  12202. 4ade0: dc400117 ldw r17,4(sp)
  12203. 4ade4: dc000017 ldw r16,0(sp)
  12204. 4ade8: dec00304 addi sp,sp,12
  12205. 4adec: f800283a ret
  12206. 4adf0: 80c00017 ldw r3,0(r16)
  12207. 4adf4: 183ff926 beq r3,zero,4addc <__alt_data_end+0xfffd8ddc>
  12208. 4adf8: 88c00015 stw r3,0(r17)
  12209. 4adfc: 003ff706 br 4addc <__alt_data_end+0xfffd8ddc>
  12210. 0004ae00 <__sfvwrite_r>:
  12211. 4ae00: 30800217 ldw r2,8(r6)
  12212. 4ae04: 10006726 beq r2,zero,4afa4 <__sfvwrite_r+0x1a4>
  12213. 4ae08: 28c0030b ldhu r3,12(r5)
  12214. 4ae0c: defff404 addi sp,sp,-48
  12215. 4ae10: dd400715 stw r21,28(sp)
  12216. 4ae14: dd000615 stw r20,24(sp)
  12217. 4ae18: dc000215 stw r16,8(sp)
  12218. 4ae1c: dfc00b15 stw ra,44(sp)
  12219. 4ae20: df000a15 stw fp,40(sp)
  12220. 4ae24: ddc00915 stw r23,36(sp)
  12221. 4ae28: dd800815 stw r22,32(sp)
  12222. 4ae2c: dcc00515 stw r19,20(sp)
  12223. 4ae30: dc800415 stw r18,16(sp)
  12224. 4ae34: dc400315 stw r17,12(sp)
  12225. 4ae38: 1880020c andi r2,r3,8
  12226. 4ae3c: 2821883a mov r16,r5
  12227. 4ae40: 202b883a mov r21,r4
  12228. 4ae44: 3029883a mov r20,r6
  12229. 4ae48: 10002726 beq r2,zero,4aee8 <__sfvwrite_r+0xe8>
  12230. 4ae4c: 28800417 ldw r2,16(r5)
  12231. 4ae50: 10002526 beq r2,zero,4aee8 <__sfvwrite_r+0xe8>
  12232. 4ae54: 1880008c andi r2,r3,2
  12233. 4ae58: a4400017 ldw r17,0(r20)
  12234. 4ae5c: 10002a26 beq r2,zero,4af08 <__sfvwrite_r+0x108>
  12235. 4ae60: 05a00034 movhi r22,32768
  12236. 4ae64: 0027883a mov r19,zero
  12237. 4ae68: 0025883a mov r18,zero
  12238. 4ae6c: b5bf0004 addi r22,r22,-1024
  12239. 4ae70: 980d883a mov r6,r19
  12240. 4ae74: a809883a mov r4,r21
  12241. 4ae78: 90004626 beq r18,zero,4af94 <__sfvwrite_r+0x194>
  12242. 4ae7c: 900f883a mov r7,r18
  12243. 4ae80: b480022e bgeu r22,r18,4ae8c <__sfvwrite_r+0x8c>
  12244. 4ae84: 01e00034 movhi r7,32768
  12245. 4ae88: 39ff0004 addi r7,r7,-1024
  12246. 4ae8c: 80800917 ldw r2,36(r16)
  12247. 4ae90: 81400717 ldw r5,28(r16)
  12248. 4ae94: 103ee83a callr r2
  12249. 4ae98: 00805a0e bge zero,r2,4b004 <__sfvwrite_r+0x204>
  12250. 4ae9c: a0c00217 ldw r3,8(r20)
  12251. 4aea0: 98a7883a add r19,r19,r2
  12252. 4aea4: 90a5c83a sub r18,r18,r2
  12253. 4aea8: 1885c83a sub r2,r3,r2
  12254. 4aeac: a0800215 stw r2,8(r20)
  12255. 4aeb0: 103fef1e bne r2,zero,4ae70 <__alt_data_end+0xfffd8e70>
  12256. 4aeb4: 0005883a mov r2,zero
  12257. 4aeb8: dfc00b17 ldw ra,44(sp)
  12258. 4aebc: df000a17 ldw fp,40(sp)
  12259. 4aec0: ddc00917 ldw r23,36(sp)
  12260. 4aec4: dd800817 ldw r22,32(sp)
  12261. 4aec8: dd400717 ldw r21,28(sp)
  12262. 4aecc: dd000617 ldw r20,24(sp)
  12263. 4aed0: dcc00517 ldw r19,20(sp)
  12264. 4aed4: dc800417 ldw r18,16(sp)
  12265. 4aed8: dc400317 ldw r17,12(sp)
  12266. 4aedc: dc000217 ldw r16,8(sp)
  12267. 4aee0: dec00c04 addi sp,sp,48
  12268. 4aee4: f800283a ret
  12269. 4aee8: 800b883a mov r5,r16
  12270. 4aeec: a809883a mov r4,r21
  12271. 4aef0: 00445200 call 44520 <__swsetup_r>
  12272. 4aef4: 1000ee1e bne r2,zero,4b2b0 <__sfvwrite_r+0x4b0>
  12273. 4aef8: 80c0030b ldhu r3,12(r16)
  12274. 4aefc: a4400017 ldw r17,0(r20)
  12275. 4af00: 1880008c andi r2,r3,2
  12276. 4af04: 103fd61e bne r2,zero,4ae60 <__alt_data_end+0xfffd8e60>
  12277. 4af08: 1880004c andi r2,r3,1
  12278. 4af0c: 1000421e bne r2,zero,4b018 <__sfvwrite_r+0x218>
  12279. 4af10: 0039883a mov fp,zero
  12280. 4af14: 0025883a mov r18,zero
  12281. 4af18: 90001a26 beq r18,zero,4af84 <__sfvwrite_r+0x184>
  12282. 4af1c: 1880800c andi r2,r3,512
  12283. 4af20: 84c00217 ldw r19,8(r16)
  12284. 4af24: 10002126 beq r2,zero,4afac <__sfvwrite_r+0x1ac>
  12285. 4af28: 982f883a mov r23,r19
  12286. 4af2c: 94c09636 bltu r18,r19,4b188 <__sfvwrite_r+0x388>
  12287. 4af30: 1881200c andi r2,r3,1152
  12288. 4af34: 1000a11e bne r2,zero,4b1bc <__sfvwrite_r+0x3bc>
  12289. 4af38: 81000017 ldw r4,0(r16)
  12290. 4af3c: b80d883a mov r6,r23
  12291. 4af40: e00b883a mov r5,fp
  12292. 4af44: 004b37c0 call 4b37c <memmove>
  12293. 4af48: 80c00217 ldw r3,8(r16)
  12294. 4af4c: 81000017 ldw r4,0(r16)
  12295. 4af50: 9005883a mov r2,r18
  12296. 4af54: 1ce7c83a sub r19,r3,r19
  12297. 4af58: 25cf883a add r7,r4,r23
  12298. 4af5c: 84c00215 stw r19,8(r16)
  12299. 4af60: 81c00015 stw r7,0(r16)
  12300. 4af64: a0c00217 ldw r3,8(r20)
  12301. 4af68: e0b9883a add fp,fp,r2
  12302. 4af6c: 90a5c83a sub r18,r18,r2
  12303. 4af70: 18a7c83a sub r19,r3,r2
  12304. 4af74: a4c00215 stw r19,8(r20)
  12305. 4af78: 983fce26 beq r19,zero,4aeb4 <__alt_data_end+0xfffd8eb4>
  12306. 4af7c: 80c0030b ldhu r3,12(r16)
  12307. 4af80: 903fe61e bne r18,zero,4af1c <__alt_data_end+0xfffd8f1c>
  12308. 4af84: 8f000017 ldw fp,0(r17)
  12309. 4af88: 8c800117 ldw r18,4(r17)
  12310. 4af8c: 8c400204 addi r17,r17,8
  12311. 4af90: 003fe106 br 4af18 <__alt_data_end+0xfffd8f18>
  12312. 4af94: 8cc00017 ldw r19,0(r17)
  12313. 4af98: 8c800117 ldw r18,4(r17)
  12314. 4af9c: 8c400204 addi r17,r17,8
  12315. 4afa0: 003fb306 br 4ae70 <__alt_data_end+0xfffd8e70>
  12316. 4afa4: 0005883a mov r2,zero
  12317. 4afa8: f800283a ret
  12318. 4afac: 81000017 ldw r4,0(r16)
  12319. 4afb0: 80800417 ldw r2,16(r16)
  12320. 4afb4: 11005a36 bltu r2,r4,4b120 <__sfvwrite_r+0x320>
  12321. 4afb8: 85c00517 ldw r23,20(r16)
  12322. 4afbc: 95c05836 bltu r18,r23,4b120 <__sfvwrite_r+0x320>
  12323. 4afc0: 00a00034 movhi r2,32768
  12324. 4afc4: 10bfffc4 addi r2,r2,-1
  12325. 4afc8: 9009883a mov r4,r18
  12326. 4afcc: 1480012e bgeu r2,r18,4afd4 <__sfvwrite_r+0x1d4>
  12327. 4afd0: 1009883a mov r4,r2
  12328. 4afd4: b80b883a mov r5,r23
  12329. 4afd8: 004c8440 call 4c844 <__divsi3>
  12330. 4afdc: b80b883a mov r5,r23
  12331. 4afe0: 1009883a mov r4,r2
  12332. 4afe4: 004c9f80 call 4c9f8 <__mulsi3>
  12333. 4afe8: 81400717 ldw r5,28(r16)
  12334. 4afec: 80c00917 ldw r3,36(r16)
  12335. 4aff0: 100f883a mov r7,r2
  12336. 4aff4: e00d883a mov r6,fp
  12337. 4aff8: a809883a mov r4,r21
  12338. 4affc: 183ee83a callr r3
  12339. 4b000: 00bfd816 blt zero,r2,4af64 <__alt_data_end+0xfffd8f64>
  12340. 4b004: 8080030b ldhu r2,12(r16)
  12341. 4b008: 10801014 ori r2,r2,64
  12342. 4b00c: 8080030d sth r2,12(r16)
  12343. 4b010: 00bfffc4 movi r2,-1
  12344. 4b014: 003fa806 br 4aeb8 <__alt_data_end+0xfffd8eb8>
  12345. 4b018: 0027883a mov r19,zero
  12346. 4b01c: 0011883a mov r8,zero
  12347. 4b020: 0039883a mov fp,zero
  12348. 4b024: 0025883a mov r18,zero
  12349. 4b028: 90001f26 beq r18,zero,4b0a8 <__sfvwrite_r+0x2a8>
  12350. 4b02c: 40005a26 beq r8,zero,4b198 <__sfvwrite_r+0x398>
  12351. 4b030: 982d883a mov r22,r19
  12352. 4b034: 94c0012e bgeu r18,r19,4b03c <__sfvwrite_r+0x23c>
  12353. 4b038: 902d883a mov r22,r18
  12354. 4b03c: 81000017 ldw r4,0(r16)
  12355. 4b040: 80800417 ldw r2,16(r16)
  12356. 4b044: b02f883a mov r23,r22
  12357. 4b048: 81c00517 ldw r7,20(r16)
  12358. 4b04c: 1100032e bgeu r2,r4,4b05c <__sfvwrite_r+0x25c>
  12359. 4b050: 80c00217 ldw r3,8(r16)
  12360. 4b054: 38c7883a add r3,r7,r3
  12361. 4b058: 1d801816 blt r3,r22,4b0bc <__sfvwrite_r+0x2bc>
  12362. 4b05c: b1c03e16 blt r22,r7,4b158 <__sfvwrite_r+0x358>
  12363. 4b060: 80800917 ldw r2,36(r16)
  12364. 4b064: 81400717 ldw r5,28(r16)
  12365. 4b068: e00d883a mov r6,fp
  12366. 4b06c: da000115 stw r8,4(sp)
  12367. 4b070: a809883a mov r4,r21
  12368. 4b074: 103ee83a callr r2
  12369. 4b078: 102f883a mov r23,r2
  12370. 4b07c: da000117 ldw r8,4(sp)
  12371. 4b080: 00bfe00e bge zero,r2,4b004 <__alt_data_end+0xfffd9004>
  12372. 4b084: 9de7c83a sub r19,r19,r23
  12373. 4b088: 98001f26 beq r19,zero,4b108 <__sfvwrite_r+0x308>
  12374. 4b08c: a0800217 ldw r2,8(r20)
  12375. 4b090: e5f9883a add fp,fp,r23
  12376. 4b094: 95e5c83a sub r18,r18,r23
  12377. 4b098: 15efc83a sub r23,r2,r23
  12378. 4b09c: a5c00215 stw r23,8(r20)
  12379. 4b0a0: b83f8426 beq r23,zero,4aeb4 <__alt_data_end+0xfffd8eb4>
  12380. 4b0a4: 903fe11e bne r18,zero,4b02c <__alt_data_end+0xfffd902c>
  12381. 4b0a8: 8f000017 ldw fp,0(r17)
  12382. 4b0ac: 8c800117 ldw r18,4(r17)
  12383. 4b0b0: 0011883a mov r8,zero
  12384. 4b0b4: 8c400204 addi r17,r17,8
  12385. 4b0b8: 003fdb06 br 4b028 <__alt_data_end+0xfffd9028>
  12386. 4b0bc: 180d883a mov r6,r3
  12387. 4b0c0: e00b883a mov r5,fp
  12388. 4b0c4: da000115 stw r8,4(sp)
  12389. 4b0c8: d8c00015 stw r3,0(sp)
  12390. 4b0cc: 004b37c0 call 4b37c <memmove>
  12391. 4b0d0: d8c00017 ldw r3,0(sp)
  12392. 4b0d4: 80800017 ldw r2,0(r16)
  12393. 4b0d8: 800b883a mov r5,r16
  12394. 4b0dc: a809883a mov r4,r21
  12395. 4b0e0: 10c5883a add r2,r2,r3
  12396. 4b0e4: 80800015 stw r2,0(r16)
  12397. 4b0e8: d8c00015 stw r3,0(sp)
  12398. 4b0ec: 00461400 call 46140 <_fflush_r>
  12399. 4b0f0: d8c00017 ldw r3,0(sp)
  12400. 4b0f4: da000117 ldw r8,4(sp)
  12401. 4b0f8: 103fc21e bne r2,zero,4b004 <__alt_data_end+0xfffd9004>
  12402. 4b0fc: 182f883a mov r23,r3
  12403. 4b100: 9de7c83a sub r19,r19,r23
  12404. 4b104: 983fe11e bne r19,zero,4b08c <__alt_data_end+0xfffd908c>
  12405. 4b108: 800b883a mov r5,r16
  12406. 4b10c: a809883a mov r4,r21
  12407. 4b110: 00461400 call 46140 <_fflush_r>
  12408. 4b114: 103fbb1e bne r2,zero,4b004 <__alt_data_end+0xfffd9004>
  12409. 4b118: 0011883a mov r8,zero
  12410. 4b11c: 003fdb06 br 4b08c <__alt_data_end+0xfffd908c>
  12411. 4b120: 94c0012e bgeu r18,r19,4b128 <__sfvwrite_r+0x328>
  12412. 4b124: 9027883a mov r19,r18
  12413. 4b128: 980d883a mov r6,r19
  12414. 4b12c: e00b883a mov r5,fp
  12415. 4b130: 004b37c0 call 4b37c <memmove>
  12416. 4b134: 80800217 ldw r2,8(r16)
  12417. 4b138: 80c00017 ldw r3,0(r16)
  12418. 4b13c: 14c5c83a sub r2,r2,r19
  12419. 4b140: 1cc7883a add r3,r3,r19
  12420. 4b144: 80800215 stw r2,8(r16)
  12421. 4b148: 80c00015 stw r3,0(r16)
  12422. 4b14c: 10004326 beq r2,zero,4b25c <__sfvwrite_r+0x45c>
  12423. 4b150: 9805883a mov r2,r19
  12424. 4b154: 003f8306 br 4af64 <__alt_data_end+0xfffd8f64>
  12425. 4b158: b00d883a mov r6,r22
  12426. 4b15c: e00b883a mov r5,fp
  12427. 4b160: da000115 stw r8,4(sp)
  12428. 4b164: 004b37c0 call 4b37c <memmove>
  12429. 4b168: 80800217 ldw r2,8(r16)
  12430. 4b16c: 80c00017 ldw r3,0(r16)
  12431. 4b170: da000117 ldw r8,4(sp)
  12432. 4b174: 1585c83a sub r2,r2,r22
  12433. 4b178: 1dad883a add r22,r3,r22
  12434. 4b17c: 80800215 stw r2,8(r16)
  12435. 4b180: 85800015 stw r22,0(r16)
  12436. 4b184: 003fbf06 br 4b084 <__alt_data_end+0xfffd9084>
  12437. 4b188: 81000017 ldw r4,0(r16)
  12438. 4b18c: 9027883a mov r19,r18
  12439. 4b190: 902f883a mov r23,r18
  12440. 4b194: 003f6906 br 4af3c <__alt_data_end+0xfffd8f3c>
  12441. 4b198: 900d883a mov r6,r18
  12442. 4b19c: 01400284 movi r5,10
  12443. 4b1a0: e009883a mov r4,fp
  12444. 4b1a4: 00475dc0 call 475dc <memchr>
  12445. 4b1a8: 10003e26 beq r2,zero,4b2a4 <__sfvwrite_r+0x4a4>
  12446. 4b1ac: 10800044 addi r2,r2,1
  12447. 4b1b0: 1727c83a sub r19,r2,fp
  12448. 4b1b4: 02000044 movi r8,1
  12449. 4b1b8: 003f9d06 br 4b030 <__alt_data_end+0xfffd9030>
  12450. 4b1bc: 80800517 ldw r2,20(r16)
  12451. 4b1c0: 81400417 ldw r5,16(r16)
  12452. 4b1c4: 81c00017 ldw r7,0(r16)
  12453. 4b1c8: 10a7883a add r19,r2,r2
  12454. 4b1cc: 9885883a add r2,r19,r2
  12455. 4b1d0: 1026d7fa srli r19,r2,31
  12456. 4b1d4: 396dc83a sub r22,r7,r5
  12457. 4b1d8: b1000044 addi r4,r22,1
  12458. 4b1dc: 9885883a add r2,r19,r2
  12459. 4b1e0: 1027d07a srai r19,r2,1
  12460. 4b1e4: 2485883a add r2,r4,r18
  12461. 4b1e8: 980d883a mov r6,r19
  12462. 4b1ec: 9880022e bgeu r19,r2,4b1f8 <__sfvwrite_r+0x3f8>
  12463. 4b1f0: 1027883a mov r19,r2
  12464. 4b1f4: 100d883a mov r6,r2
  12465. 4b1f8: 18c1000c andi r3,r3,1024
  12466. 4b1fc: 18001c26 beq r3,zero,4b270 <__sfvwrite_r+0x470>
  12467. 4b200: 300b883a mov r5,r6
  12468. 4b204: a809883a mov r4,r21
  12469. 4b208: 0046dd00 call 46dd0 <_malloc_r>
  12470. 4b20c: 102f883a mov r23,r2
  12471. 4b210: 10002926 beq r2,zero,4b2b8 <__sfvwrite_r+0x4b8>
  12472. 4b214: 81400417 ldw r5,16(r16)
  12473. 4b218: b00d883a mov r6,r22
  12474. 4b21c: 1009883a mov r4,r2
  12475. 4b220: 00476c00 call 476c0 <memcpy>
  12476. 4b224: 8080030b ldhu r2,12(r16)
  12477. 4b228: 00fedfc4 movi r3,-1153
  12478. 4b22c: 10c4703a and r2,r2,r3
  12479. 4b230: 10802014 ori r2,r2,128
  12480. 4b234: 8080030d sth r2,12(r16)
  12481. 4b238: bd89883a add r4,r23,r22
  12482. 4b23c: 9d8fc83a sub r7,r19,r22
  12483. 4b240: 85c00415 stw r23,16(r16)
  12484. 4b244: 84c00515 stw r19,20(r16)
  12485. 4b248: 81000015 stw r4,0(r16)
  12486. 4b24c: 9027883a mov r19,r18
  12487. 4b250: 81c00215 stw r7,8(r16)
  12488. 4b254: 902f883a mov r23,r18
  12489. 4b258: 003f3806 br 4af3c <__alt_data_end+0xfffd8f3c>
  12490. 4b25c: 800b883a mov r5,r16
  12491. 4b260: a809883a mov r4,r21
  12492. 4b264: 00461400 call 46140 <_fflush_r>
  12493. 4b268: 103fb926 beq r2,zero,4b150 <__alt_data_end+0xfffd9150>
  12494. 4b26c: 003f6506 br 4b004 <__alt_data_end+0xfffd9004>
  12495. 4b270: a809883a mov r4,r21
  12496. 4b274: 004b5380 call 4b538 <_realloc_r>
  12497. 4b278: 102f883a mov r23,r2
  12498. 4b27c: 103fee1e bne r2,zero,4b238 <__alt_data_end+0xfffd9238>
  12499. 4b280: 81400417 ldw r5,16(r16)
  12500. 4b284: a809883a mov r4,r21
  12501. 4b288: 00466a00 call 466a0 <_free_r>
  12502. 4b28c: 8080030b ldhu r2,12(r16)
  12503. 4b290: 00ffdfc4 movi r3,-129
  12504. 4b294: 1884703a and r2,r3,r2
  12505. 4b298: 00c00304 movi r3,12
  12506. 4b29c: a8c00015 stw r3,0(r21)
  12507. 4b2a0: 003f5906 br 4b008 <__alt_data_end+0xfffd9008>
  12508. 4b2a4: 94c00044 addi r19,r18,1
  12509. 4b2a8: 02000044 movi r8,1
  12510. 4b2ac: 003f6006 br 4b030 <__alt_data_end+0xfffd9030>
  12511. 4b2b0: 00bfffc4 movi r2,-1
  12512. 4b2b4: 003f0006 br 4aeb8 <__alt_data_end+0xfffd8eb8>
  12513. 4b2b8: 00800304 movi r2,12
  12514. 4b2bc: a8800015 stw r2,0(r21)
  12515. 4b2c0: 8080030b ldhu r2,12(r16)
  12516. 4b2c4: 003f5006 br 4b008 <__alt_data_end+0xfffd9008>
  12517. 0004b2c8 <_isatty_r>:
  12518. 4b2c8: defffd04 addi sp,sp,-12
  12519. 4b2cc: dc000015 stw r16,0(sp)
  12520. 4b2d0: 04000174 movhi r16,5
  12521. 4b2d4: dc400115 stw r17,4(sp)
  12522. 4b2d8: 8417ab04 addi r16,r16,24236
  12523. 4b2dc: 2023883a mov r17,r4
  12524. 4b2e0: 2809883a mov r4,r5
  12525. 4b2e4: dfc00215 stw ra,8(sp)
  12526. 4b2e8: 80000015 stw zero,0(r16)
  12527. 4b2ec: 004eac80 call 4eac8 <isatty>
  12528. 4b2f0: 00ffffc4 movi r3,-1
  12529. 4b2f4: 10c00526 beq r2,r3,4b30c <_isatty_r+0x44>
  12530. 4b2f8: dfc00217 ldw ra,8(sp)
  12531. 4b2fc: dc400117 ldw r17,4(sp)
  12532. 4b300: dc000017 ldw r16,0(sp)
  12533. 4b304: dec00304 addi sp,sp,12
  12534. 4b308: f800283a ret
  12535. 4b30c: 80c00017 ldw r3,0(r16)
  12536. 4b310: 183ff926 beq r3,zero,4b2f8 <__alt_data_end+0xfffd92f8>
  12537. 4b314: 88c00015 stw r3,0(r17)
  12538. 4b318: 003ff706 br 4b2f8 <__alt_data_end+0xfffd92f8>
  12539. 0004b31c <_lseek_r>:
  12540. 4b31c: defffd04 addi sp,sp,-12
  12541. 4b320: 2805883a mov r2,r5
  12542. 4b324: dc000015 stw r16,0(sp)
  12543. 4b328: 04000174 movhi r16,5
  12544. 4b32c: dc400115 stw r17,4(sp)
  12545. 4b330: 300b883a mov r5,r6
  12546. 4b334: 8417ab04 addi r16,r16,24236
  12547. 4b338: 2023883a mov r17,r4
  12548. 4b33c: 380d883a mov r6,r7
  12549. 4b340: 1009883a mov r4,r2
  12550. 4b344: dfc00215 stw ra,8(sp)
  12551. 4b348: 80000015 stw zero,0(r16)
  12552. 4b34c: 004ec9c0 call 4ec9c <lseek>
  12553. 4b350: 00ffffc4 movi r3,-1
  12554. 4b354: 10c00526 beq r2,r3,4b36c <_lseek_r+0x50>
  12555. 4b358: dfc00217 ldw ra,8(sp)
  12556. 4b35c: dc400117 ldw r17,4(sp)
  12557. 4b360: dc000017 ldw r16,0(sp)
  12558. 4b364: dec00304 addi sp,sp,12
  12559. 4b368: f800283a ret
  12560. 4b36c: 80c00017 ldw r3,0(r16)
  12561. 4b370: 183ff926 beq r3,zero,4b358 <__alt_data_end+0xfffd9358>
  12562. 4b374: 88c00015 stw r3,0(r17)
  12563. 4b378: 003ff706 br 4b358 <__alt_data_end+0xfffd9358>
  12564. 0004b37c <memmove>:
  12565. 4b37c: 2005883a mov r2,r4
  12566. 4b380: 29000b2e bgeu r5,r4,4b3b0 <memmove+0x34>
  12567. 4b384: 298f883a add r7,r5,r6
  12568. 4b388: 21c0092e bgeu r4,r7,4b3b0 <memmove+0x34>
  12569. 4b38c: 2187883a add r3,r4,r6
  12570. 4b390: 198bc83a sub r5,r3,r6
  12571. 4b394: 30004826 beq r6,zero,4b4b8 <memmove+0x13c>
  12572. 4b398: 39ffffc4 addi r7,r7,-1
  12573. 4b39c: 39000003 ldbu r4,0(r7)
  12574. 4b3a0: 18ffffc4 addi r3,r3,-1
  12575. 4b3a4: 19000005 stb r4,0(r3)
  12576. 4b3a8: 28fffb1e bne r5,r3,4b398 <__alt_data_end+0xfffd9398>
  12577. 4b3ac: f800283a ret
  12578. 4b3b0: 00c003c4 movi r3,15
  12579. 4b3b4: 1980412e bgeu r3,r6,4b4bc <memmove+0x140>
  12580. 4b3b8: 2886b03a or r3,r5,r2
  12581. 4b3bc: 18c000cc andi r3,r3,3
  12582. 4b3c0: 1800401e bne r3,zero,4b4c4 <memmove+0x148>
  12583. 4b3c4: 33fffc04 addi r15,r6,-16
  12584. 4b3c8: 781ed13a srli r15,r15,4
  12585. 4b3cc: 28c00104 addi r3,r5,4
  12586. 4b3d0: 13400104 addi r13,r2,4
  12587. 4b3d4: 781c913a slli r14,r15,4
  12588. 4b3d8: 2b000204 addi r12,r5,8
  12589. 4b3dc: 12c00204 addi r11,r2,8
  12590. 4b3e0: 73800504 addi r14,r14,20
  12591. 4b3e4: 2a800304 addi r10,r5,12
  12592. 4b3e8: 12400304 addi r9,r2,12
  12593. 4b3ec: 2b9d883a add r14,r5,r14
  12594. 4b3f0: 2811883a mov r8,r5
  12595. 4b3f4: 100f883a mov r7,r2
  12596. 4b3f8: 41000017 ldw r4,0(r8)
  12597. 4b3fc: 39c00404 addi r7,r7,16
  12598. 4b400: 18c00404 addi r3,r3,16
  12599. 4b404: 393ffc15 stw r4,-16(r7)
  12600. 4b408: 193ffc17 ldw r4,-16(r3)
  12601. 4b40c: 6b400404 addi r13,r13,16
  12602. 4b410: 5ac00404 addi r11,r11,16
  12603. 4b414: 693ffc15 stw r4,-16(r13)
  12604. 4b418: 61000017 ldw r4,0(r12)
  12605. 4b41c: 4a400404 addi r9,r9,16
  12606. 4b420: 42000404 addi r8,r8,16
  12607. 4b424: 593ffc15 stw r4,-16(r11)
  12608. 4b428: 51000017 ldw r4,0(r10)
  12609. 4b42c: 63000404 addi r12,r12,16
  12610. 4b430: 52800404 addi r10,r10,16
  12611. 4b434: 493ffc15 stw r4,-16(r9)
  12612. 4b438: 1bbfef1e bne r3,r14,4b3f8 <__alt_data_end+0xfffd93f8>
  12613. 4b43c: 79000044 addi r4,r15,1
  12614. 4b440: 2008913a slli r4,r4,4
  12615. 4b444: 328003cc andi r10,r6,15
  12616. 4b448: 02c000c4 movi r11,3
  12617. 4b44c: 1107883a add r3,r2,r4
  12618. 4b450: 290b883a add r5,r5,r4
  12619. 4b454: 5a801e2e bgeu r11,r10,4b4d0 <memmove+0x154>
  12620. 4b458: 1813883a mov r9,r3
  12621. 4b45c: 2811883a mov r8,r5
  12622. 4b460: 500f883a mov r7,r10
  12623. 4b464: 41000017 ldw r4,0(r8)
  12624. 4b468: 4a400104 addi r9,r9,4
  12625. 4b46c: 39ffff04 addi r7,r7,-4
  12626. 4b470: 493fff15 stw r4,-4(r9)
  12627. 4b474: 42000104 addi r8,r8,4
  12628. 4b478: 59fffa36 bltu r11,r7,4b464 <__alt_data_end+0xfffd9464>
  12629. 4b47c: 513fff04 addi r4,r10,-4
  12630. 4b480: 2008d0ba srli r4,r4,2
  12631. 4b484: 318000cc andi r6,r6,3
  12632. 4b488: 21000044 addi r4,r4,1
  12633. 4b48c: 2109883a add r4,r4,r4
  12634. 4b490: 2109883a add r4,r4,r4
  12635. 4b494: 1907883a add r3,r3,r4
  12636. 4b498: 290b883a add r5,r5,r4
  12637. 4b49c: 30000b26 beq r6,zero,4b4cc <memmove+0x150>
  12638. 4b4a0: 198d883a add r6,r3,r6
  12639. 4b4a4: 29c00003 ldbu r7,0(r5)
  12640. 4b4a8: 18c00044 addi r3,r3,1
  12641. 4b4ac: 29400044 addi r5,r5,1
  12642. 4b4b0: 19ffffc5 stb r7,-1(r3)
  12643. 4b4b4: 19bffb1e bne r3,r6,4b4a4 <__alt_data_end+0xfffd94a4>
  12644. 4b4b8: f800283a ret
  12645. 4b4bc: 1007883a mov r3,r2
  12646. 4b4c0: 003ff606 br 4b49c <__alt_data_end+0xfffd949c>
  12647. 4b4c4: 1007883a mov r3,r2
  12648. 4b4c8: 003ff506 br 4b4a0 <__alt_data_end+0xfffd94a0>
  12649. 4b4cc: f800283a ret
  12650. 4b4d0: 500d883a mov r6,r10
  12651. 4b4d4: 003ff106 br 4b49c <__alt_data_end+0xfffd949c>
  12652. 0004b4d8 <_read_r>:
  12653. 4b4d8: defffd04 addi sp,sp,-12
  12654. 4b4dc: 2805883a mov r2,r5
  12655. 4b4e0: dc000015 stw r16,0(sp)
  12656. 4b4e4: 04000174 movhi r16,5
  12657. 4b4e8: dc400115 stw r17,4(sp)
  12658. 4b4ec: 300b883a mov r5,r6
  12659. 4b4f0: 8417ab04 addi r16,r16,24236
  12660. 4b4f4: 2023883a mov r17,r4
  12661. 4b4f8: 380d883a mov r6,r7
  12662. 4b4fc: 1009883a mov r4,r2
  12663. 4b500: dfc00215 stw ra,8(sp)
  12664. 4b504: 80000015 stw zero,0(r16)
  12665. 4b508: 004ee780 call 4ee78 <read>
  12666. 4b50c: 00ffffc4 movi r3,-1
  12667. 4b510: 10c00526 beq r2,r3,4b528 <_read_r+0x50>
  12668. 4b514: dfc00217 ldw ra,8(sp)
  12669. 4b518: dc400117 ldw r17,4(sp)
  12670. 4b51c: dc000017 ldw r16,0(sp)
  12671. 4b520: dec00304 addi sp,sp,12
  12672. 4b524: f800283a ret
  12673. 4b528: 80c00017 ldw r3,0(r16)
  12674. 4b52c: 183ff926 beq r3,zero,4b514 <__alt_data_end+0xfffd9514>
  12675. 4b530: 88c00015 stw r3,0(r17)
  12676. 4b534: 003ff706 br 4b514 <__alt_data_end+0xfffd9514>
  12677. 0004b538 <_realloc_r>:
  12678. 4b538: defff604 addi sp,sp,-40
  12679. 4b53c: dc800215 stw r18,8(sp)
  12680. 4b540: dfc00915 stw ra,36(sp)
  12681. 4b544: df000815 stw fp,32(sp)
  12682. 4b548: ddc00715 stw r23,28(sp)
  12683. 4b54c: dd800615 stw r22,24(sp)
  12684. 4b550: dd400515 stw r21,20(sp)
  12685. 4b554: dd000415 stw r20,16(sp)
  12686. 4b558: dcc00315 stw r19,12(sp)
  12687. 4b55c: dc400115 stw r17,4(sp)
  12688. 4b560: dc000015 stw r16,0(sp)
  12689. 4b564: 3025883a mov r18,r6
  12690. 4b568: 2800b726 beq r5,zero,4b848 <_realloc_r+0x310>
  12691. 4b56c: 282b883a mov r21,r5
  12692. 4b570: 2029883a mov r20,r4
  12693. 4b574: 004edf40 call 4edf4 <__malloc_lock>
  12694. 4b578: a8bfff17 ldw r2,-4(r21)
  12695. 4b57c: 043fff04 movi r16,-4
  12696. 4b580: 90c002c4 addi r3,r18,11
  12697. 4b584: 01000584 movi r4,22
  12698. 4b588: acfffe04 addi r19,r21,-8
  12699. 4b58c: 1420703a and r16,r2,r16
  12700. 4b590: 20c0332e bgeu r4,r3,4b660 <_realloc_r+0x128>
  12701. 4b594: 047ffe04 movi r17,-8
  12702. 4b598: 1c62703a and r17,r3,r17
  12703. 4b59c: 8807883a mov r3,r17
  12704. 4b5a0: 88005816 blt r17,zero,4b704 <_realloc_r+0x1cc>
  12705. 4b5a4: 8c805736 bltu r17,r18,4b704 <_realloc_r+0x1cc>
  12706. 4b5a8: 80c0300e bge r16,r3,4b66c <_realloc_r+0x134>
  12707. 4b5ac: 07000174 movhi fp,5
  12708. 4b5b0: e70abe04 addi fp,fp,11000
  12709. 4b5b4: e1c00217 ldw r7,8(fp)
  12710. 4b5b8: 9c09883a add r4,r19,r16
  12711. 4b5bc: 22000117 ldw r8,4(r4)
  12712. 4b5c0: 21c06326 beq r4,r7,4b750 <_realloc_r+0x218>
  12713. 4b5c4: 017fff84 movi r5,-2
  12714. 4b5c8: 414a703a and r5,r8,r5
  12715. 4b5cc: 214b883a add r5,r4,r5
  12716. 4b5d0: 29800117 ldw r6,4(r5)
  12717. 4b5d4: 3180004c andi r6,r6,1
  12718. 4b5d8: 30003f26 beq r6,zero,4b6d8 <_realloc_r+0x1a0>
  12719. 4b5dc: 1080004c andi r2,r2,1
  12720. 4b5e0: 10008326 beq r2,zero,4b7f0 <_realloc_r+0x2b8>
  12721. 4b5e4: 900b883a mov r5,r18
  12722. 4b5e8: a009883a mov r4,r20
  12723. 4b5ec: 0046dd00 call 46dd0 <_malloc_r>
  12724. 4b5f0: 1025883a mov r18,r2
  12725. 4b5f4: 10011e26 beq r2,zero,4ba70 <_realloc_r+0x538>
  12726. 4b5f8: a93fff17 ldw r4,-4(r21)
  12727. 4b5fc: 10fffe04 addi r3,r2,-8
  12728. 4b600: 00bfff84 movi r2,-2
  12729. 4b604: 2084703a and r2,r4,r2
  12730. 4b608: 9885883a add r2,r19,r2
  12731. 4b60c: 1880ee26 beq r3,r2,4b9c8 <_realloc_r+0x490>
  12732. 4b610: 81bfff04 addi r6,r16,-4
  12733. 4b614: 00800904 movi r2,36
  12734. 4b618: 1180b836 bltu r2,r6,4b8fc <_realloc_r+0x3c4>
  12735. 4b61c: 00c004c4 movi r3,19
  12736. 4b620: 19809636 bltu r3,r6,4b87c <_realloc_r+0x344>
  12737. 4b624: 9005883a mov r2,r18
  12738. 4b628: a807883a mov r3,r21
  12739. 4b62c: 19000017 ldw r4,0(r3)
  12740. 4b630: 11000015 stw r4,0(r2)
  12741. 4b634: 19000117 ldw r4,4(r3)
  12742. 4b638: 11000115 stw r4,4(r2)
  12743. 4b63c: 18c00217 ldw r3,8(r3)
  12744. 4b640: 10c00215 stw r3,8(r2)
  12745. 4b644: a80b883a mov r5,r21
  12746. 4b648: a009883a mov r4,r20
  12747. 4b64c: 00466a00 call 466a0 <_free_r>
  12748. 4b650: a009883a mov r4,r20
  12749. 4b654: 004ee180 call 4ee18 <__malloc_unlock>
  12750. 4b658: 9005883a mov r2,r18
  12751. 4b65c: 00001206 br 4b6a8 <_realloc_r+0x170>
  12752. 4b660: 00c00404 movi r3,16
  12753. 4b664: 1823883a mov r17,r3
  12754. 4b668: 003fce06 br 4b5a4 <__alt_data_end+0xfffd95a4>
  12755. 4b66c: a825883a mov r18,r21
  12756. 4b670: 8445c83a sub r2,r16,r17
  12757. 4b674: 00c003c4 movi r3,15
  12758. 4b678: 18802636 bltu r3,r2,4b714 <_realloc_r+0x1dc>
  12759. 4b67c: 99800117 ldw r6,4(r19)
  12760. 4b680: 9c07883a add r3,r19,r16
  12761. 4b684: 3180004c andi r6,r6,1
  12762. 4b688: 3420b03a or r16,r6,r16
  12763. 4b68c: 9c000115 stw r16,4(r19)
  12764. 4b690: 18800117 ldw r2,4(r3)
  12765. 4b694: 10800054 ori r2,r2,1
  12766. 4b698: 18800115 stw r2,4(r3)
  12767. 4b69c: a009883a mov r4,r20
  12768. 4b6a0: 004ee180 call 4ee18 <__malloc_unlock>
  12769. 4b6a4: 9005883a mov r2,r18
  12770. 4b6a8: dfc00917 ldw ra,36(sp)
  12771. 4b6ac: df000817 ldw fp,32(sp)
  12772. 4b6b0: ddc00717 ldw r23,28(sp)
  12773. 4b6b4: dd800617 ldw r22,24(sp)
  12774. 4b6b8: dd400517 ldw r21,20(sp)
  12775. 4b6bc: dd000417 ldw r20,16(sp)
  12776. 4b6c0: dcc00317 ldw r19,12(sp)
  12777. 4b6c4: dc800217 ldw r18,8(sp)
  12778. 4b6c8: dc400117 ldw r17,4(sp)
  12779. 4b6cc: dc000017 ldw r16,0(sp)
  12780. 4b6d0: dec00a04 addi sp,sp,40
  12781. 4b6d4: f800283a ret
  12782. 4b6d8: 017fff04 movi r5,-4
  12783. 4b6dc: 414a703a and r5,r8,r5
  12784. 4b6e0: 814d883a add r6,r16,r5
  12785. 4b6e4: 30c01f16 blt r6,r3,4b764 <_realloc_r+0x22c>
  12786. 4b6e8: 20800317 ldw r2,12(r4)
  12787. 4b6ec: 20c00217 ldw r3,8(r4)
  12788. 4b6f0: a825883a mov r18,r21
  12789. 4b6f4: 3021883a mov r16,r6
  12790. 4b6f8: 18800315 stw r2,12(r3)
  12791. 4b6fc: 10c00215 stw r3,8(r2)
  12792. 4b700: 003fdb06 br 4b670 <__alt_data_end+0xfffd9670>
  12793. 4b704: 00800304 movi r2,12
  12794. 4b708: a0800015 stw r2,0(r20)
  12795. 4b70c: 0005883a mov r2,zero
  12796. 4b710: 003fe506 br 4b6a8 <__alt_data_end+0xfffd96a8>
  12797. 4b714: 98c00117 ldw r3,4(r19)
  12798. 4b718: 9c4b883a add r5,r19,r17
  12799. 4b71c: 11000054 ori r4,r2,1
  12800. 4b720: 18c0004c andi r3,r3,1
  12801. 4b724: 1c62b03a or r17,r3,r17
  12802. 4b728: 9c400115 stw r17,4(r19)
  12803. 4b72c: 29000115 stw r4,4(r5)
  12804. 4b730: 2885883a add r2,r5,r2
  12805. 4b734: 10c00117 ldw r3,4(r2)
  12806. 4b738: 29400204 addi r5,r5,8
  12807. 4b73c: a009883a mov r4,r20
  12808. 4b740: 18c00054 ori r3,r3,1
  12809. 4b744: 10c00115 stw r3,4(r2)
  12810. 4b748: 00466a00 call 466a0 <_free_r>
  12811. 4b74c: 003fd306 br 4b69c <__alt_data_end+0xfffd969c>
  12812. 4b750: 017fff04 movi r5,-4
  12813. 4b754: 414a703a and r5,r8,r5
  12814. 4b758: 89800404 addi r6,r17,16
  12815. 4b75c: 8151883a add r8,r16,r5
  12816. 4b760: 4180590e bge r8,r6,4b8c8 <_realloc_r+0x390>
  12817. 4b764: 1080004c andi r2,r2,1
  12818. 4b768: 103f9e1e bne r2,zero,4b5e4 <__alt_data_end+0xfffd95e4>
  12819. 4b76c: adbffe17 ldw r22,-8(r21)
  12820. 4b770: 00bfff04 movi r2,-4
  12821. 4b774: 9dadc83a sub r22,r19,r22
  12822. 4b778: b1800117 ldw r6,4(r22)
  12823. 4b77c: 3084703a and r2,r6,r2
  12824. 4b780: 20002026 beq r4,zero,4b804 <_realloc_r+0x2cc>
  12825. 4b784: 80af883a add r23,r16,r2
  12826. 4b788: b96f883a add r23,r23,r5
  12827. 4b78c: 21c05f26 beq r4,r7,4b90c <_realloc_r+0x3d4>
  12828. 4b790: b8c01c16 blt r23,r3,4b804 <_realloc_r+0x2cc>
  12829. 4b794: 20800317 ldw r2,12(r4)
  12830. 4b798: 20c00217 ldw r3,8(r4)
  12831. 4b79c: 81bfff04 addi r6,r16,-4
  12832. 4b7a0: 01000904 movi r4,36
  12833. 4b7a4: 18800315 stw r2,12(r3)
  12834. 4b7a8: 10c00215 stw r3,8(r2)
  12835. 4b7ac: b0c00217 ldw r3,8(r22)
  12836. 4b7b0: b0800317 ldw r2,12(r22)
  12837. 4b7b4: b4800204 addi r18,r22,8
  12838. 4b7b8: 18800315 stw r2,12(r3)
  12839. 4b7bc: 10c00215 stw r3,8(r2)
  12840. 4b7c0: 21801b36 bltu r4,r6,4b830 <_realloc_r+0x2f8>
  12841. 4b7c4: 008004c4 movi r2,19
  12842. 4b7c8: 1180352e bgeu r2,r6,4b8a0 <_realloc_r+0x368>
  12843. 4b7cc: a8800017 ldw r2,0(r21)
  12844. 4b7d0: b0800215 stw r2,8(r22)
  12845. 4b7d4: a8800117 ldw r2,4(r21)
  12846. 4b7d8: b0800315 stw r2,12(r22)
  12847. 4b7dc: 008006c4 movi r2,27
  12848. 4b7e0: 11807f36 bltu r2,r6,4b9e0 <_realloc_r+0x4a8>
  12849. 4b7e4: b0800404 addi r2,r22,16
  12850. 4b7e8: ad400204 addi r21,r21,8
  12851. 4b7ec: 00002d06 br 4b8a4 <_realloc_r+0x36c>
  12852. 4b7f0: adbffe17 ldw r22,-8(r21)
  12853. 4b7f4: 00bfff04 movi r2,-4
  12854. 4b7f8: 9dadc83a sub r22,r19,r22
  12855. 4b7fc: b1000117 ldw r4,4(r22)
  12856. 4b800: 2084703a and r2,r4,r2
  12857. 4b804: b03f7726 beq r22,zero,4b5e4 <__alt_data_end+0xfffd95e4>
  12858. 4b808: 80af883a add r23,r16,r2
  12859. 4b80c: b8ff7516 blt r23,r3,4b5e4 <__alt_data_end+0xfffd95e4>
  12860. 4b810: b0800317 ldw r2,12(r22)
  12861. 4b814: b0c00217 ldw r3,8(r22)
  12862. 4b818: 81bfff04 addi r6,r16,-4
  12863. 4b81c: 01000904 movi r4,36
  12864. 4b820: 18800315 stw r2,12(r3)
  12865. 4b824: 10c00215 stw r3,8(r2)
  12866. 4b828: b4800204 addi r18,r22,8
  12867. 4b82c: 21bfe52e bgeu r4,r6,4b7c4 <__alt_data_end+0xfffd97c4>
  12868. 4b830: a80b883a mov r5,r21
  12869. 4b834: 9009883a mov r4,r18
  12870. 4b838: 004b37c0 call 4b37c <memmove>
  12871. 4b83c: b821883a mov r16,r23
  12872. 4b840: b027883a mov r19,r22
  12873. 4b844: 003f8a06 br 4b670 <__alt_data_end+0xfffd9670>
  12874. 4b848: 300b883a mov r5,r6
  12875. 4b84c: dfc00917 ldw ra,36(sp)
  12876. 4b850: df000817 ldw fp,32(sp)
  12877. 4b854: ddc00717 ldw r23,28(sp)
  12878. 4b858: dd800617 ldw r22,24(sp)
  12879. 4b85c: dd400517 ldw r21,20(sp)
  12880. 4b860: dd000417 ldw r20,16(sp)
  12881. 4b864: dcc00317 ldw r19,12(sp)
  12882. 4b868: dc800217 ldw r18,8(sp)
  12883. 4b86c: dc400117 ldw r17,4(sp)
  12884. 4b870: dc000017 ldw r16,0(sp)
  12885. 4b874: dec00a04 addi sp,sp,40
  12886. 4b878: 0046dd01 jmpi 46dd0 <_malloc_r>
  12887. 4b87c: a8c00017 ldw r3,0(r21)
  12888. 4b880: 90c00015 stw r3,0(r18)
  12889. 4b884: a8c00117 ldw r3,4(r21)
  12890. 4b888: 90c00115 stw r3,4(r18)
  12891. 4b88c: 00c006c4 movi r3,27
  12892. 4b890: 19804536 bltu r3,r6,4b9a8 <_realloc_r+0x470>
  12893. 4b894: 90800204 addi r2,r18,8
  12894. 4b898: a8c00204 addi r3,r21,8
  12895. 4b89c: 003f6306 br 4b62c <__alt_data_end+0xfffd962c>
  12896. 4b8a0: 9005883a mov r2,r18
  12897. 4b8a4: a8c00017 ldw r3,0(r21)
  12898. 4b8a8: b821883a mov r16,r23
  12899. 4b8ac: b027883a mov r19,r22
  12900. 4b8b0: 10c00015 stw r3,0(r2)
  12901. 4b8b4: a8c00117 ldw r3,4(r21)
  12902. 4b8b8: 10c00115 stw r3,4(r2)
  12903. 4b8bc: a8c00217 ldw r3,8(r21)
  12904. 4b8c0: 10c00215 stw r3,8(r2)
  12905. 4b8c4: 003f6a06 br 4b670 <__alt_data_end+0xfffd9670>
  12906. 4b8c8: 9c67883a add r19,r19,r17
  12907. 4b8cc: 4445c83a sub r2,r8,r17
  12908. 4b8d0: e4c00215 stw r19,8(fp)
  12909. 4b8d4: 10800054 ori r2,r2,1
  12910. 4b8d8: 98800115 stw r2,4(r19)
  12911. 4b8dc: a8bfff17 ldw r2,-4(r21)
  12912. 4b8e0: a009883a mov r4,r20
  12913. 4b8e4: 1080004c andi r2,r2,1
  12914. 4b8e8: 1462b03a or r17,r2,r17
  12915. 4b8ec: ac7fff15 stw r17,-4(r21)
  12916. 4b8f0: 004ee180 call 4ee18 <__malloc_unlock>
  12917. 4b8f4: a805883a mov r2,r21
  12918. 4b8f8: 003f6b06 br 4b6a8 <__alt_data_end+0xfffd96a8>
  12919. 4b8fc: a80b883a mov r5,r21
  12920. 4b900: 9009883a mov r4,r18
  12921. 4b904: 004b37c0 call 4b37c <memmove>
  12922. 4b908: 003f4e06 br 4b644 <__alt_data_end+0xfffd9644>
  12923. 4b90c: 89000404 addi r4,r17,16
  12924. 4b910: b93fbc16 blt r23,r4,4b804 <__alt_data_end+0xfffd9804>
  12925. 4b914: b0800317 ldw r2,12(r22)
  12926. 4b918: b0c00217 ldw r3,8(r22)
  12927. 4b91c: 81bfff04 addi r6,r16,-4
  12928. 4b920: 01000904 movi r4,36
  12929. 4b924: 18800315 stw r2,12(r3)
  12930. 4b928: 10c00215 stw r3,8(r2)
  12931. 4b92c: b4800204 addi r18,r22,8
  12932. 4b930: 21804336 bltu r4,r6,4ba40 <_realloc_r+0x508>
  12933. 4b934: 008004c4 movi r2,19
  12934. 4b938: 11803f2e bgeu r2,r6,4ba38 <_realloc_r+0x500>
  12935. 4b93c: a8800017 ldw r2,0(r21)
  12936. 4b940: b0800215 stw r2,8(r22)
  12937. 4b944: a8800117 ldw r2,4(r21)
  12938. 4b948: b0800315 stw r2,12(r22)
  12939. 4b94c: 008006c4 movi r2,27
  12940. 4b950: 11803f36 bltu r2,r6,4ba50 <_realloc_r+0x518>
  12941. 4b954: b0800404 addi r2,r22,16
  12942. 4b958: ad400204 addi r21,r21,8
  12943. 4b95c: a8c00017 ldw r3,0(r21)
  12944. 4b960: 10c00015 stw r3,0(r2)
  12945. 4b964: a8c00117 ldw r3,4(r21)
  12946. 4b968: 10c00115 stw r3,4(r2)
  12947. 4b96c: a8c00217 ldw r3,8(r21)
  12948. 4b970: 10c00215 stw r3,8(r2)
  12949. 4b974: b447883a add r3,r22,r17
  12950. 4b978: bc45c83a sub r2,r23,r17
  12951. 4b97c: e0c00215 stw r3,8(fp)
  12952. 4b980: 10800054 ori r2,r2,1
  12953. 4b984: 18800115 stw r2,4(r3)
  12954. 4b988: b0800117 ldw r2,4(r22)
  12955. 4b98c: a009883a mov r4,r20
  12956. 4b990: 1080004c andi r2,r2,1
  12957. 4b994: 1462b03a or r17,r2,r17
  12958. 4b998: b4400115 stw r17,4(r22)
  12959. 4b99c: 004ee180 call 4ee18 <__malloc_unlock>
  12960. 4b9a0: 9005883a mov r2,r18
  12961. 4b9a4: 003f4006 br 4b6a8 <__alt_data_end+0xfffd96a8>
  12962. 4b9a8: a8c00217 ldw r3,8(r21)
  12963. 4b9ac: 90c00215 stw r3,8(r18)
  12964. 4b9b0: a8c00317 ldw r3,12(r21)
  12965. 4b9b4: 90c00315 stw r3,12(r18)
  12966. 4b9b8: 30801126 beq r6,r2,4ba00 <_realloc_r+0x4c8>
  12967. 4b9bc: 90800404 addi r2,r18,16
  12968. 4b9c0: a8c00404 addi r3,r21,16
  12969. 4b9c4: 003f1906 br 4b62c <__alt_data_end+0xfffd962c>
  12970. 4b9c8: 90ffff17 ldw r3,-4(r18)
  12971. 4b9cc: 00bfff04 movi r2,-4
  12972. 4b9d0: a825883a mov r18,r21
  12973. 4b9d4: 1884703a and r2,r3,r2
  12974. 4b9d8: 80a1883a add r16,r16,r2
  12975. 4b9dc: 003f2406 br 4b670 <__alt_data_end+0xfffd9670>
  12976. 4b9e0: a8800217 ldw r2,8(r21)
  12977. 4b9e4: b0800415 stw r2,16(r22)
  12978. 4b9e8: a8800317 ldw r2,12(r21)
  12979. 4b9ec: b0800515 stw r2,20(r22)
  12980. 4b9f0: 31000a26 beq r6,r4,4ba1c <_realloc_r+0x4e4>
  12981. 4b9f4: b0800604 addi r2,r22,24
  12982. 4b9f8: ad400404 addi r21,r21,16
  12983. 4b9fc: 003fa906 br 4b8a4 <__alt_data_end+0xfffd98a4>
  12984. 4ba00: a9000417 ldw r4,16(r21)
  12985. 4ba04: 90800604 addi r2,r18,24
  12986. 4ba08: a8c00604 addi r3,r21,24
  12987. 4ba0c: 91000415 stw r4,16(r18)
  12988. 4ba10: a9000517 ldw r4,20(r21)
  12989. 4ba14: 91000515 stw r4,20(r18)
  12990. 4ba18: 003f0406 br 4b62c <__alt_data_end+0xfffd962c>
  12991. 4ba1c: a8c00417 ldw r3,16(r21)
  12992. 4ba20: ad400604 addi r21,r21,24
  12993. 4ba24: b0800804 addi r2,r22,32
  12994. 4ba28: b0c00615 stw r3,24(r22)
  12995. 4ba2c: a8ffff17 ldw r3,-4(r21)
  12996. 4ba30: b0c00715 stw r3,28(r22)
  12997. 4ba34: 003f9b06 br 4b8a4 <__alt_data_end+0xfffd98a4>
  12998. 4ba38: 9005883a mov r2,r18
  12999. 4ba3c: 003fc706 br 4b95c <__alt_data_end+0xfffd995c>
  13000. 4ba40: a80b883a mov r5,r21
  13001. 4ba44: 9009883a mov r4,r18
  13002. 4ba48: 004b37c0 call 4b37c <memmove>
  13003. 4ba4c: 003fc906 br 4b974 <__alt_data_end+0xfffd9974>
  13004. 4ba50: a8800217 ldw r2,8(r21)
  13005. 4ba54: b0800415 stw r2,16(r22)
  13006. 4ba58: a8800317 ldw r2,12(r21)
  13007. 4ba5c: b0800515 stw r2,20(r22)
  13008. 4ba60: 31000726 beq r6,r4,4ba80 <_realloc_r+0x548>
  13009. 4ba64: b0800604 addi r2,r22,24
  13010. 4ba68: ad400404 addi r21,r21,16
  13011. 4ba6c: 003fbb06 br 4b95c <__alt_data_end+0xfffd995c>
  13012. 4ba70: a009883a mov r4,r20
  13013. 4ba74: 004ee180 call 4ee18 <__malloc_unlock>
  13014. 4ba78: 0005883a mov r2,zero
  13015. 4ba7c: 003f0a06 br 4b6a8 <__alt_data_end+0xfffd96a8>
  13016. 4ba80: a8c00417 ldw r3,16(r21)
  13017. 4ba84: ad400604 addi r21,r21,24
  13018. 4ba88: b0800804 addi r2,r22,32
  13019. 4ba8c: b0c00615 stw r3,24(r22)
  13020. 4ba90: a8ffff17 ldw r3,-4(r21)
  13021. 4ba94: b0c00715 stw r3,28(r22)
  13022. 4ba98: 003fb006 br 4b95c <__alt_data_end+0xfffd995c>
  13023. 0004ba9c <_wcrtomb_r>:
  13024. 4ba9c: defff604 addi sp,sp,-40
  13025. 4baa0: 00800174 movhi r2,5
  13026. 4baa4: dc800815 stw r18,32(sp)
  13027. 4baa8: dc400715 stw r17,28(sp)
  13028. 4baac: dc000615 stw r16,24(sp)
  13029. 4bab0: 10908f04 addi r2,r2,16956
  13030. 4bab4: dfc00915 stw ra,36(sp)
  13031. 4bab8: 2021883a mov r16,r4
  13032. 4babc: 3823883a mov r17,r7
  13033. 4bac0: 14800017 ldw r18,0(r2)
  13034. 4bac4: 28001426 beq r5,zero,4bb18 <_wcrtomb_r+0x7c>
  13035. 4bac8: d9400415 stw r5,16(sp)
  13036. 4bacc: d9800515 stw r6,20(sp)
  13037. 4bad0: 0046bb40 call 46bb4 <__locale_charset>
  13038. 4bad4: d9800517 ldw r6,20(sp)
  13039. 4bad8: d9400417 ldw r5,16(sp)
  13040. 4badc: 100f883a mov r7,r2
  13041. 4bae0: dc400015 stw r17,0(sp)
  13042. 4bae4: 8009883a mov r4,r16
  13043. 4bae8: 903ee83a callr r18
  13044. 4baec: 00ffffc4 movi r3,-1
  13045. 4baf0: 10c0031e bne r2,r3,4bb00 <_wcrtomb_r+0x64>
  13046. 4baf4: 88000015 stw zero,0(r17)
  13047. 4baf8: 00c02284 movi r3,138
  13048. 4bafc: 80c00015 stw r3,0(r16)
  13049. 4bb00: dfc00917 ldw ra,36(sp)
  13050. 4bb04: dc800817 ldw r18,32(sp)
  13051. 4bb08: dc400717 ldw r17,28(sp)
  13052. 4bb0c: dc000617 ldw r16,24(sp)
  13053. 4bb10: dec00a04 addi sp,sp,40
  13054. 4bb14: f800283a ret
  13055. 4bb18: 0046bb40 call 46bb4 <__locale_charset>
  13056. 4bb1c: 100f883a mov r7,r2
  13057. 4bb20: dc400015 stw r17,0(sp)
  13058. 4bb24: 000d883a mov r6,zero
  13059. 4bb28: d9400104 addi r5,sp,4
  13060. 4bb2c: 8009883a mov r4,r16
  13061. 4bb30: 903ee83a callr r18
  13062. 4bb34: 003fed06 br 4baec <__alt_data_end+0xfffd9aec>
  13063. 0004bb38 <wcrtomb>:
  13064. 4bb38: defff604 addi sp,sp,-40
  13065. 4bb3c: 00800174 movhi r2,5
  13066. 4bb40: dc800615 stw r18,24(sp)
  13067. 4bb44: dc400515 stw r17,20(sp)
  13068. 4bb48: 10908b04 addi r2,r2,16940
  13069. 4bb4c: dfc00915 stw ra,36(sp)
  13070. 4bb50: dd000815 stw r20,32(sp)
  13071. 4bb54: dcc00715 stw r19,28(sp)
  13072. 4bb58: dc000415 stw r16,16(sp)
  13073. 4bb5c: 3025883a mov r18,r6
  13074. 4bb60: 14400017 ldw r17,0(r2)
  13075. 4bb64: 20001926 beq r4,zero,4bbcc <wcrtomb+0x94>
  13076. 4bb68: 00800174 movhi r2,5
  13077. 4bb6c: 10908f04 addi r2,r2,16956
  13078. 4bb70: 15000017 ldw r20,0(r2)
  13079. 4bb74: 2021883a mov r16,r4
  13080. 4bb78: 2827883a mov r19,r5
  13081. 4bb7c: 0046bb40 call 46bb4 <__locale_charset>
  13082. 4bb80: 100f883a mov r7,r2
  13083. 4bb84: dc800015 stw r18,0(sp)
  13084. 4bb88: 980d883a mov r6,r19
  13085. 4bb8c: 800b883a mov r5,r16
  13086. 4bb90: 8809883a mov r4,r17
  13087. 4bb94: a03ee83a callr r20
  13088. 4bb98: 00ffffc4 movi r3,-1
  13089. 4bb9c: 10c0031e bne r2,r3,4bbac <wcrtomb+0x74>
  13090. 4bba0: 90000015 stw zero,0(r18)
  13091. 4bba4: 00c02284 movi r3,138
  13092. 4bba8: 88c00015 stw r3,0(r17)
  13093. 4bbac: dfc00917 ldw ra,36(sp)
  13094. 4bbb0: dd000817 ldw r20,32(sp)
  13095. 4bbb4: dcc00717 ldw r19,28(sp)
  13096. 4bbb8: dc800617 ldw r18,24(sp)
  13097. 4bbbc: dc400517 ldw r17,20(sp)
  13098. 4bbc0: dc000417 ldw r16,16(sp)
  13099. 4bbc4: dec00a04 addi sp,sp,40
  13100. 4bbc8: f800283a ret
  13101. 4bbcc: 00800174 movhi r2,5
  13102. 4bbd0: 10908f04 addi r2,r2,16956
  13103. 4bbd4: 14000017 ldw r16,0(r2)
  13104. 4bbd8: 0046bb40 call 46bb4 <__locale_charset>
  13105. 4bbdc: 100f883a mov r7,r2
  13106. 4bbe0: dc800015 stw r18,0(sp)
  13107. 4bbe4: 000d883a mov r6,zero
  13108. 4bbe8: d9400104 addi r5,sp,4
  13109. 4bbec: 8809883a mov r4,r17
  13110. 4bbf0: 803ee83a callr r16
  13111. 4bbf4: 003fe806 br 4bb98 <__alt_data_end+0xfffd9b98>
  13112. 0004bbf8 <__ascii_wctomb>:
  13113. 4bbf8: 28000526 beq r5,zero,4bc10 <__ascii_wctomb+0x18>
  13114. 4bbfc: 00803fc4 movi r2,255
  13115. 4bc00: 11800536 bltu r2,r6,4bc18 <__ascii_wctomb+0x20>
  13116. 4bc04: 29800005 stb r6,0(r5)
  13117. 4bc08: 00800044 movi r2,1
  13118. 4bc0c: f800283a ret
  13119. 4bc10: 0005883a mov r2,zero
  13120. 4bc14: f800283a ret
  13121. 4bc18: 00802284 movi r2,138
  13122. 4bc1c: 20800015 stw r2,0(r4)
  13123. 4bc20: 00bfffc4 movi r2,-1
  13124. 4bc24: f800283a ret
  13125. 0004bc28 <_wctomb_r>:
  13126. 4bc28: 00800174 movhi r2,5
  13127. 4bc2c: defff904 addi sp,sp,-28
  13128. 4bc30: 10908f04 addi r2,r2,16956
  13129. 4bc34: dfc00615 stw ra,24(sp)
  13130. 4bc38: dc400515 stw r17,20(sp)
  13131. 4bc3c: dc000415 stw r16,16(sp)
  13132. 4bc40: 3823883a mov r17,r7
  13133. 4bc44: 14000017 ldw r16,0(r2)
  13134. 4bc48: d9000115 stw r4,4(sp)
  13135. 4bc4c: d9400215 stw r5,8(sp)
  13136. 4bc50: d9800315 stw r6,12(sp)
  13137. 4bc54: 0046bb40 call 46bb4 <__locale_charset>
  13138. 4bc58: d9800317 ldw r6,12(sp)
  13139. 4bc5c: d9400217 ldw r5,8(sp)
  13140. 4bc60: d9000117 ldw r4,4(sp)
  13141. 4bc64: 100f883a mov r7,r2
  13142. 4bc68: dc400015 stw r17,0(sp)
  13143. 4bc6c: 803ee83a callr r16
  13144. 4bc70: dfc00617 ldw ra,24(sp)
  13145. 4bc74: dc400517 ldw r17,20(sp)
  13146. 4bc78: dc000417 ldw r16,16(sp)
  13147. 4bc7c: dec00704 addi sp,sp,28
  13148. 4bc80: f800283a ret
  13149. 0004bc84 <__udivdi3>:
  13150. 4bc84: defff404 addi sp,sp,-48
  13151. 4bc88: dcc00515 stw r19,20(sp)
  13152. 4bc8c: dc000215 stw r16,8(sp)
  13153. 4bc90: dfc00b15 stw ra,44(sp)
  13154. 4bc94: df000a15 stw fp,40(sp)
  13155. 4bc98: ddc00915 stw r23,36(sp)
  13156. 4bc9c: dd800815 stw r22,32(sp)
  13157. 4bca0: dd400715 stw r21,28(sp)
  13158. 4bca4: dd000615 stw r20,24(sp)
  13159. 4bca8: dc800415 stw r18,16(sp)
  13160. 4bcac: dc400315 stw r17,12(sp)
  13161. 4bcb0: 2027883a mov r19,r4
  13162. 4bcb4: 2821883a mov r16,r5
  13163. 4bcb8: 3800461e bne r7,zero,4bdd4 <__udivdi3+0x150>
  13164. 4bcbc: 3023883a mov r17,r6
  13165. 4bcc0: 2025883a mov r18,r4
  13166. 4bcc4: 2980572e bgeu r5,r6,4be24 <__udivdi3+0x1a0>
  13167. 4bcc8: 00bfffd4 movui r2,65535
  13168. 4bccc: 282d883a mov r22,r5
  13169. 4bcd0: 1180b236 bltu r2,r6,4bf9c <__udivdi3+0x318>
  13170. 4bcd4: 00803fc4 movi r2,255
  13171. 4bcd8: 1185803a cmpltu r2,r2,r6
  13172. 4bcdc: 100490fa slli r2,r2,3
  13173. 4bce0: 3086d83a srl r3,r6,r2
  13174. 4bce4: 01000174 movhi r4,5
  13175. 4bce8: 21083584 addi r4,r4,8406
  13176. 4bcec: 20c7883a add r3,r4,r3
  13177. 4bcf0: 18c00003 ldbu r3,0(r3)
  13178. 4bcf4: 1885883a add r2,r3,r2
  13179. 4bcf8: 00c00804 movi r3,32
  13180. 4bcfc: 1887c83a sub r3,r3,r2
  13181. 4bd00: 18000526 beq r3,zero,4bd18 <__udivdi3+0x94>
  13182. 4bd04: 80e0983a sll r16,r16,r3
  13183. 4bd08: 9884d83a srl r2,r19,r2
  13184. 4bd0c: 30e2983a sll r17,r6,r3
  13185. 4bd10: 98e4983a sll r18,r19,r3
  13186. 4bd14: 142cb03a or r22,r2,r16
  13187. 4bd18: 882ad43a srli r21,r17,16
  13188. 4bd1c: b009883a mov r4,r22
  13189. 4bd20: 8d3fffcc andi r20,r17,65535
  13190. 4bd24: a80b883a mov r5,r21
  13191. 4bd28: 004c9a00 call 4c9a0 <__umodsi3>
  13192. 4bd2c: b009883a mov r4,r22
  13193. 4bd30: a80b883a mov r5,r21
  13194. 4bd34: 1027883a mov r19,r2
  13195. 4bd38: 004c93c0 call 4c93c <__udivsi3>
  13196. 4bd3c: 100b883a mov r5,r2
  13197. 4bd40: a009883a mov r4,r20
  13198. 4bd44: 102d883a mov r22,r2
  13199. 4bd48: 004c9f80 call 4c9f8 <__mulsi3>
  13200. 4bd4c: 9826943a slli r19,r19,16
  13201. 4bd50: 9006d43a srli r3,r18,16
  13202. 4bd54: 1cc6b03a or r3,r3,r19
  13203. 4bd58: 1880052e bgeu r3,r2,4bd70 <__udivdi3+0xec>
  13204. 4bd5c: 1c47883a add r3,r3,r17
  13205. 4bd60: b13fffc4 addi r4,r22,-1
  13206. 4bd64: 1c400136 bltu r3,r17,4bd6c <__udivdi3+0xe8>
  13207. 4bd68: 18814236 bltu r3,r2,4c274 <__udivdi3+0x5f0>
  13208. 4bd6c: 202d883a mov r22,r4
  13209. 4bd70: 18a1c83a sub r16,r3,r2
  13210. 4bd74: 8009883a mov r4,r16
  13211. 4bd78: a80b883a mov r5,r21
  13212. 4bd7c: 004c9a00 call 4c9a0 <__umodsi3>
  13213. 4bd80: 1027883a mov r19,r2
  13214. 4bd84: 8009883a mov r4,r16
  13215. 4bd88: a80b883a mov r5,r21
  13216. 4bd8c: 9826943a slli r19,r19,16
  13217. 4bd90: 004c93c0 call 4c93c <__udivsi3>
  13218. 4bd94: 100b883a mov r5,r2
  13219. 4bd98: a009883a mov r4,r20
  13220. 4bd9c: 94bfffcc andi r18,r18,65535
  13221. 4bda0: 1021883a mov r16,r2
  13222. 4bda4: 94e4b03a or r18,r18,r19
  13223. 4bda8: 004c9f80 call 4c9f8 <__mulsi3>
  13224. 4bdac: 9080052e bgeu r18,r2,4bdc4 <__udivdi3+0x140>
  13225. 4bdb0: 8ca5883a add r18,r17,r18
  13226. 4bdb4: 80ffffc4 addi r3,r16,-1
  13227. 4bdb8: 94410c36 bltu r18,r17,4c1ec <__udivdi3+0x568>
  13228. 4bdbc: 90810b2e bgeu r18,r2,4c1ec <__udivdi3+0x568>
  13229. 4bdc0: 843fff84 addi r16,r16,-2
  13230. 4bdc4: b004943a slli r2,r22,16
  13231. 4bdc8: 0007883a mov r3,zero
  13232. 4bdcc: 1404b03a or r2,r2,r16
  13233. 4bdd0: 00005e06 br 4bf4c <__udivdi3+0x2c8>
  13234. 4bdd4: 29c05b36 bltu r5,r7,4bf44 <__udivdi3+0x2c0>
  13235. 4bdd8: 00bfffd4 movui r2,65535
  13236. 4bddc: 11c0672e bgeu r2,r7,4bf7c <__udivdi3+0x2f8>
  13237. 4bde0: 00804034 movhi r2,256
  13238. 4bde4: 10bfffc4 addi r2,r2,-1
  13239. 4bde8: 11c10a36 bltu r2,r7,4c214 <__udivdi3+0x590>
  13240. 4bdec: 00800404 movi r2,16
  13241. 4bdf0: 3886d83a srl r3,r7,r2
  13242. 4bdf4: 01000174 movhi r4,5
  13243. 4bdf8: 21083584 addi r4,r4,8406
  13244. 4bdfc: 20c7883a add r3,r4,r3
  13245. 4be00: 18c00003 ldbu r3,0(r3)
  13246. 4be04: 05c00804 movi r23,32
  13247. 4be08: 1885883a add r2,r3,r2
  13248. 4be0c: b8afc83a sub r23,r23,r2
  13249. 4be10: b800671e bne r23,zero,4bfb0 <__udivdi3+0x32c>
  13250. 4be14: 3c010536 bltu r7,r16,4c22c <__udivdi3+0x5a8>
  13251. 4be18: 9985403a cmpgeu r2,r19,r6
  13252. 4be1c: 0007883a mov r3,zero
  13253. 4be20: 00004a06 br 4bf4c <__udivdi3+0x2c8>
  13254. 4be24: 3000041e bne r6,zero,4be38 <__udivdi3+0x1b4>
  13255. 4be28: 000b883a mov r5,zero
  13256. 4be2c: 01000044 movi r4,1
  13257. 4be30: 004c93c0 call 4c93c <__udivsi3>
  13258. 4be34: 1023883a mov r17,r2
  13259. 4be38: 00bfffd4 movui r2,65535
  13260. 4be3c: 1440532e bgeu r2,r17,4bf8c <__udivdi3+0x308>
  13261. 4be40: 00804034 movhi r2,256
  13262. 4be44: 10bfffc4 addi r2,r2,-1
  13263. 4be48: 1440f436 bltu r2,r17,4c21c <__udivdi3+0x598>
  13264. 4be4c: 00800404 movi r2,16
  13265. 4be50: 8886d83a srl r3,r17,r2
  13266. 4be54: 01000174 movhi r4,5
  13267. 4be58: 21083584 addi r4,r4,8406
  13268. 4be5c: 20c7883a add r3,r4,r3
  13269. 4be60: 18c00003 ldbu r3,0(r3)
  13270. 4be64: 1885883a add r2,r3,r2
  13271. 4be68: 00c00804 movi r3,32
  13272. 4be6c: 1887c83a sub r3,r3,r2
  13273. 4be70: 1800a51e bne r3,zero,4c108 <__udivdi3+0x484>
  13274. 4be74: 882ad43a srli r21,r17,16
  13275. 4be78: 8461c83a sub r16,r16,r17
  13276. 4be7c: 8d3fffcc andi r20,r17,65535
  13277. 4be80: 00c00044 movi r3,1
  13278. 4be84: a80b883a mov r5,r21
  13279. 4be88: 8009883a mov r4,r16
  13280. 4be8c: d8c00115 stw r3,4(sp)
  13281. 4be90: 004c9a00 call 4c9a0 <__umodsi3>
  13282. 4be94: a80b883a mov r5,r21
  13283. 4be98: 8009883a mov r4,r16
  13284. 4be9c: 1027883a mov r19,r2
  13285. 4bea0: 004c93c0 call 4c93c <__udivsi3>
  13286. 4bea4: a00b883a mov r5,r20
  13287. 4bea8: 1009883a mov r4,r2
  13288. 4beac: 102d883a mov r22,r2
  13289. 4beb0: 004c9f80 call 4c9f8 <__mulsi3>
  13290. 4beb4: 9826943a slli r19,r19,16
  13291. 4beb8: 900ed43a srli r7,r18,16
  13292. 4bebc: d8c00117 ldw r3,4(sp)
  13293. 4bec0: 3cceb03a or r7,r7,r19
  13294. 4bec4: 3880052e bgeu r7,r2,4bedc <__udivdi3+0x258>
  13295. 4bec8: 3c4f883a add r7,r7,r17
  13296. 4becc: b13fffc4 addi r4,r22,-1
  13297. 4bed0: 3c400136 bltu r7,r17,4bed8 <__udivdi3+0x254>
  13298. 4bed4: 3880e436 bltu r7,r2,4c268 <__udivdi3+0x5e4>
  13299. 4bed8: 202d883a mov r22,r4
  13300. 4bedc: 38a1c83a sub r16,r7,r2
  13301. 4bee0: 8009883a mov r4,r16
  13302. 4bee4: a80b883a mov r5,r21
  13303. 4bee8: d8c00115 stw r3,4(sp)
  13304. 4beec: 004c9a00 call 4c9a0 <__umodsi3>
  13305. 4bef0: 1027883a mov r19,r2
  13306. 4bef4: 8009883a mov r4,r16
  13307. 4bef8: a80b883a mov r5,r21
  13308. 4befc: 9826943a slli r19,r19,16
  13309. 4bf00: 004c93c0 call 4c93c <__udivsi3>
  13310. 4bf04: a00b883a mov r5,r20
  13311. 4bf08: 1009883a mov r4,r2
  13312. 4bf0c: 94bfffcc andi r18,r18,65535
  13313. 4bf10: 1021883a mov r16,r2
  13314. 4bf14: 94e4b03a or r18,r18,r19
  13315. 4bf18: 004c9f80 call 4c9f8 <__mulsi3>
  13316. 4bf1c: d8c00117 ldw r3,4(sp)
  13317. 4bf20: 9080052e bgeu r18,r2,4bf38 <__udivdi3+0x2b4>
  13318. 4bf24: 8ca5883a add r18,r17,r18
  13319. 4bf28: 813fffc4 addi r4,r16,-1
  13320. 4bf2c: 9440ad36 bltu r18,r17,4c1e4 <__udivdi3+0x560>
  13321. 4bf30: 9080ac2e bgeu r18,r2,4c1e4 <__udivdi3+0x560>
  13322. 4bf34: 843fff84 addi r16,r16,-2
  13323. 4bf38: b004943a slli r2,r22,16
  13324. 4bf3c: 1404b03a or r2,r2,r16
  13325. 4bf40: 00000206 br 4bf4c <__udivdi3+0x2c8>
  13326. 4bf44: 0007883a mov r3,zero
  13327. 4bf48: 0005883a mov r2,zero
  13328. 4bf4c: dfc00b17 ldw ra,44(sp)
  13329. 4bf50: df000a17 ldw fp,40(sp)
  13330. 4bf54: ddc00917 ldw r23,36(sp)
  13331. 4bf58: dd800817 ldw r22,32(sp)
  13332. 4bf5c: dd400717 ldw r21,28(sp)
  13333. 4bf60: dd000617 ldw r20,24(sp)
  13334. 4bf64: dcc00517 ldw r19,20(sp)
  13335. 4bf68: dc800417 ldw r18,16(sp)
  13336. 4bf6c: dc400317 ldw r17,12(sp)
  13337. 4bf70: dc000217 ldw r16,8(sp)
  13338. 4bf74: dec00c04 addi sp,sp,48
  13339. 4bf78: f800283a ret
  13340. 4bf7c: 00803fc4 movi r2,255
  13341. 4bf80: 11c5803a cmpltu r2,r2,r7
  13342. 4bf84: 100490fa slli r2,r2,3
  13343. 4bf88: 003f9906 br 4bdf0 <__alt_data_end+0xfffd9df0>
  13344. 4bf8c: 00803fc4 movi r2,255
  13345. 4bf90: 1445803a cmpltu r2,r2,r17
  13346. 4bf94: 100490fa slli r2,r2,3
  13347. 4bf98: 003fad06 br 4be50 <__alt_data_end+0xfffd9e50>
  13348. 4bf9c: 00804034 movhi r2,256
  13349. 4bfa0: 10bfffc4 addi r2,r2,-1
  13350. 4bfa4: 11809f36 bltu r2,r6,4c224 <__udivdi3+0x5a0>
  13351. 4bfa8: 00800404 movi r2,16
  13352. 4bfac: 003f4c06 br 4bce0 <__alt_data_end+0xfffd9ce0>
  13353. 4bfb0: 3dce983a sll r7,r7,r23
  13354. 4bfb4: 30b8d83a srl fp,r6,r2
  13355. 4bfb8: 80a2d83a srl r17,r16,r2
  13356. 4bfbc: 35cc983a sll r6,r6,r23
  13357. 4bfc0: 3f38b03a or fp,r7,fp
  13358. 4bfc4: e024d43a srli r18,fp,16
  13359. 4bfc8: 9884d83a srl r2,r19,r2
  13360. 4bfcc: 85e0983a sll r16,r16,r23
  13361. 4bfd0: 8809883a mov r4,r17
  13362. 4bfd4: 900b883a mov r5,r18
  13363. 4bfd8: d9800015 stw r6,0(sp)
  13364. 4bfdc: 1420b03a or r16,r2,r16
  13365. 4bfe0: 004c9a00 call 4c9a0 <__umodsi3>
  13366. 4bfe4: 900b883a mov r5,r18
  13367. 4bfe8: 8809883a mov r4,r17
  13368. 4bfec: 1029883a mov r20,r2
  13369. 4bff0: e5bfffcc andi r22,fp,65535
  13370. 4bff4: 004c93c0 call 4c93c <__udivsi3>
  13371. 4bff8: 100b883a mov r5,r2
  13372. 4bffc: b009883a mov r4,r22
  13373. 4c000: 102b883a mov r21,r2
  13374. 4c004: 004c9f80 call 4c9f8 <__mulsi3>
  13375. 4c008: a028943a slli r20,r20,16
  13376. 4c00c: 8006d43a srli r3,r16,16
  13377. 4c010: 1d06b03a or r3,r3,r20
  13378. 4c014: 1880042e bgeu r3,r2,4c028 <__udivdi3+0x3a4>
  13379. 4c018: 1f07883a add r3,r3,fp
  13380. 4c01c: a93fffc4 addi r4,r21,-1
  13381. 4c020: 1f00892e bgeu r3,fp,4c248 <__udivdi3+0x5c4>
  13382. 4c024: 202b883a mov r21,r4
  13383. 4c028: 18a3c83a sub r17,r3,r2
  13384. 4c02c: 8809883a mov r4,r17
  13385. 4c030: 900b883a mov r5,r18
  13386. 4c034: 004c9a00 call 4c9a0 <__umodsi3>
  13387. 4c038: 1029883a mov r20,r2
  13388. 4c03c: 8809883a mov r4,r17
  13389. 4c040: 900b883a mov r5,r18
  13390. 4c044: a028943a slli r20,r20,16
  13391. 4c048: 004c93c0 call 4c93c <__udivsi3>
  13392. 4c04c: 100b883a mov r5,r2
  13393. 4c050: b009883a mov r4,r22
  13394. 4c054: 843fffcc andi r16,r16,65535
  13395. 4c058: 1023883a mov r17,r2
  13396. 4c05c: 8520b03a or r16,r16,r20
  13397. 4c060: 004c9f80 call 4c9f8 <__mulsi3>
  13398. 4c064: 8080042e bgeu r16,r2,4c078 <__udivdi3+0x3f4>
  13399. 4c068: 8721883a add r16,r16,fp
  13400. 4c06c: 88ffffc4 addi r3,r17,-1
  13401. 4c070: 8700712e bgeu r16,fp,4c238 <__udivdi3+0x5b4>
  13402. 4c074: 1823883a mov r17,r3
  13403. 4c078: a80e943a slli r7,r21,16
  13404. 4c07c: d8c00017 ldw r3,0(sp)
  13405. 4c080: 80a1c83a sub r16,r16,r2
  13406. 4c084: 3c64b03a or r18,r7,r17
  13407. 4c088: 1d3fffcc andi r20,r3,65535
  13408. 4c08c: 9022d43a srli r17,r18,16
  13409. 4c090: 95bfffcc andi r22,r18,65535
  13410. 4c094: a00b883a mov r5,r20
  13411. 4c098: b009883a mov r4,r22
  13412. 4c09c: 182ad43a srli r21,r3,16
  13413. 4c0a0: 004c9f80 call 4c9f8 <__mulsi3>
  13414. 4c0a4: a00b883a mov r5,r20
  13415. 4c0a8: 8809883a mov r4,r17
  13416. 4c0ac: 1039883a mov fp,r2
  13417. 4c0b0: 004c9f80 call 4c9f8 <__mulsi3>
  13418. 4c0b4: 8809883a mov r4,r17
  13419. 4c0b8: a80b883a mov r5,r21
  13420. 4c0bc: 1029883a mov r20,r2
  13421. 4c0c0: 004c9f80 call 4c9f8 <__mulsi3>
  13422. 4c0c4: a80b883a mov r5,r21
  13423. 4c0c8: b009883a mov r4,r22
  13424. 4c0cc: 1023883a mov r17,r2
  13425. 4c0d0: 004c9f80 call 4c9f8 <__mulsi3>
  13426. 4c0d4: e006d43a srli r3,fp,16
  13427. 4c0d8: 1505883a add r2,r2,r20
  13428. 4c0dc: 1887883a add r3,r3,r2
  13429. 4c0e0: 1d00022e bgeu r3,r20,4c0ec <__udivdi3+0x468>
  13430. 4c0e4: 00800074 movhi r2,1
  13431. 4c0e8: 88a3883a add r17,r17,r2
  13432. 4c0ec: 1804d43a srli r2,r3,16
  13433. 4c0f0: 1463883a add r17,r2,r17
  13434. 4c0f4: 84404436 bltu r16,r17,4c208 <__udivdi3+0x584>
  13435. 4c0f8: 84403e26 beq r16,r17,4c1f4 <__udivdi3+0x570>
  13436. 4c0fc: 9005883a mov r2,r18
  13437. 4c100: 0007883a mov r3,zero
  13438. 4c104: 003f9106 br 4bf4c <__alt_data_end+0xfffd9f4c>
  13439. 4c108: 88e2983a sll r17,r17,r3
  13440. 4c10c: 80aed83a srl r23,r16,r2
  13441. 4c110: 80e0983a sll r16,r16,r3
  13442. 4c114: 882ad43a srli r21,r17,16
  13443. 4c118: 9884d83a srl r2,r19,r2
  13444. 4c11c: b809883a mov r4,r23
  13445. 4c120: a80b883a mov r5,r21
  13446. 4c124: 98e4983a sll r18,r19,r3
  13447. 4c128: 142cb03a or r22,r2,r16
  13448. 4c12c: 004c9a00 call 4c9a0 <__umodsi3>
  13449. 4c130: b809883a mov r4,r23
  13450. 4c134: a80b883a mov r5,r21
  13451. 4c138: 1027883a mov r19,r2
  13452. 4c13c: 8d3fffcc andi r20,r17,65535
  13453. 4c140: 004c93c0 call 4c93c <__udivsi3>
  13454. 4c144: a009883a mov r4,r20
  13455. 4c148: 100b883a mov r5,r2
  13456. 4c14c: 102f883a mov r23,r2
  13457. 4c150: 004c9f80 call 4c9f8 <__mulsi3>
  13458. 4c154: 9826943a slli r19,r19,16
  13459. 4c158: b008d43a srli r4,r22,16
  13460. 4c15c: 24c8b03a or r4,r4,r19
  13461. 4c160: 2080062e bgeu r4,r2,4c17c <__udivdi3+0x4f8>
  13462. 4c164: 2449883a add r4,r4,r17
  13463. 4c168: b8ffffc4 addi r3,r23,-1
  13464. 4c16c: 24403c36 bltu r4,r17,4c260 <__udivdi3+0x5dc>
  13465. 4c170: 20803b2e bgeu r4,r2,4c260 <__udivdi3+0x5dc>
  13466. 4c174: bdffff84 addi r23,r23,-2
  13467. 4c178: 2449883a add r4,r4,r17
  13468. 4c17c: 20a1c83a sub r16,r4,r2
  13469. 4c180: a80b883a mov r5,r21
  13470. 4c184: 8009883a mov r4,r16
  13471. 4c188: 004c9a00 call 4c9a0 <__umodsi3>
  13472. 4c18c: a80b883a mov r5,r21
  13473. 4c190: 8009883a mov r4,r16
  13474. 4c194: 1027883a mov r19,r2
  13475. 4c198: 004c93c0 call 4c93c <__udivsi3>
  13476. 4c19c: a009883a mov r4,r20
  13477. 4c1a0: 100b883a mov r5,r2
  13478. 4c1a4: 9826943a slli r19,r19,16
  13479. 4c1a8: 1039883a mov fp,r2
  13480. 4c1ac: 004c9f80 call 4c9f8 <__mulsi3>
  13481. 4c1b0: b13fffcc andi r4,r22,65535
  13482. 4c1b4: 24c8b03a or r4,r4,r19
  13483. 4c1b8: 2080062e bgeu r4,r2,4c1d4 <__udivdi3+0x550>
  13484. 4c1bc: 2449883a add r4,r4,r17
  13485. 4c1c0: e0ffffc4 addi r3,fp,-1
  13486. 4c1c4: 24402436 bltu r4,r17,4c258 <__udivdi3+0x5d4>
  13487. 4c1c8: 2080232e bgeu r4,r2,4c258 <__udivdi3+0x5d4>
  13488. 4c1cc: e73fff84 addi fp,fp,-2
  13489. 4c1d0: 2449883a add r4,r4,r17
  13490. 4c1d4: b82e943a slli r23,r23,16
  13491. 4c1d8: 20a1c83a sub r16,r4,r2
  13492. 4c1dc: bf06b03a or r3,r23,fp
  13493. 4c1e0: 003f2806 br 4be84 <__alt_data_end+0xfffd9e84>
  13494. 4c1e4: 2021883a mov r16,r4
  13495. 4c1e8: 003f5306 br 4bf38 <__alt_data_end+0xfffd9f38>
  13496. 4c1ec: 1821883a mov r16,r3
  13497. 4c1f0: 003ef406 br 4bdc4 <__alt_data_end+0xfffd9dc4>
  13498. 4c1f4: 1806943a slli r3,r3,16
  13499. 4c1f8: 9de6983a sll r19,r19,r23
  13500. 4c1fc: e73fffcc andi fp,fp,65535
  13501. 4c200: 1f07883a add r3,r3,fp
  13502. 4c204: 98ffbd2e bgeu r19,r3,4c0fc <__alt_data_end+0xfffda0fc>
  13503. 4c208: 90bfffc4 addi r2,r18,-1
  13504. 4c20c: 0007883a mov r3,zero
  13505. 4c210: 003f4e06 br 4bf4c <__alt_data_end+0xfffd9f4c>
  13506. 4c214: 00800604 movi r2,24
  13507. 4c218: 003ef506 br 4bdf0 <__alt_data_end+0xfffd9df0>
  13508. 4c21c: 00800604 movi r2,24
  13509. 4c220: 003f0b06 br 4be50 <__alt_data_end+0xfffd9e50>
  13510. 4c224: 00800604 movi r2,24
  13511. 4c228: 003ead06 br 4bce0 <__alt_data_end+0xfffd9ce0>
  13512. 4c22c: 0007883a mov r3,zero
  13513. 4c230: 00800044 movi r2,1
  13514. 4c234: 003f4506 br 4bf4c <__alt_data_end+0xfffd9f4c>
  13515. 4c238: 80bf8e2e bgeu r16,r2,4c074 <__alt_data_end+0xfffda074>
  13516. 4c23c: 8c7fff84 addi r17,r17,-2
  13517. 4c240: 8721883a add r16,r16,fp
  13518. 4c244: 003f8c06 br 4c078 <__alt_data_end+0xfffda078>
  13519. 4c248: 18bf762e bgeu r3,r2,4c024 <__alt_data_end+0xfffda024>
  13520. 4c24c: ad7fff84 addi r21,r21,-2
  13521. 4c250: 1f07883a add r3,r3,fp
  13522. 4c254: 003f7406 br 4c028 <__alt_data_end+0xfffda028>
  13523. 4c258: 1839883a mov fp,r3
  13524. 4c25c: 003fdd06 br 4c1d4 <__alt_data_end+0xfffda1d4>
  13525. 4c260: 182f883a mov r23,r3
  13526. 4c264: 003fc506 br 4c17c <__alt_data_end+0xfffda17c>
  13527. 4c268: b5bfff84 addi r22,r22,-2
  13528. 4c26c: 3c4f883a add r7,r7,r17
  13529. 4c270: 003f1a06 br 4bedc <__alt_data_end+0xfffd9edc>
  13530. 4c274: b5bfff84 addi r22,r22,-2
  13531. 4c278: 1c47883a add r3,r3,r17
  13532. 4c27c: 003ebc06 br 4bd70 <__alt_data_end+0xfffd9d70>
  13533. 0004c280 <__umoddi3>:
  13534. 4c280: defff304 addi sp,sp,-52
  13535. 4c284: df000b15 stw fp,44(sp)
  13536. 4c288: dc400415 stw r17,16(sp)
  13537. 4c28c: dc000315 stw r16,12(sp)
  13538. 4c290: dfc00c15 stw ra,48(sp)
  13539. 4c294: ddc00a15 stw r23,40(sp)
  13540. 4c298: dd800915 stw r22,36(sp)
  13541. 4c29c: dd400815 stw r21,32(sp)
  13542. 4c2a0: dd000715 stw r20,28(sp)
  13543. 4c2a4: dcc00615 stw r19,24(sp)
  13544. 4c2a8: dc800515 stw r18,20(sp)
  13545. 4c2ac: 2021883a mov r16,r4
  13546. 4c2b0: 2823883a mov r17,r5
  13547. 4c2b4: 2839883a mov fp,r5
  13548. 4c2b8: 3800401e bne r7,zero,4c3bc <__umoddi3+0x13c>
  13549. 4c2bc: 3027883a mov r19,r6
  13550. 4c2c0: 2029883a mov r20,r4
  13551. 4c2c4: 2980552e bgeu r5,r6,4c41c <__umoddi3+0x19c>
  13552. 4c2c8: 00bfffd4 movui r2,65535
  13553. 4c2cc: 1180a236 bltu r2,r6,4c558 <__umoddi3+0x2d8>
  13554. 4c2d0: 01003fc4 movi r4,255
  13555. 4c2d4: 2189803a cmpltu r4,r4,r6
  13556. 4c2d8: 200890fa slli r4,r4,3
  13557. 4c2dc: 3104d83a srl r2,r6,r4
  13558. 4c2e0: 00c00174 movhi r3,5
  13559. 4c2e4: 18c83584 addi r3,r3,8406
  13560. 4c2e8: 1885883a add r2,r3,r2
  13561. 4c2ec: 10c00003 ldbu r3,0(r2)
  13562. 4c2f0: 00800804 movi r2,32
  13563. 4c2f4: 1909883a add r4,r3,r4
  13564. 4c2f8: 1125c83a sub r18,r2,r4
  13565. 4c2fc: 90000526 beq r18,zero,4c314 <__umoddi3+0x94>
  13566. 4c300: 8ca2983a sll r17,r17,r18
  13567. 4c304: 8108d83a srl r4,r16,r4
  13568. 4c308: 34a6983a sll r19,r6,r18
  13569. 4c30c: 84a8983a sll r20,r16,r18
  13570. 4c310: 2478b03a or fp,r4,r17
  13571. 4c314: 982cd43a srli r22,r19,16
  13572. 4c318: e009883a mov r4,fp
  13573. 4c31c: 9dffffcc andi r23,r19,65535
  13574. 4c320: b00b883a mov r5,r22
  13575. 4c324: 004c9a00 call 4c9a0 <__umodsi3>
  13576. 4c328: b00b883a mov r5,r22
  13577. 4c32c: e009883a mov r4,fp
  13578. 4c330: 102b883a mov r21,r2
  13579. 4c334: 004c93c0 call 4c93c <__udivsi3>
  13580. 4c338: 100b883a mov r5,r2
  13581. 4c33c: b809883a mov r4,r23
  13582. 4c340: 004c9f80 call 4c9f8 <__mulsi3>
  13583. 4c344: a82a943a slli r21,r21,16
  13584. 4c348: a006d43a srli r3,r20,16
  13585. 4c34c: 1d46b03a or r3,r3,r21
  13586. 4c350: 1880032e bgeu r3,r2,4c360 <__umoddi3+0xe0>
  13587. 4c354: 1cc7883a add r3,r3,r19
  13588. 4c358: 1cc00136 bltu r3,r19,4c360 <__umoddi3+0xe0>
  13589. 4c35c: 18813136 bltu r3,r2,4c824 <__umoddi3+0x5a4>
  13590. 4c360: 18a1c83a sub r16,r3,r2
  13591. 4c364: b00b883a mov r5,r22
  13592. 4c368: 8009883a mov r4,r16
  13593. 4c36c: 004c9a00 call 4c9a0 <__umodsi3>
  13594. 4c370: b00b883a mov r5,r22
  13595. 4c374: 8009883a mov r4,r16
  13596. 4c378: 1023883a mov r17,r2
  13597. 4c37c: 004c93c0 call 4c93c <__udivsi3>
  13598. 4c380: 100b883a mov r5,r2
  13599. 4c384: b809883a mov r4,r23
  13600. 4c388: 8822943a slli r17,r17,16
  13601. 4c38c: 004c9f80 call 4c9f8 <__mulsi3>
  13602. 4c390: a0ffffcc andi r3,r20,65535
  13603. 4c394: 1c46b03a or r3,r3,r17
  13604. 4c398: 1880042e bgeu r3,r2,4c3ac <__umoddi3+0x12c>
  13605. 4c39c: 1cc7883a add r3,r3,r19
  13606. 4c3a0: 1cc00236 bltu r3,r19,4c3ac <__umoddi3+0x12c>
  13607. 4c3a4: 1880012e bgeu r3,r2,4c3ac <__umoddi3+0x12c>
  13608. 4c3a8: 1cc7883a add r3,r3,r19
  13609. 4c3ac: 1885c83a sub r2,r3,r2
  13610. 4c3b0: 1484d83a srl r2,r2,r18
  13611. 4c3b4: 0007883a mov r3,zero
  13612. 4c3b8: 00005306 br 4c508 <__umoddi3+0x288>
  13613. 4c3bc: 29c05036 bltu r5,r7,4c500 <__umoddi3+0x280>
  13614. 4c3c0: 00bfffd4 movui r2,65535
  13615. 4c3c4: 11c05c2e bgeu r2,r7,4c538 <__umoddi3+0x2b8>
  13616. 4c3c8: 00804034 movhi r2,256
  13617. 4c3cc: 10bfffc4 addi r2,r2,-1
  13618. 4c3d0: 11c10636 bltu r2,r7,4c7ec <__umoddi3+0x56c>
  13619. 4c3d4: 01000404 movi r4,16
  13620. 4c3d8: 3904d83a srl r2,r7,r4
  13621. 4c3dc: 00c00174 movhi r3,5
  13622. 4c3e0: 18c83584 addi r3,r3,8406
  13623. 4c3e4: 1885883a add r2,r3,r2
  13624. 4c3e8: 14c00003 ldbu r19,0(r2)
  13625. 4c3ec: 00c00804 movi r3,32
  13626. 4c3f0: 9927883a add r19,r19,r4
  13627. 4c3f4: 1ce9c83a sub r20,r3,r19
  13628. 4c3f8: a0005c1e bne r20,zero,4c56c <__umoddi3+0x2ec>
  13629. 4c3fc: 3c400136 bltu r7,r17,4c404 <__umoddi3+0x184>
  13630. 4c400: 81810a36 bltu r16,r6,4c82c <__umoddi3+0x5ac>
  13631. 4c404: 8185c83a sub r2,r16,r6
  13632. 4c408: 89e3c83a sub r17,r17,r7
  13633. 4c40c: 8089803a cmpltu r4,r16,r2
  13634. 4c410: 8939c83a sub fp,r17,r4
  13635. 4c414: e007883a mov r3,fp
  13636. 4c418: 00003b06 br 4c508 <__umoddi3+0x288>
  13637. 4c41c: 3000041e bne r6,zero,4c430 <__umoddi3+0x1b0>
  13638. 4c420: 000b883a mov r5,zero
  13639. 4c424: 01000044 movi r4,1
  13640. 4c428: 004c93c0 call 4c93c <__udivsi3>
  13641. 4c42c: 1027883a mov r19,r2
  13642. 4c430: 00bfffd4 movui r2,65535
  13643. 4c434: 14c0442e bgeu r2,r19,4c548 <__umoddi3+0x2c8>
  13644. 4c438: 00804034 movhi r2,256
  13645. 4c43c: 10bfffc4 addi r2,r2,-1
  13646. 4c440: 14c0ec36 bltu r2,r19,4c7f4 <__umoddi3+0x574>
  13647. 4c444: 00800404 movi r2,16
  13648. 4c448: 9886d83a srl r3,r19,r2
  13649. 4c44c: 01000174 movhi r4,5
  13650. 4c450: 21083584 addi r4,r4,8406
  13651. 4c454: 20c7883a add r3,r4,r3
  13652. 4c458: 18c00003 ldbu r3,0(r3)
  13653. 4c45c: 1887883a add r3,r3,r2
  13654. 4c460: 00800804 movi r2,32
  13655. 4c464: 10e5c83a sub r18,r2,r3
  13656. 4c468: 9000ab1e bne r18,zero,4c718 <__umoddi3+0x498>
  13657. 4c46c: 982cd43a srli r22,r19,16
  13658. 4c470: 8ce3c83a sub r17,r17,r19
  13659. 4c474: 9dffffcc andi r23,r19,65535
  13660. 4c478: b00b883a mov r5,r22
  13661. 4c47c: 8809883a mov r4,r17
  13662. 4c480: 004c9a00 call 4c9a0 <__umodsi3>
  13663. 4c484: b00b883a mov r5,r22
  13664. 4c488: 8809883a mov r4,r17
  13665. 4c48c: 102b883a mov r21,r2
  13666. 4c490: 004c93c0 call 4c93c <__udivsi3>
  13667. 4c494: b80b883a mov r5,r23
  13668. 4c498: 1009883a mov r4,r2
  13669. 4c49c: 004c9f80 call 4c9f8 <__mulsi3>
  13670. 4c4a0: a82a943a slli r21,r21,16
  13671. 4c4a4: a006d43a srli r3,r20,16
  13672. 4c4a8: 1d46b03a or r3,r3,r21
  13673. 4c4ac: 1880042e bgeu r3,r2,4c4c0 <__umoddi3+0x240>
  13674. 4c4b0: 1cc7883a add r3,r3,r19
  13675. 4c4b4: 1cc00236 bltu r3,r19,4c4c0 <__umoddi3+0x240>
  13676. 4c4b8: 1880012e bgeu r3,r2,4c4c0 <__umoddi3+0x240>
  13677. 4c4bc: 1cc7883a add r3,r3,r19
  13678. 4c4c0: 18a1c83a sub r16,r3,r2
  13679. 4c4c4: b00b883a mov r5,r22
  13680. 4c4c8: 8009883a mov r4,r16
  13681. 4c4cc: 004c9a00 call 4c9a0 <__umodsi3>
  13682. 4c4d0: 1023883a mov r17,r2
  13683. 4c4d4: b00b883a mov r5,r22
  13684. 4c4d8: 8009883a mov r4,r16
  13685. 4c4dc: 004c93c0 call 4c93c <__udivsi3>
  13686. 4c4e0: 8822943a slli r17,r17,16
  13687. 4c4e4: b80b883a mov r5,r23
  13688. 4c4e8: 1009883a mov r4,r2
  13689. 4c4ec: 004c9f80 call 4c9f8 <__mulsi3>
  13690. 4c4f0: a53fffcc andi r20,r20,65535
  13691. 4c4f4: a446b03a or r3,r20,r17
  13692. 4c4f8: 18bfac2e bgeu r3,r2,4c3ac <__alt_data_end+0xfffda3ac>
  13693. 4c4fc: 003fa706 br 4c39c <__alt_data_end+0xfffda39c>
  13694. 4c500: 2005883a mov r2,r4
  13695. 4c504: 2807883a mov r3,r5
  13696. 4c508: dfc00c17 ldw ra,48(sp)
  13697. 4c50c: df000b17 ldw fp,44(sp)
  13698. 4c510: ddc00a17 ldw r23,40(sp)
  13699. 4c514: dd800917 ldw r22,36(sp)
  13700. 4c518: dd400817 ldw r21,32(sp)
  13701. 4c51c: dd000717 ldw r20,28(sp)
  13702. 4c520: dcc00617 ldw r19,24(sp)
  13703. 4c524: dc800517 ldw r18,20(sp)
  13704. 4c528: dc400417 ldw r17,16(sp)
  13705. 4c52c: dc000317 ldw r16,12(sp)
  13706. 4c530: dec00d04 addi sp,sp,52
  13707. 4c534: f800283a ret
  13708. 4c538: 04c03fc4 movi r19,255
  13709. 4c53c: 99c9803a cmpltu r4,r19,r7
  13710. 4c540: 200890fa slli r4,r4,3
  13711. 4c544: 003fa406 br 4c3d8 <__alt_data_end+0xfffda3d8>
  13712. 4c548: 00803fc4 movi r2,255
  13713. 4c54c: 14c5803a cmpltu r2,r2,r19
  13714. 4c550: 100490fa slli r2,r2,3
  13715. 4c554: 003fbc06 br 4c448 <__alt_data_end+0xfffda448>
  13716. 4c558: 00804034 movhi r2,256
  13717. 4c55c: 10bfffc4 addi r2,r2,-1
  13718. 4c560: 1180a636 bltu r2,r6,4c7fc <__umoddi3+0x57c>
  13719. 4c564: 01000404 movi r4,16
  13720. 4c568: 003f5c06 br 4c2dc <__alt_data_end+0xfffda2dc>
  13721. 4c56c: 3d0e983a sll r7,r7,r20
  13722. 4c570: 34ead83a srl r21,r6,r19
  13723. 4c574: 8cc6d83a srl r3,r17,r19
  13724. 4c578: 8d10983a sll r8,r17,r20
  13725. 4c57c: 3d6ab03a or r21,r7,r21
  13726. 4c580: a82cd43a srli r22,r21,16
  13727. 4c584: 84e2d83a srl r17,r16,r19
  13728. 4c588: 1809883a mov r4,r3
  13729. 4c58c: b00b883a mov r5,r22
  13730. 4c590: 8a22b03a or r17,r17,r8
  13731. 4c594: 3524983a sll r18,r6,r20
  13732. 4c598: dc400015 stw r17,0(sp)
  13733. 4c59c: d8c00115 stw r3,4(sp)
  13734. 4c5a0: 004c9a00 call 4c9a0 <__umodsi3>
  13735. 4c5a4: d8c00117 ldw r3,4(sp)
  13736. 4c5a8: b00b883a mov r5,r22
  13737. 4c5ac: 1039883a mov fp,r2
  13738. 4c5b0: 1809883a mov r4,r3
  13739. 4c5b4: 004c93c0 call 4c93c <__udivsi3>
  13740. 4c5b8: adffffcc andi r23,r21,65535
  13741. 4c5bc: 100b883a mov r5,r2
  13742. 4c5c0: b809883a mov r4,r23
  13743. 4c5c4: 1023883a mov r17,r2
  13744. 4c5c8: 004c9f80 call 4c9f8 <__mulsi3>
  13745. 4c5cc: d9400017 ldw r5,0(sp)
  13746. 4c5d0: e008943a slli r4,fp,16
  13747. 4c5d4: 8520983a sll r16,r16,r20
  13748. 4c5d8: 2806d43a srli r3,r5,16
  13749. 4c5dc: 1906b03a or r3,r3,r4
  13750. 4c5e0: 1880042e bgeu r3,r2,4c5f4 <__umoddi3+0x374>
  13751. 4c5e4: 1d47883a add r3,r3,r21
  13752. 4c5e8: 893fffc4 addi r4,r17,-1
  13753. 4c5ec: 1d40892e bgeu r3,r21,4c814 <__umoddi3+0x594>
  13754. 4c5f0: 2023883a mov r17,r4
  13755. 4c5f4: 18b9c83a sub fp,r3,r2
  13756. 4c5f8: b00b883a mov r5,r22
  13757. 4c5fc: e009883a mov r4,fp
  13758. 4c600: 004c9a00 call 4c9a0 <__umodsi3>
  13759. 4c604: b00b883a mov r5,r22
  13760. 4c608: e009883a mov r4,fp
  13761. 4c60c: d8800215 stw r2,8(sp)
  13762. 4c610: 004c93c0 call 4c93c <__udivsi3>
  13763. 4c614: 100b883a mov r5,r2
  13764. 4c618: b809883a mov r4,r23
  13765. 4c61c: 102d883a mov r22,r2
  13766. 4c620: 004c9f80 call 4c9f8 <__mulsi3>
  13767. 4c624: d9800217 ldw r6,8(sp)
  13768. 4c628: d8c00017 ldw r3,0(sp)
  13769. 4c62c: 300c943a slli r6,r6,16
  13770. 4c630: 1a3fffcc andi r8,r3,65535
  13771. 4c634: 4190b03a or r8,r8,r6
  13772. 4c638: 4080042e bgeu r8,r2,4c64c <__umoddi3+0x3cc>
  13773. 4c63c: 4551883a add r8,r8,r21
  13774. 4c640: b0ffffc4 addi r3,r22,-1
  13775. 4c644: 45406f2e bgeu r8,r21,4c804 <__umoddi3+0x584>
  13776. 4c648: 182d883a mov r22,r3
  13777. 4c64c: 880e943a slli r7,r17,16
  13778. 4c650: 9006d43a srli r3,r18,16
  13779. 4c654: 91bfffcc andi r6,r18,65535
  13780. 4c658: 3dacb03a or r22,r7,r22
  13781. 4c65c: b02ed43a srli r23,r22,16
  13782. 4c660: b5bfffcc andi r22,r22,65535
  13783. 4c664: 300b883a mov r5,r6
  13784. 4c668: b009883a mov r4,r22
  13785. 4c66c: 40a3c83a sub r17,r8,r2
  13786. 4c670: d8c00115 stw r3,4(sp)
  13787. 4c674: d9800215 stw r6,8(sp)
  13788. 4c678: 004c9f80 call 4c9f8 <__mulsi3>
  13789. 4c67c: d9800217 ldw r6,8(sp)
  13790. 4c680: b809883a mov r4,r23
  13791. 4c684: 1039883a mov fp,r2
  13792. 4c688: 300b883a mov r5,r6
  13793. 4c68c: 004c9f80 call 4c9f8 <__mulsi3>
  13794. 4c690: d8c00117 ldw r3,4(sp)
  13795. 4c694: b809883a mov r4,r23
  13796. 4c698: d8800215 stw r2,8(sp)
  13797. 4c69c: 180b883a mov r5,r3
  13798. 4c6a0: 004c9f80 call 4c9f8 <__mulsi3>
  13799. 4c6a4: d8c00117 ldw r3,4(sp)
  13800. 4c6a8: b009883a mov r4,r22
  13801. 4c6ac: 102f883a mov r23,r2
  13802. 4c6b0: 180b883a mov r5,r3
  13803. 4c6b4: 004c9f80 call 4c9f8 <__mulsi3>
  13804. 4c6b8: d9800217 ldw r6,8(sp)
  13805. 4c6bc: e006d43a srli r3,fp,16
  13806. 4c6c0: 1185883a add r2,r2,r6
  13807. 4c6c4: 1885883a add r2,r3,r2
  13808. 4c6c8: 1180022e bgeu r2,r6,4c6d4 <__umoddi3+0x454>
  13809. 4c6cc: 00c00074 movhi r3,1
  13810. 4c6d0: b8ef883a add r23,r23,r3
  13811. 4c6d4: 1006d43a srli r3,r2,16
  13812. 4c6d8: 1004943a slli r2,r2,16
  13813. 4c6dc: e73fffcc andi fp,fp,65535
  13814. 4c6e0: 1dc7883a add r3,r3,r23
  13815. 4c6e4: 1739883a add fp,r2,fp
  13816. 4c6e8: 88c03a36 bltu r17,r3,4c7d4 <__umoddi3+0x554>
  13817. 4c6ec: 88c05126 beq r17,r3,4c834 <__umoddi3+0x5b4>
  13818. 4c6f0: 88c9c83a sub r4,r17,r3
  13819. 4c6f4: e00f883a mov r7,fp
  13820. 4c6f8: 81cfc83a sub r7,r16,r7
  13821. 4c6fc: 81c7803a cmpltu r3,r16,r7
  13822. 4c700: 20c7c83a sub r3,r4,r3
  13823. 4c704: 1cc4983a sll r2,r3,r19
  13824. 4c708: 3d0ed83a srl r7,r7,r20
  13825. 4c70c: 1d06d83a srl r3,r3,r20
  13826. 4c710: 11c4b03a or r2,r2,r7
  13827. 4c714: 003f7c06 br 4c508 <__alt_data_end+0xfffda508>
  13828. 4c718: 9ca6983a sll r19,r19,r18
  13829. 4c71c: 88f8d83a srl fp,r17,r3
  13830. 4c720: 80c4d83a srl r2,r16,r3
  13831. 4c724: 982cd43a srli r22,r19,16
  13832. 4c728: 8ca2983a sll r17,r17,r18
  13833. 4c72c: e009883a mov r4,fp
  13834. 4c730: b00b883a mov r5,r22
  13835. 4c734: 146ab03a or r21,r2,r17
  13836. 4c738: 004c9a00 call 4c9a0 <__umodsi3>
  13837. 4c73c: b00b883a mov r5,r22
  13838. 4c740: e009883a mov r4,fp
  13839. 4c744: 1029883a mov r20,r2
  13840. 4c748: 9dffffcc andi r23,r19,65535
  13841. 4c74c: 004c93c0 call 4c93c <__udivsi3>
  13842. 4c750: b809883a mov r4,r23
  13843. 4c754: 100b883a mov r5,r2
  13844. 4c758: 004c9f80 call 4c9f8 <__mulsi3>
  13845. 4c75c: a008943a slli r4,r20,16
  13846. 4c760: a806d43a srli r3,r21,16
  13847. 4c764: 84a8983a sll r20,r16,r18
  13848. 4c768: 1906b03a or r3,r3,r4
  13849. 4c76c: 1880042e bgeu r3,r2,4c780 <__umoddi3+0x500>
  13850. 4c770: 1cc7883a add r3,r3,r19
  13851. 4c774: 1cc00236 bltu r3,r19,4c780 <__umoddi3+0x500>
  13852. 4c778: 1880012e bgeu r3,r2,4c780 <__umoddi3+0x500>
  13853. 4c77c: 1cc7883a add r3,r3,r19
  13854. 4c780: 18a3c83a sub r17,r3,r2
  13855. 4c784: b00b883a mov r5,r22
  13856. 4c788: 8809883a mov r4,r17
  13857. 4c78c: 004c9a00 call 4c9a0 <__umodsi3>
  13858. 4c790: b00b883a mov r5,r22
  13859. 4c794: 8809883a mov r4,r17
  13860. 4c798: 1021883a mov r16,r2
  13861. 4c79c: 004c93c0 call 4c93c <__udivsi3>
  13862. 4c7a0: 100b883a mov r5,r2
  13863. 4c7a4: b809883a mov r4,r23
  13864. 4c7a8: 8020943a slli r16,r16,16
  13865. 4c7ac: 004c9f80 call 4c9f8 <__mulsi3>
  13866. 4c7b0: a8ffffcc andi r3,r21,65535
  13867. 4c7b4: 1c06b03a or r3,r3,r16
  13868. 4c7b8: 1880042e bgeu r3,r2,4c7cc <__umoddi3+0x54c>
  13869. 4c7bc: 1cc7883a add r3,r3,r19
  13870. 4c7c0: 1cc00236 bltu r3,r19,4c7cc <__umoddi3+0x54c>
  13871. 4c7c4: 1880012e bgeu r3,r2,4c7cc <__umoddi3+0x54c>
  13872. 4c7c8: 1cc7883a add r3,r3,r19
  13873. 4c7cc: 18a3c83a sub r17,r3,r2
  13874. 4c7d0: 003f2906 br 4c478 <__alt_data_end+0xfffda478>
  13875. 4c7d4: e48fc83a sub r7,fp,r18
  13876. 4c7d8: 1d49c83a sub r4,r3,r21
  13877. 4c7dc: e1f9803a cmpltu fp,fp,r7
  13878. 4c7e0: 2739c83a sub fp,r4,fp
  13879. 4c7e4: 8f09c83a sub r4,r17,fp
  13880. 4c7e8: 003fc306 br 4c6f8 <__alt_data_end+0xfffda6f8>
  13881. 4c7ec: 01000604 movi r4,24
  13882. 4c7f0: 003ef906 br 4c3d8 <__alt_data_end+0xfffda3d8>
  13883. 4c7f4: 00800604 movi r2,24
  13884. 4c7f8: 003f1306 br 4c448 <__alt_data_end+0xfffda448>
  13885. 4c7fc: 01000604 movi r4,24
  13886. 4c800: 003eb606 br 4c2dc <__alt_data_end+0xfffda2dc>
  13887. 4c804: 40bf902e bgeu r8,r2,4c648 <__alt_data_end+0xfffda648>
  13888. 4c808: b5bfff84 addi r22,r22,-2
  13889. 4c80c: 4551883a add r8,r8,r21
  13890. 4c810: 003f8e06 br 4c64c <__alt_data_end+0xfffda64c>
  13891. 4c814: 18bf762e bgeu r3,r2,4c5f0 <__alt_data_end+0xfffda5f0>
  13892. 4c818: 8c7fff84 addi r17,r17,-2
  13893. 4c81c: 1d47883a add r3,r3,r21
  13894. 4c820: 003f7406 br 4c5f4 <__alt_data_end+0xfffda5f4>
  13895. 4c824: 1cc7883a add r3,r3,r19
  13896. 4c828: 003ecd06 br 4c360 <__alt_data_end+0xfffda360>
  13897. 4c82c: 8005883a mov r2,r16
  13898. 4c830: 003ef806 br 4c414 <__alt_data_end+0xfffda414>
  13899. 4c834: 873fe736 bltu r16,fp,4c7d4 <__alt_data_end+0xfffda7d4>
  13900. 4c838: e00f883a mov r7,fp
  13901. 4c83c: 0009883a mov r4,zero
  13902. 4c840: 003fad06 br 4c6f8 <__alt_data_end+0xfffda6f8>
  13903. 0004c844 <__divsi3>:
  13904. 4c844: 20001b16 blt r4,zero,4c8b4 <__divsi3+0x70>
  13905. 4c848: 000f883a mov r7,zero
  13906. 4c84c: 28001616 blt r5,zero,4c8a8 <__divsi3+0x64>
  13907. 4c850: 200d883a mov r6,r4
  13908. 4c854: 29001a2e bgeu r5,r4,4c8c0 <__divsi3+0x7c>
  13909. 4c858: 00800804 movi r2,32
  13910. 4c85c: 00c00044 movi r3,1
  13911. 4c860: 00000106 br 4c868 <__divsi3+0x24>
  13912. 4c864: 10000d26 beq r2,zero,4c89c <__divsi3+0x58>
  13913. 4c868: 294b883a add r5,r5,r5
  13914. 4c86c: 10bfffc4 addi r2,r2,-1
  13915. 4c870: 18c7883a add r3,r3,r3
  13916. 4c874: 293ffb36 bltu r5,r4,4c864 <__alt_data_end+0xfffda864>
  13917. 4c878: 0005883a mov r2,zero
  13918. 4c87c: 18000726 beq r3,zero,4c89c <__divsi3+0x58>
  13919. 4c880: 0005883a mov r2,zero
  13920. 4c884: 31400236 bltu r6,r5,4c890 <__divsi3+0x4c>
  13921. 4c888: 314dc83a sub r6,r6,r5
  13922. 4c88c: 10c4b03a or r2,r2,r3
  13923. 4c890: 1806d07a srli r3,r3,1
  13924. 4c894: 280ad07a srli r5,r5,1
  13925. 4c898: 183ffa1e bne r3,zero,4c884 <__alt_data_end+0xfffda884>
  13926. 4c89c: 38000126 beq r7,zero,4c8a4 <__divsi3+0x60>
  13927. 4c8a0: 0085c83a sub r2,zero,r2
  13928. 4c8a4: f800283a ret
  13929. 4c8a8: 014bc83a sub r5,zero,r5
  13930. 4c8ac: 39c0005c xori r7,r7,1
  13931. 4c8b0: 003fe706 br 4c850 <__alt_data_end+0xfffda850>
  13932. 4c8b4: 0109c83a sub r4,zero,r4
  13933. 4c8b8: 01c00044 movi r7,1
  13934. 4c8bc: 003fe306 br 4c84c <__alt_data_end+0xfffda84c>
  13935. 4c8c0: 00c00044 movi r3,1
  13936. 4c8c4: 003fee06 br 4c880 <__alt_data_end+0xfffda880>
  13937. 0004c8c8 <__modsi3>:
  13938. 4c8c8: 20001716 blt r4,zero,4c928 <__modsi3+0x60>
  13939. 4c8cc: 000f883a mov r7,zero
  13940. 4c8d0: 2005883a mov r2,r4
  13941. 4c8d4: 28001216 blt r5,zero,4c920 <__modsi3+0x58>
  13942. 4c8d8: 2900162e bgeu r5,r4,4c934 <__modsi3+0x6c>
  13943. 4c8dc: 01800804 movi r6,32
  13944. 4c8e0: 00c00044 movi r3,1
  13945. 4c8e4: 00000106 br 4c8ec <__modsi3+0x24>
  13946. 4c8e8: 30000a26 beq r6,zero,4c914 <__modsi3+0x4c>
  13947. 4c8ec: 294b883a add r5,r5,r5
  13948. 4c8f0: 31bfffc4 addi r6,r6,-1
  13949. 4c8f4: 18c7883a add r3,r3,r3
  13950. 4c8f8: 293ffb36 bltu r5,r4,4c8e8 <__alt_data_end+0xfffda8e8>
  13951. 4c8fc: 18000526 beq r3,zero,4c914 <__modsi3+0x4c>
  13952. 4c900: 1806d07a srli r3,r3,1
  13953. 4c904: 11400136 bltu r2,r5,4c90c <__modsi3+0x44>
  13954. 4c908: 1145c83a sub r2,r2,r5
  13955. 4c90c: 280ad07a srli r5,r5,1
  13956. 4c910: 183ffb1e bne r3,zero,4c900 <__alt_data_end+0xfffda900>
  13957. 4c914: 38000126 beq r7,zero,4c91c <__modsi3+0x54>
  13958. 4c918: 0085c83a sub r2,zero,r2
  13959. 4c91c: f800283a ret
  13960. 4c920: 014bc83a sub r5,zero,r5
  13961. 4c924: 003fec06 br 4c8d8 <__alt_data_end+0xfffda8d8>
  13962. 4c928: 0109c83a sub r4,zero,r4
  13963. 4c92c: 01c00044 movi r7,1
  13964. 4c930: 003fe706 br 4c8d0 <__alt_data_end+0xfffda8d0>
  13965. 4c934: 00c00044 movi r3,1
  13966. 4c938: 003ff106 br 4c900 <__alt_data_end+0xfffda900>
  13967. 0004c93c <__udivsi3>:
  13968. 4c93c: 200d883a mov r6,r4
  13969. 4c940: 2900152e bgeu r5,r4,4c998 <__udivsi3+0x5c>
  13970. 4c944: 28001416 blt r5,zero,4c998 <__udivsi3+0x5c>
  13971. 4c948: 00800804 movi r2,32
  13972. 4c94c: 00c00044 movi r3,1
  13973. 4c950: 00000206 br 4c95c <__udivsi3+0x20>
  13974. 4c954: 10000e26 beq r2,zero,4c990 <__udivsi3+0x54>
  13975. 4c958: 28000516 blt r5,zero,4c970 <__udivsi3+0x34>
  13976. 4c95c: 294b883a add r5,r5,r5
  13977. 4c960: 10bfffc4 addi r2,r2,-1
  13978. 4c964: 18c7883a add r3,r3,r3
  13979. 4c968: 293ffa36 bltu r5,r4,4c954 <__alt_data_end+0xfffda954>
  13980. 4c96c: 18000826 beq r3,zero,4c990 <__udivsi3+0x54>
  13981. 4c970: 0005883a mov r2,zero
  13982. 4c974: 31400236 bltu r6,r5,4c980 <__udivsi3+0x44>
  13983. 4c978: 314dc83a sub r6,r6,r5
  13984. 4c97c: 10c4b03a or r2,r2,r3
  13985. 4c980: 1806d07a srli r3,r3,1
  13986. 4c984: 280ad07a srli r5,r5,1
  13987. 4c988: 183ffa1e bne r3,zero,4c974 <__alt_data_end+0xfffda974>
  13988. 4c98c: f800283a ret
  13989. 4c990: 0005883a mov r2,zero
  13990. 4c994: f800283a ret
  13991. 4c998: 00c00044 movi r3,1
  13992. 4c99c: 003ff406 br 4c970 <__alt_data_end+0xfffda970>
  13993. 0004c9a0 <__umodsi3>:
  13994. 4c9a0: 2005883a mov r2,r4
  13995. 4c9a4: 2900122e bgeu r5,r4,4c9f0 <__umodsi3+0x50>
  13996. 4c9a8: 28001116 blt r5,zero,4c9f0 <__umodsi3+0x50>
  13997. 4c9ac: 01800804 movi r6,32
  13998. 4c9b0: 00c00044 movi r3,1
  13999. 4c9b4: 00000206 br 4c9c0 <__umodsi3+0x20>
  14000. 4c9b8: 30000c26 beq r6,zero,4c9ec <__umodsi3+0x4c>
  14001. 4c9bc: 28000516 blt r5,zero,4c9d4 <__umodsi3+0x34>
  14002. 4c9c0: 294b883a add r5,r5,r5
  14003. 4c9c4: 31bfffc4 addi r6,r6,-1
  14004. 4c9c8: 18c7883a add r3,r3,r3
  14005. 4c9cc: 293ffa36 bltu r5,r4,4c9b8 <__alt_data_end+0xfffda9b8>
  14006. 4c9d0: 18000626 beq r3,zero,4c9ec <__umodsi3+0x4c>
  14007. 4c9d4: 1806d07a srli r3,r3,1
  14008. 4c9d8: 11400136 bltu r2,r5,4c9e0 <__umodsi3+0x40>
  14009. 4c9dc: 1145c83a sub r2,r2,r5
  14010. 4c9e0: 280ad07a srli r5,r5,1
  14011. 4c9e4: 183ffb1e bne r3,zero,4c9d4 <__alt_data_end+0xfffda9d4>
  14012. 4c9e8: f800283a ret
  14013. 4c9ec: f800283a ret
  14014. 4c9f0: 00c00044 movi r3,1
  14015. 4c9f4: 003ff706 br 4c9d4 <__alt_data_end+0xfffda9d4>
  14016. 0004c9f8 <__mulsi3>:
  14017. 4c9f8: 0005883a mov r2,zero
  14018. 4c9fc: 20000726 beq r4,zero,4ca1c <__mulsi3+0x24>
  14019. 4ca00: 20c0004c andi r3,r4,1
  14020. 4ca04: 2008d07a srli r4,r4,1
  14021. 4ca08: 18000126 beq r3,zero,4ca10 <__mulsi3+0x18>
  14022. 4ca0c: 1145883a add r2,r2,r5
  14023. 4ca10: 294b883a add r5,r5,r5
  14024. 4ca14: 203ffa1e bne r4,zero,4ca00 <__alt_data_end+0xfffdaa00>
  14025. 4ca18: f800283a ret
  14026. 4ca1c: f800283a ret
  14027. 0004ca20 <__divdf3>:
  14028. 4ca20: defff004 addi sp,sp,-64
  14029. 4ca24: dc800815 stw r18,32(sp)
  14030. 4ca28: 2824d53a srli r18,r5,20
  14031. 4ca2c: dd800c15 stw r22,48(sp)
  14032. 4ca30: 282cd7fa srli r22,r5,31
  14033. 4ca34: dc000615 stw r16,24(sp)
  14034. 4ca38: 04000434 movhi r16,16
  14035. 4ca3c: 843fffc4 addi r16,r16,-1
  14036. 4ca40: dfc00f15 stw ra,60(sp)
  14037. 4ca44: df000e15 stw fp,56(sp)
  14038. 4ca48: ddc00d15 stw r23,52(sp)
  14039. 4ca4c: dd400b15 stw r21,44(sp)
  14040. 4ca50: dd000a15 stw r20,40(sp)
  14041. 4ca54: dcc00915 stw r19,36(sp)
  14042. 4ca58: dc400715 stw r17,28(sp)
  14043. 4ca5c: 9481ffcc andi r18,r18,2047
  14044. 4ca60: 2c20703a and r16,r5,r16
  14045. 4ca64: b2003fcc andi r8,r22,255
  14046. 4ca68: 90006126 beq r18,zero,4cbf0 <__divdf3+0x1d0>
  14047. 4ca6c: 0081ffc4 movi r2,2047
  14048. 4ca70: 202b883a mov r21,r4
  14049. 4ca74: 90803726 beq r18,r2,4cb54 <__divdf3+0x134>
  14050. 4ca78: 80800434 orhi r2,r16,16
  14051. 4ca7c: 100490fa slli r2,r2,3
  14052. 4ca80: 2020d77a srli r16,r4,29
  14053. 4ca84: 202a90fa slli r21,r4,3
  14054. 4ca88: 94bf0044 addi r18,r18,-1023
  14055. 4ca8c: 80a0b03a or r16,r16,r2
  14056. 4ca90: 0013883a mov r9,zero
  14057. 4ca94: 000b883a mov r5,zero
  14058. 4ca98: 3806d53a srli r3,r7,20
  14059. 4ca9c: 382ed7fa srli r23,r7,31
  14060. 4caa0: 04400434 movhi r17,16
  14061. 4caa4: 8c7fffc4 addi r17,r17,-1
  14062. 4caa8: 18c1ffcc andi r3,r3,2047
  14063. 4caac: 3029883a mov r20,r6
  14064. 4cab0: 3c62703a and r17,r7,r17
  14065. 4cab4: bf003fcc andi fp,r23,255
  14066. 4cab8: 18006e26 beq r3,zero,4cc74 <__divdf3+0x254>
  14067. 4cabc: 0081ffc4 movi r2,2047
  14068. 4cac0: 18806626 beq r3,r2,4cc5c <__divdf3+0x23c>
  14069. 4cac4: 88800434 orhi r2,r17,16
  14070. 4cac8: 100490fa slli r2,r2,3
  14071. 4cacc: 3022d77a srli r17,r6,29
  14072. 4cad0: 302890fa slli r20,r6,3
  14073. 4cad4: 18ff0044 addi r3,r3,-1023
  14074. 4cad8: 88a2b03a or r17,r17,r2
  14075. 4cadc: 000f883a mov r7,zero
  14076. 4cae0: b5e6f03a xor r19,r22,r23
  14077. 4cae4: 3a4cb03a or r6,r7,r9
  14078. 4cae8: 008003c4 movi r2,15
  14079. 4caec: 9809883a mov r4,r19
  14080. 4caf0: 90c7c83a sub r3,r18,r3
  14081. 4caf4: 9cc03fcc andi r19,r19,255
  14082. 4caf8: 11809636 bltu r2,r6,4cd54 <__divdf3+0x334>
  14083. 4cafc: 300c90ba slli r6,r6,2
  14084. 4cb00: 00800174 movhi r2,5
  14085. 4cb04: 10b2c504 addi r2,r2,-13548
  14086. 4cb08: 308d883a add r6,r6,r2
  14087. 4cb0c: 30800017 ldw r2,0(r6)
  14088. 4cb10: 1000683a jmp r2
  14089. 4cb14: 0004cd54 movui zero,4917
  14090. 4cb18: 0004cb8c andi zero,zero,4910
  14091. 4cb1c: 0004cd44 movi zero,4917
  14092. 4cb20: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
  14093. 4cb24: 0004cd44 movi zero,4917
  14094. 4cb28: 0004cd18 cmpnei zero,zero,4916
  14095. 4cb2c: 0004cd44 movi zero,4917
  14096. 4cb30: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
  14097. 4cb34: 0004cb8c andi zero,zero,4910
  14098. 4cb38: 0004cb8c andi zero,zero,4910
  14099. 4cb3c: 0004cd18 cmpnei zero,zero,4916
  14100. 4cb40: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
  14101. 4cb44: 0004cb70 cmpltui zero,zero,4909
  14102. 4cb48: 0004cb70 cmpltui zero,zero,4909
  14103. 4cb4c: 0004cb70 cmpltui zero,zero,4909
  14104. 4cb50: 0004d0dc xori zero,zero,4931
  14105. 4cb54: 2404b03a or r2,r4,r16
  14106. 4cb58: 10006c1e bne r2,zero,4cd0c <__divdf3+0x2ec>
  14107. 4cb5c: 02400204 movi r9,8
  14108. 4cb60: 0021883a mov r16,zero
  14109. 4cb64: 002b883a mov r21,zero
  14110. 4cb68: 01400084 movi r5,2
  14111. 4cb6c: 003fca06 br 4ca98 <__alt_data_end+0xfffdaa98>
  14112. 4cb70: 8023883a mov r17,r16
  14113. 4cb74: a829883a mov r20,r21
  14114. 4cb78: 4039883a mov fp,r8
  14115. 4cb7c: 280f883a mov r7,r5
  14116. 4cb80: 00800084 movi r2,2
  14117. 4cb84: 3881601e bne r7,r2,4d108 <__divdf3+0x6e8>
  14118. 4cb88: e027883a mov r19,fp
  14119. 4cb8c: 9900004c andi r4,r19,1
  14120. 4cb90: 0081ffc4 movi r2,2047
  14121. 4cb94: 0021883a mov r16,zero
  14122. 4cb98: 002b883a mov r21,zero
  14123. 4cb9c: 1004953a slli r2,r2,20
  14124. 4cba0: 20c03fcc andi r3,r4,255
  14125. 4cba4: 01400434 movhi r5,16
  14126. 4cba8: 297fffc4 addi r5,r5,-1
  14127. 4cbac: 180697fa slli r3,r3,31
  14128. 4cbb0: 8160703a and r16,r16,r5
  14129. 4cbb4: 80a0b03a or r16,r16,r2
  14130. 4cbb8: 80c6b03a or r3,r16,r3
  14131. 4cbbc: a805883a mov r2,r21
  14132. 4cbc0: dfc00f17 ldw ra,60(sp)
  14133. 4cbc4: df000e17 ldw fp,56(sp)
  14134. 4cbc8: ddc00d17 ldw r23,52(sp)
  14135. 4cbcc: dd800c17 ldw r22,48(sp)
  14136. 4cbd0: dd400b17 ldw r21,44(sp)
  14137. 4cbd4: dd000a17 ldw r20,40(sp)
  14138. 4cbd8: dcc00917 ldw r19,36(sp)
  14139. 4cbdc: dc800817 ldw r18,32(sp)
  14140. 4cbe0: dc400717 ldw r17,28(sp)
  14141. 4cbe4: dc000617 ldw r16,24(sp)
  14142. 4cbe8: dec01004 addi sp,sp,64
  14143. 4cbec: f800283a ret
  14144. 4cbf0: 2404b03a or r2,r4,r16
  14145. 4cbf4: 2023883a mov r17,r4
  14146. 4cbf8: 10003f26 beq r2,zero,4ccf8 <__divdf3+0x2d8>
  14147. 4cbfc: 80015e26 beq r16,zero,4d178 <__divdf3+0x758>
  14148. 4cc00: 8009883a mov r4,r16
  14149. 4cc04: d9800215 stw r6,8(sp)
  14150. 4cc08: d9c00515 stw r7,20(sp)
  14151. 4cc0c: da000415 stw r8,16(sp)
  14152. 4cc10: 0041efc0 call 41efc <__clzsi2>
  14153. 4cc14: d9800217 ldw r6,8(sp)
  14154. 4cc18: d9c00517 ldw r7,20(sp)
  14155. 4cc1c: da000417 ldw r8,16(sp)
  14156. 4cc20: 113ffd44 addi r4,r2,-11
  14157. 4cc24: 00c00704 movi r3,28
  14158. 4cc28: 19014f16 blt r3,r4,4d168 <__divdf3+0x748>
  14159. 4cc2c: 00c00744 movi r3,29
  14160. 4cc30: 157ffe04 addi r21,r2,-8
  14161. 4cc34: 1907c83a sub r3,r3,r4
  14162. 4cc38: 8560983a sll r16,r16,r21
  14163. 4cc3c: 88c6d83a srl r3,r17,r3
  14164. 4cc40: 8d6a983a sll r21,r17,r21
  14165. 4cc44: 1c20b03a or r16,r3,r16
  14166. 4cc48: 1080fcc4 addi r2,r2,1011
  14167. 4cc4c: 00a5c83a sub r18,zero,r2
  14168. 4cc50: 0013883a mov r9,zero
  14169. 4cc54: 000b883a mov r5,zero
  14170. 4cc58: 003f8f06 br 4ca98 <__alt_data_end+0xfffdaa98>
  14171. 4cc5c: 3444b03a or r2,r6,r17
  14172. 4cc60: 1000231e bne r2,zero,4ccf0 <__divdf3+0x2d0>
  14173. 4cc64: 0023883a mov r17,zero
  14174. 4cc68: 0029883a mov r20,zero
  14175. 4cc6c: 01c00084 movi r7,2
  14176. 4cc70: 003f9b06 br 4cae0 <__alt_data_end+0xfffdaae0>
  14177. 4cc74: 3444b03a or r2,r6,r17
  14178. 4cc78: 10001926 beq r2,zero,4cce0 <__divdf3+0x2c0>
  14179. 4cc7c: 88014b26 beq r17,zero,4d1ac <__divdf3+0x78c>
  14180. 4cc80: 8809883a mov r4,r17
  14181. 4cc84: d9400115 stw r5,4(sp)
  14182. 4cc88: d9800215 stw r6,8(sp)
  14183. 4cc8c: da000415 stw r8,16(sp)
  14184. 4cc90: da400315 stw r9,12(sp)
  14185. 4cc94: 0041efc0 call 41efc <__clzsi2>
  14186. 4cc98: d9400117 ldw r5,4(sp)
  14187. 4cc9c: d9800217 ldw r6,8(sp)
  14188. 4cca0: da000417 ldw r8,16(sp)
  14189. 4cca4: da400317 ldw r9,12(sp)
  14190. 4cca8: 113ffd44 addi r4,r2,-11
  14191. 4ccac: 00c00704 movi r3,28
  14192. 4ccb0: 19013a16 blt r3,r4,4d19c <__divdf3+0x77c>
  14193. 4ccb4: 00c00744 movi r3,29
  14194. 4ccb8: 153ffe04 addi r20,r2,-8
  14195. 4ccbc: 1907c83a sub r3,r3,r4
  14196. 4ccc0: 8d22983a sll r17,r17,r20
  14197. 4ccc4: 30c6d83a srl r3,r6,r3
  14198. 4ccc8: 3528983a sll r20,r6,r20
  14199. 4cccc: 1c62b03a or r17,r3,r17
  14200. 4ccd0: 1080fcc4 addi r2,r2,1011
  14201. 4ccd4: 0087c83a sub r3,zero,r2
  14202. 4ccd8: 000f883a mov r7,zero
  14203. 4ccdc: 003f8006 br 4cae0 <__alt_data_end+0xfffdaae0>
  14204. 4cce0: 0023883a mov r17,zero
  14205. 4cce4: 0029883a mov r20,zero
  14206. 4cce8: 01c00044 movi r7,1
  14207. 4ccec: 003f7c06 br 4cae0 <__alt_data_end+0xfffdaae0>
  14208. 4ccf0: 01c000c4 movi r7,3
  14209. 4ccf4: 003f7a06 br 4cae0 <__alt_data_end+0xfffdaae0>
  14210. 4ccf8: 02400104 movi r9,4
  14211. 4ccfc: 0021883a mov r16,zero
  14212. 4cd00: 002b883a mov r21,zero
  14213. 4cd04: 01400044 movi r5,1
  14214. 4cd08: 003f6306 br 4ca98 <__alt_data_end+0xfffdaa98>
  14215. 4cd0c: 02400304 movi r9,12
  14216. 4cd10: 014000c4 movi r5,3
  14217. 4cd14: 003f6006 br 4ca98 <__alt_data_end+0xfffdaa98>
  14218. 4cd18: 04000434 movhi r16,16
  14219. 4cd1c: 0009883a mov r4,zero
  14220. 4cd20: 843fffc4 addi r16,r16,-1
  14221. 4cd24: 057fffc4 movi r21,-1
  14222. 4cd28: 0081ffc4 movi r2,2047
  14223. 4cd2c: 003f9b06 br 4cb9c <__alt_data_end+0xfffdab9c>
  14224. 4cd30: 00c00044 movi r3,1
  14225. 4cd34: 1887c83a sub r3,r3,r2
  14226. 4cd38: 01000e04 movi r4,56
  14227. 4cd3c: 20c1530e bge r4,r3,4d28c <__divdf3+0x86c>
  14228. 4cd40: 9900004c andi r4,r19,1
  14229. 4cd44: 0005883a mov r2,zero
  14230. 4cd48: 0021883a mov r16,zero
  14231. 4cd4c: 002b883a mov r21,zero
  14232. 4cd50: 003f9206 br 4cb9c <__alt_data_end+0xfffdab9c>
  14233. 4cd54: 8c012e36 bltu r17,r16,4d210 <__divdf3+0x7f0>
  14234. 4cd58: 84412c26 beq r16,r17,4d20c <__divdf3+0x7ec>
  14235. 4cd5c: a82f883a mov r23,r21
  14236. 4cd60: 18ffffc4 addi r3,r3,-1
  14237. 4cd64: 002b883a mov r21,zero
  14238. 4cd68: a004d63a srli r2,r20,24
  14239. 4cd6c: 8822923a slli r17,r17,8
  14240. 4cd70: a028923a slli r20,r20,8
  14241. 4cd74: 8009883a mov r4,r16
  14242. 4cd78: 88acb03a or r22,r17,r2
  14243. 4cd7c: dd000015 stw r20,0(sp)
  14244. 4cd80: b028d43a srli r20,r22,16
  14245. 4cd84: d8c00215 stw r3,8(sp)
  14246. 4cd88: b4bfffcc andi r18,r22,65535
  14247. 4cd8c: a00b883a mov r5,r20
  14248. 4cd90: 004c93c0 call 4c93c <__udivsi3>
  14249. 4cd94: 100b883a mov r5,r2
  14250. 4cd98: 9009883a mov r4,r18
  14251. 4cd9c: 1023883a mov r17,r2
  14252. 4cda0: 004c9f80 call 4c9f8 <__mulsi3>
  14253. 4cda4: 8009883a mov r4,r16
  14254. 4cda8: a00b883a mov r5,r20
  14255. 4cdac: 1039883a mov fp,r2
  14256. 4cdb0: 004c9a00 call 4c9a0 <__umodsi3>
  14257. 4cdb4: 1004943a slli r2,r2,16
  14258. 4cdb8: b808d43a srli r4,r23,16
  14259. 4cdbc: d8c00217 ldw r3,8(sp)
  14260. 4cdc0: 2084b03a or r2,r4,r2
  14261. 4cdc4: 1700062e bgeu r2,fp,4cde0 <__divdf3+0x3c0>
  14262. 4cdc8: 1585883a add r2,r2,r22
  14263. 4cdcc: 893fffc4 addi r4,r17,-1
  14264. 4cdd0: 15811d36 bltu r2,r22,4d248 <__divdf3+0x828>
  14265. 4cdd4: 17011c2e bgeu r2,fp,4d248 <__divdf3+0x828>
  14266. 4cdd8: 8c7fff84 addi r17,r17,-2
  14267. 4cddc: 1585883a add r2,r2,r22
  14268. 4cde0: 1739c83a sub fp,r2,fp
  14269. 4cde4: a00b883a mov r5,r20
  14270. 4cde8: e009883a mov r4,fp
  14271. 4cdec: d8c00215 stw r3,8(sp)
  14272. 4cdf0: 004c93c0 call 4c93c <__udivsi3>
  14273. 4cdf4: 100b883a mov r5,r2
  14274. 4cdf8: 9009883a mov r4,r18
  14275. 4cdfc: 1021883a mov r16,r2
  14276. 4ce00: 004c9f80 call 4c9f8 <__mulsi3>
  14277. 4ce04: a00b883a mov r5,r20
  14278. 4ce08: e009883a mov r4,fp
  14279. 4ce0c: d8800415 stw r2,16(sp)
  14280. 4ce10: 004c9a00 call 4c9a0 <__umodsi3>
  14281. 4ce14: 1004943a slli r2,r2,16
  14282. 4ce18: da000417 ldw r8,16(sp)
  14283. 4ce1c: bdffffcc andi r23,r23,65535
  14284. 4ce20: b884b03a or r2,r23,r2
  14285. 4ce24: d8c00217 ldw r3,8(sp)
  14286. 4ce28: 1200062e bgeu r2,r8,4ce44 <__divdf3+0x424>
  14287. 4ce2c: 1585883a add r2,r2,r22
  14288. 4ce30: 813fffc4 addi r4,r16,-1
  14289. 4ce34: 15810236 bltu r2,r22,4d240 <__divdf3+0x820>
  14290. 4ce38: 1201012e bgeu r2,r8,4d240 <__divdf3+0x820>
  14291. 4ce3c: 843fff84 addi r16,r16,-2
  14292. 4ce40: 1585883a add r2,r2,r22
  14293. 4ce44: 8822943a slli r17,r17,16
  14294. 4ce48: d9800017 ldw r6,0(sp)
  14295. 4ce4c: 1211c83a sub r8,r2,r8
  14296. 4ce50: 8c22b03a or r17,r17,r16
  14297. 4ce54: 373fffcc andi fp,r6,65535
  14298. 4ce58: 8abfffcc andi r10,r17,65535
  14299. 4ce5c: 8820d43a srli r16,r17,16
  14300. 4ce60: 5009883a mov r4,r10
  14301. 4ce64: e00b883a mov r5,fp
  14302. 4ce68: 302ed43a srli r23,r6,16
  14303. 4ce6c: d8c00215 stw r3,8(sp)
  14304. 4ce70: da000415 stw r8,16(sp)
  14305. 4ce74: da800115 stw r10,4(sp)
  14306. 4ce78: 004c9f80 call 4c9f8 <__mulsi3>
  14307. 4ce7c: 800b883a mov r5,r16
  14308. 4ce80: e009883a mov r4,fp
  14309. 4ce84: d8800515 stw r2,20(sp)
  14310. 4ce88: 004c9f80 call 4c9f8 <__mulsi3>
  14311. 4ce8c: 8009883a mov r4,r16
  14312. 4ce90: b80b883a mov r5,r23
  14313. 4ce94: d8800315 stw r2,12(sp)
  14314. 4ce98: 004c9f80 call 4c9f8 <__mulsi3>
  14315. 4ce9c: da800117 ldw r10,4(sp)
  14316. 4cea0: b80b883a mov r5,r23
  14317. 4cea4: 1021883a mov r16,r2
  14318. 4cea8: 5009883a mov r4,r10
  14319. 4ceac: 004c9f80 call 4c9f8 <__mulsi3>
  14320. 4ceb0: d9c00517 ldw r7,20(sp)
  14321. 4ceb4: da400317 ldw r9,12(sp)
  14322. 4ceb8: d8c00217 ldw r3,8(sp)
  14323. 4cebc: 3808d43a srli r4,r7,16
  14324. 4cec0: 1245883a add r2,r2,r9
  14325. 4cec4: da000417 ldw r8,16(sp)
  14326. 4cec8: 2085883a add r2,r4,r2
  14327. 4cecc: 1240022e bgeu r2,r9,4ced8 <__divdf3+0x4b8>
  14328. 4ced0: 01000074 movhi r4,1
  14329. 4ced4: 8121883a add r16,r16,r4
  14330. 4ced8: 1008d43a srli r4,r2,16
  14331. 4cedc: 1004943a slli r2,r2,16
  14332. 4cee0: 39ffffcc andi r7,r7,65535
  14333. 4cee4: 2409883a add r4,r4,r16
  14334. 4cee8: 11c5883a add r2,r2,r7
  14335. 4ceec: 4100bb36 bltu r8,r4,4d1dc <__divdf3+0x7bc>
  14336. 4cef0: 4100d726 beq r8,r4,4d250 <__divdf3+0x830>
  14337. 4cef4: 4109c83a sub r4,r8,r4
  14338. 4cef8: a8a1c83a sub r16,r21,r2
  14339. 4cefc: ac2b803a cmpltu r21,r21,r16
  14340. 4cf00: 256bc83a sub r21,r4,r21
  14341. 4cf04: b540d926 beq r22,r21,4d26c <__divdf3+0x84c>
  14342. 4cf08: a00b883a mov r5,r20
  14343. 4cf0c: a809883a mov r4,r21
  14344. 4cf10: d8c00215 stw r3,8(sp)
  14345. 4cf14: 004c93c0 call 4c93c <__udivsi3>
  14346. 4cf18: 100b883a mov r5,r2
  14347. 4cf1c: 9009883a mov r4,r18
  14348. 4cf20: d8800515 stw r2,20(sp)
  14349. 4cf24: 004c9f80 call 4c9f8 <__mulsi3>
  14350. 4cf28: a809883a mov r4,r21
  14351. 4cf2c: a00b883a mov r5,r20
  14352. 4cf30: d8800415 stw r2,16(sp)
  14353. 4cf34: 004c9a00 call 4c9a0 <__umodsi3>
  14354. 4cf38: 1004943a slli r2,r2,16
  14355. 4cf3c: 8008d43a srli r4,r16,16
  14356. 4cf40: da000417 ldw r8,16(sp)
  14357. 4cf44: d8c00217 ldw r3,8(sp)
  14358. 4cf48: 2084b03a or r2,r4,r2
  14359. 4cf4c: d9c00517 ldw r7,20(sp)
  14360. 4cf50: 1200062e bgeu r2,r8,4cf6c <__divdf3+0x54c>
  14361. 4cf54: 1585883a add r2,r2,r22
  14362. 4cf58: 393fffc4 addi r4,r7,-1
  14363. 4cf5c: 1580c536 bltu r2,r22,4d274 <__divdf3+0x854>
  14364. 4cf60: 1200c42e bgeu r2,r8,4d274 <__divdf3+0x854>
  14365. 4cf64: 39ffff84 addi r7,r7,-2
  14366. 4cf68: 1585883a add r2,r2,r22
  14367. 4cf6c: 122bc83a sub r21,r2,r8
  14368. 4cf70: a00b883a mov r5,r20
  14369. 4cf74: a809883a mov r4,r21
  14370. 4cf78: d8c00215 stw r3,8(sp)
  14371. 4cf7c: d9c00515 stw r7,20(sp)
  14372. 4cf80: 004c93c0 call 4c93c <__udivsi3>
  14373. 4cf84: 9009883a mov r4,r18
  14374. 4cf88: 100b883a mov r5,r2
  14375. 4cf8c: d8800415 stw r2,16(sp)
  14376. 4cf90: 004c9f80 call 4c9f8 <__mulsi3>
  14377. 4cf94: a809883a mov r4,r21
  14378. 4cf98: a00b883a mov r5,r20
  14379. 4cf9c: 1025883a mov r18,r2
  14380. 4cfa0: 004c9a00 call 4c9a0 <__umodsi3>
  14381. 4cfa4: 1004943a slli r2,r2,16
  14382. 4cfa8: 813fffcc andi r4,r16,65535
  14383. 4cfac: d8c00217 ldw r3,8(sp)
  14384. 4cfb0: 20a0b03a or r16,r4,r2
  14385. 4cfb4: d9c00517 ldw r7,20(sp)
  14386. 4cfb8: da000417 ldw r8,16(sp)
  14387. 4cfbc: 8480062e bgeu r16,r18,4cfd8 <__divdf3+0x5b8>
  14388. 4cfc0: 85a1883a add r16,r16,r22
  14389. 4cfc4: 40bfffc4 addi r2,r8,-1
  14390. 4cfc8: 8580ac36 bltu r16,r22,4d27c <__divdf3+0x85c>
  14391. 4cfcc: 8480ab2e bgeu r16,r18,4d27c <__divdf3+0x85c>
  14392. 4cfd0: 423fff84 addi r8,r8,-2
  14393. 4cfd4: 85a1883a add r16,r16,r22
  14394. 4cfd8: 3804943a slli r2,r7,16
  14395. 4cfdc: 84a1c83a sub r16,r16,r18
  14396. 4cfe0: e009883a mov r4,fp
  14397. 4cfe4: 1228b03a or r20,r2,r8
  14398. 4cfe8: a1ffffcc andi r7,r20,65535
  14399. 4cfec: a024d43a srli r18,r20,16
  14400. 4cff0: 380b883a mov r5,r7
  14401. 4cff4: d8c00215 stw r3,8(sp)
  14402. 4cff8: d9c00515 stw r7,20(sp)
  14403. 4cffc: 004c9f80 call 4c9f8 <__mulsi3>
  14404. 4d000: 900b883a mov r5,r18
  14405. 4d004: e009883a mov r4,fp
  14406. 4d008: 102b883a mov r21,r2
  14407. 4d00c: 004c9f80 call 4c9f8 <__mulsi3>
  14408. 4d010: 900b883a mov r5,r18
  14409. 4d014: b809883a mov r4,r23
  14410. 4d018: 1039883a mov fp,r2
  14411. 4d01c: 004c9f80 call 4c9f8 <__mulsi3>
  14412. 4d020: d9c00517 ldw r7,20(sp)
  14413. 4d024: b80b883a mov r5,r23
  14414. 4d028: 1025883a mov r18,r2
  14415. 4d02c: 3809883a mov r4,r7
  14416. 4d030: 004c9f80 call 4c9f8 <__mulsi3>
  14417. 4d034: a808d43a srli r4,r21,16
  14418. 4d038: 1705883a add r2,r2,fp
  14419. 4d03c: d8c00217 ldw r3,8(sp)
  14420. 4d040: 2085883a add r2,r4,r2
  14421. 4d044: 1700022e bgeu r2,fp,4d050 <__divdf3+0x630>
  14422. 4d048: 01000074 movhi r4,1
  14423. 4d04c: 9125883a add r18,r18,r4
  14424. 4d050: 1008d43a srli r4,r2,16
  14425. 4d054: 1004943a slli r2,r2,16
  14426. 4d058: ad7fffcc andi r21,r21,65535
  14427. 4d05c: 2489883a add r4,r4,r18
  14428. 4d060: 1545883a add r2,r2,r21
  14429. 4d064: 81003836 bltu r16,r4,4d148 <__divdf3+0x728>
  14430. 4d068: 81003626 beq r16,r4,4d144 <__divdf3+0x724>
  14431. 4d06c: a5000054 ori r20,r20,1
  14432. 4d070: 1880ffc4 addi r2,r3,1023
  14433. 4d074: 00bf2e0e bge zero,r2,4cd30 <__alt_data_end+0xfffdad30>
  14434. 4d078: a10001cc andi r4,r20,7
  14435. 4d07c: 20000726 beq r4,zero,4d09c <__divdf3+0x67c>
  14436. 4d080: a10003cc andi r4,r20,15
  14437. 4d084: 01400104 movi r5,4
  14438. 4d088: 21400426 beq r4,r5,4d09c <__divdf3+0x67c>
  14439. 4d08c: a149883a add r4,r20,r5
  14440. 4d090: 2529803a cmpltu r20,r4,r20
  14441. 4d094: 8d23883a add r17,r17,r20
  14442. 4d098: 2029883a mov r20,r4
  14443. 4d09c: 8900402c andhi r4,r17,256
  14444. 4d0a0: 20000426 beq r4,zero,4d0b4 <__divdf3+0x694>
  14445. 4d0a4: 18810004 addi r2,r3,1024
  14446. 4d0a8: 00ffc034 movhi r3,65280
  14447. 4d0ac: 18ffffc4 addi r3,r3,-1
  14448. 4d0b0: 88e2703a and r17,r17,r3
  14449. 4d0b4: 00c1ff84 movi r3,2046
  14450. 4d0b8: 18beb416 blt r3,r2,4cb8c <__alt_data_end+0xfffdab8c>
  14451. 4d0bc: a028d0fa srli r20,r20,3
  14452. 4d0c0: 882a977a slli r21,r17,29
  14453. 4d0c4: 8820927a slli r16,r17,9
  14454. 4d0c8: 1081ffcc andi r2,r2,2047
  14455. 4d0cc: ad2ab03a or r21,r21,r20
  14456. 4d0d0: 8020d33a srli r16,r16,12
  14457. 4d0d4: 9900004c andi r4,r19,1
  14458. 4d0d8: 003eb006 br 4cb9c <__alt_data_end+0xfffdab9c>
  14459. 4d0dc: 8080022c andhi r2,r16,8
  14460. 4d0e0: 10001226 beq r2,zero,4d12c <__divdf3+0x70c>
  14461. 4d0e4: 8880022c andhi r2,r17,8
  14462. 4d0e8: 1000101e bne r2,zero,4d12c <__divdf3+0x70c>
  14463. 4d0ec: 00800434 movhi r2,16
  14464. 4d0f0: 8c000234 orhi r16,r17,8
  14465. 4d0f4: 10bfffc4 addi r2,r2,-1
  14466. 4d0f8: b809883a mov r4,r23
  14467. 4d0fc: 80a0703a and r16,r16,r2
  14468. 4d100: a02b883a mov r21,r20
  14469. 4d104: 003f0806 br 4cd28 <__alt_data_end+0xfffdad28>
  14470. 4d108: 008000c4 movi r2,3
  14471. 4d10c: 3880b126 beq r7,r2,4d3d4 <__divdf3+0x9b4>
  14472. 4d110: 00800044 movi r2,1
  14473. 4d114: 38805b1e bne r7,r2,4d284 <__divdf3+0x864>
  14474. 4d118: e009883a mov r4,fp
  14475. 4d11c: 0005883a mov r2,zero
  14476. 4d120: 0021883a mov r16,zero
  14477. 4d124: 002b883a mov r21,zero
  14478. 4d128: 003e9c06 br 4cb9c <__alt_data_end+0xfffdab9c>
  14479. 4d12c: 00800434 movhi r2,16
  14480. 4d130: 84000234 orhi r16,r16,8
  14481. 4d134: 10bfffc4 addi r2,r2,-1
  14482. 4d138: b009883a mov r4,r22
  14483. 4d13c: 80a0703a and r16,r16,r2
  14484. 4d140: 003ef906 br 4cd28 <__alt_data_end+0xfffdad28>
  14485. 4d144: 103fca26 beq r2,zero,4d070 <__alt_data_end+0xfffdb070>
  14486. 4d148: b421883a add r16,r22,r16
  14487. 4d14c: a17fffc4 addi r5,r20,-1
  14488. 4d150: 8580422e bgeu r16,r22,4d25c <__divdf3+0x83c>
  14489. 4d154: 2829883a mov r20,r5
  14490. 4d158: 813fc41e bne r16,r4,4d06c <__alt_data_end+0xfffdb06c>
  14491. 4d15c: d9800017 ldw r6,0(sp)
  14492. 4d160: 30bfc21e bne r6,r2,4d06c <__alt_data_end+0xfffdb06c>
  14493. 4d164: 003fc206 br 4d070 <__alt_data_end+0xfffdb070>
  14494. 4d168: 143ff604 addi r16,r2,-40
  14495. 4d16c: 8c20983a sll r16,r17,r16
  14496. 4d170: 002b883a mov r21,zero
  14497. 4d174: 003eb406 br 4cc48 <__alt_data_end+0xfffdac48>
  14498. 4d178: d9800215 stw r6,8(sp)
  14499. 4d17c: d9c00515 stw r7,20(sp)
  14500. 4d180: da000415 stw r8,16(sp)
  14501. 4d184: 0041efc0 call 41efc <__clzsi2>
  14502. 4d188: 10800804 addi r2,r2,32
  14503. 4d18c: da000417 ldw r8,16(sp)
  14504. 4d190: d9c00517 ldw r7,20(sp)
  14505. 4d194: d9800217 ldw r6,8(sp)
  14506. 4d198: 003ea106 br 4cc20 <__alt_data_end+0xfffdac20>
  14507. 4d19c: 147ff604 addi r17,r2,-40
  14508. 4d1a0: 3462983a sll r17,r6,r17
  14509. 4d1a4: 0029883a mov r20,zero
  14510. 4d1a8: 003ec906 br 4ccd0 <__alt_data_end+0xfffdacd0>
  14511. 4d1ac: 3009883a mov r4,r6
  14512. 4d1b0: d9400115 stw r5,4(sp)
  14513. 4d1b4: d9800215 stw r6,8(sp)
  14514. 4d1b8: da000415 stw r8,16(sp)
  14515. 4d1bc: da400315 stw r9,12(sp)
  14516. 4d1c0: 0041efc0 call 41efc <__clzsi2>
  14517. 4d1c4: 10800804 addi r2,r2,32
  14518. 4d1c8: da400317 ldw r9,12(sp)
  14519. 4d1cc: da000417 ldw r8,16(sp)
  14520. 4d1d0: d9800217 ldw r6,8(sp)
  14521. 4d1d4: d9400117 ldw r5,4(sp)
  14522. 4d1d8: 003eb306 br 4cca8 <__alt_data_end+0xfffdaca8>
  14523. 4d1dc: d9800017 ldw r6,0(sp)
  14524. 4d1e0: a9ab883a add r21,r21,r6
  14525. 4d1e4: a98b803a cmpltu r5,r21,r6
  14526. 4d1e8: 2d8b883a add r5,r5,r22
  14527. 4d1ec: 2a11883a add r8,r5,r8
  14528. 4d1f0: 897fffc4 addi r5,r17,-1
  14529. 4d1f4: b2000c2e bgeu r22,r8,4d228 <__divdf3+0x808>
  14530. 4d1f8: 41003f36 bltu r8,r4,4d2f8 <__divdf3+0x8d8>
  14531. 4d1fc: 22006c26 beq r4,r8,4d3b0 <__divdf3+0x990>
  14532. 4d200: 4109c83a sub r4,r8,r4
  14533. 4d204: 2823883a mov r17,r5
  14534. 4d208: 003f3b06 br 4cef8 <__alt_data_end+0xfffdaef8>
  14535. 4d20c: ad3ed336 bltu r21,r20,4cd5c <__alt_data_end+0xfffdad5c>
  14536. 4d210: a804d07a srli r2,r21,1
  14537. 4d214: 802e97fa slli r23,r16,31
  14538. 4d218: a82a97fa slli r21,r21,31
  14539. 4d21c: 8020d07a srli r16,r16,1
  14540. 4d220: b8aeb03a or r23,r23,r2
  14541. 4d224: 003ed006 br 4cd68 <__alt_data_end+0xfffdad68>
  14542. 4d228: b23ff51e bne r22,r8,4d200 <__alt_data_end+0xfffdb200>
  14543. 4d22c: d9800017 ldw r6,0(sp)
  14544. 4d230: a9bff12e bgeu r21,r6,4d1f8 <__alt_data_end+0xfffdb1f8>
  14545. 4d234: b109c83a sub r4,r22,r4
  14546. 4d238: 2823883a mov r17,r5
  14547. 4d23c: 003f2e06 br 4cef8 <__alt_data_end+0xfffdaef8>
  14548. 4d240: 2021883a mov r16,r4
  14549. 4d244: 003eff06 br 4ce44 <__alt_data_end+0xfffdae44>
  14550. 4d248: 2023883a mov r17,r4
  14551. 4d24c: 003ee406 br 4cde0 <__alt_data_end+0xfffdade0>
  14552. 4d250: a8bfe236 bltu r21,r2,4d1dc <__alt_data_end+0xfffdb1dc>
  14553. 4d254: 0009883a mov r4,zero
  14554. 4d258: 003f2706 br 4cef8 <__alt_data_end+0xfffdaef8>
  14555. 4d25c: 81002d36 bltu r16,r4,4d314 <__divdf3+0x8f4>
  14556. 4d260: 24005626 beq r4,r16,4d3bc <__divdf3+0x99c>
  14557. 4d264: 2829883a mov r20,r5
  14558. 4d268: 003f8006 br 4d06c <__alt_data_end+0xfffdb06c>
  14559. 4d26c: 053fffc4 movi r20,-1
  14560. 4d270: 003f7f06 br 4d070 <__alt_data_end+0xfffdb070>
  14561. 4d274: 200f883a mov r7,r4
  14562. 4d278: 003f3c06 br 4cf6c <__alt_data_end+0xfffdaf6c>
  14563. 4d27c: 1011883a mov r8,r2
  14564. 4d280: 003f5506 br 4cfd8 <__alt_data_end+0xfffdafd8>
  14565. 4d284: e027883a mov r19,fp
  14566. 4d288: 003f7906 br 4d070 <__alt_data_end+0xfffdb070>
  14567. 4d28c: 010007c4 movi r4,31
  14568. 4d290: 20c02816 blt r4,r3,4d334 <__divdf3+0x914>
  14569. 4d294: 00800804 movi r2,32
  14570. 4d298: 10c5c83a sub r2,r2,r3
  14571. 4d29c: 888a983a sll r5,r17,r2
  14572. 4d2a0: a0c8d83a srl r4,r20,r3
  14573. 4d2a4: a084983a sll r2,r20,r2
  14574. 4d2a8: 88e2d83a srl r17,r17,r3
  14575. 4d2ac: 2906b03a or r3,r5,r4
  14576. 4d2b0: 1004c03a cmpne r2,r2,zero
  14577. 4d2b4: 1886b03a or r3,r3,r2
  14578. 4d2b8: 188001cc andi r2,r3,7
  14579. 4d2bc: 10000726 beq r2,zero,4d2dc <__divdf3+0x8bc>
  14580. 4d2c0: 188003cc andi r2,r3,15
  14581. 4d2c4: 01000104 movi r4,4
  14582. 4d2c8: 11000426 beq r2,r4,4d2dc <__divdf3+0x8bc>
  14583. 4d2cc: 1805883a mov r2,r3
  14584. 4d2d0: 10c00104 addi r3,r2,4
  14585. 4d2d4: 1885803a cmpltu r2,r3,r2
  14586. 4d2d8: 88a3883a add r17,r17,r2
  14587. 4d2dc: 8880202c andhi r2,r17,128
  14588. 4d2e0: 10002926 beq r2,zero,4d388 <__divdf3+0x968>
  14589. 4d2e4: 9900004c andi r4,r19,1
  14590. 4d2e8: 00800044 movi r2,1
  14591. 4d2ec: 0021883a mov r16,zero
  14592. 4d2f0: 002b883a mov r21,zero
  14593. 4d2f4: 003e2906 br 4cb9c <__alt_data_end+0xfffdab9c>
  14594. 4d2f8: d9800017 ldw r6,0(sp)
  14595. 4d2fc: 8c7fff84 addi r17,r17,-2
  14596. 4d300: a9ab883a add r21,r21,r6
  14597. 4d304: a98b803a cmpltu r5,r21,r6
  14598. 4d308: 2d8b883a add r5,r5,r22
  14599. 4d30c: 2a11883a add r8,r5,r8
  14600. 4d310: 003ef806 br 4cef4 <__alt_data_end+0xfffdaef4>
  14601. 4d314: d9800017 ldw r6,0(sp)
  14602. 4d318: 318f883a add r7,r6,r6
  14603. 4d31c: 398b803a cmpltu r5,r7,r6
  14604. 4d320: 2d8d883a add r6,r5,r22
  14605. 4d324: 81a1883a add r16,r16,r6
  14606. 4d328: a17fff84 addi r5,r20,-2
  14607. 4d32c: d9c00015 stw r7,0(sp)
  14608. 4d330: 003f8806 br 4d154 <__alt_data_end+0xfffdb154>
  14609. 4d334: 013ff844 movi r4,-31
  14610. 4d338: 2085c83a sub r2,r4,r2
  14611. 4d33c: 8888d83a srl r4,r17,r2
  14612. 4d340: 00800804 movi r2,32
  14613. 4d344: 18802126 beq r3,r2,4d3cc <__divdf3+0x9ac>
  14614. 4d348: 04001004 movi r16,64
  14615. 4d34c: 80c7c83a sub r3,r16,r3
  14616. 4d350: 88e0983a sll r16,r17,r3
  14617. 4d354: 8504b03a or r2,r16,r20
  14618. 4d358: 1004c03a cmpne r2,r2,zero
  14619. 4d35c: 2084b03a or r2,r4,r2
  14620. 4d360: 144001cc andi r17,r2,7
  14621. 4d364: 88000d1e bne r17,zero,4d39c <__divdf3+0x97c>
  14622. 4d368: 0021883a mov r16,zero
  14623. 4d36c: 102ad0fa srli r21,r2,3
  14624. 4d370: 9900004c andi r4,r19,1
  14625. 4d374: 0005883a mov r2,zero
  14626. 4d378: ac6ab03a or r21,r21,r17
  14627. 4d37c: 003e0706 br 4cb9c <__alt_data_end+0xfffdab9c>
  14628. 4d380: 1007883a mov r3,r2
  14629. 4d384: 0023883a mov r17,zero
  14630. 4d388: 8820927a slli r16,r17,9
  14631. 4d38c: 1805883a mov r2,r3
  14632. 4d390: 8822977a slli r17,r17,29
  14633. 4d394: 8020d33a srli r16,r16,12
  14634. 4d398: 003ff406 br 4d36c <__alt_data_end+0xfffdb36c>
  14635. 4d39c: 10c003cc andi r3,r2,15
  14636. 4d3a0: 01000104 movi r4,4
  14637. 4d3a4: 193ff626 beq r3,r4,4d380 <__alt_data_end+0xfffdb380>
  14638. 4d3a8: 0023883a mov r17,zero
  14639. 4d3ac: 003fc806 br 4d2d0 <__alt_data_end+0xfffdb2d0>
  14640. 4d3b0: a8bfd136 bltu r21,r2,4d2f8 <__alt_data_end+0xfffdb2f8>
  14641. 4d3b4: 2823883a mov r17,r5
  14642. 4d3b8: 003fa606 br 4d254 <__alt_data_end+0xfffdb254>
  14643. 4d3bc: d9800017 ldw r6,0(sp)
  14644. 4d3c0: 30bfd436 bltu r6,r2,4d314 <__alt_data_end+0xfffdb314>
  14645. 4d3c4: 2829883a mov r20,r5
  14646. 4d3c8: 003f6406 br 4d15c <__alt_data_end+0xfffdb15c>
  14647. 4d3cc: 0021883a mov r16,zero
  14648. 4d3d0: 003fe006 br 4d354 <__alt_data_end+0xfffdb354>
  14649. 4d3d4: 00800434 movhi r2,16
  14650. 4d3d8: 8c000234 orhi r16,r17,8
  14651. 4d3dc: 10bfffc4 addi r2,r2,-1
  14652. 4d3e0: e009883a mov r4,fp
  14653. 4d3e4: 80a0703a and r16,r16,r2
  14654. 4d3e8: a02b883a mov r21,r20
  14655. 4d3ec: 003e4e06 br 4cd28 <__alt_data_end+0xfffdad28>
  14656. 0004d3f0 <__eqdf2>:
  14657. 4d3f0: 2804d53a srli r2,r5,20
  14658. 4d3f4: 3806d53a srli r3,r7,20
  14659. 4d3f8: 02000434 movhi r8,16
  14660. 4d3fc: 423fffc4 addi r8,r8,-1
  14661. 4d400: 1081ffcc andi r2,r2,2047
  14662. 4d404: 0281ffc4 movi r10,2047
  14663. 4d408: 2a12703a and r9,r5,r8
  14664. 4d40c: 18c1ffcc andi r3,r3,2047
  14665. 4d410: 3a10703a and r8,r7,r8
  14666. 4d414: 280ad7fa srli r5,r5,31
  14667. 4d418: 380ed7fa srli r7,r7,31
  14668. 4d41c: 12801026 beq r2,r10,4d460 <__eqdf2+0x70>
  14669. 4d420: 0281ffc4 movi r10,2047
  14670. 4d424: 1a800a26 beq r3,r10,4d450 <__eqdf2+0x60>
  14671. 4d428: 10c00226 beq r2,r3,4d434 <__eqdf2+0x44>
  14672. 4d42c: 00800044 movi r2,1
  14673. 4d430: f800283a ret
  14674. 4d434: 4a3ffd1e bne r9,r8,4d42c <__alt_data_end+0xfffdb42c>
  14675. 4d438: 21bffc1e bne r4,r6,4d42c <__alt_data_end+0xfffdb42c>
  14676. 4d43c: 29c00c26 beq r5,r7,4d470 <__eqdf2+0x80>
  14677. 4d440: 103ffa1e bne r2,zero,4d42c <__alt_data_end+0xfffdb42c>
  14678. 4d444: 2244b03a or r2,r4,r9
  14679. 4d448: 1004c03a cmpne r2,r2,zero
  14680. 4d44c: f800283a ret
  14681. 4d450: 3214b03a or r10,r6,r8
  14682. 4d454: 503ff426 beq r10,zero,4d428 <__alt_data_end+0xfffdb428>
  14683. 4d458: 00800044 movi r2,1
  14684. 4d45c: f800283a ret
  14685. 4d460: 2254b03a or r10,r4,r9
  14686. 4d464: 503fee26 beq r10,zero,4d420 <__alt_data_end+0xfffdb420>
  14687. 4d468: 00800044 movi r2,1
  14688. 4d46c: f800283a ret
  14689. 4d470: 0005883a mov r2,zero
  14690. 4d474: f800283a ret
  14691. 0004d478 <__gedf2>:
  14692. 4d478: 2804d53a srli r2,r5,20
  14693. 4d47c: 3806d53a srli r3,r7,20
  14694. 4d480: 02000434 movhi r8,16
  14695. 4d484: 423fffc4 addi r8,r8,-1
  14696. 4d488: 1081ffcc andi r2,r2,2047
  14697. 4d48c: 0241ffc4 movi r9,2047
  14698. 4d490: 2a14703a and r10,r5,r8
  14699. 4d494: 18c1ffcc andi r3,r3,2047
  14700. 4d498: 3a10703a and r8,r7,r8
  14701. 4d49c: 280ad7fa srli r5,r5,31
  14702. 4d4a0: 380ed7fa srli r7,r7,31
  14703. 4d4a4: 12401d26 beq r2,r9,4d51c <__gedf2+0xa4>
  14704. 4d4a8: 0241ffc4 movi r9,2047
  14705. 4d4ac: 1a401226 beq r3,r9,4d4f8 <__gedf2+0x80>
  14706. 4d4b0: 1000081e bne r2,zero,4d4d4 <__gedf2+0x5c>
  14707. 4d4b4: 2296b03a or r11,r4,r10
  14708. 4d4b8: 5813003a cmpeq r9,r11,zero
  14709. 4d4bc: 1800091e bne r3,zero,4d4e4 <__gedf2+0x6c>
  14710. 4d4c0: 3218b03a or r12,r6,r8
  14711. 4d4c4: 6000071e bne r12,zero,4d4e4 <__gedf2+0x6c>
  14712. 4d4c8: 0005883a mov r2,zero
  14713. 4d4cc: 5800101e bne r11,zero,4d510 <__gedf2+0x98>
  14714. 4d4d0: f800283a ret
  14715. 4d4d4: 18000c1e bne r3,zero,4d508 <__gedf2+0x90>
  14716. 4d4d8: 3212b03a or r9,r6,r8
  14717. 4d4dc: 48000c26 beq r9,zero,4d510 <__gedf2+0x98>
  14718. 4d4e0: 0013883a mov r9,zero
  14719. 4d4e4: 39c03fcc andi r7,r7,255
  14720. 4d4e8: 48000826 beq r9,zero,4d50c <__gedf2+0x94>
  14721. 4d4ec: 38000926 beq r7,zero,4d514 <__gedf2+0x9c>
  14722. 4d4f0: 00800044 movi r2,1
  14723. 4d4f4: f800283a ret
  14724. 4d4f8: 3212b03a or r9,r6,r8
  14725. 4d4fc: 483fec26 beq r9,zero,4d4b0 <__alt_data_end+0xfffdb4b0>
  14726. 4d500: 00bfff84 movi r2,-2
  14727. 4d504: f800283a ret
  14728. 4d508: 39c03fcc andi r7,r7,255
  14729. 4d50c: 29c00626 beq r5,r7,4d528 <__gedf2+0xb0>
  14730. 4d510: 283ff726 beq r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0>
  14731. 4d514: 00bfffc4 movi r2,-1
  14732. 4d518: f800283a ret
  14733. 4d51c: 2292b03a or r9,r4,r10
  14734. 4d520: 483fe126 beq r9,zero,4d4a8 <__alt_data_end+0xfffdb4a8>
  14735. 4d524: 003ff606 br 4d500 <__alt_data_end+0xfffdb500>
  14736. 4d528: 18bff916 blt r3,r2,4d510 <__alt_data_end+0xfffdb510>
  14737. 4d52c: 10c00316 blt r2,r3,4d53c <__gedf2+0xc4>
  14738. 4d530: 42bff736 bltu r8,r10,4d510 <__alt_data_end+0xfffdb510>
  14739. 4d534: 52000326 beq r10,r8,4d544 <__gedf2+0xcc>
  14740. 4d538: 5200042e bgeu r10,r8,4d54c <__gedf2+0xd4>
  14741. 4d53c: 283fec1e bne r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0>
  14742. 4d540: 003ff406 br 4d514 <__alt_data_end+0xfffdb514>
  14743. 4d544: 313ff236 bltu r6,r4,4d510 <__alt_data_end+0xfffdb510>
  14744. 4d548: 21bffc36 bltu r4,r6,4d53c <__alt_data_end+0xfffdb53c>
  14745. 4d54c: 0005883a mov r2,zero
  14746. 4d550: f800283a ret
  14747. 0004d554 <__ledf2>:
  14748. 4d554: 2804d53a srli r2,r5,20
  14749. 4d558: 3810d53a srli r8,r7,20
  14750. 4d55c: 00c00434 movhi r3,16
  14751. 4d560: 18ffffc4 addi r3,r3,-1
  14752. 4d564: 1081ffcc andi r2,r2,2047
  14753. 4d568: 0241ffc4 movi r9,2047
  14754. 4d56c: 28d4703a and r10,r5,r3
  14755. 4d570: 4201ffcc andi r8,r8,2047
  14756. 4d574: 38c6703a and r3,r7,r3
  14757. 4d578: 280ad7fa srli r5,r5,31
  14758. 4d57c: 380ed7fa srli r7,r7,31
  14759. 4d580: 12401f26 beq r2,r9,4d600 <__ledf2+0xac>
  14760. 4d584: 0241ffc4 movi r9,2047
  14761. 4d588: 42401426 beq r8,r9,4d5dc <__ledf2+0x88>
  14762. 4d58c: 1000091e bne r2,zero,4d5b4 <__ledf2+0x60>
  14763. 4d590: 2296b03a or r11,r4,r10
  14764. 4d594: 5813003a cmpeq r9,r11,zero
  14765. 4d598: 29403fcc andi r5,r5,255
  14766. 4d59c: 40000a1e bne r8,zero,4d5c8 <__ledf2+0x74>
  14767. 4d5a0: 30d8b03a or r12,r6,r3
  14768. 4d5a4: 6000081e bne r12,zero,4d5c8 <__ledf2+0x74>
  14769. 4d5a8: 0005883a mov r2,zero
  14770. 4d5ac: 5800111e bne r11,zero,4d5f4 <__ledf2+0xa0>
  14771. 4d5b0: f800283a ret
  14772. 4d5b4: 29403fcc andi r5,r5,255
  14773. 4d5b8: 40000c1e bne r8,zero,4d5ec <__ledf2+0x98>
  14774. 4d5bc: 30d2b03a or r9,r6,r3
  14775. 4d5c0: 48000c26 beq r9,zero,4d5f4 <__ledf2+0xa0>
  14776. 4d5c4: 0013883a mov r9,zero
  14777. 4d5c8: 39c03fcc andi r7,r7,255
  14778. 4d5cc: 48000826 beq r9,zero,4d5f0 <__ledf2+0x9c>
  14779. 4d5d0: 38001126 beq r7,zero,4d618 <__ledf2+0xc4>
  14780. 4d5d4: 00800044 movi r2,1
  14781. 4d5d8: f800283a ret
  14782. 4d5dc: 30d2b03a or r9,r6,r3
  14783. 4d5e0: 483fea26 beq r9,zero,4d58c <__alt_data_end+0xfffdb58c>
  14784. 4d5e4: 00800084 movi r2,2
  14785. 4d5e8: f800283a ret
  14786. 4d5ec: 39c03fcc andi r7,r7,255
  14787. 4d5f0: 39400726 beq r7,r5,4d610 <__ledf2+0xbc>
  14788. 4d5f4: 2800081e bne r5,zero,4d618 <__ledf2+0xc4>
  14789. 4d5f8: 00800044 movi r2,1
  14790. 4d5fc: f800283a ret
  14791. 4d600: 2292b03a or r9,r4,r10
  14792. 4d604: 483fdf26 beq r9,zero,4d584 <__alt_data_end+0xfffdb584>
  14793. 4d608: 00800084 movi r2,2
  14794. 4d60c: f800283a ret
  14795. 4d610: 4080030e bge r8,r2,4d620 <__ledf2+0xcc>
  14796. 4d614: 383fef26 beq r7,zero,4d5d4 <__alt_data_end+0xfffdb5d4>
  14797. 4d618: 00bfffc4 movi r2,-1
  14798. 4d61c: f800283a ret
  14799. 4d620: 123feb16 blt r2,r8,4d5d0 <__alt_data_end+0xfffdb5d0>
  14800. 4d624: 1abff336 bltu r3,r10,4d5f4 <__alt_data_end+0xfffdb5f4>
  14801. 4d628: 50c00326 beq r10,r3,4d638 <__ledf2+0xe4>
  14802. 4d62c: 50c0042e bgeu r10,r3,4d640 <__ledf2+0xec>
  14803. 4d630: 283fe81e bne r5,zero,4d5d4 <__alt_data_end+0xfffdb5d4>
  14804. 4d634: 003ff806 br 4d618 <__alt_data_end+0xfffdb618>
  14805. 4d638: 313fee36 bltu r6,r4,4d5f4 <__alt_data_end+0xfffdb5f4>
  14806. 4d63c: 21bffc36 bltu r4,r6,4d630 <__alt_data_end+0xfffdb630>
  14807. 4d640: 0005883a mov r2,zero
  14808. 4d644: f800283a ret
  14809. 0004d648 <__muldf3>:
  14810. 4d648: deffee04 addi sp,sp,-72
  14811. 4d64c: dd000c15 stw r20,48(sp)
  14812. 4d650: 2828d53a srli r20,r5,20
  14813. 4d654: ddc00f15 stw r23,60(sp)
  14814. 4d658: 282ed7fa srli r23,r5,31
  14815. 4d65c: dc000815 stw r16,32(sp)
  14816. 4d660: 04000434 movhi r16,16
  14817. 4d664: dcc00b15 stw r19,44(sp)
  14818. 4d668: 843fffc4 addi r16,r16,-1
  14819. 4d66c: dfc01115 stw ra,68(sp)
  14820. 4d670: df001015 stw fp,64(sp)
  14821. 4d674: dd800e15 stw r22,56(sp)
  14822. 4d678: dd400d15 stw r21,52(sp)
  14823. 4d67c: dc800a15 stw r18,40(sp)
  14824. 4d680: dc400915 stw r17,36(sp)
  14825. 4d684: a501ffcc andi r20,r20,2047
  14826. 4d688: 2c20703a and r16,r5,r16
  14827. 4d68c: b827883a mov r19,r23
  14828. 4d690: ba403fcc andi r9,r23,255
  14829. 4d694: a0006026 beq r20,zero,4d818 <__muldf3+0x1d0>
  14830. 4d698: 0081ffc4 movi r2,2047
  14831. 4d69c: 202d883a mov r22,r4
  14832. 4d6a0: a0803626 beq r20,r2,4d77c <__muldf3+0x134>
  14833. 4d6a4: 84000434 orhi r16,r16,16
  14834. 4d6a8: 200ad77a srli r5,r4,29
  14835. 4d6ac: 800490fa slli r2,r16,3
  14836. 4d6b0: 202c90fa slli r22,r4,3
  14837. 4d6b4: a53f0044 addi r20,r20,-1023
  14838. 4d6b8: 28a0b03a or r16,r5,r2
  14839. 4d6bc: 002b883a mov r21,zero
  14840. 4d6c0: 000b883a mov r5,zero
  14841. 4d6c4: 3804d53a srli r2,r7,20
  14842. 4d6c8: 3838d7fa srli fp,r7,31
  14843. 4d6cc: 04400434 movhi r17,16
  14844. 4d6d0: 8c7fffc4 addi r17,r17,-1
  14845. 4d6d4: 1081ffcc andi r2,r2,2047
  14846. 4d6d8: 3025883a mov r18,r6
  14847. 4d6dc: 3c62703a and r17,r7,r17
  14848. 4d6e0: e2803fcc andi r10,fp,255
  14849. 4d6e4: 10006d26 beq r2,zero,4d89c <__muldf3+0x254>
  14850. 4d6e8: 00c1ffc4 movi r3,2047
  14851. 4d6ec: 10c06526 beq r2,r3,4d884 <__muldf3+0x23c>
  14852. 4d6f0: 8c400434 orhi r17,r17,16
  14853. 4d6f4: 300ed77a srli r7,r6,29
  14854. 4d6f8: 880690fa slli r3,r17,3
  14855. 4d6fc: 302490fa slli r18,r6,3
  14856. 4d700: 10bf0044 addi r2,r2,-1023
  14857. 4d704: 38e2b03a or r17,r7,r3
  14858. 4d708: 000f883a mov r7,zero
  14859. 4d70c: a087883a add r3,r20,r2
  14860. 4d710: 010003c4 movi r4,15
  14861. 4d714: 3d44b03a or r2,r7,r21
  14862. 4d718: e5ccf03a xor r6,fp,r23
  14863. 4d71c: 1a000044 addi r8,r3,1
  14864. 4d720: 20809b36 bltu r4,r2,4d990 <__muldf3+0x348>
  14865. 4d724: 100490ba slli r2,r2,2
  14866. 4d728: 01000174 movhi r4,5
  14867. 4d72c: 2135cf04 addi r4,r4,-10436
  14868. 4d730: 1105883a add r2,r2,r4
  14869. 4d734: 10800017 ldw r2,0(r2)
  14870. 4d738: 1000683a jmp r2
  14871. 4d73c: 0004d990 cmplti zero,zero,4966
  14872. 4d740: 0004d79c xori zero,zero,4958
  14873. 4d744: 0004d79c xori zero,zero,4958
  14874. 4d748: 0004d798 cmpnei zero,zero,4958
  14875. 4d74c: 0004d96c andhi zero,zero,4965
  14876. 4d750: 0004d96c andhi zero,zero,4965
  14877. 4d754: 0004d954 movui zero,4965
  14878. 4d758: 0004d798 cmpnei zero,zero,4958
  14879. 4d75c: 0004d96c andhi zero,zero,4965
  14880. 4d760: 0004d954 movui zero,4965
  14881. 4d764: 0004d96c andhi zero,zero,4965
  14882. 4d768: 0004d798 cmpnei zero,zero,4958
  14883. 4d76c: 0004d97c xorhi zero,zero,4965
  14884. 4d770: 0004d97c xorhi zero,zero,4965
  14885. 4d774: 0004d97c xorhi zero,zero,4965
  14886. 4d778: 0004dcdc xori zero,zero,4979
  14887. 4d77c: 2404b03a or r2,r4,r16
  14888. 4d780: 1000711e bne r2,zero,4d948 <__muldf3+0x300>
  14889. 4d784: 05400204 movi r21,8
  14890. 4d788: 0021883a mov r16,zero
  14891. 4d78c: 002d883a mov r22,zero
  14892. 4d790: 01400084 movi r5,2
  14893. 4d794: 003fcb06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
  14894. 4d798: 500d883a mov r6,r10
  14895. 4d79c: 00800084 movi r2,2
  14896. 4d7a0: 38805926 beq r7,r2,4d908 <__muldf3+0x2c0>
  14897. 4d7a4: 008000c4 movi r2,3
  14898. 4d7a8: 3881bb26 beq r7,r2,4de98 <__muldf3+0x850>
  14899. 4d7ac: 00800044 movi r2,1
  14900. 4d7b0: 3881961e bne r7,r2,4de0c <__muldf3+0x7c4>
  14901. 4d7b4: 3027883a mov r19,r6
  14902. 4d7b8: 0005883a mov r2,zero
  14903. 4d7bc: 0021883a mov r16,zero
  14904. 4d7c0: 002d883a mov r22,zero
  14905. 4d7c4: 1004953a slli r2,r2,20
  14906. 4d7c8: 98c03fcc andi r3,r19,255
  14907. 4d7cc: 04400434 movhi r17,16
  14908. 4d7d0: 8c7fffc4 addi r17,r17,-1
  14909. 4d7d4: 180697fa slli r3,r3,31
  14910. 4d7d8: 8460703a and r16,r16,r17
  14911. 4d7dc: 80a0b03a or r16,r16,r2
  14912. 4d7e0: 80c6b03a or r3,r16,r3
  14913. 4d7e4: b005883a mov r2,r22
  14914. 4d7e8: dfc01117 ldw ra,68(sp)
  14915. 4d7ec: df001017 ldw fp,64(sp)
  14916. 4d7f0: ddc00f17 ldw r23,60(sp)
  14917. 4d7f4: dd800e17 ldw r22,56(sp)
  14918. 4d7f8: dd400d17 ldw r21,52(sp)
  14919. 4d7fc: dd000c17 ldw r20,48(sp)
  14920. 4d800: dcc00b17 ldw r19,44(sp)
  14921. 4d804: dc800a17 ldw r18,40(sp)
  14922. 4d808: dc400917 ldw r17,36(sp)
  14923. 4d80c: dc000817 ldw r16,32(sp)
  14924. 4d810: dec01204 addi sp,sp,72
  14925. 4d814: f800283a ret
  14926. 4d818: 2404b03a or r2,r4,r16
  14927. 4d81c: 202b883a mov r21,r4
  14928. 4d820: 10004426 beq r2,zero,4d934 <__muldf3+0x2ec>
  14929. 4d824: 80015126 beq r16,zero,4dd6c <__muldf3+0x724>
  14930. 4d828: 8009883a mov r4,r16
  14931. 4d82c: d9800715 stw r6,28(sp)
  14932. 4d830: d9c00215 stw r7,8(sp)
  14933. 4d834: da400415 stw r9,16(sp)
  14934. 4d838: 0041efc0 call 41efc <__clzsi2>
  14935. 4d83c: d9800717 ldw r6,28(sp)
  14936. 4d840: d9c00217 ldw r7,8(sp)
  14937. 4d844: da400417 ldw r9,16(sp)
  14938. 4d848: 113ffd44 addi r4,r2,-11
  14939. 4d84c: 00c00704 movi r3,28
  14940. 4d850: 19014216 blt r3,r4,4dd5c <__muldf3+0x714>
  14941. 4d854: 00c00744 movi r3,29
  14942. 4d858: 15bffe04 addi r22,r2,-8
  14943. 4d85c: 1907c83a sub r3,r3,r4
  14944. 4d860: 85a0983a sll r16,r16,r22
  14945. 4d864: a8c6d83a srl r3,r21,r3
  14946. 4d868: adac983a sll r22,r21,r22
  14947. 4d86c: 1c20b03a or r16,r3,r16
  14948. 4d870: 1080fcc4 addi r2,r2,1011
  14949. 4d874: 00a9c83a sub r20,zero,r2
  14950. 4d878: 002b883a mov r21,zero
  14951. 4d87c: 000b883a mov r5,zero
  14952. 4d880: 003f9006 br 4d6c4 <__alt_data_end+0xfffdb6c4>
  14953. 4d884: 3446b03a or r3,r6,r17
  14954. 4d888: 1800281e bne r3,zero,4d92c <__muldf3+0x2e4>
  14955. 4d88c: 0023883a mov r17,zero
  14956. 4d890: 0025883a mov r18,zero
  14957. 4d894: 01c00084 movi r7,2
  14958. 4d898: 003f9c06 br 4d70c <__alt_data_end+0xfffdb70c>
  14959. 4d89c: 3446b03a or r3,r6,r17
  14960. 4d8a0: 18001e26 beq r3,zero,4d91c <__muldf3+0x2d4>
  14961. 4d8a4: 88012126 beq r17,zero,4dd2c <__muldf3+0x6e4>
  14962. 4d8a8: 8809883a mov r4,r17
  14963. 4d8ac: d9400215 stw r5,8(sp)
  14964. 4d8b0: d9800715 stw r6,28(sp)
  14965. 4d8b4: da400415 stw r9,16(sp)
  14966. 4d8b8: da800315 stw r10,12(sp)
  14967. 4d8bc: 0041efc0 call 41efc <__clzsi2>
  14968. 4d8c0: d9400217 ldw r5,8(sp)
  14969. 4d8c4: d9800717 ldw r6,28(sp)
  14970. 4d8c8: da400417 ldw r9,16(sp)
  14971. 4d8cc: da800317 ldw r10,12(sp)
  14972. 4d8d0: 113ffd44 addi r4,r2,-11
  14973. 4d8d4: 00c00704 movi r3,28
  14974. 4d8d8: 19011016 blt r3,r4,4dd1c <__muldf3+0x6d4>
  14975. 4d8dc: 00c00744 movi r3,29
  14976. 4d8e0: 14bffe04 addi r18,r2,-8
  14977. 4d8e4: 1907c83a sub r3,r3,r4
  14978. 4d8e8: 8ca2983a sll r17,r17,r18
  14979. 4d8ec: 30c6d83a srl r3,r6,r3
  14980. 4d8f0: 34a4983a sll r18,r6,r18
  14981. 4d8f4: 1c62b03a or r17,r3,r17
  14982. 4d8f8: 1080fcc4 addi r2,r2,1011
  14983. 4d8fc: 0085c83a sub r2,zero,r2
  14984. 4d900: 000f883a mov r7,zero
  14985. 4d904: 003f8106 br 4d70c <__alt_data_end+0xfffdb70c>
  14986. 4d908: 3027883a mov r19,r6
  14987. 4d90c: 0081ffc4 movi r2,2047
  14988. 4d910: 0021883a mov r16,zero
  14989. 4d914: 002d883a mov r22,zero
  14990. 4d918: 003faa06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
  14991. 4d91c: 0023883a mov r17,zero
  14992. 4d920: 0025883a mov r18,zero
  14993. 4d924: 01c00044 movi r7,1
  14994. 4d928: 003f7806 br 4d70c <__alt_data_end+0xfffdb70c>
  14995. 4d92c: 01c000c4 movi r7,3
  14996. 4d930: 003f7606 br 4d70c <__alt_data_end+0xfffdb70c>
  14997. 4d934: 05400104 movi r21,4
  14998. 4d938: 0021883a mov r16,zero
  14999. 4d93c: 002d883a mov r22,zero
  15000. 4d940: 01400044 movi r5,1
  15001. 4d944: 003f5f06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
  15002. 4d948: 05400304 movi r21,12
  15003. 4d94c: 014000c4 movi r5,3
  15004. 4d950: 003f5c06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
  15005. 4d954: 04000434 movhi r16,16
  15006. 4d958: 0027883a mov r19,zero
  15007. 4d95c: 843fffc4 addi r16,r16,-1
  15008. 4d960: 05bfffc4 movi r22,-1
  15009. 4d964: 0081ffc4 movi r2,2047
  15010. 4d968: 003f9606 br 4d7c4 <__alt_data_end+0xfffdb7c4>
  15011. 4d96c: 8023883a mov r17,r16
  15012. 4d970: b025883a mov r18,r22
  15013. 4d974: 280f883a mov r7,r5
  15014. 4d978: 003f8806 br 4d79c <__alt_data_end+0xfffdb79c>
  15015. 4d97c: 8023883a mov r17,r16
  15016. 4d980: b025883a mov r18,r22
  15017. 4d984: 480d883a mov r6,r9
  15018. 4d988: 280f883a mov r7,r5
  15019. 4d98c: 003f8306 br 4d79c <__alt_data_end+0xfffdb79c>
  15020. 4d990: b026d43a srli r19,r22,16
  15021. 4d994: 902ed43a srli r23,r18,16
  15022. 4d998: b5bfffcc andi r22,r22,65535
  15023. 4d99c: 94bfffcc andi r18,r18,65535
  15024. 4d9a0: b00b883a mov r5,r22
  15025. 4d9a4: 9009883a mov r4,r18
  15026. 4d9a8: d8c00515 stw r3,20(sp)
  15027. 4d9ac: d9800715 stw r6,28(sp)
  15028. 4d9b0: da000615 stw r8,24(sp)
  15029. 4d9b4: 004c9f80 call 4c9f8 <__mulsi3>
  15030. 4d9b8: 980b883a mov r5,r19
  15031. 4d9bc: 9009883a mov r4,r18
  15032. 4d9c0: 1029883a mov r20,r2
  15033. 4d9c4: 004c9f80 call 4c9f8 <__mulsi3>
  15034. 4d9c8: b80b883a mov r5,r23
  15035. 4d9cc: 9809883a mov r4,r19
  15036. 4d9d0: 102b883a mov r21,r2
  15037. 4d9d4: 004c9f80 call 4c9f8 <__mulsi3>
  15038. 4d9d8: b809883a mov r4,r23
  15039. 4d9dc: b00b883a mov r5,r22
  15040. 4d9e0: 1039883a mov fp,r2
  15041. 4d9e4: 004c9f80 call 4c9f8 <__mulsi3>
  15042. 4d9e8: a008d43a srli r4,r20,16
  15043. 4d9ec: 1545883a add r2,r2,r21
  15044. 4d9f0: d8c00517 ldw r3,20(sp)
  15045. 4d9f4: 2085883a add r2,r4,r2
  15046. 4d9f8: d9800717 ldw r6,28(sp)
  15047. 4d9fc: da000617 ldw r8,24(sp)
  15048. 4da00: 1540022e bgeu r2,r21,4da0c <__muldf3+0x3c4>
  15049. 4da04: 01000074 movhi r4,1
  15050. 4da08: e139883a add fp,fp,r4
  15051. 4da0c: 100e943a slli r7,r2,16
  15052. 4da10: 1004d43a srli r2,r2,16
  15053. 4da14: 882ad43a srli r21,r17,16
  15054. 4da18: a53fffcc andi r20,r20,65535
  15055. 4da1c: 8c7fffcc andi r17,r17,65535
  15056. 4da20: 3d29883a add r20,r7,r20
  15057. 4da24: b00b883a mov r5,r22
  15058. 4da28: 8809883a mov r4,r17
  15059. 4da2c: d8c00515 stw r3,20(sp)
  15060. 4da30: d9800715 stw r6,28(sp)
  15061. 4da34: da000615 stw r8,24(sp)
  15062. 4da38: dd000115 stw r20,4(sp)
  15063. 4da3c: d8800015 stw r2,0(sp)
  15064. 4da40: 004c9f80 call 4c9f8 <__mulsi3>
  15065. 4da44: 980b883a mov r5,r19
  15066. 4da48: 8809883a mov r4,r17
  15067. 4da4c: d8800215 stw r2,8(sp)
  15068. 4da50: 004c9f80 call 4c9f8 <__mulsi3>
  15069. 4da54: 9809883a mov r4,r19
  15070. 4da58: a80b883a mov r5,r21
  15071. 4da5c: 1029883a mov r20,r2
  15072. 4da60: 004c9f80 call 4c9f8 <__mulsi3>
  15073. 4da64: b00b883a mov r5,r22
  15074. 4da68: a809883a mov r4,r21
  15075. 4da6c: d8800415 stw r2,16(sp)
  15076. 4da70: 004c9f80 call 4c9f8 <__mulsi3>
  15077. 4da74: d9c00217 ldw r7,8(sp)
  15078. 4da78: 1505883a add r2,r2,r20
  15079. 4da7c: d8c00517 ldw r3,20(sp)
  15080. 4da80: 3826d43a srli r19,r7,16
  15081. 4da84: d9800717 ldw r6,28(sp)
  15082. 4da88: da000617 ldw r8,24(sp)
  15083. 4da8c: 9885883a add r2,r19,r2
  15084. 4da90: da400417 ldw r9,16(sp)
  15085. 4da94: 1500022e bgeu r2,r20,4daa0 <__muldf3+0x458>
  15086. 4da98: 01000074 movhi r4,1
  15087. 4da9c: 4913883a add r9,r9,r4
  15088. 4daa0: 1028d43a srli r20,r2,16
  15089. 4daa4: 1004943a slli r2,r2,16
  15090. 4daa8: 802cd43a srli r22,r16,16
  15091. 4daac: 843fffcc andi r16,r16,65535
  15092. 4dab0: 3cffffcc andi r19,r7,65535
  15093. 4dab4: 9009883a mov r4,r18
  15094. 4dab8: 800b883a mov r5,r16
  15095. 4dabc: a269883a add r20,r20,r9
  15096. 4dac0: d8c00515 stw r3,20(sp)
  15097. 4dac4: d9800715 stw r6,28(sp)
  15098. 4dac8: da000615 stw r8,24(sp)
  15099. 4dacc: 14e7883a add r19,r2,r19
  15100. 4dad0: 004c9f80 call 4c9f8 <__mulsi3>
  15101. 4dad4: 9009883a mov r4,r18
  15102. 4dad8: b00b883a mov r5,r22
  15103. 4dadc: d8800315 stw r2,12(sp)
  15104. 4dae0: 004c9f80 call 4c9f8 <__mulsi3>
  15105. 4dae4: b809883a mov r4,r23
  15106. 4dae8: b00b883a mov r5,r22
  15107. 4daec: d8800215 stw r2,8(sp)
  15108. 4daf0: 004c9f80 call 4c9f8 <__mulsi3>
  15109. 4daf4: b80b883a mov r5,r23
  15110. 4daf8: 8009883a mov r4,r16
  15111. 4dafc: d8800415 stw r2,16(sp)
  15112. 4db00: 004c9f80 call 4c9f8 <__mulsi3>
  15113. 4db04: da800317 ldw r10,12(sp)
  15114. 4db08: d9c00217 ldw r7,8(sp)
  15115. 4db0c: d9000017 ldw r4,0(sp)
  15116. 4db10: 502ed43a srli r23,r10,16
  15117. 4db14: 11c5883a add r2,r2,r7
  15118. 4db18: 24e5883a add r18,r4,r19
  15119. 4db1c: b885883a add r2,r23,r2
  15120. 4db20: d8c00517 ldw r3,20(sp)
  15121. 4db24: d9800717 ldw r6,28(sp)
  15122. 4db28: da000617 ldw r8,24(sp)
  15123. 4db2c: da400417 ldw r9,16(sp)
  15124. 4db30: 11c0022e bgeu r2,r7,4db3c <__muldf3+0x4f4>
  15125. 4db34: 01000074 movhi r4,1
  15126. 4db38: 4913883a add r9,r9,r4
  15127. 4db3c: 100ed43a srli r7,r2,16
  15128. 4db40: 1004943a slli r2,r2,16
  15129. 4db44: 55ffffcc andi r23,r10,65535
  15130. 4db48: 3a53883a add r9,r7,r9
  15131. 4db4c: 8809883a mov r4,r17
  15132. 4db50: 800b883a mov r5,r16
  15133. 4db54: d8c00515 stw r3,20(sp)
  15134. 4db58: d9800715 stw r6,28(sp)
  15135. 4db5c: da000615 stw r8,24(sp)
  15136. 4db60: da400415 stw r9,16(sp)
  15137. 4db64: 15ef883a add r23,r2,r23
  15138. 4db68: 004c9f80 call 4c9f8 <__mulsi3>
  15139. 4db6c: 8809883a mov r4,r17
  15140. 4db70: b00b883a mov r5,r22
  15141. 4db74: d8800215 stw r2,8(sp)
  15142. 4db78: 004c9f80 call 4c9f8 <__mulsi3>
  15143. 4db7c: b00b883a mov r5,r22
  15144. 4db80: a809883a mov r4,r21
  15145. 4db84: d8800315 stw r2,12(sp)
  15146. 4db88: 004c9f80 call 4c9f8 <__mulsi3>
  15147. 4db8c: 8009883a mov r4,r16
  15148. 4db90: a80b883a mov r5,r21
  15149. 4db94: 1023883a mov r17,r2
  15150. 4db98: 004c9f80 call 4c9f8 <__mulsi3>
  15151. 4db9c: d9c00217 ldw r7,8(sp)
  15152. 4dba0: da800317 ldw r10,12(sp)
  15153. 4dba4: d8c00517 ldw r3,20(sp)
  15154. 4dba8: 3808d43a srli r4,r7,16
  15155. 4dbac: 1285883a add r2,r2,r10
  15156. 4dbb0: d9800717 ldw r6,28(sp)
  15157. 4dbb4: 2085883a add r2,r4,r2
  15158. 4dbb8: da000617 ldw r8,24(sp)
  15159. 4dbbc: da400417 ldw r9,16(sp)
  15160. 4dbc0: 1280022e bgeu r2,r10,4dbcc <__muldf3+0x584>
  15161. 4dbc4: 01000074 movhi r4,1
  15162. 4dbc8: 8923883a add r17,r17,r4
  15163. 4dbcc: 1008943a slli r4,r2,16
  15164. 4dbd0: 39ffffcc andi r7,r7,65535
  15165. 4dbd4: e4b9883a add fp,fp,r18
  15166. 4dbd8: 21cf883a add r7,r4,r7
  15167. 4dbdc: e4e7803a cmpltu r19,fp,r19
  15168. 4dbe0: 3d0f883a add r7,r7,r20
  15169. 4dbe4: bf39883a add fp,r23,fp
  15170. 4dbe8: 99c9883a add r4,r19,r7
  15171. 4dbec: e5ef803a cmpltu r23,fp,r23
  15172. 4dbf0: 490b883a add r5,r9,r4
  15173. 4dbf4: 1004d43a srli r2,r2,16
  15174. 4dbf8: b965883a add r18,r23,r5
  15175. 4dbfc: 24c9803a cmpltu r4,r4,r19
  15176. 4dc00: 3d29803a cmpltu r20,r7,r20
  15177. 4dc04: a128b03a or r20,r20,r4
  15178. 4dc08: 95ef803a cmpltu r23,r18,r23
  15179. 4dc0c: 2a53803a cmpltu r9,r5,r9
  15180. 4dc10: a0a9883a add r20,r20,r2
  15181. 4dc14: 4deeb03a or r23,r9,r23
  15182. 4dc18: a5ef883a add r23,r20,r23
  15183. 4dc1c: bc63883a add r17,r23,r17
  15184. 4dc20: e004927a slli r2,fp,9
  15185. 4dc24: d9000117 ldw r4,4(sp)
  15186. 4dc28: 882e927a slli r23,r17,9
  15187. 4dc2c: 9022d5fa srli r17,r18,23
  15188. 4dc30: e038d5fa srli fp,fp,23
  15189. 4dc34: 1104b03a or r2,r2,r4
  15190. 4dc38: 9024927a slli r18,r18,9
  15191. 4dc3c: 1004c03a cmpne r2,r2,zero
  15192. 4dc40: bc62b03a or r17,r23,r17
  15193. 4dc44: 1738b03a or fp,r2,fp
  15194. 4dc48: 8880402c andhi r2,r17,256
  15195. 4dc4c: e4a4b03a or r18,fp,r18
  15196. 4dc50: 10000726 beq r2,zero,4dc70 <__muldf3+0x628>
  15197. 4dc54: 9006d07a srli r3,r18,1
  15198. 4dc58: 880497fa slli r2,r17,31
  15199. 4dc5c: 9480004c andi r18,r18,1
  15200. 4dc60: 8822d07a srli r17,r17,1
  15201. 4dc64: 1ca4b03a or r18,r3,r18
  15202. 4dc68: 14a4b03a or r18,r2,r18
  15203. 4dc6c: 4007883a mov r3,r8
  15204. 4dc70: 1880ffc4 addi r2,r3,1023
  15205. 4dc74: 0080460e bge zero,r2,4dd90 <__muldf3+0x748>
  15206. 4dc78: 910001cc andi r4,r18,7
  15207. 4dc7c: 20000726 beq r4,zero,4dc9c <__muldf3+0x654>
  15208. 4dc80: 910003cc andi r4,r18,15
  15209. 4dc84: 01400104 movi r5,4
  15210. 4dc88: 21400426 beq r4,r5,4dc9c <__muldf3+0x654>
  15211. 4dc8c: 9149883a add r4,r18,r5
  15212. 4dc90: 24a5803a cmpltu r18,r4,r18
  15213. 4dc94: 8ca3883a add r17,r17,r18
  15214. 4dc98: 2025883a mov r18,r4
  15215. 4dc9c: 8900402c andhi r4,r17,256
  15216. 4dca0: 20000426 beq r4,zero,4dcb4 <__muldf3+0x66c>
  15217. 4dca4: 18810004 addi r2,r3,1024
  15218. 4dca8: 00ffc034 movhi r3,65280
  15219. 4dcac: 18ffffc4 addi r3,r3,-1
  15220. 4dcb0: 88e2703a and r17,r17,r3
  15221. 4dcb4: 00c1ff84 movi r3,2046
  15222. 4dcb8: 18bf1316 blt r3,r2,4d908 <__alt_data_end+0xfffdb908>
  15223. 4dcbc: 882c977a slli r22,r17,29
  15224. 4dcc0: 9024d0fa srli r18,r18,3
  15225. 4dcc4: 8822927a slli r17,r17,9
  15226. 4dcc8: 1081ffcc andi r2,r2,2047
  15227. 4dccc: b4acb03a or r22,r22,r18
  15228. 4dcd0: 8820d33a srli r16,r17,12
  15229. 4dcd4: 3027883a mov r19,r6
  15230. 4dcd8: 003eba06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
  15231. 4dcdc: 8080022c andhi r2,r16,8
  15232. 4dce0: 10000926 beq r2,zero,4dd08 <__muldf3+0x6c0>
  15233. 4dce4: 8880022c andhi r2,r17,8
  15234. 4dce8: 1000071e bne r2,zero,4dd08 <__muldf3+0x6c0>
  15235. 4dcec: 00800434 movhi r2,16
  15236. 4dcf0: 8c000234 orhi r16,r17,8
  15237. 4dcf4: 10bfffc4 addi r2,r2,-1
  15238. 4dcf8: e027883a mov r19,fp
  15239. 4dcfc: 80a0703a and r16,r16,r2
  15240. 4dd00: 902d883a mov r22,r18
  15241. 4dd04: 003f1706 br 4d964 <__alt_data_end+0xfffdb964>
  15242. 4dd08: 00800434 movhi r2,16
  15243. 4dd0c: 84000234 orhi r16,r16,8
  15244. 4dd10: 10bfffc4 addi r2,r2,-1
  15245. 4dd14: 80a0703a and r16,r16,r2
  15246. 4dd18: 003f1206 br 4d964 <__alt_data_end+0xfffdb964>
  15247. 4dd1c: 147ff604 addi r17,r2,-40
  15248. 4dd20: 3462983a sll r17,r6,r17
  15249. 4dd24: 0025883a mov r18,zero
  15250. 4dd28: 003ef306 br 4d8f8 <__alt_data_end+0xfffdb8f8>
  15251. 4dd2c: 3009883a mov r4,r6
  15252. 4dd30: d9400215 stw r5,8(sp)
  15253. 4dd34: d9800715 stw r6,28(sp)
  15254. 4dd38: da400415 stw r9,16(sp)
  15255. 4dd3c: da800315 stw r10,12(sp)
  15256. 4dd40: 0041efc0 call 41efc <__clzsi2>
  15257. 4dd44: 10800804 addi r2,r2,32
  15258. 4dd48: da800317 ldw r10,12(sp)
  15259. 4dd4c: da400417 ldw r9,16(sp)
  15260. 4dd50: d9800717 ldw r6,28(sp)
  15261. 4dd54: d9400217 ldw r5,8(sp)
  15262. 4dd58: 003edd06 br 4d8d0 <__alt_data_end+0xfffdb8d0>
  15263. 4dd5c: 143ff604 addi r16,r2,-40
  15264. 4dd60: ac20983a sll r16,r21,r16
  15265. 4dd64: 002d883a mov r22,zero
  15266. 4dd68: 003ec106 br 4d870 <__alt_data_end+0xfffdb870>
  15267. 4dd6c: d9800715 stw r6,28(sp)
  15268. 4dd70: d9c00215 stw r7,8(sp)
  15269. 4dd74: da400415 stw r9,16(sp)
  15270. 4dd78: 0041efc0 call 41efc <__clzsi2>
  15271. 4dd7c: 10800804 addi r2,r2,32
  15272. 4dd80: da400417 ldw r9,16(sp)
  15273. 4dd84: d9c00217 ldw r7,8(sp)
  15274. 4dd88: d9800717 ldw r6,28(sp)
  15275. 4dd8c: 003eae06 br 4d848 <__alt_data_end+0xfffdb848>
  15276. 4dd90: 00c00044 movi r3,1
  15277. 4dd94: 1887c83a sub r3,r3,r2
  15278. 4dd98: 01000e04 movi r4,56
  15279. 4dd9c: 20fe8516 blt r4,r3,4d7b4 <__alt_data_end+0xfffdb7b4>
  15280. 4dda0: 010007c4 movi r4,31
  15281. 4dda4: 20c01b16 blt r4,r3,4de14 <__muldf3+0x7cc>
  15282. 4dda8: 00800804 movi r2,32
  15283. 4ddac: 10c5c83a sub r2,r2,r3
  15284. 4ddb0: 888a983a sll r5,r17,r2
  15285. 4ddb4: 90c8d83a srl r4,r18,r3
  15286. 4ddb8: 9084983a sll r2,r18,r2
  15287. 4ddbc: 88e2d83a srl r17,r17,r3
  15288. 4ddc0: 2906b03a or r3,r5,r4
  15289. 4ddc4: 1004c03a cmpne r2,r2,zero
  15290. 4ddc8: 1886b03a or r3,r3,r2
  15291. 4ddcc: 188001cc andi r2,r3,7
  15292. 4ddd0: 10000726 beq r2,zero,4ddf0 <__muldf3+0x7a8>
  15293. 4ddd4: 188003cc andi r2,r3,15
  15294. 4ddd8: 01000104 movi r4,4
  15295. 4dddc: 11000426 beq r2,r4,4ddf0 <__muldf3+0x7a8>
  15296. 4dde0: 1805883a mov r2,r3
  15297. 4dde4: 10c00104 addi r3,r2,4
  15298. 4dde8: 1885803a cmpltu r2,r3,r2
  15299. 4ddec: 88a3883a add r17,r17,r2
  15300. 4ddf0: 8880202c andhi r2,r17,128
  15301. 4ddf4: 10001c26 beq r2,zero,4de68 <__muldf3+0x820>
  15302. 4ddf8: 3027883a mov r19,r6
  15303. 4ddfc: 00800044 movi r2,1
  15304. 4de00: 0021883a mov r16,zero
  15305. 4de04: 002d883a mov r22,zero
  15306. 4de08: 003e6e06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
  15307. 4de0c: 4007883a mov r3,r8
  15308. 4de10: 003f9706 br 4dc70 <__alt_data_end+0xfffdbc70>
  15309. 4de14: 017ff844 movi r5,-31
  15310. 4de18: 2885c83a sub r2,r5,r2
  15311. 4de1c: 888ad83a srl r5,r17,r2
  15312. 4de20: 00800804 movi r2,32
  15313. 4de24: 18801a26 beq r3,r2,4de90 <__muldf3+0x848>
  15314. 4de28: 01001004 movi r4,64
  15315. 4de2c: 20c7c83a sub r3,r4,r3
  15316. 4de30: 88e2983a sll r17,r17,r3
  15317. 4de34: 8ca4b03a or r18,r17,r18
  15318. 4de38: 9004c03a cmpne r2,r18,zero
  15319. 4de3c: 2884b03a or r2,r5,r2
  15320. 4de40: 144001cc andi r17,r2,7
  15321. 4de44: 88000d1e bne r17,zero,4de7c <__muldf3+0x834>
  15322. 4de48: 0021883a mov r16,zero
  15323. 4de4c: 102cd0fa srli r22,r2,3
  15324. 4de50: 3027883a mov r19,r6
  15325. 4de54: 0005883a mov r2,zero
  15326. 4de58: b46cb03a or r22,r22,r17
  15327. 4de5c: 003e5906 br 4d7c4 <__alt_data_end+0xfffdb7c4>
  15328. 4de60: 1007883a mov r3,r2
  15329. 4de64: 0023883a mov r17,zero
  15330. 4de68: 8820927a slli r16,r17,9
  15331. 4de6c: 1805883a mov r2,r3
  15332. 4de70: 8822977a slli r17,r17,29
  15333. 4de74: 8020d33a srli r16,r16,12
  15334. 4de78: 003ff406 br 4de4c <__alt_data_end+0xfffdbe4c>
  15335. 4de7c: 10c003cc andi r3,r2,15
  15336. 4de80: 01000104 movi r4,4
  15337. 4de84: 193ff626 beq r3,r4,4de60 <__alt_data_end+0xfffdbe60>
  15338. 4de88: 0023883a mov r17,zero
  15339. 4de8c: 003fd506 br 4dde4 <__alt_data_end+0xfffdbde4>
  15340. 4de90: 0023883a mov r17,zero
  15341. 4de94: 003fe706 br 4de34 <__alt_data_end+0xfffdbe34>
  15342. 4de98: 00800434 movhi r2,16
  15343. 4de9c: 8c000234 orhi r16,r17,8
  15344. 4dea0: 10bfffc4 addi r2,r2,-1
  15345. 4dea4: 3027883a mov r19,r6
  15346. 4dea8: 80a0703a and r16,r16,r2
  15347. 4deac: 902d883a mov r22,r18
  15348. 4deb0: 003eac06 br 4d964 <__alt_data_end+0xfffdb964>
  15349. 0004deb4 <__subdf3>:
  15350. 4deb4: 02000434 movhi r8,16
  15351. 4deb8: 423fffc4 addi r8,r8,-1
  15352. 4debc: defffb04 addi sp,sp,-20
  15353. 4dec0: 2a14703a and r10,r5,r8
  15354. 4dec4: 3812d53a srli r9,r7,20
  15355. 4dec8: 3a10703a and r8,r7,r8
  15356. 4decc: 2006d77a srli r3,r4,29
  15357. 4ded0: 3004d77a srli r2,r6,29
  15358. 4ded4: dc000015 stw r16,0(sp)
  15359. 4ded8: 501490fa slli r10,r10,3
  15360. 4dedc: 2820d53a srli r16,r5,20
  15361. 4dee0: 401090fa slli r8,r8,3
  15362. 4dee4: dc800215 stw r18,8(sp)
  15363. 4dee8: dc400115 stw r17,4(sp)
  15364. 4deec: dfc00415 stw ra,16(sp)
  15365. 4def0: 202290fa slli r17,r4,3
  15366. 4def4: dcc00315 stw r19,12(sp)
  15367. 4def8: 4a41ffcc andi r9,r9,2047
  15368. 4defc: 0101ffc4 movi r4,2047
  15369. 4df00: 2824d7fa srli r18,r5,31
  15370. 4df04: 8401ffcc andi r16,r16,2047
  15371. 4df08: 50c6b03a or r3,r10,r3
  15372. 4df0c: 380ed7fa srli r7,r7,31
  15373. 4df10: 408ab03a or r5,r8,r2
  15374. 4df14: 300c90fa slli r6,r6,3
  15375. 4df18: 49009626 beq r9,r4,4e174 <__subdf3+0x2c0>
  15376. 4df1c: 39c0005c xori r7,r7,1
  15377. 4df20: 8245c83a sub r2,r16,r9
  15378. 4df24: 3c807426 beq r7,r18,4e0f8 <__subdf3+0x244>
  15379. 4df28: 0080af0e bge zero,r2,4e1e8 <__subdf3+0x334>
  15380. 4df2c: 48002a1e bne r9,zero,4dfd8 <__subdf3+0x124>
  15381. 4df30: 2988b03a or r4,r5,r6
  15382. 4df34: 20009a1e bne r4,zero,4e1a0 <__subdf3+0x2ec>
  15383. 4df38: 888001cc andi r2,r17,7
  15384. 4df3c: 10000726 beq r2,zero,4df5c <__subdf3+0xa8>
  15385. 4df40: 888003cc andi r2,r17,15
  15386. 4df44: 01000104 movi r4,4
  15387. 4df48: 11000426 beq r2,r4,4df5c <__subdf3+0xa8>
  15388. 4df4c: 890b883a add r5,r17,r4
  15389. 4df50: 2c63803a cmpltu r17,r5,r17
  15390. 4df54: 1c47883a add r3,r3,r17
  15391. 4df58: 2823883a mov r17,r5
  15392. 4df5c: 1880202c andhi r2,r3,128
  15393. 4df60: 10005926 beq r2,zero,4e0c8 <__subdf3+0x214>
  15394. 4df64: 84000044 addi r16,r16,1
  15395. 4df68: 0081ffc4 movi r2,2047
  15396. 4df6c: 8080be26 beq r16,r2,4e268 <__subdf3+0x3b4>
  15397. 4df70: 017fe034 movhi r5,65408
  15398. 4df74: 297fffc4 addi r5,r5,-1
  15399. 4df78: 1946703a and r3,r3,r5
  15400. 4df7c: 1804977a slli r2,r3,29
  15401. 4df80: 1806927a slli r3,r3,9
  15402. 4df84: 8822d0fa srli r17,r17,3
  15403. 4df88: 8401ffcc andi r16,r16,2047
  15404. 4df8c: 180ad33a srli r5,r3,12
  15405. 4df90: 9100004c andi r4,r18,1
  15406. 4df94: 1444b03a or r2,r2,r17
  15407. 4df98: 80c1ffcc andi r3,r16,2047
  15408. 4df9c: 1820953a slli r16,r3,20
  15409. 4dfa0: 20c03fcc andi r3,r4,255
  15410. 4dfa4: 180897fa slli r4,r3,31
  15411. 4dfa8: 00c00434 movhi r3,16
  15412. 4dfac: 18ffffc4 addi r3,r3,-1
  15413. 4dfb0: 28c6703a and r3,r5,r3
  15414. 4dfb4: 1c06b03a or r3,r3,r16
  15415. 4dfb8: 1906b03a or r3,r3,r4
  15416. 4dfbc: dfc00417 ldw ra,16(sp)
  15417. 4dfc0: dcc00317 ldw r19,12(sp)
  15418. 4dfc4: dc800217 ldw r18,8(sp)
  15419. 4dfc8: dc400117 ldw r17,4(sp)
  15420. 4dfcc: dc000017 ldw r16,0(sp)
  15421. 4dfd0: dec00504 addi sp,sp,20
  15422. 4dfd4: f800283a ret
  15423. 4dfd8: 0101ffc4 movi r4,2047
  15424. 4dfdc: 813fd626 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38>
  15425. 4dfe0: 29402034 orhi r5,r5,128
  15426. 4dfe4: 01000e04 movi r4,56
  15427. 4dfe8: 2080a316 blt r4,r2,4e278 <__subdf3+0x3c4>
  15428. 4dfec: 010007c4 movi r4,31
  15429. 4dff0: 2080c616 blt r4,r2,4e30c <__subdf3+0x458>
  15430. 4dff4: 01000804 movi r4,32
  15431. 4dff8: 2089c83a sub r4,r4,r2
  15432. 4dffc: 2910983a sll r8,r5,r4
  15433. 4e000: 308ed83a srl r7,r6,r2
  15434. 4e004: 3108983a sll r4,r6,r4
  15435. 4e008: 2884d83a srl r2,r5,r2
  15436. 4e00c: 41ccb03a or r6,r8,r7
  15437. 4e010: 2008c03a cmpne r4,r4,zero
  15438. 4e014: 310cb03a or r6,r6,r4
  15439. 4e018: 898dc83a sub r6,r17,r6
  15440. 4e01c: 89a3803a cmpltu r17,r17,r6
  15441. 4e020: 1887c83a sub r3,r3,r2
  15442. 4e024: 1c47c83a sub r3,r3,r17
  15443. 4e028: 3023883a mov r17,r6
  15444. 4e02c: 1880202c andhi r2,r3,128
  15445. 4e030: 10002326 beq r2,zero,4e0c0 <__subdf3+0x20c>
  15446. 4e034: 04c02034 movhi r19,128
  15447. 4e038: 9cffffc4 addi r19,r19,-1
  15448. 4e03c: 1ce6703a and r19,r3,r19
  15449. 4e040: 98007a26 beq r19,zero,4e22c <__subdf3+0x378>
  15450. 4e044: 9809883a mov r4,r19
  15451. 4e048: 0041efc0 call 41efc <__clzsi2>
  15452. 4e04c: 113ffe04 addi r4,r2,-8
  15453. 4e050: 00c007c4 movi r3,31
  15454. 4e054: 19007b16 blt r3,r4,4e244 <__subdf3+0x390>
  15455. 4e058: 00800804 movi r2,32
  15456. 4e05c: 1105c83a sub r2,r2,r4
  15457. 4e060: 8884d83a srl r2,r17,r2
  15458. 4e064: 9906983a sll r3,r19,r4
  15459. 4e068: 8922983a sll r17,r17,r4
  15460. 4e06c: 10c4b03a or r2,r2,r3
  15461. 4e070: 24007816 blt r4,r16,4e254 <__subdf3+0x3a0>
  15462. 4e074: 2421c83a sub r16,r4,r16
  15463. 4e078: 80c00044 addi r3,r16,1
  15464. 4e07c: 010007c4 movi r4,31
  15465. 4e080: 20c09516 blt r4,r3,4e2d8 <__subdf3+0x424>
  15466. 4e084: 01400804 movi r5,32
  15467. 4e088: 28cbc83a sub r5,r5,r3
  15468. 4e08c: 88c8d83a srl r4,r17,r3
  15469. 4e090: 8962983a sll r17,r17,r5
  15470. 4e094: 114a983a sll r5,r2,r5
  15471. 4e098: 10c6d83a srl r3,r2,r3
  15472. 4e09c: 8804c03a cmpne r2,r17,zero
  15473. 4e0a0: 290ab03a or r5,r5,r4
  15474. 4e0a4: 28a2b03a or r17,r5,r2
  15475. 4e0a8: 0021883a mov r16,zero
  15476. 4e0ac: 003fa206 br 4df38 <__alt_data_end+0xfffdbf38>
  15477. 4e0b0: 2090b03a or r8,r4,r2
  15478. 4e0b4: 40018e26 beq r8,zero,4e6f0 <__subdf3+0x83c>
  15479. 4e0b8: 1007883a mov r3,r2
  15480. 4e0bc: 2023883a mov r17,r4
  15481. 4e0c0: 888001cc andi r2,r17,7
  15482. 4e0c4: 103f9e1e bne r2,zero,4df40 <__alt_data_end+0xfffdbf40>
  15483. 4e0c8: 1804977a slli r2,r3,29
  15484. 4e0cc: 8822d0fa srli r17,r17,3
  15485. 4e0d0: 1810d0fa srli r8,r3,3
  15486. 4e0d4: 9100004c andi r4,r18,1
  15487. 4e0d8: 1444b03a or r2,r2,r17
  15488. 4e0dc: 00c1ffc4 movi r3,2047
  15489. 4e0e0: 80c02826 beq r16,r3,4e184 <__subdf3+0x2d0>
  15490. 4e0e4: 01400434 movhi r5,16
  15491. 4e0e8: 297fffc4 addi r5,r5,-1
  15492. 4e0ec: 80e0703a and r16,r16,r3
  15493. 4e0f0: 414a703a and r5,r8,r5
  15494. 4e0f4: 003fa806 br 4df98 <__alt_data_end+0xfffdbf98>
  15495. 4e0f8: 0080630e bge zero,r2,4e288 <__subdf3+0x3d4>
  15496. 4e0fc: 48003026 beq r9,zero,4e1c0 <__subdf3+0x30c>
  15497. 4e100: 0101ffc4 movi r4,2047
  15498. 4e104: 813f8c26 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38>
  15499. 4e108: 29402034 orhi r5,r5,128
  15500. 4e10c: 01000e04 movi r4,56
  15501. 4e110: 2080a90e bge r4,r2,4e3b8 <__subdf3+0x504>
  15502. 4e114: 298cb03a or r6,r5,r6
  15503. 4e118: 3012c03a cmpne r9,r6,zero
  15504. 4e11c: 0005883a mov r2,zero
  15505. 4e120: 4c53883a add r9,r9,r17
  15506. 4e124: 4c63803a cmpltu r17,r9,r17
  15507. 4e128: 10c7883a add r3,r2,r3
  15508. 4e12c: 88c7883a add r3,r17,r3
  15509. 4e130: 4823883a mov r17,r9
  15510. 4e134: 1880202c andhi r2,r3,128
  15511. 4e138: 1000d026 beq r2,zero,4e47c <__subdf3+0x5c8>
  15512. 4e13c: 84000044 addi r16,r16,1
  15513. 4e140: 0081ffc4 movi r2,2047
  15514. 4e144: 8080fe26 beq r16,r2,4e540 <__subdf3+0x68c>
  15515. 4e148: 00bfe034 movhi r2,65408
  15516. 4e14c: 10bfffc4 addi r2,r2,-1
  15517. 4e150: 1886703a and r3,r3,r2
  15518. 4e154: 880ad07a srli r5,r17,1
  15519. 4e158: 180497fa slli r2,r3,31
  15520. 4e15c: 8900004c andi r4,r17,1
  15521. 4e160: 2922b03a or r17,r5,r4
  15522. 4e164: 1806d07a srli r3,r3,1
  15523. 4e168: 1462b03a or r17,r2,r17
  15524. 4e16c: 3825883a mov r18,r7
  15525. 4e170: 003f7106 br 4df38 <__alt_data_end+0xfffdbf38>
  15526. 4e174: 2984b03a or r2,r5,r6
  15527. 4e178: 103f6826 beq r2,zero,4df1c <__alt_data_end+0xfffdbf1c>
  15528. 4e17c: 39c03fcc andi r7,r7,255
  15529. 4e180: 003f6706 br 4df20 <__alt_data_end+0xfffdbf20>
  15530. 4e184: 4086b03a or r3,r8,r2
  15531. 4e188: 18015226 beq r3,zero,4e6d4 <__subdf3+0x820>
  15532. 4e18c: 00c00434 movhi r3,16
  15533. 4e190: 41400234 orhi r5,r8,8
  15534. 4e194: 18ffffc4 addi r3,r3,-1
  15535. 4e198: 28ca703a and r5,r5,r3
  15536. 4e19c: 003f7e06 br 4df98 <__alt_data_end+0xfffdbf98>
  15537. 4e1a0: 10bfffc4 addi r2,r2,-1
  15538. 4e1a4: 1000491e bne r2,zero,4e2cc <__subdf3+0x418>
  15539. 4e1a8: 898fc83a sub r7,r17,r6
  15540. 4e1ac: 89e3803a cmpltu r17,r17,r7
  15541. 4e1b0: 1947c83a sub r3,r3,r5
  15542. 4e1b4: 1c47c83a sub r3,r3,r17
  15543. 4e1b8: 3823883a mov r17,r7
  15544. 4e1bc: 003f9b06 br 4e02c <__alt_data_end+0xfffdc02c>
  15545. 4e1c0: 2988b03a or r4,r5,r6
  15546. 4e1c4: 203f5c26 beq r4,zero,4df38 <__alt_data_end+0xfffdbf38>
  15547. 4e1c8: 10bfffc4 addi r2,r2,-1
  15548. 4e1cc: 1000931e bne r2,zero,4e41c <__subdf3+0x568>
  15549. 4e1d0: 898d883a add r6,r17,r6
  15550. 4e1d4: 3463803a cmpltu r17,r6,r17
  15551. 4e1d8: 1947883a add r3,r3,r5
  15552. 4e1dc: 88c7883a add r3,r17,r3
  15553. 4e1e0: 3023883a mov r17,r6
  15554. 4e1e4: 003fd306 br 4e134 <__alt_data_end+0xfffdc134>
  15555. 4e1e8: 1000541e bne r2,zero,4e33c <__subdf3+0x488>
  15556. 4e1ec: 80800044 addi r2,r16,1
  15557. 4e1f0: 1081ffcc andi r2,r2,2047
  15558. 4e1f4: 01000044 movi r4,1
  15559. 4e1f8: 2080a20e bge r4,r2,4e484 <__subdf3+0x5d0>
  15560. 4e1fc: 8989c83a sub r4,r17,r6
  15561. 4e200: 8905803a cmpltu r2,r17,r4
  15562. 4e204: 1967c83a sub r19,r3,r5
  15563. 4e208: 98a7c83a sub r19,r19,r2
  15564. 4e20c: 9880202c andhi r2,r19,128
  15565. 4e210: 10006326 beq r2,zero,4e3a0 <__subdf3+0x4ec>
  15566. 4e214: 3463c83a sub r17,r6,r17
  15567. 4e218: 28c7c83a sub r3,r5,r3
  15568. 4e21c: 344d803a cmpltu r6,r6,r17
  15569. 4e220: 19a7c83a sub r19,r3,r6
  15570. 4e224: 3825883a mov r18,r7
  15571. 4e228: 983f861e bne r19,zero,4e044 <__alt_data_end+0xfffdc044>
  15572. 4e22c: 8809883a mov r4,r17
  15573. 4e230: 0041efc0 call 41efc <__clzsi2>
  15574. 4e234: 10800804 addi r2,r2,32
  15575. 4e238: 113ffe04 addi r4,r2,-8
  15576. 4e23c: 00c007c4 movi r3,31
  15577. 4e240: 193f850e bge r3,r4,4e058 <__alt_data_end+0xfffdc058>
  15578. 4e244: 10bff604 addi r2,r2,-40
  15579. 4e248: 8884983a sll r2,r17,r2
  15580. 4e24c: 0023883a mov r17,zero
  15581. 4e250: 243f880e bge r4,r16,4e074 <__alt_data_end+0xfffdc074>
  15582. 4e254: 00ffe034 movhi r3,65408
  15583. 4e258: 18ffffc4 addi r3,r3,-1
  15584. 4e25c: 8121c83a sub r16,r16,r4
  15585. 4e260: 10c6703a and r3,r2,r3
  15586. 4e264: 003f3406 br 4df38 <__alt_data_end+0xfffdbf38>
  15587. 4e268: 9100004c andi r4,r18,1
  15588. 4e26c: 000b883a mov r5,zero
  15589. 4e270: 0005883a mov r2,zero
  15590. 4e274: 003f4806 br 4df98 <__alt_data_end+0xfffdbf98>
  15591. 4e278: 298cb03a or r6,r5,r6
  15592. 4e27c: 300cc03a cmpne r6,r6,zero
  15593. 4e280: 0005883a mov r2,zero
  15594. 4e284: 003f6406 br 4e018 <__alt_data_end+0xfffdc018>
  15595. 4e288: 10009a1e bne r2,zero,4e4f4 <__subdf3+0x640>
  15596. 4e28c: 82400044 addi r9,r16,1
  15597. 4e290: 4881ffcc andi r2,r9,2047
  15598. 4e294: 02800044 movi r10,1
  15599. 4e298: 5080670e bge r10,r2,4e438 <__subdf3+0x584>
  15600. 4e29c: 0081ffc4 movi r2,2047
  15601. 4e2a0: 4880af26 beq r9,r2,4e560 <__subdf3+0x6ac>
  15602. 4e2a4: 898d883a add r6,r17,r6
  15603. 4e2a8: 1945883a add r2,r3,r5
  15604. 4e2ac: 3447803a cmpltu r3,r6,r17
  15605. 4e2b0: 1887883a add r3,r3,r2
  15606. 4e2b4: 182297fa slli r17,r3,31
  15607. 4e2b8: 300cd07a srli r6,r6,1
  15608. 4e2bc: 1806d07a srli r3,r3,1
  15609. 4e2c0: 4821883a mov r16,r9
  15610. 4e2c4: 89a2b03a or r17,r17,r6
  15611. 4e2c8: 003f1b06 br 4df38 <__alt_data_end+0xfffdbf38>
  15612. 4e2cc: 0101ffc4 movi r4,2047
  15613. 4e2d0: 813f441e bne r16,r4,4dfe4 <__alt_data_end+0xfffdbfe4>
  15614. 4e2d4: 003f1806 br 4df38 <__alt_data_end+0xfffdbf38>
  15615. 4e2d8: 843ff844 addi r16,r16,-31
  15616. 4e2dc: 01400804 movi r5,32
  15617. 4e2e0: 1408d83a srl r4,r2,r16
  15618. 4e2e4: 19405026 beq r3,r5,4e428 <__subdf3+0x574>
  15619. 4e2e8: 01401004 movi r5,64
  15620. 4e2ec: 28c7c83a sub r3,r5,r3
  15621. 4e2f0: 10c4983a sll r2,r2,r3
  15622. 4e2f4: 88a2b03a or r17,r17,r2
  15623. 4e2f8: 8822c03a cmpne r17,r17,zero
  15624. 4e2fc: 2462b03a or r17,r4,r17
  15625. 4e300: 0007883a mov r3,zero
  15626. 4e304: 0021883a mov r16,zero
  15627. 4e308: 003f6d06 br 4e0c0 <__alt_data_end+0xfffdc0c0>
  15628. 4e30c: 11fff804 addi r7,r2,-32
  15629. 4e310: 01000804 movi r4,32
  15630. 4e314: 29ced83a srl r7,r5,r7
  15631. 4e318: 11004526 beq r2,r4,4e430 <__subdf3+0x57c>
  15632. 4e31c: 01001004 movi r4,64
  15633. 4e320: 2089c83a sub r4,r4,r2
  15634. 4e324: 2904983a sll r2,r5,r4
  15635. 4e328: 118cb03a or r6,r2,r6
  15636. 4e32c: 300cc03a cmpne r6,r6,zero
  15637. 4e330: 398cb03a or r6,r7,r6
  15638. 4e334: 0005883a mov r2,zero
  15639. 4e338: 003f3706 br 4e018 <__alt_data_end+0xfffdc018>
  15640. 4e33c: 80002a26 beq r16,zero,4e3e8 <__subdf3+0x534>
  15641. 4e340: 0101ffc4 movi r4,2047
  15642. 4e344: 49006626 beq r9,r4,4e4e0 <__subdf3+0x62c>
  15643. 4e348: 0085c83a sub r2,zero,r2
  15644. 4e34c: 18c02034 orhi r3,r3,128
  15645. 4e350: 01000e04 movi r4,56
  15646. 4e354: 20807e16 blt r4,r2,4e550 <__subdf3+0x69c>
  15647. 4e358: 010007c4 movi r4,31
  15648. 4e35c: 2080e716 blt r4,r2,4e6fc <__subdf3+0x848>
  15649. 4e360: 01000804 movi r4,32
  15650. 4e364: 2089c83a sub r4,r4,r2
  15651. 4e368: 1914983a sll r10,r3,r4
  15652. 4e36c: 8890d83a srl r8,r17,r2
  15653. 4e370: 8908983a sll r4,r17,r4
  15654. 4e374: 1884d83a srl r2,r3,r2
  15655. 4e378: 5222b03a or r17,r10,r8
  15656. 4e37c: 2006c03a cmpne r3,r4,zero
  15657. 4e380: 88e2b03a or r17,r17,r3
  15658. 4e384: 3463c83a sub r17,r6,r17
  15659. 4e388: 2885c83a sub r2,r5,r2
  15660. 4e38c: 344d803a cmpltu r6,r6,r17
  15661. 4e390: 1187c83a sub r3,r2,r6
  15662. 4e394: 4821883a mov r16,r9
  15663. 4e398: 3825883a mov r18,r7
  15664. 4e39c: 003f2306 br 4e02c <__alt_data_end+0xfffdc02c>
  15665. 4e3a0: 24d0b03a or r8,r4,r19
  15666. 4e3a4: 40001b1e bne r8,zero,4e414 <__subdf3+0x560>
  15667. 4e3a8: 0005883a mov r2,zero
  15668. 4e3ac: 0009883a mov r4,zero
  15669. 4e3b0: 0021883a mov r16,zero
  15670. 4e3b4: 003f4906 br 4e0dc <__alt_data_end+0xfffdc0dc>
  15671. 4e3b8: 010007c4 movi r4,31
  15672. 4e3bc: 20803a16 blt r4,r2,4e4a8 <__subdf3+0x5f4>
  15673. 4e3c0: 01000804 movi r4,32
  15674. 4e3c4: 2089c83a sub r4,r4,r2
  15675. 4e3c8: 2912983a sll r9,r5,r4
  15676. 4e3cc: 3090d83a srl r8,r6,r2
  15677. 4e3d0: 3108983a sll r4,r6,r4
  15678. 4e3d4: 2884d83a srl r2,r5,r2
  15679. 4e3d8: 4a12b03a or r9,r9,r8
  15680. 4e3dc: 2008c03a cmpne r4,r4,zero
  15681. 4e3e0: 4912b03a or r9,r9,r4
  15682. 4e3e4: 003f4e06 br 4e120 <__alt_data_end+0xfffdc120>
  15683. 4e3e8: 1c48b03a or r4,r3,r17
  15684. 4e3ec: 20003c26 beq r4,zero,4e4e0 <__subdf3+0x62c>
  15685. 4e3f0: 0084303a nor r2,zero,r2
  15686. 4e3f4: 1000381e bne r2,zero,4e4d8 <__subdf3+0x624>
  15687. 4e3f8: 3463c83a sub r17,r6,r17
  15688. 4e3fc: 28c5c83a sub r2,r5,r3
  15689. 4e400: 344d803a cmpltu r6,r6,r17
  15690. 4e404: 1187c83a sub r3,r2,r6
  15691. 4e408: 4821883a mov r16,r9
  15692. 4e40c: 3825883a mov r18,r7
  15693. 4e410: 003f0606 br 4e02c <__alt_data_end+0xfffdc02c>
  15694. 4e414: 2023883a mov r17,r4
  15695. 4e418: 003f0906 br 4e040 <__alt_data_end+0xfffdc040>
  15696. 4e41c: 0101ffc4 movi r4,2047
  15697. 4e420: 813f3a1e bne r16,r4,4e10c <__alt_data_end+0xfffdc10c>
  15698. 4e424: 003ec406 br 4df38 <__alt_data_end+0xfffdbf38>
  15699. 4e428: 0005883a mov r2,zero
  15700. 4e42c: 003fb106 br 4e2f4 <__alt_data_end+0xfffdc2f4>
  15701. 4e430: 0005883a mov r2,zero
  15702. 4e434: 003fbc06 br 4e328 <__alt_data_end+0xfffdc328>
  15703. 4e438: 1c44b03a or r2,r3,r17
  15704. 4e43c: 80008e1e bne r16,zero,4e678 <__subdf3+0x7c4>
  15705. 4e440: 1000c826 beq r2,zero,4e764 <__subdf3+0x8b0>
  15706. 4e444: 2984b03a or r2,r5,r6
  15707. 4e448: 103ebb26 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38>
  15708. 4e44c: 8989883a add r4,r17,r6
  15709. 4e450: 1945883a add r2,r3,r5
  15710. 4e454: 2447803a cmpltu r3,r4,r17
  15711. 4e458: 1887883a add r3,r3,r2
  15712. 4e45c: 1880202c andhi r2,r3,128
  15713. 4e460: 2023883a mov r17,r4
  15714. 4e464: 103f1626 beq r2,zero,4e0c0 <__alt_data_end+0xfffdc0c0>
  15715. 4e468: 00bfe034 movhi r2,65408
  15716. 4e46c: 10bfffc4 addi r2,r2,-1
  15717. 4e470: 5021883a mov r16,r10
  15718. 4e474: 1886703a and r3,r3,r2
  15719. 4e478: 003eaf06 br 4df38 <__alt_data_end+0xfffdbf38>
  15720. 4e47c: 3825883a mov r18,r7
  15721. 4e480: 003f0f06 br 4e0c0 <__alt_data_end+0xfffdc0c0>
  15722. 4e484: 1c44b03a or r2,r3,r17
  15723. 4e488: 8000251e bne r16,zero,4e520 <__subdf3+0x66c>
  15724. 4e48c: 1000661e bne r2,zero,4e628 <__subdf3+0x774>
  15725. 4e490: 2990b03a or r8,r5,r6
  15726. 4e494: 40009626 beq r8,zero,4e6f0 <__subdf3+0x83c>
  15727. 4e498: 2807883a mov r3,r5
  15728. 4e49c: 3023883a mov r17,r6
  15729. 4e4a0: 3825883a mov r18,r7
  15730. 4e4a4: 003ea406 br 4df38 <__alt_data_end+0xfffdbf38>
  15731. 4e4a8: 127ff804 addi r9,r2,-32
  15732. 4e4ac: 01000804 movi r4,32
  15733. 4e4b0: 2a52d83a srl r9,r5,r9
  15734. 4e4b4: 11008c26 beq r2,r4,4e6e8 <__subdf3+0x834>
  15735. 4e4b8: 01001004 movi r4,64
  15736. 4e4bc: 2085c83a sub r2,r4,r2
  15737. 4e4c0: 2884983a sll r2,r5,r2
  15738. 4e4c4: 118cb03a or r6,r2,r6
  15739. 4e4c8: 300cc03a cmpne r6,r6,zero
  15740. 4e4cc: 4992b03a or r9,r9,r6
  15741. 4e4d0: 0005883a mov r2,zero
  15742. 4e4d4: 003f1206 br 4e120 <__alt_data_end+0xfffdc120>
  15743. 4e4d8: 0101ffc4 movi r4,2047
  15744. 4e4dc: 493f9c1e bne r9,r4,4e350 <__alt_data_end+0xfffdc350>
  15745. 4e4e0: 2807883a mov r3,r5
  15746. 4e4e4: 3023883a mov r17,r6
  15747. 4e4e8: 4821883a mov r16,r9
  15748. 4e4ec: 3825883a mov r18,r7
  15749. 4e4f0: 003e9106 br 4df38 <__alt_data_end+0xfffdbf38>
  15750. 4e4f4: 80001f1e bne r16,zero,4e574 <__subdf3+0x6c0>
  15751. 4e4f8: 1c48b03a or r4,r3,r17
  15752. 4e4fc: 20005a26 beq r4,zero,4e668 <__subdf3+0x7b4>
  15753. 4e500: 0084303a nor r2,zero,r2
  15754. 4e504: 1000561e bne r2,zero,4e660 <__subdf3+0x7ac>
  15755. 4e508: 89a3883a add r17,r17,r6
  15756. 4e50c: 1945883a add r2,r3,r5
  15757. 4e510: 898d803a cmpltu r6,r17,r6
  15758. 4e514: 3087883a add r3,r6,r2
  15759. 4e518: 4821883a mov r16,r9
  15760. 4e51c: 003f0506 br 4e134 <__alt_data_end+0xfffdc134>
  15761. 4e520: 10002b1e bne r2,zero,4e5d0 <__subdf3+0x71c>
  15762. 4e524: 2984b03a or r2,r5,r6
  15763. 4e528: 10008026 beq r2,zero,4e72c <__subdf3+0x878>
  15764. 4e52c: 2807883a mov r3,r5
  15765. 4e530: 3023883a mov r17,r6
  15766. 4e534: 3825883a mov r18,r7
  15767. 4e538: 0401ffc4 movi r16,2047
  15768. 4e53c: 003e7e06 br 4df38 <__alt_data_end+0xfffdbf38>
  15769. 4e540: 3809883a mov r4,r7
  15770. 4e544: 0011883a mov r8,zero
  15771. 4e548: 0005883a mov r2,zero
  15772. 4e54c: 003ee306 br 4e0dc <__alt_data_end+0xfffdc0dc>
  15773. 4e550: 1c62b03a or r17,r3,r17
  15774. 4e554: 8822c03a cmpne r17,r17,zero
  15775. 4e558: 0005883a mov r2,zero
  15776. 4e55c: 003f8906 br 4e384 <__alt_data_end+0xfffdc384>
  15777. 4e560: 3809883a mov r4,r7
  15778. 4e564: 4821883a mov r16,r9
  15779. 4e568: 0011883a mov r8,zero
  15780. 4e56c: 0005883a mov r2,zero
  15781. 4e570: 003eda06 br 4e0dc <__alt_data_end+0xfffdc0dc>
  15782. 4e574: 0101ffc4 movi r4,2047
  15783. 4e578: 49003b26 beq r9,r4,4e668 <__subdf3+0x7b4>
  15784. 4e57c: 0085c83a sub r2,zero,r2
  15785. 4e580: 18c02034 orhi r3,r3,128
  15786. 4e584: 01000e04 movi r4,56
  15787. 4e588: 20806e16 blt r4,r2,4e744 <__subdf3+0x890>
  15788. 4e58c: 010007c4 movi r4,31
  15789. 4e590: 20807716 blt r4,r2,4e770 <__subdf3+0x8bc>
  15790. 4e594: 01000804 movi r4,32
  15791. 4e598: 2089c83a sub r4,r4,r2
  15792. 4e59c: 1914983a sll r10,r3,r4
  15793. 4e5a0: 8890d83a srl r8,r17,r2
  15794. 4e5a4: 8908983a sll r4,r17,r4
  15795. 4e5a8: 1884d83a srl r2,r3,r2
  15796. 4e5ac: 5222b03a or r17,r10,r8
  15797. 4e5b0: 2006c03a cmpne r3,r4,zero
  15798. 4e5b4: 88e2b03a or r17,r17,r3
  15799. 4e5b8: 89a3883a add r17,r17,r6
  15800. 4e5bc: 1145883a add r2,r2,r5
  15801. 4e5c0: 898d803a cmpltu r6,r17,r6
  15802. 4e5c4: 3087883a add r3,r6,r2
  15803. 4e5c8: 4821883a mov r16,r9
  15804. 4e5cc: 003ed906 br 4e134 <__alt_data_end+0xfffdc134>
  15805. 4e5d0: 2984b03a or r2,r5,r6
  15806. 4e5d4: 10004226 beq r2,zero,4e6e0 <__subdf3+0x82c>
  15807. 4e5d8: 1808d0fa srli r4,r3,3
  15808. 4e5dc: 8822d0fa srli r17,r17,3
  15809. 4e5e0: 1806977a slli r3,r3,29
  15810. 4e5e4: 2080022c andhi r2,r4,8
  15811. 4e5e8: 1c62b03a or r17,r3,r17
  15812. 4e5ec: 10000826 beq r2,zero,4e610 <__subdf3+0x75c>
  15813. 4e5f0: 2812d0fa srli r9,r5,3
  15814. 4e5f4: 4880022c andhi r2,r9,8
  15815. 4e5f8: 1000051e bne r2,zero,4e610 <__subdf3+0x75c>
  15816. 4e5fc: 300cd0fa srli r6,r6,3
  15817. 4e600: 2804977a slli r2,r5,29
  15818. 4e604: 4809883a mov r4,r9
  15819. 4e608: 3825883a mov r18,r7
  15820. 4e60c: 11a2b03a or r17,r2,r6
  15821. 4e610: 8806d77a srli r3,r17,29
  15822. 4e614: 200890fa slli r4,r4,3
  15823. 4e618: 882290fa slli r17,r17,3
  15824. 4e61c: 0401ffc4 movi r16,2047
  15825. 4e620: 1906b03a or r3,r3,r4
  15826. 4e624: 003e4406 br 4df38 <__alt_data_end+0xfffdbf38>
  15827. 4e628: 2984b03a or r2,r5,r6
  15828. 4e62c: 103e4226 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38>
  15829. 4e630: 8989c83a sub r4,r17,r6
  15830. 4e634: 8911803a cmpltu r8,r17,r4
  15831. 4e638: 1945c83a sub r2,r3,r5
  15832. 4e63c: 1205c83a sub r2,r2,r8
  15833. 4e640: 1200202c andhi r8,r2,128
  15834. 4e644: 403e9a26 beq r8,zero,4e0b0 <__alt_data_end+0xfffdc0b0>
  15835. 4e648: 3463c83a sub r17,r6,r17
  15836. 4e64c: 28c5c83a sub r2,r5,r3
  15837. 4e650: 344d803a cmpltu r6,r6,r17
  15838. 4e654: 1187c83a sub r3,r2,r6
  15839. 4e658: 3825883a mov r18,r7
  15840. 4e65c: 003e3606 br 4df38 <__alt_data_end+0xfffdbf38>
  15841. 4e660: 0101ffc4 movi r4,2047
  15842. 4e664: 493fc71e bne r9,r4,4e584 <__alt_data_end+0xfffdc584>
  15843. 4e668: 2807883a mov r3,r5
  15844. 4e66c: 3023883a mov r17,r6
  15845. 4e670: 4821883a mov r16,r9
  15846. 4e674: 003e3006 br 4df38 <__alt_data_end+0xfffdbf38>
  15847. 4e678: 10003626 beq r2,zero,4e754 <__subdf3+0x8a0>
  15848. 4e67c: 2984b03a or r2,r5,r6
  15849. 4e680: 10001726 beq r2,zero,4e6e0 <__subdf3+0x82c>
  15850. 4e684: 1808d0fa srli r4,r3,3
  15851. 4e688: 8822d0fa srli r17,r17,3
  15852. 4e68c: 1806977a slli r3,r3,29
  15853. 4e690: 2080022c andhi r2,r4,8
  15854. 4e694: 1c62b03a or r17,r3,r17
  15855. 4e698: 10000726 beq r2,zero,4e6b8 <__subdf3+0x804>
  15856. 4e69c: 2812d0fa srli r9,r5,3
  15857. 4e6a0: 4880022c andhi r2,r9,8
  15858. 4e6a4: 1000041e bne r2,zero,4e6b8 <__subdf3+0x804>
  15859. 4e6a8: 300cd0fa srli r6,r6,3
  15860. 4e6ac: 2804977a slli r2,r5,29
  15861. 4e6b0: 4809883a mov r4,r9
  15862. 4e6b4: 11a2b03a or r17,r2,r6
  15863. 4e6b8: 8806d77a srli r3,r17,29
  15864. 4e6bc: 200890fa slli r4,r4,3
  15865. 4e6c0: 882290fa slli r17,r17,3
  15866. 4e6c4: 3825883a mov r18,r7
  15867. 4e6c8: 1906b03a or r3,r3,r4
  15868. 4e6cc: 0401ffc4 movi r16,2047
  15869. 4e6d0: 003e1906 br 4df38 <__alt_data_end+0xfffdbf38>
  15870. 4e6d4: 000b883a mov r5,zero
  15871. 4e6d8: 0005883a mov r2,zero
  15872. 4e6dc: 003e2e06 br 4df98 <__alt_data_end+0xfffdbf98>
  15873. 4e6e0: 0401ffc4 movi r16,2047
  15874. 4e6e4: 003e1406 br 4df38 <__alt_data_end+0xfffdbf38>
  15875. 4e6e8: 0005883a mov r2,zero
  15876. 4e6ec: 003f7506 br 4e4c4 <__alt_data_end+0xfffdc4c4>
  15877. 4e6f0: 0005883a mov r2,zero
  15878. 4e6f4: 0009883a mov r4,zero
  15879. 4e6f8: 003e7806 br 4e0dc <__alt_data_end+0xfffdc0dc>
  15880. 4e6fc: 123ff804 addi r8,r2,-32
  15881. 4e700: 01000804 movi r4,32
  15882. 4e704: 1a10d83a srl r8,r3,r8
  15883. 4e708: 11002526 beq r2,r4,4e7a0 <__subdf3+0x8ec>
  15884. 4e70c: 01001004 movi r4,64
  15885. 4e710: 2085c83a sub r2,r4,r2
  15886. 4e714: 1884983a sll r2,r3,r2
  15887. 4e718: 1444b03a or r2,r2,r17
  15888. 4e71c: 1004c03a cmpne r2,r2,zero
  15889. 4e720: 40a2b03a or r17,r8,r2
  15890. 4e724: 0005883a mov r2,zero
  15891. 4e728: 003f1606 br 4e384 <__alt_data_end+0xfffdc384>
  15892. 4e72c: 02000434 movhi r8,16
  15893. 4e730: 0009883a mov r4,zero
  15894. 4e734: 423fffc4 addi r8,r8,-1
  15895. 4e738: 00bfffc4 movi r2,-1
  15896. 4e73c: 0401ffc4 movi r16,2047
  15897. 4e740: 003e6606 br 4e0dc <__alt_data_end+0xfffdc0dc>
  15898. 4e744: 1c62b03a or r17,r3,r17
  15899. 4e748: 8822c03a cmpne r17,r17,zero
  15900. 4e74c: 0005883a mov r2,zero
  15901. 4e750: 003f9906 br 4e5b8 <__alt_data_end+0xfffdc5b8>
  15902. 4e754: 2807883a mov r3,r5
  15903. 4e758: 3023883a mov r17,r6
  15904. 4e75c: 0401ffc4 movi r16,2047
  15905. 4e760: 003df506 br 4df38 <__alt_data_end+0xfffdbf38>
  15906. 4e764: 2807883a mov r3,r5
  15907. 4e768: 3023883a mov r17,r6
  15908. 4e76c: 003df206 br 4df38 <__alt_data_end+0xfffdbf38>
  15909. 4e770: 123ff804 addi r8,r2,-32
  15910. 4e774: 01000804 movi r4,32
  15911. 4e778: 1a10d83a srl r8,r3,r8
  15912. 4e77c: 11000a26 beq r2,r4,4e7a8 <__subdf3+0x8f4>
  15913. 4e780: 01001004 movi r4,64
  15914. 4e784: 2085c83a sub r2,r4,r2
  15915. 4e788: 1884983a sll r2,r3,r2
  15916. 4e78c: 1444b03a or r2,r2,r17
  15917. 4e790: 1004c03a cmpne r2,r2,zero
  15918. 4e794: 40a2b03a or r17,r8,r2
  15919. 4e798: 0005883a mov r2,zero
  15920. 4e79c: 003f8606 br 4e5b8 <__alt_data_end+0xfffdc5b8>
  15921. 4e7a0: 0005883a mov r2,zero
  15922. 4e7a4: 003fdc06 br 4e718 <__alt_data_end+0xfffdc718>
  15923. 4e7a8: 0005883a mov r2,zero
  15924. 4e7ac: 003ff706 br 4e78c <__alt_data_end+0xfffdc78c>
  15925. 0004e7b0 <__floatunsidf>:
  15926. 4e7b0: defffe04 addi sp,sp,-8
  15927. 4e7b4: dc000015 stw r16,0(sp)
  15928. 4e7b8: dfc00115 stw ra,4(sp)
  15929. 4e7bc: 2021883a mov r16,r4
  15930. 4e7c0: 20002226 beq r4,zero,4e84c <__floatunsidf+0x9c>
  15931. 4e7c4: 0041efc0 call 41efc <__clzsi2>
  15932. 4e7c8: 01010784 movi r4,1054
  15933. 4e7cc: 2089c83a sub r4,r4,r2
  15934. 4e7d0: 01810cc4 movi r6,1075
  15935. 4e7d4: 310dc83a sub r6,r6,r4
  15936. 4e7d8: 00c007c4 movi r3,31
  15937. 4e7dc: 1980120e bge r3,r6,4e828 <__floatunsidf+0x78>
  15938. 4e7e0: 00c104c4 movi r3,1043
  15939. 4e7e4: 1907c83a sub r3,r3,r4
  15940. 4e7e8: 80ca983a sll r5,r16,r3
  15941. 4e7ec: 00800434 movhi r2,16
  15942. 4e7f0: 10bfffc4 addi r2,r2,-1
  15943. 4e7f4: 2101ffcc andi r4,r4,2047
  15944. 4e7f8: 0021883a mov r16,zero
  15945. 4e7fc: 288a703a and r5,r5,r2
  15946. 4e800: 2008953a slli r4,r4,20
  15947. 4e804: 00c00434 movhi r3,16
  15948. 4e808: 18ffffc4 addi r3,r3,-1
  15949. 4e80c: 28c6703a and r3,r5,r3
  15950. 4e810: 8005883a mov r2,r16
  15951. 4e814: 1906b03a or r3,r3,r4
  15952. 4e818: dfc00117 ldw ra,4(sp)
  15953. 4e81c: dc000017 ldw r16,0(sp)
  15954. 4e820: dec00204 addi sp,sp,8
  15955. 4e824: f800283a ret
  15956. 4e828: 00c002c4 movi r3,11
  15957. 4e82c: 188bc83a sub r5,r3,r2
  15958. 4e830: 814ad83a srl r5,r16,r5
  15959. 4e834: 00c00434 movhi r3,16
  15960. 4e838: 18ffffc4 addi r3,r3,-1
  15961. 4e83c: 81a0983a sll r16,r16,r6
  15962. 4e840: 2101ffcc andi r4,r4,2047
  15963. 4e844: 28ca703a and r5,r5,r3
  15964. 4e848: 003fed06 br 4e800 <__alt_data_end+0xfffdc800>
  15965. 4e84c: 0009883a mov r4,zero
  15966. 4e850: 000b883a mov r5,zero
  15967. 4e854: 003fea06 br 4e800 <__alt_data_end+0xfffdc800>
  15968. 0004e858 <alt_get_errno>:
  15969. #undef errno
  15970. extern int errno;
  15971. static ALT_INLINE int* alt_get_errno(void)
  15972. {
  15973. 4e858: defffe04 addi sp,sp,-8
  15974. 4e85c: dfc00115 stw ra,4(sp)
  15975. 4e860: df000015 stw fp,0(sp)
  15976. 4e864: d839883a mov fp,sp
  15977. return ((alt_errno) ? alt_errno() : &errno);
  15978. 4e868: d0a00b17 ldw r2,-32724(gp)
  15979. 4e86c: 10000326 beq r2,zero,4e87c <alt_get_errno+0x24>
  15980. 4e870: d0a00b17 ldw r2,-32724(gp)
  15981. 4e874: 103ee83a callr r2
  15982. 4e878: 00000106 br 4e880 <alt_get_errno+0x28>
  15983. 4e87c: d0a72104 addi r2,gp,-25468
  15984. }
  15985. 4e880: e037883a mov sp,fp
  15986. 4e884: dfc00117 ldw ra,4(sp)
  15987. 4e888: df000017 ldw fp,0(sp)
  15988. 4e88c: dec00204 addi sp,sp,8
  15989. 4e890: f800283a ret
  15990. 0004e894 <close>:
  15991. *
  15992. * ALT_CLOSE is mapped onto the close() system call in alt_syscall.h
  15993. */
  15994. int ALT_CLOSE (int fildes)
  15995. {
  15996. 4e894: defffb04 addi sp,sp,-20
  15997. 4e898: dfc00415 stw ra,16(sp)
  15998. 4e89c: df000315 stw fp,12(sp)
  15999. 4e8a0: df000304 addi fp,sp,12
  16000. 4e8a4: e13fff15 stw r4,-4(fp)
  16001. * A common error case is that when the file descriptor was created, the call
  16002. * to open() failed resulting in a negative file descriptor. This is trapped
  16003. * below so that we don't try and process an invalid file descriptor.
  16004. */
  16005. fd = (fildes < 0) ? NULL : &alt_fd_list[fildes];
  16006. 4e8a8: e0bfff17 ldw r2,-4(fp)
  16007. 4e8ac: 10000816 blt r2,zero,4e8d0 <close+0x3c>
  16008. 4e8b0: 01400304 movi r5,12
  16009. 4e8b4: e13fff17 ldw r4,-4(fp)
  16010. 4e8b8: 004c9f80 call 4c9f8 <__mulsi3>
  16011. 4e8bc: 1007883a mov r3,r2
  16012. 4e8c0: 00800174 movhi r2,5
  16013. 4e8c4: 108bca04 addi r2,r2,12072
  16014. 4e8c8: 1885883a add r2,r3,r2
  16015. 4e8cc: 00000106 br 4e8d4 <close+0x40>
  16016. 4e8d0: 0005883a mov r2,zero
  16017. 4e8d4: e0bffd15 stw r2,-12(fp)
  16018. if (fd)
  16019. 4e8d8: e0bffd17 ldw r2,-12(fp)
  16020. 4e8dc: 10001926 beq r2,zero,4e944 <close+0xb0>
  16021. /*
  16022. * If the associated file system/device has a close function, call it so
  16023. * that any necessary cleanup code can run.
  16024. */
  16025. rval = (fd->dev->close) ? fd->dev->close(fd) : 0;
  16026. 4e8e0: e0bffd17 ldw r2,-12(fp)
  16027. 4e8e4: 10800017 ldw r2,0(r2)
  16028. 4e8e8: 10800417 ldw r2,16(r2)
  16029. 4e8ec: 10000626 beq r2,zero,4e908 <close+0x74>
  16030. 4e8f0: e0bffd17 ldw r2,-12(fp)
  16031. 4e8f4: 10800017 ldw r2,0(r2)
  16032. 4e8f8: 10800417 ldw r2,16(r2)
  16033. 4e8fc: e13ffd17 ldw r4,-12(fp)
  16034. 4e900: 103ee83a callr r2
  16035. 4e904: 00000106 br 4e90c <close+0x78>
  16036. 4e908: 0005883a mov r2,zero
  16037. 4e90c: e0bffe15 stw r2,-8(fp)
  16038. /* Free the file descriptor structure and return. */
  16039. alt_release_fd (fildes);
  16040. 4e910: e13fff17 ldw r4,-4(fp)
  16041. 4e914: 004ef7c0 call 4ef7c <alt_release_fd>
  16042. if (rval < 0)
  16043. 4e918: e0bffe17 ldw r2,-8(fp)
  16044. 4e91c: 1000070e bge r2,zero,4e93c <close+0xa8>
  16045. {
  16046. ALT_ERRNO = -rval;
  16047. 4e920: 004e8580 call 4e858 <alt_get_errno>
  16048. 4e924: 1007883a mov r3,r2
  16049. 4e928: e0bffe17 ldw r2,-8(fp)
  16050. 4e92c: 0085c83a sub r2,zero,r2
  16051. 4e930: 18800015 stw r2,0(r3)
  16052. return -1;
  16053. 4e934: 00bfffc4 movi r2,-1
  16054. 4e938: 00000706 br 4e958 <close+0xc4>
  16055. }
  16056. return 0;
  16057. 4e93c: 0005883a mov r2,zero
  16058. 4e940: 00000506 br 4e958 <close+0xc4>
  16059. }
  16060. else
  16061. {
  16062. ALT_ERRNO = EBADFD;
  16063. 4e944: 004e8580 call 4e858 <alt_get_errno>
  16064. 4e948: 1007883a mov r3,r2
  16065. 4e94c: 00801444 movi r2,81
  16066. 4e950: 18800015 stw r2,0(r3)
  16067. return -1;
  16068. 4e954: 00bfffc4 movi r2,-1
  16069. }
  16070. }
  16071. 4e958: e037883a mov sp,fp
  16072. 4e95c: dfc00117 ldw ra,4(sp)
  16073. 4e960: df000017 ldw fp,0(sp)
  16074. 4e964: dec00204 addi sp,sp,8
  16075. 4e968: f800283a ret
  16076. 0004e96c <alt_dev_null_write>:
  16077. * by the alt_dev_null device. It simple discards all data passed to it, and
  16078. * indicates that the data has been successfully transmitted.
  16079. */
  16080. static int alt_dev_null_write (alt_fd* fd, const char* ptr, int len)
  16081. {
  16082. 4e96c: defffc04 addi sp,sp,-16
  16083. 4e970: df000315 stw fp,12(sp)
  16084. 4e974: df000304 addi fp,sp,12
  16085. 4e978: e13ffd15 stw r4,-12(fp)
  16086. 4e97c: e17ffe15 stw r5,-8(fp)
  16087. 4e980: e1bfff15 stw r6,-4(fp)
  16088. return len;
  16089. 4e984: e0bfff17 ldw r2,-4(fp)
  16090. }
  16091. 4e988: e037883a mov sp,fp
  16092. 4e98c: df000017 ldw fp,0(sp)
  16093. 4e990: dec00104 addi sp,sp,4
  16094. 4e994: f800283a ret
  16095. 0004e998 <alt_get_errno>:
  16096. #undef errno
  16097. extern int errno;
  16098. static ALT_INLINE int* alt_get_errno(void)
  16099. {
  16100. 4e998: defffe04 addi sp,sp,-8
  16101. 4e99c: dfc00115 stw ra,4(sp)
  16102. 4e9a0: df000015 stw fp,0(sp)
  16103. 4e9a4: d839883a mov fp,sp
  16104. return ((alt_errno) ? alt_errno() : &errno);
  16105. 4e9a8: d0a00b17 ldw r2,-32724(gp)
  16106. 4e9ac: 10000326 beq r2,zero,4e9bc <alt_get_errno+0x24>
  16107. 4e9b0: d0a00b17 ldw r2,-32724(gp)
  16108. 4e9b4: 103ee83a callr r2
  16109. 4e9b8: 00000106 br 4e9c0 <alt_get_errno+0x28>
  16110. 4e9bc: d0a72104 addi r2,gp,-25468
  16111. }
  16112. 4e9c0: e037883a mov sp,fp
  16113. 4e9c4: dfc00117 ldw ra,4(sp)
  16114. 4e9c8: df000017 ldw fp,0(sp)
  16115. 4e9cc: dec00204 addi sp,sp,8
  16116. 4e9d0: f800283a ret
  16117. 0004e9d4 <fstat>:
  16118. }
  16119. #else /* !ALT_USE_DIRECT_DRIVERS */
  16120. int ALT_FSTAT (int file, struct stat *st)
  16121. {
  16122. 4e9d4: defffb04 addi sp,sp,-20
  16123. 4e9d8: dfc00415 stw ra,16(sp)
  16124. 4e9dc: df000315 stw fp,12(sp)
  16125. 4e9e0: df000304 addi fp,sp,12
  16126. 4e9e4: e13ffe15 stw r4,-8(fp)
  16127. 4e9e8: e17fff15 stw r5,-4(fp)
  16128. * A common error case is that when the file descriptor was created, the call
  16129. * to open() failed resulting in a negative file descriptor. This is trapped
  16130. * below so that we don't try and process an invalid file descriptor.
  16131. */
  16132. fd = (file < 0) ? NULL : &alt_fd_list[file];
  16133. 4e9ec: e0bffe17 ldw r2,-8(fp)
  16134. 4e9f0: 10000816 blt r2,zero,4ea14 <fstat+0x40>
  16135. 4e9f4: 01400304 movi r5,12
  16136. 4e9f8: e13ffe17 ldw r4,-8(fp)
  16137. 4e9fc: 004c9f80 call 4c9f8 <__mulsi3>
  16138. 4ea00: 1007883a mov r3,r2
  16139. 4ea04: 00800174 movhi r2,5
  16140. 4ea08: 108bca04 addi r2,r2,12072
  16141. 4ea0c: 1885883a add r2,r3,r2
  16142. 4ea10: 00000106 br 4ea18 <fstat+0x44>
  16143. 4ea14: 0005883a mov r2,zero
  16144. 4ea18: e0bffd15 stw r2,-12(fp)
  16145. if (fd)
  16146. 4ea1c: e0bffd17 ldw r2,-12(fp)
  16147. 4ea20: 10001026 beq r2,zero,4ea64 <fstat+0x90>
  16148. {
  16149. /* Call the drivers fstat() function to fill out the "st" structure. */
  16150. if (fd->dev->fstat)
  16151. 4ea24: e0bffd17 ldw r2,-12(fp)
  16152. 4ea28: 10800017 ldw r2,0(r2)
  16153. 4ea2c: 10800817 ldw r2,32(r2)
  16154. 4ea30: 10000726 beq r2,zero,4ea50 <fstat+0x7c>
  16155. {
  16156. return fd->dev->fstat(fd, st);
  16157. 4ea34: e0bffd17 ldw r2,-12(fp)
  16158. 4ea38: 10800017 ldw r2,0(r2)
  16159. 4ea3c: 10800817 ldw r2,32(r2)
  16160. 4ea40: e17fff17 ldw r5,-4(fp)
  16161. 4ea44: e13ffd17 ldw r4,-12(fp)
  16162. 4ea48: 103ee83a callr r2
  16163. 4ea4c: 00000a06 br 4ea78 <fstat+0xa4>
  16164. * device.
  16165. */
  16166. else
  16167. {
  16168. st->st_mode = _IFCHR;
  16169. 4ea50: e0bfff17 ldw r2,-4(fp)
  16170. 4ea54: 00c80004 movi r3,8192
  16171. 4ea58: 10c00115 stw r3,4(r2)
  16172. return 0;
  16173. 4ea5c: 0005883a mov r2,zero
  16174. 4ea60: 00000506 br 4ea78 <fstat+0xa4>
  16175. }
  16176. }
  16177. else
  16178. {
  16179. ALT_ERRNO = EBADFD;
  16180. 4ea64: 004e9980 call 4e998 <alt_get_errno>
  16181. 4ea68: 1007883a mov r3,r2
  16182. 4ea6c: 00801444 movi r2,81
  16183. 4ea70: 18800015 stw r2,0(r3)
  16184. return -1;
  16185. 4ea74: 00bfffc4 movi r2,-1
  16186. }
  16187. }
  16188. 4ea78: e037883a mov sp,fp
  16189. 4ea7c: dfc00117 ldw ra,4(sp)
  16190. 4ea80: df000017 ldw fp,0(sp)
  16191. 4ea84: dec00204 addi sp,sp,8
  16192. 4ea88: f800283a ret
  16193. 0004ea8c <alt_get_errno>:
  16194. #undef errno
  16195. extern int errno;
  16196. static ALT_INLINE int* alt_get_errno(void)
  16197. {
  16198. 4ea8c: defffe04 addi sp,sp,-8
  16199. 4ea90: dfc00115 stw ra,4(sp)
  16200. 4ea94: df000015 stw fp,0(sp)
  16201. 4ea98: d839883a mov fp,sp
  16202. return ((alt_errno) ? alt_errno() : &errno);
  16203. 4ea9c: d0a00b17 ldw r2,-32724(gp)
  16204. 4eaa0: 10000326 beq r2,zero,4eab0 <alt_get_errno+0x24>
  16205. 4eaa4: d0a00b17 ldw r2,-32724(gp)
  16206. 4eaa8: 103ee83a callr r2
  16207. 4eaac: 00000106 br 4eab4 <alt_get_errno+0x28>
  16208. 4eab0: d0a72104 addi r2,gp,-25468
  16209. }
  16210. 4eab4: e037883a mov sp,fp
  16211. 4eab8: dfc00117 ldw ra,4(sp)
  16212. 4eabc: df000017 ldw fp,0(sp)
  16213. 4eac0: dec00204 addi sp,sp,8
  16214. 4eac4: f800283a ret
  16215. 0004eac8 <isatty>:
  16216. *
  16217. * ALT_ISATTY is mapped onto the isatty() system call in alt_syscall.h
  16218. */
  16219. int ALT_ISATTY (int file)
  16220. {
  16221. 4eac8: deffed04 addi sp,sp,-76
  16222. 4eacc: dfc01215 stw ra,72(sp)
  16223. 4ead0: df001115 stw fp,68(sp)
  16224. 4ead4: df001104 addi fp,sp,68
  16225. 4ead8: e13fff15 stw r4,-4(fp)
  16226. * A common error case is that when the file descriptor was created, the call
  16227. * to open() failed resulting in a negative file descriptor. This is trapped
  16228. * below so that we don't try and process an invalid file descriptor.
  16229. */
  16230. fd = (file < 0) ? NULL : &alt_fd_list[file];
  16231. 4eadc: e0bfff17 ldw r2,-4(fp)
  16232. 4eae0: 10000816 blt r2,zero,4eb04 <isatty+0x3c>
  16233. 4eae4: 01400304 movi r5,12
  16234. 4eae8: e13fff17 ldw r4,-4(fp)
  16235. 4eaec: 004c9f80 call 4c9f8 <__mulsi3>
  16236. 4eaf0: 1007883a mov r3,r2
  16237. 4eaf4: 00800174 movhi r2,5
  16238. 4eaf8: 108bca04 addi r2,r2,12072
  16239. 4eafc: 1885883a add r2,r3,r2
  16240. 4eb00: 00000106 br 4eb08 <isatty+0x40>
  16241. 4eb04: 0005883a mov r2,zero
  16242. 4eb08: e0bfef15 stw r2,-68(fp)
  16243. if (fd)
  16244. 4eb0c: e0bfef17 ldw r2,-68(fp)
  16245. 4eb10: 10000e26 beq r2,zero,4eb4c <isatty+0x84>
  16246. /*
  16247. * If a device driver does not provide an fstat() function, then it is
  16248. * treated as a terminal device by default.
  16249. */
  16250. if (!fd->dev->fstat)
  16251. 4eb14: e0bfef17 ldw r2,-68(fp)
  16252. 4eb18: 10800017 ldw r2,0(r2)
  16253. 4eb1c: 10800817 ldw r2,32(r2)
  16254. 4eb20: 1000021e bne r2,zero,4eb2c <isatty+0x64>
  16255. {
  16256. return 1;
  16257. 4eb24: 00800044 movi r2,1
  16258. 4eb28: 00000d06 br 4eb60 <isatty+0x98>
  16259. * this is called so that the device can identify itself.
  16260. */
  16261. else
  16262. {
  16263. fstat (file, &stat);
  16264. 4eb2c: e0bff004 addi r2,fp,-64
  16265. 4eb30: 100b883a mov r5,r2
  16266. 4eb34: e13fff17 ldw r4,-4(fp)
  16267. 4eb38: 004e9d40 call 4e9d4 <fstat>
  16268. return (stat.st_mode == _IFCHR) ? 1 : 0;
  16269. 4eb3c: e0bff117 ldw r2,-60(fp)
  16270. 4eb40: 10880020 cmpeqi r2,r2,8192
  16271. 4eb44: 10803fcc andi r2,r2,255
  16272. 4eb48: 00000506 br 4eb60 <isatty+0x98>
  16273. }
  16274. }
  16275. else
  16276. {
  16277. ALT_ERRNO = EBADFD;
  16278. 4eb4c: 004ea8c0 call 4ea8c <alt_get_errno>
  16279. 4eb50: 1007883a mov r3,r2
  16280. 4eb54: 00801444 movi r2,81
  16281. 4eb58: 18800015 stw r2,0(r3)
  16282. return 0;
  16283. 4eb5c: 0005883a mov r2,zero
  16284. }
  16285. }
  16286. 4eb60: e037883a mov sp,fp
  16287. 4eb64: dfc00117 ldw ra,4(sp)
  16288. 4eb68: df000017 ldw fp,0(sp)
  16289. 4eb6c: dec00204 addi sp,sp,8
  16290. 4eb70: f800283a ret
  16291. 0004eb74 <alt_load_section>:
  16292. */
  16293. static void ALT_INLINE alt_load_section (alt_u32* from,
  16294. alt_u32* to,
  16295. alt_u32* end)
  16296. {
  16297. 4eb74: defffc04 addi sp,sp,-16
  16298. 4eb78: df000315 stw fp,12(sp)
  16299. 4eb7c: df000304 addi fp,sp,12
  16300. 4eb80: e13ffd15 stw r4,-12(fp)
  16301. 4eb84: e17ffe15 stw r5,-8(fp)
  16302. 4eb88: e1bfff15 stw r6,-4(fp)
  16303. if (to != from)
  16304. 4eb8c: e0fffe17 ldw r3,-8(fp)
  16305. 4eb90: e0bffd17 ldw r2,-12(fp)
  16306. 4eb94: 18800c26 beq r3,r2,4ebc8 <alt_load_section+0x54>
  16307. {
  16308. while( to != end )
  16309. 4eb98: 00000806 br 4ebbc <alt_load_section+0x48>
  16310. {
  16311. *to++ = *from++;
  16312. 4eb9c: e0bffe17 ldw r2,-8(fp)
  16313. 4eba0: 10c00104 addi r3,r2,4
  16314. 4eba4: e0fffe15 stw r3,-8(fp)
  16315. 4eba8: e0fffd17 ldw r3,-12(fp)
  16316. 4ebac: 19000104 addi r4,r3,4
  16317. 4ebb0: e13ffd15 stw r4,-12(fp)
  16318. 4ebb4: 18c00017 ldw r3,0(r3)
  16319. 4ebb8: 10c00015 stw r3,0(r2)
  16320. alt_u32* to,
  16321. alt_u32* end)
  16322. {
  16323. if (to != from)
  16324. {
  16325. while( to != end )
  16326. 4ebbc: e0fffe17 ldw r3,-8(fp)
  16327. 4ebc0: e0bfff17 ldw r2,-4(fp)
  16328. 4ebc4: 18bff51e bne r3,r2,4eb9c <__alt_data_end+0xfffdcb9c>
  16329. {
  16330. *to++ = *from++;
  16331. }
  16332. }
  16333. }
  16334. 4ebc8: 0001883a nop
  16335. 4ebcc: e037883a mov sp,fp
  16336. 4ebd0: df000017 ldw fp,0(sp)
  16337. 4ebd4: dec00104 addi sp,sp,4
  16338. 4ebd8: f800283a ret
  16339. 0004ebdc <alt_load>:
  16340. * there is no bootloader, so this application is responsible for loading to
  16341. * RAM any sections that are required.
  16342. */
  16343. void alt_load (void)
  16344. {
  16345. 4ebdc: defffe04 addi sp,sp,-8
  16346. 4ebe0: dfc00115 stw ra,4(sp)
  16347. 4ebe4: df000015 stw fp,0(sp)
  16348. 4ebe8: d839883a mov fp,sp
  16349. /*
  16350. * Copy the .rwdata section.
  16351. */
  16352. alt_load_section (&__flash_rwdata_start,
  16353. 4ebec: 01800174 movhi r6,5
  16354. 4ebf0: 31909c04 addi r6,r6,17008
  16355. 4ebf4: 01400174 movhi r5,5
  16356. 4ebf8: 29499704 addi r5,r5,9820
  16357. 4ebfc: 01000174 movhi r4,5
  16358. 4ec00: 21109c04 addi r4,r4,17008
  16359. 4ec04: 004eb740 call 4eb74 <alt_load_section>
  16360. /*
  16361. * Copy the exception handler.
  16362. */
  16363. alt_load_section (&__flash_exceptions_start,
  16364. 4ec08: 01800134 movhi r6,4
  16365. 4ec0c: 31808c04 addi r6,r6,560
  16366. 4ec10: 01400134 movhi r5,4
  16367. 4ec14: 29400804 addi r5,r5,32
  16368. 4ec18: 01000134 movhi r4,4
  16369. 4ec1c: 21000804 addi r4,r4,32
  16370. 4ec20: 004eb740 call 4eb74 <alt_load_section>
  16371. /*
  16372. * Copy the .rodata section.
  16373. */
  16374. alt_load_section (&__flash_rodata_start,
  16375. 4ec24: 01800174 movhi r6,5
  16376. 4ec28: 31899704 addi r6,r6,9820
  16377. 4ec2c: 01400174 movhi r5,5
  16378. 4ec30: 29480e04 addi r5,r5,8248
  16379. 4ec34: 01000174 movhi r4,5
  16380. 4ec38: 21080e04 addi r4,r4,8248
  16381. 4ec3c: 004eb740 call 4eb74 <alt_load_section>
  16382. /*
  16383. * Now ensure that the caches are in synch.
  16384. */
  16385. alt_dcache_flush_all();
  16386. 4ec40: 0050df80 call 50df8 <alt_dcache_flush_all>
  16387. alt_icache_flush_all();
  16388. 4ec44: 0050fb80 call 50fb8 <alt_icache_flush_all>
  16389. }
  16390. 4ec48: 0001883a nop
  16391. 4ec4c: e037883a mov sp,fp
  16392. 4ec50: dfc00117 ldw ra,4(sp)
  16393. 4ec54: df000017 ldw fp,0(sp)
  16394. 4ec58: dec00204 addi sp,sp,8
  16395. 4ec5c: f800283a ret
  16396. 0004ec60 <alt_get_errno>:
  16397. #undef errno
  16398. extern int errno;
  16399. static ALT_INLINE int* alt_get_errno(void)
  16400. {
  16401. 4ec60: defffe04 addi sp,sp,-8
  16402. 4ec64: dfc00115 stw ra,4(sp)
  16403. 4ec68: df000015 stw fp,0(sp)
  16404. 4ec6c: d839883a mov fp,sp
  16405. return ((alt_errno) ? alt_errno() : &errno);
  16406. 4ec70: d0a00b17 ldw r2,-32724(gp)
  16407. 4ec74: 10000326 beq r2,zero,4ec84 <alt_get_errno+0x24>
  16408. 4ec78: d0a00b17 ldw r2,-32724(gp)
  16409. 4ec7c: 103ee83a callr r2
  16410. 4ec80: 00000106 br 4ec88 <alt_get_errno+0x28>
  16411. 4ec84: d0a72104 addi r2,gp,-25468
  16412. }
  16413. 4ec88: e037883a mov sp,fp
  16414. 4ec8c: dfc00117 ldw ra,4(sp)
  16415. 4ec90: df000017 ldw fp,0(sp)
  16416. 4ec94: dec00204 addi sp,sp,8
  16417. 4ec98: f800283a ret
  16418. 0004ec9c <lseek>:
  16419. * ALT_LSEEK is mapped onto the lseek() system call in alt_syscall.h
  16420. *
  16421. */
  16422. off_t ALT_LSEEK (int file, off_t ptr, int dir)
  16423. {
  16424. 4ec9c: defff904 addi sp,sp,-28
  16425. 4eca0: dfc00615 stw ra,24(sp)
  16426. 4eca4: df000515 stw fp,20(sp)
  16427. 4eca8: df000504 addi fp,sp,20
  16428. 4ecac: e13ffd15 stw r4,-12(fp)
  16429. 4ecb0: e17ffe15 stw r5,-8(fp)
  16430. 4ecb4: e1bfff15 stw r6,-4(fp)
  16431. alt_fd* fd;
  16432. off_t rc = 0;
  16433. 4ecb8: e03ffb15 stw zero,-20(fp)
  16434. * A common error case is that when the file descriptor was created, the call
  16435. * to open() failed resulting in a negative file descriptor. This is trapped
  16436. * below so that we don't try and process an invalid file descriptor.
  16437. */
  16438. fd = (file < 0) ? NULL : &alt_fd_list[file];
  16439. 4ecbc: e0bffd17 ldw r2,-12(fp)
  16440. 4ecc0: 10000816 blt r2,zero,4ece4 <lseek+0x48>
  16441. 4ecc4: 01400304 movi r5,12
  16442. 4ecc8: e13ffd17 ldw r4,-12(fp)
  16443. 4eccc: 004c9f80 call 4c9f8 <__mulsi3>
  16444. 4ecd0: 1007883a mov r3,r2
  16445. 4ecd4: 00800174 movhi r2,5
  16446. 4ecd8: 108bca04 addi r2,r2,12072
  16447. 4ecdc: 1885883a add r2,r3,r2
  16448. 4ece0: 00000106 br 4ece8 <lseek+0x4c>
  16449. 4ece4: 0005883a mov r2,zero
  16450. 4ece8: e0bffc15 stw r2,-16(fp)
  16451. if (fd)
  16452. 4ecec: e0bffc17 ldw r2,-16(fp)
  16453. 4ecf0: 10001026 beq r2,zero,4ed34 <lseek+0x98>
  16454. /*
  16455. * If the device driver provides an implementation of the lseek() function,
  16456. * then call that to process the request.
  16457. */
  16458. if (fd->dev->lseek)
  16459. 4ecf4: e0bffc17 ldw r2,-16(fp)
  16460. 4ecf8: 10800017 ldw r2,0(r2)
  16461. 4ecfc: 10800717 ldw r2,28(r2)
  16462. 4ed00: 10000926 beq r2,zero,4ed28 <lseek+0x8c>
  16463. {
  16464. rc = fd->dev->lseek(fd, ptr, dir);
  16465. 4ed04: e0bffc17 ldw r2,-16(fp)
  16466. 4ed08: 10800017 ldw r2,0(r2)
  16467. 4ed0c: 10800717 ldw r2,28(r2)
  16468. 4ed10: e1bfff17 ldw r6,-4(fp)
  16469. 4ed14: e17ffe17 ldw r5,-8(fp)
  16470. 4ed18: e13ffc17 ldw r4,-16(fp)
  16471. 4ed1c: 103ee83a callr r2
  16472. 4ed20: e0bffb15 stw r2,-20(fp)
  16473. 4ed24: 00000506 br 4ed3c <lseek+0xa0>
  16474. * Otherwise return an error.
  16475. */
  16476. else
  16477. {
  16478. rc = -ENOTSUP;
  16479. 4ed28: 00bfde84 movi r2,-134
  16480. 4ed2c: e0bffb15 stw r2,-20(fp)
  16481. 4ed30: 00000206 br 4ed3c <lseek+0xa0>
  16482. }
  16483. }
  16484. else
  16485. {
  16486. rc = -EBADFD;
  16487. 4ed34: 00bfebc4 movi r2,-81
  16488. 4ed38: e0bffb15 stw r2,-20(fp)
  16489. }
  16490. if (rc < 0)
  16491. 4ed3c: e0bffb17 ldw r2,-20(fp)
  16492. 4ed40: 1000070e bge r2,zero,4ed60 <lseek+0xc4>
  16493. {
  16494. ALT_ERRNO = -rc;
  16495. 4ed44: 004ec600 call 4ec60 <alt_get_errno>
  16496. 4ed48: 1007883a mov r3,r2
  16497. 4ed4c: e0bffb17 ldw r2,-20(fp)
  16498. 4ed50: 0085c83a sub r2,zero,r2
  16499. 4ed54: 18800015 stw r2,0(r3)
  16500. rc = -1;
  16501. 4ed58: 00bfffc4 movi r2,-1
  16502. 4ed5c: e0bffb15 stw r2,-20(fp)
  16503. }
  16504. return rc;
  16505. 4ed60: e0bffb17 ldw r2,-20(fp)
  16506. }
  16507. 4ed64: e037883a mov sp,fp
  16508. 4ed68: dfc00117 ldw ra,4(sp)
  16509. 4ed6c: df000017 ldw fp,0(sp)
  16510. 4ed70: dec00204 addi sp,sp,8
  16511. 4ed74: f800283a ret
  16512. 0004ed78 <alt_main>:
  16513. * devices/filesystems/components in the system; and call the entry point for
  16514. * the users application, i.e. main().
  16515. */
  16516. void alt_main (void)
  16517. {
  16518. 4ed78: defffd04 addi sp,sp,-12
  16519. 4ed7c: dfc00215 stw ra,8(sp)
  16520. 4ed80: df000115 stw fp,4(sp)
  16521. 4ed84: df000104 addi fp,sp,4
  16522. #endif
  16523. /* ALT LOG - please see HAL/sys/alt_log_printf.h for details */
  16524. ALT_LOG_PRINT_BOOT("[alt_main.c] Entering alt_main, calling alt_irq_init.\r\n");
  16525. /* Initialize the interrupt controller. */
  16526. alt_irq_init (NULL);
  16527. 4ed88: 0009883a mov r4,zero
  16528. 4ed8c: 004f2200 call 4f220 <alt_irq_init>
  16529. /* Initialize the operating system */
  16530. ALT_LOG_PRINT_BOOT("[alt_main.c] Done alt_irq_init, calling alt_os_init.\r\n");
  16531. ALT_OS_INIT();
  16532. 4ed90: 0001883a nop
  16533. ALT_LOG_PRINT_BOOT("[alt_main.c] Done OS Init, calling alt_sem_create.\r\n");
  16534. ALT_SEM_CREATE (&alt_fd_list_lock, 1);
  16535. /* Initialize the device drivers/software components. */
  16536. ALT_LOG_PRINT_BOOT("[alt_main.c] Calling alt_sys_init.\r\n");
  16537. alt_sys_init();
  16538. 4ed94: 004f2580 call 4f258 <alt_sys_init>
  16539. * devices be present (not equal to /dev/null) and if direct drivers
  16540. * aren't being used.
  16541. */
  16542. ALT_LOG_PRINT_BOOT("[alt_main.c] Redirecting IO.\r\n");
  16543. alt_io_redirect(ALT_STDOUT, ALT_STDIN, ALT_STDERR);
  16544. 4ed98: 01800174 movhi r6,5
  16545. 4ed9c: 3188eb04 addi r6,r6,9132
  16546. 4eda0: 01400174 movhi r5,5
  16547. 4eda4: 2948eb04 addi r5,r5,9132
  16548. 4eda8: 01000174 movhi r4,5
  16549. 4edac: 2108eb04 addi r4,r4,9132
  16550. 4edb0: 005135c0 call 5135c <alt_io_redirect>
  16551. /*
  16552. * Call the C++ constructors
  16553. */
  16554. ALT_LOG_PRINT_BOOT("[alt_main.c] Calling C++ constructors.\r\n");
  16555. _do_ctors ();
  16556. 4edb4: 0050ef80 call 50ef8 <_do_ctors>
  16557. * redefined as _exit()). This is in the interest of reducing code footprint,
  16558. * in that the atexit() overhead is removed when it's not needed.
  16559. */
  16560. ALT_LOG_PRINT_BOOT("[alt_main.c] Calling atexit.\r\n");
  16561. atexit (_do_dtors);
  16562. 4edb8: 01000174 movhi r4,5
  16563. 4edbc: 2103d604 addi r4,r4,3928
  16564. 4edc0: 0051ca40 call 51ca4 <atexit>
  16565. ALT_LOG_PRINT_BOOT("[alt_main.c] Calling main.\r\n");
  16566. #ifdef ALT_NO_EXIT
  16567. main (alt_argc, alt_argv, alt_envp);
  16568. #else
  16569. result = main (alt_argc, alt_argv, alt_envp);
  16570. 4edc4: d0a72217 ldw r2,-25464(gp)
  16571. 4edc8: d0e72317 ldw r3,-25460(gp)
  16572. 4edcc: d1272417 ldw r4,-25456(gp)
  16573. 4edd0: 200d883a mov r6,r4
  16574. 4edd4: 180b883a mov r5,r3
  16575. 4edd8: 1009883a mov r4,r2
  16576. 4eddc: 0040f980 call 40f98 <main>
  16577. 4ede0: e0bfff15 stw r2,-4(fp)
  16578. close(STDOUT_FILENO);
  16579. 4ede4: 01000044 movi r4,1
  16580. 4ede8: 004e8940 call 4e894 <close>
  16581. exit (result);
  16582. 4edec: e13fff17 ldw r4,-4(fp)
  16583. 4edf0: 0051cb80 call 51cb8 <exit>
  16584. 0004edf4 <__malloc_lock>:
  16585. * configuration is single threaded, so there is nothing to do here. Note that
  16586. * this requires that malloc is never called by an interrupt service routine.
  16587. */
  16588. void __malloc_lock ( struct _reent *_r )
  16589. {
  16590. 4edf4: defffe04 addi sp,sp,-8
  16591. 4edf8: df000115 stw fp,4(sp)
  16592. 4edfc: df000104 addi fp,sp,4
  16593. 4ee00: e13fff15 stw r4,-4(fp)
  16594. }
  16595. 4ee04: 0001883a nop
  16596. 4ee08: e037883a mov sp,fp
  16597. 4ee0c: df000017 ldw fp,0(sp)
  16598. 4ee10: dec00104 addi sp,sp,4
  16599. 4ee14: f800283a ret
  16600. 0004ee18 <__malloc_unlock>:
  16601. /*
  16602. *
  16603. */
  16604. void __malloc_unlock ( struct _reent *_r )
  16605. {
  16606. 4ee18: defffe04 addi sp,sp,-8
  16607. 4ee1c: df000115 stw fp,4(sp)
  16608. 4ee20: df000104 addi fp,sp,4
  16609. 4ee24: e13fff15 stw r4,-4(fp)
  16610. }
  16611. 4ee28: 0001883a nop
  16612. 4ee2c: e037883a mov sp,fp
  16613. 4ee30: df000017 ldw fp,0(sp)
  16614. 4ee34: dec00104 addi sp,sp,4
  16615. 4ee38: f800283a ret
  16616. 0004ee3c <alt_get_errno>:
  16617. #undef errno
  16618. extern int errno;
  16619. static ALT_INLINE int* alt_get_errno(void)
  16620. {
  16621. 4ee3c: defffe04 addi sp,sp,-8
  16622. 4ee40: dfc00115 stw ra,4(sp)
  16623. 4ee44: df000015 stw fp,0(sp)
  16624. 4ee48: d839883a mov fp,sp
  16625. return ((alt_errno) ? alt_errno() : &errno);
  16626. 4ee4c: d0a00b17 ldw r2,-32724(gp)
  16627. 4ee50: 10000326 beq r2,zero,4ee60 <alt_get_errno+0x24>
  16628. 4ee54: d0a00b17 ldw r2,-32724(gp)
  16629. 4ee58: 103ee83a callr r2
  16630. 4ee5c: 00000106 br 4ee64 <alt_get_errno+0x28>
  16631. 4ee60: d0a72104 addi r2,gp,-25468
  16632. }
  16633. 4ee64: e037883a mov sp,fp
  16634. 4ee68: dfc00117 ldw ra,4(sp)
  16635. 4ee6c: df000017 ldw fp,0(sp)
  16636. 4ee70: dec00204 addi sp,sp,8
  16637. 4ee74: f800283a ret
  16638. 0004ee78 <read>:
  16639. }
  16640. #else /* !ALT_USE_DIRECT_DRIVERS */
  16641. int ALT_READ (int file, void *ptr, size_t len)
  16642. {
  16643. 4ee78: defff904 addi sp,sp,-28
  16644. 4ee7c: dfc00615 stw ra,24(sp)
  16645. 4ee80: df000515 stw fp,20(sp)
  16646. 4ee84: df000504 addi fp,sp,20
  16647. 4ee88: e13ffd15 stw r4,-12(fp)
  16648. 4ee8c: e17ffe15 stw r5,-8(fp)
  16649. 4ee90: e1bfff15 stw r6,-4(fp)
  16650. * A common error case is that when the file descriptor was created, the call
  16651. * to open() failed resulting in a negative file descriptor. This is trapped
  16652. * below so that we don't try and process an invalid file descriptor.
  16653. */
  16654. fd = (file < 0) ? NULL : &alt_fd_list[file];
  16655. 4ee94: e0bffd17 ldw r2,-12(fp)
  16656. 4ee98: 10000816 blt r2,zero,4eebc <read+0x44>
  16657. 4ee9c: 01400304 movi r5,12
  16658. 4eea0: e13ffd17 ldw r4,-12(fp)
  16659. 4eea4: 004c9f80 call 4c9f8 <__mulsi3>
  16660. 4eea8: 1007883a mov r3,r2
  16661. 4eeac: 00800174 movhi r2,5
  16662. 4eeb0: 108bca04 addi r2,r2,12072
  16663. 4eeb4: 1885883a add r2,r3,r2
  16664. 4eeb8: 00000106 br 4eec0 <read+0x48>
  16665. 4eebc: 0005883a mov r2,zero
  16666. 4eec0: e0bffb15 stw r2,-20(fp)
  16667. if (fd)
  16668. 4eec4: e0bffb17 ldw r2,-20(fp)
  16669. 4eec8: 10002226 beq r2,zero,4ef54 <read+0xdc>
  16670. * If the file has not been opened with read access, or if the driver does
  16671. * not provide an implementation of read(), generate an error. Otherwise
  16672. * call the drivers read() function to process the request.
  16673. */
  16674. if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) &&
  16675. 4eecc: e0bffb17 ldw r2,-20(fp)
  16676. 4eed0: 10800217 ldw r2,8(r2)
  16677. 4eed4: 108000cc andi r2,r2,3
  16678. 4eed8: 10800060 cmpeqi r2,r2,1
  16679. 4eedc: 1000181e bne r2,zero,4ef40 <read+0xc8>
  16680. (fd->dev->read))
  16681. 4eee0: e0bffb17 ldw r2,-20(fp)
  16682. 4eee4: 10800017 ldw r2,0(r2)
  16683. 4eee8: 10800517 ldw r2,20(r2)
  16684. * If the file has not been opened with read access, or if the driver does
  16685. * not provide an implementation of read(), generate an error. Otherwise
  16686. * call the drivers read() function to process the request.
  16687. */
  16688. if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) &&
  16689. 4eeec: 10001426 beq r2,zero,4ef40 <read+0xc8>
  16690. (fd->dev->read))
  16691. {
  16692. if ((rval = fd->dev->read(fd, ptr, len)) < 0)
  16693. 4eef0: e0bffb17 ldw r2,-20(fp)
  16694. 4eef4: 10800017 ldw r2,0(r2)
  16695. 4eef8: 10800517 ldw r2,20(r2)
  16696. 4eefc: e0ffff17 ldw r3,-4(fp)
  16697. 4ef00: 180d883a mov r6,r3
  16698. 4ef04: e17ffe17 ldw r5,-8(fp)
  16699. 4ef08: e13ffb17 ldw r4,-20(fp)
  16700. 4ef0c: 103ee83a callr r2
  16701. 4ef10: e0bffc15 stw r2,-16(fp)
  16702. 4ef14: e0bffc17 ldw r2,-16(fp)
  16703. 4ef18: 1000070e bge r2,zero,4ef38 <read+0xc0>
  16704. {
  16705. ALT_ERRNO = -rval;
  16706. 4ef1c: 004ee3c0 call 4ee3c <alt_get_errno>
  16707. 4ef20: 1007883a mov r3,r2
  16708. 4ef24: e0bffc17 ldw r2,-16(fp)
  16709. 4ef28: 0085c83a sub r2,zero,r2
  16710. 4ef2c: 18800015 stw r2,0(r3)
  16711. return -1;
  16712. 4ef30: 00bfffc4 movi r2,-1
  16713. 4ef34: 00000c06 br 4ef68 <read+0xf0>
  16714. }
  16715. return rval;
  16716. 4ef38: e0bffc17 ldw r2,-16(fp)
  16717. 4ef3c: 00000a06 br 4ef68 <read+0xf0>
  16718. }
  16719. else
  16720. {
  16721. ALT_ERRNO = EACCES;
  16722. 4ef40: 004ee3c0 call 4ee3c <alt_get_errno>
  16723. 4ef44: 1007883a mov r3,r2
  16724. 4ef48: 00800344 movi r2,13
  16725. 4ef4c: 18800015 stw r2,0(r3)
  16726. 4ef50: 00000406 br 4ef64 <read+0xec>
  16727. }
  16728. }
  16729. else
  16730. {
  16731. ALT_ERRNO = EBADFD;
  16732. 4ef54: 004ee3c0 call 4ee3c <alt_get_errno>
  16733. 4ef58: 1007883a mov r3,r2
  16734. 4ef5c: 00801444 movi r2,81
  16735. 4ef60: 18800015 stw r2,0(r3)
  16736. }
  16737. return -1;
  16738. 4ef64: 00bfffc4 movi r2,-1
  16739. }
  16740. 4ef68: e037883a mov sp,fp
  16741. 4ef6c: dfc00117 ldw ra,4(sp)
  16742. 4ef70: df000017 ldw fp,0(sp)
  16743. 4ef74: dec00204 addi sp,sp,8
  16744. 4ef78: f800283a ret
  16745. 0004ef7c <alt_release_fd>:
  16746. * File descriptors correcponding to standard in, standard out and standard
  16747. * error cannont be released backed to the pool. They are always reserved.
  16748. */
  16749. void alt_release_fd (int fd)
  16750. {
  16751. 4ef7c: defffc04 addi sp,sp,-16
  16752. 4ef80: dfc00315 stw ra,12(sp)
  16753. 4ef84: df000215 stw fp,8(sp)
  16754. 4ef88: dc000115 stw r16,4(sp)
  16755. 4ef8c: df000204 addi fp,sp,8
  16756. 4ef90: e13ffe15 stw r4,-8(fp)
  16757. if (fd > 2)
  16758. 4ef94: e0bffe17 ldw r2,-8(fp)
  16759. 4ef98: 108000d0 cmplti r2,r2,3
  16760. 4ef9c: 1000111e bne r2,zero,4efe4 <alt_release_fd+0x68>
  16761. {
  16762. alt_fd_list[fd].fd_flags = 0;
  16763. 4efa0: 04000174 movhi r16,5
  16764. 4efa4: 840bca04 addi r16,r16,12072
  16765. 4efa8: e0bffe17 ldw r2,-8(fp)
  16766. 4efac: 01400304 movi r5,12
  16767. 4efb0: 1009883a mov r4,r2
  16768. 4efb4: 004c9f80 call 4c9f8 <__mulsi3>
  16769. 4efb8: 8085883a add r2,r16,r2
  16770. 4efbc: 10800204 addi r2,r2,8
  16771. 4efc0: 10000015 stw zero,0(r2)
  16772. alt_fd_list[fd].dev = 0;
  16773. 4efc4: 04000174 movhi r16,5
  16774. 4efc8: 840bca04 addi r16,r16,12072
  16775. 4efcc: e0bffe17 ldw r2,-8(fp)
  16776. 4efd0: 01400304 movi r5,12
  16777. 4efd4: 1009883a mov r4,r2
  16778. 4efd8: 004c9f80 call 4c9f8 <__mulsi3>
  16779. 4efdc: 8085883a add r2,r16,r2
  16780. 4efe0: 10000015 stw zero,0(r2)
  16781. }
  16782. }
  16783. 4efe4: 0001883a nop
  16784. 4efe8: e6ffff04 addi sp,fp,-4
  16785. 4efec: dfc00217 ldw ra,8(sp)
  16786. 4eff0: df000117 ldw fp,4(sp)
  16787. 4eff4: dc000017 ldw r16,0(sp)
  16788. 4eff8: dec00304 addi sp,sp,12
  16789. 4effc: f800283a ret
  16790. 0004f000 <sbrk>:
  16791. #endif
  16792. caddr_t ALT_SBRK (int incr) __attribute__ ((no_instrument_function ));
  16793. caddr_t ALT_SBRK (int incr)
  16794. {
  16795. 4f000: defff904 addi sp,sp,-28
  16796. 4f004: df000615 stw fp,24(sp)
  16797. 4f008: df000604 addi fp,sp,24
  16798. 4f00c: e13fff15 stw r4,-4(fp)
  16799. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  16800. alt_irq_disable_all (void)
  16801. {
  16802. alt_irq_context context;
  16803. NIOS2_READ_STATUS (context);
  16804. 4f010: 0005303a rdctl r2,status
  16805. 4f014: e0bffe15 stw r2,-8(fp)
  16806. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  16807. 4f018: e0fffe17 ldw r3,-8(fp)
  16808. 4f01c: 00bfff84 movi r2,-2
  16809. 4f020: 1884703a and r2,r3,r2
  16810. 4f024: 1001703a wrctl status,r2
  16811. return context;
  16812. 4f028: e0bffe17 ldw r2,-8(fp)
  16813. alt_irq_context context;
  16814. char *prev_heap_end;
  16815. context = alt_irq_disable_all();
  16816. 4f02c: e0bffb15 stw r2,-20(fp)
  16817. /* Always return data aligned on a word boundary */
  16818. heap_end = (char *)(((unsigned int)heap_end + 3) & ~3);
  16819. 4f030: d0a00c17 ldw r2,-32720(gp)
  16820. 4f034: 10c000c4 addi r3,r2,3
  16821. 4f038: 00bfff04 movi r2,-4
  16822. 4f03c: 1884703a and r2,r3,r2
  16823. 4f040: d0a00c15 stw r2,-32720(gp)
  16824. if (((heap_end + incr) - __alt_heap_start) > ALT_MAX_HEAP_BYTES) {
  16825. alt_irq_enable_all(context);
  16826. return (caddr_t)-1;
  16827. }
  16828. #else
  16829. if ((heap_end + incr) > __alt_heap_limit) {
  16830. 4f044: d0e00c17 ldw r3,-32720(gp)
  16831. 4f048: e0bfff17 ldw r2,-4(fp)
  16832. 4f04c: 1887883a add r3,r3,r2
  16833. 4f050: 008001f4 movhi r2,7
  16834. 4f054: 10880004 addi r2,r2,8192
  16835. 4f058: 10c0062e bgeu r2,r3,4f074 <sbrk+0x74>
  16836. 4f05c: e0bffb17 ldw r2,-20(fp)
  16837. 4f060: e0bffa15 stw r2,-24(fp)
  16838. status &= ~NIOS2_STATUS_PIE_MSK;
  16839. status |= (context & NIOS2_STATUS_PIE_MSK);
  16840. NIOS2_WRITE_STATUS (status);
  16841. #else
  16842. NIOS2_WRITE_STATUS (context);
  16843. 4f064: e0bffa17 ldw r2,-24(fp)
  16844. 4f068: 1001703a wrctl status,r2
  16845. alt_irq_enable_all(context);
  16846. return (caddr_t)-1;
  16847. 4f06c: 00bfffc4 movi r2,-1
  16848. 4f070: 00000b06 br 4f0a0 <sbrk+0xa0>
  16849. }
  16850. #endif
  16851. prev_heap_end = heap_end;
  16852. 4f074: d0a00c17 ldw r2,-32720(gp)
  16853. 4f078: e0bffd15 stw r2,-12(fp)
  16854. heap_end += incr;
  16855. 4f07c: d0e00c17 ldw r3,-32720(gp)
  16856. 4f080: e0bfff17 ldw r2,-4(fp)
  16857. 4f084: 1885883a add r2,r3,r2
  16858. 4f088: d0a00c15 stw r2,-32720(gp)
  16859. 4f08c: e0bffb17 ldw r2,-20(fp)
  16860. 4f090: e0bffc15 stw r2,-16(fp)
  16861. 4f094: e0bffc17 ldw r2,-16(fp)
  16862. 4f098: 1001703a wrctl status,r2
  16863. #endif
  16864. alt_irq_enable_all(context);
  16865. return (caddr_t) prev_heap_end;
  16866. 4f09c: e0bffd17 ldw r2,-12(fp)
  16867. }
  16868. 4f0a0: e037883a mov sp,fp
  16869. 4f0a4: df000017 ldw fp,0(sp)
  16870. 4f0a8: dec00104 addi sp,sp,4
  16871. 4f0ac: f800283a ret
  16872. 0004f0b0 <alt_get_errno>:
  16873. #undef errno
  16874. extern int errno;
  16875. static ALT_INLINE int* alt_get_errno(void)
  16876. {
  16877. 4f0b0: defffe04 addi sp,sp,-8
  16878. 4f0b4: dfc00115 stw ra,4(sp)
  16879. 4f0b8: df000015 stw fp,0(sp)
  16880. 4f0bc: d839883a mov fp,sp
  16881. return ((alt_errno) ? alt_errno() : &errno);
  16882. 4f0c0: d0a00b17 ldw r2,-32724(gp)
  16883. 4f0c4: 10000326 beq r2,zero,4f0d4 <alt_get_errno+0x24>
  16884. 4f0c8: d0a00b17 ldw r2,-32724(gp)
  16885. 4f0cc: 103ee83a callr r2
  16886. 4f0d0: 00000106 br 4f0d8 <alt_get_errno+0x28>
  16887. 4f0d4: d0a72104 addi r2,gp,-25468
  16888. }
  16889. 4f0d8: e037883a mov sp,fp
  16890. 4f0dc: dfc00117 ldw ra,4(sp)
  16891. 4f0e0: df000017 ldw fp,0(sp)
  16892. 4f0e4: dec00204 addi sp,sp,8
  16893. 4f0e8: f800283a ret
  16894. 0004f0ec <write>:
  16895. }
  16896. #else /* !ALT_USE_DIRECT_DRIVERS */
  16897. int ALT_WRITE (int file, const void *ptr, size_t len)
  16898. {
  16899. 4f0ec: defff904 addi sp,sp,-28
  16900. 4f0f0: dfc00615 stw ra,24(sp)
  16901. 4f0f4: df000515 stw fp,20(sp)
  16902. 4f0f8: df000504 addi fp,sp,20
  16903. 4f0fc: e13ffd15 stw r4,-12(fp)
  16904. 4f100: e17ffe15 stw r5,-8(fp)
  16905. 4f104: e1bfff15 stw r6,-4(fp)
  16906. * A common error case is that when the file descriptor was created, the call
  16907. * to open() failed resulting in a negative file descriptor. This is trapped
  16908. * below so that we don't try and process an invalid file descriptor.
  16909. */
  16910. fd = (file < 0) ? NULL : &alt_fd_list[file];
  16911. 4f108: e0bffd17 ldw r2,-12(fp)
  16912. 4f10c: 10000816 blt r2,zero,4f130 <write+0x44>
  16913. 4f110: 01400304 movi r5,12
  16914. 4f114: e13ffd17 ldw r4,-12(fp)
  16915. 4f118: 004c9f80 call 4c9f8 <__mulsi3>
  16916. 4f11c: 1007883a mov r3,r2
  16917. 4f120: 00800174 movhi r2,5
  16918. 4f124: 108bca04 addi r2,r2,12072
  16919. 4f128: 1885883a add r2,r3,r2
  16920. 4f12c: 00000106 br 4f134 <write+0x48>
  16921. 4f130: 0005883a mov r2,zero
  16922. 4f134: e0bffb15 stw r2,-20(fp)
  16923. if (fd)
  16924. 4f138: e0bffb17 ldw r2,-20(fp)
  16925. 4f13c: 10002126 beq r2,zero,4f1c4 <write+0xd8>
  16926. * If the file has not been opened with write access, or if the driver does
  16927. * not provide an implementation of write(), generate an error. Otherwise
  16928. * call the drivers write() function to process the request.
  16929. */
  16930. if (((fd->fd_flags & O_ACCMODE) != O_RDONLY) && fd->dev->write)
  16931. 4f140: e0bffb17 ldw r2,-20(fp)
  16932. 4f144: 10800217 ldw r2,8(r2)
  16933. 4f148: 108000cc andi r2,r2,3
  16934. 4f14c: 10001826 beq r2,zero,4f1b0 <write+0xc4>
  16935. 4f150: e0bffb17 ldw r2,-20(fp)
  16936. 4f154: 10800017 ldw r2,0(r2)
  16937. 4f158: 10800617 ldw r2,24(r2)
  16938. 4f15c: 10001426 beq r2,zero,4f1b0 <write+0xc4>
  16939. {
  16940. /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
  16941. ALT_LOG_WRITE_FUNCTION(ptr,len);
  16942. if ((rval = fd->dev->write(fd, ptr, len)) < 0)
  16943. 4f160: e0bffb17 ldw r2,-20(fp)
  16944. 4f164: 10800017 ldw r2,0(r2)
  16945. 4f168: 10800617 ldw r2,24(r2)
  16946. 4f16c: e0ffff17 ldw r3,-4(fp)
  16947. 4f170: 180d883a mov r6,r3
  16948. 4f174: e17ffe17 ldw r5,-8(fp)
  16949. 4f178: e13ffb17 ldw r4,-20(fp)
  16950. 4f17c: 103ee83a callr r2
  16951. 4f180: e0bffc15 stw r2,-16(fp)
  16952. 4f184: e0bffc17 ldw r2,-16(fp)
  16953. 4f188: 1000070e bge r2,zero,4f1a8 <write+0xbc>
  16954. {
  16955. ALT_ERRNO = -rval;
  16956. 4f18c: 004f0b00 call 4f0b0 <alt_get_errno>
  16957. 4f190: 1007883a mov r3,r2
  16958. 4f194: e0bffc17 ldw r2,-16(fp)
  16959. 4f198: 0085c83a sub r2,zero,r2
  16960. 4f19c: 18800015 stw r2,0(r3)
  16961. return -1;
  16962. 4f1a0: 00bfffc4 movi r2,-1
  16963. 4f1a4: 00000c06 br 4f1d8 <write+0xec>
  16964. }
  16965. return rval;
  16966. 4f1a8: e0bffc17 ldw r2,-16(fp)
  16967. 4f1ac: 00000a06 br 4f1d8 <write+0xec>
  16968. }
  16969. else
  16970. {
  16971. ALT_ERRNO = EACCES;
  16972. 4f1b0: 004f0b00 call 4f0b0 <alt_get_errno>
  16973. 4f1b4: 1007883a mov r3,r2
  16974. 4f1b8: 00800344 movi r2,13
  16975. 4f1bc: 18800015 stw r2,0(r3)
  16976. 4f1c0: 00000406 br 4f1d4 <write+0xe8>
  16977. }
  16978. }
  16979. else
  16980. {
  16981. ALT_ERRNO = EBADFD;
  16982. 4f1c4: 004f0b00 call 4f0b0 <alt_get_errno>
  16983. 4f1c8: 1007883a mov r3,r2
  16984. 4f1cc: 00801444 movi r2,81
  16985. 4f1d0: 18800015 stw r2,0(r3)
  16986. }
  16987. return -1;
  16988. 4f1d4: 00bfffc4 movi r2,-1
  16989. }
  16990. 4f1d8: e037883a mov sp,fp
  16991. 4f1dc: dfc00117 ldw ra,4(sp)
  16992. 4f1e0: df000017 ldw fp,0(sp)
  16993. 4f1e4: dec00204 addi sp,sp,8
  16994. 4f1e8: f800283a ret
  16995. 0004f1ec <alt_dev_reg>:
  16996. */
  16997. extern int alt_fs_reg (alt_dev* dev);
  16998. static ALT_INLINE int alt_dev_reg (alt_dev* dev)
  16999. {
  17000. 4f1ec: defffd04 addi sp,sp,-12
  17001. 4f1f0: dfc00215 stw ra,8(sp)
  17002. 4f1f4: df000115 stw fp,4(sp)
  17003. 4f1f8: df000104 addi fp,sp,4
  17004. 4f1fc: e13fff15 stw r4,-4(fp)
  17005. extern alt_llist alt_dev_list;
  17006. return alt_dev_llist_insert ((alt_dev_llist*) dev, &alt_dev_list);
  17007. 4f200: d1600804 addi r5,gp,-32736
  17008. 4f204: e13fff17 ldw r4,-4(fp)
  17009. 4f208: 0050e540 call 50e54 <alt_dev_llist_insert>
  17010. }
  17011. 4f20c: e037883a mov sp,fp
  17012. 4f210: dfc00117 ldw ra,4(sp)
  17013. 4f214: df000017 ldw fp,0(sp)
  17014. 4f218: dec00204 addi sp,sp,8
  17015. 4f21c: f800283a ret
  17016. 0004f220 <alt_irq_init>:
  17017. * The "base" parameter is ignored and only
  17018. * present for backwards-compatibility.
  17019. */
  17020. void alt_irq_init ( const void* base )
  17021. {
  17022. 4f220: defffd04 addi sp,sp,-12
  17023. 4f224: dfc00215 stw ra,8(sp)
  17024. 4f228: df000115 stw fp,4(sp)
  17025. 4f22c: df000104 addi fp,sp,4
  17026. 4f230: e13fff15 stw r4,-4(fp)
  17027. ALTERA_NIOS2_GEN2_IRQ_INIT ( NIOS2, nios2);
  17028. 4f234: 00518300 call 51830 <altera_nios2_gen2_irq_init>
  17029. * alt_irq_cpu_enable_interrupts() enables the CPU to start taking interrupts.
  17030. */
  17031. static ALT_INLINE void ALT_ALWAYS_INLINE
  17032. alt_irq_cpu_enable_interrupts (void)
  17033. {
  17034. NIOS2_WRITE_STATUS(NIOS2_STATUS_PIE_MSK
  17035. 4f238: 00800044 movi r2,1
  17036. 4f23c: 1001703a wrctl status,r2
  17037. alt_irq_cpu_enable_interrupts();
  17038. }
  17039. 4f240: 0001883a nop
  17040. 4f244: e037883a mov sp,fp
  17041. 4f248: dfc00117 ldw ra,4(sp)
  17042. 4f24c: df000017 ldw fp,0(sp)
  17043. 4f250: dec00204 addi sp,sp,8
  17044. 4f254: f800283a ret
  17045. 0004f258 <alt_sys_init>:
  17046. * Initialize the non-interrupt controller devices.
  17047. * Called after alt_irq_init().
  17048. */
  17049. void alt_sys_init( void )
  17050. {
  17051. 4f258: defffe04 addi sp,sp,-8
  17052. 4f25c: dfc00115 stw ra,4(sp)
  17053. 4f260: df000015 stw fp,0(sp)
  17054. 4f264: d839883a mov fp,sp
  17055. ALTERA_AVALON_JTAG_UART_INIT ( JTAG_UART, jtag_uart);
  17056. 4f268: 000d883a mov r6,zero
  17057. 4f26c: 000b883a mov r5,zero
  17058. 4f270: 01000174 movhi r4,5
  17059. 4f274: 210c3404 addi r4,r4,12496
  17060. 4f278: 004f41c0 call 4f41c <altera_avalon_jtag_uart_init>
  17061. 4f27c: 01000174 movhi r4,5
  17062. 4f280: 210c2a04 addi r4,r4,12456
  17063. 4f284: 004f1ec0 call 4f1ec <alt_dev_reg>
  17064. ALTERA_AVALON_LCD_16207_INIT ( LCD_16207, lcd_16207);
  17065. 4f288: 01000174 movhi r4,5
  17066. 4f28c: 21104c04 addi r4,r4,16688
  17067. 4f290: 0050b380 call 50b38 <altera_avalon_lcd_16207_init>
  17068. 4f294: 01000174 movhi r4,5
  17069. 4f298: 21104204 addi r4,r4,16648
  17070. 4f29c: 004f1ec0 call 4f1ec <alt_dev_reg>
  17071. }
  17072. 4f2a0: 0001883a nop
  17073. 4f2a4: e037883a mov sp,fp
  17074. 4f2a8: dfc00117 ldw ra,4(sp)
  17075. 4f2ac: df000017 ldw fp,0(sp)
  17076. 4f2b0: dec00204 addi sp,sp,8
  17077. 4f2b4: f800283a ret
  17078. 0004f2b8 <altera_avalon_jtag_uart_read_fd>:
  17079. *
  17080. */
  17081. int
  17082. altera_avalon_jtag_uart_read_fd(alt_fd* fd, char* buffer, int space)
  17083. {
  17084. 4f2b8: defffa04 addi sp,sp,-24
  17085. 4f2bc: dfc00515 stw ra,20(sp)
  17086. 4f2c0: df000415 stw fp,16(sp)
  17087. 4f2c4: df000404 addi fp,sp,16
  17088. 4f2c8: e13ffd15 stw r4,-12(fp)
  17089. 4f2cc: e17ffe15 stw r5,-8(fp)
  17090. 4f2d0: e1bfff15 stw r6,-4(fp)
  17091. altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
  17092. 4f2d4: e0bffd17 ldw r2,-12(fp)
  17093. 4f2d8: 10800017 ldw r2,0(r2)
  17094. 4f2dc: e0bffc15 stw r2,-16(fp)
  17095. return altera_avalon_jtag_uart_read(&dev->state, buffer, space,
  17096. 4f2e0: e0bffc17 ldw r2,-16(fp)
  17097. 4f2e4: 10c00a04 addi r3,r2,40
  17098. 4f2e8: e0bffd17 ldw r2,-12(fp)
  17099. 4f2ec: 10800217 ldw r2,8(r2)
  17100. 4f2f0: 100f883a mov r7,r2
  17101. 4f2f4: e1bfff17 ldw r6,-4(fp)
  17102. 4f2f8: e17ffe17 ldw r5,-8(fp)
  17103. 4f2fc: 1809883a mov r4,r3
  17104. 4f300: 004f8e00 call 4f8e0 <altera_avalon_jtag_uart_read>
  17105. fd->fd_flags);
  17106. }
  17107. 4f304: e037883a mov sp,fp
  17108. 4f308: dfc00117 ldw ra,4(sp)
  17109. 4f30c: df000017 ldw fp,0(sp)
  17110. 4f310: dec00204 addi sp,sp,8
  17111. 4f314: f800283a ret
  17112. 0004f318 <altera_avalon_jtag_uart_write_fd>:
  17113. int
  17114. altera_avalon_jtag_uart_write_fd(alt_fd* fd, const char* buffer, int space)
  17115. {
  17116. 4f318: defffa04 addi sp,sp,-24
  17117. 4f31c: dfc00515 stw ra,20(sp)
  17118. 4f320: df000415 stw fp,16(sp)
  17119. 4f324: df000404 addi fp,sp,16
  17120. 4f328: e13ffd15 stw r4,-12(fp)
  17121. 4f32c: e17ffe15 stw r5,-8(fp)
  17122. 4f330: e1bfff15 stw r6,-4(fp)
  17123. altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
  17124. 4f334: e0bffd17 ldw r2,-12(fp)
  17125. 4f338: 10800017 ldw r2,0(r2)
  17126. 4f33c: e0bffc15 stw r2,-16(fp)
  17127. return altera_avalon_jtag_uart_write(&dev->state, buffer, space,
  17128. 4f340: e0bffc17 ldw r2,-16(fp)
  17129. 4f344: 10c00a04 addi r3,r2,40
  17130. 4f348: e0bffd17 ldw r2,-12(fp)
  17131. 4f34c: 10800217 ldw r2,8(r2)
  17132. 4f350: 100f883a mov r7,r2
  17133. 4f354: e1bfff17 ldw r6,-4(fp)
  17134. 4f358: e17ffe17 ldw r5,-8(fp)
  17135. 4f35c: 1809883a mov r4,r3
  17136. 4f360: 004fafc0 call 4fafc <altera_avalon_jtag_uart_write>
  17137. fd->fd_flags);
  17138. }
  17139. 4f364: e037883a mov sp,fp
  17140. 4f368: dfc00117 ldw ra,4(sp)
  17141. 4f36c: df000017 ldw fp,0(sp)
  17142. 4f370: dec00204 addi sp,sp,8
  17143. 4f374: f800283a ret
  17144. 0004f378 <altera_avalon_jtag_uart_close_fd>:
  17145. #ifndef ALTERA_AVALON_JTAG_UART_SMALL
  17146. int
  17147. altera_avalon_jtag_uart_close_fd(alt_fd* fd)
  17148. {
  17149. 4f378: defffc04 addi sp,sp,-16
  17150. 4f37c: dfc00315 stw ra,12(sp)
  17151. 4f380: df000215 stw fp,8(sp)
  17152. 4f384: df000204 addi fp,sp,8
  17153. 4f388: e13fff15 stw r4,-4(fp)
  17154. altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
  17155. 4f38c: e0bfff17 ldw r2,-4(fp)
  17156. 4f390: 10800017 ldw r2,0(r2)
  17157. 4f394: e0bffe15 stw r2,-8(fp)
  17158. return altera_avalon_jtag_uart_close(&dev->state, fd->fd_flags);
  17159. 4f398: e0bffe17 ldw r2,-8(fp)
  17160. 4f39c: 10c00a04 addi r3,r2,40
  17161. 4f3a0: e0bfff17 ldw r2,-4(fp)
  17162. 4f3a4: 10800217 ldw r2,8(r2)
  17163. 4f3a8: 100b883a mov r5,r2
  17164. 4f3ac: 1809883a mov r4,r3
  17165. 4f3b0: 004f7880 call 4f788 <altera_avalon_jtag_uart_close>
  17166. }
  17167. 4f3b4: e037883a mov sp,fp
  17168. 4f3b8: dfc00117 ldw ra,4(sp)
  17169. 4f3bc: df000017 ldw fp,0(sp)
  17170. 4f3c0: dec00204 addi sp,sp,8
  17171. 4f3c4: f800283a ret
  17172. 0004f3c8 <altera_avalon_jtag_uart_ioctl_fd>:
  17173. int
  17174. altera_avalon_jtag_uart_ioctl_fd(alt_fd* fd, int req, void* arg)
  17175. {
  17176. 4f3c8: defffa04 addi sp,sp,-24
  17177. 4f3cc: dfc00515 stw ra,20(sp)
  17178. 4f3d0: df000415 stw fp,16(sp)
  17179. 4f3d4: df000404 addi fp,sp,16
  17180. 4f3d8: e13ffd15 stw r4,-12(fp)
  17181. 4f3dc: e17ffe15 stw r5,-8(fp)
  17182. 4f3e0: e1bfff15 stw r6,-4(fp)
  17183. altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
  17184. 4f3e4: e0bffd17 ldw r2,-12(fp)
  17185. 4f3e8: 10800017 ldw r2,0(r2)
  17186. 4f3ec: e0bffc15 stw r2,-16(fp)
  17187. return altera_avalon_jtag_uart_ioctl(&dev->state, req, arg);
  17188. 4f3f0: e0bffc17 ldw r2,-16(fp)
  17189. 4f3f4: 10800a04 addi r2,r2,40
  17190. 4f3f8: e1bfff17 ldw r6,-4(fp)
  17191. 4f3fc: e17ffe17 ldw r5,-8(fp)
  17192. 4f400: 1009883a mov r4,r2
  17193. 4f404: 004f7f00 call 4f7f0 <altera_avalon_jtag_uart_ioctl>
  17194. }
  17195. 4f408: e037883a mov sp,fp
  17196. 4f40c: dfc00117 ldw ra,4(sp)
  17197. 4f410: df000017 ldw fp,0(sp)
  17198. 4f414: dec00204 addi sp,sp,8
  17199. 4f418: f800283a ret
  17200. 0004f41c <altera_avalon_jtag_uart_init>:
  17201. * Return 1 on sucessful IRQ register and 0 on failure.
  17202. */
  17203. void altera_avalon_jtag_uart_init(altera_avalon_jtag_uart_state* sp,
  17204. int irq_controller_id, int irq)
  17205. {
  17206. 4f41c: defffa04 addi sp,sp,-24
  17207. 4f420: dfc00515 stw ra,20(sp)
  17208. 4f424: df000415 stw fp,16(sp)
  17209. 4f428: df000404 addi fp,sp,16
  17210. 4f42c: e13ffd15 stw r4,-12(fp)
  17211. 4f430: e17ffe15 stw r5,-8(fp)
  17212. 4f434: e1bfff15 stw r6,-4(fp)
  17213. ALT_FLAG_CREATE(&sp->events, 0);
  17214. ALT_SEM_CREATE(&sp->read_lock, 1);
  17215. ALT_SEM_CREATE(&sp->write_lock, 1);
  17216. /* enable read interrupts at the device */
  17217. sp->irq_enable = ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
  17218. 4f438: e0bffd17 ldw r2,-12(fp)
  17219. 4f43c: 00c00044 movi r3,1
  17220. 4f440: 10c00815 stw r3,32(r2)
  17221. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
  17222. 4f444: e0bffd17 ldw r2,-12(fp)
  17223. 4f448: 10800017 ldw r2,0(r2)
  17224. 4f44c: 10800104 addi r2,r2,4
  17225. 4f450: 1007883a mov r3,r2
  17226. 4f454: e0bffd17 ldw r2,-12(fp)
  17227. 4f458: 10800817 ldw r2,32(r2)
  17228. 4f45c: 18800035 stwio r2,0(r3)
  17229. /* register the interrupt handler */
  17230. #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
  17231. alt_ic_isr_register(irq_controller_id, irq, altera_avalon_jtag_uart_irq,
  17232. 4f460: e0bffe17 ldw r2,-8(fp)
  17233. 4f464: e0ffff17 ldw r3,-4(fp)
  17234. 4f468: d8000015 stw zero,0(sp)
  17235. 4f46c: e1fffd17 ldw r7,-12(fp)
  17236. 4f470: 01800174 movhi r6,5
  17237. 4f474: 31bd3704 addi r6,r6,-2852
  17238. 4f478: 180b883a mov r5,r3
  17239. 4f47c: 1009883a mov r4,r2
  17240. 4f480: 0050fd80 call 50fd8 <alt_ic_isr_register>
  17241. #else
  17242. alt_irq_register(irq, sp, altera_avalon_jtag_uart_irq);
  17243. #endif
  17244. /* Register an alarm to go off every second to check for presence of host */
  17245. sp->host_inactive = 0;
  17246. 4f484: e0bffd17 ldw r2,-12(fp)
  17247. 4f488: 10000915 stw zero,36(r2)
  17248. if (alt_alarm_start(&sp->alarm, alt_ticks_per_second(),
  17249. 4f48c: e0bffd17 ldw r2,-12(fp)
  17250. 4f490: 10800204 addi r2,r2,8
  17251. * Obtain the system clock rate in ticks/s.
  17252. */
  17253. static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_ticks_per_second (void)
  17254. {
  17255. return _alt_tick_rate;
  17256. 4f494: d0e72617 ldw r3,-25448(gp)
  17257. 4f498: e1fffd17 ldw r7,-12(fp)
  17258. 4f49c: 01800174 movhi r6,5
  17259. 4f4a0: 31bdba04 addi r6,r6,-2328
  17260. 4f4a4: 180b883a mov r5,r3
  17261. 4f4a8: 1009883a mov r4,r2
  17262. 4f4ac: 0050ccc0 call 50ccc <alt_alarm_start>
  17263. 4f4b0: 1000040e bge r2,zero,4f4c4 <altera_avalon_jtag_uart_init+0xa8>
  17264. &altera_avalon_jtag_uart_timeout, sp) < 0)
  17265. {
  17266. /* If we can't set the alarm then record "don't know if host present"
  17267. * and behave as though the host is present.
  17268. */
  17269. sp->timeout = INT_MAX;
  17270. 4f4b4: e0fffd17 ldw r3,-12(fp)
  17271. 4f4b8: 00a00034 movhi r2,32768
  17272. 4f4bc: 10bfffc4 addi r2,r2,-1
  17273. 4f4c0: 18800115 stw r2,4(r3)
  17274. }
  17275. /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
  17276. ALT_LOG_JTAG_UART_ALARM_REGISTER(sp, sp->base);
  17277. }
  17278. 4f4c4: 0001883a nop
  17279. 4f4c8: e037883a mov sp,fp
  17280. 4f4cc: dfc00117 ldw ra,4(sp)
  17281. 4f4d0: df000017 ldw fp,0(sp)
  17282. 4f4d4: dec00204 addi sp,sp,8
  17283. 4f4d8: f800283a ret
  17284. 0004f4dc <altera_avalon_jtag_uart_irq>:
  17285. #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
  17286. static void altera_avalon_jtag_uart_irq(void* context)
  17287. #else
  17288. static void altera_avalon_jtag_uart_irq(void* context, alt_u32 id)
  17289. #endif
  17290. {
  17291. 4f4dc: defff804 addi sp,sp,-32
  17292. 4f4e0: df000715 stw fp,28(sp)
  17293. 4f4e4: df000704 addi fp,sp,28
  17294. 4f4e8: e13fff15 stw r4,-4(fp)
  17295. altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state*) context;
  17296. 4f4ec: e0bfff17 ldw r2,-4(fp)
  17297. 4f4f0: e0bffb15 stw r2,-20(fp)
  17298. unsigned int base = sp->base;
  17299. 4f4f4: e0bffb17 ldw r2,-20(fp)
  17300. 4f4f8: 10800017 ldw r2,0(r2)
  17301. 4f4fc: e0bffc15 stw r2,-16(fp)
  17302. /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
  17303. ALT_LOG_JTAG_UART_ISR_FUNCTION(base, sp);
  17304. for ( ; ; )
  17305. {
  17306. unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
  17307. 4f500: e0bffc17 ldw r2,-16(fp)
  17308. 4f504: 10800104 addi r2,r2,4
  17309. 4f508: 10800037 ldwio r2,0(r2)
  17310. 4f50c: e0bffd15 stw r2,-12(fp)
  17311. /* Return once nothing more to do */
  17312. if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0)
  17313. 4f510: e0bffd17 ldw r2,-12(fp)
  17314. 4f514: 1080c00c andi r2,r2,768
  17315. 4f518: 10006d26 beq r2,zero,4f6d0 <altera_avalon_jtag_uart_irq+0x1f4>
  17316. break;
  17317. if (control & ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK)
  17318. 4f51c: e0bffd17 ldw r2,-12(fp)
  17319. 4f520: 1080400c andi r2,r2,256
  17320. 4f524: 10003526 beq r2,zero,4f5fc <altera_avalon_jtag_uart_irq+0x120>
  17321. {
  17322. /* process a read irq. Start by assuming that there is data in the
  17323. * receive FIFO (otherwise why would we have been interrupted?)
  17324. */
  17325. unsigned int data = 1 << ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_OFST;
  17326. 4f528: 00800074 movhi r2,1
  17327. 4f52c: e0bff915 stw r2,-28(fp)
  17328. for ( ; ; )
  17329. {
  17330. /* Check whether there is space in the buffer. If not then we must not
  17331. * read any characters from the buffer as they will be lost.
  17332. */
  17333. unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17334. 4f530: e0bffb17 ldw r2,-20(fp)
  17335. 4f534: 10800a17 ldw r2,40(r2)
  17336. 4f538: 10800044 addi r2,r2,1
  17337. 4f53c: 1081ffcc andi r2,r2,2047
  17338. 4f540: e0bffe15 stw r2,-8(fp)
  17339. if (next == sp->rx_out)
  17340. 4f544: e0bffb17 ldw r2,-20(fp)
  17341. 4f548: 10c00b17 ldw r3,44(r2)
  17342. 4f54c: e0bffe17 ldw r2,-8(fp)
  17343. 4f550: 18801526 beq r3,r2,4f5a8 <altera_avalon_jtag_uart_irq+0xcc>
  17344. break;
  17345. /* Try to remove a character from the FIFO and find out whether there
  17346. * are any more characters remaining.
  17347. */
  17348. data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base);
  17349. 4f554: e0bffc17 ldw r2,-16(fp)
  17350. 4f558: 10800037 ldwio r2,0(r2)
  17351. 4f55c: e0bff915 stw r2,-28(fp)
  17352. if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0)
  17353. 4f560: e0bff917 ldw r2,-28(fp)
  17354. 4f564: 10a0000c andi r2,r2,32768
  17355. 4f568: 10001126 beq r2,zero,4f5b0 <altera_avalon_jtag_uart_irq+0xd4>
  17356. break;
  17357. sp->rx_buf[sp->rx_in] = (data & ALTERA_AVALON_JTAG_UART_DATA_DATA_MSK) >> ALTERA_AVALON_JTAG_UART_DATA_DATA_OFST;
  17358. 4f56c: e0bffb17 ldw r2,-20(fp)
  17359. 4f570: 10800a17 ldw r2,40(r2)
  17360. 4f574: e0fff917 ldw r3,-28(fp)
  17361. 4f578: 1809883a mov r4,r3
  17362. 4f57c: e0fffb17 ldw r3,-20(fp)
  17363. 4f580: 1885883a add r2,r3,r2
  17364. 4f584: 10800e04 addi r2,r2,56
  17365. 4f588: 11000005 stb r4,0(r2)
  17366. sp->rx_in = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17367. 4f58c: e0bffb17 ldw r2,-20(fp)
  17368. 4f590: 10800a17 ldw r2,40(r2)
  17369. 4f594: 10800044 addi r2,r2,1
  17370. 4f598: 10c1ffcc andi r3,r2,2047
  17371. 4f59c: e0bffb17 ldw r2,-20(fp)
  17372. 4f5a0: 10c00a15 stw r3,40(r2)
  17373. /* Post an event to notify jtag_uart_read that a character has been read */
  17374. ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET);
  17375. }
  17376. 4f5a4: 003fe206 br 4f530 <__alt_data_end+0xfffdd530>
  17377. /* Check whether there is space in the buffer. If not then we must not
  17378. * read any characters from the buffer as they will be lost.
  17379. */
  17380. unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17381. if (next == sp->rx_out)
  17382. break;
  17383. 4f5a8: 0001883a nop
  17384. 4f5ac: 00000106 br 4f5b4 <altera_avalon_jtag_uart_irq+0xd8>
  17385. * are any more characters remaining.
  17386. */
  17387. data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base);
  17388. if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0)
  17389. break;
  17390. 4f5b0: 0001883a nop
  17391. /* Post an event to notify jtag_uart_read that a character has been read */
  17392. ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET);
  17393. }
  17394. if (data & ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_MSK)
  17395. 4f5b4: e0bff917 ldw r2,-28(fp)
  17396. 4f5b8: 10bfffec andhi r2,r2,65535
  17397. 4f5bc: 10000f26 beq r2,zero,4f5fc <altera_avalon_jtag_uart_irq+0x120>
  17398. {
  17399. /* If there is still data available here then the buffer is full
  17400. * so turn off receive interrupts until some space becomes available.
  17401. */
  17402. sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
  17403. 4f5c0: e0bffb17 ldw r2,-20(fp)
  17404. 4f5c4: 10c00817 ldw r3,32(r2)
  17405. 4f5c8: 00bfff84 movi r2,-2
  17406. 4f5cc: 1886703a and r3,r3,r2
  17407. 4f5d0: e0bffb17 ldw r2,-20(fp)
  17408. 4f5d4: 10c00815 stw r3,32(r2)
  17409. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(base, sp->irq_enable);
  17410. 4f5d8: e0bffc17 ldw r2,-16(fp)
  17411. 4f5dc: 10800104 addi r2,r2,4
  17412. 4f5e0: 1007883a mov r3,r2
  17413. 4f5e4: e0bffb17 ldw r2,-20(fp)
  17414. 4f5e8: 10800817 ldw r2,32(r2)
  17415. 4f5ec: 18800035 stwio r2,0(r3)
  17416. /* Dummy read to ensure IRQ is cleared prior to ISR completion */
  17417. IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
  17418. 4f5f0: e0bffc17 ldw r2,-16(fp)
  17419. 4f5f4: 10800104 addi r2,r2,4
  17420. 4f5f8: 10800037 ldwio r2,0(r2)
  17421. }
  17422. }
  17423. if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)
  17424. 4f5fc: e0bffd17 ldw r2,-12(fp)
  17425. 4f600: 1080800c andi r2,r2,512
  17426. 4f604: 103fbe26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500>
  17427. {
  17428. /* process a write irq */
  17429. unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST;
  17430. 4f608: e0bffd17 ldw r2,-12(fp)
  17431. 4f60c: 1004d43a srli r2,r2,16
  17432. 4f610: e0bffa15 stw r2,-24(fp)
  17433. while (space > 0 && sp->tx_out != sp->tx_in)
  17434. 4f614: 00001406 br 4f668 <altera_avalon_jtag_uart_irq+0x18c>
  17435. {
  17436. IOWR_ALTERA_AVALON_JTAG_UART_DATA(base, sp->tx_buf[sp->tx_out]);
  17437. 4f618: e0bffc17 ldw r2,-16(fp)
  17438. 4f61c: e0fffb17 ldw r3,-20(fp)
  17439. 4f620: 18c00d17 ldw r3,52(r3)
  17440. 4f624: e13ffb17 ldw r4,-20(fp)
  17441. 4f628: 20c7883a add r3,r4,r3
  17442. 4f62c: 18c20e04 addi r3,r3,2104
  17443. 4f630: 18c00003 ldbu r3,0(r3)
  17444. 4f634: 18c03fcc andi r3,r3,255
  17445. 4f638: 18c0201c xori r3,r3,128
  17446. 4f63c: 18ffe004 addi r3,r3,-128
  17447. 4f640: 10c00035 stwio r3,0(r2)
  17448. sp->tx_out = (sp->tx_out + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17449. 4f644: e0bffb17 ldw r2,-20(fp)
  17450. 4f648: 10800d17 ldw r2,52(r2)
  17451. 4f64c: 10800044 addi r2,r2,1
  17452. 4f650: 10c1ffcc andi r3,r2,2047
  17453. 4f654: e0bffb17 ldw r2,-20(fp)
  17454. 4f658: 10c00d15 stw r3,52(r2)
  17455. /* Post an event to notify jtag_uart_write that a character has been written */
  17456. ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET);
  17457. space--;
  17458. 4f65c: e0bffa17 ldw r2,-24(fp)
  17459. 4f660: 10bfffc4 addi r2,r2,-1
  17460. 4f664: e0bffa15 stw r2,-24(fp)
  17461. if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)
  17462. {
  17463. /* process a write irq */
  17464. unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST;
  17465. while (space > 0 && sp->tx_out != sp->tx_in)
  17466. 4f668: e0bffa17 ldw r2,-24(fp)
  17467. 4f66c: 10000526 beq r2,zero,4f684 <altera_avalon_jtag_uart_irq+0x1a8>
  17468. 4f670: e0bffb17 ldw r2,-20(fp)
  17469. 4f674: 10c00d17 ldw r3,52(r2)
  17470. 4f678: e0bffb17 ldw r2,-20(fp)
  17471. 4f67c: 10800c17 ldw r2,48(r2)
  17472. 4f680: 18bfe51e bne r3,r2,4f618 <__alt_data_end+0xfffdd618>
  17473. ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET);
  17474. space--;
  17475. }
  17476. if (space > 0)
  17477. 4f684: e0bffa17 ldw r2,-24(fp)
  17478. 4f688: 103f9d26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500>
  17479. {
  17480. /* If we don't have any more data available then turn off the TX interrupt */
  17481. sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK;
  17482. 4f68c: e0bffb17 ldw r2,-20(fp)
  17483. 4f690: 10c00817 ldw r3,32(r2)
  17484. 4f694: 00bfff44 movi r2,-3
  17485. 4f698: 1886703a and r3,r3,r2
  17486. 4f69c: e0bffb17 ldw r2,-20(fp)
  17487. 4f6a0: 10c00815 stw r3,32(r2)
  17488. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
  17489. 4f6a4: e0bffb17 ldw r2,-20(fp)
  17490. 4f6a8: 10800017 ldw r2,0(r2)
  17491. 4f6ac: 10800104 addi r2,r2,4
  17492. 4f6b0: 1007883a mov r3,r2
  17493. 4f6b4: e0bffb17 ldw r2,-20(fp)
  17494. 4f6b8: 10800817 ldw r2,32(r2)
  17495. 4f6bc: 18800035 stwio r2,0(r3)
  17496. /* Dummy read to ensure IRQ is cleared prior to ISR completion */
  17497. IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
  17498. 4f6c0: e0bffc17 ldw r2,-16(fp)
  17499. 4f6c4: 10800104 addi r2,r2,4
  17500. 4f6c8: 10800037 ldwio r2,0(r2)
  17501. }
  17502. }
  17503. }
  17504. 4f6cc: 003f8c06 br 4f500 <__alt_data_end+0xfffdd500>
  17505. {
  17506. unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
  17507. /* Return once nothing more to do */
  17508. if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0)
  17509. break;
  17510. 4f6d0: 0001883a nop
  17511. /* Dummy read to ensure IRQ is cleared prior to ISR completion */
  17512. IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
  17513. }
  17514. }
  17515. }
  17516. }
  17517. 4f6d4: 0001883a nop
  17518. 4f6d8: e037883a mov sp,fp
  17519. 4f6dc: df000017 ldw fp,0(sp)
  17520. 4f6e0: dec00104 addi sp,sp,4
  17521. 4f6e4: f800283a ret
  17522. 0004f6e8 <altera_avalon_jtag_uart_timeout>:
  17523. * Timeout routine is called every second
  17524. */
  17525. static alt_u32
  17526. altera_avalon_jtag_uart_timeout(void* context)
  17527. {
  17528. 4f6e8: defff804 addi sp,sp,-32
  17529. 4f6ec: df000715 stw fp,28(sp)
  17530. 4f6f0: df000704 addi fp,sp,28
  17531. 4f6f4: e13ffb15 stw r4,-20(fp)
  17532. altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state *) context;
  17533. 4f6f8: e0bffb17 ldw r2,-20(fp)
  17534. 4f6fc: e0bff915 stw r2,-28(fp)
  17535. unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base);
  17536. 4f700: e0bff917 ldw r2,-28(fp)
  17537. 4f704: 10800017 ldw r2,0(r2)
  17538. 4f708: 10800104 addi r2,r2,4
  17539. 4f70c: 10800037 ldwio r2,0(r2)
  17540. 4f710: e0bffa15 stw r2,-24(fp)
  17541. if (control & ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK)
  17542. 4f714: e0bffa17 ldw r2,-24(fp)
  17543. 4f718: 1081000c andi r2,r2,1024
  17544. 4f71c: 10000b26 beq r2,zero,4f74c <altera_avalon_jtag_uart_timeout+0x64>
  17545. {
  17546. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable | ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK);
  17547. 4f720: e0bff917 ldw r2,-28(fp)
  17548. 4f724: 10800017 ldw r2,0(r2)
  17549. 4f728: 10800104 addi r2,r2,4
  17550. 4f72c: 1007883a mov r3,r2
  17551. 4f730: e0bff917 ldw r2,-28(fp)
  17552. 4f734: 10800817 ldw r2,32(r2)
  17553. 4f738: 10810014 ori r2,r2,1024
  17554. 4f73c: 18800035 stwio r2,0(r3)
  17555. sp->host_inactive = 0;
  17556. 4f740: e0bff917 ldw r2,-28(fp)
  17557. 4f744: 10000915 stw zero,36(r2)
  17558. 4f748: 00000a06 br 4f774 <altera_avalon_jtag_uart_timeout+0x8c>
  17559. }
  17560. else if (sp->host_inactive < INT_MAX - 2) {
  17561. 4f74c: e0bff917 ldw r2,-28(fp)
  17562. 4f750: 10c00917 ldw r3,36(r2)
  17563. 4f754: 00a00034 movhi r2,32768
  17564. 4f758: 10bfff04 addi r2,r2,-4
  17565. 4f75c: 10c00536 bltu r2,r3,4f774 <altera_avalon_jtag_uart_timeout+0x8c>
  17566. sp->host_inactive++;
  17567. 4f760: e0bff917 ldw r2,-28(fp)
  17568. 4f764: 10800917 ldw r2,36(r2)
  17569. 4f768: 10c00044 addi r3,r2,1
  17570. 4f76c: e0bff917 ldw r2,-28(fp)
  17571. 4f770: 10c00915 stw r3,36(r2)
  17572. 4f774: d0a72617 ldw r2,-25448(gp)
  17573. ALT_FLAG_POST (sp->events, ALT_JTAG_UART_TIMEOUT, OS_FLAG_SET);
  17574. }
  17575. }
  17576. return alt_ticks_per_second();
  17577. }
  17578. 4f778: e037883a mov sp,fp
  17579. 4f77c: df000017 ldw fp,0(sp)
  17580. 4f780: dec00104 addi sp,sp,4
  17581. 4f784: f800283a ret
  17582. 0004f788 <altera_avalon_jtag_uart_close>:
  17583. * The close routine is not implemented for the small driver; instead it will
  17584. * map to null. This is because the small driver simply waits while characters
  17585. * are transmitted; there is no interrupt-serviced buffer to empty
  17586. */
  17587. int altera_avalon_jtag_uart_close(altera_avalon_jtag_uart_state* sp, int flags)
  17588. {
  17589. 4f788: defffd04 addi sp,sp,-12
  17590. 4f78c: df000215 stw fp,8(sp)
  17591. 4f790: df000204 addi fp,sp,8
  17592. 4f794: e13ffe15 stw r4,-8(fp)
  17593. 4f798: e17fff15 stw r5,-4(fp)
  17594. /*
  17595. * Wait for all transmit data to be emptied by the JTAG UART ISR, or
  17596. * for a host-inactivity timeout, in which case transmit data will be lost
  17597. */
  17598. while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) {
  17599. 4f79c: 00000506 br 4f7b4 <altera_avalon_jtag_uart_close+0x2c>
  17600. if (flags & O_NONBLOCK) {
  17601. 4f7a0: e0bfff17 ldw r2,-4(fp)
  17602. 4f7a4: 1090000c andi r2,r2,16384
  17603. 4f7a8: 10000226 beq r2,zero,4f7b4 <altera_avalon_jtag_uart_close+0x2c>
  17604. return -EWOULDBLOCK;
  17605. 4f7ac: 00bffd44 movi r2,-11
  17606. 4f7b0: 00000b06 br 4f7e0 <altera_avalon_jtag_uart_close+0x58>
  17607. {
  17608. /*
  17609. * Wait for all transmit data to be emptied by the JTAG UART ISR, or
  17610. * for a host-inactivity timeout, in which case transmit data will be lost
  17611. */
  17612. while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) {
  17613. 4f7b4: e0bffe17 ldw r2,-8(fp)
  17614. 4f7b8: 10c00d17 ldw r3,52(r2)
  17615. 4f7bc: e0bffe17 ldw r2,-8(fp)
  17616. 4f7c0: 10800c17 ldw r2,48(r2)
  17617. 4f7c4: 18800526 beq r3,r2,4f7dc <altera_avalon_jtag_uart_close+0x54>
  17618. 4f7c8: e0bffe17 ldw r2,-8(fp)
  17619. 4f7cc: 10c00917 ldw r3,36(r2)
  17620. 4f7d0: e0bffe17 ldw r2,-8(fp)
  17621. 4f7d4: 10800117 ldw r2,4(r2)
  17622. 4f7d8: 18bff136 bltu r3,r2,4f7a0 <__alt_data_end+0xfffdd7a0>
  17623. if (flags & O_NONBLOCK) {
  17624. return -EWOULDBLOCK;
  17625. }
  17626. }
  17627. return 0;
  17628. 4f7dc: 0005883a mov r2,zero
  17629. }
  17630. 4f7e0: e037883a mov sp,fp
  17631. 4f7e4: df000017 ldw fp,0(sp)
  17632. 4f7e8: dec00104 addi sp,sp,4
  17633. 4f7ec: f800283a ret
  17634. 0004f7f0 <altera_avalon_jtag_uart_ioctl>:
  17635. /* ----------------------------------------------------------- */
  17636. int
  17637. altera_avalon_jtag_uart_ioctl(altera_avalon_jtag_uart_state* sp, int req,
  17638. void* arg)
  17639. {
  17640. 4f7f0: defffa04 addi sp,sp,-24
  17641. 4f7f4: df000515 stw fp,20(sp)
  17642. 4f7f8: df000504 addi fp,sp,20
  17643. 4f7fc: e13ffd15 stw r4,-12(fp)
  17644. 4f800: e17ffe15 stw r5,-8(fp)
  17645. 4f804: e1bfff15 stw r6,-4(fp)
  17646. int rc = -ENOTTY;
  17647. 4f808: 00bff9c4 movi r2,-25
  17648. 4f80c: e0bffb15 stw r2,-20(fp)
  17649. switch (req)
  17650. 4f810: e0bffe17 ldw r2,-8(fp)
  17651. 4f814: 10da8060 cmpeqi r3,r2,27137
  17652. 4f818: 1800031e bne r3,zero,4f828 <altera_avalon_jtag_uart_ioctl+0x38>
  17653. 4f81c: 109a80a0 cmpeqi r2,r2,27138
  17654. 4f820: 1000181e bne r2,zero,4f884 <altera_avalon_jtag_uart_ioctl+0x94>
  17655. rc = 0;
  17656. }
  17657. break;
  17658. default:
  17659. break;
  17660. 4f824: 00002906 br 4f8cc <altera_avalon_jtag_uart_ioctl+0xdc>
  17661. switch (req)
  17662. {
  17663. case TIOCSTIMEOUT:
  17664. /* Set the time to wait until assuming host is not connected */
  17665. if (sp->timeout != INT_MAX)
  17666. 4f828: e0bffd17 ldw r2,-12(fp)
  17667. 4f82c: 10c00117 ldw r3,4(r2)
  17668. 4f830: 00a00034 movhi r2,32768
  17669. 4f834: 10bfffc4 addi r2,r2,-1
  17670. 4f838: 18802126 beq r3,r2,4f8c0 <altera_avalon_jtag_uart_ioctl+0xd0>
  17671. {
  17672. int timeout = *((int *)arg);
  17673. 4f83c: e0bfff17 ldw r2,-4(fp)
  17674. 4f840: 10800017 ldw r2,0(r2)
  17675. 4f844: e0bffc15 stw r2,-16(fp)
  17676. sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1;
  17677. 4f848: e0bffc17 ldw r2,-16(fp)
  17678. 4f84c: 10800090 cmplti r2,r2,2
  17679. 4f850: 1000061e bne r2,zero,4f86c <altera_avalon_jtag_uart_ioctl+0x7c>
  17680. 4f854: e0fffc17 ldw r3,-16(fp)
  17681. 4f858: 00a00034 movhi r2,32768
  17682. 4f85c: 10bfffc4 addi r2,r2,-1
  17683. 4f860: 18800226 beq r3,r2,4f86c <altera_avalon_jtag_uart_ioctl+0x7c>
  17684. 4f864: e0bffc17 ldw r2,-16(fp)
  17685. 4f868: 00000206 br 4f874 <altera_avalon_jtag_uart_ioctl+0x84>
  17686. 4f86c: 00a00034 movhi r2,32768
  17687. 4f870: 10bfff84 addi r2,r2,-2
  17688. 4f874: e0fffd17 ldw r3,-12(fp)
  17689. 4f878: 18800115 stw r2,4(r3)
  17690. rc = 0;
  17691. 4f87c: e03ffb15 stw zero,-20(fp)
  17692. }
  17693. break;
  17694. 4f880: 00000f06 br 4f8c0 <altera_avalon_jtag_uart_ioctl+0xd0>
  17695. case TIOCGCONNECTED:
  17696. /* Find out whether host is connected */
  17697. if (sp->timeout != INT_MAX)
  17698. 4f884: e0bffd17 ldw r2,-12(fp)
  17699. 4f888: 10c00117 ldw r3,4(r2)
  17700. 4f88c: 00a00034 movhi r2,32768
  17701. 4f890: 10bfffc4 addi r2,r2,-1
  17702. 4f894: 18800c26 beq r3,r2,4f8c8 <altera_avalon_jtag_uart_ioctl+0xd8>
  17703. {
  17704. *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0;
  17705. 4f898: e0bffd17 ldw r2,-12(fp)
  17706. 4f89c: 10c00917 ldw r3,36(r2)
  17707. 4f8a0: e0bffd17 ldw r2,-12(fp)
  17708. 4f8a4: 10800117 ldw r2,4(r2)
  17709. 4f8a8: 1885803a cmpltu r2,r3,r2
  17710. 4f8ac: 10c03fcc andi r3,r2,255
  17711. 4f8b0: e0bfff17 ldw r2,-4(fp)
  17712. 4f8b4: 10c00015 stw r3,0(r2)
  17713. rc = 0;
  17714. 4f8b8: e03ffb15 stw zero,-20(fp)
  17715. }
  17716. break;
  17717. 4f8bc: 00000206 br 4f8c8 <altera_avalon_jtag_uart_ioctl+0xd8>
  17718. {
  17719. int timeout = *((int *)arg);
  17720. sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1;
  17721. rc = 0;
  17722. }
  17723. break;
  17724. 4f8c0: 0001883a nop
  17725. 4f8c4: 00000106 br 4f8cc <altera_avalon_jtag_uart_ioctl+0xdc>
  17726. if (sp->timeout != INT_MAX)
  17727. {
  17728. *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0;
  17729. rc = 0;
  17730. }
  17731. break;
  17732. 4f8c8: 0001883a nop
  17733. default:
  17734. break;
  17735. }
  17736. return rc;
  17737. 4f8cc: e0bffb17 ldw r2,-20(fp)
  17738. }
  17739. 4f8d0: e037883a mov sp,fp
  17740. 4f8d4: df000017 ldw fp,0(sp)
  17741. 4f8d8: dec00104 addi sp,sp,4
  17742. 4f8dc: f800283a ret
  17743. 0004f8e0 <altera_avalon_jtag_uart_read>:
  17744. /* ----------------------------------------------------------- */
  17745. int
  17746. altera_avalon_jtag_uart_read(altera_avalon_jtag_uart_state* sp,
  17747. char * buffer, int space, int flags)
  17748. {
  17749. 4f8e0: defff304 addi sp,sp,-52
  17750. 4f8e4: dfc00c15 stw ra,48(sp)
  17751. 4f8e8: df000b15 stw fp,44(sp)
  17752. 4f8ec: df000b04 addi fp,sp,44
  17753. 4f8f0: e13ffc15 stw r4,-16(fp)
  17754. 4f8f4: e17ffd15 stw r5,-12(fp)
  17755. 4f8f8: e1bffe15 stw r6,-8(fp)
  17756. 4f8fc: e1ffff15 stw r7,-4(fp)
  17757. char * ptr = buffer;
  17758. 4f900: e0bffd17 ldw r2,-12(fp)
  17759. 4f904: e0bff515 stw r2,-44(fp)
  17760. * When running in a multi threaded environment, obtain the "read_lock"
  17761. * semaphore. This ensures that reading from the device is thread-safe.
  17762. */
  17763. ALT_SEM_PEND (sp->read_lock, 0);
  17764. while (space > 0)
  17765. 4f908: 00004706 br 4fa28 <altera_avalon_jtag_uart_read+0x148>
  17766. unsigned int in, out;
  17767. /* Read as much data as possible */
  17768. do
  17769. {
  17770. in = sp->rx_in;
  17771. 4f90c: e0bffc17 ldw r2,-16(fp)
  17772. 4f910: 10800a17 ldw r2,40(r2)
  17773. 4f914: e0bff715 stw r2,-36(fp)
  17774. out = sp->rx_out;
  17775. 4f918: e0bffc17 ldw r2,-16(fp)
  17776. 4f91c: 10800b17 ldw r2,44(r2)
  17777. 4f920: e0bff815 stw r2,-32(fp)
  17778. if (in >= out)
  17779. 4f924: e0fff717 ldw r3,-36(fp)
  17780. 4f928: e0bff817 ldw r2,-32(fp)
  17781. 4f92c: 18800536 bltu r3,r2,4f944 <altera_avalon_jtag_uart_read+0x64>
  17782. n = in - out;
  17783. 4f930: e0fff717 ldw r3,-36(fp)
  17784. 4f934: e0bff817 ldw r2,-32(fp)
  17785. 4f938: 1885c83a sub r2,r3,r2
  17786. 4f93c: e0bff615 stw r2,-40(fp)
  17787. 4f940: 00000406 br 4f954 <altera_avalon_jtag_uart_read+0x74>
  17788. else
  17789. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out;
  17790. 4f944: 00c20004 movi r3,2048
  17791. 4f948: e0bff817 ldw r2,-32(fp)
  17792. 4f94c: 1885c83a sub r2,r3,r2
  17793. 4f950: e0bff615 stw r2,-40(fp)
  17794. if (n == 0)
  17795. 4f954: e0bff617 ldw r2,-40(fp)
  17796. 4f958: 10001e26 beq r2,zero,4f9d4 <altera_avalon_jtag_uart_read+0xf4>
  17797. break; /* No more data available */
  17798. if (n > space)
  17799. 4f95c: e0fffe17 ldw r3,-8(fp)
  17800. 4f960: e0bff617 ldw r2,-40(fp)
  17801. 4f964: 1880022e bgeu r3,r2,4f970 <altera_avalon_jtag_uart_read+0x90>
  17802. n = space;
  17803. 4f968: e0bffe17 ldw r2,-8(fp)
  17804. 4f96c: e0bff615 stw r2,-40(fp)
  17805. memcpy(ptr, sp->rx_buf + out, n);
  17806. 4f970: e0bffc17 ldw r2,-16(fp)
  17807. 4f974: 10c00e04 addi r3,r2,56
  17808. 4f978: e0bff817 ldw r2,-32(fp)
  17809. 4f97c: 1885883a add r2,r3,r2
  17810. 4f980: e1bff617 ldw r6,-40(fp)
  17811. 4f984: 100b883a mov r5,r2
  17812. 4f988: e13ff517 ldw r4,-44(fp)
  17813. 4f98c: 00476c00 call 476c0 <memcpy>
  17814. ptr += n;
  17815. 4f990: e0fff517 ldw r3,-44(fp)
  17816. 4f994: e0bff617 ldw r2,-40(fp)
  17817. 4f998: 1885883a add r2,r3,r2
  17818. 4f99c: e0bff515 stw r2,-44(fp)
  17819. space -= n;
  17820. 4f9a0: e0fffe17 ldw r3,-8(fp)
  17821. 4f9a4: e0bff617 ldw r2,-40(fp)
  17822. 4f9a8: 1885c83a sub r2,r3,r2
  17823. 4f9ac: e0bffe15 stw r2,-8(fp)
  17824. sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17825. 4f9b0: e0fff817 ldw r3,-32(fp)
  17826. 4f9b4: e0bff617 ldw r2,-40(fp)
  17827. 4f9b8: 1885883a add r2,r3,r2
  17828. 4f9bc: 10c1ffcc andi r3,r2,2047
  17829. 4f9c0: e0bffc17 ldw r2,-16(fp)
  17830. 4f9c4: 10c00b15 stw r3,44(r2)
  17831. }
  17832. while (space > 0);
  17833. 4f9c8: e0bffe17 ldw r2,-8(fp)
  17834. 4f9cc: 00bfcf16 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c>
  17835. 4f9d0: 00000106 br 4f9d8 <altera_avalon_jtag_uart_read+0xf8>
  17836. n = in - out;
  17837. else
  17838. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out;
  17839. if (n == 0)
  17840. break; /* No more data available */
  17841. 4f9d4: 0001883a nop
  17842. sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  17843. }
  17844. while (space > 0);
  17845. /* If we read any data then return it */
  17846. if (ptr != buffer)
  17847. 4f9d8: e0fff517 ldw r3,-44(fp)
  17848. 4f9dc: e0bffd17 ldw r2,-12(fp)
  17849. 4f9e0: 1880141e bne r3,r2,4fa34 <altera_avalon_jtag_uart_read+0x154>
  17850. break;
  17851. /* If in non-blocking mode then return error */
  17852. if (flags & O_NONBLOCK)
  17853. 4f9e4: e0bfff17 ldw r2,-4(fp)
  17854. 4f9e8: 1090000c andi r2,r2,16384
  17855. 4f9ec: 1000131e bne r2,zero,4fa3c <altera_avalon_jtag_uart_read+0x15c>
  17856. while (in == sp->rx_in && sp->host_inactive < sp->timeout)
  17857. ;
  17858. }
  17859. #else
  17860. /* No OS: Always spin */
  17861. while (in == sp->rx_in && sp->host_inactive < sp->timeout)
  17862. 4f9f0: 0001883a nop
  17863. 4f9f4: e0bffc17 ldw r2,-16(fp)
  17864. 4f9f8: 10c00a17 ldw r3,40(r2)
  17865. 4f9fc: e0bff717 ldw r2,-36(fp)
  17866. 4fa00: 1880051e bne r3,r2,4fa18 <altera_avalon_jtag_uart_read+0x138>
  17867. 4fa04: e0bffc17 ldw r2,-16(fp)
  17868. 4fa08: 10c00917 ldw r3,36(r2)
  17869. 4fa0c: e0bffc17 ldw r2,-16(fp)
  17870. 4fa10: 10800117 ldw r2,4(r2)
  17871. 4fa14: 18bff736 bltu r3,r2,4f9f4 <__alt_data_end+0xfffdd9f4>
  17872. ;
  17873. #endif /* __ucosii__ */
  17874. if (in == sp->rx_in)
  17875. 4fa18: e0bffc17 ldw r2,-16(fp)
  17876. 4fa1c: 10c00a17 ldw r3,40(r2)
  17877. 4fa20: e0bff717 ldw r2,-36(fp)
  17878. 4fa24: 18800726 beq r3,r2,4fa44 <altera_avalon_jtag_uart_read+0x164>
  17879. * When running in a multi threaded environment, obtain the "read_lock"
  17880. * semaphore. This ensures that reading from the device is thread-safe.
  17881. */
  17882. ALT_SEM_PEND (sp->read_lock, 0);
  17883. while (space > 0)
  17884. 4fa28: e0bffe17 ldw r2,-8(fp)
  17885. 4fa2c: 00bfb716 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c>
  17886. 4fa30: 00000506 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
  17887. }
  17888. while (space > 0);
  17889. /* If we read any data then return it */
  17890. if (ptr != buffer)
  17891. break;
  17892. 4fa34: 0001883a nop
  17893. 4fa38: 00000306 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
  17894. /* If in non-blocking mode then return error */
  17895. if (flags & O_NONBLOCK)
  17896. break;
  17897. 4fa3c: 0001883a nop
  17898. 4fa40: 00000106 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
  17899. while (in == sp->rx_in && sp->host_inactive < sp->timeout)
  17900. ;
  17901. #endif /* __ucosii__ */
  17902. if (in == sp->rx_in)
  17903. break;
  17904. 4fa44: 0001883a nop
  17905. * semaphore so that other threads can access the buffer.
  17906. */
  17907. ALT_SEM_POST (sp->read_lock);
  17908. if (ptr != buffer)
  17909. 4fa48: e0fff517 ldw r3,-44(fp)
  17910. 4fa4c: e0bffd17 ldw r2,-12(fp)
  17911. 4fa50: 18801826 beq r3,r2,4fab4 <altera_avalon_jtag_uart_read+0x1d4>
  17912. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  17913. alt_irq_disable_all (void)
  17914. {
  17915. alt_irq_context context;
  17916. NIOS2_READ_STATUS (context);
  17917. 4fa54: 0005303a rdctl r2,status
  17918. 4fa58: e0bffb15 stw r2,-20(fp)
  17919. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  17920. 4fa5c: e0fffb17 ldw r3,-20(fp)
  17921. 4fa60: 00bfff84 movi r2,-2
  17922. 4fa64: 1884703a and r2,r3,r2
  17923. 4fa68: 1001703a wrctl status,r2
  17924. return context;
  17925. 4fa6c: e0bffb17 ldw r2,-20(fp)
  17926. {
  17927. /* If we read any data then there is space in the buffer so enable interrupts */
  17928. context = alt_irq_disable_all();
  17929. 4fa70: e0bffa15 stw r2,-24(fp)
  17930. sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
  17931. 4fa74: e0bffc17 ldw r2,-16(fp)
  17932. 4fa78: 10800817 ldw r2,32(r2)
  17933. 4fa7c: 10c00054 ori r3,r2,1
  17934. 4fa80: e0bffc17 ldw r2,-16(fp)
  17935. 4fa84: 10c00815 stw r3,32(r2)
  17936. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
  17937. 4fa88: e0bffc17 ldw r2,-16(fp)
  17938. 4fa8c: 10800017 ldw r2,0(r2)
  17939. 4fa90: 10800104 addi r2,r2,4
  17940. 4fa94: 1007883a mov r3,r2
  17941. 4fa98: e0bffc17 ldw r2,-16(fp)
  17942. 4fa9c: 10800817 ldw r2,32(r2)
  17943. 4faa0: 18800035 stwio r2,0(r3)
  17944. 4faa4: e0bffa17 ldw r2,-24(fp)
  17945. 4faa8: e0bff915 stw r2,-28(fp)
  17946. status &= ~NIOS2_STATUS_PIE_MSK;
  17947. status |= (context & NIOS2_STATUS_PIE_MSK);
  17948. NIOS2_WRITE_STATUS (status);
  17949. #else
  17950. NIOS2_WRITE_STATUS (context);
  17951. 4faac: e0bff917 ldw r2,-28(fp)
  17952. 4fab0: 1001703a wrctl status,r2
  17953. alt_irq_enable_all(context);
  17954. }
  17955. if (ptr != buffer)
  17956. 4fab4: e0fff517 ldw r3,-44(fp)
  17957. 4fab8: e0bffd17 ldw r2,-12(fp)
  17958. 4fabc: 18800426 beq r3,r2,4fad0 <altera_avalon_jtag_uart_read+0x1f0>
  17959. return ptr - buffer;
  17960. 4fac0: e0fff517 ldw r3,-44(fp)
  17961. 4fac4: e0bffd17 ldw r2,-12(fp)
  17962. 4fac8: 1885c83a sub r2,r3,r2
  17963. 4facc: 00000606 br 4fae8 <altera_avalon_jtag_uart_read+0x208>
  17964. else if (flags & O_NONBLOCK)
  17965. 4fad0: e0bfff17 ldw r2,-4(fp)
  17966. 4fad4: 1090000c andi r2,r2,16384
  17967. 4fad8: 10000226 beq r2,zero,4fae4 <altera_avalon_jtag_uart_read+0x204>
  17968. return -EWOULDBLOCK;
  17969. 4fadc: 00bffd44 movi r2,-11
  17970. 4fae0: 00000106 br 4fae8 <altera_avalon_jtag_uart_read+0x208>
  17971. else
  17972. return -EIO;
  17973. 4fae4: 00bffec4 movi r2,-5
  17974. }
  17975. 4fae8: e037883a mov sp,fp
  17976. 4faec: dfc00117 ldw ra,4(sp)
  17977. 4faf0: df000017 ldw fp,0(sp)
  17978. 4faf4: dec00204 addi sp,sp,8
  17979. 4faf8: f800283a ret
  17980. 0004fafc <altera_avalon_jtag_uart_write>:
  17981. /* ----------------------------------------------------------- */
  17982. int
  17983. altera_avalon_jtag_uart_write(altera_avalon_jtag_uart_state* sp,
  17984. const char * ptr, int count, int flags)
  17985. {
  17986. 4fafc: defff304 addi sp,sp,-52
  17987. 4fb00: dfc00c15 stw ra,48(sp)
  17988. 4fb04: df000b15 stw fp,44(sp)
  17989. 4fb08: df000b04 addi fp,sp,44
  17990. 4fb0c: e13ffc15 stw r4,-16(fp)
  17991. 4fb10: e17ffd15 stw r5,-12(fp)
  17992. 4fb14: e1bffe15 stw r6,-8(fp)
  17993. 4fb18: e1ffff15 stw r7,-4(fp)
  17994. /* Remove warning at optimisation level 03 by seting out to 0 */
  17995. unsigned int in, out=0;
  17996. 4fb1c: e03ff515 stw zero,-44(fp)
  17997. unsigned int n;
  17998. alt_irq_context context;
  17999. const char * start = ptr;
  18000. 4fb20: e0bffd17 ldw r2,-12(fp)
  18001. 4fb24: e0bff715 stw r2,-36(fp)
  18002. ALT_SEM_PEND (sp->write_lock, 0);
  18003. do
  18004. {
  18005. /* Copy as much as we can into the transmit buffer */
  18006. while (count > 0)
  18007. 4fb28: 00003706 br 4fc08 <altera_avalon_jtag_uart_write+0x10c>
  18008. {
  18009. /* We need a stable value of the out pointer to calculate the space available */
  18010. in = sp->tx_in;
  18011. 4fb2c: e0bffc17 ldw r2,-16(fp)
  18012. 4fb30: 10800c17 ldw r2,48(r2)
  18013. 4fb34: e0bff915 stw r2,-28(fp)
  18014. out = sp->tx_out;
  18015. 4fb38: e0bffc17 ldw r2,-16(fp)
  18016. 4fb3c: 10800d17 ldw r2,52(r2)
  18017. 4fb40: e0bff515 stw r2,-44(fp)
  18018. if (in < out)
  18019. 4fb44: e0fff917 ldw r3,-28(fp)
  18020. 4fb48: e0bff517 ldw r2,-44(fp)
  18021. 4fb4c: 1880062e bgeu r3,r2,4fb68 <altera_avalon_jtag_uart_write+0x6c>
  18022. n = out - 1 - in;
  18023. 4fb50: e0fff517 ldw r3,-44(fp)
  18024. 4fb54: e0bff917 ldw r2,-28(fp)
  18025. 4fb58: 1885c83a sub r2,r3,r2
  18026. 4fb5c: 10bfffc4 addi r2,r2,-1
  18027. 4fb60: e0bff615 stw r2,-40(fp)
  18028. 4fb64: 00000b06 br 4fb94 <altera_avalon_jtag_uart_write+0x98>
  18029. else if (out > 0)
  18030. 4fb68: e0bff517 ldw r2,-44(fp)
  18031. 4fb6c: 10000526 beq r2,zero,4fb84 <altera_avalon_jtag_uart_write+0x88>
  18032. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in;
  18033. 4fb70: 00c20004 movi r3,2048
  18034. 4fb74: e0bff917 ldw r2,-28(fp)
  18035. 4fb78: 1885c83a sub r2,r3,r2
  18036. 4fb7c: e0bff615 stw r2,-40(fp)
  18037. 4fb80: 00000406 br 4fb94 <altera_avalon_jtag_uart_write+0x98>
  18038. else
  18039. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in;
  18040. 4fb84: 00c1ffc4 movi r3,2047
  18041. 4fb88: e0bff917 ldw r2,-28(fp)
  18042. 4fb8c: 1885c83a sub r2,r3,r2
  18043. 4fb90: e0bff615 stw r2,-40(fp)
  18044. if (n == 0)
  18045. 4fb94: e0bff617 ldw r2,-40(fp)
  18046. 4fb98: 10001e26 beq r2,zero,4fc14 <altera_avalon_jtag_uart_write+0x118>
  18047. break;
  18048. if (n > count)
  18049. 4fb9c: e0fffe17 ldw r3,-8(fp)
  18050. 4fba0: e0bff617 ldw r2,-40(fp)
  18051. 4fba4: 1880022e bgeu r3,r2,4fbb0 <altera_avalon_jtag_uart_write+0xb4>
  18052. n = count;
  18053. 4fba8: e0bffe17 ldw r2,-8(fp)
  18054. 4fbac: e0bff615 stw r2,-40(fp)
  18055. memcpy(sp->tx_buf + in, ptr, n);
  18056. 4fbb0: e0bffc17 ldw r2,-16(fp)
  18057. 4fbb4: 10c20e04 addi r3,r2,2104
  18058. 4fbb8: e0bff917 ldw r2,-28(fp)
  18059. 4fbbc: 1885883a add r2,r3,r2
  18060. 4fbc0: e1bff617 ldw r6,-40(fp)
  18061. 4fbc4: e17ffd17 ldw r5,-12(fp)
  18062. 4fbc8: 1009883a mov r4,r2
  18063. 4fbcc: 00476c00 call 476c0 <memcpy>
  18064. ptr += n;
  18065. 4fbd0: e0fffd17 ldw r3,-12(fp)
  18066. 4fbd4: e0bff617 ldw r2,-40(fp)
  18067. 4fbd8: 1885883a add r2,r3,r2
  18068. 4fbdc: e0bffd15 stw r2,-12(fp)
  18069. count -= n;
  18070. 4fbe0: e0fffe17 ldw r3,-8(fp)
  18071. 4fbe4: e0bff617 ldw r2,-40(fp)
  18072. 4fbe8: 1885c83a sub r2,r3,r2
  18073. 4fbec: e0bffe15 stw r2,-8(fp)
  18074. sp->tx_in = (in + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
  18075. 4fbf0: e0fff917 ldw r3,-28(fp)
  18076. 4fbf4: e0bff617 ldw r2,-40(fp)
  18077. 4fbf8: 1885883a add r2,r3,r2
  18078. 4fbfc: 10c1ffcc andi r3,r2,2047
  18079. 4fc00: e0bffc17 ldw r2,-16(fp)
  18080. 4fc04: 10c00c15 stw r3,48(r2)
  18081. ALT_SEM_PEND (sp->write_lock, 0);
  18082. do
  18083. {
  18084. /* Copy as much as we can into the transmit buffer */
  18085. while (count > 0)
  18086. 4fc08: e0bffe17 ldw r2,-8(fp)
  18087. 4fc0c: 00bfc716 blt zero,r2,4fb2c <__alt_data_end+0xfffddb2c>
  18088. 4fc10: 00000106 br 4fc18 <altera_avalon_jtag_uart_write+0x11c>
  18089. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in;
  18090. else
  18091. n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in;
  18092. if (n == 0)
  18093. break;
  18094. 4fc14: 0001883a nop
  18095. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  18096. alt_irq_disable_all (void)
  18097. {
  18098. alt_irq_context context;
  18099. NIOS2_READ_STATUS (context);
  18100. 4fc18: 0005303a rdctl r2,status
  18101. 4fc1c: e0bffb15 stw r2,-20(fp)
  18102. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  18103. 4fc20: e0fffb17 ldw r3,-20(fp)
  18104. 4fc24: 00bfff84 movi r2,-2
  18105. 4fc28: 1884703a and r2,r3,r2
  18106. 4fc2c: 1001703a wrctl status,r2
  18107. return context;
  18108. 4fc30: e0bffb17 ldw r2,-20(fp)
  18109. * to enable interrupts if there is no space left in the FIFO
  18110. *
  18111. * For now kick the interrupt routine every time to make it transmit
  18112. * the data
  18113. */
  18114. context = alt_irq_disable_all();
  18115. 4fc34: e0bffa15 stw r2,-24(fp)
  18116. sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK;
  18117. 4fc38: e0bffc17 ldw r2,-16(fp)
  18118. 4fc3c: 10800817 ldw r2,32(r2)
  18119. 4fc40: 10c00094 ori r3,r2,2
  18120. 4fc44: e0bffc17 ldw r2,-16(fp)
  18121. 4fc48: 10c00815 stw r3,32(r2)
  18122. IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
  18123. 4fc4c: e0bffc17 ldw r2,-16(fp)
  18124. 4fc50: 10800017 ldw r2,0(r2)
  18125. 4fc54: 10800104 addi r2,r2,4
  18126. 4fc58: 1007883a mov r3,r2
  18127. 4fc5c: e0bffc17 ldw r2,-16(fp)
  18128. 4fc60: 10800817 ldw r2,32(r2)
  18129. 4fc64: 18800035 stwio r2,0(r3)
  18130. 4fc68: e0bffa17 ldw r2,-24(fp)
  18131. 4fc6c: e0bff815 stw r2,-32(fp)
  18132. status &= ~NIOS2_STATUS_PIE_MSK;
  18133. status |= (context & NIOS2_STATUS_PIE_MSK);
  18134. NIOS2_WRITE_STATUS (status);
  18135. #else
  18136. NIOS2_WRITE_STATUS (context);
  18137. 4fc70: e0bff817 ldw r2,-32(fp)
  18138. 4fc74: 1001703a wrctl status,r2
  18139. /*
  18140. * If there is any data left then either return now or block until
  18141. * some has been sent
  18142. */
  18143. /* consider: test whether there is anything there while doing this and delay for at most 2s. */
  18144. if (count > 0)
  18145. 4fc78: e0bffe17 ldw r2,-8(fp)
  18146. 4fc7c: 0080100e bge zero,r2,4fcc0 <altera_avalon_jtag_uart_write+0x1c4>
  18147. {
  18148. if (flags & O_NONBLOCK)
  18149. 4fc80: e0bfff17 ldw r2,-4(fp)
  18150. 4fc84: 1090000c andi r2,r2,16384
  18151. 4fc88: 1000101e bne r2,zero,4fccc <altera_avalon_jtag_uart_write+0x1d0>
  18152. /*
  18153. * No OS present: Always wait for data to be removed from buffer. Once
  18154. * the interrupt routine has removed some data then we will be able to
  18155. * insert some more.
  18156. */
  18157. while (out == sp->tx_out && sp->host_inactive < sp->timeout)
  18158. 4fc8c: 0001883a nop
  18159. 4fc90: e0bffc17 ldw r2,-16(fp)
  18160. 4fc94: 10c00d17 ldw r3,52(r2)
  18161. 4fc98: e0bff517 ldw r2,-44(fp)
  18162. 4fc9c: 1880051e bne r3,r2,4fcb4 <altera_avalon_jtag_uart_write+0x1b8>
  18163. 4fca0: e0bffc17 ldw r2,-16(fp)
  18164. 4fca4: 10c00917 ldw r3,36(r2)
  18165. 4fca8: e0bffc17 ldw r2,-16(fp)
  18166. 4fcac: 10800117 ldw r2,4(r2)
  18167. 4fcb0: 18bff736 bltu r3,r2,4fc90 <__alt_data_end+0xfffddc90>
  18168. ;
  18169. #endif /* __ucosii__ */
  18170. if (sp->host_inactive)
  18171. 4fcb4: e0bffc17 ldw r2,-16(fp)
  18172. 4fcb8: 10800917 ldw r2,36(r2)
  18173. 4fcbc: 1000051e bne r2,zero,4fcd4 <altera_avalon_jtag_uart_write+0x1d8>
  18174. break;
  18175. }
  18176. }
  18177. while (count > 0);
  18178. 4fcc0: e0bffe17 ldw r2,-8(fp)
  18179. 4fcc4: 00bfd016 blt zero,r2,4fc08 <__alt_data_end+0xfffddc08>
  18180. 4fcc8: 00000306 br 4fcd8 <altera_avalon_jtag_uart_write+0x1dc>
  18181. */
  18182. /* consider: test whether there is anything there while doing this and delay for at most 2s. */
  18183. if (count > 0)
  18184. {
  18185. if (flags & O_NONBLOCK)
  18186. break;
  18187. 4fccc: 0001883a nop
  18188. 4fcd0: 00000106 br 4fcd8 <altera_avalon_jtag_uart_write+0x1dc>
  18189. while (out == sp->tx_out && sp->host_inactive < sp->timeout)
  18190. ;
  18191. #endif /* __ucosii__ */
  18192. if (sp->host_inactive)
  18193. break;
  18194. 4fcd4: 0001883a nop
  18195. * Now that access to the circular buffer is complete, release the write
  18196. * semaphore so that other threads can access the buffer.
  18197. */
  18198. ALT_SEM_POST (sp->write_lock);
  18199. if (ptr != start)
  18200. 4fcd8: e0fffd17 ldw r3,-12(fp)
  18201. 4fcdc: e0bff717 ldw r2,-36(fp)
  18202. 4fce0: 18800426 beq r3,r2,4fcf4 <altera_avalon_jtag_uart_write+0x1f8>
  18203. return ptr - start;
  18204. 4fce4: e0fffd17 ldw r3,-12(fp)
  18205. 4fce8: e0bff717 ldw r2,-36(fp)
  18206. 4fcec: 1885c83a sub r2,r3,r2
  18207. 4fcf0: 00000606 br 4fd0c <altera_avalon_jtag_uart_write+0x210>
  18208. else if (flags & O_NONBLOCK)
  18209. 4fcf4: e0bfff17 ldw r2,-4(fp)
  18210. 4fcf8: 1090000c andi r2,r2,16384
  18211. 4fcfc: 10000226 beq r2,zero,4fd08 <altera_avalon_jtag_uart_write+0x20c>
  18212. return -EWOULDBLOCK;
  18213. 4fd00: 00bffd44 movi r2,-11
  18214. 4fd04: 00000106 br 4fd0c <altera_avalon_jtag_uart_write+0x210>
  18215. sp->tx_out = sp->tx_in = 0;
  18216. return ptr - start + count;
  18217. }
  18218. #endif
  18219. else
  18220. return -EIO; /* Host not connected */
  18221. 4fd08: 00bffec4 movi r2,-5
  18222. }
  18223. 4fd0c: e037883a mov sp,fp
  18224. 4fd10: dfc00117 ldw ra,4(sp)
  18225. 4fd14: df000017 ldw fp,0(sp)
  18226. 4fd18: dec00204 addi sp,sp,8
  18227. 4fd1c: f800283a ret
  18228. 0004fd20 <lcd_write_command>:
  18229. /* --------------------------------------------------------------------- */
  18230. static void lcd_write_command(altera_avalon_lcd_16207_state* sp,
  18231. unsigned char command)
  18232. {
  18233. 4fd20: defffa04 addi sp,sp,-24
  18234. 4fd24: dfc00515 stw ra,20(sp)
  18235. 4fd28: df000415 stw fp,16(sp)
  18236. 4fd2c: df000404 addi fp,sp,16
  18237. 4fd30: e13ffe15 stw r4,-8(fp)
  18238. 4fd34: 2805883a mov r2,r5
  18239. 4fd38: e0bfff05 stb r2,-4(fp)
  18240. unsigned int base = sp->base;
  18241. 4fd3c: e0bffe17 ldw r2,-8(fp)
  18242. 4fd40: 10800017 ldw r2,0(r2)
  18243. 4fd44: e0bffd15 stw r2,-12(fp)
  18244. /* We impose a timeout on the driver in case the LCD panel isn't connected.
  18245. * The first time we call this function the timeout is approx 25ms
  18246. * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems
  18247. * with slower clocks, or debug builds, or slower memory will take longer.
  18248. */
  18249. int i = 1000000;
  18250. 4fd48: 008003f4 movhi r2,15
  18251. 4fd4c: 10909004 addi r2,r2,16960
  18252. 4fd50: e0bffc15 stw r2,-16(fp)
  18253. /* Don't bother if the LCD panel didn't work before */
  18254. if (sp->broken)
  18255. 4fd54: e0bffe17 ldw r2,-8(fp)
  18256. 4fd58: 10800803 ldbu r2,32(r2)
  18257. 4fd5c: 10803fcc andi r2,r2,255
  18258. 4fd60: 1080201c xori r2,r2,128
  18259. 4fd64: 10bfe004 addi r2,r2,-128
  18260. 4fd68: 1000151e bne r2,zero,4fdc0 <lcd_write_command+0xa0>
  18261. return;
  18262. /* Wait until LCD isn't busy. */
  18263. while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
  18264. 4fd6c: 00000906 br 4fd94 <lcd_write_command+0x74>
  18265. if (--i == 0)
  18266. 4fd70: e0bffc17 ldw r2,-16(fp)
  18267. 4fd74: 10bfffc4 addi r2,r2,-1
  18268. 4fd78: e0bffc15 stw r2,-16(fp)
  18269. 4fd7c: e0bffc17 ldw r2,-16(fp)
  18270. 4fd80: 1000041e bne r2,zero,4fd94 <lcd_write_command+0x74>
  18271. {
  18272. sp->broken = 1;
  18273. 4fd84: e0bffe17 ldw r2,-8(fp)
  18274. 4fd88: 00c00044 movi r3,1
  18275. 4fd8c: 10c00805 stb r3,32(r2)
  18276. return;
  18277. 4fd90: 00000c06 br 4fdc4 <lcd_write_command+0xa4>
  18278. /* Don't bother if the LCD panel didn't work before */
  18279. if (sp->broken)
  18280. return;
  18281. /* Wait until LCD isn't busy. */
  18282. while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
  18283. 4fd94: e0bffd17 ldw r2,-12(fp)
  18284. 4fd98: 10800104 addi r2,r2,4
  18285. 4fd9c: 10800037 ldwio r2,0(r2)
  18286. 4fda0: 1080200c andi r2,r2,128
  18287. 4fda4: 103ff21e bne r2,zero,4fd70 <__alt_data_end+0xfffddd70>
  18288. }
  18289. /* Despite what it says in the datasheet, the LCD isn't ready to accept
  18290. * a write immediately after it returns BUSY=0. Wait for 100us more.
  18291. */
  18292. usleep(100);
  18293. 4fda8: 01001904 movi r4,100
  18294. 4fdac: 00518000 call 51800 <usleep>
  18295. IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command);
  18296. 4fdb0: e0bffd17 ldw r2,-12(fp)
  18297. 4fdb4: e0ffff03 ldbu r3,-4(fp)
  18298. 4fdb8: 10c00035 stwio r3,0(r2)
  18299. 4fdbc: 00000106 br 4fdc4 <lcd_write_command+0xa4>
  18300. */
  18301. int i = 1000000;
  18302. /* Don't bother if the LCD panel didn't work before */
  18303. if (sp->broken)
  18304. return;
  18305. 4fdc0: 0001883a nop
  18306. * a write immediately after it returns BUSY=0. Wait for 100us more.
  18307. */
  18308. usleep(100);
  18309. IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command);
  18310. }
  18311. 4fdc4: e037883a mov sp,fp
  18312. 4fdc8: dfc00117 ldw ra,4(sp)
  18313. 4fdcc: df000017 ldw fp,0(sp)
  18314. 4fdd0: dec00204 addi sp,sp,8
  18315. 4fdd4: f800283a ret
  18316. 0004fdd8 <lcd_write_data>:
  18317. /* --------------------------------------------------------------------- */
  18318. static void lcd_write_data(altera_avalon_lcd_16207_state* sp,
  18319. unsigned char data)
  18320. {
  18321. 4fdd8: defffa04 addi sp,sp,-24
  18322. 4fddc: dfc00515 stw ra,20(sp)
  18323. 4fde0: df000415 stw fp,16(sp)
  18324. 4fde4: df000404 addi fp,sp,16
  18325. 4fde8: e13ffe15 stw r4,-8(fp)
  18326. 4fdec: 2805883a mov r2,r5
  18327. 4fdf0: e0bfff05 stb r2,-4(fp)
  18328. unsigned int base = sp->base;
  18329. 4fdf4: e0bffe17 ldw r2,-8(fp)
  18330. 4fdf8: 10800017 ldw r2,0(r2)
  18331. 4fdfc: e0bffd15 stw r2,-12(fp)
  18332. /* We impose a timeout on the driver in case the LCD panel isn't connected.
  18333. * The first time we call this function the timeout is approx 25ms
  18334. * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems
  18335. * with slower clocks, or debug builds, or slower memory will take longer.
  18336. */
  18337. int i = 1000000;
  18338. 4fe00: 008003f4 movhi r2,15
  18339. 4fe04: 10909004 addi r2,r2,16960
  18340. 4fe08: e0bffc15 stw r2,-16(fp)
  18341. /* Don't bother if the LCD panel didn't work before */
  18342. if (sp->broken)
  18343. 4fe0c: e0bffe17 ldw r2,-8(fp)
  18344. 4fe10: 10800803 ldbu r2,32(r2)
  18345. 4fe14: 10803fcc andi r2,r2,255
  18346. 4fe18: 1080201c xori r2,r2,128
  18347. 4fe1c: 10bfe004 addi r2,r2,-128
  18348. 4fe20: 10001d1e bne r2,zero,4fe98 <lcd_write_data+0xc0>
  18349. return;
  18350. /* Wait until LCD isn't busy. */
  18351. while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
  18352. 4fe24: 00000906 br 4fe4c <lcd_write_data+0x74>
  18353. if (--i == 0)
  18354. 4fe28: e0bffc17 ldw r2,-16(fp)
  18355. 4fe2c: 10bfffc4 addi r2,r2,-1
  18356. 4fe30: e0bffc15 stw r2,-16(fp)
  18357. 4fe34: e0bffc17 ldw r2,-16(fp)
  18358. 4fe38: 1000041e bne r2,zero,4fe4c <lcd_write_data+0x74>
  18359. {
  18360. sp->broken = 1;
  18361. 4fe3c: e0bffe17 ldw r2,-8(fp)
  18362. 4fe40: 00c00044 movi r3,1
  18363. 4fe44: 10c00805 stb r3,32(r2)
  18364. return;
  18365. 4fe48: 00001406 br 4fe9c <lcd_write_data+0xc4>
  18366. /* Don't bother if the LCD panel didn't work before */
  18367. if (sp->broken)
  18368. return;
  18369. /* Wait until LCD isn't busy. */
  18370. while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
  18371. 4fe4c: e0bffd17 ldw r2,-12(fp)
  18372. 4fe50: 10800104 addi r2,r2,4
  18373. 4fe54: 10800037 ldwio r2,0(r2)
  18374. 4fe58: 1080200c andi r2,r2,128
  18375. 4fe5c: 103ff21e bne r2,zero,4fe28 <__alt_data_end+0xfffdde28>
  18376. }
  18377. /* Despite what it says in the datasheet, the LCD isn't ready to accept
  18378. * a write immediately after it returns BUSY=0. Wait for 100us more.
  18379. */
  18380. usleep(100);
  18381. 4fe60: 01001904 movi r4,100
  18382. 4fe64: 00518000 call 51800 <usleep>
  18383. IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data);
  18384. 4fe68: e0bffd17 ldw r2,-12(fp)
  18385. 4fe6c: 10800204 addi r2,r2,8
  18386. 4fe70: 1007883a mov r3,r2
  18387. 4fe74: e0bfff03 ldbu r2,-4(fp)
  18388. 4fe78: 18800035 stwio r2,0(r3)
  18389. sp->address++;
  18390. 4fe7c: e0bffe17 ldw r2,-8(fp)
  18391. 4fe80: 108008c3 ldbu r2,35(r2)
  18392. 4fe84: 10800044 addi r2,r2,1
  18393. 4fe88: 1007883a mov r3,r2
  18394. 4fe8c: e0bffe17 ldw r2,-8(fp)
  18395. 4fe90: 10c008c5 stb r3,35(r2)
  18396. 4fe94: 00000106 br 4fe9c <lcd_write_data+0xc4>
  18397. */
  18398. int i = 1000000;
  18399. /* Don't bother if the LCD panel didn't work before */
  18400. if (sp->broken)
  18401. return;
  18402. 4fe98: 0001883a nop
  18403. usleep(100);
  18404. IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data);
  18405. sp->address++;
  18406. }
  18407. 4fe9c: e037883a mov sp,fp
  18408. 4fea0: dfc00117 ldw ra,4(sp)
  18409. 4fea4: df000017 ldw fp,0(sp)
  18410. 4fea8: dec00204 addi sp,sp,8
  18411. 4feac: f800283a ret
  18412. 0004feb0 <lcd_clear_screen>:
  18413. /* --------------------------------------------------------------------- */
  18414. static void lcd_clear_screen(altera_avalon_lcd_16207_state* sp)
  18415. {
  18416. 4feb0: defffb04 addi sp,sp,-20
  18417. 4feb4: dfc00415 stw ra,16(sp)
  18418. 4feb8: df000315 stw fp,12(sp)
  18419. 4febc: dc000215 stw r16,8(sp)
  18420. 4fec0: df000304 addi fp,sp,12
  18421. 4fec4: e13ffe15 stw r4,-8(fp)
  18422. int y;
  18423. lcd_write_command(sp, LCD_CMD_CLEAR);
  18424. 4fec8: 01400044 movi r5,1
  18425. 4fecc: e13ffe17 ldw r4,-8(fp)
  18426. 4fed0: 004fd200 call 4fd20 <lcd_write_command>
  18427. sp->x = 0;
  18428. 4fed4: e0bffe17 ldw r2,-8(fp)
  18429. 4fed8: 10000845 stb zero,33(r2)
  18430. sp->y = 0;
  18431. 4fedc: e0bffe17 ldw r2,-8(fp)
  18432. 4fee0: 10000885 stb zero,34(r2)
  18433. sp->address = 0;
  18434. 4fee4: e0bffe17 ldw r2,-8(fp)
  18435. 4fee8: 100008c5 stb zero,35(r2)
  18436. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18437. 4feec: e03ffd15 stw zero,-12(fp)
  18438. 4fef0: 00001f06 br 4ff70 <lcd_clear_screen+0xc0>
  18439. {
  18440. memset(sp->line[y].data, ' ', sizeof(sp->line[0].data));
  18441. 4fef4: 014018c4 movi r5,99
  18442. 4fef8: e13ffd17 ldw r4,-12(fp)
  18443. 4fefc: 004c9f80 call 4c9f8 <__mulsi3>
  18444. 4ff00: 10801004 addi r2,r2,64
  18445. 4ff04: e0fffe17 ldw r3,-8(fp)
  18446. 4ff08: 1885883a add r2,r3,r2
  18447. 4ff0c: 01801444 movi r6,81
  18448. 4ff10: 01400804 movi r5,32
  18449. 4ff14: 1009883a mov r4,r2
  18450. 4ff18: 00478080 call 47808 <memset>
  18451. memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible));
  18452. 4ff1c: 014018c4 movi r5,99
  18453. 4ff20: e13ffd17 ldw r4,-12(fp)
  18454. 4ff24: 004c9f80 call 4c9f8 <__mulsi3>
  18455. 4ff28: 10800c04 addi r2,r2,48
  18456. 4ff2c: e0fffe17 ldw r3,-8(fp)
  18457. 4ff30: 1885883a add r2,r3,r2
  18458. 4ff34: 01800404 movi r6,16
  18459. 4ff38: 01400804 movi r5,32
  18460. 4ff3c: 1009883a mov r4,r2
  18461. 4ff40: 00478080 call 47808 <memset>
  18462. sp->line[y].width = 0;
  18463. 4ff44: e43ffe17 ldw r16,-8(fp)
  18464. 4ff48: e0bffd17 ldw r2,-12(fp)
  18465. 4ff4c: 014018c4 movi r5,99
  18466. 4ff50: 1009883a mov r4,r2
  18467. 4ff54: 004c9f80 call 4c9f8 <__mulsi3>
  18468. 4ff58: 8085883a add r2,r16,r2
  18469. 4ff5c: 10802444 addi r2,r2,145
  18470. 4ff60: 10000005 stb zero,0(r2)
  18471. sp->x = 0;
  18472. sp->y = 0;
  18473. sp->address = 0;
  18474. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18475. 4ff64: e0bffd17 ldw r2,-12(fp)
  18476. 4ff68: 10800044 addi r2,r2,1
  18477. 4ff6c: e0bffd15 stw r2,-12(fp)
  18478. 4ff70: e0bffd17 ldw r2,-12(fp)
  18479. 4ff74: 10800090 cmplti r2,r2,2
  18480. 4ff78: 103fde1e bne r2,zero,4fef4 <__alt_data_end+0xfffddef4>
  18481. {
  18482. memset(sp->line[y].data, ' ', sizeof(sp->line[0].data));
  18483. memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible));
  18484. sp->line[y].width = 0;
  18485. }
  18486. }
  18487. 4ff7c: 0001883a nop
  18488. 4ff80: e6ffff04 addi sp,fp,-4
  18489. 4ff84: dfc00217 ldw ra,8(sp)
  18490. 4ff88: df000117 ldw fp,4(sp)
  18491. 4ff8c: dc000017 ldw r16,0(sp)
  18492. 4ff90: dec00304 addi sp,sp,12
  18493. 4ff94: f800283a ret
  18494. 0004ff98 <lcd_repaint_screen>:
  18495. /* --------------------------------------------------------------------- */
  18496. static void lcd_repaint_screen(altera_avalon_lcd_16207_state* sp)
  18497. {
  18498. 4ff98: defff504 addi sp,sp,-44
  18499. 4ff9c: dfc00a15 stw ra,40(sp)
  18500. 4ffa0: df000915 stw fp,36(sp)
  18501. 4ffa4: dc400815 stw r17,32(sp)
  18502. 4ffa8: dc000715 stw r16,28(sp)
  18503. 4ffac: df000904 addi fp,sp,36
  18504. 4ffb0: e13ffd15 stw r4,-12(fp)
  18505. /* scrollpos controls how much the lines have scrolled round. The speed
  18506. * each line scrolls at is controlled by its speed variable - while
  18507. * scrolline lines will wrap at the position set by width
  18508. */
  18509. int scrollpos = sp->scrollpos;
  18510. 4ffb4: e0bffd17 ldw r2,-12(fp)
  18511. 4ffb8: 10800943 ldbu r2,37(r2)
  18512. 4ffbc: 10803fcc andi r2,r2,255
  18513. 4ffc0: e0bffa15 stw r2,-24(fp)
  18514. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18515. 4ffc4: e03ff715 stw zero,-36(fp)
  18516. 4ffc8: 00007206 br 50194 <lcd_repaint_screen+0x1fc>
  18517. {
  18518. int width = sp->line[y].width;
  18519. 4ffcc: e43ffd17 ldw r16,-12(fp)
  18520. 4ffd0: e0bff717 ldw r2,-36(fp)
  18521. 4ffd4: 014018c4 movi r5,99
  18522. 4ffd8: 1009883a mov r4,r2
  18523. 4ffdc: 004c9f80 call 4c9f8 <__mulsi3>
  18524. 4ffe0: 8085883a add r2,r16,r2
  18525. 4ffe4: 10802444 addi r2,r2,145
  18526. 4ffe8: 10800003 ldbu r2,0(r2)
  18527. 4ffec: 10803fcc andi r2,r2,255
  18528. 4fff0: 1080201c xori r2,r2,128
  18529. 4fff4: 10bfe004 addi r2,r2,-128
  18530. 4fff8: e0bffb15 stw r2,-20(fp)
  18531. int offset = (scrollpos * sp->line[y].speed) >> 8;
  18532. 4fffc: e43ffd17 ldw r16,-12(fp)
  18533. 50000: e0bff717 ldw r2,-36(fp)
  18534. 50004: 014018c4 movi r5,99
  18535. 50008: 1009883a mov r4,r2
  18536. 5000c: 004c9f80 call 4c9f8 <__mulsi3>
  18537. 50010: 8085883a add r2,r16,r2
  18538. 50014: 10802484 addi r2,r2,146
  18539. 50018: 10800003 ldbu r2,0(r2)
  18540. 5001c: 10803fcc andi r2,r2,255
  18541. 50020: e17ffa17 ldw r5,-24(fp)
  18542. 50024: 1009883a mov r4,r2
  18543. 50028: 004c9f80 call 4c9f8 <__mulsi3>
  18544. 5002c: 1005d23a srai r2,r2,8
  18545. 50030: e0bff915 stw r2,-28(fp)
  18546. if (offset >= width)
  18547. 50034: e0fff917 ldw r3,-28(fp)
  18548. 50038: e0bffb17 ldw r2,-20(fp)
  18549. 5003c: 18800116 blt r3,r2,50044 <lcd_repaint_screen+0xac>
  18550. offset = 0;
  18551. 50040: e03ff915 stw zero,-28(fp)
  18552. for (x = 0 ; x < ALT_LCD_WIDTH ; x++)
  18553. 50044: e03ff815 stw zero,-32(fp)
  18554. 50048: 00004c06 br 5017c <lcd_repaint_screen+0x1e4>
  18555. {
  18556. char c = sp->line[y].data[(x + offset) % width];
  18557. 5004c: e0fff817 ldw r3,-32(fp)
  18558. 50050: e0bff917 ldw r2,-28(fp)
  18559. 50054: 1885883a add r2,r3,r2
  18560. 50058: e17ffb17 ldw r5,-20(fp)
  18561. 5005c: 1009883a mov r4,r2
  18562. 50060: 004c8c80 call 4c8c8 <__modsi3>
  18563. 50064: 1023883a mov r17,r2
  18564. 50068: e43ffd17 ldw r16,-12(fp)
  18565. 5006c: e0bff717 ldw r2,-36(fp)
  18566. 50070: 014018c4 movi r5,99
  18567. 50074: 1009883a mov r4,r2
  18568. 50078: 004c9f80 call 4c9f8 <__mulsi3>
  18569. 5007c: 8085883a add r2,r16,r2
  18570. 50080: 1445883a add r2,r2,r17
  18571. 50084: 10801004 addi r2,r2,64
  18572. 50088: 10800003 ldbu r2,0(r2)
  18573. 5008c: e0bffc05 stb r2,-16(fp)
  18574. /* Writing data takes 40us, so don't do it unless required */
  18575. if (sp->line[y].visible[x] != c)
  18576. 50090: e43ffd17 ldw r16,-12(fp)
  18577. 50094: e0bff717 ldw r2,-36(fp)
  18578. 50098: 014018c4 movi r5,99
  18579. 5009c: 1009883a mov r4,r2
  18580. 500a0: 004c9f80 call 4c9f8 <__mulsi3>
  18581. 500a4: 8087883a add r3,r16,r2
  18582. 500a8: e0bff817 ldw r2,-32(fp)
  18583. 500ac: 1885883a add r2,r3,r2
  18584. 500b0: 10800c04 addi r2,r2,48
  18585. 500b4: 10800003 ldbu r2,0(r2)
  18586. 500b8: 10c03fcc andi r3,r2,255
  18587. 500bc: 18c0201c xori r3,r3,128
  18588. 500c0: 18ffe004 addi r3,r3,-128
  18589. 500c4: e0bffc07 ldb r2,-16(fp)
  18590. 500c8: 18802926 beq r3,r2,50170 <lcd_repaint_screen+0x1d8>
  18591. {
  18592. unsigned char address = x + colstart[y];
  18593. 500cc: e0fff717 ldw r3,-36(fp)
  18594. 500d0: d0a00d04 addi r2,gp,-32716
  18595. 500d4: 1885883a add r2,r3,r2
  18596. 500d8: 10800003 ldbu r2,0(r2)
  18597. 500dc: 1007883a mov r3,r2
  18598. 500e0: e0bff817 ldw r2,-32(fp)
  18599. 500e4: 1885883a add r2,r3,r2
  18600. 500e8: e0bffc45 stb r2,-15(fp)
  18601. if (address != sp->address)
  18602. 500ec: e0fffc43 ldbu r3,-15(fp)
  18603. 500f0: e0bffd17 ldw r2,-12(fp)
  18604. 500f4: 108008c3 ldbu r2,35(r2)
  18605. 500f8: 10803fcc andi r2,r2,255
  18606. 500fc: 1080201c xori r2,r2,128
  18607. 50100: 10bfe004 addi r2,r2,-128
  18608. 50104: 18800a26 beq r3,r2,50130 <lcd_repaint_screen+0x198>
  18609. {
  18610. lcd_write_command(sp, LCD_CMD_WRITE_DATA | address);
  18611. 50108: e0fffc43 ldbu r3,-15(fp)
  18612. 5010c: 00bfe004 movi r2,-128
  18613. 50110: 1884b03a or r2,r3,r2
  18614. 50114: 10803fcc andi r2,r2,255
  18615. 50118: 100b883a mov r5,r2
  18616. 5011c: e13ffd17 ldw r4,-12(fp)
  18617. 50120: 004fd200 call 4fd20 <lcd_write_command>
  18618. sp->address = address;
  18619. 50124: e0fffc43 ldbu r3,-15(fp)
  18620. 50128: e0bffd17 ldw r2,-12(fp)
  18621. 5012c: 10c008c5 stb r3,35(r2)
  18622. }
  18623. lcd_write_data(sp, c);
  18624. 50130: e0bffc03 ldbu r2,-16(fp)
  18625. 50134: 10803fcc andi r2,r2,255
  18626. 50138: 100b883a mov r5,r2
  18627. 5013c: e13ffd17 ldw r4,-12(fp)
  18628. 50140: 004fdd80 call 4fdd8 <lcd_write_data>
  18629. sp->line[y].visible[x] = c;
  18630. 50144: e43ffd17 ldw r16,-12(fp)
  18631. 50148: e0bff717 ldw r2,-36(fp)
  18632. 5014c: 014018c4 movi r5,99
  18633. 50150: 1009883a mov r4,r2
  18634. 50154: 004c9f80 call 4c9f8 <__mulsi3>
  18635. 50158: 8087883a add r3,r16,r2
  18636. 5015c: e0bff817 ldw r2,-32(fp)
  18637. 50160: 1885883a add r2,r3,r2
  18638. 50164: 10800c04 addi r2,r2,48
  18639. 50168: e0fffc03 ldbu r3,-16(fp)
  18640. 5016c: 10c00005 stb r3,0(r2)
  18641. int width = sp->line[y].width;
  18642. int offset = (scrollpos * sp->line[y].speed) >> 8;
  18643. if (offset >= width)
  18644. offset = 0;
  18645. for (x = 0 ; x < ALT_LCD_WIDTH ; x++)
  18646. 50170: e0bff817 ldw r2,-32(fp)
  18647. 50174: 10800044 addi r2,r2,1
  18648. 50178: e0bff815 stw r2,-32(fp)
  18649. 5017c: e0bff817 ldw r2,-32(fp)
  18650. 50180: 10800410 cmplti r2,r2,16
  18651. 50184: 103fb11e bne r2,zero,5004c <__alt_data_end+0xfffde04c>
  18652. * scrolline lines will wrap at the position set by width
  18653. */
  18654. int scrollpos = sp->scrollpos;
  18655. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18656. 50188: e0bff717 ldw r2,-36(fp)
  18657. 5018c: 10800044 addi r2,r2,1
  18658. 50190: e0bff715 stw r2,-36(fp)
  18659. 50194: e0bff717 ldw r2,-36(fp)
  18660. 50198: 10800090 cmplti r2,r2,2
  18661. 5019c: 103f8b1e bne r2,zero,4ffcc <__alt_data_end+0xfffddfcc>
  18662. lcd_write_data(sp, c);
  18663. sp->line[y].visible[x] = c;
  18664. }
  18665. }
  18666. }
  18667. }
  18668. 501a0: 0001883a nop
  18669. 501a4: e6fffe04 addi sp,fp,-8
  18670. 501a8: dfc00317 ldw ra,12(sp)
  18671. 501ac: df000217 ldw fp,8(sp)
  18672. 501b0: dc400117 ldw r17,4(sp)
  18673. 501b4: dc000017 ldw r16,0(sp)
  18674. 501b8: dec00404 addi sp,sp,16
  18675. 501bc: f800283a ret
  18676. 000501c0 <lcd_scroll_up>:
  18677. /* --------------------------------------------------------------------- */
  18678. static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp)
  18679. {
  18680. 501c0: defffb04 addi sp,sp,-20
  18681. 501c4: dfc00415 stw ra,16(sp)
  18682. 501c8: df000315 stw fp,12(sp)
  18683. 501cc: dc000215 stw r16,8(sp)
  18684. 501d0: df000304 addi fp,sp,12
  18685. 501d4: e13ffe15 stw r4,-8(fp)
  18686. int y;
  18687. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18688. 501d8: e03ffd15 stw zero,-12(fp)
  18689. 501dc: 00002206 br 50268 <lcd_scroll_up+0xa8>
  18690. {
  18691. if (y < ALT_LCD_HEIGHT-1)
  18692. 501e0: e0bffd17 ldw r2,-12(fp)
  18693. 501e4: 00801316 blt zero,r2,50234 <lcd_scroll_up+0x74>
  18694. memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH);
  18695. 501e8: 014018c4 movi r5,99
  18696. 501ec: e13ffd17 ldw r4,-12(fp)
  18697. 501f0: 004c9f80 call 4c9f8 <__mulsi3>
  18698. 501f4: 10801004 addi r2,r2,64
  18699. 501f8: e0fffe17 ldw r3,-8(fp)
  18700. 501fc: 18a1883a add r16,r3,r2
  18701. 50200: e0bffd17 ldw r2,-12(fp)
  18702. 50204: 10800044 addi r2,r2,1
  18703. 50208: 014018c4 movi r5,99
  18704. 5020c: 1009883a mov r4,r2
  18705. 50210: 004c9f80 call 4c9f8 <__mulsi3>
  18706. 50214: 10801004 addi r2,r2,64
  18707. 50218: e0fffe17 ldw r3,-8(fp)
  18708. 5021c: 1885883a add r2,r3,r2
  18709. 50220: 01801404 movi r6,80
  18710. 50224: 100b883a mov r5,r2
  18711. 50228: 8009883a mov r4,r16
  18712. 5022c: 00476c00 call 476c0 <memcpy>
  18713. 50230: 00000a06 br 5025c <lcd_scroll_up+0x9c>
  18714. else
  18715. memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH);
  18716. 50234: 014018c4 movi r5,99
  18717. 50238: e13ffd17 ldw r4,-12(fp)
  18718. 5023c: 004c9f80 call 4c9f8 <__mulsi3>
  18719. 50240: 10801004 addi r2,r2,64
  18720. 50244: e0fffe17 ldw r3,-8(fp)
  18721. 50248: 1885883a add r2,r3,r2
  18722. 5024c: 01801404 movi r6,80
  18723. 50250: 01400804 movi r5,32
  18724. 50254: 1009883a mov r4,r2
  18725. 50258: 00478080 call 47808 <memset>
  18726. static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp)
  18727. {
  18728. int y;
  18729. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  18730. 5025c: e0bffd17 ldw r2,-12(fp)
  18731. 50260: 10800044 addi r2,r2,1
  18732. 50264: e0bffd15 stw r2,-12(fp)
  18733. 50268: e0bffd17 ldw r2,-12(fp)
  18734. 5026c: 10800090 cmplti r2,r2,2
  18735. 50270: 103fdb1e bne r2,zero,501e0 <__alt_data_end+0xfffde1e0>
  18736. memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH);
  18737. else
  18738. memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH);
  18739. }
  18740. sp->y--;
  18741. 50274: e0bffe17 ldw r2,-8(fp)
  18742. 50278: 10800883 ldbu r2,34(r2)
  18743. 5027c: 10bfffc4 addi r2,r2,-1
  18744. 50280: 1007883a mov r3,r2
  18745. 50284: e0bffe17 ldw r2,-8(fp)
  18746. 50288: 10c00885 stb r3,34(r2)
  18747. }
  18748. 5028c: 0001883a nop
  18749. 50290: e6ffff04 addi sp,fp,-4
  18750. 50294: dfc00217 ldw ra,8(sp)
  18751. 50298: df000117 ldw fp,4(sp)
  18752. 5029c: dc000017 ldw r16,0(sp)
  18753. 502a0: dec00304 addi sp,sp,12
  18754. 502a4: f800283a ret
  18755. 000502a8 <lcd_handle_escape>:
  18756. /* --------------------------------------------------------------------- */
  18757. static void lcd_handle_escape(altera_avalon_lcd_16207_state* sp, char c)
  18758. {
  18759. 502a8: defff904 addi sp,sp,-28
  18760. 502ac: dfc00615 stw ra,24(sp)
  18761. 502b0: df000515 stw fp,20(sp)
  18762. 502b4: df000504 addi fp,sp,20
  18763. 502b8: e13ffe15 stw r4,-8(fp)
  18764. 502bc: 2805883a mov r2,r5
  18765. 502c0: e0bfff05 stb r2,-4(fp)
  18766. int parm1 = 0, parm2 = 0;
  18767. 502c4: e03ffb15 stw zero,-20(fp)
  18768. 502c8: e03ffc15 stw zero,-16(fp)
  18769. if (sp->escape[0] == '[')
  18770. 502cc: e0bffe17 ldw r2,-8(fp)
  18771. 502d0: 10800a03 ldbu r2,40(r2)
  18772. 502d4: 10803fcc andi r2,r2,255
  18773. 502d8: 1080201c xori r2,r2,128
  18774. 502dc: 10bfe004 addi r2,r2,-128
  18775. 502e0: 108016d8 cmpnei r2,r2,91
  18776. 502e4: 1000451e bne r2,zero,503fc <lcd_handle_escape+0x154>
  18777. {
  18778. char * ptr = sp->escape+1;
  18779. 502e8: e0bffe17 ldw r2,-8(fp)
  18780. 502ec: 10800a04 addi r2,r2,40
  18781. 502f0: 10800044 addi r2,r2,1
  18782. 502f4: e0bffd15 stw r2,-12(fp)
  18783. while (isdigit(*ptr))
  18784. 502f8: 00000e06 br 50334 <lcd_handle_escape+0x8c>
  18785. parm1 = (parm1 * 10) + (*ptr++ - '0');
  18786. 502fc: 01400284 movi r5,10
  18787. 50300: e13ffb17 ldw r4,-20(fp)
  18788. 50304: 004c9f80 call 4c9f8 <__mulsi3>
  18789. 50308: 1009883a mov r4,r2
  18790. 5030c: e0bffd17 ldw r2,-12(fp)
  18791. 50310: 10c00044 addi r3,r2,1
  18792. 50314: e0fffd15 stw r3,-12(fp)
  18793. 50318: 10800003 ldbu r2,0(r2)
  18794. 5031c: 10803fcc andi r2,r2,255
  18795. 50320: 1080201c xori r2,r2,128
  18796. 50324: 10bfe004 addi r2,r2,-128
  18797. 50328: 10bff404 addi r2,r2,-48
  18798. 5032c: 2085883a add r2,r4,r2
  18799. 50330: e0bffb15 stw r2,-20(fp)
  18800. int parm1 = 0, parm2 = 0;
  18801. if (sp->escape[0] == '[')
  18802. {
  18803. char * ptr = sp->escape+1;
  18804. while (isdigit(*ptr))
  18805. 50334: d0e01117 ldw r3,-32700(gp)
  18806. 50338: e0bffd17 ldw r2,-12(fp)
  18807. 5033c: 10800003 ldbu r2,0(r2)
  18808. 50340: 10803fcc andi r2,r2,255
  18809. 50344: 1080201c xori r2,r2,128
  18810. 50348: 10bfe004 addi r2,r2,-128
  18811. 5034c: 10800044 addi r2,r2,1
  18812. 50350: 1885883a add r2,r3,r2
  18813. 50354: 10800003 ldbu r2,0(r2)
  18814. 50358: 10803fcc andi r2,r2,255
  18815. 5035c: 1080010c andi r2,r2,4
  18816. 50360: 103fe61e bne r2,zero,502fc <__alt_data_end+0xfffde2fc>
  18817. parm1 = (parm1 * 10) + (*ptr++ - '0');
  18818. if (*ptr == ';')
  18819. 50364: e0bffd17 ldw r2,-12(fp)
  18820. 50368: 10800003 ldbu r2,0(r2)
  18821. 5036c: 10803fcc andi r2,r2,255
  18822. 50370: 1080201c xori r2,r2,128
  18823. 50374: 10bfe004 addi r2,r2,-128
  18824. 50378: 10800ed8 cmpnei r2,r2,59
  18825. 5037c: 1000211e bne r2,zero,50404 <lcd_handle_escape+0x15c>
  18826. {
  18827. ptr++;
  18828. 50380: e0bffd17 ldw r2,-12(fp)
  18829. 50384: 10800044 addi r2,r2,1
  18830. 50388: e0bffd15 stw r2,-12(fp)
  18831. while (isdigit(*ptr))
  18832. 5038c: 00000e06 br 503c8 <lcd_handle_escape+0x120>
  18833. parm2 = (parm2 * 10) + (*ptr++ - '0');
  18834. 50390: 01400284 movi r5,10
  18835. 50394: e13ffc17 ldw r4,-16(fp)
  18836. 50398: 004c9f80 call 4c9f8 <__mulsi3>
  18837. 5039c: 1009883a mov r4,r2
  18838. 503a0: e0bffd17 ldw r2,-12(fp)
  18839. 503a4: 10c00044 addi r3,r2,1
  18840. 503a8: e0fffd15 stw r3,-12(fp)
  18841. 503ac: 10800003 ldbu r2,0(r2)
  18842. 503b0: 10803fcc andi r2,r2,255
  18843. 503b4: 1080201c xori r2,r2,128
  18844. 503b8: 10bfe004 addi r2,r2,-128
  18845. 503bc: 10bff404 addi r2,r2,-48
  18846. 503c0: 2085883a add r2,r4,r2
  18847. 503c4: e0bffc15 stw r2,-16(fp)
  18848. parm1 = (parm1 * 10) + (*ptr++ - '0');
  18849. if (*ptr == ';')
  18850. {
  18851. ptr++;
  18852. while (isdigit(*ptr))
  18853. 503c8: d0e01117 ldw r3,-32700(gp)
  18854. 503cc: e0bffd17 ldw r2,-12(fp)
  18855. 503d0: 10800003 ldbu r2,0(r2)
  18856. 503d4: 10803fcc andi r2,r2,255
  18857. 503d8: 1080201c xori r2,r2,128
  18858. 503dc: 10bfe004 addi r2,r2,-128
  18859. 503e0: 10800044 addi r2,r2,1
  18860. 503e4: 1885883a add r2,r3,r2
  18861. 503e8: 10800003 ldbu r2,0(r2)
  18862. 503ec: 10803fcc andi r2,r2,255
  18863. 503f0: 1080010c andi r2,r2,4
  18864. 503f4: 103fe61e bne r2,zero,50390 <__alt_data_end+0xfffde390>
  18865. 503f8: 00000206 br 50404 <lcd_handle_escape+0x15c>
  18866. parm2 = (parm2 * 10) + (*ptr++ - '0');
  18867. }
  18868. }
  18869. else
  18870. parm1 = -1;
  18871. 503fc: 00bfffc4 movi r2,-1
  18872. 50400: e0bffb15 stw r2,-20(fp)
  18873. switch (c)
  18874. 50404: e0bfff07 ldb r2,-4(fp)
  18875. 50408: 10c012a0 cmpeqi r3,r2,74
  18876. 5040c: 1800291e bne r3,zero,504b4 <lcd_handle_escape+0x20c>
  18877. 50410: 10c012c8 cmpgei r3,r2,75
  18878. 50414: 1800031e bne r3,zero,50424 <lcd_handle_escape+0x17c>
  18879. 50418: 10801220 cmpeqi r2,r2,72
  18880. 5041c: 1000061e bne r2,zero,50438 <lcd_handle_escape+0x190>
  18881. if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
  18882. memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
  18883. }
  18884. break;
  18885. }
  18886. }
  18887. 50420: 00004c06 br 50554 <lcd_handle_escape+0x2ac>
  18888. }
  18889. }
  18890. else
  18891. parm1 = -1;
  18892. switch (c)
  18893. 50424: 10c012e0 cmpeqi r3,r2,75
  18894. 50428: 1800281e bne r3,zero,504cc <lcd_handle_escape+0x224>
  18895. 5042c: 108019a0 cmpeqi r2,r2,102
  18896. 50430: 1000011e bne r2,zero,50438 <lcd_handle_escape+0x190>
  18897. if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
  18898. memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
  18899. }
  18900. break;
  18901. }
  18902. }
  18903. 50434: 00004706 br 50554 <lcd_handle_escape+0x2ac>
  18904. switch (c)
  18905. {
  18906. case 'H': /* ESC '[' <y> ';' <x> 'H' : Move cursor to location */
  18907. case 'f': /* Same as above */
  18908. if (parm2 > 0)
  18909. 50438: e0bffc17 ldw r2,-16(fp)
  18910. 5043c: 0080050e bge zero,r2,50454 <lcd_handle_escape+0x1ac>
  18911. sp->x = parm2 - 1;
  18912. 50440: e0bffc17 ldw r2,-16(fp)
  18913. 50444: 10bfffc4 addi r2,r2,-1
  18914. 50448: 1007883a mov r3,r2
  18915. 5044c: e0bffe17 ldw r2,-8(fp)
  18916. 50450: 10c00845 stb r3,33(r2)
  18917. if (parm1 > 0)
  18918. 50454: e0bffb17 ldw r2,-20(fp)
  18919. 50458: 0080390e bge zero,r2,50540 <lcd_handle_escape+0x298>
  18920. {
  18921. sp->y = parm1 - 1;
  18922. 5045c: e0bffb17 ldw r2,-20(fp)
  18923. 50460: 10bfffc4 addi r2,r2,-1
  18924. 50464: 1007883a mov r3,r2
  18925. 50468: e0bffe17 ldw r2,-8(fp)
  18926. 5046c: 10c00885 stb r3,34(r2)
  18927. if (sp->y > ALT_LCD_HEIGHT * 2)
  18928. 50470: e0bffe17 ldw r2,-8(fp)
  18929. 50474: 10800883 ldbu r2,34(r2)
  18930. 50478: 10803fcc andi r2,r2,255
  18931. 5047c: 10800170 cmpltui r2,r2,5
  18932. 50480: 1000061e bne r2,zero,5049c <lcd_handle_escape+0x1f4>
  18933. sp->y = ALT_LCD_HEIGHT * 2;
  18934. 50484: e0bffe17 ldw r2,-8(fp)
  18935. 50488: 00c00104 movi r3,4
  18936. 5048c: 10c00885 stb r3,34(r2)
  18937. while (sp->y > ALT_LCD_HEIGHT)
  18938. 50490: 00000206 br 5049c <lcd_handle_escape+0x1f4>
  18939. lcd_scroll_up(sp);
  18940. 50494: e13ffe17 ldw r4,-8(fp)
  18941. 50498: 00501c00 call 501c0 <lcd_scroll_up>
  18942. if (parm1 > 0)
  18943. {
  18944. sp->y = parm1 - 1;
  18945. if (sp->y > ALT_LCD_HEIGHT * 2)
  18946. sp->y = ALT_LCD_HEIGHT * 2;
  18947. while (sp->y > ALT_LCD_HEIGHT)
  18948. 5049c: e0bffe17 ldw r2,-8(fp)
  18949. 504a0: 10800883 ldbu r2,34(r2)
  18950. 504a4: 10803fcc andi r2,r2,255
  18951. 504a8: 108000e8 cmpgeui r2,r2,3
  18952. 504ac: 103ff91e bne r2,zero,50494 <__alt_data_end+0xfffde494>
  18953. lcd_scroll_up(sp);
  18954. }
  18955. break;
  18956. 504b0: 00002306 br 50540 <lcd_handle_escape+0x298>
  18957. /* ESC J is clear to beginning of line [unimplemented]
  18958. * ESC [ 0 J is clear to bottom of screen [unimplemented]
  18959. * ESC [ 1 J is clear to beginning of screen [unimplemented]
  18960. * ESC [ 2 J is clear screen
  18961. */
  18962. if (parm1 == 2)
  18963. 504b4: e0bffb17 ldw r2,-20(fp)
  18964. 504b8: 10800098 cmpnei r2,r2,2
  18965. 504bc: 1000221e bne r2,zero,50548 <lcd_handle_escape+0x2a0>
  18966. lcd_clear_screen(sp);
  18967. 504c0: e13ffe17 ldw r4,-8(fp)
  18968. 504c4: 004feb00 call 4feb0 <lcd_clear_screen>
  18969. break;
  18970. 504c8: 00001f06 br 50548 <lcd_handle_escape+0x2a0>
  18971. /* ESC K is clear to end of line
  18972. * ESC [ 0 K is clear to end of line
  18973. * ESC [ 1 K is clear to beginning of line [unimplemented]
  18974. * ESC [ 2 K is clear line [unimplemented]
  18975. */
  18976. if (parm1 < 1)
  18977. 504cc: e0bffb17 ldw r2,-20(fp)
  18978. 504d0: 00801f16 blt zero,r2,50550 <lcd_handle_escape+0x2a8>
  18979. {
  18980. if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
  18981. 504d4: e0bffe17 ldw r2,-8(fp)
  18982. 504d8: 10800843 ldbu r2,33(r2)
  18983. 504dc: 10803fcc andi r2,r2,255
  18984. 504e0: 10801428 cmpgeui r2,r2,80
  18985. 504e4: 10001a1e bne r2,zero,50550 <lcd_handle_escape+0x2a8>
  18986. memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
  18987. 504e8: e0bffe17 ldw r2,-8(fp)
  18988. 504ec: 10800883 ldbu r2,34(r2)
  18989. 504f0: 10803fcc andi r2,r2,255
  18990. 504f4: 014018c4 movi r5,99
  18991. 504f8: 1009883a mov r4,r2
  18992. 504fc: 004c9f80 call 4c9f8 <__mulsi3>
  18993. 50500: 10801004 addi r2,r2,64
  18994. 50504: e0fffe17 ldw r3,-8(fp)
  18995. 50508: 1887883a add r3,r3,r2
  18996. 5050c: e0bffe17 ldw r2,-8(fp)
  18997. 50510: 10800843 ldbu r2,33(r2)
  18998. 50514: 10803fcc andi r2,r2,255
  18999. 50518: 1889883a add r4,r3,r2
  19000. 5051c: e0bffe17 ldw r2,-8(fp)
  19001. 50520: 10800843 ldbu r2,33(r2)
  19002. 50524: 10803fcc andi r2,r2,255
  19003. 50528: 00c01404 movi r3,80
  19004. 5052c: 1885c83a sub r2,r3,r2
  19005. 50530: 100d883a mov r6,r2
  19006. 50534: 01400804 movi r5,32
  19007. 50538: 00478080 call 47808 <memset>
  19008. }
  19009. break;
  19010. 5053c: 00000406 br 50550 <lcd_handle_escape+0x2a8>
  19011. if (sp->y > ALT_LCD_HEIGHT * 2)
  19012. sp->y = ALT_LCD_HEIGHT * 2;
  19013. while (sp->y > ALT_LCD_HEIGHT)
  19014. lcd_scroll_up(sp);
  19015. }
  19016. break;
  19017. 50540: 0001883a nop
  19018. 50544: 00000306 br 50554 <lcd_handle_escape+0x2ac>
  19019. * ESC [ 1 J is clear to beginning of screen [unimplemented]
  19020. * ESC [ 2 J is clear screen
  19021. */
  19022. if (parm1 == 2)
  19023. lcd_clear_screen(sp);
  19024. break;
  19025. 50548: 0001883a nop
  19026. 5054c: 00000106 br 50554 <lcd_handle_escape+0x2ac>
  19027. if (parm1 < 1)
  19028. {
  19029. if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
  19030. memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
  19031. }
  19032. break;
  19033. 50550: 0001883a nop
  19034. }
  19035. }
  19036. 50554: 0001883a nop
  19037. 50558: e037883a mov sp,fp
  19038. 5055c: dfc00117 ldw ra,4(sp)
  19039. 50560: df000017 ldw fp,0(sp)
  19040. 50564: dec00204 addi sp,sp,8
  19041. 50568: f800283a ret
  19042. 0005056c <altera_avalon_lcd_16207_write>:
  19043. /* --------------------------------------------------------------------- */
  19044. int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp,
  19045. const char* ptr, int len, int flags)
  19046. {
  19047. 5056c: defff104 addi sp,sp,-60
  19048. 50570: dfc00e15 stw ra,56(sp)
  19049. 50574: df000d15 stw fp,52(sp)
  19050. 50578: dc400c15 stw r17,48(sp)
  19051. 5057c: dc000b15 stw r16,44(sp)
  19052. 50580: df000d04 addi fp,sp,52
  19053. 50584: e13ffa15 stw r4,-24(fp)
  19054. 50588: e17ffb15 stw r5,-20(fp)
  19055. 5058c: e1bffc15 stw r6,-16(fp)
  19056. 50590: e1fffd15 stw r7,-12(fp)
  19057. const char* end = ptr + len;
  19058. 50594: e0bffc17 ldw r2,-16(fp)
  19059. 50598: e0fffb17 ldw r3,-20(fp)
  19060. 5059c: 1885883a add r2,r3,r2
  19061. 505a0: e0bff615 stw r2,-40(fp)
  19062. ALT_SEM_PEND (sp->write_lock, 0);
  19063. /* Tell the routine which is called off the timer interrupt that the
  19064. * foreground routines are active so it must not repaint the display. */
  19065. sp->active = 1;
  19066. 505a4: e0bffa17 ldw r2,-24(fp)
  19067. 505a8: 00c00044 movi r3,1
  19068. 505ac: 10c009c5 stb r3,39(r2)
  19069. for ( ; ptr < end ; ptr++)
  19070. 505b0: 00009b06 br 50820 <altera_avalon_lcd_16207_write+0x2b4>
  19071. {
  19072. char c = *ptr;
  19073. 505b4: e0bffb17 ldw r2,-20(fp)
  19074. 505b8: 10800003 ldbu r2,0(r2)
  19075. 505bc: e0bff705 stb r2,-36(fp)
  19076. if (sp->esccount >= 0)
  19077. 505c0: e0bffa17 ldw r2,-24(fp)
  19078. 505c4: 10800903 ldbu r2,36(r2)
  19079. 505c8: 10803fcc andi r2,r2,255
  19080. 505cc: 1080201c xori r2,r2,128
  19081. 505d0: 10bfe004 addi r2,r2,-128
  19082. 505d4: 10003716 blt r2,zero,506b4 <altera_avalon_lcd_16207_write+0x148>
  19083. {
  19084. unsigned int esccount = sp->esccount;
  19085. 505d8: e0bffa17 ldw r2,-24(fp)
  19086. 505dc: 10800903 ldbu r2,36(r2)
  19087. 505e0: 10803fcc andi r2,r2,255
  19088. 505e4: 1080201c xori r2,r2,128
  19089. 505e8: 10bfe004 addi r2,r2,-128
  19090. 505ec: e0bff815 stw r2,-32(fp)
  19091. /* Single character escape sequences can end with any character
  19092. * Multi character escape sequences start with '[' and contain
  19093. * digits and semicolons before terminating
  19094. */
  19095. if ((esccount == 0 && c != '[') ||
  19096. 505f0: e0bff817 ldw r2,-32(fp)
  19097. 505f4: 1000031e bne r2,zero,50604 <altera_avalon_lcd_16207_write+0x98>
  19098. 505f8: e0bff707 ldb r2,-36(fp)
  19099. 505fc: 108016d8 cmpnei r2,r2,91
  19100. 50600: 10000d1e bne r2,zero,50638 <altera_avalon_lcd_16207_write+0xcc>
  19101. 50604: e0bff817 ldw r2,-32(fp)
  19102. 50608: 10001826 beq r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
  19103. (esccount > 0 && !isdigit(c) && c != ';'))
  19104. 5060c: d0e01117 ldw r3,-32700(gp)
  19105. 50610: e0bff707 ldb r2,-36(fp)
  19106. 50614: 10800044 addi r2,r2,1
  19107. 50618: 1885883a add r2,r3,r2
  19108. 5061c: 10800003 ldbu r2,0(r2)
  19109. 50620: 10803fcc andi r2,r2,255
  19110. 50624: 1080010c andi r2,r2,4
  19111. 50628: 1000101e bne r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
  19112. 5062c: e0bff707 ldb r2,-36(fp)
  19113. 50630: 10800ee0 cmpeqi r2,r2,59
  19114. 50634: 10000d1e bne r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
  19115. {
  19116. sp->escape[esccount] = 0;
  19117. 50638: e0fffa17 ldw r3,-24(fp)
  19118. 5063c: e0bff817 ldw r2,-32(fp)
  19119. 50640: 1885883a add r2,r3,r2
  19120. 50644: 10800a04 addi r2,r2,40
  19121. 50648: 10000005 stb zero,0(r2)
  19122. lcd_handle_escape(sp, c);
  19123. 5064c: e0bff707 ldb r2,-36(fp)
  19124. 50650: 100b883a mov r5,r2
  19125. 50654: e13ffa17 ldw r4,-24(fp)
  19126. 50658: 00502a80 call 502a8 <lcd_handle_escape>
  19127. sp->esccount = -1;
  19128. 5065c: e0bffa17 ldw r2,-24(fp)
  19129. 50660: 00ffffc4 movi r3,-1
  19130. 50664: 10c00905 stb r3,36(r2)
  19131. 50668: 00006a06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19132. }
  19133. else if (sp->esccount < sizeof(sp->escape)-1)
  19134. 5066c: e0bffa17 ldw r2,-24(fp)
  19135. 50670: 10800903 ldbu r2,36(r2)
  19136. 50674: 10803fcc andi r2,r2,255
  19137. 50678: 108001e8 cmpgeui r2,r2,7
  19138. 5067c: 1000651e bne r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
  19139. {
  19140. sp->escape[esccount] = c;
  19141. 50680: e0fffa17 ldw r3,-24(fp)
  19142. 50684: e0bff817 ldw r2,-32(fp)
  19143. 50688: 1885883a add r2,r3,r2
  19144. 5068c: 10800a04 addi r2,r2,40
  19145. 50690: e0fff703 ldbu r3,-36(fp)
  19146. 50694: 10c00005 stb r3,0(r2)
  19147. sp->esccount++;
  19148. 50698: e0bffa17 ldw r2,-24(fp)
  19149. 5069c: 10800903 ldbu r2,36(r2)
  19150. 506a0: 10800044 addi r2,r2,1
  19151. 506a4: 1007883a mov r3,r2
  19152. 506a8: e0bffa17 ldw r2,-24(fp)
  19153. 506ac: 10c00905 stb r3,36(r2)
  19154. 506b0: 00005806 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19155. }
  19156. }
  19157. else if (c == 27) /* ESC */
  19158. 506b4: e0bff707 ldb r2,-36(fp)
  19159. 506b8: 108006d8 cmpnei r2,r2,27
  19160. 506bc: 1000031e bne r2,zero,506cc <altera_avalon_lcd_16207_write+0x160>
  19161. {
  19162. sp->esccount = 0;
  19163. 506c0: e0bffa17 ldw r2,-24(fp)
  19164. 506c4: 10000905 stb zero,36(r2)
  19165. 506c8: 00005206 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19166. }
  19167. else if (c == '\r')
  19168. 506cc: e0bff707 ldb r2,-36(fp)
  19169. 506d0: 10800358 cmpnei r2,r2,13
  19170. 506d4: 1000031e bne r2,zero,506e4 <altera_avalon_lcd_16207_write+0x178>
  19171. {
  19172. sp->x = 0;
  19173. 506d8: e0bffa17 ldw r2,-24(fp)
  19174. 506dc: 10000845 stb zero,33(r2)
  19175. 506e0: 00004c06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19176. }
  19177. else if (c == '\n')
  19178. 506e4: e0bff707 ldb r2,-36(fp)
  19179. 506e8: 10800298 cmpnei r2,r2,10
  19180. 506ec: 1000101e bne r2,zero,50730 <altera_avalon_lcd_16207_write+0x1c4>
  19181. {
  19182. sp->x = 0;
  19183. 506f0: e0bffa17 ldw r2,-24(fp)
  19184. 506f4: 10000845 stb zero,33(r2)
  19185. sp->y++;
  19186. 506f8: e0bffa17 ldw r2,-24(fp)
  19187. 506fc: 10800883 ldbu r2,34(r2)
  19188. 50700: 10800044 addi r2,r2,1
  19189. 50704: 1007883a mov r3,r2
  19190. 50708: e0bffa17 ldw r2,-24(fp)
  19191. 5070c: 10c00885 stb r3,34(r2)
  19192. /* Let the cursor sit at X=0, Y=HEIGHT without scrolling so the user
  19193. * can print two lines of data without losing one.
  19194. */
  19195. if (sp->y > ALT_LCD_HEIGHT)
  19196. 50710: e0bffa17 ldw r2,-24(fp)
  19197. 50714: 10800883 ldbu r2,34(r2)
  19198. 50718: 10803fcc andi r2,r2,255
  19199. 5071c: 108000f0 cmpltui r2,r2,3
  19200. 50720: 10003c1e bne r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
  19201. lcd_scroll_up(sp);
  19202. 50724: e13ffa17 ldw r4,-24(fp)
  19203. 50728: 00501c00 call 501c0 <lcd_scroll_up>
  19204. 5072c: 00003906 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19205. }
  19206. else if (c == '\b')
  19207. 50730: e0bff707 ldb r2,-36(fp)
  19208. 50734: 10800218 cmpnei r2,r2,8
  19209. 50738: 10000b1e bne r2,zero,50768 <altera_avalon_lcd_16207_write+0x1fc>
  19210. {
  19211. if (sp->x > 0)
  19212. 5073c: e0bffa17 ldw r2,-24(fp)
  19213. 50740: 10800843 ldbu r2,33(r2)
  19214. 50744: 10803fcc andi r2,r2,255
  19215. 50748: 10003226 beq r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
  19216. sp->x--;
  19217. 5074c: e0bffa17 ldw r2,-24(fp)
  19218. 50750: 10800843 ldbu r2,33(r2)
  19219. 50754: 10bfffc4 addi r2,r2,-1
  19220. 50758: 1007883a mov r3,r2
  19221. 5075c: e0bffa17 ldw r2,-24(fp)
  19222. 50760: 10c00845 stb r3,33(r2)
  19223. 50764: 00002b06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
  19224. }
  19225. else if (isprint(c))
  19226. 50768: d0e01117 ldw r3,-32700(gp)
  19227. 5076c: e0bff707 ldb r2,-36(fp)
  19228. 50770: 10800044 addi r2,r2,1
  19229. 50774: 1885883a add r2,r3,r2
  19230. 50778: 10800003 ldbu r2,0(r2)
  19231. 5077c: 10803fcc andi r2,r2,255
  19232. 50780: 1080201c xori r2,r2,128
  19233. 50784: 10bfe004 addi r2,r2,-128
  19234. 50788: 108025cc andi r2,r2,151
  19235. 5078c: 10002126 beq r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
  19236. {
  19237. /* If we didn't scroll on the last linefeed then we might need to do
  19238. * it now. */
  19239. if (sp->y >= ALT_LCD_HEIGHT)
  19240. 50790: e0bffa17 ldw r2,-24(fp)
  19241. 50794: 10800883 ldbu r2,34(r2)
  19242. 50798: 10803fcc andi r2,r2,255
  19243. 5079c: 108000b0 cmpltui r2,r2,2
  19244. 507a0: 1000021e bne r2,zero,507ac <altera_avalon_lcd_16207_write+0x240>
  19245. lcd_scroll_up(sp);
  19246. 507a4: e13ffa17 ldw r4,-24(fp)
  19247. 507a8: 00501c00 call 501c0 <lcd_scroll_up>
  19248. if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
  19249. 507ac: e0bffa17 ldw r2,-24(fp)
  19250. 507b0: 10800843 ldbu r2,33(r2)
  19251. 507b4: 10803fcc andi r2,r2,255
  19252. 507b8: 10801428 cmpgeui r2,r2,80
  19253. 507bc: 10000f1e bne r2,zero,507fc <altera_avalon_lcd_16207_write+0x290>
  19254. sp->line[sp->y].data[sp->x] = c;
  19255. 507c0: e0bffa17 ldw r2,-24(fp)
  19256. 507c4: 10800883 ldbu r2,34(r2)
  19257. 507c8: 10c03fcc andi r3,r2,255
  19258. 507cc: e0bffa17 ldw r2,-24(fp)
  19259. 507d0: 10800843 ldbu r2,33(r2)
  19260. 507d4: 14003fcc andi r16,r2,255
  19261. 507d8: e47ffa17 ldw r17,-24(fp)
  19262. 507dc: 014018c4 movi r5,99
  19263. 507e0: 1809883a mov r4,r3
  19264. 507e4: 004c9f80 call 4c9f8 <__mulsi3>
  19265. 507e8: 8885883a add r2,r17,r2
  19266. 507ec: 1405883a add r2,r2,r16
  19267. 507f0: 10801004 addi r2,r2,64
  19268. 507f4: e0fff703 ldbu r3,-36(fp)
  19269. 507f8: 10c00005 stb r3,0(r2)
  19270. sp->x++;
  19271. 507fc: e0bffa17 ldw r2,-24(fp)
  19272. 50800: 10800843 ldbu r2,33(r2)
  19273. 50804: 10800044 addi r2,r2,1
  19274. 50808: 1007883a mov r3,r2
  19275. 5080c: e0bffa17 ldw r2,-24(fp)
  19276. 50810: 10c00845 stb r3,33(r2)
  19277. /* Tell the routine which is called off the timer interrupt that the
  19278. * foreground routines are active so it must not repaint the display. */
  19279. sp->active = 1;
  19280. for ( ; ptr < end ; ptr++)
  19281. 50814: e0bffb17 ldw r2,-20(fp)
  19282. 50818: 10800044 addi r2,r2,1
  19283. 5081c: e0bffb15 stw r2,-20(fp)
  19284. 50820: e0fffb17 ldw r3,-20(fp)
  19285. 50824: e0bff617 ldw r2,-40(fp)
  19286. 50828: 18bf6236 bltu r3,r2,505b4 <__alt_data_end+0xfffde5b4>
  19287. sp->x++;
  19288. }
  19289. }
  19290. /* Recalculate the scrolling parameters */
  19291. widthmax = ALT_LCD_WIDTH;
  19292. 5082c: 00800404 movi r2,16
  19293. 50830: e0bff415 stw r2,-48(fp)
  19294. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  19295. 50834: e03ff315 stw zero,-52(fp)
  19296. 50838: 00003d06 br 50930 <altera_avalon_lcd_16207_write+0x3c4>
  19297. {
  19298. int width;
  19299. for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--)
  19300. 5083c: 00801404 movi r2,80
  19301. 50840: e0bff515 stw r2,-44(fp)
  19302. 50844: 00001306 br 50894 <altera_avalon_lcd_16207_write+0x328>
  19303. if (sp->line[y].data[width-1] != ' ')
  19304. 50848: e0bff517 ldw r2,-44(fp)
  19305. 5084c: 143fffc4 addi r16,r2,-1
  19306. 50850: e47ffa17 ldw r17,-24(fp)
  19307. 50854: e0bff317 ldw r2,-52(fp)
  19308. 50858: 014018c4 movi r5,99
  19309. 5085c: 1009883a mov r4,r2
  19310. 50860: 004c9f80 call 4c9f8 <__mulsi3>
  19311. 50864: 8885883a add r2,r17,r2
  19312. 50868: 1405883a add r2,r2,r16
  19313. 5086c: 10801004 addi r2,r2,64
  19314. 50870: 10800003 ldbu r2,0(r2)
  19315. 50874: 10803fcc andi r2,r2,255
  19316. 50878: 1080201c xori r2,r2,128
  19317. 5087c: 10bfe004 addi r2,r2,-128
  19318. 50880: 10800820 cmpeqi r2,r2,32
  19319. 50884: 10000626 beq r2,zero,508a0 <altera_avalon_lcd_16207_write+0x334>
  19320. /* Recalculate the scrolling parameters */
  19321. widthmax = ALT_LCD_WIDTH;
  19322. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  19323. {
  19324. int width;
  19325. for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--)
  19326. 50888: e0bff517 ldw r2,-44(fp)
  19327. 5088c: 10bfffc4 addi r2,r2,-1
  19328. 50890: e0bff515 stw r2,-44(fp)
  19329. 50894: e0bff517 ldw r2,-44(fp)
  19330. 50898: 00bfeb16 blt zero,r2,50848 <__alt_data_end+0xfffde848>
  19331. 5089c: 00000106 br 508a4 <altera_avalon_lcd_16207_write+0x338>
  19332. if (sp->line[y].data[width-1] != ' ')
  19333. break;
  19334. 508a0: 0001883a nop
  19335. /* The minimum width is the size of the LCD panel. If the real width
  19336. * is long enough to require scrolling then add an extra space so the
  19337. * end of the message doesn't run into the beginning of it.
  19338. */
  19339. if (width <= ALT_LCD_WIDTH)
  19340. 508a4: e0bff517 ldw r2,-44(fp)
  19341. 508a8: 10800448 cmpgei r2,r2,17
  19342. 508ac: 1000031e bne r2,zero,508bc <altera_avalon_lcd_16207_write+0x350>
  19343. width = ALT_LCD_WIDTH;
  19344. 508b0: 00800404 movi r2,16
  19345. 508b4: e0bff515 stw r2,-44(fp)
  19346. 508b8: 00000306 br 508c8 <altera_avalon_lcd_16207_write+0x35c>
  19347. else
  19348. width++;
  19349. 508bc: e0bff517 ldw r2,-44(fp)
  19350. 508c0: 10800044 addi r2,r2,1
  19351. 508c4: e0bff515 stw r2,-44(fp)
  19352. sp->line[y].width = width;
  19353. 508c8: e0bff517 ldw r2,-44(fp)
  19354. 508cc: 1023883a mov r17,r2
  19355. 508d0: e43ffa17 ldw r16,-24(fp)
  19356. 508d4: e0bff317 ldw r2,-52(fp)
  19357. 508d8: 014018c4 movi r5,99
  19358. 508dc: 1009883a mov r4,r2
  19359. 508e0: 004c9f80 call 4c9f8 <__mulsi3>
  19360. 508e4: 8085883a add r2,r16,r2
  19361. 508e8: 10802444 addi r2,r2,145
  19362. 508ec: 14400005 stb r17,0(r2)
  19363. if (widthmax < width)
  19364. 508f0: e0fff417 ldw r3,-48(fp)
  19365. 508f4: e0bff517 ldw r2,-44(fp)
  19366. 508f8: 1880020e bge r3,r2,50904 <altera_avalon_lcd_16207_write+0x398>
  19367. widthmax = width;
  19368. 508fc: e0bff517 ldw r2,-44(fp)
  19369. 50900: e0bff415 stw r2,-48(fp)
  19370. sp->line[y].speed = 0; /* By default lines don't scroll */
  19371. 50904: e43ffa17 ldw r16,-24(fp)
  19372. 50908: e0bff317 ldw r2,-52(fp)
  19373. 5090c: 014018c4 movi r5,99
  19374. 50910: 1009883a mov r4,r2
  19375. 50914: 004c9f80 call 4c9f8 <__mulsi3>
  19376. 50918: 8085883a add r2,r16,r2
  19377. 5091c: 10802484 addi r2,r2,146
  19378. 50920: 10000005 stb zero,0(r2)
  19379. }
  19380. }
  19381. /* Recalculate the scrolling parameters */
  19382. widthmax = ALT_LCD_WIDTH;
  19383. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  19384. 50924: e0bff317 ldw r2,-52(fp)
  19385. 50928: 10800044 addi r2,r2,1
  19386. 5092c: e0bff315 stw r2,-52(fp)
  19387. 50930: e0bff317 ldw r2,-52(fp)
  19388. 50934: 10800090 cmplti r2,r2,2
  19389. 50938: 103fc01e bne r2,zero,5083c <__alt_data_end+0xfffde83c>
  19390. if (widthmax < width)
  19391. widthmax = width;
  19392. sp->line[y].speed = 0; /* By default lines don't scroll */
  19393. }
  19394. if (widthmax <= ALT_LCD_WIDTH)
  19395. 5093c: e0bff417 ldw r2,-48(fp)
  19396. 50940: 10800448 cmpgei r2,r2,17
  19397. 50944: 1000031e bne r2,zero,50954 <altera_avalon_lcd_16207_write+0x3e8>
  19398. sp->scrollmax = 0;
  19399. 50948: e0bffa17 ldw r2,-24(fp)
  19400. 5094c: 10000985 stb zero,38(r2)
  19401. 50950: 00003406 br 50a24 <altera_avalon_lcd_16207_write+0x4b8>
  19402. else
  19403. {
  19404. widthmax *= 2;
  19405. 50954: e0bff417 ldw r2,-48(fp)
  19406. 50958: 1085883a add r2,r2,r2
  19407. 5095c: e0bff415 stw r2,-48(fp)
  19408. sp->scrollmax = widthmax;
  19409. 50960: e0bff417 ldw r2,-48(fp)
  19410. 50964: 1007883a mov r3,r2
  19411. 50968: e0bffa17 ldw r2,-24(fp)
  19412. 5096c: 10c00985 stb r3,38(r2)
  19413. /* Now calculate how fast each of the other lines should go */
  19414. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  19415. 50970: e03ff315 stw zero,-52(fp)
  19416. 50974: 00002806 br 50a18 <altera_avalon_lcd_16207_write+0x4ac>
  19417. if (sp->line[y].width > ALT_LCD_WIDTH)
  19418. 50978: e43ffa17 ldw r16,-24(fp)
  19419. 5097c: e0bff317 ldw r2,-52(fp)
  19420. 50980: 014018c4 movi r5,99
  19421. 50984: 1009883a mov r4,r2
  19422. 50988: 004c9f80 call 4c9f8 <__mulsi3>
  19423. 5098c: 8085883a add r2,r16,r2
  19424. 50990: 10802444 addi r2,r2,145
  19425. 50994: 10800003 ldbu r2,0(r2)
  19426. 50998: 10803fcc andi r2,r2,255
  19427. 5099c: 1080201c xori r2,r2,128
  19428. 509a0: 10bfe004 addi r2,r2,-128
  19429. 509a4: 10800450 cmplti r2,r2,17
  19430. 509a8: 1000181e bne r2,zero,50a0c <altera_avalon_lcd_16207_write+0x4a0>
  19431. */
  19432. #if 1
  19433. /* This option makes all the lines scroll round at different speeds
  19434. * which are chosen so that all the scrolls finish at the same time.
  19435. */
  19436. sp->line[y].speed = 256 * sp->line[y].width / widthmax;
  19437. 509ac: e43ffa17 ldw r16,-24(fp)
  19438. 509b0: e0bff317 ldw r2,-52(fp)
  19439. 509b4: 014018c4 movi r5,99
  19440. 509b8: 1009883a mov r4,r2
  19441. 509bc: 004c9f80 call 4c9f8 <__mulsi3>
  19442. 509c0: 8085883a add r2,r16,r2
  19443. 509c4: 10802444 addi r2,r2,145
  19444. 509c8: 10800003 ldbu r2,0(r2)
  19445. 509cc: 10803fcc andi r2,r2,255
  19446. 509d0: 1080201c xori r2,r2,128
  19447. 509d4: 10bfe004 addi r2,r2,-128
  19448. 509d8: 1004923a slli r2,r2,8
  19449. 509dc: e17ff417 ldw r5,-48(fp)
  19450. 509e0: 1009883a mov r4,r2
  19451. 509e4: 004c8440 call 4c844 <__divsi3>
  19452. 509e8: 1023883a mov r17,r2
  19453. 509ec: e43ffa17 ldw r16,-24(fp)
  19454. 509f0: e0bff317 ldw r2,-52(fp)
  19455. 509f4: 014018c4 movi r5,99
  19456. 509f8: 1009883a mov r4,r2
  19457. 509fc: 004c9f80 call 4c9f8 <__mulsi3>
  19458. 50a00: 8085883a add r2,r16,r2
  19459. 50a04: 10802484 addi r2,r2,146
  19460. 50a08: 14400005 stb r17,0(r2)
  19461. {
  19462. widthmax *= 2;
  19463. sp->scrollmax = widthmax;
  19464. /* Now calculate how fast each of the other lines should go */
  19465. for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
  19466. 50a0c: e0bff317 ldw r2,-52(fp)
  19467. 50a10: 10800044 addi r2,r2,1
  19468. 50a14: e0bff315 stw r2,-52(fp)
  19469. 50a18: e0bff317 ldw r2,-52(fp)
  19470. 50a1c: 10800090 cmplti r2,r2,2
  19471. 50a20: 103fd51e bne r2,zero,50978 <__alt_data_end+0xfffde978>
  19472. * (because active was set when the timer interrupt occurred). If there
  19473. * has been a missed repaint then paint again. And again. etc.
  19474. */
  19475. for ( ; ; )
  19476. {
  19477. int old_scrollpos = sp->scrollpos;
  19478. 50a24: e0bffa17 ldw r2,-24(fp)
  19479. 50a28: 10800943 ldbu r2,37(r2)
  19480. 50a2c: 10803fcc andi r2,r2,255
  19481. 50a30: e0bff915 stw r2,-28(fp)
  19482. lcd_repaint_screen(sp);
  19483. 50a34: e13ffa17 ldw r4,-24(fp)
  19484. 50a38: 004ff980 call 4ff98 <lcd_repaint_screen>
  19485. /* Let the timer routines repaint the display again */
  19486. sp->active = 0;
  19487. 50a3c: e0bffa17 ldw r2,-24(fp)
  19488. 50a40: 100009c5 stb zero,39(r2)
  19489. /* Have the timer routines tried to scroll while we were painting?
  19490. * If not then we can exit */
  19491. if (sp->scrollpos == old_scrollpos)
  19492. 50a44: e0bffa17 ldw r2,-24(fp)
  19493. 50a48: 10800943 ldbu r2,37(r2)
  19494. 50a4c: 10c03fcc andi r3,r2,255
  19495. 50a50: e0bff917 ldw r2,-28(fp)
  19496. 50a54: 18800426 beq r3,r2,50a68 <altera_avalon_lcd_16207_write+0x4fc>
  19497. break;
  19498. /* We need to repaint again since the display scrolled while we were
  19499. * painting last time */
  19500. sp->active = 1;
  19501. 50a58: e0bffa17 ldw r2,-24(fp)
  19502. 50a5c: 00c00044 movi r3,1
  19503. 50a60: 10c009c5 stb r3,39(r2)
  19504. }
  19505. 50a64: 003fef06 br 50a24 <__alt_data_end+0xfffdea24>
  19506. sp->active = 0;
  19507. /* Have the timer routines tried to scroll while we were painting?
  19508. * If not then we can exit */
  19509. if (sp->scrollpos == old_scrollpos)
  19510. break;
  19511. 50a68: 0001883a nop
  19512. * semaphore so that other threads can access the buffer.
  19513. */
  19514. ALT_SEM_POST (sp->write_lock);
  19515. return len;
  19516. 50a6c: e0bffc17 ldw r2,-16(fp)
  19517. }
  19518. 50a70: e6fffe04 addi sp,fp,-8
  19519. 50a74: dfc00317 ldw ra,12(sp)
  19520. 50a78: df000217 ldw fp,8(sp)
  19521. 50a7c: dc400117 ldw r17,4(sp)
  19522. 50a80: dc000017 ldw r16,0(sp)
  19523. 50a84: dec00404 addi sp,sp,16
  19524. 50a88: f800283a ret
  19525. 00050a8c <alt_lcd_16207_timeout>:
  19526. /*
  19527. * Timeout routine is called every second
  19528. */
  19529. static alt_u32 alt_lcd_16207_timeout(void* context)
  19530. {
  19531. 50a8c: defffc04 addi sp,sp,-16
  19532. 50a90: dfc00315 stw ra,12(sp)
  19533. 50a94: df000215 stw fp,8(sp)
  19534. 50a98: df000204 addi fp,sp,8
  19535. 50a9c: e13fff15 stw r4,-4(fp)
  19536. altera_avalon_lcd_16207_state* sp = (altera_avalon_lcd_16207_state*)context;
  19537. 50aa0: e0bfff17 ldw r2,-4(fp)
  19538. 50aa4: e0bffe15 stw r2,-8(fp)
  19539. /* Update the scrolling position */
  19540. if (sp->scrollpos + 1 >= sp->scrollmax)
  19541. 50aa8: e0bffe17 ldw r2,-8(fp)
  19542. 50aac: 10800943 ldbu r2,37(r2)
  19543. 50ab0: 10803fcc andi r2,r2,255
  19544. 50ab4: 10c00044 addi r3,r2,1
  19545. 50ab8: e0bffe17 ldw r2,-8(fp)
  19546. 50abc: 10800983 ldbu r2,38(r2)
  19547. 50ac0: 10803fcc andi r2,r2,255
  19548. 50ac4: 18800316 blt r3,r2,50ad4 <alt_lcd_16207_timeout+0x48>
  19549. sp->scrollpos = 0;
  19550. 50ac8: e0bffe17 ldw r2,-8(fp)
  19551. 50acc: 10000945 stb zero,37(r2)
  19552. 50ad0: 00000606 br 50aec <alt_lcd_16207_timeout+0x60>
  19553. else
  19554. sp->scrollpos = sp->scrollpos + 1;
  19555. 50ad4: e0bffe17 ldw r2,-8(fp)
  19556. 50ad8: 10800943 ldbu r2,37(r2)
  19557. 50adc: 10800044 addi r2,r2,1
  19558. 50ae0: 1007883a mov r3,r2
  19559. 50ae4: e0bffe17 ldw r2,-8(fp)
  19560. 50ae8: 10c00945 stb r3,37(r2)
  19561. /* Repaint the panel unless the foreground will do it again soon */
  19562. if (sp->scrollmax > 0 && !sp->active)
  19563. 50aec: e0bffe17 ldw r2,-8(fp)
  19564. 50af0: 10800983 ldbu r2,38(r2)
  19565. 50af4: 10803fcc andi r2,r2,255
  19566. 50af8: 10000826 beq r2,zero,50b1c <alt_lcd_16207_timeout+0x90>
  19567. 50afc: e0bffe17 ldw r2,-8(fp)
  19568. 50b00: 108009c3 ldbu r2,39(r2)
  19569. 50b04: 10803fcc andi r2,r2,255
  19570. 50b08: 1080201c xori r2,r2,128
  19571. 50b0c: 10bfe004 addi r2,r2,-128
  19572. 50b10: 1000021e bne r2,zero,50b1c <alt_lcd_16207_timeout+0x90>
  19573. lcd_repaint_screen(sp);
  19574. 50b14: e13ffe17 ldw r4,-8(fp)
  19575. 50b18: 004ff980 call 4ff98 <lcd_repaint_screen>
  19576. return sp->period;
  19577. 50b1c: e0bffe17 ldw r2,-8(fp)
  19578. 50b20: 10800717 ldw r2,28(r2)
  19579. }
  19580. 50b24: e037883a mov sp,fp
  19581. 50b28: dfc00117 ldw ra,4(sp)
  19582. 50b2c: df000017 ldw fp,0(sp)
  19583. 50b30: dec00204 addi sp,sp,8
  19584. 50b34: f800283a ret
  19585. 00050b38 <altera_avalon_lcd_16207_init>:
  19586. /*
  19587. * Called at boot time to initialise the LCD driver
  19588. */
  19589. void altera_avalon_lcd_16207_init(altera_avalon_lcd_16207_state* sp)
  19590. {
  19591. 50b38: defffc04 addi sp,sp,-16
  19592. 50b3c: dfc00315 stw ra,12(sp)
  19593. 50b40: df000215 stw fp,8(sp)
  19594. 50b44: df000204 addi fp,sp,8
  19595. 50b48: e13fff15 stw r4,-4(fp)
  19596. unsigned int base = sp->base;
  19597. 50b4c: e0bfff17 ldw r2,-4(fp)
  19598. 50b50: 10800017 ldw r2,0(r2)
  19599. 50b54: e0bffe15 stw r2,-8(fp)
  19600. /* Mark the device as functional */
  19601. sp->broken = 0;
  19602. 50b58: e0bfff17 ldw r2,-4(fp)
  19603. 50b5c: 10000805 stb zero,32(r2)
  19604. * the BUSY bit in the status register doesn't work until the display
  19605. * has been reset three times.
  19606. */
  19607. /* Wait for 15 ms then reset */
  19608. usleep(15000);
  19609. 50b60: 010ea604 movi r4,15000
  19610. 50b64: 00518000 call 51800 <usleep>
  19611. IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
  19612. 50b68: e0bffe17 ldw r2,-8(fp)
  19613. 50b6c: 00c00c04 movi r3,48
  19614. 50b70: 10c00035 stwio r3,0(r2)
  19615. /* Wait for another 4.1ms and reset again */
  19616. usleep(4100);
  19617. 50b74: 01040104 movi r4,4100
  19618. 50b78: 00518000 call 51800 <usleep>
  19619. IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
  19620. 50b7c: e0bffe17 ldw r2,-8(fp)
  19621. 50b80: 00c00c04 movi r3,48
  19622. 50b84: 10c00035 stwio r3,0(r2)
  19623. /* Wait a further 1 ms and reset a third time */
  19624. usleep(1000);
  19625. 50b88: 0100fa04 movi r4,1000
  19626. 50b8c: 00518000 call 51800 <usleep>
  19627. IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
  19628. 50b90: e0bffe17 ldw r2,-8(fp)
  19629. 50b94: 00c00c04 movi r3,48
  19630. 50b98: 10c00035 stwio r3,0(r2)
  19631. /* Setup interface parameters: 8 bit bus, 2 rows, 5x7 font */
  19632. lcd_write_command(sp, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT | LCD_CMD_TWO_LINE);
  19633. 50b9c: 01400e04 movi r5,56
  19634. 50ba0: e13fff17 ldw r4,-4(fp)
  19635. 50ba4: 004fd200 call 4fd20 <lcd_write_command>
  19636. /* Turn display off */
  19637. lcd_write_command(sp, LCD_CMD_ONOFF);
  19638. 50ba8: 01400204 movi r5,8
  19639. 50bac: e13fff17 ldw r4,-4(fp)
  19640. 50bb0: 004fd200 call 4fd20 <lcd_write_command>
  19641. /* Clear display */
  19642. lcd_clear_screen(sp);
  19643. 50bb4: e13fff17 ldw r4,-4(fp)
  19644. 50bb8: 004feb00 call 4feb0 <lcd_clear_screen>
  19645. /* Set mode: increment after writing, don't shift display */
  19646. lcd_write_command(sp, LCD_CMD_MODES | LCD_CMD_MODE_INC);
  19647. 50bbc: 01400184 movi r5,6
  19648. 50bc0: e13fff17 ldw r4,-4(fp)
  19649. 50bc4: 004fd200 call 4fd20 <lcd_write_command>
  19650. /* Turn display on */
  19651. lcd_write_command(sp, LCD_CMD_ONOFF | LCD_CMD_ENABLE_DISP);
  19652. 50bc8: 01400304 movi r5,12
  19653. 50bcc: e13fff17 ldw r4,-4(fp)
  19654. 50bd0: 004fd200 call 4fd20 <lcd_write_command>
  19655. sp->esccount = -1;
  19656. 50bd4: e0bfff17 ldw r2,-4(fp)
  19657. 50bd8: 00ffffc4 movi r3,-1
  19658. 50bdc: 10c00905 stb r3,36(r2)
  19659. memset(sp->escape, 0, sizeof(sp->escape));
  19660. 50be0: e0bfff17 ldw r2,-4(fp)
  19661. 50be4: 10800a04 addi r2,r2,40
  19662. 50be8: 01800204 movi r6,8
  19663. 50bec: 000b883a mov r5,zero
  19664. 50bf0: 1009883a mov r4,r2
  19665. 50bf4: 00478080 call 47808 <memset>
  19666. sp->scrollpos = 0;
  19667. 50bf8: e0bfff17 ldw r2,-4(fp)
  19668. 50bfc: 10000945 stb zero,37(r2)
  19669. sp->scrollmax = 0;
  19670. 50c00: e0bfff17 ldw r2,-4(fp)
  19671. 50c04: 10000985 stb zero,38(r2)
  19672. sp->active = 0;
  19673. 50c08: e0bfff17 ldw r2,-4(fp)
  19674. 50c0c: 100009c5 stb zero,39(r2)
  19675. 50c10: d0a72617 ldw r2,-25448(gp)
  19676. sp->period = alt_ticks_per_second() / 10; /* Call every 100ms */
  19677. 50c14: 01400284 movi r5,10
  19678. 50c18: 1009883a mov r4,r2
  19679. 50c1c: 004c93c0 call 4c93c <__udivsi3>
  19680. 50c20: 1007883a mov r3,r2
  19681. 50c24: e0bfff17 ldw r2,-4(fp)
  19682. 50c28: 10c00715 stw r3,28(r2)
  19683. alt_alarm_start(&sp->alarm, sp->period, &alt_lcd_16207_timeout, sp);
  19684. 50c2c: e0bfff17 ldw r2,-4(fp)
  19685. 50c30: 10c00104 addi r3,r2,4
  19686. 50c34: e0bfff17 ldw r2,-4(fp)
  19687. 50c38: 10800717 ldw r2,28(r2)
  19688. 50c3c: e1ffff17 ldw r7,-4(fp)
  19689. 50c40: 01800174 movhi r6,5
  19690. 50c44: 3182a304 addi r6,r6,2700
  19691. 50c48: 100b883a mov r5,r2
  19692. 50c4c: 1809883a mov r4,r3
  19693. 50c50: 0050ccc0 call 50ccc <alt_alarm_start>
  19694. }
  19695. 50c54: 0001883a nop
  19696. 50c58: e037883a mov sp,fp
  19697. 50c5c: dfc00117 ldw ra,4(sp)
  19698. 50c60: df000017 ldw fp,0(sp)
  19699. 50c64: dec00204 addi sp,sp,8
  19700. 50c68: f800283a ret
  19701. 00050c6c <altera_avalon_lcd_16207_write_fd>:
  19702. extern int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp,
  19703. const char* ptr, int count, int flags);
  19704. int
  19705. altera_avalon_lcd_16207_write_fd(alt_fd* fd, const char* buffer, int space)
  19706. {
  19707. 50c6c: defffa04 addi sp,sp,-24
  19708. 50c70: dfc00515 stw ra,20(sp)
  19709. 50c74: df000415 stw fp,16(sp)
  19710. 50c78: df000404 addi fp,sp,16
  19711. 50c7c: e13ffd15 stw r4,-12(fp)
  19712. 50c80: e17ffe15 stw r5,-8(fp)
  19713. 50c84: e1bfff15 stw r6,-4(fp)
  19714. altera_avalon_lcd_16207_dev* dev = (altera_avalon_lcd_16207_dev*) fd->dev;
  19715. 50c88: e0bffd17 ldw r2,-12(fp)
  19716. 50c8c: 10800017 ldw r2,0(r2)
  19717. 50c90: e0bffc15 stw r2,-16(fp)
  19718. return altera_avalon_lcd_16207_write(&dev->state, buffer, space,
  19719. 50c94: e0bffc17 ldw r2,-16(fp)
  19720. 50c98: 10c00a04 addi r3,r2,40
  19721. 50c9c: e0bffd17 ldw r2,-12(fp)
  19722. 50ca0: 10800217 ldw r2,8(r2)
  19723. 50ca4: 100f883a mov r7,r2
  19724. 50ca8: e1bfff17 ldw r6,-4(fp)
  19725. 50cac: e17ffe17 ldw r5,-8(fp)
  19726. 50cb0: 1809883a mov r4,r3
  19727. 50cb4: 005056c0 call 5056c <altera_avalon_lcd_16207_write>
  19728. fd->fd_flags);
  19729. }
  19730. 50cb8: e037883a mov sp,fp
  19731. 50cbc: dfc00117 ldw ra,4(sp)
  19732. 50cc0: df000017 ldw fp,0(sp)
  19733. 50cc4: dec00204 addi sp,sp,8
  19734. 50cc8: f800283a ret
  19735. 00050ccc <alt_alarm_start>:
  19736. */
  19737. int alt_alarm_start (alt_alarm* alarm, alt_u32 nticks,
  19738. alt_u32 (*callback) (void* context),
  19739. void* context)
  19740. {
  19741. 50ccc: defff504 addi sp,sp,-44
  19742. 50cd0: df000a15 stw fp,40(sp)
  19743. 50cd4: df000a04 addi fp,sp,40
  19744. 50cd8: e13ffc15 stw r4,-16(fp)
  19745. 50cdc: e17ffd15 stw r5,-12(fp)
  19746. 50ce0: e1bffe15 stw r6,-8(fp)
  19747. 50ce4: e1ffff15 stw r7,-4(fp)
  19748. alt_irq_context irq_context;
  19749. alt_u32 current_nticks = 0;
  19750. 50ce8: e03ff615 stw zero,-40(fp)
  19751. 50cec: d0a72617 ldw r2,-25448(gp)
  19752. if (alt_ticks_per_second ())
  19753. 50cf0: 10003c26 beq r2,zero,50de4 <alt_alarm_start+0x118>
  19754. {
  19755. if (alarm)
  19756. 50cf4: e0bffc17 ldw r2,-16(fp)
  19757. 50cf8: 10003826 beq r2,zero,50ddc <alt_alarm_start+0x110>
  19758. {
  19759. alarm->callback = callback;
  19760. 50cfc: e0bffc17 ldw r2,-16(fp)
  19761. 50d00: e0fffe17 ldw r3,-8(fp)
  19762. 50d04: 10c00315 stw r3,12(r2)
  19763. alarm->context = context;
  19764. 50d08: e0bffc17 ldw r2,-16(fp)
  19765. 50d0c: e0ffff17 ldw r3,-4(fp)
  19766. 50d10: 10c00515 stw r3,20(r2)
  19767. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  19768. alt_irq_disable_all (void)
  19769. {
  19770. alt_irq_context context;
  19771. NIOS2_READ_STATUS (context);
  19772. 50d14: 0005303a rdctl r2,status
  19773. 50d18: e0bff915 stw r2,-28(fp)
  19774. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  19775. 50d1c: e0fff917 ldw r3,-28(fp)
  19776. 50d20: 00bfff84 movi r2,-2
  19777. 50d24: 1884703a and r2,r3,r2
  19778. 50d28: 1001703a wrctl status,r2
  19779. return context;
  19780. 50d2c: e0bff917 ldw r2,-28(fp)
  19781. irq_context = alt_irq_disable_all ();
  19782. 50d30: e0bff815 stw r2,-32(fp)
  19783. * alt_nticks() returns the elapsed number of system clock ticks since reset.
  19784. */
  19785. static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_nticks (void)
  19786. {
  19787. return _alt_nticks;
  19788. 50d34: d0a72717 ldw r2,-25444(gp)
  19789. current_nticks = alt_nticks();
  19790. 50d38: e0bff615 stw r2,-40(fp)
  19791. alarm->time = nticks + current_nticks + 1;
  19792. 50d3c: e0fffd17 ldw r3,-12(fp)
  19793. 50d40: e0bff617 ldw r2,-40(fp)
  19794. 50d44: 1885883a add r2,r3,r2
  19795. 50d48: 10c00044 addi r3,r2,1
  19796. 50d4c: e0bffc17 ldw r2,-16(fp)
  19797. 50d50: 10c00215 stw r3,8(r2)
  19798. /*
  19799. * If the desired alarm time causes a roll-over, set the rollover
  19800. * flag. This will prevent the subsequent tick event from causing
  19801. * an alarm too early.
  19802. */
  19803. if(alarm->time < current_nticks)
  19804. 50d54: e0bffc17 ldw r2,-16(fp)
  19805. 50d58: 10c00217 ldw r3,8(r2)
  19806. 50d5c: e0bff617 ldw r2,-40(fp)
  19807. 50d60: 1880042e bgeu r3,r2,50d74 <alt_alarm_start+0xa8>
  19808. {
  19809. alarm->rollover = 1;
  19810. 50d64: e0bffc17 ldw r2,-16(fp)
  19811. 50d68: 00c00044 movi r3,1
  19812. 50d6c: 10c00405 stb r3,16(r2)
  19813. 50d70: 00000206 br 50d7c <alt_alarm_start+0xb0>
  19814. }
  19815. else
  19816. {
  19817. alarm->rollover = 0;
  19818. 50d74: e0bffc17 ldw r2,-16(fp)
  19819. 50d78: 10000405 stb zero,16(r2)
  19820. }
  19821. alt_llist_insert (&alt_alarm_list, &alarm->llist);
  19822. 50d7c: e0bffc17 ldw r2,-16(fp)
  19823. 50d80: d0e00f04 addi r3,gp,-32708
  19824. 50d84: e0fffa15 stw r3,-24(fp)
  19825. 50d88: e0bffb15 stw r2,-20(fp)
  19826. */
  19827. static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list,
  19828. alt_llist* entry)
  19829. {
  19830. entry->previous = list;
  19831. 50d8c: e0bffb17 ldw r2,-20(fp)
  19832. 50d90: e0fffa17 ldw r3,-24(fp)
  19833. 50d94: 10c00115 stw r3,4(r2)
  19834. entry->next = list->next;
  19835. 50d98: e0bffa17 ldw r2,-24(fp)
  19836. 50d9c: 10c00017 ldw r3,0(r2)
  19837. 50da0: e0bffb17 ldw r2,-20(fp)
  19838. 50da4: 10c00015 stw r3,0(r2)
  19839. list->next->previous = entry;
  19840. 50da8: e0bffa17 ldw r2,-24(fp)
  19841. 50dac: 10800017 ldw r2,0(r2)
  19842. 50db0: e0fffb17 ldw r3,-20(fp)
  19843. 50db4: 10c00115 stw r3,4(r2)
  19844. list->next = entry;
  19845. 50db8: e0bffa17 ldw r2,-24(fp)
  19846. 50dbc: e0fffb17 ldw r3,-20(fp)
  19847. 50dc0: 10c00015 stw r3,0(r2)
  19848. 50dc4: e0bff817 ldw r2,-32(fp)
  19849. 50dc8: e0bff715 stw r2,-36(fp)
  19850. status &= ~NIOS2_STATUS_PIE_MSK;
  19851. status |= (context & NIOS2_STATUS_PIE_MSK);
  19852. NIOS2_WRITE_STATUS (status);
  19853. #else
  19854. NIOS2_WRITE_STATUS (context);
  19855. 50dcc: e0bff717 ldw r2,-36(fp)
  19856. 50dd0: 1001703a wrctl status,r2
  19857. alt_irq_enable_all (irq_context);
  19858. return 0;
  19859. 50dd4: 0005883a mov r2,zero
  19860. 50dd8: 00000306 br 50de8 <alt_alarm_start+0x11c>
  19861. }
  19862. else
  19863. {
  19864. return -EINVAL;
  19865. 50ddc: 00bffa84 movi r2,-22
  19866. 50de0: 00000106 br 50de8 <alt_alarm_start+0x11c>
  19867. }
  19868. }
  19869. else
  19870. {
  19871. return -ENOTSUP;
  19872. 50de4: 00bfde84 movi r2,-134
  19873. }
  19874. }
  19875. 50de8: e037883a mov sp,fp
  19876. 50dec: df000017 ldw fp,0(sp)
  19877. 50df0: dec00104 addi sp,sp,4
  19878. 50df4: f800283a ret
  19879. 00050df8 <alt_dcache_flush_all>:
  19880. /*
  19881. * alt_dcache_flush_all() is called to flush the entire data cache.
  19882. */
  19883. void alt_dcache_flush_all (void)
  19884. {
  19885. 50df8: deffff04 addi sp,sp,-4
  19886. 50dfc: df000015 stw fp,0(sp)
  19887. 50e00: d839883a mov fp,sp
  19888. for (i = (char*) 0; i < (char*) NIOS2_DCACHE_SIZE; i+= NIOS2_DCACHE_LINE_SIZE)
  19889. {
  19890. __asm__ volatile ("flushd (%0)" :: "r" (i));
  19891. }
  19892. #endif /* NIOS2_DCACHE_SIZE > 0 */
  19893. }
  19894. 50e04: 0001883a nop
  19895. 50e08: e037883a mov sp,fp
  19896. 50e0c: df000017 ldw fp,0(sp)
  19897. 50e10: dec00104 addi sp,sp,4
  19898. 50e14: f800283a ret
  19899. 00050e18 <alt_get_errno>:
  19900. #undef errno
  19901. extern int errno;
  19902. static ALT_INLINE int* alt_get_errno(void)
  19903. {
  19904. 50e18: defffe04 addi sp,sp,-8
  19905. 50e1c: dfc00115 stw ra,4(sp)
  19906. 50e20: df000015 stw fp,0(sp)
  19907. 50e24: d839883a mov fp,sp
  19908. return ((alt_errno) ? alt_errno() : &errno);
  19909. 50e28: d0a00b17 ldw r2,-32724(gp)
  19910. 50e2c: 10000326 beq r2,zero,50e3c <alt_get_errno+0x24>
  19911. 50e30: d0a00b17 ldw r2,-32724(gp)
  19912. 50e34: 103ee83a callr r2
  19913. 50e38: 00000106 br 50e40 <alt_get_errno+0x28>
  19914. 50e3c: d0a72104 addi r2,gp,-25468
  19915. }
  19916. 50e40: e037883a mov sp,fp
  19917. 50e44: dfc00117 ldw ra,4(sp)
  19918. 50e48: df000017 ldw fp,0(sp)
  19919. 50e4c: dec00204 addi sp,sp,8
  19920. 50e50: f800283a ret
  19921. 00050e54 <alt_dev_llist_insert>:
  19922. /*
  19923. *
  19924. */
  19925. int alt_dev_llist_insert (alt_dev_llist* dev, alt_llist* list)
  19926. {
  19927. 50e54: defffa04 addi sp,sp,-24
  19928. 50e58: dfc00515 stw ra,20(sp)
  19929. 50e5c: df000415 stw fp,16(sp)
  19930. 50e60: df000404 addi fp,sp,16
  19931. 50e64: e13ffe15 stw r4,-8(fp)
  19932. 50e68: e17fff15 stw r5,-4(fp)
  19933. /*
  19934. * check that the device exists, and that it has a valid name.
  19935. */
  19936. if (!dev || !dev->name)
  19937. 50e6c: e0bffe17 ldw r2,-8(fp)
  19938. 50e70: 10000326 beq r2,zero,50e80 <alt_dev_llist_insert+0x2c>
  19939. 50e74: e0bffe17 ldw r2,-8(fp)
  19940. 50e78: 10800217 ldw r2,8(r2)
  19941. 50e7c: 1000061e bne r2,zero,50e98 <alt_dev_llist_insert+0x44>
  19942. {
  19943. ALT_ERRNO = EINVAL;
  19944. 50e80: 0050e180 call 50e18 <alt_get_errno>
  19945. 50e84: 1007883a mov r3,r2
  19946. 50e88: 00800584 movi r2,22
  19947. 50e8c: 18800015 stw r2,0(r3)
  19948. return -EINVAL;
  19949. 50e90: 00bffa84 movi r2,-22
  19950. 50e94: 00001306 br 50ee4 <alt_dev_llist_insert+0x90>
  19951. /*
  19952. * register the device.
  19953. */
  19954. alt_llist_insert(list, &dev->llist);
  19955. 50e98: e0bffe17 ldw r2,-8(fp)
  19956. 50e9c: e0ffff17 ldw r3,-4(fp)
  19957. 50ea0: e0fffc15 stw r3,-16(fp)
  19958. 50ea4: e0bffd15 stw r2,-12(fp)
  19959. */
  19960. static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list,
  19961. alt_llist* entry)
  19962. {
  19963. entry->previous = list;
  19964. 50ea8: e0bffd17 ldw r2,-12(fp)
  19965. 50eac: e0fffc17 ldw r3,-16(fp)
  19966. 50eb0: 10c00115 stw r3,4(r2)
  19967. entry->next = list->next;
  19968. 50eb4: e0bffc17 ldw r2,-16(fp)
  19969. 50eb8: 10c00017 ldw r3,0(r2)
  19970. 50ebc: e0bffd17 ldw r2,-12(fp)
  19971. 50ec0: 10c00015 stw r3,0(r2)
  19972. list->next->previous = entry;
  19973. 50ec4: e0bffc17 ldw r2,-16(fp)
  19974. 50ec8: 10800017 ldw r2,0(r2)
  19975. 50ecc: e0fffd17 ldw r3,-12(fp)
  19976. 50ed0: 10c00115 stw r3,4(r2)
  19977. list->next = entry;
  19978. 50ed4: e0bffc17 ldw r2,-16(fp)
  19979. 50ed8: e0fffd17 ldw r3,-12(fp)
  19980. 50edc: 10c00015 stw r3,0(r2)
  19981. return 0;
  19982. 50ee0: 0005883a mov r2,zero
  19983. }
  19984. 50ee4: e037883a mov sp,fp
  19985. 50ee8: dfc00117 ldw ra,4(sp)
  19986. 50eec: df000017 ldw fp,0(sp)
  19987. 50ef0: dec00204 addi sp,sp,8
  19988. 50ef4: f800283a ret
  19989. 00050ef8 <_do_ctors>:
  19990. /*
  19991. * Run the C++ static constructors.
  19992. */
  19993. void _do_ctors(void)
  19994. {
  19995. 50ef8: defffd04 addi sp,sp,-12
  19996. 50efc: dfc00215 stw ra,8(sp)
  19997. 50f00: df000115 stw fp,4(sp)
  19998. 50f04: df000104 addi fp,sp,4
  19999. constructor* ctor;
  20000. for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--)
  20001. 50f08: 00800174 movhi r2,5
  20002. 50f0c: 10880d04 addi r2,r2,8244
  20003. 50f10: e0bfff15 stw r2,-4(fp)
  20004. 50f14: 00000606 br 50f30 <_do_ctors+0x38>
  20005. (*ctor) ();
  20006. 50f18: e0bfff17 ldw r2,-4(fp)
  20007. 50f1c: 10800017 ldw r2,0(r2)
  20008. 50f20: 103ee83a callr r2
  20009. void _do_ctors(void)
  20010. {
  20011. constructor* ctor;
  20012. for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--)
  20013. 50f24: e0bfff17 ldw r2,-4(fp)
  20014. 50f28: 10bfff04 addi r2,r2,-4
  20015. 50f2c: e0bfff15 stw r2,-4(fp)
  20016. 50f30: e0ffff17 ldw r3,-4(fp)
  20017. 50f34: 00800174 movhi r2,5
  20018. 50f38: 10880e04 addi r2,r2,8248
  20019. 50f3c: 18bff62e bgeu r3,r2,50f18 <__alt_data_end+0xfffdef18>
  20020. (*ctor) ();
  20021. }
  20022. 50f40: 0001883a nop
  20023. 50f44: e037883a mov sp,fp
  20024. 50f48: dfc00117 ldw ra,4(sp)
  20025. 50f4c: df000017 ldw fp,0(sp)
  20026. 50f50: dec00204 addi sp,sp,8
  20027. 50f54: f800283a ret
  20028. 00050f58 <_do_dtors>:
  20029. /*
  20030. * Run the C++ static destructors.
  20031. */
  20032. void _do_dtors(void)
  20033. {
  20034. 50f58: defffd04 addi sp,sp,-12
  20035. 50f5c: dfc00215 stw ra,8(sp)
  20036. 50f60: df000115 stw fp,4(sp)
  20037. 50f64: df000104 addi fp,sp,4
  20038. destructor* dtor;
  20039. for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--)
  20040. 50f68: 00800174 movhi r2,5
  20041. 50f6c: 10880d04 addi r2,r2,8244
  20042. 50f70: e0bfff15 stw r2,-4(fp)
  20043. 50f74: 00000606 br 50f90 <_do_dtors+0x38>
  20044. (*dtor) ();
  20045. 50f78: e0bfff17 ldw r2,-4(fp)
  20046. 50f7c: 10800017 ldw r2,0(r2)
  20047. 50f80: 103ee83a callr r2
  20048. void _do_dtors(void)
  20049. {
  20050. destructor* dtor;
  20051. for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--)
  20052. 50f84: e0bfff17 ldw r2,-4(fp)
  20053. 50f88: 10bfff04 addi r2,r2,-4
  20054. 50f8c: e0bfff15 stw r2,-4(fp)
  20055. 50f90: e0ffff17 ldw r3,-4(fp)
  20056. 50f94: 00800174 movhi r2,5
  20057. 50f98: 10880e04 addi r2,r2,8248
  20058. 50f9c: 18bff62e bgeu r3,r2,50f78 <__alt_data_end+0xfffdef78>
  20059. (*dtor) ();
  20060. }
  20061. 50fa0: 0001883a nop
  20062. 50fa4: e037883a mov sp,fp
  20063. 50fa8: dfc00117 ldw ra,4(sp)
  20064. 50fac: df000017 ldw fp,0(sp)
  20065. 50fb0: dec00204 addi sp,sp,8
  20066. 50fb4: f800283a ret
  20067. 00050fb8 <alt_icache_flush_all>:
  20068. /*
  20069. * alt_icache_flush_all() is called to flush the entire instruction cache.
  20070. */
  20071. void alt_icache_flush_all (void)
  20072. {
  20073. 50fb8: deffff04 addi sp,sp,-4
  20074. 50fbc: df000015 stw fp,0(sp)
  20075. 50fc0: d839883a mov fp,sp
  20076. #if NIOS2_ICACHE_SIZE > 0
  20077. alt_icache_flush (0, NIOS2_ICACHE_SIZE);
  20078. #endif
  20079. }
  20080. 50fc4: 0001883a nop
  20081. 50fc8: e037883a mov sp,fp
  20082. 50fcc: df000017 ldw fp,0(sp)
  20083. 50fd0: dec00104 addi sp,sp,4
  20084. 50fd4: f800283a ret
  20085. 00050fd8 <alt_ic_isr_register>:
  20086. * @param irq IRQ number
  20087. * @return 0 if successful, else error (-1)
  20088. */
  20089. int alt_ic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr,
  20090. void *isr_context, void *flags)
  20091. {
  20092. 50fd8: defff904 addi sp,sp,-28
  20093. 50fdc: dfc00615 stw ra,24(sp)
  20094. 50fe0: df000515 stw fp,20(sp)
  20095. 50fe4: df000504 addi fp,sp,20
  20096. 50fe8: e13ffc15 stw r4,-16(fp)
  20097. 50fec: e17ffd15 stw r5,-12(fp)
  20098. 50ff0: e1bffe15 stw r6,-8(fp)
  20099. 50ff4: e1ffff15 stw r7,-4(fp)
  20100. return alt_iic_isr_register(ic_id, irq, isr, isr_context, flags);
  20101. 50ff8: e0800217 ldw r2,8(fp)
  20102. 50ffc: d8800015 stw r2,0(sp)
  20103. 51000: e1ffff17 ldw r7,-4(fp)
  20104. 51004: e1bffe17 ldw r6,-8(fp)
  20105. 51008: e17ffd17 ldw r5,-12(fp)
  20106. 5100c: e13ffc17 ldw r4,-16(fp)
  20107. 51010: 00511880 call 51188 <alt_iic_isr_register>
  20108. }
  20109. 51014: e037883a mov sp,fp
  20110. 51018: dfc00117 ldw ra,4(sp)
  20111. 5101c: df000017 ldw fp,0(sp)
  20112. 51020: dec00204 addi sp,sp,8
  20113. 51024: f800283a ret
  20114. 00051028 <alt_ic_irq_enable>:
  20115. * @param ic_id Ignored.
  20116. * @param irq IRQ number
  20117. * @return 0 if successful, else error (-1)
  20118. */
  20119. int alt_ic_irq_enable (alt_u32 ic_id, alt_u32 irq)
  20120. {
  20121. 51028: defff904 addi sp,sp,-28
  20122. 5102c: df000615 stw fp,24(sp)
  20123. 51030: df000604 addi fp,sp,24
  20124. 51034: e13ffe15 stw r4,-8(fp)
  20125. 51038: e17fff15 stw r5,-4(fp)
  20126. 5103c: e0bfff17 ldw r2,-4(fp)
  20127. 51040: e0bffa15 stw r2,-24(fp)
  20128. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  20129. alt_irq_disable_all (void)
  20130. {
  20131. alt_irq_context context;
  20132. NIOS2_READ_STATUS (context);
  20133. 51044: 0005303a rdctl r2,status
  20134. 51048: e0bffb15 stw r2,-20(fp)
  20135. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  20136. 5104c: e0fffb17 ldw r3,-20(fp)
  20137. 51050: 00bfff84 movi r2,-2
  20138. 51054: 1884703a and r2,r3,r2
  20139. 51058: 1001703a wrctl status,r2
  20140. return context;
  20141. 5105c: e0bffb17 ldw r2,-20(fp)
  20142. static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_enable (alt_u32 id)
  20143. {
  20144. alt_irq_context status;
  20145. extern volatile alt_u32 alt_irq_active;
  20146. status = alt_irq_disable_all ();
  20147. 51060: e0bffc15 stw r2,-16(fp)
  20148. alt_irq_active |= (1 << id);
  20149. 51064: 00c00044 movi r3,1
  20150. 51068: e0bffa17 ldw r2,-24(fp)
  20151. 5106c: 1884983a sll r2,r3,r2
  20152. 51070: 1007883a mov r3,r2
  20153. 51074: d0a72517 ldw r2,-25452(gp)
  20154. 51078: 1884b03a or r2,r3,r2
  20155. 5107c: d0a72515 stw r2,-25452(gp)
  20156. NIOS2_WRITE_IENABLE (alt_irq_active);
  20157. 51080: d0a72517 ldw r2,-25452(gp)
  20158. 51084: 100170fa wrctl ienable,r2
  20159. 51088: e0bffc17 ldw r2,-16(fp)
  20160. 5108c: e0bffd15 stw r2,-12(fp)
  20161. status &= ~NIOS2_STATUS_PIE_MSK;
  20162. status |= (context & NIOS2_STATUS_PIE_MSK);
  20163. NIOS2_WRITE_STATUS (status);
  20164. #else
  20165. NIOS2_WRITE_STATUS (context);
  20166. 51090: e0bffd17 ldw r2,-12(fp)
  20167. 51094: 1001703a wrctl status,r2
  20168. alt_irq_enable_all(status);
  20169. return 0;
  20170. 51098: 0005883a mov r2,zero
  20171. return alt_irq_enable(irq);
  20172. 5109c: 0001883a nop
  20173. }
  20174. 510a0: e037883a mov sp,fp
  20175. 510a4: df000017 ldw fp,0(sp)
  20176. 510a8: dec00104 addi sp,sp,4
  20177. 510ac: f800283a ret
  20178. 000510b0 <alt_ic_irq_disable>:
  20179. * @param ic_id Ignored.
  20180. * @param irq IRQ number
  20181. * @return 0 if successful, else error (-1)
  20182. */
  20183. int alt_ic_irq_disable(alt_u32 ic_id, alt_u32 irq)
  20184. {
  20185. 510b0: defff904 addi sp,sp,-28
  20186. 510b4: df000615 stw fp,24(sp)
  20187. 510b8: df000604 addi fp,sp,24
  20188. 510bc: e13ffe15 stw r4,-8(fp)
  20189. 510c0: e17fff15 stw r5,-4(fp)
  20190. 510c4: e0bfff17 ldw r2,-4(fp)
  20191. 510c8: e0bffa15 stw r2,-24(fp)
  20192. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  20193. alt_irq_disable_all (void)
  20194. {
  20195. alt_irq_context context;
  20196. NIOS2_READ_STATUS (context);
  20197. 510cc: 0005303a rdctl r2,status
  20198. 510d0: e0bffb15 stw r2,-20(fp)
  20199. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  20200. 510d4: e0fffb17 ldw r3,-20(fp)
  20201. 510d8: 00bfff84 movi r2,-2
  20202. 510dc: 1884703a and r2,r3,r2
  20203. 510e0: 1001703a wrctl status,r2
  20204. return context;
  20205. 510e4: e0bffb17 ldw r2,-20(fp)
  20206. static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_disable (alt_u32 id)
  20207. {
  20208. alt_irq_context status;
  20209. extern volatile alt_u32 alt_irq_active;
  20210. status = alt_irq_disable_all ();
  20211. 510e8: e0bffc15 stw r2,-16(fp)
  20212. alt_irq_active &= ~(1 << id);
  20213. 510ec: 00c00044 movi r3,1
  20214. 510f0: e0bffa17 ldw r2,-24(fp)
  20215. 510f4: 1884983a sll r2,r3,r2
  20216. 510f8: 0084303a nor r2,zero,r2
  20217. 510fc: 1007883a mov r3,r2
  20218. 51100: d0a72517 ldw r2,-25452(gp)
  20219. 51104: 1884703a and r2,r3,r2
  20220. 51108: d0a72515 stw r2,-25452(gp)
  20221. NIOS2_WRITE_IENABLE (alt_irq_active);
  20222. 5110c: d0a72517 ldw r2,-25452(gp)
  20223. 51110: 100170fa wrctl ienable,r2
  20224. 51114: e0bffc17 ldw r2,-16(fp)
  20225. 51118: e0bffd15 stw r2,-12(fp)
  20226. status &= ~NIOS2_STATUS_PIE_MSK;
  20227. status |= (context & NIOS2_STATUS_PIE_MSK);
  20228. NIOS2_WRITE_STATUS (status);
  20229. #else
  20230. NIOS2_WRITE_STATUS (context);
  20231. 5111c: e0bffd17 ldw r2,-12(fp)
  20232. 51120: 1001703a wrctl status,r2
  20233. alt_irq_enable_all(status);
  20234. return 0;
  20235. 51124: 0005883a mov r2,zero
  20236. return alt_irq_disable(irq);
  20237. 51128: 0001883a nop
  20238. }
  20239. 5112c: e037883a mov sp,fp
  20240. 51130: df000017 ldw fp,0(sp)
  20241. 51134: dec00104 addi sp,sp,4
  20242. 51138: f800283a ret
  20243. 0005113c <alt_ic_irq_enabled>:
  20244. * @param irq IRQ number
  20245. * @return Zero if corresponding interrupt is disabled and
  20246. * non-zero otherwise.
  20247. */
  20248. alt_u32 alt_ic_irq_enabled(alt_u32 ic_id, alt_u32 irq)
  20249. {
  20250. 5113c: defffc04 addi sp,sp,-16
  20251. 51140: df000315 stw fp,12(sp)
  20252. 51144: df000304 addi fp,sp,12
  20253. 51148: e13ffe15 stw r4,-8(fp)
  20254. 5114c: e17fff15 stw r5,-4(fp)
  20255. alt_u32 irq_enabled;
  20256. NIOS2_READ_IENABLE(irq_enabled);
  20257. 51150: 000530fa rdctl r2,ienable
  20258. 51154: e0bffd15 stw r2,-12(fp)
  20259. return (irq_enabled & (1 << irq)) ? 1: 0;
  20260. 51158: 00c00044 movi r3,1
  20261. 5115c: e0bfff17 ldw r2,-4(fp)
  20262. 51160: 1884983a sll r2,r3,r2
  20263. 51164: 1007883a mov r3,r2
  20264. 51168: e0bffd17 ldw r2,-12(fp)
  20265. 5116c: 1884703a and r2,r3,r2
  20266. 51170: 1004c03a cmpne r2,r2,zero
  20267. 51174: 10803fcc andi r2,r2,255
  20268. }
  20269. 51178: e037883a mov sp,fp
  20270. 5117c: df000017 ldw fp,0(sp)
  20271. 51180: dec00104 addi sp,sp,4
  20272. 51184: f800283a ret
  20273. 00051188 <alt_iic_isr_register>:
  20274. * @param flags
  20275. * @return 0 if successful, else error (-1)
  20276. */
  20277. int alt_iic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr,
  20278. void *isr_context, void *flags)
  20279. {
  20280. 51188: defff504 addi sp,sp,-44
  20281. 5118c: dfc00a15 stw ra,40(sp)
  20282. 51190: df000915 stw fp,36(sp)
  20283. 51194: df000904 addi fp,sp,36
  20284. 51198: e13ffc15 stw r4,-16(fp)
  20285. 5119c: e17ffd15 stw r5,-12(fp)
  20286. 511a0: e1bffe15 stw r6,-8(fp)
  20287. 511a4: e1ffff15 stw r7,-4(fp)
  20288. int rc = -EINVAL;
  20289. 511a8: 00bffa84 movi r2,-22
  20290. 511ac: e0bff715 stw r2,-36(fp)
  20291. int id = irq; /* IRQ interpreted as the interrupt ID. */
  20292. 511b0: e0bffd17 ldw r2,-12(fp)
  20293. 511b4: e0bff815 stw r2,-32(fp)
  20294. alt_irq_context status;
  20295. if (id < ALT_NIRQ)
  20296. 511b8: e0bff817 ldw r2,-32(fp)
  20297. 511bc: 10800808 cmpgei r2,r2,32
  20298. 511c0: 1000271e bne r2,zero,51260 <alt_iic_isr_register+0xd8>
  20299. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  20300. alt_irq_disable_all (void)
  20301. {
  20302. alt_irq_context context;
  20303. NIOS2_READ_STATUS (context);
  20304. 511c4: 0005303a rdctl r2,status
  20305. 511c8: e0bffb15 stw r2,-20(fp)
  20306. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  20307. 511cc: e0fffb17 ldw r3,-20(fp)
  20308. 511d0: 00bfff84 movi r2,-2
  20309. 511d4: 1884703a and r2,r3,r2
  20310. 511d8: 1001703a wrctl status,r2
  20311. return context;
  20312. 511dc: e0bffb17 ldw r2,-20(fp)
  20313. * interrupts are disabled while the handler tables are updated to ensure
  20314. * that an interrupt doesn't occur while the tables are in an inconsistant
  20315. * state.
  20316. */
  20317. status = alt_irq_disable_all();
  20318. 511e0: e0bffa15 stw r2,-24(fp)
  20319. alt_irq[id].handler = isr;
  20320. 511e4: 00800174 movhi r2,5
  20321. 511e8: 1097c904 addi r2,r2,24356
  20322. 511ec: e0fff817 ldw r3,-32(fp)
  20323. 511f0: 180690fa slli r3,r3,3
  20324. 511f4: 10c5883a add r2,r2,r3
  20325. 511f8: e0fffe17 ldw r3,-8(fp)
  20326. 511fc: 10c00015 stw r3,0(r2)
  20327. alt_irq[id].context = isr_context;
  20328. 51200: 00800174 movhi r2,5
  20329. 51204: 1097c904 addi r2,r2,24356
  20330. 51208: e0fff817 ldw r3,-32(fp)
  20331. 5120c: 180690fa slli r3,r3,3
  20332. 51210: 10c5883a add r2,r2,r3
  20333. 51214: 10800104 addi r2,r2,4
  20334. 51218: e0ffff17 ldw r3,-4(fp)
  20335. 5121c: 10c00015 stw r3,0(r2)
  20336. rc = (isr) ? alt_ic_irq_enable(ic_id, id) : alt_ic_irq_disable(ic_id, id);
  20337. 51220: e0bffe17 ldw r2,-8(fp)
  20338. 51224: 10000526 beq r2,zero,5123c <alt_iic_isr_register+0xb4>
  20339. 51228: e0bff817 ldw r2,-32(fp)
  20340. 5122c: 100b883a mov r5,r2
  20341. 51230: e13ffc17 ldw r4,-16(fp)
  20342. 51234: 00510280 call 51028 <alt_ic_irq_enable>
  20343. 51238: 00000406 br 5124c <alt_iic_isr_register+0xc4>
  20344. 5123c: e0bff817 ldw r2,-32(fp)
  20345. 51240: 100b883a mov r5,r2
  20346. 51244: e13ffc17 ldw r4,-16(fp)
  20347. 51248: 00510b00 call 510b0 <alt_ic_irq_disable>
  20348. 5124c: e0bff715 stw r2,-36(fp)
  20349. 51250: e0bffa17 ldw r2,-24(fp)
  20350. 51254: e0bff915 stw r2,-28(fp)
  20351. status &= ~NIOS2_STATUS_PIE_MSK;
  20352. status |= (context & NIOS2_STATUS_PIE_MSK);
  20353. NIOS2_WRITE_STATUS (status);
  20354. #else
  20355. NIOS2_WRITE_STATUS (context);
  20356. 51258: e0bff917 ldw r2,-28(fp)
  20357. 5125c: 1001703a wrctl status,r2
  20358. alt_irq_enable_all(status);
  20359. }
  20360. return rc;
  20361. 51260: e0bff717 ldw r2,-36(fp)
  20362. }
  20363. 51264: e037883a mov sp,fp
  20364. 51268: dfc00117 ldw ra,4(sp)
  20365. 5126c: df000017 ldw fp,0(sp)
  20366. 51270: dec00204 addi sp,sp,8
  20367. 51274: f800283a ret
  20368. 00051278 <alt_open_fd>:
  20369. * If the device can not be succesfully opened, then the input file descriptor
  20370. * remains unchanged.
  20371. */
  20372. static void alt_open_fd(alt_fd* fd, const char* name, int flags, int mode)
  20373. {
  20374. 51278: defff804 addi sp,sp,-32
  20375. 5127c: dfc00715 stw ra,28(sp)
  20376. 51280: df000615 stw fp,24(sp)
  20377. 51284: dc000515 stw r16,20(sp)
  20378. 51288: df000604 addi fp,sp,24
  20379. 5128c: e13ffb15 stw r4,-20(fp)
  20380. 51290: e17ffc15 stw r5,-16(fp)
  20381. 51294: e1bffd15 stw r6,-12(fp)
  20382. 51298: e1fffe15 stw r7,-8(fp)
  20383. int old;
  20384. old = open (name, flags, mode);
  20385. 5129c: e1bffe17 ldw r6,-8(fp)
  20386. 512a0: e17ffd17 ldw r5,-12(fp)
  20387. 512a4: e13ffc17 ldw r4,-16(fp)
  20388. 512a8: 00515000 call 51500 <open>
  20389. 512ac: e0bffa15 stw r2,-24(fp)
  20390. if (old >= 0)
  20391. 512b0: e0bffa17 ldw r2,-24(fp)
  20392. 512b4: 10002216 blt r2,zero,51340 <alt_open_fd+0xc8>
  20393. {
  20394. fd->dev = alt_fd_list[old].dev;
  20395. 512b8: 04000174 movhi r16,5
  20396. 512bc: 840bca04 addi r16,r16,12072
  20397. 512c0: e0bffa17 ldw r2,-24(fp)
  20398. 512c4: 01400304 movi r5,12
  20399. 512c8: 1009883a mov r4,r2
  20400. 512cc: 004c9f80 call 4c9f8 <__mulsi3>
  20401. 512d0: 8085883a add r2,r16,r2
  20402. 512d4: 10c00017 ldw r3,0(r2)
  20403. 512d8: e0bffb17 ldw r2,-20(fp)
  20404. 512dc: 10c00015 stw r3,0(r2)
  20405. fd->priv = alt_fd_list[old].priv;
  20406. 512e0: 04000174 movhi r16,5
  20407. 512e4: 840bca04 addi r16,r16,12072
  20408. 512e8: e0bffa17 ldw r2,-24(fp)
  20409. 512ec: 01400304 movi r5,12
  20410. 512f0: 1009883a mov r4,r2
  20411. 512f4: 004c9f80 call 4c9f8 <__mulsi3>
  20412. 512f8: 8085883a add r2,r16,r2
  20413. 512fc: 10800104 addi r2,r2,4
  20414. 51300: 10c00017 ldw r3,0(r2)
  20415. 51304: e0bffb17 ldw r2,-20(fp)
  20416. 51308: 10c00115 stw r3,4(r2)
  20417. fd->fd_flags = alt_fd_list[old].fd_flags;
  20418. 5130c: 04000174 movhi r16,5
  20419. 51310: 840bca04 addi r16,r16,12072
  20420. 51314: e0bffa17 ldw r2,-24(fp)
  20421. 51318: 01400304 movi r5,12
  20422. 5131c: 1009883a mov r4,r2
  20423. 51320: 004c9f80 call 4c9f8 <__mulsi3>
  20424. 51324: 8085883a add r2,r16,r2
  20425. 51328: 10800204 addi r2,r2,8
  20426. 5132c: 10c00017 ldw r3,0(r2)
  20427. 51330: e0bffb17 ldw r2,-20(fp)
  20428. 51334: 10c00215 stw r3,8(r2)
  20429. alt_release_fd (old);
  20430. 51338: e13ffa17 ldw r4,-24(fp)
  20431. 5133c: 004ef7c0 call 4ef7c <alt_release_fd>
  20432. }
  20433. }
  20434. 51340: 0001883a nop
  20435. 51344: e6ffff04 addi sp,fp,-4
  20436. 51348: dfc00217 ldw ra,8(sp)
  20437. 5134c: df000117 ldw fp,4(sp)
  20438. 51350: dc000017 ldw r16,0(sp)
  20439. 51354: dec00304 addi sp,sp,12
  20440. 51358: f800283a ret
  20441. 0005135c <alt_io_redirect>:
  20442. */
  20443. void alt_io_redirect(const char* stdout_dev,
  20444. const char* stdin_dev,
  20445. const char* stderr_dev)
  20446. {
  20447. 5135c: defffb04 addi sp,sp,-20
  20448. 51360: dfc00415 stw ra,16(sp)
  20449. 51364: df000315 stw fp,12(sp)
  20450. 51368: df000304 addi fp,sp,12
  20451. 5136c: e13ffd15 stw r4,-12(fp)
  20452. 51370: e17ffe15 stw r5,-8(fp)
  20453. 51374: e1bfff15 stw r6,-4(fp)
  20454. /* Redirect the channels */
  20455. alt_open_fd (&alt_fd_list[STDOUT_FILENO], stdout_dev, O_WRONLY, 0777);
  20456. 51378: 01c07fc4 movi r7,511
  20457. 5137c: 01800044 movi r6,1
  20458. 51380: e17ffd17 ldw r5,-12(fp)
  20459. 51384: 01000174 movhi r4,5
  20460. 51388: 210bcd04 addi r4,r4,12084
  20461. 5138c: 00512780 call 51278 <alt_open_fd>
  20462. alt_open_fd (&alt_fd_list[STDIN_FILENO], stdin_dev, O_RDONLY, 0777);
  20463. 51390: 01c07fc4 movi r7,511
  20464. 51394: 000d883a mov r6,zero
  20465. 51398: e17ffe17 ldw r5,-8(fp)
  20466. 5139c: 01000174 movhi r4,5
  20467. 513a0: 210bca04 addi r4,r4,12072
  20468. 513a4: 00512780 call 51278 <alt_open_fd>
  20469. alt_open_fd (&alt_fd_list[STDERR_FILENO], stderr_dev, O_WRONLY, 0777);
  20470. 513a8: 01c07fc4 movi r7,511
  20471. 513ac: 01800044 movi r6,1
  20472. 513b0: e17fff17 ldw r5,-4(fp)
  20473. 513b4: 01000174 movhi r4,5
  20474. 513b8: 210bd004 addi r4,r4,12096
  20475. 513bc: 00512780 call 51278 <alt_open_fd>
  20476. }
  20477. 513c0: 0001883a nop
  20478. 513c4: e037883a mov sp,fp
  20479. 513c8: dfc00117 ldw ra,4(sp)
  20480. 513cc: df000017 ldw fp,0(sp)
  20481. 513d0: dec00204 addi sp,sp,8
  20482. 513d4: f800283a ret
  20483. 000513d8 <alt_get_errno>:
  20484. #undef errno
  20485. extern int errno;
  20486. static ALT_INLINE int* alt_get_errno(void)
  20487. {
  20488. 513d8: defffe04 addi sp,sp,-8
  20489. 513dc: dfc00115 stw ra,4(sp)
  20490. 513e0: df000015 stw fp,0(sp)
  20491. 513e4: d839883a mov fp,sp
  20492. return ((alt_errno) ? alt_errno() : &errno);
  20493. 513e8: d0a00b17 ldw r2,-32724(gp)
  20494. 513ec: 10000326 beq r2,zero,513fc <alt_get_errno+0x24>
  20495. 513f0: d0a00b17 ldw r2,-32724(gp)
  20496. 513f4: 103ee83a callr r2
  20497. 513f8: 00000106 br 51400 <alt_get_errno+0x28>
  20498. 513fc: d0a72104 addi r2,gp,-25468
  20499. }
  20500. 51400: e037883a mov sp,fp
  20501. 51404: dfc00117 ldw ra,4(sp)
  20502. 51408: df000017 ldw fp,0(sp)
  20503. 5140c: dec00204 addi sp,sp,8
  20504. 51410: f800283a ret
  20505. 00051414 <alt_file_locked>:
  20506. * performed for devices. Filesystems are required to handle the ioctl() call
  20507. * themselves, and report the error from the filesystems open() function.
  20508. */
  20509. static int alt_file_locked (alt_fd* fd)
  20510. {
  20511. 51414: defffb04 addi sp,sp,-20
  20512. 51418: dfc00415 stw ra,16(sp)
  20513. 5141c: df000315 stw fp,12(sp)
  20514. 51420: dc000215 stw r16,8(sp)
  20515. 51424: df000304 addi fp,sp,12
  20516. 51428: e13ffe15 stw r4,-8(fp)
  20517. /*
  20518. * Mark the file descriptor as belonging to a device.
  20519. */
  20520. fd->fd_flags |= ALT_FD_DEV;
  20521. 5142c: e0bffe17 ldw r2,-8(fp)
  20522. 51430: 10800217 ldw r2,8(r2)
  20523. 51434: 10d00034 orhi r3,r2,16384
  20524. 51438: e0bffe17 ldw r2,-8(fp)
  20525. 5143c: 10c00215 stw r3,8(r2)
  20526. /*
  20527. * Loop through all current file descriptors searching for one that's locked
  20528. * for exclusive access. If a match is found, generate an error.
  20529. */
  20530. for (i = 0; i <= alt_max_fd; i++)
  20531. 51440: e03ffd15 stw zero,-12(fp)
  20532. 51444: 00002306 br 514d4 <alt_file_locked+0xc0>
  20533. {
  20534. if ((alt_fd_list[i].dev == fd->dev) &&
  20535. 51448: 04000174 movhi r16,5
  20536. 5144c: 840bca04 addi r16,r16,12072
  20537. 51450: e0bffd17 ldw r2,-12(fp)
  20538. 51454: 01400304 movi r5,12
  20539. 51458: 1009883a mov r4,r2
  20540. 5145c: 004c9f80 call 4c9f8 <__mulsi3>
  20541. 51460: 8085883a add r2,r16,r2
  20542. 51464: 10c00017 ldw r3,0(r2)
  20543. 51468: e0bffe17 ldw r2,-8(fp)
  20544. 5146c: 10800017 ldw r2,0(r2)
  20545. 51470: 1880151e bne r3,r2,514c8 <alt_file_locked+0xb4>
  20546. (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
  20547. 51474: 04000174 movhi r16,5
  20548. 51478: 840bca04 addi r16,r16,12072
  20549. 5147c: e0bffd17 ldw r2,-12(fp)
  20550. 51480: 01400304 movi r5,12
  20551. 51484: 1009883a mov r4,r2
  20552. 51488: 004c9f80 call 4c9f8 <__mulsi3>
  20553. 5148c: 8085883a add r2,r16,r2
  20554. 51490: 10800204 addi r2,r2,8
  20555. 51494: 10800017 ldw r2,0(r2)
  20556. * for exclusive access. If a match is found, generate an error.
  20557. */
  20558. for (i = 0; i <= alt_max_fd; i++)
  20559. {
  20560. if ((alt_fd_list[i].dev == fd->dev) &&
  20561. 51498: 10000b0e bge r2,zero,514c8 <alt_file_locked+0xb4>
  20562. (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
  20563. (&alt_fd_list[i] != fd))
  20564. 5149c: 01400304 movi r5,12
  20565. 514a0: e13ffd17 ldw r4,-12(fp)
  20566. 514a4: 004c9f80 call 4c9f8 <__mulsi3>
  20567. 514a8: 1007883a mov r3,r2
  20568. 514ac: 00800174 movhi r2,5
  20569. 514b0: 108bca04 addi r2,r2,12072
  20570. 514b4: 1887883a add r3,r3,r2
  20571. */
  20572. for (i = 0; i <= alt_max_fd; i++)
  20573. {
  20574. if ((alt_fd_list[i].dev == fd->dev) &&
  20575. (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
  20576. 514b8: e0bffe17 ldw r2,-8(fp)
  20577. 514bc: 18800226 beq r3,r2,514c8 <alt_file_locked+0xb4>
  20578. (&alt_fd_list[i] != fd))
  20579. {
  20580. return -EACCES;
  20581. 514c0: 00bffcc4 movi r2,-13
  20582. 514c4: 00000806 br 514e8 <alt_file_locked+0xd4>
  20583. /*
  20584. * Loop through all current file descriptors searching for one that's locked
  20585. * for exclusive access. If a match is found, generate an error.
  20586. */
  20587. for (i = 0; i <= alt_max_fd; i++)
  20588. 514c8: e0bffd17 ldw r2,-12(fp)
  20589. 514cc: 10800044 addi r2,r2,1
  20590. 514d0: e0bffd15 stw r2,-12(fp)
  20591. 514d4: d0a00a17 ldw r2,-32728(gp)
  20592. 514d8: 1007883a mov r3,r2
  20593. 514dc: e0bffd17 ldw r2,-12(fp)
  20594. 514e0: 18bfd92e bgeu r3,r2,51448 <__alt_data_end+0xfffdf448>
  20595. }
  20596. }
  20597. /* The device is not locked */
  20598. return 0;
  20599. 514e4: 0005883a mov r2,zero
  20600. }
  20601. 514e8: e6ffff04 addi sp,fp,-4
  20602. 514ec: dfc00217 ldw ra,8(sp)
  20603. 514f0: df000117 ldw fp,4(sp)
  20604. 514f4: dc000017 ldw r16,0(sp)
  20605. 514f8: dec00304 addi sp,sp,12
  20606. 514fc: f800283a ret
  20607. 00051500 <open>:
  20608. *
  20609. * ALT_OPEN is mapped onto the open() system call in alt_syscall.h
  20610. */
  20611. int ALT_OPEN (const char* file, int flags, int mode)
  20612. {
  20613. 51500: defff604 addi sp,sp,-40
  20614. 51504: dfc00915 stw ra,36(sp)
  20615. 51508: df000815 stw fp,32(sp)
  20616. 5150c: df000804 addi fp,sp,32
  20617. 51510: e13ffd15 stw r4,-12(fp)
  20618. 51514: e17ffe15 stw r5,-8(fp)
  20619. 51518: e1bfff15 stw r6,-4(fp)
  20620. alt_dev* dev;
  20621. alt_fd* fd;
  20622. int index = -1;
  20623. 5151c: 00bfffc4 movi r2,-1
  20624. 51520: e0bff915 stw r2,-28(fp)
  20625. int status = -ENODEV;
  20626. 51524: 00bffb44 movi r2,-19
  20627. 51528: e0bffa15 stw r2,-24(fp)
  20628. int isafs = 0;
  20629. 5152c: e03ffb15 stw zero,-20(fp)
  20630. /*
  20631. * Check the device list, to see if a device with a matching name is
  20632. * registered.
  20633. */
  20634. if (!(dev = alt_find_dev (file, &alt_dev_list)))
  20635. 51530: d1600804 addi r5,gp,-32736
  20636. 51534: e13ffd17 ldw r4,-12(fp)
  20637. 51538: 00519ac0 call 519ac <alt_find_dev>
  20638. 5153c: e0bff815 stw r2,-32(fp)
  20639. 51540: e0bff817 ldw r2,-32(fp)
  20640. 51544: 1000051e bne r2,zero,5155c <open+0x5c>
  20641. {
  20642. /* No matching device, so try the filesystem list */
  20643. dev = alt_find_file (file);
  20644. 51548: e13ffd17 ldw r4,-12(fp)
  20645. 5154c: 0051a3c0 call 51a3c <alt_find_file>
  20646. 51550: e0bff815 stw r2,-32(fp)
  20647. isafs = 1;
  20648. 51554: 00800044 movi r2,1
  20649. 51558: e0bffb15 stw r2,-20(fp)
  20650. /*
  20651. * If a matching device or filesystem is found, allocate a file descriptor.
  20652. */
  20653. if (dev)
  20654. 5155c: e0bff817 ldw r2,-32(fp)
  20655. 51560: 10002b26 beq r2,zero,51610 <open+0x110>
  20656. {
  20657. if ((index = alt_get_fd (dev)) < 0)
  20658. 51564: e13ff817 ldw r4,-32(fp)
  20659. 51568: 0051b440 call 51b44 <alt_get_fd>
  20660. 5156c: e0bff915 stw r2,-28(fp)
  20661. 51570: e0bff917 ldw r2,-28(fp)
  20662. 51574: 1000030e bge r2,zero,51584 <open+0x84>
  20663. {
  20664. status = index;
  20665. 51578: e0bff917 ldw r2,-28(fp)
  20666. 5157c: e0bffa15 stw r2,-24(fp)
  20667. 51580: 00002506 br 51618 <open+0x118>
  20668. }
  20669. else
  20670. {
  20671. fd = &alt_fd_list[index];
  20672. 51584: 01400304 movi r5,12
  20673. 51588: e13ff917 ldw r4,-28(fp)
  20674. 5158c: 004c9f80 call 4c9f8 <__mulsi3>
  20675. 51590: 1007883a mov r3,r2
  20676. 51594: 00800174 movhi r2,5
  20677. 51598: 108bca04 addi r2,r2,12072
  20678. 5159c: 1885883a add r2,r3,r2
  20679. 515a0: e0bffc15 stw r2,-16(fp)
  20680. fd->fd_flags = (flags & ~ALT_FD_FLAGS_MASK);
  20681. 515a4: e0fffe17 ldw r3,-8(fp)
  20682. 515a8: 00900034 movhi r2,16384
  20683. 515ac: 10bfffc4 addi r2,r2,-1
  20684. 515b0: 1886703a and r3,r3,r2
  20685. 515b4: e0bffc17 ldw r2,-16(fp)
  20686. 515b8: 10c00215 stw r3,8(r2)
  20687. /* If this is a device, ensure it isn't already locked */
  20688. if (isafs || ((status = alt_file_locked (fd)) >= 0))
  20689. 515bc: e0bffb17 ldw r2,-20(fp)
  20690. 515c0: 1000051e bne r2,zero,515d8 <open+0xd8>
  20691. 515c4: e13ffc17 ldw r4,-16(fp)
  20692. 515c8: 00514140 call 51414 <alt_file_locked>
  20693. 515cc: e0bffa15 stw r2,-24(fp)
  20694. 515d0: e0bffa17 ldw r2,-24(fp)
  20695. 515d4: 10001016 blt r2,zero,51618 <open+0x118>
  20696. /*
  20697. * If the device or filesystem provides an open() callback function,
  20698. * call it now to perform any device/filesystem specific operations.
  20699. */
  20700. status = (dev->open) ? dev->open(fd, file, flags, mode): 0;
  20701. 515d8: e0bff817 ldw r2,-32(fp)
  20702. 515dc: 10800317 ldw r2,12(r2)
  20703. 515e0: 10000826 beq r2,zero,51604 <open+0x104>
  20704. 515e4: e0bff817 ldw r2,-32(fp)
  20705. 515e8: 10800317 ldw r2,12(r2)
  20706. 515ec: e1ffff17 ldw r7,-4(fp)
  20707. 515f0: e1bffe17 ldw r6,-8(fp)
  20708. 515f4: e17ffd17 ldw r5,-12(fp)
  20709. 515f8: e13ffc17 ldw r4,-16(fp)
  20710. 515fc: 103ee83a callr r2
  20711. 51600: 00000106 br 51608 <open+0x108>
  20712. 51604: 0005883a mov r2,zero
  20713. 51608: e0bffa15 stw r2,-24(fp)
  20714. 5160c: 00000206 br 51618 <open+0x118>
  20715. }
  20716. }
  20717. }
  20718. else
  20719. {
  20720. status = -ENODEV;
  20721. 51610: 00bffb44 movi r2,-19
  20722. 51614: e0bffa15 stw r2,-24(fp)
  20723. }
  20724. /* Allocation failed, so clean up and return an error */
  20725. if (status < 0)
  20726. 51618: e0bffa17 ldw r2,-24(fp)
  20727. 5161c: 1000090e bge r2,zero,51644 <open+0x144>
  20728. {
  20729. alt_release_fd (index);
  20730. 51620: e13ff917 ldw r4,-28(fp)
  20731. 51624: 004ef7c0 call 4ef7c <alt_release_fd>
  20732. ALT_ERRNO = -status;
  20733. 51628: 00513d80 call 513d8 <alt_get_errno>
  20734. 5162c: 1007883a mov r3,r2
  20735. 51630: e0bffa17 ldw r2,-24(fp)
  20736. 51634: 0085c83a sub r2,zero,r2
  20737. 51638: 18800015 stw r2,0(r3)
  20738. return -1;
  20739. 5163c: 00bfffc4 movi r2,-1
  20740. 51640: 00000106 br 51648 <open+0x148>
  20741. }
  20742. /* return the reference upon success */
  20743. return index;
  20744. 51644: e0bff917 ldw r2,-28(fp)
  20745. }
  20746. 51648: e037883a mov sp,fp
  20747. 5164c: dfc00117 ldw ra,4(sp)
  20748. 51650: df000017 ldw fp,0(sp)
  20749. 51654: dec00204 addi sp,sp,8
  20750. 51658: f800283a ret
  20751. 0005165c <alt_alarm_stop>:
  20752. * alarms. Alternatively an alarm can unregister itself by returning zero when
  20753. * the alarm executes.
  20754. */
  20755. void alt_alarm_stop (alt_alarm* alarm)
  20756. {
  20757. 5165c: defffa04 addi sp,sp,-24
  20758. 51660: df000515 stw fp,20(sp)
  20759. 51664: df000504 addi fp,sp,20
  20760. 51668: e13fff15 stw r4,-4(fp)
  20761. static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
  20762. alt_irq_disable_all (void)
  20763. {
  20764. alt_irq_context context;
  20765. NIOS2_READ_STATUS (context);
  20766. 5166c: 0005303a rdctl r2,status
  20767. 51670: e0bffc15 stw r2,-16(fp)
  20768. NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
  20769. 51674: e0fffc17 ldw r3,-16(fp)
  20770. 51678: 00bfff84 movi r2,-2
  20771. 5167c: 1884703a and r2,r3,r2
  20772. 51680: 1001703a wrctl status,r2
  20773. return context;
  20774. 51684: e0bffc17 ldw r2,-16(fp)
  20775. alt_irq_context irq_context;
  20776. irq_context = alt_irq_disable_all();
  20777. 51688: e0bffb15 stw r2,-20(fp)
  20778. alt_llist_remove (&alarm->llist);
  20779. 5168c: e0bfff17 ldw r2,-4(fp)
  20780. 51690: e0bffd15 stw r2,-12(fp)
  20781. * input argument is the element to remove.
  20782. */
  20783. static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_remove(alt_llist* entry)
  20784. {
  20785. entry->next->previous = entry->previous;
  20786. 51694: e0bffd17 ldw r2,-12(fp)
  20787. 51698: 10800017 ldw r2,0(r2)
  20788. 5169c: e0fffd17 ldw r3,-12(fp)
  20789. 516a0: 18c00117 ldw r3,4(r3)
  20790. 516a4: 10c00115 stw r3,4(r2)
  20791. entry->previous->next = entry->next;
  20792. 516a8: e0bffd17 ldw r2,-12(fp)
  20793. 516ac: 10800117 ldw r2,4(r2)
  20794. 516b0: e0fffd17 ldw r3,-12(fp)
  20795. 516b4: 18c00017 ldw r3,0(r3)
  20796. 516b8: 10c00015 stw r3,0(r2)
  20797. /*
  20798. * Set the entry to point to itself, so that any further calls to
  20799. * alt_llist_remove() are harmless.
  20800. */
  20801. entry->previous = entry;
  20802. 516bc: e0bffd17 ldw r2,-12(fp)
  20803. 516c0: e0fffd17 ldw r3,-12(fp)
  20804. 516c4: 10c00115 stw r3,4(r2)
  20805. entry->next = entry;
  20806. 516c8: e0bffd17 ldw r2,-12(fp)
  20807. 516cc: e0fffd17 ldw r3,-12(fp)
  20808. 516d0: 10c00015 stw r3,0(r2)
  20809. 516d4: e0bffb17 ldw r2,-20(fp)
  20810. 516d8: e0bffe15 stw r2,-8(fp)
  20811. status &= ~NIOS2_STATUS_PIE_MSK;
  20812. status |= (context & NIOS2_STATUS_PIE_MSK);
  20813. NIOS2_WRITE_STATUS (status);
  20814. #else
  20815. NIOS2_WRITE_STATUS (context);
  20816. 516dc: e0bffe17 ldw r2,-8(fp)
  20817. 516e0: 1001703a wrctl status,r2
  20818. alt_irq_enable_all (irq_context);
  20819. }
  20820. 516e4: 0001883a nop
  20821. 516e8: e037883a mov sp,fp
  20822. 516ec: df000017 ldw fp,0(sp)
  20823. 516f0: dec00104 addi sp,sp,4
  20824. 516f4: f800283a ret
  20825. 000516f8 <alt_tick>:
  20826. *
  20827. * alt_tick() is expected to run at interrupt level.
  20828. */
  20829. void alt_tick (void)
  20830. {
  20831. 516f8: defffb04 addi sp,sp,-20
  20832. 516fc: dfc00415 stw ra,16(sp)
  20833. 51700: df000315 stw fp,12(sp)
  20834. 51704: df000304 addi fp,sp,12
  20835. alt_alarm* next;
  20836. alt_alarm* alarm = (alt_alarm*) alt_alarm_list.next;
  20837. 51708: d0a00f17 ldw r2,-32708(gp)
  20838. 5170c: e0bffd15 stw r2,-12(fp)
  20839. alt_u32 next_callback;
  20840. /* update the tick counter */
  20841. _alt_nticks++;
  20842. 51710: d0a72717 ldw r2,-25444(gp)
  20843. 51714: 10800044 addi r2,r2,1
  20844. 51718: d0a72715 stw r2,-25444(gp)
  20845. /* process the registered callbacks */
  20846. while (alarm != (alt_alarm*) &alt_alarm_list)
  20847. 5171c: 00002e06 br 517d8 <alt_tick+0xe0>
  20848. {
  20849. next = (alt_alarm*) alarm->llist.next;
  20850. 51720: e0bffd17 ldw r2,-12(fp)
  20851. 51724: 10800017 ldw r2,0(r2)
  20852. 51728: e0bffe15 stw r2,-8(fp)
  20853. /*
  20854. * Upon the tick-counter rolling over it is safe to clear the
  20855. * roll-over flag; once the flag is cleared this (or subsequnt)
  20856. * tick events are enabled to generate an alarm event.
  20857. */
  20858. if ((alarm->rollover) && (_alt_nticks == 0))
  20859. 5172c: e0bffd17 ldw r2,-12(fp)
  20860. 51730: 10800403 ldbu r2,16(r2)
  20861. 51734: 10803fcc andi r2,r2,255
  20862. 51738: 10000426 beq r2,zero,5174c <alt_tick+0x54>
  20863. 5173c: d0a72717 ldw r2,-25444(gp)
  20864. 51740: 1000021e bne r2,zero,5174c <alt_tick+0x54>
  20865. {
  20866. alarm->rollover = 0;
  20867. 51744: e0bffd17 ldw r2,-12(fp)
  20868. 51748: 10000405 stb zero,16(r2)
  20869. }
  20870. /* if the alarm period has expired, make the callback */
  20871. if ((alarm->time <= _alt_nticks) && (alarm->rollover == 0))
  20872. 5174c: e0bffd17 ldw r2,-12(fp)
  20873. 51750: 10800217 ldw r2,8(r2)
  20874. 51754: d0e72717 ldw r3,-25444(gp)
  20875. 51758: 18801d36 bltu r3,r2,517d0 <alt_tick+0xd8>
  20876. 5175c: e0bffd17 ldw r2,-12(fp)
  20877. 51760: 10800403 ldbu r2,16(r2)
  20878. 51764: 10803fcc andi r2,r2,255
  20879. 51768: 1000191e bne r2,zero,517d0 <alt_tick+0xd8>
  20880. {
  20881. next_callback = alarm->callback (alarm->context);
  20882. 5176c: e0bffd17 ldw r2,-12(fp)
  20883. 51770: 10800317 ldw r2,12(r2)
  20884. 51774: e0fffd17 ldw r3,-12(fp)
  20885. 51778: 18c00517 ldw r3,20(r3)
  20886. 5177c: 1809883a mov r4,r3
  20887. 51780: 103ee83a callr r2
  20888. 51784: e0bfff15 stw r2,-4(fp)
  20889. /* deactivate the alarm if the return value is zero */
  20890. if (next_callback == 0)
  20891. 51788: e0bfff17 ldw r2,-4(fp)
  20892. 5178c: 1000031e bne r2,zero,5179c <alt_tick+0xa4>
  20893. {
  20894. alt_alarm_stop (alarm);
  20895. 51790: e13ffd17 ldw r4,-12(fp)
  20896. 51794: 005165c0 call 5165c <alt_alarm_stop>
  20897. 51798: 00000d06 br 517d0 <alt_tick+0xd8>
  20898. }
  20899. else
  20900. {
  20901. alarm->time += next_callback;
  20902. 5179c: e0bffd17 ldw r2,-12(fp)
  20903. 517a0: 10c00217 ldw r3,8(r2)
  20904. 517a4: e0bfff17 ldw r2,-4(fp)
  20905. 517a8: 1887883a add r3,r3,r2
  20906. 517ac: e0bffd17 ldw r2,-12(fp)
  20907. 517b0: 10c00215 stw r3,8(r2)
  20908. /*
  20909. * If the desired alarm time causes a roll-over, set the rollover
  20910. * flag. This will prevent the subsequent tick event from causing
  20911. * an alarm too early.
  20912. */
  20913. if(alarm->time < _alt_nticks)
  20914. 517b4: e0bffd17 ldw r2,-12(fp)
  20915. 517b8: 10c00217 ldw r3,8(r2)
  20916. 517bc: d0a72717 ldw r2,-25444(gp)
  20917. 517c0: 1880032e bgeu r3,r2,517d0 <alt_tick+0xd8>
  20918. {
  20919. alarm->rollover = 1;
  20920. 517c4: e0bffd17 ldw r2,-12(fp)
  20921. 517c8: 00c00044 movi r3,1
  20922. 517cc: 10c00405 stb r3,16(r2)
  20923. }
  20924. }
  20925. }
  20926. alarm = next;
  20927. 517d0: e0bffe17 ldw r2,-8(fp)
  20928. 517d4: e0bffd15 stw r2,-12(fp)
  20929. _alt_nticks++;
  20930. /* process the registered callbacks */
  20931. while (alarm != (alt_alarm*) &alt_alarm_list)
  20932. 517d8: e0fffd17 ldw r3,-12(fp)
  20933. 517dc: d0a00f04 addi r2,gp,-32708
  20934. 517e0: 18bfcf1e bne r3,r2,51720 <__alt_data_end+0xfffdf720>
  20935. /*
  20936. * Update the operating system specific timer facilities.
  20937. */
  20938. ALT_OS_TIME_TICK();
  20939. 517e4: 0001883a nop
  20940. }
  20941. 517e8: 0001883a nop
  20942. 517ec: e037883a mov sp,fp
  20943. 517f0: dfc00117 ldw ra,4(sp)
  20944. 517f4: df000017 ldw fp,0(sp)
  20945. 517f8: dec00204 addi sp,sp,8
  20946. 517fc: f800283a ret
  20947. 00051800 <usleep>:
  20948. #if defined (__GNUC__) && __GNUC__ >= 4
  20949. int ALT_USLEEP (useconds_t us)
  20950. #else
  20951. unsigned int ALT_USLEEP (unsigned int us)
  20952. #endif
  20953. {
  20954. 51800: defffd04 addi sp,sp,-12
  20955. 51804: dfc00215 stw ra,8(sp)
  20956. 51808: df000115 stw fp,4(sp)
  20957. 5180c: df000104 addi fp,sp,4
  20958. 51810: e13fff15 stw r4,-4(fp)
  20959. return alt_busy_sleep(us);
  20960. 51814: e13fff17 ldw r4,-4(fp)
  20961. 51818: 00518540 call 51854 <alt_busy_sleep>
  20962. }
  20963. 5181c: e037883a mov sp,fp
  20964. 51820: dfc00117 ldw ra,4(sp)
  20965. 51824: df000017 ldw fp,0(sp)
  20966. 51828: dec00204 addi sp,sp,8
  20967. 5182c: f800283a ret
  20968. 00051830 <altera_nios2_gen2_irq_init>:
  20969. /*
  20970. * To initialize the internal interrupt controller, just clear the IENABLE
  20971. * register so that all possible IRQs are disabled.
  20972. */
  20973. void altera_nios2_gen2_irq_init(void)
  20974. {
  20975. 51830: deffff04 addi sp,sp,-4
  20976. 51834: df000015 stw fp,0(sp)
  20977. 51838: d839883a mov fp,sp
  20978. NIOS2_WRITE_IENABLE(0);
  20979. 5183c: 000170fa wrctl ienable,zero
  20980. }
  20981. 51840: 0001883a nop
  20982. 51844: e037883a mov sp,fp
  20983. 51848: df000017 ldw fp,0(sp)
  20984. 5184c: dec00104 addi sp,sp,4
  20985. 51850: f800283a ret
  20986. 00051854 <alt_busy_sleep>:
  20987. #include "alt_types.h"
  20988. #include "priv/alt_busy_sleep.h"
  20989. unsigned int alt_busy_sleep (unsigned int us)
  20990. {
  20991. 51854: defffa04 addi sp,sp,-24
  20992. 51858: dfc00515 stw ra,20(sp)
  20993. 5185c: df000415 stw fp,16(sp)
  20994. 51860: df000404 addi fp,sp,16
  20995. 51864: e13fff15 stw r4,-4(fp)
  20996. int big_loops;
  20997. alt_u32 cycles_per_loop;
  20998. if (!strcmp(NIOS2_CPU_IMPLEMENTATION,"tiny"))
  20999. {
  21000. cycles_per_loop = 9;
  21001. 51868: 00800244 movi r2,9
  21002. 5186c: e0bffd15 stw r2,-12(fp)
  21003. cycles_per_loop = 3;
  21004. }
  21005. big_loops = us / (INT_MAX/
  21006. (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
  21007. 51870: 014003f4 movhi r5,15
  21008. 51874: 29509004 addi r5,r5,16960
  21009. 51878: e13ffd17 ldw r4,-12(fp)
  21010. 5187c: 004c9f80 call 4c9f8 <__mulsi3>
  21011. 51880: 100b883a mov r5,r2
  21012. 51884: 0100bef4 movhi r4,763
  21013. 51888: 213c2004 addi r4,r4,-3968
  21014. 5188c: 004c93c0 call 4c93c <__udivsi3>
  21015. {
  21016. cycles_per_loop = 3;
  21017. }
  21018. big_loops = us / (INT_MAX/
  21019. 51890: 100b883a mov r5,r2
  21020. 51894: 01200034 movhi r4,32768
  21021. 51898: 213fffc4 addi r4,r4,-1
  21022. 5189c: 004c93c0 call 4c93c <__udivsi3>
  21023. 518a0: 100b883a mov r5,r2
  21024. 518a4: e13fff17 ldw r4,-4(fp)
  21025. 518a8: 004c93c0 call 4c93c <__udivsi3>
  21026. 518ac: e0bffe15 stw r2,-8(fp)
  21027. (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
  21028. if (big_loops)
  21029. 518b0: e0bffe17 ldw r2,-8(fp)
  21030. 518b4: 10002a26 beq r2,zero,51960 <alt_busy_sleep+0x10c>
  21031. {
  21032. for(i=0;i<big_loops;i++)
  21033. 518b8: e03ffc15 stw zero,-16(fp)
  21034. 518bc: 00001706 br 5191c <alt_busy_sleep+0xc8>
  21035. /*
  21036. * Do NOT Try to single step the asm statement below
  21037. * (single step will never return)
  21038. * Step out of this function or set a breakpoint after the asm statements
  21039. */
  21040. __asm__ volatile (
  21041. 518c0: 00a00034 movhi r2,32768
  21042. 518c4: 10bfffc4 addi r2,r2,-1
  21043. 518c8: 10bfffc4 addi r2,r2,-1
  21044. 518cc: 103ffe1e bne r2,zero,518c8 <__alt_data_end+0xfffdf8c8>
  21045. "\n\t.pushsection .debug_alt_sim_info"
  21046. "\n\t.int 4, 0, 0b, 1b"
  21047. "\n\t.popsection"
  21048. :: "r" (INT_MAX));
  21049. us -= (INT_MAX/(ALT_CPU_FREQ/
  21050. (cycles_per_loop * 1000000)));
  21051. 518d0: 014003f4 movhi r5,15
  21052. 518d4: 29509004 addi r5,r5,16960
  21053. 518d8: e13ffd17 ldw r4,-12(fp)
  21054. 518dc: 004c9f80 call 4c9f8 <__mulsi3>
  21055. "\n1:"
  21056. "\n\t.pushsection .debug_alt_sim_info"
  21057. "\n\t.int 4, 0, 0b, 1b"
  21058. "\n\t.popsection"
  21059. :: "r" (INT_MAX));
  21060. us -= (INT_MAX/(ALT_CPU_FREQ/
  21061. 518e0: 100b883a mov r5,r2
  21062. 518e4: 0100bef4 movhi r4,763
  21063. 518e8: 213c2004 addi r4,r4,-3968
  21064. 518ec: 004c93c0 call 4c93c <__udivsi3>
  21065. 518f0: 100b883a mov r5,r2
  21066. 518f4: 01200034 movhi r4,32768
  21067. 518f8: 213fffc4 addi r4,r4,-1
  21068. 518fc: 004c93c0 call 4c93c <__udivsi3>
  21069. 51900: 1007883a mov r3,r2
  21070. 51904: e0bfff17 ldw r2,-4(fp)
  21071. 51908: 10c5c83a sub r2,r2,r3
  21072. 5190c: e0bfff15 stw r2,-4(fp)
  21073. big_loops = us / (INT_MAX/
  21074. (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
  21075. if (big_loops)
  21076. {
  21077. for(i=0;i<big_loops;i++)
  21078. 51910: e0bffc17 ldw r2,-16(fp)
  21079. 51914: 10800044 addi r2,r2,1
  21080. 51918: e0bffc15 stw r2,-16(fp)
  21081. 5191c: e0fffc17 ldw r3,-16(fp)
  21082. 51920: e0bffe17 ldw r2,-8(fp)
  21083. 51924: 18bfe616 blt r3,r2,518c0 <__alt_data_end+0xfffdf8c0>
  21084. "\n\tbne %0,zero,0b"
  21085. "\n1:"
  21086. "\n\t.pushsection .debug_alt_sim_info"
  21087. "\n\t.int 4, 0, 0b, 1b"
  21088. "\n\t.popsection"
  21089. :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
  21090. 51928: 014003f4 movhi r5,15
  21091. 5192c: 29509004 addi r5,r5,16960
  21092. 51930: e13ffd17 ldw r4,-12(fp)
  21093. 51934: 004c9f80 call 4c9f8 <__mulsi3>
  21094. 51938: 100b883a mov r5,r2
  21095. 5193c: 0100bef4 movhi r4,763
  21096. 51940: 213c2004 addi r4,r4,-3968
  21097. 51944: 004c93c0 call 4c93c <__udivsi3>
  21098. 51948: e17fff17 ldw r5,-4(fp)
  21099. 5194c: 1009883a mov r4,r2
  21100. 51950: 004c9f80 call 4c9f8 <__mulsi3>
  21101. /*
  21102. * Do NOT Try to single step the asm statement below
  21103. * (single step will never return)
  21104. * Step out of this function or set a breakpoint after the asm statements
  21105. */
  21106. __asm__ volatile (
  21107. 51954: 10bfffc4 addi r2,r2,-1
  21108. 51958: 103ffe1e bne r2,zero,51954 <__alt_data_end+0xfffdf954>
  21109. 5195c: 00000d06 br 51994 <alt_busy_sleep+0x140>
  21110. "\n\tbgt %0,zero,0b"
  21111. "\n1:"
  21112. "\n\t.pushsection .debug_alt_sim_info"
  21113. "\n\t.int 4, 0, 0b, 1b"
  21114. "\n\t.popsection"
  21115. :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
  21116. 51960: 014003f4 movhi r5,15
  21117. 51964: 29509004 addi r5,r5,16960
  21118. 51968: e13ffd17 ldw r4,-12(fp)
  21119. 5196c: 004c9f80 call 4c9f8 <__mulsi3>
  21120. 51970: 100b883a mov r5,r2
  21121. 51974: 0100bef4 movhi r4,763
  21122. 51978: 213c2004 addi r4,r4,-3968
  21123. 5197c: 004c93c0 call 4c93c <__udivsi3>
  21124. 51980: e17fff17 ldw r5,-4(fp)
  21125. 51984: 1009883a mov r4,r2
  21126. 51988: 004c9f80 call 4c9f8 <__mulsi3>
  21127. /*
  21128. * Do NOT Try to single step the asm statement below
  21129. * (single step will never return)
  21130. * Step out of this function or set a breakpoint after the asm statements
  21131. */
  21132. __asm__ volatile (
  21133. 5198c: 10bfffc4 addi r2,r2,-1
  21134. 51990: 00bffe16 blt zero,r2,5198c <__alt_data_end+0xfffdf98c>
  21135. "\n\t.int 4, 0, 0b, 1b"
  21136. "\n\t.popsection"
  21137. :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
  21138. }
  21139. #endif /* #ifndef ALT_SIM_OPTIMIZE */
  21140. return 0;
  21141. 51994: 0005883a mov r2,zero
  21142. }
  21143. 51998: e037883a mov sp,fp
  21144. 5199c: dfc00117 ldw ra,4(sp)
  21145. 519a0: df000017 ldw fp,0(sp)
  21146. 519a4: dec00204 addi sp,sp,8
  21147. 519a8: f800283a ret
  21148. 000519ac <alt_find_dev>:
  21149. * "name" must be an exact match for the devices registered name for a match to
  21150. * be found.
  21151. */
  21152. alt_dev* alt_find_dev(const char* name, alt_llist* llist)
  21153. {
  21154. 519ac: defffa04 addi sp,sp,-24
  21155. 519b0: dfc00515 stw ra,20(sp)
  21156. 519b4: df000415 stw fp,16(sp)
  21157. 519b8: df000404 addi fp,sp,16
  21158. 519bc: e13ffe15 stw r4,-8(fp)
  21159. 519c0: e17fff15 stw r5,-4(fp)
  21160. alt_dev* next = (alt_dev*) llist->next;
  21161. 519c4: e0bfff17 ldw r2,-4(fp)
  21162. 519c8: 10800017 ldw r2,0(r2)
  21163. 519cc: e0bffc15 stw r2,-16(fp)
  21164. alt_32 len;
  21165. len = strlen(name) + 1;
  21166. 519d0: e13ffe17 ldw r4,-8(fp)
  21167. 519d4: 00490200 call 49020 <strlen>
  21168. 519d8: 10800044 addi r2,r2,1
  21169. 519dc: e0bffd15 stw r2,-12(fp)
  21170. /*
  21171. * Check each list entry in turn, until a match is found, or we reach the
  21172. * end of the list (i.e. next winds up pointing back to the list head).
  21173. */
  21174. while (next != (alt_dev*) llist)
  21175. 519e0: 00000d06 br 51a18 <alt_find_dev+0x6c>
  21176. /*
  21177. * memcmp() is used here rather than strcmp() in order to reduce the size
  21178. * of the executable.
  21179. */
  21180. if (!memcmp (next->name, name, len))
  21181. 519e4: e0bffc17 ldw r2,-16(fp)
  21182. 519e8: 10800217 ldw r2,8(r2)
  21183. 519ec: e0fffd17 ldw r3,-12(fp)
  21184. 519f0: 180d883a mov r6,r3
  21185. 519f4: e17ffe17 ldw r5,-8(fp)
  21186. 519f8: 1009883a mov r4,r2
  21187. 519fc: 0051cf00 call 51cf0 <memcmp>
  21188. 51a00: 1000021e bne r2,zero,51a0c <alt_find_dev+0x60>
  21189. {
  21190. /* match found */
  21191. return next;
  21192. 51a04: e0bffc17 ldw r2,-16(fp)
  21193. 51a08: 00000706 br 51a28 <alt_find_dev+0x7c>
  21194. }
  21195. next = (alt_dev*) next->llist.next;
  21196. 51a0c: e0bffc17 ldw r2,-16(fp)
  21197. 51a10: 10800017 ldw r2,0(r2)
  21198. 51a14: e0bffc15 stw r2,-16(fp)
  21199. /*
  21200. * Check each list entry in turn, until a match is found, or we reach the
  21201. * end of the list (i.e. next winds up pointing back to the list head).
  21202. */
  21203. while (next != (alt_dev*) llist)
  21204. 51a18: e0fffc17 ldw r3,-16(fp)
  21205. 51a1c: e0bfff17 ldw r2,-4(fp)
  21206. 51a20: 18bff01e bne r3,r2,519e4 <__alt_data_end+0xfffdf9e4>
  21207. next = (alt_dev*) next->llist.next;
  21208. }
  21209. /* No match found */
  21210. return NULL;
  21211. 51a24: 0005883a mov r2,zero
  21212. }
  21213. 51a28: e037883a mov sp,fp
  21214. 51a2c: dfc00117 ldw ra,4(sp)
  21215. 51a30: df000017 ldw fp,0(sp)
  21216. 51a34: dec00204 addi sp,sp,8
  21217. 51a38: f800283a ret
  21218. 00051a3c <alt_find_file>:
  21219. * either '/' or '\0' is the prefix of the filename. For example the filename:
  21220. * "/myfilesystem/junk.txt" would match: "/myfilesystem", but not: "/myfile".
  21221. */
  21222. alt_dev* alt_find_file (const char* name)
  21223. {
  21224. 51a3c: defffb04 addi sp,sp,-20
  21225. 51a40: dfc00415 stw ra,16(sp)
  21226. 51a44: df000315 stw fp,12(sp)
  21227. 51a48: df000304 addi fp,sp,12
  21228. 51a4c: e13fff15 stw r4,-4(fp)
  21229. alt_dev* next = (alt_dev*) alt_fs_list.next;
  21230. 51a50: d0a00617 ldw r2,-32744(gp)
  21231. 51a54: e0bffd15 stw r2,-12(fp)
  21232. /*
  21233. * Check each list entry in turn, until a match is found, or we reach the
  21234. * end of the list (i.e. next winds up pointing back to the list head).
  21235. */
  21236. while (next != (alt_dev*) &alt_fs_list)
  21237. 51a58: 00003106 br 51b20 <alt_find_file+0xe4>
  21238. {
  21239. len = strlen(next->name);
  21240. 51a5c: e0bffd17 ldw r2,-12(fp)
  21241. 51a60: 10800217 ldw r2,8(r2)
  21242. 51a64: 1009883a mov r4,r2
  21243. 51a68: 00490200 call 49020 <strlen>
  21244. 51a6c: e0bffe15 stw r2,-8(fp)
  21245. if (next->name[len-1] == '/')
  21246. 51a70: e0bffd17 ldw r2,-12(fp)
  21247. 51a74: 10c00217 ldw r3,8(r2)
  21248. 51a78: e0bffe17 ldw r2,-8(fp)
  21249. 51a7c: 10bfffc4 addi r2,r2,-1
  21250. 51a80: 1885883a add r2,r3,r2
  21251. 51a84: 10800003 ldbu r2,0(r2)
  21252. 51a88: 10803fcc andi r2,r2,255
  21253. 51a8c: 1080201c xori r2,r2,128
  21254. 51a90: 10bfe004 addi r2,r2,-128
  21255. 51a94: 10800bd8 cmpnei r2,r2,47
  21256. 51a98: 1000031e bne r2,zero,51aa8 <alt_find_file+0x6c>
  21257. {
  21258. len -= 1;
  21259. 51a9c: e0bffe17 ldw r2,-8(fp)
  21260. 51aa0: 10bfffc4 addi r2,r2,-1
  21261. 51aa4: e0bffe15 stw r2,-8(fp)
  21262. }
  21263. if (((name[len] == '/') || (name[len] == '\0')) &&
  21264. 51aa8: e0bffe17 ldw r2,-8(fp)
  21265. 51aac: e0ffff17 ldw r3,-4(fp)
  21266. 51ab0: 1885883a add r2,r3,r2
  21267. 51ab4: 10800003 ldbu r2,0(r2)
  21268. 51ab8: 10803fcc andi r2,r2,255
  21269. 51abc: 1080201c xori r2,r2,128
  21270. 51ac0: 10bfe004 addi r2,r2,-128
  21271. 51ac4: 10800be0 cmpeqi r2,r2,47
  21272. 51ac8: 1000081e bne r2,zero,51aec <alt_find_file+0xb0>
  21273. 51acc: e0bffe17 ldw r2,-8(fp)
  21274. 51ad0: e0ffff17 ldw r3,-4(fp)
  21275. 51ad4: 1885883a add r2,r3,r2
  21276. 51ad8: 10800003 ldbu r2,0(r2)
  21277. 51adc: 10803fcc andi r2,r2,255
  21278. 51ae0: 1080201c xori r2,r2,128
  21279. 51ae4: 10bfe004 addi r2,r2,-128
  21280. 51ae8: 10000a1e bne r2,zero,51b14 <alt_find_file+0xd8>
  21281. !memcmp (next->name, name, len))
  21282. 51aec: e0bffd17 ldw r2,-12(fp)
  21283. 51af0: 10800217 ldw r2,8(r2)
  21284. 51af4: e0fffe17 ldw r3,-8(fp)
  21285. 51af8: 180d883a mov r6,r3
  21286. 51afc: e17fff17 ldw r5,-4(fp)
  21287. 51b00: 1009883a mov r4,r2
  21288. 51b04: 0051cf00 call 51cf0 <memcmp>
  21289. if (next->name[len-1] == '/')
  21290. {
  21291. len -= 1;
  21292. }
  21293. if (((name[len] == '/') || (name[len] == '\0')) &&
  21294. 51b08: 1000021e bne r2,zero,51b14 <alt_find_file+0xd8>
  21295. !memcmp (next->name, name, len))
  21296. {
  21297. /* match found */
  21298. return next;
  21299. 51b0c: e0bffd17 ldw r2,-12(fp)
  21300. 51b10: 00000706 br 51b30 <alt_find_file+0xf4>
  21301. }
  21302. next = (alt_dev*) next->llist.next;
  21303. 51b14: e0bffd17 ldw r2,-12(fp)
  21304. 51b18: 10800017 ldw r2,0(r2)
  21305. 51b1c: e0bffd15 stw r2,-12(fp)
  21306. /*
  21307. * Check each list entry in turn, until a match is found, or we reach the
  21308. * end of the list (i.e. next winds up pointing back to the list head).
  21309. */
  21310. while (next != (alt_dev*) &alt_fs_list)
  21311. 51b20: e0fffd17 ldw r3,-12(fp)
  21312. 51b24: d0a00604 addi r2,gp,-32744
  21313. 51b28: 18bfcc1e bne r3,r2,51a5c <__alt_data_end+0xfffdfa5c>
  21314. next = (alt_dev*) next->llist.next;
  21315. }
  21316. /* No match found */
  21317. return NULL;
  21318. 51b2c: 0005883a mov r2,zero
  21319. }
  21320. 51b30: e037883a mov sp,fp
  21321. 51b34: dfc00117 ldw ra,4(sp)
  21322. 51b38: df000017 ldw fp,0(sp)
  21323. 51b3c: dec00204 addi sp,sp,8
  21324. 51b40: f800283a ret
  21325. 00051b44 <alt_get_fd>:
  21326. * the offset of the file descriptor within the file descriptor array). A
  21327. * negative value indicates failure.
  21328. */
  21329. int alt_get_fd (alt_dev* dev)
  21330. {
  21331. 51b44: defffa04 addi sp,sp,-24
  21332. 51b48: dfc00515 stw ra,20(sp)
  21333. 51b4c: df000415 stw fp,16(sp)
  21334. 51b50: dc000315 stw r16,12(sp)
  21335. 51b54: df000404 addi fp,sp,16
  21336. 51b58: e13ffe15 stw r4,-8(fp)
  21337. alt_32 i;
  21338. int rc = -EMFILE;
  21339. 51b5c: 00bffa04 movi r2,-24
  21340. 51b60: e0bffd15 stw r2,-12(fp)
  21341. * indicates the highest file descriptor ever allocated. This is used to
  21342. * improve efficency when searching the file descriptor list, and
  21343. * therefore reduce contention on the alt_fd_list_lock semaphore.
  21344. */
  21345. for (i = 0; i < ALT_MAX_FD; i++)
  21346. 51b64: e03ffc15 stw zero,-16(fp)
  21347. 51b68: 00001d06 br 51be0 <alt_get_fd+0x9c>
  21348. {
  21349. if (!alt_fd_list[i].dev)
  21350. 51b6c: 04000174 movhi r16,5
  21351. 51b70: 840bca04 addi r16,r16,12072
  21352. 51b74: e0bffc17 ldw r2,-16(fp)
  21353. 51b78: 01400304 movi r5,12
  21354. 51b7c: 1009883a mov r4,r2
  21355. 51b80: 004c9f80 call 4c9f8 <__mulsi3>
  21356. 51b84: 8085883a add r2,r16,r2
  21357. 51b88: 10800017 ldw r2,0(r2)
  21358. 51b8c: 1000111e bne r2,zero,51bd4 <alt_get_fd+0x90>
  21359. {
  21360. alt_fd_list[i].dev = dev;
  21361. 51b90: 04000174 movhi r16,5
  21362. 51b94: 840bca04 addi r16,r16,12072
  21363. 51b98: e0bffc17 ldw r2,-16(fp)
  21364. 51b9c: 01400304 movi r5,12
  21365. 51ba0: 1009883a mov r4,r2
  21366. 51ba4: 004c9f80 call 4c9f8 <__mulsi3>
  21367. 51ba8: 8085883a add r2,r16,r2
  21368. 51bac: e0fffe17 ldw r3,-8(fp)
  21369. 51bb0: 10c00015 stw r3,0(r2)
  21370. if (i > alt_max_fd)
  21371. 51bb4: d0e00a17 ldw r3,-32728(gp)
  21372. 51bb8: e0bffc17 ldw r2,-16(fp)
  21373. 51bbc: 1880020e bge r3,r2,51bc8 <alt_get_fd+0x84>
  21374. {
  21375. alt_max_fd = i;
  21376. 51bc0: e0bffc17 ldw r2,-16(fp)
  21377. 51bc4: d0a00a15 stw r2,-32728(gp)
  21378. }
  21379. rc = i;
  21380. 51bc8: e0bffc17 ldw r2,-16(fp)
  21381. 51bcc: e0bffd15 stw r2,-12(fp)
  21382. goto alt_get_fd_exit;
  21383. 51bd0: 00000606 br 51bec <alt_get_fd+0xa8>
  21384. * indicates the highest file descriptor ever allocated. This is used to
  21385. * improve efficency when searching the file descriptor list, and
  21386. * therefore reduce contention on the alt_fd_list_lock semaphore.
  21387. */
  21388. for (i = 0; i < ALT_MAX_FD; i++)
  21389. 51bd4: e0bffc17 ldw r2,-16(fp)
  21390. 51bd8: 10800044 addi r2,r2,1
  21391. 51bdc: e0bffc15 stw r2,-16(fp)
  21392. 51be0: e0bffc17 ldw r2,-16(fp)
  21393. 51be4: 10800810 cmplti r2,r2,32
  21394. 51be8: 103fe01e bne r2,zero,51b6c <__alt_data_end+0xfffdfb6c>
  21395. * file descriptor pool.
  21396. */
  21397. ALT_SEM_POST(alt_fd_list_lock);
  21398. return rc;
  21399. 51bec: e0bffd17 ldw r2,-12(fp)
  21400. }
  21401. 51bf0: e6ffff04 addi sp,fp,-4
  21402. 51bf4: dfc00217 ldw ra,8(sp)
  21403. 51bf8: df000117 ldw fp,4(sp)
  21404. 51bfc: dc000017 ldw r16,0(sp)
  21405. 51c00: dec00304 addi sp,sp,12
  21406. 51c04: f800283a ret
  21407. 00051c08 <alt_exception_cause_generated_bad_addr>:
  21408. * Return: 1: BADADDR (bad_addr argument to handler) is valid
  21409. * 0: BADADDR is not valid
  21410. */
  21411. int
  21412. alt_exception_cause_generated_bad_addr(alt_exception_cause cause)
  21413. {
  21414. 51c08: defffe04 addi sp,sp,-8
  21415. 51c0c: df000115 stw fp,4(sp)
  21416. 51c10: df000104 addi fp,sp,4
  21417. 51c14: e13fff15 stw r4,-4(fp)
  21418. switch (cause) {
  21419. 51c18: e0bfff17 ldw r2,-4(fp)
  21420. 51c1c: 10bffe84 addi r2,r2,-6
  21421. 51c20: 10c00428 cmpgeui r3,r2,16
  21422. 51c24: 18001a1e bne r3,zero,51c90 <alt_exception_cause_generated_bad_addr+0x88>
  21423. 51c28: 100690ba slli r3,r2,2
  21424. 51c2c: 00800174 movhi r2,5
  21425. 51c30: 10871004 addi r2,r2,7232
  21426. 51c34: 1885883a add r2,r3,r2
  21427. 51c38: 10800017 ldw r2,0(r2)
  21428. 51c3c: 1000683a jmp r2
  21429. 51c40: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21430. 51c44: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21431. 51c48: 00051c90 cmplti zero,zero,5234
  21432. 51c4c: 00051c90 cmplti zero,zero,5234
  21433. 51c50: 00051c90 cmplti zero,zero,5234
  21434. 51c54: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21435. 51c58: 00051c88 cmpgei zero,zero,5234
  21436. 51c5c: 00051c90 cmplti zero,zero,5234
  21437. 51c60: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21438. 51c64: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21439. 51c68: 00051c90 cmplti zero,zero,5234
  21440. 51c6c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21441. 51c70: 00051c88 cmpgei zero,zero,5234
  21442. 51c74: 00051c90 cmplti zero,zero,5234
  21443. 51c78: 00051c90 cmplti zero,zero,5234
  21444. 51c7c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
  21445. case NIOS2_EXCEPTION_MISALIGNED_TARGET_PC:
  21446. case NIOS2_EXCEPTION_TLB_READ_PERM_VIOLATION:
  21447. case NIOS2_EXCEPTION_TLB_WRITE_PERM_VIOLATION:
  21448. case NIOS2_EXCEPTION_MPU_DATA_REGION_VIOLATION:
  21449. case NIOS2_EXCEPTION_ECC_DATA_ERR:
  21450. return 1;
  21451. 51c80: 00800044 movi r2,1
  21452. 51c84: 00000306 br 51c94 <alt_exception_cause_generated_bad_addr+0x8c>
  21453. case NIOS2_EXCEPTION_TLB_MISS:
  21454. case NIOS2_EXCEPTION_ECC_TLB_ERR:
  21455. return 0;
  21456. 51c88: 0005883a mov r2,zero
  21457. 51c8c: 00000106 br 51c94 <alt_exception_cause_generated_bad_addr+0x8c>
  21458. default:
  21459. return 0;
  21460. 51c90: 0005883a mov r2,zero
  21461. }
  21462. }
  21463. 51c94: e037883a mov sp,fp
  21464. 51c98: df000017 ldw fp,0(sp)
  21465. 51c9c: dec00104 addi sp,sp,4
  21466. 51ca0: f800283a ret
  21467. 00051ca4 <atexit>:
  21468. 51ca4: 200b883a mov r5,r4
  21469. 51ca8: 000f883a mov r7,zero
  21470. 51cac: 000d883a mov r6,zero
  21471. 51cb0: 0009883a mov r4,zero
  21472. 51cb4: 0051d6c1 jmpi 51d6c <__register_exitproc>
  21473. 00051cb8 <exit>:
  21474. 51cb8: defffe04 addi sp,sp,-8
  21475. 51cbc: 000b883a mov r5,zero
  21476. 51cc0: dc000015 stw r16,0(sp)
  21477. 51cc4: dfc00115 stw ra,4(sp)
  21478. 51cc8: 2021883a mov r16,r4
  21479. 51ccc: 0051e840 call 51e84 <__call_exitprocs>
  21480. 51cd0: 00800174 movhi r2,5
  21481. 51cd4: 10908a04 addi r2,r2,16936
  21482. 51cd8: 11000017 ldw r4,0(r2)
  21483. 51cdc: 20800f17 ldw r2,60(r4)
  21484. 51ce0: 10000126 beq r2,zero,51ce8 <exit+0x30>
  21485. 51ce4: 103ee83a callr r2
  21486. 51ce8: 8009883a mov r4,r16
  21487. 51cec: 00520040 call 52004 <_exit>
  21488. 00051cf0 <memcmp>:
  21489. 51cf0: 01c000c4 movi r7,3
  21490. 51cf4: 3980192e bgeu r7,r6,51d5c <memcmp+0x6c>
  21491. 51cf8: 2144b03a or r2,r4,r5
  21492. 51cfc: 11c4703a and r2,r2,r7
  21493. 51d00: 10000f26 beq r2,zero,51d40 <memcmp+0x50>
  21494. 51d04: 20800003 ldbu r2,0(r4)
  21495. 51d08: 28c00003 ldbu r3,0(r5)
  21496. 51d0c: 10c0151e bne r2,r3,51d64 <memcmp+0x74>
  21497. 51d10: 31bfff84 addi r6,r6,-2
  21498. 51d14: 01ffffc4 movi r7,-1
  21499. 51d18: 00000406 br 51d2c <memcmp+0x3c>
  21500. 51d1c: 20800003 ldbu r2,0(r4)
  21501. 51d20: 28c00003 ldbu r3,0(r5)
  21502. 51d24: 31bfffc4 addi r6,r6,-1
  21503. 51d28: 10c00e1e bne r2,r3,51d64 <memcmp+0x74>
  21504. 51d2c: 21000044 addi r4,r4,1
  21505. 51d30: 29400044 addi r5,r5,1
  21506. 51d34: 31fff91e bne r6,r7,51d1c <__alt_data_end+0xfffdfd1c>
  21507. 51d38: 0005883a mov r2,zero
  21508. 51d3c: f800283a ret
  21509. 51d40: 20c00017 ldw r3,0(r4)
  21510. 51d44: 28800017 ldw r2,0(r5)
  21511. 51d48: 18bfee1e bne r3,r2,51d04 <__alt_data_end+0xfffdfd04>
  21512. 51d4c: 31bfff04 addi r6,r6,-4
  21513. 51d50: 21000104 addi r4,r4,4
  21514. 51d54: 29400104 addi r5,r5,4
  21515. 51d58: 39bff936 bltu r7,r6,51d40 <__alt_data_end+0xfffdfd40>
  21516. 51d5c: 303fe91e bne r6,zero,51d04 <__alt_data_end+0xfffdfd04>
  21517. 51d60: 003ff506 br 51d38 <__alt_data_end+0xfffdfd38>
  21518. 51d64: 10c5c83a sub r2,r2,r3
  21519. 51d68: f800283a ret
  21520. 00051d6c <__register_exitproc>:
  21521. 51d6c: defffa04 addi sp,sp,-24
  21522. 51d70: dc000315 stw r16,12(sp)
  21523. 51d74: 04000174 movhi r16,5
  21524. 51d78: 84108a04 addi r16,r16,16936
  21525. 51d7c: 80c00017 ldw r3,0(r16)
  21526. 51d80: dc400415 stw r17,16(sp)
  21527. 51d84: dfc00515 stw ra,20(sp)
  21528. 51d88: 18805217 ldw r2,328(r3)
  21529. 51d8c: 2023883a mov r17,r4
  21530. 51d90: 10003726 beq r2,zero,51e70 <__register_exitproc+0x104>
  21531. 51d94: 10c00117 ldw r3,4(r2)
  21532. 51d98: 010007c4 movi r4,31
  21533. 51d9c: 20c00e16 blt r4,r3,51dd8 <__register_exitproc+0x6c>
  21534. 51da0: 1a000044 addi r8,r3,1
  21535. 51da4: 8800221e bne r17,zero,51e30 <__register_exitproc+0xc4>
  21536. 51da8: 18c00084 addi r3,r3,2
  21537. 51dac: 18c7883a add r3,r3,r3
  21538. 51db0: 18c7883a add r3,r3,r3
  21539. 51db4: 12000115 stw r8,4(r2)
  21540. 51db8: 10c7883a add r3,r2,r3
  21541. 51dbc: 19400015 stw r5,0(r3)
  21542. 51dc0: 0005883a mov r2,zero
  21543. 51dc4: dfc00517 ldw ra,20(sp)
  21544. 51dc8: dc400417 ldw r17,16(sp)
  21545. 51dcc: dc000317 ldw r16,12(sp)
  21546. 51dd0: dec00604 addi sp,sp,24
  21547. 51dd4: f800283a ret
  21548. 51dd8: 00800034 movhi r2,0
  21549. 51ddc: 10800004 addi r2,r2,0
  21550. 51de0: 10002626 beq r2,zero,51e7c <__register_exitproc+0x110>
  21551. 51de4: 01006404 movi r4,400
  21552. 51de8: d9400015 stw r5,0(sp)
  21553. 51dec: d9800115 stw r6,4(sp)
  21554. 51df0: d9c00215 stw r7,8(sp)
  21555. 51df4: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000>
  21556. 51df8: d9400017 ldw r5,0(sp)
  21557. 51dfc: d9800117 ldw r6,4(sp)
  21558. 51e00: d9c00217 ldw r7,8(sp)
  21559. 51e04: 10001d26 beq r2,zero,51e7c <__register_exitproc+0x110>
  21560. 51e08: 81000017 ldw r4,0(r16)
  21561. 51e0c: 10000115 stw zero,4(r2)
  21562. 51e10: 02000044 movi r8,1
  21563. 51e14: 22405217 ldw r9,328(r4)
  21564. 51e18: 0007883a mov r3,zero
  21565. 51e1c: 12400015 stw r9,0(r2)
  21566. 51e20: 20805215 stw r2,328(r4)
  21567. 51e24: 10006215 stw zero,392(r2)
  21568. 51e28: 10006315 stw zero,396(r2)
  21569. 51e2c: 883fde26 beq r17,zero,51da8 <__alt_data_end+0xfffdfda8>
  21570. 51e30: 18c9883a add r4,r3,r3
  21571. 51e34: 2109883a add r4,r4,r4
  21572. 51e38: 1109883a add r4,r2,r4
  21573. 51e3c: 21802215 stw r6,136(r4)
  21574. 51e40: 01800044 movi r6,1
  21575. 51e44: 12406217 ldw r9,392(r2)
  21576. 51e48: 30cc983a sll r6,r6,r3
  21577. 51e4c: 4992b03a or r9,r9,r6
  21578. 51e50: 12406215 stw r9,392(r2)
  21579. 51e54: 21c04215 stw r7,264(r4)
  21580. 51e58: 01000084 movi r4,2
  21581. 51e5c: 893fd21e bne r17,r4,51da8 <__alt_data_end+0xfffdfda8>
  21582. 51e60: 11006317 ldw r4,396(r2)
  21583. 51e64: 218cb03a or r6,r4,r6
  21584. 51e68: 11806315 stw r6,396(r2)
  21585. 51e6c: 003fce06 br 51da8 <__alt_data_end+0xfffdfda8>
  21586. 51e70: 18805304 addi r2,r3,332
  21587. 51e74: 18805215 stw r2,328(r3)
  21588. 51e78: 003fc606 br 51d94 <__alt_data_end+0xfffdfd94>
  21589. 51e7c: 00bfffc4 movi r2,-1
  21590. 51e80: 003fd006 br 51dc4 <__alt_data_end+0xfffdfdc4>
  21591. 00051e84 <__call_exitprocs>:
  21592. 51e84: defff504 addi sp,sp,-44
  21593. 51e88: df000915 stw fp,36(sp)
  21594. 51e8c: dd400615 stw r21,24(sp)
  21595. 51e90: dc800315 stw r18,12(sp)
  21596. 51e94: dfc00a15 stw ra,40(sp)
  21597. 51e98: ddc00815 stw r23,32(sp)
  21598. 51e9c: dd800715 stw r22,28(sp)
  21599. 51ea0: dd000515 stw r20,20(sp)
  21600. 51ea4: dcc00415 stw r19,16(sp)
  21601. 51ea8: dc400215 stw r17,8(sp)
  21602. 51eac: dc000115 stw r16,4(sp)
  21603. 51eb0: d9000015 stw r4,0(sp)
  21604. 51eb4: 2839883a mov fp,r5
  21605. 51eb8: 04800044 movi r18,1
  21606. 51ebc: 057fffc4 movi r21,-1
  21607. 51ec0: 00800174 movhi r2,5
  21608. 51ec4: 10908a04 addi r2,r2,16936
  21609. 51ec8: 12000017 ldw r8,0(r2)
  21610. 51ecc: 45005217 ldw r20,328(r8)
  21611. 51ed0: 44c05204 addi r19,r8,328
  21612. 51ed4: a0001c26 beq r20,zero,51f48 <__call_exitprocs+0xc4>
  21613. 51ed8: a0800117 ldw r2,4(r20)
  21614. 51edc: 15ffffc4 addi r23,r2,-1
  21615. 51ee0: b8000d16 blt r23,zero,51f18 <__call_exitprocs+0x94>
  21616. 51ee4: 14000044 addi r16,r2,1
  21617. 51ee8: 8421883a add r16,r16,r16
  21618. 51eec: 8421883a add r16,r16,r16
  21619. 51ef0: 84402004 addi r17,r16,128
  21620. 51ef4: a463883a add r17,r20,r17
  21621. 51ef8: a421883a add r16,r20,r16
  21622. 51efc: e0001e26 beq fp,zero,51f78 <__call_exitprocs+0xf4>
  21623. 51f00: 80804017 ldw r2,256(r16)
  21624. 51f04: e0801c26 beq fp,r2,51f78 <__call_exitprocs+0xf4>
  21625. 51f08: bdffffc4 addi r23,r23,-1
  21626. 51f0c: 843fff04 addi r16,r16,-4
  21627. 51f10: 8c7fff04 addi r17,r17,-4
  21628. 51f14: bd7ff91e bne r23,r21,51efc <__alt_data_end+0xfffdfefc>
  21629. 51f18: 00800034 movhi r2,0
  21630. 51f1c: 10800004 addi r2,r2,0
  21631. 51f20: 10000926 beq r2,zero,51f48 <__call_exitprocs+0xc4>
  21632. 51f24: a0800117 ldw r2,4(r20)
  21633. 51f28: 1000301e bne r2,zero,51fec <__call_exitprocs+0x168>
  21634. 51f2c: a0800017 ldw r2,0(r20)
  21635. 51f30: 10003226 beq r2,zero,51ffc <__call_exitprocs+0x178>
  21636. 51f34: a009883a mov r4,r20
  21637. 51f38: 98800015 stw r2,0(r19)
  21638. 51f3c: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000>
  21639. 51f40: 9d000017 ldw r20,0(r19)
  21640. 51f44: a03fe41e bne r20,zero,51ed8 <__alt_data_end+0xfffdfed8>
  21641. 51f48: dfc00a17 ldw ra,40(sp)
  21642. 51f4c: df000917 ldw fp,36(sp)
  21643. 51f50: ddc00817 ldw r23,32(sp)
  21644. 51f54: dd800717 ldw r22,28(sp)
  21645. 51f58: dd400617 ldw r21,24(sp)
  21646. 51f5c: dd000517 ldw r20,20(sp)
  21647. 51f60: dcc00417 ldw r19,16(sp)
  21648. 51f64: dc800317 ldw r18,12(sp)
  21649. 51f68: dc400217 ldw r17,8(sp)
  21650. 51f6c: dc000117 ldw r16,4(sp)
  21651. 51f70: dec00b04 addi sp,sp,44
  21652. 51f74: f800283a ret
  21653. 51f78: a0800117 ldw r2,4(r20)
  21654. 51f7c: 80c00017 ldw r3,0(r16)
  21655. 51f80: 10bfffc4 addi r2,r2,-1
  21656. 51f84: 15c01426 beq r2,r23,51fd8 <__call_exitprocs+0x154>
  21657. 51f88: 80000015 stw zero,0(r16)
  21658. 51f8c: 183fde26 beq r3,zero,51f08 <__alt_data_end+0xfffdff08>
  21659. 51f90: 95c8983a sll r4,r18,r23
  21660. 51f94: a0806217 ldw r2,392(r20)
  21661. 51f98: a5800117 ldw r22,4(r20)
  21662. 51f9c: 2084703a and r2,r4,r2
  21663. 51fa0: 10000b26 beq r2,zero,51fd0 <__call_exitprocs+0x14c>
  21664. 51fa4: a0806317 ldw r2,396(r20)
  21665. 51fa8: 2088703a and r4,r4,r2
  21666. 51fac: 20000c1e bne r4,zero,51fe0 <__call_exitprocs+0x15c>
  21667. 51fb0: 89400017 ldw r5,0(r17)
  21668. 51fb4: d9000017 ldw r4,0(sp)
  21669. 51fb8: 183ee83a callr r3
  21670. 51fbc: a0800117 ldw r2,4(r20)
  21671. 51fc0: 15bfbf1e bne r2,r22,51ec0 <__alt_data_end+0xfffdfec0>
  21672. 51fc4: 98800017 ldw r2,0(r19)
  21673. 51fc8: 153fcf26 beq r2,r20,51f08 <__alt_data_end+0xfffdff08>
  21674. 51fcc: 003fbc06 br 51ec0 <__alt_data_end+0xfffdfec0>
  21675. 51fd0: 183ee83a callr r3
  21676. 51fd4: 003ff906 br 51fbc <__alt_data_end+0xfffdffbc>
  21677. 51fd8: a5c00115 stw r23,4(r20)
  21678. 51fdc: 003feb06 br 51f8c <__alt_data_end+0xfffdff8c>
  21679. 51fe0: 89000017 ldw r4,0(r17)
  21680. 51fe4: 183ee83a callr r3
  21681. 51fe8: 003ff406 br 51fbc <__alt_data_end+0xfffdffbc>
  21682. 51fec: a0800017 ldw r2,0(r20)
  21683. 51ff0: a027883a mov r19,r20
  21684. 51ff4: 1029883a mov r20,r2
  21685. 51ff8: 003fb606 br 51ed4 <__alt_data_end+0xfffdfed4>
  21686. 51ffc: 0005883a mov r2,zero
  21687. 52000: 003ffb06 br 51ff0 <__alt_data_end+0xfffdfff0>
  21688. 00052004 <_exit>:
  21689. *
  21690. * ALT_EXIT is mapped onto the _exit() system call in alt_syscall.h
  21691. */
  21692. void ALT_EXIT (int exit_code)
  21693. {
  21694. 52004: defffd04 addi sp,sp,-12
  21695. 52008: df000215 stw fp,8(sp)
  21696. 5200c: df000204 addi fp,sp,8
  21697. 52010: e13fff15 stw r4,-4(fp)
  21698. ALT_LOG_PRINT_BOOT("[alt_exit.c] Entering _exit() function.\r\n");
  21699. ALT_LOG_PRINT_BOOT("[alt_exit.c] Exit code from main was %d.\r\n",exit_code);
  21700. /* Stop all other threads */
  21701. ALT_LOG_PRINT_BOOT("[alt_exit.c] Calling ALT_OS_STOP().\r\n");
  21702. ALT_OS_STOP();
  21703. 52014: 0001883a nop
  21704. 52018: e0bfff17 ldw r2,-4(fp)
  21705. 5201c: e0bffe15 stw r2,-8(fp)
  21706. /*
  21707. * Routine called on exit.
  21708. */
  21709. static ALT_INLINE ALT_ALWAYS_INLINE void alt_sim_halt(int exit_code)
  21710. {
  21711. register int r2 asm ("r2") = exit_code;
  21712. 52020: e0bffe17 ldw r2,-8(fp)
  21713. __asm__ volatile ("\n0:\n\taddi %0,%0, -1\n\tbgt %0,zero,0b" : : "r" (ALT_CPU_FREQ/100) ); /* Delay for >30ms */
  21714. __asm__ volatile ("break 2" : : "r"(r2), "r"(r3) ALT_GMON_DATA );
  21715. #else /* !DEBUG_STUB */
  21716. if (r2) {
  21717. 52024: 10000226 beq r2,zero,52030 <_exit+0x2c>
  21718. ALT_SIM_FAIL();
  21719. 52028: 002af070 cmpltui zero,zero,43969
  21720. 5202c: 00000106 br 52034 <_exit+0x30>
  21721. } else {
  21722. ALT_SIM_PASS();
  21723. 52030: 002af0b0 cmpltui zero,zero,43970
  21724. ALT_SIM_HALT(exit_code);
  21725. /* spin forever, since there's no where to go back to */
  21726. ALT_LOG_PRINT_BOOT("[alt_exit.c] Spinning forever.\r\n");
  21727. while (1);
  21728. 52034: 003fff06 br 52034 <__alt_data_end+0xfffe0034>