1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463 |
- Pong_Code.elf: file format elf32-littlenios2
- Pong_Code.elf
- architecture: nios2:r1, flags 0x00000112:
- EXEC_P, HAS_SYMS, D_PAGED
- start address 0x00040230
- Program Header:
- LOAD off 0x00001000 vaddr 0x00040000 paddr 0x00040000 align 2**12
- filesz 0x00000020 memsz 0x00000020 flags r-x
- LOAD off 0x00001020 vaddr 0x00040020 paddr 0x00040020 align 2**12
- filesz 0x0001263c memsz 0x0001263c flags r-x
- LOAD off 0x0001365c vaddr 0x0005265c paddr 0x00054270 align 2**12
- filesz 0x00001c14 memsz 0x00001c14 flags rw-
- LOAD off 0x00015e84 vaddr 0x00055e84 paddr 0x00055e84 align 2**12
- filesz 0x00000000 memsz 0x000001a0 flags rw-
- Sections:
- Idx Name Size VMA LMA File off Algn
- 0 .entry 00000020 00040000 00040000 00001000 2**5
- CONTENTS, ALLOC, LOAD, READONLY, CODE
- 1 .exceptions 00000210 00040020 00040020 00001020 2**2
- CONTENTS, ALLOC, LOAD, READONLY, CODE
- 2 .text 00011e08 00040230 00040230 00001230 2**2
- CONTENTS, ALLOC, LOAD, READONLY, CODE
- 3 .rodata 00000624 00052038 00052038 00013038 2**2
- CONTENTS, ALLOC, LOAD, READONLY, DATA
- 4 .rwdata 00001c14 0005265c 00054270 0001365c 2**2
- CONTENTS, ALLOC, LOAD, DATA, SMALL_DATA
- 5 .bss 000001a0 00055e84 00055e84 00015e84 2**2
- ALLOC, SMALL_DATA
- 6 .onchip_memory2 00000000 00056024 00056024 00015270 2**0
- CONTENTS
- 7 .comment 00000023 00000000 00000000 00015270 2**0
- CONTENTS, READONLY
- 8 .debug_aranges 00001090 00000000 00000000 00015298 2**3
- CONTENTS, READONLY, DEBUGGING
- 9 .debug_info 00027b83 00000000 00000000 00016328 2**0
- CONTENTS, READONLY, DEBUGGING
- 10 .debug_abbrev 0000a41f 00000000 00000000 0003deab 2**0
- CONTENTS, READONLY, DEBUGGING
- 11 .debug_line 0000cac8 00000000 00000000 000482ca 2**0
- CONTENTS, READONLY, DEBUGGING
- 12 .debug_frame 000025f0 00000000 00000000 00054d94 2**2
- CONTENTS, READONLY, DEBUGGING
- 13 .debug_str 000040a7 00000000 00000000 00057384 2**0
- CONTENTS, READONLY, DEBUGGING
- 14 .debug_loc 000187ec 00000000 00000000 0005b42b 2**0
- CONTENTS, READONLY, DEBUGGING
- 15 .debug_alt_sim_info 00000040 00000000 00000000 00073c18 2**2
- CONTENTS, READONLY, DEBUGGING
- 16 .debug_ranges 00001be8 00000000 00000000 00073c58 2**3
- CONTENTS, READONLY, DEBUGGING
- 17 .thread_model 00000003 00000000 00000000 00078ebe 2**0
- CONTENTS, READONLY
- 18 .cpu 00000005 00000000 00000000 00078ec1 2**0
- CONTENTS, READONLY
- 19 .qsys 00000001 00000000 00000000 00078ec6 2**0
- CONTENTS, READONLY
- 20 .simulation_enabled 00000001 00000000 00000000 00078ec7 2**0
- CONTENTS, READONLY
- 21 .stderr_dev 00000009 00000000 00000000 00078ec8 2**0
- CONTENTS, READONLY
- 22 .stdin_dev 00000009 00000000 00000000 00078ed1 2**0
- CONTENTS, READONLY
- 23 .stdout_dev 00000009 00000000 00000000 00078eda 2**0
- CONTENTS, READONLY
- 24 .sopc_system_name 00000008 00000000 00000000 00078ee3 2**0
- CONTENTS, READONLY
- 25 .quartus_project_dir 0000001d 00000000 00000000 00078eeb 2**0
- CONTENTS, READONLY
- 26 .jdi 00004802 00000000 00000000 00078f08 2**0
- CONTENTS, READONLY
- 27 .sopcinfo 0004849f 00000000 00000000 0007d70a 2**0
- CONTENTS, READONLY
- SYMBOL TABLE:
- 00040000 l d .entry 00000000 .entry
- 00040020 l d .exceptions 00000000 .exceptions
- 00040230 l d .text 00000000 .text
- 00052038 l d .rodata 00000000 .rodata
- 0005265c l d .rwdata 00000000 .rwdata
- 00055e84 l d .bss 00000000 .bss
- 00056024 l d .onchip_memory2 00000000 .onchip_memory2
- 00000000 l d .comment 00000000 .comment
- 00000000 l d .debug_aranges 00000000 .debug_aranges
- 00000000 l d .debug_info 00000000 .debug_info
- 00000000 l d .debug_abbrev 00000000 .debug_abbrev
- 00000000 l d .debug_line 00000000 .debug_line
- 00000000 l d .debug_frame 00000000 .debug_frame
- 00000000 l d .debug_str 00000000 .debug_str
- 00000000 l d .debug_loc 00000000 .debug_loc
- 00000000 l d .debug_alt_sim_info 00000000 .debug_alt_sim_info
- 00000000 l d .debug_ranges 00000000 .debug_ranges
- 00000000 l df *ABS* 00000000 ../Pong_Code_bsp//obj/HAL/src/crt0.o
- 00040268 l .text 00000000 alt_after_alt_main
- 00000000 l df *ABS* 00000000 alt_irq_handler.c
- 00000000 l df *ABS* 00000000 alt_instruction_exception_entry.c
- 00000000 l df *ABS* 00000000 specs.cpp
- 00000000 l df *ABS* 00000000 Main.c
- 00000000 l df *ABS* 00000000 specs.cpp
- 00000000 l df *ABS* 00000000 s_round.c
- 00000000 l df *ABS* 00000000 eqsf2.c
- 00000000 l df *ABS* 00000000 gesf2.c
- 00000000 l df *ABS* 00000000 lesf2.c
- 00000000 l df *ABS* 00000000 floatsisf.c
- 00000000 l df *ABS* 00000000 adddf3.c
- 00000000 l df *ABS* 00000000 fixdfsi.c
- 00000000 l df *ABS* 00000000 floatsidf.c
- 00000000 l df *ABS* 00000000 extendsfdf2.c
- 00000000 l df *ABS* 00000000 libgcc2.c
- 00000000 l df *ABS* 00000000 libgcc2.c
- 00000000 l df *ABS* 00000000 getc.c
- 00000000 l df *ABS* 00000000 impure.c
- 0005265c l O .rwdata 00000424 impure_data
- 00000000 l df *ABS* 00000000 printf.c
- 00000000 l df *ABS* 00000000 putchar.c
- 00000000 l df *ABS* 00000000 rget.c
- 00000000 l df *ABS* 00000000 vfprintf.c
- 0005221e l O .rodata 00000010 zeroes.4404
- 00044464 l F .text 000000bc __sbprintf
- 0005222e l O .rodata 00000010 blanks.4403
- 00000000 l df *ABS* 00000000 wsetup.c
- 00000000 l df *ABS* 00000000 dtoa.c
- 00044674 l F .text 00000228 quorem
- 00000000 l df *ABS* 00000000 fflush.c
- 00000000 l df *ABS* 00000000 findfp.c
- 000461cc l F .text 00000008 __fp_unlock
- 000461e0 l F .text 0000019c __sinit.part.1
- 0004637c l F .text 00000008 __fp_lock
- 00000000 l df *ABS* 00000000 mallocr.c
- 00000000 l df *ABS* 00000000 fwalk.c
- 00000000 l df *ABS* 00000000 locale.c
- 00052aa0 l O .rwdata 00000020 lc_ctype_charset
- 00052a80 l O .rwdata 00000020 lc_message_charset
- 00052ac0 l O .rwdata 00000038 lconv
- 00000000 l df *ABS* 00000000 makebuf.c
- 00000000 l df *ABS* 00000000 mallocr.c
- 00000000 l df *ABS* 00000000 memchr.c
- 00000000 l df *ABS* 00000000 memcpy.c
- 00000000 l df *ABS* 00000000 memset.c
- 00000000 l df *ABS* 00000000 mprec.c
- 0005225c l O .rodata 0000000c p05.2768
- 00000000 l df *ABS* 00000000 putc.c
- 00000000 l df *ABS* 00000000 refill.c
- 00048b50 l F .text 0000001c lflush
- 00000000 l df *ABS* 00000000 s_fpclassify.c
- 00000000 l df *ABS* 00000000 sbrkr.c
- 00000000 l df *ABS* 00000000 stdio.c
- 00000000 l df *ABS* 00000000 strcmp.c
- 00000000 l df *ABS* 00000000 strlen.c
- 00000000 l df *ABS* 00000000 vfprintf.c
- 000490b8 l F .text 000000fc __sprint_r.part.0
- 00052380 l O .rodata 00000010 zeroes.4349
- 0004a6f4 l F .text 000000bc __sbprintf
- 00052390 l O .rodata 00000010 blanks.4348
- 00000000 l df *ABS* 00000000 wbuf.c
- 00000000 l df *ABS* 00000000 writer.c
- 00000000 l df *ABS* 00000000 closer.c
- 00000000 l df *ABS* 00000000 mallocr.c
- 00000000 l df *ABS* 00000000 fclose.c
- 00000000 l df *ABS* 00000000 fputwc.c
- 00000000 l df *ABS* 00000000 fstatr.c
- 00000000 l df *ABS* 00000000 fvwrite.c
- 00000000 l df *ABS* 00000000 int_errno.c
- 00000000 l df *ABS* 00000000 isattyr.c
- 00000000 l df *ABS* 00000000 lseekr.c
- 00000000 l df *ABS* 00000000 memmove.c
- 00000000 l df *ABS* 00000000 readr.c
- 00000000 l df *ABS* 00000000 mallocr.c
- 00000000 l df *ABS* 00000000 wcrtomb.c
- 00000000 l df *ABS* 00000000 wctomb_r.c
- 00000000 l df *ABS* 00000000 libgcc2.c
- 00000000 l df *ABS* 00000000 libgcc2.c
- 00000000 l df *ABS* 00000000 lib2-divmod.c
- 00000000 l df *ABS* 00000000 lib2-mul.c
- 00000000 l df *ABS* 00000000 divdf3.c
- 00000000 l df *ABS* 00000000 eqdf2.c
- 00000000 l df *ABS* 00000000 gedf2.c
- 00000000 l df *ABS* 00000000 ledf2.c
- 00000000 l df *ABS* 00000000 muldf3.c
- 00000000 l df *ABS* 00000000 subdf3.c
- 00000000 l df *ABS* 00000000 floatunsidf.c
- 00000000 l df *ABS* 00000000 alt_close.c
- 0004e858 l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_dev.c
- 0004e96c l F .text 0000002c alt_dev_null_write
- 00000000 l df *ABS* 00000000 alt_errno.c
- 00000000 l df *ABS* 00000000 alt_fstat.c
- 0004e998 l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_isatty.c
- 0004ea8c l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_load.c
- 0004eb74 l F .text 00000068 alt_load_section
- 00000000 l df *ABS* 00000000 alt_lseek.c
- 0004ec60 l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_main.c
- 00000000 l df *ABS* 00000000 alt_malloc_lock.c
- 00000000 l df *ABS* 00000000 alt_read.c
- 0004ee3c l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_release_fd.c
- 00000000 l df *ABS* 00000000 alt_sbrk.c
- 00054258 l O .rwdata 00000004 heap_end
- 00000000 l df *ABS* 00000000 alt_write.c
- 0004f0b0 l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_sys_init.c
- 0004f1ec l F .text 00000034 alt_dev_reg
- 000530a8 l O .rwdata 00001060 jtag_uart
- 00054108 l O .rwdata 00000120 lcd_16207
- 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_fd.c
- 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_init.c
- 0004f4dc l F .text 0000020c altera_avalon_jtag_uart_irq
- 0004f6e8 l F .text 000000a0 altera_avalon_jtag_uart_timeout
- 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_ioctl.c
- 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_read.c
- 00000000 l df *ABS* 00000000 altera_avalon_jtag_uart_write.c
- 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207.c
- 0005425c l O .rwdata 00000004 colstart
- 0004fd20 l F .text 000000b8 lcd_write_command
- 0004fdd8 l F .text 000000d8 lcd_write_data
- 0004feb0 l F .text 000000e8 lcd_clear_screen
- 0004ff98 l F .text 00000228 lcd_repaint_screen
- 000501c0 l F .text 000000e8 lcd_scroll_up
- 000502a8 l F .text 000002c4 lcd_handle_escape
- 00050a8c l F .text 000000ac alt_lcd_16207_timeout
- 00000000 l df *ABS* 00000000 altera_avalon_lcd_16207_fd.c
- 00000000 l df *ABS* 00000000 alt_alarm_start.c
- 00000000 l df *ABS* 00000000 alt_dcache_flush_all.c
- 00000000 l df *ABS* 00000000 alt_dev_llist_insert.c
- 00050e18 l F .text 0000003c alt_get_errno
- 00000000 l df *ABS* 00000000 alt_do_ctors.c
- 00000000 l df *ABS* 00000000 alt_do_dtors.c
- 00000000 l df *ABS* 00000000 alt_icache_flush_all.c
- 00000000 l df *ABS* 00000000 alt_iic.c
- 00000000 l df *ABS* 00000000 alt_iic_isr_register.c
- 00000000 l df *ABS* 00000000 alt_io_redirect.c
- 00051278 l F .text 000000e4 alt_open_fd
- 00000000 l df *ABS* 00000000 alt_irq_vars.c
- 00000000 l df *ABS* 00000000 alt_open.c
- 000513d8 l F .text 0000003c alt_get_errno
- 00051414 l F .text 000000ec alt_file_locked
- 00000000 l df *ABS* 00000000 alt_tick.c
- 00000000 l df *ABS* 00000000 alt_usleep.c
- 00000000 l df *ABS* 00000000 altera_nios2_gen2_irq.c
- 00000000 l df *ABS* 00000000 alt_busy_sleep.c
- 00000000 l df *ABS* 00000000 alt_find_dev.c
- 00000000 l df *ABS* 00000000 alt_find_file.c
- 00000000 l df *ABS* 00000000 alt_get_fd.c
- 00000000 l df *ABS* 00000000 atexit.c
- 00000000 l df *ABS* 00000000 ctype_.c
- 000524dc l O .rodata 00000180 _ctype_b
- 00000000 l df *ABS* 00000000 exit.c
- 00000000 l df *ABS* 00000000 memcmp.c
- 00000000 l df *ABS* 00000000 __atexit.c
- 00000000 l df *ABS* 00000000 __call_atexit.c
- 00000000 l df *ABS* 00000000 alt_exit.c
- 00055ec8 g O .bss 00000004 alt_instruction_exception_handler
- 000420cc g F .text 00000018 putchar
- 00048870 g F .text 00000074 _mprec_log10
- 0004895c g F .text 0000008c __any_on
- 0004b2c8 g F .text 00000054 _isatty_r
- 00052268 g O .rodata 00000028 __mprec_tinytens
- 0004ed78 g F .text 0000007c alt_main
- 00055f24 g O .bss 00000100 alt_irq
- 0004b31c g F .text 00000060 _lseek_r
- 00054270 g *ABS* 00000000 __flash_rwdata_start
- 0004d3f0 g F .text 00000088 .hidden __eqdf2
- 00056024 g *ABS* 00000000 __alt_heap_start
- 00042088 g F .text 0000003c printf
- 0004ba9c g F .text 0000009c _wcrtomb_r
- 00048ee0 g F .text 0000005c __sseek
- 0004652c g F .text 00000010 __sinit
- 0004a7b0 g F .text 00000140 __swbuf_r
- 00046b38 g F .text 0000007c _setlocale_r
- 00046384 g F .text 00000078 __sfmoreglue
- 0004ee18 g F .text 00000024 __malloc_unlock
- 00040fc4 g F .text 00000100 round
- 0004b37c g F .text 0000015c memmove
- 00046514 g F .text 00000018 _cleanup
- 00047930 g F .text 000000a8 _Balloc
- 0004d478 g F .text 000000dc .hidden __gtdf2
- 00051830 g F .text 00000024 altera_nios2_gen2_irq_init
- 00040000 g F .entry 0000000c __reset
- 00040020 g *ABS* 00000000 __flash_exceptions_start
- 0004ada4 g F .text 0000005c _fstat_r
- 00055eac g O .bss 00000004 errno
- 00042158 g F .text 00000014 __srget
- 00048e5c g F .text 00000008 __seofread
- 00055eb4 g O .bss 00000004 alt_argv
- 0005c228 g *ABS* 00000000 _gp
- 00051800 g F .text 00000030 usleep
- 00040514 g F .text 00000968 game
- 00052f28 g O .rwdata 00000180 alt_fd_list
- 00041f60 g F .text 00000070 _getc_r
- 00041fd0 g F .text 00000088 getc
- 000420c4 g F .text 00000008 _putchar_r
- 000519ac g F .text 00000090 alt_find_dev
- 000476c0 g F .text 00000148 memcpy
- 000461d4 g F .text 0000000c _cleanup_r
- 00041d10 g F .text 000000dc .hidden __floatsidf
- 0005135c g F .text 0000007c alt_io_redirect
- 0004d554 g F .text 000000f4 .hidden __ltdf2
- 00052038 g *ABS* 00000000 __DTOR_END__
- 00051c08 g F .text 0000009c alt_exception_cause_generated_bad_addr
- 00048d40 g F .text 00000074 __fpclassifyd
- 000487cc g F .text 000000a4 __ratio
- 0004a6d8 g F .text 0000001c __vfiprintf_internal
- 00055ef4 g O .bss 00000020 screen
- 0004f8e0 g F .text 0000021c altera_avalon_jtag_uart_read
- 00042058 g F .text 00000030 _printf_r
- 0004c93c g F .text 00000064 .hidden __udivsi3
- 0004eac8 g F .text 000000ac isatty
- 000522b8 g O .rodata 000000c8 __mprec_tens
- 00046bb4 g F .text 0000000c __locale_charset
- 000411f8 g F .text 000000c8 .hidden __lesf2
- 00055ea8 g O .bss 00000004 __malloc_top_pad
- 00054230 g O .rwdata 00000004 __mb_cur_max
- 00046be4 g F .text 0000000c _localeconv_r
- 0004049c g F .text 00000078 reset_pos
- 0004ae00 g F .text 000004c8 __sfvwrite_r
- 00047d64 g F .text 0000003c __i2b
- 00048db4 g F .text 00000054 _sbrk_r
- 0004b4d8 g F .text 00000060 _read_r
- 000403bc g F .text 00000070 set_pixel
- 00054250 g O .rwdata 00000004 alt_max_fd
- 0004aa98 g F .text 000000f0 _fclose_r
- 0004619c g F .text 00000030 fflush
- 00055ea4 g O .bss 00000004 __malloc_max_sbrked_mem
- 00041dec g F .text 00000110 .hidden __extendsfdf2
- 000413e4 g F .text 000008ac .hidden __adddf3
- 000410c4 g F .text 00000078 .hidden __nesf2
- 00048574 g F .text 0000010c __b2d
- 0004c280 g F .text 000005c4 .hidden __umoddi3
- 0004ec9c g F .text 000000dc lseek
- 00054228 g O .rwdata 00000004 _global_impure_ptr
- 0004b538 g F .text 00000564 _realloc_r
- 00056024 g *ABS* 00000000 __bss_end
- 00051188 g F .text 000000f0 alt_iic_isr_register
- 000516f8 g F .text 00000108 alt_tick
- 0004bc84 g F .text 000005fc .hidden __udivdi3
- 0004ad00 g F .text 00000024 _fputwc_r
- 00052290 g O .rodata 00000028 __mprec_bigtens
- 00047b48 g F .text 00000104 __s2b
- 0004e7b0 g F .text 000000a8 .hidden __floatunsidf
- 000482b4 g F .text 00000060 __mcmp
- 0004654c g F .text 00000018 __fp_lock_all
- 0005113c g F .text 0000004c alt_ic_irq_enabled
- 0005165c g F .text 0000009c alt_alarm_stop
- 00055ebc g O .bss 00000004 alt_irq_active
- 000400fc g F .exceptions 000000d4 alt_irq_handler
- 00052f00 g O .rwdata 00000028 alt_dev_null
- 00050df8 g F .text 00000020 alt_dcache_flush_all
- 00047c4c g F .text 00000068 __hi0bits
- 00041c90 g F .text 00000080 .hidden __fixdfsi
- 00054270 g *ABS* 00000000 __ram_rwdata_end
- 00054248 g O .rwdata 00000008 alt_dev_list
- 0004f0ec g F .text 00000100 write
- 000489e8 g F .text 000000a0 _putc_r
- 0004113c g F .text 000000bc .hidden __gtsf2
- 0005265c g *ABS* 00000000 __ram_rodata_end
- 0004e9d4 g F .text 000000b8 fstat
- 0004d554 g F .text 000000f4 .hidden __ledf2
- 0004802c g F .text 00000140 __pow5mult
- 000491cc g F .text 0000150c ___vfiprintf_internal_r
- 00055e9c g O .bss 00000004 __nlocale_changed
- 0004c9a0 g F .text 00000058 .hidden __umodsi3
- 00056024 g *ABS* 00000000 end
- 0005056c g F .text 00000520 altera_avalon_lcd_16207_write
- 0004f41c g F .text 000000c0 altera_avalon_jtag_uart_init
- 000401d0 g F .exceptions 00000060 alt_instruction_exception_entry
- 00052038 g *ABS* 00000000 __CTOR_LIST__
- 00072000 g *ABS* 00000000 __alt_stack_pointer
- 00041efc g F .text 00000064 .hidden __clzsi2
- 0004fafc g F .text 00000224 altera_avalon_jtag_uart_write
- 0004653c g F .text 00000004 __sfp_lock_acquire
- 000475dc g F .text 000000e4 memchr
- 0004216c g F .text 000022dc ___vfprintf_internal_r
- 000466a0 g F .text 00000310 _free_r
- 00046bc0 g F .text 00000010 __locale_mb_cur_max
- 00051e84 g F .text 00000180 __call_exitprocs
- 000420e4 g F .text 00000074 __srget_r
- 00055e98 g O .bss 00000004 __mlocale_changed
- 00054234 g O .rwdata 00000004 __malloc_sbrk_base
- 00040230 g F .text 0000003c _start
- 00055ec0 g O .bss 00000004 _alt_tick_rate
- 0004816c g F .text 00000148 __lshift
- 00055ec4 g O .bss 00000004 _alt_nticks
- 0004ee78 g F .text 00000104 read
- 0004f258 g F .text 00000060 alt_sys_init
- 000412c0 g F .text 00000124 .hidden __floatsisf
- 00051d6c g F .text 00000118 __register_exitproc
- 00047da0 g F .text 0000028c __multiply
- 0004f788 g F .text 00000068 altera_avalon_jtag_uart_close
- 0004c9f8 g F .text 00000028 .hidden __mulsi3
- 0005265c g *ABS* 00000000 __ram_rwdata_start
- 00052038 g *ABS* 00000000 __ram_rodata_start
- 00055ecc g O .bss 00000028 __malloc_current_mallinfo
- 000410c4 g F .text 00000078 .hidden __eqsf2
- 00048680 g F .text 0000014c __d2b
- 0004f2b8 g F .text 00000060 altera_avalon_jtag_uart_read_fd
- 00051b44 g F .text 000000c4 alt_get_fd
- 00051854 g F .text 00000158 alt_busy_sleep
- 0004a968 g F .text 00000054 _close_r
- 00051cf0 g F .text 0000007c memcmp
- 0004f378 g F .text 00000050 altera_avalon_jtag_uart_close_fd
- 00056024 g *ABS* 00000000 __alt_stack_base
- 0004f3c8 g F .text 00000054 altera_avalon_jtag_uart_ioctl_fd
- 00044520 g F .text 00000154 __swsetup_r
- 0004ca20 g F .text 000009d0 .hidden __divdf3
- 000463fc g F .text 00000118 __sfp
- 000488e4 g F .text 00000078 __copybits
- 00052af8 g O .rwdata 00000408 __malloc_av_
- 00046548 g F .text 00000004 __sinit_lock_release
- 0004d648 g F .text 0000086c .hidden __muldf3
- 00048e08 g F .text 00000054 __sread
- 00051a3c g F .text 00000108 alt_find_file
- 00050e54 g F .text 000000a4 alt_dev_llist_insert
- 0004edf4 g F .text 00000024 __malloc_lock
- 0004f000 g F .text 000000b0 sbrk
- 00046140 g F .text 0000005c _fflush_r
- 0004a9bc g F .text 000000dc _calloc_r
- 00055e84 g *ABS* 00000000 __bss_start
- 00047808 g F .text 00000128 memset
- 00040f98 g F .text 0000002c main
- 00055eb8 g O .bss 00000004 alt_envp
- 00055ea0 g O .bss 00000004 __malloc_max_total_mem
- 0004f318 g F .text 00000060 altera_avalon_jtag_uart_write_fd
- 0004a8f0 g F .text 00000018 __swbuf
- 000411f8 g F .text 000000c8 .hidden __ltsf2
- 00050b38 g F .text 00000134 altera_avalon_lcd_16207_init
- 00048f3c g F .text 00000008 __sclose
- 00072000 g *ABS* 00000000 __alt_heap_limit
- 0004ab88 g F .text 00000014 fclose
- 0004042c g F .text 00000070 reset_screen
- 0004489c g F .text 00001688 _dtoa_r
- 00046dd0 g F .text 0000080c _malloc_r
- 0004bbf8 g F .text 00000030 __ascii_wctomb
- 00054254 g O .rwdata 00000004 alt_errno
- 000469b0 g F .text 000000c4 _fwalk
- 00040e7c g F .text 0000011c test_picture
- 00048a88 g F .text 000000c8 putc
- 0004c844 g F .text 00000084 .hidden __divsi3
- 0004657c g F .text 00000124 _malloc_trim_r
- 00052038 g *ABS* 00000000 __CTOR_END__
- 00048f44 g F .text 000000dc strcmp
- 00052038 g *ABS* 00000000 __flash_rodata_start
- 00052038 g *ABS* 00000000 __DTOR_LIST__
- 00055e84 g O .bss 00000008 left_paddle
- 0004d3f0 g F .text 00000088 .hidden __nedf2
- 0004f220 g F .text 00000038 alt_irq_init
- 0004ef7c g F .text 00000084 alt_release_fd
- 000520d6 g O .rodata 00000100 .hidden __clz_tab
- 00055e94 g O .bss 00000004 _PathLocale
- 000402e8 g F .text 00000060 bin
- 00051ca4 g F .text 00000014 atexit
- 0004113c g F .text 000000bc .hidden __gesf2
- 0004a908 g F .text 00000060 _write_r
- 00046bf0 g F .text 00000018 setlocale
- 0005422c g O .rwdata 00000004 _impure_ptr
- 00055eb0 g O .bss 00000004 alt_argc
- 00045f24 g F .text 0000021c __sflush_r
- 00050f58 g F .text 00000060 _do_dtors
- 00046bdc g F .text 00000008 __locale_cjk_lang
- 00048b6c g F .text 000001d4 __srefill_r
- 00040020 g .exceptions 00000000 alt_irq_entry
- 00048510 g F .text 00000064 __ulp
- 00046564 g F .text 00000018 __fp_unlock_all
- 00050c6c g F .text 00000060 altera_avalon_lcd_16207_write_fd
- 00054240 g O .rwdata 00000008 alt_fs_list
- 00055f14 g O .bss 00000010 ball
- 00040020 g *ABS* 00000000 __ram_exceptions_start
- 00046c08 g F .text 0000000c localeconv
- 00040000 g *ABS* 00000000 __alt_mem_onchip_memory2
- 00050fd8 g F .text 00000050 alt_ic_isr_register
- 00054270 g *ABS* 00000000 _edata
- 00056024 g *ABS* 00000000 _end
- 0004ab9c g F .text 00000164 __fputwc
- 00040230 g *ABS* 00000000 __ram_exceptions_end
- 00055e8c g O .bss 00000008 right_paddle
- 0004f7f0 g F .text 000000f0 altera_avalon_jtag_uart_ioctl
- 000510b0 g F .text 0000008c alt_ic_irq_disable
- 00048e64 g F .text 0000007c __swrite
- 00054238 g O .rwdata 00000004 __malloc_trim_threshold
- 00040348 g F .text 00000074 draw_console
- 00046bd0 g F .text 0000000c __locale_msgcharset
- 00051cb8 g F .text 00000038 exit
- 00046a74 g F .text 000000c4 _fwalk_reent
- 00048314 g F .text 000001fc __mdiff
- 0004c8c8 g F .text 00000074 .hidden __modsi3
- 0005426c g O .rwdata 00000004 __ctype_ptr__
- 00072000 g *ABS* 00000000 __alt_data_end
- 00040020 g F .exceptions 00000000 alt_exception
- 00046540 g F .text 00000004 __sfp_lock_release
- 000523db g O .rodata 00000101 _ctype_
- 0004026c g F .text 0000007c draw
- 00052004 g F .text 00000034 _exit
- 00050ccc g F .text 0000012c alt_alarm_start
- 00046c14 g F .text 000001bc __smakebuf_r
- 00049020 g F .text 00000098 strlen
- 00051500 g F .text 0000015c open
- 0004d478 g F .text 000000dc .hidden __gedf2
- 0005423c g O .rwdata 00000004 __wctomb
- 000491b4 g F .text 00000018 __sprint_r
- 00050fb8 g F .text 00000020 alt_icache_flush_all
- 00054260 g O .rwdata 00000004 alt_priority_mask
- 00051028 g F .text 00000088 alt_ic_irq_enable
- 00044448 g F .text 0000001c __vfprintf_internal
- 0004bc28 g F .text 0000005c _wctomb_r
- 0004deb4 g F .text 000008fc .hidden __subdf3
- 00047cb4 g F .text 000000b0 __lo0bits
- 00054264 g O .rwdata 00000008 alt_alarm_list
- 00050ef8 g F .text 00000060 _do_ctors
- 0004bb38 g F .text 000000c0 wcrtomb
- 0004e894 g F .text 000000d8 close
- 0004ebdc g F .text 00000084 alt_load
- 0004ad24 g F .text 00000080 fputwc
- 00046544 g F .text 00000004 __sinit_lock_acquire
- 00047a00 g F .text 00000148 __multadd
- 000479d8 g F .text 00000028 _Bfree
- Disassembly of section .entry:
- 00040000 <__reset>:
- * Jump to the _start entry point in the .text section if reset code
- * is allowed or if optimizing for RTL simulation.
- */
- #if defined(ALT_ALLOW_CODE_AT_RESET) || defined(ALT_SIM_OPTIMIZE)
- /* Jump to the _start entry point in the .text section. */
- movhi r1, %hi(_start)
- 40000: 00400134 movhi at,4
- ori r1, r1, %lo(_start)
- 40004: 08408c14 ori at,at,560
- jmp r1
- 40008: 0800683a jmp at
- ...
- Disassembly of section .exceptions:
- 00040020 <alt_exception>:
- #else /* ALT_EXCEPTION_STACK disabled */
- /*
- * Reserve space on normal stack for registers about to be pushed.
- */
- addi sp, sp, -76
- 40020: deffed04 addi sp,sp,-76
- * documentation for details).
- *
- * Leave a gap in the stack frame at 4(sp) for the muldiv handler to
- * store zero into.
- */
- stw ra, 0(sp)
- 40024: dfc00015 stw ra,0(sp)
- stw r1, 8(sp)
- 40028: d8400215 stw at,8(sp)
- stw r2, 12(sp)
- 4002c: d8800315 stw r2,12(sp)
- stw r3, 16(sp)
- 40030: d8c00415 stw r3,16(sp)
- stw r4, 20(sp)
- 40034: d9000515 stw r4,20(sp)
- stw r5, 24(sp)
- 40038: d9400615 stw r5,24(sp)
- stw r6, 28(sp)
- 4003c: d9800715 stw r6,28(sp)
- stw r7, 32(sp)
- 40040: d9c00815 stw r7,32(sp)
- rdctl r5, estatus /* Read early to avoid usage stall */
- 40044: 000b307a rdctl r5,estatus
- stw r8, 36(sp)
- 40048: da000915 stw r8,36(sp)
- stw r9, 40(sp)
- 4004c: da400a15 stw r9,40(sp)
- stw r10, 44(sp)
- 40050: da800b15 stw r10,44(sp)
- stw r11, 48(sp)
- 40054: dac00c15 stw r11,48(sp)
- stw r12, 52(sp)
- 40058: db000d15 stw r12,52(sp)
- stw r13, 56(sp)
- 4005c: db400e15 stw r13,56(sp)
- stw r14, 60(sp)
- 40060: db800f15 stw r14,60(sp)
- stw r15, 64(sp)
- 40064: dbc01015 stw r15,64(sp)
- /*
- * ea-4 contains the address of the instruction being executed
- * when the exception occured. For interrupt exceptions, we will
- * will be re-issue the isntruction. Store it in 72(sp)
- */
- stw r5, 68(sp) /* estatus */
- 40068: d9401115 stw r5,68(sp)
- addi r15, ea, -4 /* instruction that caused exception */
- 4006c: ebffff04 addi r15,ea,-4
- stw r15, 72(sp)
- 40070: dbc01215 stw r15,72(sp)
- #else
- /*
- * Test to see if the exception was a software exception or caused
- * by an external interrupt, and vector accordingly.
- */
- rdctl r4, ipending
- 40074: 0009313a rdctl r4,ipending
- andi r2, r5, 1
- 40078: 2880004c andi r2,r5,1
- beq r2, zero, .Lnot_irq
- 4007c: 10000326 beq r2,zero,4008c <alt_exception+0x6c>
- beq r4, zero, .Lnot_irq
- 40080: 20000226 beq r4,zero,4008c <alt_exception+0x6c>
- /*
- * Now that all necessary registers have been preserved, call
- * alt_irq_handler() to process the interrupts.
- */
- call alt_irq_handler
- 40084: 00400fc0 call 400fc <alt_irq_handler>
- .section .exceptions.irqreturn, "xa"
- br .Lexception_exit
- 40088: 00000706 br 400a8 <alt_exception+0x88>
- * upon completion, so we write ea (address of instruction *after*
- * the one where the exception occured) into 72(sp). The actual
- * instruction that caused the exception is written in r2, which these
- * handlers will utilize.
- */
- stw ea, 72(sp) /* EA is PC+4 so will skip over instruction causing exception */
- 4008c: df401215 stw ea,72(sp)
- .Lunknown_16bit:
- addi.n r4, r4, 2 /* Need PC+2 to skip over instruction causing exception */
- stw r4, 72(sp)
- #else /* CDX is not Enabled and all instructions are 32bits */
- ldw r2, -4(ea) /* Instruction value that caused exception */
- 40090: e8bfff17 ldw r2,-4(ea)
- * debugger is present) or go into an infinite loop since the
- * handling behavior is undefined; in that case we will not return here.
- */
- /* Load exception-causing address as first argument (r4) */
- addi r4, ea, -4
- 40094: e93fff04 addi r4,ea,-4
- /* Call the instruction-exception entry */
- call alt_instruction_exception_entry
- 40098: 00401d00 call 401d0 <alt_instruction_exception_entry>
- * instruction
- *
- * Return code was 0: Skip. The instruction after the exception is
- * already stored in 72(sp).
- */
- bne r2, r0, .Lexception_exit
- 4009c: 1000021e bne r2,zero,400a8 <alt_exception+0x88>
- /*
- * Otherwise, modify 72(sp) to re-issue the instruction that caused the
- * exception.
- */
- addi r15, ea, -4 /* instruction that caused exception */
- 400a0: ebffff04 addi r15,ea,-4
- stw r15, 72(sp)
- 400a4: dbc01215 stw r15,72(sp)
- /*
- * Restore the saved registers, so that all general purpose registers
- * have been restored to their state at the time the interrupt occured.
- */
- ldw r5, 68(sp)
- 400a8: d9401117 ldw r5,68(sp)
- ldw ea, 72(sp) /* This becomes the PC once eret is executed */
- 400ac: df401217 ldw ea,72(sp)
- ldw ra, 0(sp)
- 400b0: dfc00017 ldw ra,0(sp)
- wrctl estatus, r5
- 400b4: 2801707a wrctl estatus,r5
- ldw r1, 8(sp)
- 400b8: d8400217 ldw at,8(sp)
- ldw r2, 12(sp)
- 400bc: d8800317 ldw r2,12(sp)
- ldw r3, 16(sp)
- 400c0: d8c00417 ldw r3,16(sp)
- ldw r4, 20(sp)
- 400c4: d9000517 ldw r4,20(sp)
- ldw r5, 24(sp)
- 400c8: d9400617 ldw r5,24(sp)
- ldw r6, 28(sp)
- 400cc: d9800717 ldw r6,28(sp)
- ldw r7, 32(sp)
- 400d0: d9c00817 ldw r7,32(sp)
- #if defined(ALT_EXCEPTION_STACK) && defined(ALT_STACK_CHECK)
- ldw et, %gprel(alt_exception_old_stack_limit)(gp)
- #endif
- ldw r8, 36(sp)
- 400d4: da000917 ldw r8,36(sp)
- ldw r9, 40(sp)
- 400d8: da400a17 ldw r9,40(sp)
- ldw r10, 44(sp)
- 400dc: da800b17 ldw r10,44(sp)
- ldw r11, 48(sp)
- 400e0: dac00c17 ldw r11,48(sp)
- ldw r12, 52(sp)
- 400e4: db000d17 ldw r12,52(sp)
- ldw r13, 56(sp)
- 400e8: db400e17 ldw r13,56(sp)
- ldw r14, 60(sp)
- 400ec: db800f17 ldw r14,60(sp)
- ldw r15, 64(sp)
- 400f0: dbc01017 ldw r15,64(sp)
- stw et, %gprel(alt_stack_limit_value)(gp)
- stw zero, %gprel(alt_exception_old_stack_limit)(gp)
- #endif /* ALT_STACK_CHECK */
- ldw sp, 76(sp)
- #else /* ALT_EXCEPTION_STACK disabled */
- addi sp, sp, 76
- 400f4: dec01304 addi sp,sp,76
- /*
- * Return to the interrupted instruction.
- */
- eret
- 400f8: ef80083a eret
- 000400fc <alt_irq_handler>:
- * instruction is present if the macro ALT_CI_INTERRUPT_VECTOR defined.
- */
- void alt_irq_handler (void) __attribute__ ((section (".exceptions")));
- void alt_irq_handler (void)
- {
- 400fc: defff904 addi sp,sp,-28
- 40100: dfc00615 stw ra,24(sp)
- 40104: df000515 stw fp,20(sp)
- 40108: df000504 addi fp,sp,20
-
- /*
- * Notify the operating system that we are at interrupt level.
- */
-
- ALT_OS_INT_ENTER();
- 4010c: 0001883a nop
- #ifndef NIOS2_EIC_PRESENT
- static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void)
- {
- alt_u32 active;
- NIOS2_READ_IPENDING (active);
- 40110: 0005313a rdctl r2,ipending
- 40114: e0bffe15 stw r2,-8(fp)
- return active;
- 40118: e0bffe17 ldw r2,-8(fp)
- * Consider the case where the high priority interupt is asserted during
- * the interrupt entry sequence for a lower priority interrupt to see why
- * this is the case.
- */
- active = alt_irq_pending ();
- 4011c: e0bffb15 stw r2,-20(fp)
- do
- {
- i = 0;
- 40120: e03ffd15 stw zero,-12(fp)
- mask = 1;
- 40124: 00800044 movi r2,1
- 40128: e0bffc15 stw r2,-16(fp)
- * called to clear the interrupt condition.
- */
- do
- {
- if (active & mask)
- 4012c: e0fffb17 ldw r3,-20(fp)
- 40130: e0bffc17 ldw r2,-16(fp)
- 40134: 1884703a and r2,r3,r2
- 40138: 10001426 beq r2,zero,4018c <alt_irq_handler+0x90>
- {
- #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
- alt_irq[i].handler(alt_irq[i].context);
- 4013c: 00800174 movhi r2,5
- 40140: 1097c904 addi r2,r2,24356
- 40144: e0fffd17 ldw r3,-12(fp)
- 40148: 180690fa slli r3,r3,3
- 4014c: 10c5883a add r2,r2,r3
- 40150: 10c00017 ldw r3,0(r2)
- 40154: 00800174 movhi r2,5
- 40158: 1097c904 addi r2,r2,24356
- 4015c: e13ffd17 ldw r4,-12(fp)
- 40160: 200890fa slli r4,r4,3
- 40164: 1105883a add r2,r2,r4
- 40168: 10800104 addi r2,r2,4
- 4016c: 10800017 ldw r2,0(r2)
- 40170: 1009883a mov r4,r2
- 40174: 183ee83a callr r3
- #else
- alt_irq[i].handler(alt_irq[i].context, i);
- #endif
- break;
- 40178: 0001883a nop
- #ifndef NIOS2_EIC_PRESENT
- static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_irq_pending (void)
- {
- alt_u32 active;
- NIOS2_READ_IPENDING (active);
- 4017c: 0005313a rdctl r2,ipending
- 40180: e0bfff15 stw r2,-4(fp)
- return active;
- 40184: e0bfff17 ldw r2,-4(fp)
- 40188: 00000706 br 401a8 <alt_irq_handler+0xac>
- }
- mask <<= 1;
- 4018c: e0bffc17 ldw r2,-16(fp)
- 40190: 1085883a add r2,r2,r2
- 40194: e0bffc15 stw r2,-16(fp)
- i++;
- 40198: e0bffd17 ldw r2,-12(fp)
- 4019c: 10800044 addi r2,r2,1
- 401a0: e0bffd15 stw r2,-12(fp)
- } while (1);
- 401a4: 003fe106 br 4012c <__alt_data_end+0xfffce12c>
- active = alt_irq_pending ();
- 401a8: e0bffb15 stw r2,-20(fp)
-
- } while (active);
- 401ac: e0bffb17 ldw r2,-20(fp)
- 401b0: 103fdb1e bne r2,zero,40120 <__alt_data_end+0xfffce120>
- /*
- * Notify the operating system that interrupt processing is complete.
- */
- ALT_OS_INT_EXIT();
- 401b4: 0001883a nop
- }
- 401b8: 0001883a nop
- 401bc: e037883a mov sp,fp
- 401c0: dfc00117 ldw ra,4(sp)
- 401c4: df000017 ldw fp,0(sp)
- 401c8: dec00204 addi sp,sp,8
- 401cc: f800283a ret
- 000401d0 <alt_instruction_exception_entry>:
- * that handler if it has been registered. Absent a handler, it will
- * break break or hang as discussed below.
- */
- int
- alt_instruction_exception_entry (alt_u32 exception_pc)
- {
- 401d0: defffb04 addi sp,sp,-20
- 401d4: dfc00415 stw ra,16(sp)
- 401d8: df000315 stw fp,12(sp)
- 401dc: df000304 addi fp,sp,12
- 401e0: e13fff15 stw r4,-4(fp)
- cause = ( (cause & NIOS2_EXCEPTION_REG_CAUSE_MASK) >>
- NIOS2_EXCEPTION_REG_CAUSE_OFST );
- NIOS2_READ_BADADDR(badaddr);
- #else
- cause = NIOS2_EXCEPTION_CAUSE_NOT_PRESENT;
- 401e4: 00bfffc4 movi r2,-1
- 401e8: e0bffd15 stw r2,-12(fp)
- badaddr = 0;
- 401ec: e03ffe15 stw zero,-8(fp)
- #endif /* NIOS2_HAS_EXTRA_EXCEPTION_INFO */
- if(alt_instruction_exception_handler) {
- 401f0: d0a72817 ldw r2,-25440(gp)
- 401f4: 10000726 beq r2,zero,40214 <alt_instruction_exception_entry+0x44>
- * Call handler. Its return value indicates whether the exception-causing
- * instruction should be re-issued. The code that called us,
- * alt_eceptions_entry.S, will look at this value and adjust the ea
- * register as necessary
- */
- return alt_instruction_exception_handler(cause, exception_pc, badaddr);
- 401f8: d0a72817 ldw r2,-25440(gp)
- 401fc: e0fffd17 ldw r3,-12(fp)
- 40200: e1bffe17 ldw r6,-8(fp)
- 40204: e17fff17 ldw r5,-4(fp)
- 40208: 1809883a mov r4,r3
- 4020c: 103ee83a callr r2
- 40210: 00000206 br 4021c <alt_instruction_exception_entry+0x4c>
- * (a peripheral which negates its interrupt output before its
- * interrupt handler has been executed will cause spurious interrupts)
- */
- else {
- #ifdef NIOS2_HAS_DEBUG_STUB
- NIOS2_BREAK();
- 40214: 003da03a break 0
- ;
- #endif /* NIOS2_HAS_DEBUG_STUB */
- }
- /* We should not get here. Remove compiler warning. */
- return NIOS2_EXCEPTION_RETURN_REISSUE_INST;
- 40218: 0005883a mov r2,zero
- }
- 4021c: e037883a mov sp,fp
- 40220: dfc00117 ldw ra,4(sp)
- 40224: df000017 ldw fp,0(sp)
- 40228: dec00204 addi sp,sp,8
- 4022c: f800283a ret
- Disassembly of section .text:
- 00040230 <_start>:
- /*
- * Now that the caches are initialized, set up the stack pointer and global pointer.
- * The values provided by the linker are assumed to be correctly aligned.
- */
- movhi sp, %hi(__alt_stack_pointer)
- 40230: 06c001f4 movhi sp,7
- ori sp, sp, %lo(__alt_stack_pointer)
- 40234: dec80014 ori sp,sp,8192
- movhi gp, %hi(_gp)
- 40238: 06800174 movhi gp,5
- ori gp, gp, %lo(_gp)
- 4023c: d6b08a14 ori gp,gp,49704
- */
- #ifndef ALT_SIM_OPTIMIZE
- /* Log that the BSS is about to be cleared. */
- ALT_LOG_PUTS(alt_log_msg_bss)
- movhi r2, %hi(__bss_start)
- 40240: 00800174 movhi r2,5
- ori r2, r2, %lo(__bss_start)
- 40244: 1097a114 ori r2,r2,24196
- movhi r3, %hi(__bss_end)
- 40248: 00c00174 movhi r3,5
- ori r3, r3, %lo(__bss_end)
- 4024c: 18d80914 ori r3,r3,24612
- beq r2, r3, 1f
- 40250: 10c00326 beq r2,r3,40260 <_start+0x30>
- 0:
- stw zero, (r2)
- 40254: 10000015 stw zero,0(r2)
- addi r2, r2, 4
- 40258: 10800104 addi r2,r2,4
- bltu r2, r3, 0b
- 4025c: 10fffd36 bltu r2,r3,40254 <__alt_data_end+0xfffce254>
- * section aren't defined until alt_load() has been called).
- */
- mov et, zero
- #endif
- call alt_load
- 40260: 004ebdc0 call 4ebdc <alt_load>
- /* Log that alt_main is about to be called. */
- ALT_LOG_PUTS(alt_log_msg_alt_main)
- /* Call the C entry point. It should never return. */
- call alt_main
- 40264: 004ed780 call 4ed78 <alt_main>
- 00040268 <alt_after_alt_main>:
- /* Wait in infinite loop in case alt_main does return. */
- alt_after_alt_main:
- br alt_after_alt_main
- 40268: 003fff06 br 40268 <__alt_data_end+0xfffce268>
- 0004026c <draw>:
- #define COLS 12
- #define ROWS 8
- int screen[ROWS];
- void draw() {
- 4026c: defffd04 addi sp,sp,-12
- 40270: df000215 stw fp,8(sp)
- 40274: df000204 addi fp,sp,8
- int row,i;
- for (i = 0 ; i < ROWS ; i++) {
- 40278: e03ffe15 stw zero,-8(fp)
- 4027c: 00001206 br 402c8 <draw+0x5c>
- row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data)
- 40280: 00800174 movhi r2,5
- 40284: 1097bd04 addi r2,r2,24308
- 40288: e0fffe17 ldw r3,-8(fp)
- 4028c: 18c7883a add r3,r3,r3
- 40290: 18c7883a add r3,r3,r3
- 40294: 10c5883a add r2,r2,r3
- 40298: 10c00017 ldw r3,0(r2)
- 4029c: e0bffe17 ldw r2,-8(fp)
- 402a0: 1004933a slli r2,r2,12
- 402a4: 1884b03a or r2,r3,r2
- 402a8: e0bfff15 stw r2,-4(fp)
- IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row);
- 402ac: 00800234 movhi r2,8
- 402b0: 10841404 addi r2,r2,4176
- 402b4: e0ffff17 ldw r3,-4(fp)
- 402b8: 10c00035 stwio r3,0(r2)
- int screen[ROWS];
- void draw() {
- int row,i;
- for (i = 0 ; i < ROWS ; i++) {
- 402bc: e0bffe17 ldw r2,-8(fp)
- 402c0: 10800044 addi r2,r2,1
- 402c4: e0bffe15 stw r2,-8(fp)
- 402c8: e0bffe17 ldw r2,-8(fp)
- 402cc: 10800210 cmplti r2,r2,8
- 402d0: 103feb1e bne r2,zero,40280 <__alt_data_end+0xfffce280>
- row = screen[i] | (i<<12); //send format: (3bits row indicator,12bits data)
- IOWR_ALTERA_AVALON_PIO_DATA(PIO_MATRIX_BASE, row);
- }
- }
- 402d4: 0001883a nop
- 402d8: e037883a mov sp,fp
- 402dc: df000017 ldw fp,0(sp)
- 402e0: dec00104 addi sp,sp,4
- 402e4: f800283a ret
- 000402e8 <bin>:
- void bin(unsigned n)
- {
- 402e8: defffd04 addi sp,sp,-12
- 402ec: dfc00215 stw ra,8(sp)
- 402f0: df000115 stw fp,4(sp)
- 402f4: df000104 addi fp,sp,4
- 402f8: e13fff15 stw r4,-4(fp)
- if (n > 1)
- 402fc: e0bfff17 ldw r2,-4(fp)
- 40300: 108000b0 cmpltui r2,r2,2
- 40304: 1000041e bne r2,zero,40318 <bin+0x30>
- bin(n >> 1);
- 40308: e0bfff17 ldw r2,-4(fp)
- 4030c: 1004d07a srli r2,r2,1
- 40310: 1009883a mov r4,r2
- 40314: 00402e80 call 402e8 <bin>
- printf("%d", n & 1);
- 40318: e0bfff17 ldw r2,-4(fp)
- 4031c: 1080004c andi r2,r2,1
- 40320: 100b883a mov r5,r2
- 40324: 01000174 movhi r4,5
- 40328: 21080e04 addi r4,r4,8248
- 4032c: 00420880 call 42088 <printf>
- }
- 40330: 0001883a nop
- 40334: e037883a mov sp,fp
- 40338: dfc00117 ldw ra,4(sp)
- 4033c: df000017 ldw fp,0(sp)
- 40340: dec00204 addi sp,sp,8
- 40344: f800283a ret
- 00040348 <draw_console>:
- void draw_console() {
- 40348: defffd04 addi sp,sp,-12
- 4034c: dfc00215 stw ra,8(sp)
- 40350: df000115 stw fp,4(sp)
- 40354: df000104 addi fp,sp,4
- int i;
- for (i = 0 ; i < ROWS ; i++) {
- 40358: e03fff15 stw zero,-4(fp)
- 4035c: 00000e06 br 40398 <draw_console+0x50>
- bin(screen[i]);
- 40360: 00800174 movhi r2,5
- 40364: 1097bd04 addi r2,r2,24308
- 40368: e0ffff17 ldw r3,-4(fp)
- 4036c: 18c7883a add r3,r3,r3
- 40370: 18c7883a add r3,r3,r3
- 40374: 10c5883a add r2,r2,r3
- 40378: 10800017 ldw r2,0(r2)
- 4037c: 1009883a mov r4,r2
- 40380: 00402e80 call 402e8 <bin>
- printf("\n");
- 40384: 01000284 movi r4,10
- 40388: 00420cc0 call 420cc <putchar>
- }
- void draw_console() {
- int i;
- for (i = 0 ; i < ROWS ; i++) {
- 4038c: e0bfff17 ldw r2,-4(fp)
- 40390: 10800044 addi r2,r2,1
- 40394: e0bfff15 stw r2,-4(fp)
- 40398: e0bfff17 ldw r2,-4(fp)
- 4039c: 10800210 cmplti r2,r2,8
- 403a0: 103fef1e bne r2,zero,40360 <__alt_data_end+0xfffce360>
- bin(screen[i]);
- printf("\n");
- }
- }
- 403a4: 0001883a nop
- 403a8: e037883a mov sp,fp
- 403ac: dfc00117 ldw ra,4(sp)
- 403b0: df000017 ldw fp,0(sp)
- 403b4: dec00204 addi sp,sp,8
- 403b8: f800283a ret
- 000403bc <set_pixel>:
- void set_pixel(int x, int y) {
- 403bc: defffd04 addi sp,sp,-12
- 403c0: df000215 stw fp,8(sp)
- 403c4: df000204 addi fp,sp,8
- 403c8: e13ffe15 stw r4,-8(fp)
- 403cc: e17fff15 stw r5,-4(fp)
- screen[y] = screen[y] & ~(1<<x) | (1<<x);
- 403d0: 00c00044 movi r3,1
- 403d4: e0bffe17 ldw r2,-8(fp)
- 403d8: 1888983a sll r4,r3,r2
- 403dc: 00800174 movhi r2,5
- 403e0: 1097bd04 addi r2,r2,24308
- 403e4: e0ffff17 ldw r3,-4(fp)
- 403e8: 18c7883a add r3,r3,r3
- 403ec: 18c7883a add r3,r3,r3
- 403f0: 10c5883a add r2,r2,r3
- 403f4: 10800017 ldw r2,0(r2)
- 403f8: 2088b03a or r4,r4,r2
- 403fc: 00800174 movhi r2,5
- 40400: 1097bd04 addi r2,r2,24308
- 40404: e0ffff17 ldw r3,-4(fp)
- 40408: 18c7883a add r3,r3,r3
- 4040c: 18c7883a add r3,r3,r3
- 40410: 10c5883a add r2,r2,r3
- 40414: 11000015 stw r4,0(r2)
- }
- 40418: 0001883a nop
- 4041c: e037883a mov sp,fp
- 40420: df000017 ldw fp,0(sp)
- 40424: dec00104 addi sp,sp,4
- 40428: f800283a ret
- 0004042c <reset_screen>:
- void reset_screen() {
- 4042c: defffd04 addi sp,sp,-12
- 40430: dfc00215 stw ra,8(sp)
- 40434: df000115 stw fp,4(sp)
- 40438: df000104 addi fp,sp,4
- int i;
- for (i=0;i<ROWS;i++) {
- 4043c: e03fff15 stw zero,-4(fp)
- 40440: 00000d06 br 40478 <reset_screen+0x4c>
- screen[i] = 0;
- 40444: 00800174 movhi r2,5
- 40448: 1097bd04 addi r2,r2,24308
- 4044c: e0ffff17 ldw r3,-4(fp)
- 40450: 18c7883a add r3,r3,r3
- 40454: 18c7883a add r3,r3,r3
- 40458: 10c5883a add r2,r2,r3
- 4045c: 10000015 stw zero,0(r2)
- set_pixel(12,i);
- 40460: e17fff17 ldw r5,-4(fp)
- 40464: 01000304 movi r4,12
- 40468: 00403bc0 call 403bc <set_pixel>
- screen[y] = screen[y] & ~(1<<x) | (1<<x);
- }
- void reset_screen() {
- int i;
- for (i=0;i<ROWS;i++) {
- 4046c: e0bfff17 ldw r2,-4(fp)
- 40470: 10800044 addi r2,r2,1
- 40474: e0bfff15 stw r2,-4(fp)
- 40478: e0bfff17 ldw r2,-4(fp)
- 4047c: 10800210 cmplti r2,r2,8
- 40480: 103ff01e bne r2,zero,40444 <__alt_data_end+0xfffce444>
- screen[i] = 0;
- set_pixel(12,i);
- }
- }
- 40484: 0001883a nop
- 40488: e037883a mov sp,fp
- 4048c: dfc00117 ldw ra,4(sp)
- 40490: df000017 ldw fp,0(sp)
- 40494: dec00204 addi sp,sp,8
- 40498: f800283a ret
- 0004049c <reset_pos>:
- struct Ball ball;
- struct Paddle left_paddle;
- struct Paddle right_paddle;
- void reset_pos() {
- 4049c: deffff04 addi sp,sp,-4
- 404a0: df000015 stw fp,0(sp)
- 404a4: d839883a mov fp,sp
- ball.x = COLS/2 - 1;
- 404a8: 00800174 movhi r2,5
- 404ac: 1097c504 addi r2,r2,24340
- 404b0: 00d02834 movhi r3,16544
- 404b4: 10c00015 stw r3,0(r2)
- ball.y = ROWS/2 - 1;
- 404b8: 00800174 movhi r2,5
- 404bc: 1097c504 addi r2,r2,24340
- 404c0: 00d01034 movhi r3,16448
- 404c4: 10c00115 stw r3,4(r2)
- ball.vel_x = - 1;
- 404c8: 00800174 movhi r2,5
- 404cc: 1097c504 addi r2,r2,24340
- 404d0: 00efe034 movhi r3,49024
- 404d4: 10c00215 stw r3,8(r2)
- ball.vel_y = - 1;
- 404d8: 00800174 movhi r2,5
- 404dc: 1097c504 addi r2,r2,24340
- 404e0: 00efe034 movhi r3,49024
- 404e4: 10c00315 stw r3,12(r2)
- left_paddle.y = 0;
- 404e8: d0271715 stw zero,-25508(gp)
- left_paddle.length = 3;
- 404ec: 008000c4 movi r2,3
- 404f0: d0a71815 stw r2,-25504(gp)
- right_paddle.y = 0;
- 404f4: d0271915 stw zero,-25500(gp)
- right_paddle.length = 3;
- 404f8: 008000c4 movi r2,3
- 404fc: d0a71a15 stw r2,-25496(gp)
- }
- 40500: 0001883a nop
- 40504: e037883a mov sp,fp
- 40508: df000017 ldw fp,0(sp)
- 4050c: dec00104 addi sp,sp,4
- 40510: f800283a ret
- 00040514 <game>:
- void game() {
- 40514: defff704 addi sp,sp,-36
- 40518: dfc00815 stw ra,32(sp)
- 4051c: df000715 stw fp,28(sp)
- 40520: dc400615 stw r17,24(sp)
- 40524: dc000515 stw r16,20(sp)
- 40528: df000704 addi fp,sp,28
- int i,k;
- unsigned buttons;
- k=0;
- 4052c: e03ffc15 stw zero,-16(fp)
- reset_pos();
- 40530: 004049c0 call 4049c <reset_pos>
- while (1){
- buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE);
- 40534: 00800234 movhi r2,8
- 40538: 10841004 addi r2,r2,4160
- 4053c: 10800037 ldwio r2,0(r2)
- 40540: 0084303a nor r2,zero,r2
- 40544: e0bffd15 stw r2,-12(fp)
- //buttons = 10;
- if (buttons & (1<<LEFT_UP_BUTTON)){
- 40548: e0bffd17 ldw r2,-12(fp)
- 4054c: 1080004c andi r2,r2,1
- 40550: 10001926 beq r2,zero,405b8 <game+0xa4>
- left_paddle.y = MAX(left_paddle.y - (10 * TICK),0);
- 40554: d0e71717 ldw r3,-25508(gp)
- 40558: 008f7374 movhi r2,15821
- 4055c: 10b33304 addi r2,r2,-13108
- 40560: 1885ffb2 custom 254,r2,r3,r2
- 40564: 000b883a mov r5,zero
- 40568: 1009883a mov r4,r2
- 4056c: 004113c0 call 4113c <__gesf2>
- 40570: 0080050e bge zero,r2,40588 <game+0x74>
- 40574: d0e71717 ldw r3,-25508(gp)
- 40578: 008f7374 movhi r2,15821
- 4057c: 10b33304 addi r2,r2,-13108
- 40580: 1885ffb2 custom 254,r2,r3,r2
- 40584: 00000106 br 4058c <game+0x78>
- 40588: 0005883a mov r2,zero
- 4058c: d0a71715 stw r2,-25508(gp)
- printf("%f\n",left_paddle.y);
- 40590: d0a71717 ldw r2,-25508(gp)
- 40594: 1009883a mov r4,r2
- 40598: 0041dec0 call 41dec <__extendsfdf2>
- 4059c: 100d883a mov r6,r2
- 405a0: 180f883a mov r7,r3
- 405a4: 300b883a mov r5,r6
- 405a8: 380d883a mov r6,r7
- 405ac: 01000174 movhi r4,5
- 405b0: 21080f04 addi r4,r4,8252
- 405b4: 00420880 call 42088 <printf>
- }
- if (buttons & (1<<LEFT_DOWN_BUTTON)){
- 405b8: e0bffd17 ldw r2,-12(fp)
- 405bc: 1080008c andi r2,r2,2
- 405c0: 10002426 beq r2,zero,40654 <game+0x140>
- left_paddle.y = MIN(left_paddle.y + (10 * TICK), ROWS - (left_paddle.length));
- 405c4: d0e71717 ldw r3,-25508(gp)
- 405c8: 008f7374 movhi r2,15821
- 405cc: 10b33304 addi r2,r2,-13108
- 405d0: 18a1ff72 custom 253,r16,r3,r2
- 405d4: d0a71817 ldw r2,-25504(gp)
- 405d8: 00c00204 movi r3,8
- 405dc: 1885c83a sub r2,r3,r2
- 405e0: 1009883a mov r4,r2
- 405e4: 00412c00 call 412c0 <__floatsisf>
- 405e8: 1007883a mov r3,r2
- 405ec: 180b883a mov r5,r3
- 405f0: 8009883a mov r4,r16
- 405f4: 00411f80 call 411f8 <__lesf2>
- 405f8: 1000050e bge r2,zero,40610 <game+0xfc>
- 405fc: d0e71717 ldw r3,-25508(gp)
- 40600: 008f7374 movhi r2,15821
- 40604: 10b33304 addi r2,r2,-13108
- 40608: 1887ff72 custom 253,r3,r3,r2
- 4060c: 00000606 br 40628 <game+0x114>
- 40610: d0a71817 ldw r2,-25504(gp)
- 40614: 00c00204 movi r3,8
- 40618: 1885c83a sub r2,r3,r2
- 4061c: 1009883a mov r4,r2
- 40620: 00412c00 call 412c0 <__floatsisf>
- 40624: 1007883a mov r3,r2
- 40628: d0e71715 stw r3,-25508(gp)
- printf("%f\n",left_paddle.y);
- 4062c: d0a71717 ldw r2,-25508(gp)
- 40630: 1009883a mov r4,r2
- 40634: 0041dec0 call 41dec <__extendsfdf2>
- 40638: 100d883a mov r6,r2
- 4063c: 180f883a mov r7,r3
- 40640: 300b883a mov r5,r6
- 40644: 380d883a mov r6,r7
- 40648: 01000174 movhi r4,5
- 4064c: 21080f04 addi r4,r4,8252
- 40650: 00420880 call 42088 <printf>
- }
- if (buttons & (1<<RIGTH_UP_BUTTON)){
- 40654: e0bffd17 ldw r2,-12(fp)
- 40658: 1080010c andi r2,r2,4
- 4065c: 10000f26 beq r2,zero,4069c <game+0x188>
- right_paddle.y = MAX(right_paddle.y - (10 * TICK), 0);
- 40660: d0e71917 ldw r3,-25500(gp)
- 40664: 008f7374 movhi r2,15821
- 40668: 10b33304 addi r2,r2,-13108
- 4066c: 1885ffb2 custom 254,r2,r3,r2
- 40670: 000b883a mov r5,zero
- 40674: 1009883a mov r4,r2
- 40678: 004113c0 call 4113c <__gesf2>
- 4067c: 0080050e bge zero,r2,40694 <game+0x180>
- 40680: d0e71917 ldw r3,-25500(gp)
- 40684: 008f7374 movhi r2,15821
- 40688: 10b33304 addi r2,r2,-13108
- 4068c: 1885ffb2 custom 254,r2,r3,r2
- 40690: 00000106 br 40698 <game+0x184>
- 40694: 0005883a mov r2,zero
- 40698: d0a71915 stw r2,-25500(gp)
- }
- if (buttons & (1<<RIGTH_DOWN_BUTTON)){
- 4069c: e0bffd17 ldw r2,-12(fp)
- 406a0: 1080020c andi r2,r2,8
- 406a4: 10001a26 beq r2,zero,40710 <game+0x1fc>
- right_paddle.y = MIN(right_paddle.y + (10 * TICK), ROWS - (right_paddle.length));
- 406a8: d0e71917 ldw r3,-25500(gp)
- 406ac: 008f7374 movhi r2,15821
- 406b0: 10b33304 addi r2,r2,-13108
- 406b4: 18a1ff72 custom 253,r16,r3,r2
- 406b8: d0a71a17 ldw r2,-25496(gp)
- 406bc: 00c00204 movi r3,8
- 406c0: 1885c83a sub r2,r3,r2
- 406c4: 1009883a mov r4,r2
- 406c8: 00412c00 call 412c0 <__floatsisf>
- 406cc: 1007883a mov r3,r2
- 406d0: 180b883a mov r5,r3
- 406d4: 8009883a mov r4,r16
- 406d8: 00411f80 call 411f8 <__lesf2>
- 406dc: 1000050e bge r2,zero,406f4 <game+0x1e0>
- 406e0: d0e71917 ldw r3,-25500(gp)
- 406e4: 008f7374 movhi r2,15821
- 406e8: 10b33304 addi r2,r2,-13108
- 406ec: 1887ff72 custom 253,r3,r3,r2
- 406f0: 00000606 br 4070c <game+0x1f8>
- 406f4: d0a71a17 ldw r2,-25496(gp)
- 406f8: 00c00204 movi r3,8
- 406fc: 1885c83a sub r2,r3,r2
- 40700: 1009883a mov r4,r2
- 40704: 00412c00 call 412c0 <__floatsisf>
- 40708: 1007883a mov r3,r2
- 4070c: d0e71915 stw r3,-25500(gp)
- }
- ball.y = MAX(MIN(ball.y + ball.vel_y * TICK,ROWS - 1),0);
- 40710: 00800174 movhi r2,5
- 40714: 1097c504 addi r2,r2,24340
- 40718: 10c00117 ldw r3,4(r2)
- 4071c: 00800174 movhi r2,5
- 40720: 1097c504 addi r2,r2,24340
- 40724: 11000317 ldw r4,12(r2)
- 40728: 008f0934 movhi r2,15396
- 4072c: 10b5c284 addi r2,r2,-10486
- 40730: 2085ff32 custom 252,r2,r4,r2
- 40734: 1885ff72 custom 253,r2,r3,r2
- 40738: 01503834 movhi r5,16608
- 4073c: 1009883a mov r4,r2
- 40740: 00411f80 call 411f8 <__lesf2>
- 40744: 1000110e bge r2,zero,4078c <game+0x278>
- 40748: 00800174 movhi r2,5
- 4074c: 1097c504 addi r2,r2,24340
- 40750: 10c00117 ldw r3,4(r2)
- 40754: 00800174 movhi r2,5
- 40758: 1097c504 addi r2,r2,24340
- 4075c: 11000317 ldw r4,12(r2)
- 40760: 008f0934 movhi r2,15396
- 40764: 10b5c284 addi r2,r2,-10486
- 40768: 2085ff32 custom 252,r2,r4,r2
- 4076c: 1885ff72 custom 253,r2,r3,r2
- 40770: 04000044 movi r16,1
- 40774: 000b883a mov r5,zero
- 40778: 1009883a mov r4,r2
- 4077c: 004113c0 call 4113c <__gesf2>
- 40780: 00800316 blt zero,r2,40790 <game+0x27c>
- 40784: 0021883a mov r16,zero
- 40788: 00000106 br 40790 <game+0x27c>
- 4078c: 04000044 movi r16,1
- 40790: 80803fcc andi r2,r16,255
- 40794: 10001b26 beq r2,zero,40804 <game+0x2f0>
- 40798: 00800174 movhi r2,5
- 4079c: 1097c504 addi r2,r2,24340
- 407a0: 10c00117 ldw r3,4(r2)
- 407a4: 00800174 movhi r2,5
- 407a8: 1097c504 addi r2,r2,24340
- 407ac: 11000317 ldw r4,12(r2)
- 407b0: 008f0934 movhi r2,15396
- 407b4: 10b5c284 addi r2,r2,-10486
- 407b8: 2085ff32 custom 252,r2,r4,r2
- 407bc: 1885ff72 custom 253,r2,r3,r2
- 407c0: 01503834 movhi r5,16608
- 407c4: 1009883a mov r4,r2
- 407c8: 00411f80 call 411f8 <__lesf2>
- 407cc: 10000b0e bge r2,zero,407fc <game+0x2e8>
- 407d0: 00800174 movhi r2,5
- 407d4: 1097c504 addi r2,r2,24340
- 407d8: 10c00117 ldw r3,4(r2)
- 407dc: 00800174 movhi r2,5
- 407e0: 1097c504 addi r2,r2,24340
- 407e4: 11000317 ldw r4,12(r2)
- 407e8: 008f0934 movhi r2,15396
- 407ec: 10b5c284 addi r2,r2,-10486
- 407f0: 2085ff32 custom 252,r2,r4,r2
- 407f4: 1887ff72 custom 253,r3,r3,r2
- 407f8: 00000306 br 40808 <game+0x2f4>
- 407fc: 00d03834 movhi r3,16608
- 40800: 00000106 br 40808 <game+0x2f4>
- 40804: 0007883a mov r3,zero
- 40808: 00800174 movhi r2,5
- 4080c: 1097c504 addi r2,r2,24340
- 40810: 10c00115 stw r3,4(r2)
- if (ball.y == 0 || ball.y == ROWS - 1){
- 40814: 00800174 movhi r2,5
- 40818: 1097c504 addi r2,r2,24340
- 4081c: 10c00117 ldw r3,4(r2)
- 40820: 000b883a mov r5,zero
- 40824: 1809883a mov r4,r3
- 40828: 00410c40 call 410c4 <__eqsf2>
- 4082c: 10000726 beq r2,zero,4084c <game+0x338>
- 40830: 00800174 movhi r2,5
- 40834: 1097c504 addi r2,r2,24340
- 40838: 10c00117 ldw r3,4(r2)
- 4083c: 01503834 movhi r5,16608
- 40840: 1809883a mov r4,r3
- 40844: 00410c40 call 410c4 <__eqsf2>
- 40848: 1000071e bne r2,zero,40868 <game+0x354>
- ball.vel_y = -ball.vel_y;
- 4084c: 00800174 movhi r2,5
- 40850: 1097c504 addi r2,r2,24340
- 40854: 10c00317 ldw r3,12(r2)
- 40858: 18e0003c xorhi r3,r3,32768
- 4085c: 00800174 movhi r2,5
- 40860: 1097c504 addi r2,r2,24340
- 40864: 10c00315 stw r3,12(r2)
- }
- ball.x = MAX(MIN(ball.x + ball.vel_x * TICK,COLS - 1),0);
- 40868: 00800174 movhi r2,5
- 4086c: 1097c504 addi r2,r2,24340
- 40870: 10c00017 ldw r3,0(r2)
- 40874: 00800174 movhi r2,5
- 40878: 1097c504 addi r2,r2,24340
- 4087c: 11000217 ldw r4,8(r2)
- 40880: 008f0934 movhi r2,15396
- 40884: 10b5c284 addi r2,r2,-10486
- 40888: 2085ff32 custom 252,r2,r4,r2
- 4088c: 1885ff72 custom 253,r2,r3,r2
- 40890: 01504c34 movhi r5,16688
- 40894: 1009883a mov r4,r2
- 40898: 00411f80 call 411f8 <__lesf2>
- 4089c: 1000110e bge r2,zero,408e4 <game+0x3d0>
- 408a0: 00800174 movhi r2,5
- 408a4: 1097c504 addi r2,r2,24340
- 408a8: 10c00017 ldw r3,0(r2)
- 408ac: 00800174 movhi r2,5
- 408b0: 1097c504 addi r2,r2,24340
- 408b4: 11000217 ldw r4,8(r2)
- 408b8: 008f0934 movhi r2,15396
- 408bc: 10b5c284 addi r2,r2,-10486
- 408c0: 2085ff32 custom 252,r2,r4,r2
- 408c4: 1885ff72 custom 253,r2,r3,r2
- 408c8: 04000044 movi r16,1
- 408cc: 000b883a mov r5,zero
- 408d0: 1009883a mov r4,r2
- 408d4: 004113c0 call 4113c <__gesf2>
- 408d8: 00800316 blt zero,r2,408e8 <game+0x3d4>
- 408dc: 0021883a mov r16,zero
- 408e0: 00000106 br 408e8 <game+0x3d4>
- 408e4: 04000044 movi r16,1
- 408e8: 80803fcc andi r2,r16,255
- 408ec: 10001b26 beq r2,zero,4095c <game+0x448>
- 408f0: 00800174 movhi r2,5
- 408f4: 1097c504 addi r2,r2,24340
- 408f8: 10c00017 ldw r3,0(r2)
- 408fc: 00800174 movhi r2,5
- 40900: 1097c504 addi r2,r2,24340
- 40904: 11000217 ldw r4,8(r2)
- 40908: 008f0934 movhi r2,15396
- 4090c: 10b5c284 addi r2,r2,-10486
- 40910: 2085ff32 custom 252,r2,r4,r2
- 40914: 1885ff72 custom 253,r2,r3,r2
- 40918: 01504c34 movhi r5,16688
- 4091c: 1009883a mov r4,r2
- 40920: 00411f80 call 411f8 <__lesf2>
- 40924: 10000b0e bge r2,zero,40954 <game+0x440>
- 40928: 00800174 movhi r2,5
- 4092c: 1097c504 addi r2,r2,24340
- 40930: 10c00017 ldw r3,0(r2)
- 40934: 00800174 movhi r2,5
- 40938: 1097c504 addi r2,r2,24340
- 4093c: 11000217 ldw r4,8(r2)
- 40940: 008f0934 movhi r2,15396
- 40944: 10b5c284 addi r2,r2,-10486
- 40948: 2085ff32 custom 252,r2,r4,r2
- 4094c: 1887ff72 custom 253,r3,r3,r2
- 40950: 00000306 br 40960 <game+0x44c>
- 40954: 00d04c34 movhi r3,16688
- 40958: 00000106 br 40960 <game+0x44c>
- 4095c: 0007883a mov r3,zero
- 40960: 00800174 movhi r2,5
- 40964: 1097c504 addi r2,r2,24340
- 40968: 10c00015 stw r3,0(r2)
- if (ball.x <= 1){
- 4096c: 00800174 movhi r2,5
- 40970: 1097c504 addi r2,r2,24340
- 40974: 10c00017 ldw r3,0(r2)
- 40978: 014fe034 movhi r5,16256
- 4097c: 1809883a mov r4,r3
- 40980: 00411f80 call 411f8 <__lesf2>
- 40984: 00803d16 blt zero,r2,40a7c <game+0x568>
- if (ball.y >= left_paddle.y && ball.y <= (left_paddle.y + left_paddle.length -1)){
- 40988: 00800174 movhi r2,5
- 4098c: 1097c504 addi r2,r2,24340
- 40990: 10c00117 ldw r3,4(r2)
- 40994: d0a71717 ldw r2,-25508(gp)
- 40998: 100b883a mov r5,r2
- 4099c: 1809883a mov r4,r3
- 409a0: 004113c0 call 4113c <__gesf2>
- 409a4: 10001716 blt r2,zero,40a04 <game+0x4f0>
- 409a8: 00800174 movhi r2,5
- 409ac: 1097c504 addi r2,r2,24340
- 409b0: 14400117 ldw r17,4(r2)
- 409b4: d4271717 ldw r16,-25508(gp)
- 409b8: d0a71817 ldw r2,-25504(gp)
- 409bc: 1009883a mov r4,r2
- 409c0: 00412c00 call 412c0 <__floatsisf>
- 409c4: 1007883a mov r3,r2
- 409c8: 80c7ff72 custom 253,r3,r16,r3
- 409cc: 008fe034 movhi r2,16256
- 409d0: 1885ffb2 custom 254,r2,r3,r2
- 409d4: 100b883a mov r5,r2
- 409d8: 8809883a mov r4,r17
- 409dc: 00411f80 call 411f8 <__lesf2>
- 409e0: 00800816 blt zero,r2,40a04 <game+0x4f0>
- ball.vel_x = - ball.vel_x;
- 409e4: 00800174 movhi r2,5
- 409e8: 1097c504 addi r2,r2,24340
- 409ec: 10c00217 ldw r3,8(r2)
- 409f0: 18e0003c xorhi r3,r3,32768
- 409f4: 00800174 movhi r2,5
- 409f8: 1097c504 addi r2,r2,24340
- 409fc: 10c00215 stw r3,8(r2)
- 40a00: 00001e06 br 40a7c <game+0x568>
- } else {
- printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
- 40a04: 00800174 movhi r2,5
- 40a08: 1097c504 addi r2,r2,24340
- 40a0c: 10c00017 ldw r3,0(r2)
- 40a10: 1809883a mov r4,r3
- 40a14: 0041dec0 call 41dec <__extendsfdf2>
- 40a18: 1021883a mov r16,r2
- 40a1c: 1823883a mov r17,r3
- 40a20: 00800174 movhi r2,5
- 40a24: 1097c504 addi r2,r2,24340
- 40a28: 10c00117 ldw r3,4(r2)
- 40a2c: 1809883a mov r4,r3
- 40a30: 0041dec0 call 41dec <__extendsfdf2>
- 40a34: 1009883a mov r4,r2
- 40a38: 180b883a mov r5,r3
- 40a3c: d9000015 stw r4,0(sp)
- 40a40: d9400115 stw r5,4(sp)
- 40a44: 800d883a mov r6,r16
- 40a48: 880f883a mov r7,r17
- 40a4c: e17ffc17 ldw r5,-16(fp)
- 40a50: 01000174 movhi r4,5
- 40a54: 21081004 addi r4,r4,8256
- 40a58: 00420880 call 42088 <printf>
- printf("rigth player lost");
- 40a5c: 01000174 movhi r4,5
- 40a60: 21081704 addi r4,r4,8284
- 40a64: 00420880 call 42088 <printf>
- getchar();
- 40a68: d0a00117 ldw r2,-32764(gp)
- 40a6c: 10800117 ldw r2,4(r2)
- 40a70: 1009883a mov r4,r2
- 40a74: 0041fd00 call 41fd0 <getc>
- reset_pos();
- 40a78: 004049c0 call 4049c <reset_pos>
- }
- }
- if (ball.x >= COLS - 2){
- 40a7c: 00800174 movhi r2,5
- 40a80: 1097c504 addi r2,r2,24340
- 40a84: 10c00017 ldw r3,0(r2)
- 40a88: 01504834 movhi r5,16672
- 40a8c: 1809883a mov r4,r3
- 40a90: 004113c0 call 4113c <__gesf2>
- 40a94: 10003d16 blt r2,zero,40b8c <game+0x678>
- if (ball.y >= right_paddle.y && ball.y <= (right_paddle.y + right_paddle.length -1)){
- 40a98: 00800174 movhi r2,5
- 40a9c: 1097c504 addi r2,r2,24340
- 40aa0: 10c00117 ldw r3,4(r2)
- 40aa4: d0a71917 ldw r2,-25500(gp)
- 40aa8: 100b883a mov r5,r2
- 40aac: 1809883a mov r4,r3
- 40ab0: 004113c0 call 4113c <__gesf2>
- 40ab4: 10001716 blt r2,zero,40b14 <game+0x600>
- 40ab8: 00800174 movhi r2,5
- 40abc: 1097c504 addi r2,r2,24340
- 40ac0: 14400117 ldw r17,4(r2)
- 40ac4: d4271917 ldw r16,-25500(gp)
- 40ac8: d0a71a17 ldw r2,-25496(gp)
- 40acc: 1009883a mov r4,r2
- 40ad0: 00412c00 call 412c0 <__floatsisf>
- 40ad4: 1007883a mov r3,r2
- 40ad8: 80c7ff72 custom 253,r3,r16,r3
- 40adc: 008fe034 movhi r2,16256
- 40ae0: 1885ffb2 custom 254,r2,r3,r2
- 40ae4: 100b883a mov r5,r2
- 40ae8: 8809883a mov r4,r17
- 40aec: 00411f80 call 411f8 <__lesf2>
- 40af0: 00800816 blt zero,r2,40b14 <game+0x600>
- ball.vel_x = - ball.vel_x;
- 40af4: 00800174 movhi r2,5
- 40af8: 1097c504 addi r2,r2,24340
- 40afc: 10c00217 ldw r3,8(r2)
- 40b00: 18e0003c xorhi r3,r3,32768
- 40b04: 00800174 movhi r2,5
- 40b08: 1097c504 addi r2,r2,24340
- 40b0c: 10c00215 stw r3,8(r2)
- 40b10: 00001e06 br 40b8c <game+0x678>
- } else {
- printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
- 40b14: 00800174 movhi r2,5
- 40b18: 1097c504 addi r2,r2,24340
- 40b1c: 10c00017 ldw r3,0(r2)
- 40b20: 1809883a mov r4,r3
- 40b24: 0041dec0 call 41dec <__extendsfdf2>
- 40b28: 1021883a mov r16,r2
- 40b2c: 1823883a mov r17,r3
- 40b30: 00800174 movhi r2,5
- 40b34: 1097c504 addi r2,r2,24340
- 40b38: 10c00117 ldw r3,4(r2)
- 40b3c: 1809883a mov r4,r3
- 40b40: 0041dec0 call 41dec <__extendsfdf2>
- 40b44: 1009883a mov r4,r2
- 40b48: 180b883a mov r5,r3
- 40b4c: d9000015 stw r4,0(sp)
- 40b50: d9400115 stw r5,4(sp)
- 40b54: 800d883a mov r6,r16
- 40b58: 880f883a mov r7,r17
- 40b5c: e17ffc17 ldw r5,-16(fp)
- 40b60: 01000174 movhi r4,5
- 40b64: 21081004 addi r4,r4,8256
- 40b68: 00420880 call 42088 <printf>
- printf("left player lost");
- 40b6c: 01000174 movhi r4,5
- 40b70: 21081c04 addi r4,r4,8304
- 40b74: 00420880 call 42088 <printf>
- getchar();
- 40b78: d0a00117 ldw r2,-32764(gp)
- 40b7c: 10800117 ldw r2,4(r2)
- 40b80: 1009883a mov r4,r2
- 40b84: 0041fd00 call 41fd0 <getc>
- reset_pos();
- 40b88: 004049c0 call 4049c <reset_pos>
- }
- }
- if (ball.vel_x < 0) {
- 40b8c: 00800174 movhi r2,5
- 40b90: 1097c504 addi r2,r2,24340
- 40b94: 10c00217 ldw r3,8(r2)
- 40b98: 000b883a mov r5,zero
- 40b9c: 1809883a mov r4,r3
- 40ba0: 00411f80 call 411f8 <__lesf2>
- 40ba4: 10000a0e bge r2,zero,40bd0 <game+0x6bc>
- ball.vel_x = ball.vel_x - ACCELERATION;
- 40ba8: 00800174 movhi r2,5
- 40bac: 1097c504 addi r2,r2,24340
- 40bb0: 10c00217 ldw r3,8(r2)
- 40bb4: 008f7374 movhi r2,15821
- 40bb8: 10b33344 addi r2,r2,-13107
- 40bbc: 1887ffb2 custom 254,r3,r3,r2
- 40bc0: 00800174 movhi r2,5
- 40bc4: 1097c504 addi r2,r2,24340
- 40bc8: 10c00215 stw r3,8(r2)
- 40bcc: 00000906 br 40bf4 <game+0x6e0>
- } else {
- ball.vel_x = ball.vel_x + ACCELERATION;
- 40bd0: 00800174 movhi r2,5
- 40bd4: 1097c504 addi r2,r2,24340
- 40bd8: 10c00217 ldw r3,8(r2)
- 40bdc: 008f7374 movhi r2,15821
- 40be0: 10b33344 addi r2,r2,-13107
- 40be4: 1887ff72 custom 253,r3,r3,r2
- 40be8: 00800174 movhi r2,5
- 40bec: 1097c504 addi r2,r2,24340
- 40bf0: 10c00215 stw r3,8(r2)
- }
- if (ball.vel_y < 0) {
- 40bf4: 00800174 movhi r2,5
- 40bf8: 1097c504 addi r2,r2,24340
- 40bfc: 10c00317 ldw r3,12(r2)
- 40c00: 000b883a mov r5,zero
- 40c04: 1809883a mov r4,r3
- 40c08: 00411f80 call 411f8 <__lesf2>
- 40c0c: 10000a0e bge r2,zero,40c38 <game+0x724>
- ball.vel_y = ball.vel_y - ACCELERATION;
- 40c10: 00800174 movhi r2,5
- 40c14: 1097c504 addi r2,r2,24340
- 40c18: 10c00317 ldw r3,12(r2)
- 40c1c: 008f7374 movhi r2,15821
- 40c20: 10b33344 addi r2,r2,-13107
- 40c24: 1887ffb2 custom 254,r3,r3,r2
- 40c28: 00800174 movhi r2,5
- 40c2c: 1097c504 addi r2,r2,24340
- 40c30: 10c00315 stw r3,12(r2)
- 40c34: 00000906 br 40c5c <game+0x748>
- } else {
- ball.vel_y = ball.vel_y + ACCELERATION;
- 40c38: 00800174 movhi r2,5
- 40c3c: 1097c504 addi r2,r2,24340
- 40c40: 10c00317 ldw r3,12(r2)
- 40c44: 008f7374 movhi r2,15821
- 40c48: 10b33344 addi r2,r2,-13107
- 40c4c: 1887ff72 custom 253,r3,r3,r2
- 40c50: 00800174 movhi r2,5
- 40c54: 1097c504 addi r2,r2,24340
- 40c58: 10c00315 stw r3,12(r2)
- }
- reset_screen();
- 40c5c: 004042c0 call 4042c <reset_screen>
- for (i=0;i<left_paddle.length;i++) {
- 40c60: e03ffb15 stw zero,-20(fp)
- 40c64: 00002006 br 40ce8 <game+0x7d4>
- set_pixel( COLS - 1, round(left_paddle.y) + i);
- 40c68: d0a71717 ldw r2,-25508(gp)
- 40c6c: 1009883a mov r4,r2
- 40c70: 0041dec0 call 41dec <__extendsfdf2>
- 40c74: 100b883a mov r5,r2
- 40c78: 180d883a mov r6,r3
- 40c7c: 2809883a mov r4,r5
- 40c80: 300b883a mov r5,r6
- 40c84: 0040fc40 call 40fc4 <round>
- 40c88: 1021883a mov r16,r2
- 40c8c: 1823883a mov r17,r3
- 40c90: e13ffb17 ldw r4,-20(fp)
- 40c94: 0041d100 call 41d10 <__floatsidf>
- 40c98: 1009883a mov r4,r2
- 40c9c: 180b883a mov r5,r3
- 40ca0: 200d883a mov r6,r4
- 40ca4: 280f883a mov r7,r5
- 40ca8: 8009883a mov r4,r16
- 40cac: 880b883a mov r5,r17
- 40cb0: 00413e40 call 413e4 <__adddf3>
- 40cb4: 1009883a mov r4,r2
- 40cb8: 180b883a mov r5,r3
- 40cbc: 2005883a mov r2,r4
- 40cc0: 2807883a mov r3,r5
- 40cc4: 1009883a mov r4,r2
- 40cc8: 180b883a mov r5,r3
- 40ccc: 0041c900 call 41c90 <__fixdfsi>
- 40cd0: 100b883a mov r5,r2
- 40cd4: 010002c4 movi r4,11
- 40cd8: 00403bc0 call 403bc <set_pixel>
- ball.vel_y = ball.vel_y + ACCELERATION;
- }
- reset_screen();
- for (i=0;i<left_paddle.length;i++) {
- 40cdc: e0bffb17 ldw r2,-20(fp)
- 40ce0: 10800044 addi r2,r2,1
- 40ce4: e0bffb15 stw r2,-20(fp)
- 40ce8: d0a71817 ldw r2,-25504(gp)
- 40cec: e0fffb17 ldw r3,-20(fp)
- 40cf0: 18bfdd16 blt r3,r2,40c68 <__alt_data_end+0xfffcec68>
- set_pixel( COLS - 1, round(left_paddle.y) + i);
- }
- for (i=0;i<right_paddle.length;i++) {
- 40cf4: e03ffb15 stw zero,-20(fp)
- 40cf8: 00002006 br 40d7c <game+0x868>
- set_pixel(0, round(right_paddle.y) + i);
- 40cfc: d0a71917 ldw r2,-25500(gp)
- 40d00: 1009883a mov r4,r2
- 40d04: 0041dec0 call 41dec <__extendsfdf2>
- 40d08: 100b883a mov r5,r2
- 40d0c: 180d883a mov r6,r3
- 40d10: 2809883a mov r4,r5
- 40d14: 300b883a mov r5,r6
- 40d18: 0040fc40 call 40fc4 <round>
- 40d1c: 1021883a mov r16,r2
- 40d20: 1823883a mov r17,r3
- 40d24: e13ffb17 ldw r4,-20(fp)
- 40d28: 0041d100 call 41d10 <__floatsidf>
- 40d2c: 1009883a mov r4,r2
- 40d30: 180b883a mov r5,r3
- 40d34: 200d883a mov r6,r4
- 40d38: 280f883a mov r7,r5
- 40d3c: 8009883a mov r4,r16
- 40d40: 880b883a mov r5,r17
- 40d44: 00413e40 call 413e4 <__adddf3>
- 40d48: 1009883a mov r4,r2
- 40d4c: 180b883a mov r5,r3
- 40d50: 2005883a mov r2,r4
- 40d54: 2807883a mov r3,r5
- 40d58: 1009883a mov r4,r2
- 40d5c: 180b883a mov r5,r3
- 40d60: 0041c900 call 41c90 <__fixdfsi>
- 40d64: 100b883a mov r5,r2
- 40d68: 0009883a mov r4,zero
- 40d6c: 00403bc0 call 403bc <set_pixel>
- reset_screen();
- for (i=0;i<left_paddle.length;i++) {
- set_pixel( COLS - 1, round(left_paddle.y) + i);
- }
- for (i=0;i<right_paddle.length;i++) {
- 40d70: e0bffb17 ldw r2,-20(fp)
- 40d74: 10800044 addi r2,r2,1
- 40d78: e0bffb15 stw r2,-20(fp)
- 40d7c: d0a71a17 ldw r2,-25496(gp)
- 40d80: e0fffb17 ldw r3,-20(fp)
- 40d84: 18bfdd16 blt r3,r2,40cfc <__alt_data_end+0xfffcecfc>
- set_pixel(0, round(right_paddle.y) + i);
- }
- set_pixel(round(ball.x),round(ball.y));
- 40d88: 00800174 movhi r2,5
- 40d8c: 1097c504 addi r2,r2,24340
- 40d90: 10c00017 ldw r3,0(r2)
- 40d94: 1809883a mov r4,r3
- 40d98: 0041dec0 call 41dec <__extendsfdf2>
- 40d9c: 100b883a mov r5,r2
- 40da0: 180d883a mov r6,r3
- 40da4: 2809883a mov r4,r5
- 40da8: 300b883a mov r5,r6
- 40dac: 0040fc40 call 40fc4 <round>
- 40db0: 100b883a mov r5,r2
- 40db4: 180d883a mov r6,r3
- 40db8: 2809883a mov r4,r5
- 40dbc: 300b883a mov r5,r6
- 40dc0: 0041c900 call 41c90 <__fixdfsi>
- 40dc4: 1021883a mov r16,r2
- 40dc8: 00800174 movhi r2,5
- 40dcc: 1097c504 addi r2,r2,24340
- 40dd0: 10c00117 ldw r3,4(r2)
- 40dd4: 1809883a mov r4,r3
- 40dd8: 0041dec0 call 41dec <__extendsfdf2>
- 40ddc: 100b883a mov r5,r2
- 40de0: 180d883a mov r6,r3
- 40de4: 2809883a mov r4,r5
- 40de8: 300b883a mov r5,r6
- 40dec: 0040fc40 call 40fc4 <round>
- 40df0: 100b883a mov r5,r2
- 40df4: 180d883a mov r6,r3
- 40df8: 2809883a mov r4,r5
- 40dfc: 300b883a mov r5,r6
- 40e00: 0041c900 call 41c90 <__fixdfsi>
- 40e04: 100b883a mov r5,r2
- 40e08: 8009883a mov r4,r16
- 40e0c: 00403bc0 call 403bc <set_pixel>
- k++;
- 40e10: e0bffc17 ldw r2,-16(fp)
- 40e14: 10800044 addi r2,r2,1
- 40e18: e0bffc15 stw r2,-16(fp)
- draw();
- 40e1c: 004026c0 call 4026c <draw>
- printf("%d ,, ballx: %f, ball y: %f",k,ball.x,ball.y);
- 40e20: 00800174 movhi r2,5
- 40e24: 1097c504 addi r2,r2,24340
- 40e28: 10c00017 ldw r3,0(r2)
- 40e2c: 1809883a mov r4,r3
- 40e30: 0041dec0 call 41dec <__extendsfdf2>
- 40e34: 1021883a mov r16,r2
- 40e38: 1823883a mov r17,r3
- 40e3c: 00800174 movhi r2,5
- 40e40: 1097c504 addi r2,r2,24340
- 40e44: 10c00117 ldw r3,4(r2)
- 40e48: 1809883a mov r4,r3
- 40e4c: 0041dec0 call 41dec <__extendsfdf2>
- 40e50: 1009883a mov r4,r2
- 40e54: 180b883a mov r5,r3
- 40e58: d9000015 stw r4,0(sp)
- 40e5c: d9400115 stw r5,4(sp)
- 40e60: 800d883a mov r6,r16
- 40e64: 880f883a mov r7,r17
- 40e68: e17ffc17 ldw r5,-16(fp)
- 40e6c: 01000174 movhi r4,5
- 40e70: 21081004 addi r4,r4,8256
- 40e74: 00420880 call 42088 <printf>
- //getchar();
- //system("cls");
- }
- 40e78: 003dae06 br 40534 <__alt_data_end+0xfffce534>
- 00040e7c <test_picture>:
- }
- void test_picture() {
- 40e7c: defffa04 addi sp,sp,-24
- 40e80: dfc00515 stw ra,20(sp)
- 40e84: df000415 stw fp,16(sp)
- 40e88: df000404 addi fp,sp,16
- int i,j,k;
- unsigned buttons;
- while (1){
- for (i=0;i<ROWS;i++) {
- 40e8c: e03ffc15 stw zero,-16(fp)
- 40e90: 00003c06 br 40f84 <test_picture+0x108>
- for (j=0;j<COLS;j++) {
- 40e94: e03ffd15 stw zero,-12(fp)
- 40e98: 00003406 br 40f6c <test_picture+0xf0>
- buttons = ~IORD_ALTERA_AVALON_PIO_DATA(PIO_BUTTON_BASE);
- 40e9c: 00800234 movhi r2,8
- 40ea0: 10841004 addi r2,r2,4160
- 40ea4: 10800037 ldwio r2,0(r2)
- 40ea8: 0084303a nor r2,zero,r2
- 40eac: e0bfff15 stw r2,-4(fp)
- printf("%d,%d, set\n",j,i);
- 40eb0: e1bffc17 ldw r6,-16(fp)
- 40eb4: e17ffd17 ldw r5,-12(fp)
- 40eb8: 01000174 movhi r4,5
- 40ebc: 21082104 addi r4,r4,8324
- 40ec0: 00420880 call 42088 <printf>
- if (buttons & (1<<LEFT_UP_BUTTON)){
- 40ec4: e0bfff17 ldw r2,-4(fp)
- 40ec8: 1080004c andi r2,r2,1
- 40ecc: 10000326 beq r2,zero,40edc <test_picture+0x60>
- printf("left button up");
- 40ed0: 01000174 movhi r4,5
- 40ed4: 21082404 addi r4,r4,8336
- 40ed8: 00420880 call 42088 <printf>
- }
- if (buttons & (1<<LEFT_DOWN_BUTTON)){
- 40edc: e0bfff17 ldw r2,-4(fp)
- 40ee0: 1080008c andi r2,r2,2
- 40ee4: 10000326 beq r2,zero,40ef4 <test_picture+0x78>
- printf("left button down");
- 40ee8: 01000174 movhi r4,5
- 40eec: 21082804 addi r4,r4,8352
- 40ef0: 00420880 call 42088 <printf>
- }
- if (buttons & (1<<RIGTH_UP_BUTTON)){
- 40ef4: e0bfff17 ldw r2,-4(fp)
- 40ef8: 1080010c andi r2,r2,4
- 40efc: 10000326 beq r2,zero,40f0c <test_picture+0x90>
- printf("rigth button up");
- 40f00: 01000174 movhi r4,5
- 40f04: 21082d04 addi r4,r4,8372
- 40f08: 00420880 call 42088 <printf>
- }
- if (buttons & (1<<RIGTH_DOWN_BUTTON)){
- 40f0c: e0bfff17 ldw r2,-4(fp)
- 40f10: 1080020c andi r2,r2,8
- 40f14: 10000326 beq r2,zero,40f24 <test_picture+0xa8>
- printf("rigth button down");
- 40f18: 01000174 movhi r4,5
- 40f1c: 21083104 addi r4,r4,8388
- 40f20: 00420880 call 42088 <printf>
- }
- printf("\n");
- 40f24: 01000284 movi r4,10
- 40f28: 00420cc0 call 420cc <putchar>
- set_pixel(j,i);
- 40f2c: e17ffc17 ldw r5,-16(fp)
- 40f30: e13ffd17 ldw r4,-12(fp)
- 40f34: 00403bc0 call 403bc <set_pixel>
- draw();
- 40f38: 004026c0 call 4026c <draw>
- for(k=0;k<1000000;k++) {
- 40f3c: e03ffe15 stw zero,-8(fp)
- 40f40: 00000306 br 40f50 <test_picture+0xd4>
- 40f44: e0bffe17 ldw r2,-8(fp)
- 40f48: 10800044 addi r2,r2,1
- 40f4c: e0bffe15 stw r2,-8(fp)
- 40f50: e0fffe17 ldw r3,-8(fp)
- 40f54: 008003f4 movhi r2,15
- 40f58: 10908fc4 addi r2,r2,16959
- 40f5c: 10fff90e bge r2,r3,40f44 <__alt_data_end+0xfffcef44>
- void test_picture() {
- int i,j,k;
- unsigned buttons;
- while (1){
- for (i=0;i<ROWS;i++) {
- for (j=0;j<COLS;j++) {
- 40f60: e0bffd17 ldw r2,-12(fp)
- 40f64: 10800044 addi r2,r2,1
- 40f68: e0bffd15 stw r2,-12(fp)
- 40f6c: e0bffd17 ldw r2,-12(fp)
- 40f70: 10800310 cmplti r2,r2,12
- 40f74: 103fc91e bne r2,zero,40e9c <__alt_data_end+0xfffcee9c>
- void test_picture() {
- int i,j,k;
- unsigned buttons;
- while (1){
- for (i=0;i<ROWS;i++) {
- 40f78: e0bffc17 ldw r2,-16(fp)
- 40f7c: 10800044 addi r2,r2,1
- 40f80: e0bffc15 stw r2,-16(fp)
- 40f84: e0bffc17 ldw r2,-16(fp)
- 40f88: 10800210 cmplti r2,r2,8
- 40f8c: 103fc11e bne r2,zero,40e94 <__alt_data_end+0xfffcee94>
- draw();
- for(k=0;k<1000000;k++) {
- }
- }
- }
- reset_screen();
- 40f90: 004042c0 call 4042c <reset_screen>
- }
- 40f94: 003fbd06 br 40e8c <__alt_data_end+0xfffcee8c>
- 00040f98 <main>:
- }
- int main() {
- 40f98: defffe04 addi sp,sp,-8
- 40f9c: dfc00115 stw ra,4(sp)
- 40fa0: df000015 stw fp,0(sp)
- 40fa4: d839883a mov fp,sp
- test_picture();
- 40fa8: 0040e7c0 call 40e7c <test_picture>
- 40fac: 0005883a mov r2,zero
- //game();
- }
- 40fb0: e037883a mov sp,fp
- 40fb4: dfc00117 ldw ra,4(sp)
- 40fb8: df000017 ldw fp,0(sp)
- 40fbc: dec00204 addi sp,sp,8
- 40fc0: f800283a ret
- 00040fc4 <round>:
- 40fc4: 289ffc2c andhi r2,r5,32752
- 40fc8: 1005d53a srai r2,r2,20
- 40fcc: 024004c4 movi r9,19
- 40fd0: 2807883a mov r3,r5
- 40fd4: 123f0044 addi r8,r2,-1023
- 40fd8: 200d883a mov r6,r4
- 40fdc: 280f883a mov r7,r5
- 40fe0: 4a000916 blt r9,r8,41008 <round+0x44>
- 40fe4: 40002516 blt r8,zero,4107c <round+0xb8>
- 40fe8: 00800434 movhi r2,16
- 40fec: 10bfffc4 addi r2,r2,-1
- 40ff0: 1205d83a sra r2,r2,r8
- 40ff4: 2888703a and r4,r5,r2
- 40ff8: 2000181e bne r4,zero,4105c <round+0x98>
- 40ffc: 3000171e bne r6,zero,4105c <round+0x98>
- 41000: 0005883a mov r2,zero
- 41004: f800283a ret
- 41008: 02400cc4 movi r9,51
- 4100c: 4a00040e bge r9,r8,41020 <round+0x5c>
- 41010: 00810004 movi r2,1024
- 41014: 40802126 beq r8,r2,4109c <round+0xd8>
- 41018: 3005883a mov r2,r6
- 4101c: f800283a ret
- 41020: 013fffc4 movi r4,-1
- 41024: 10befb44 addi r2,r2,-1043
- 41028: 2084d83a srl r2,r4,r2
- 4102c: 3088703a and r4,r6,r2
- 41030: 20001726 beq r4,zero,41090 <round+0xcc>
- 41034: 4a11c83a sub r8,r9,r8
- 41038: 02400044 movi r9,1
- 4103c: 4a10983a sll r8,r9,r8
- 41040: 4191883a add r8,r8,r6
- 41044: 4180012e bgeu r8,r6,4104c <round+0x88>
- 41048: 2a47883a add r3,r5,r9
- 4104c: 0084303a nor r2,zero,r2
- 41050: 120c703a and r6,r2,r8
- 41054: 3005883a mov r2,r6
- 41058: f800283a ret
- 4105c: 00c00234 movhi r3,8
- 41060: 1a07d83a sra r3,r3,r8
- 41064: 0084303a nor r2,zero,r2
- 41068: 000d883a mov r6,zero
- 4106c: 19c7883a add r3,r3,r7
- 41070: 1886703a and r3,r3,r2
- 41074: 3005883a mov r2,r6
- 41078: f800283a ret
- 4107c: 00bfffc4 movi r2,-1
- 41080: 28e0002c andhi r3,r5,32768
- 41084: 40800c26 beq r8,r2,410b8 <round+0xf4>
- 41088: 000d883a mov r6,zero
- 4108c: 003fe206 br 41018 <__alt_data_end+0xfffcf018>
- 41090: 3005883a mov r2,r6
- 41094: 2807883a mov r3,r5
- 41098: f800283a ret
- 4109c: deffff04 addi sp,sp,-4
- 410a0: 280f883a mov r7,r5
- 410a4: dfc00015 stw ra,0(sp)
- 410a8: 00413e40 call 413e4 <__adddf3>
- 410ac: dfc00017 ldw ra,0(sp)
- 410b0: dec00104 addi sp,sp,4
- 410b4: f800283a ret
- 410b8: 18cffc34 orhi r3,r3,16368
- 410bc: 000d883a mov r6,zero
- 410c0: 003fd506 br 41018 <__alt_data_end+0xfffcf018>
- 000410c4 <__eqsf2>:
- 410c4: 2006d5fa srli r3,r4,23
- 410c8: 280cd5fa srli r6,r5,23
- 410cc: 01c02034 movhi r7,128
- 410d0: 39ffffc4 addi r7,r7,-1
- 410d4: 18c03fcc andi r3,r3,255
- 410d8: 02003fc4 movi r8,255
- 410dc: 3904703a and r2,r7,r4
- 410e0: 31803fcc andi r6,r6,255
- 410e4: 394e703a and r7,r7,r5
- 410e8: 2008d7fa srli r4,r4,31
- 410ec: 280ad7fa srli r5,r5,31
- 410f0: 1a000d26 beq r3,r8,41128 <__eqsf2+0x64>
- 410f4: 02003fc4 movi r8,255
- 410f8: 32000826 beq r6,r8,4111c <__eqsf2+0x58>
- 410fc: 19800226 beq r3,r6,41108 <__eqsf2+0x44>
- 41100: 00800044 movi r2,1
- 41104: f800283a ret
- 41108: 11fffd1e bne r2,r7,41100 <__alt_data_end+0xfffcf100>
- 4110c: 21400926 beq r4,r5,41134 <__eqsf2+0x70>
- 41110: 183ffb1e bne r3,zero,41100 <__alt_data_end+0xfffcf100>
- 41114: 1004c03a cmpne r2,r2,zero
- 41118: f800283a ret
- 4111c: 383ff726 beq r7,zero,410fc <__alt_data_end+0xfffcf0fc>
- 41120: 00800044 movi r2,1
- 41124: f800283a ret
- 41128: 103ff226 beq r2,zero,410f4 <__alt_data_end+0xfffcf0f4>
- 4112c: 00800044 movi r2,1
- 41130: f800283a ret
- 41134: 0005883a mov r2,zero
- 41138: f800283a ret
- 0004113c <__gesf2>:
- 4113c: 2004d5fa srli r2,r4,23
- 41140: 2806d5fa srli r3,r5,23
- 41144: 01802034 movhi r6,128
- 41148: 31bfffc4 addi r6,r6,-1
- 4114c: 10803fcc andi r2,r2,255
- 41150: 01c03fc4 movi r7,255
- 41154: 3110703a and r8,r6,r4
- 41158: 18c03fcc andi r3,r3,255
- 4115c: 314c703a and r6,r6,r5
- 41160: 2008d7fa srli r4,r4,31
- 41164: 280ad7fa srli r5,r5,31
- 41168: 11c01926 beq r2,r7,411d0 <__gesf2+0x94>
- 4116c: 01c03fc4 movi r7,255
- 41170: 19c00f26 beq r3,r7,411b0 <__gesf2+0x74>
- 41174: 1000061e bne r2,zero,41190 <__gesf2+0x54>
- 41178: 400f003a cmpeq r7,r8,zero
- 4117c: 1800071e bne r3,zero,4119c <__gesf2+0x60>
- 41180: 3000061e bne r6,zero,4119c <__gesf2+0x60>
- 41184: 0005883a mov r2,zero
- 41188: 40000e1e bne r8,zero,411c4 <__gesf2+0x88>
- 4118c: f800283a ret
- 41190: 18000a1e bne r3,zero,411bc <__gesf2+0x80>
- 41194: 30000b26 beq r6,zero,411c4 <__gesf2+0x88>
- 41198: 000f883a mov r7,zero
- 4119c: 29403fcc andi r5,r5,255
- 411a0: 38000726 beq r7,zero,411c0 <__gesf2+0x84>
- 411a4: 28000826 beq r5,zero,411c8 <__gesf2+0x8c>
- 411a8: 00800044 movi r2,1
- 411ac: f800283a ret
- 411b0: 303ff026 beq r6,zero,41174 <__alt_data_end+0xfffcf174>
- 411b4: 00bfff84 movi r2,-2
- 411b8: f800283a ret
- 411bc: 29403fcc andi r5,r5,255
- 411c0: 21400526 beq r4,r5,411d8 <__gesf2+0x9c>
- 411c4: 203ff826 beq r4,zero,411a8 <__alt_data_end+0xfffcf1a8>
- 411c8: 00bfffc4 movi r2,-1
- 411cc: f800283a ret
- 411d0: 403fe626 beq r8,zero,4116c <__alt_data_end+0xfffcf16c>
- 411d4: 003ff706 br 411b4 <__alt_data_end+0xfffcf1b4>
- 411d8: 18bffa16 blt r3,r2,411c4 <__alt_data_end+0xfffcf1c4>
- 411dc: 10c00216 blt r2,r3,411e8 <__gesf2+0xac>
- 411e0: 323ff836 bltu r6,r8,411c4 <__alt_data_end+0xfffcf1c4>
- 411e4: 4180022e bgeu r8,r6,411f0 <__gesf2+0xb4>
- 411e8: 203fef1e bne r4,zero,411a8 <__alt_data_end+0xfffcf1a8>
- 411ec: 003ff606 br 411c8 <__alt_data_end+0xfffcf1c8>
- 411f0: 0005883a mov r2,zero
- 411f4: f800283a ret
- 000411f8 <__lesf2>:
- 411f8: 2004d5fa srli r2,r4,23
- 411fc: 280cd5fa srli r6,r5,23
- 41200: 00c02034 movhi r3,128
- 41204: 18ffffc4 addi r3,r3,-1
- 41208: 10803fcc andi r2,r2,255
- 4120c: 01c03fc4 movi r7,255
- 41210: 1910703a and r8,r3,r4
- 41214: 31803fcc andi r6,r6,255
- 41218: 1946703a and r3,r3,r5
- 4121c: 2008d7fa srli r4,r4,31
- 41220: 280ad7fa srli r5,r5,31
- 41224: 11c01b26 beq r2,r7,41294 <__lesf2+0x9c>
- 41228: 01c03fc4 movi r7,255
- 4122c: 31c01126 beq r6,r7,41274 <__lesf2+0x7c>
- 41230: 1000071e bne r2,zero,41250 <__lesf2+0x58>
- 41234: 400f003a cmpeq r7,r8,zero
- 41238: 21003fcc andi r4,r4,255
- 4123c: 3000081e bne r6,zero,41260 <__lesf2+0x68>
- 41240: 1800071e bne r3,zero,41260 <__lesf2+0x68>
- 41244: 0005883a mov r2,zero
- 41248: 40000f1e bne r8,zero,41288 <__lesf2+0x90>
- 4124c: f800283a ret
- 41250: 21003fcc andi r4,r4,255
- 41254: 30000a1e bne r6,zero,41280 <__lesf2+0x88>
- 41258: 18000b26 beq r3,zero,41288 <__lesf2+0x90>
- 4125c: 000f883a mov r7,zero
- 41260: 29403fcc andi r5,r5,255
- 41264: 38000726 beq r7,zero,41284 <__lesf2+0x8c>
- 41268: 28000826 beq r5,zero,4128c <__lesf2+0x94>
- 4126c: 00800044 movi r2,1
- 41270: f800283a ret
- 41274: 183fee26 beq r3,zero,41230 <__alt_data_end+0xfffcf230>
- 41278: 00800084 movi r2,2
- 4127c: f800283a ret
- 41280: 29403fcc andi r5,r5,255
- 41284: 21400626 beq r4,r5,412a0 <__lesf2+0xa8>
- 41288: 203ff826 beq r4,zero,4126c <__alt_data_end+0xfffcf26c>
- 4128c: 00bfffc4 movi r2,-1
- 41290: f800283a ret
- 41294: 403fe426 beq r8,zero,41228 <__alt_data_end+0xfffcf228>
- 41298: 00800084 movi r2,2
- 4129c: f800283a ret
- 412a0: 30bff916 blt r6,r2,41288 <__alt_data_end+0xfffcf288>
- 412a4: 11800216 blt r2,r6,412b0 <__lesf2+0xb8>
- 412a8: 1a3ff736 bltu r3,r8,41288 <__alt_data_end+0xfffcf288>
- 412ac: 40c0022e bgeu r8,r3,412b8 <__lesf2+0xc0>
- 412b0: 203fee1e bne r4,zero,4126c <__alt_data_end+0xfffcf26c>
- 412b4: 003ff506 br 4128c <__alt_data_end+0xfffcf28c>
- 412b8: 0005883a mov r2,zero
- 412bc: f800283a ret
- 000412c0 <__floatsisf>:
- 412c0: defffd04 addi sp,sp,-12
- 412c4: dfc00215 stw ra,8(sp)
- 412c8: dc400115 stw r17,4(sp)
- 412cc: dc000015 stw r16,0(sp)
- 412d0: 20003526 beq r4,zero,413a8 <__floatsisf+0xe8>
- 412d4: 2021883a mov r16,r4
- 412d8: 2022d7fa srli r17,r4,31
- 412dc: 20003616 blt r4,zero,413b8 <__floatsisf+0xf8>
- 412e0: 8009883a mov r4,r16
- 412e4: 0041efc0 call 41efc <__clzsi2>
- 412e8: 00c02784 movi r3,158
- 412ec: 1887c83a sub r3,r3,r2
- 412f0: 01002584 movi r4,150
- 412f4: 20c01416 blt r4,r3,41348 <__floatsisf+0x88>
- 412f8: 20c9c83a sub r4,r4,r3
- 412fc: 8120983a sll r16,r16,r4
- 41300: 00802034 movhi r2,128
- 41304: 10bfffc4 addi r2,r2,-1
- 41308: 8809883a mov r4,r17
- 4130c: 80a0703a and r16,r16,r2
- 41310: 18803fcc andi r2,r3,255
- 41314: 100695fa slli r3,r2,23
- 41318: 20803fcc andi r2,r4,255
- 4131c: 100897fa slli r4,r2,31
- 41320: 00802034 movhi r2,128
- 41324: 10bfffc4 addi r2,r2,-1
- 41328: 8084703a and r2,r16,r2
- 4132c: 10c4b03a or r2,r2,r3
- 41330: 1104b03a or r2,r2,r4
- 41334: dfc00217 ldw ra,8(sp)
- 41338: dc400117 ldw r17,4(sp)
- 4133c: dc000017 ldw r16,0(sp)
- 41340: dec00304 addi sp,sp,12
- 41344: f800283a ret
- 41348: 01002644 movi r4,153
- 4134c: 20c01c16 blt r4,r3,413c0 <__floatsisf+0x100>
- 41350: 20c9c83a sub r4,r4,r3
- 41354: 8120983a sll r16,r16,r4
- 41358: 013f0034 movhi r4,64512
- 4135c: 213fffc4 addi r4,r4,-1
- 41360: 814001cc andi r5,r16,7
- 41364: 8108703a and r4,r16,r4
- 41368: 28000426 beq r5,zero,4137c <__floatsisf+0xbc>
- 4136c: 840003cc andi r16,r16,15
- 41370: 01400104 movi r5,4
- 41374: 81400126 beq r16,r5,4137c <__floatsisf+0xbc>
- 41378: 2149883a add r4,r4,r5
- 4137c: 2141002c andhi r5,r4,1024
- 41380: 28000526 beq r5,zero,41398 <__floatsisf+0xd8>
- 41384: 00c027c4 movi r3,159
- 41388: 1887c83a sub r3,r3,r2
- 4138c: 00bf0034 movhi r2,64512
- 41390: 10bfffc4 addi r2,r2,-1
- 41394: 2088703a and r4,r4,r2
- 41398: 202091ba slli r16,r4,6
- 4139c: 8809883a mov r4,r17
- 413a0: 8020d27a srli r16,r16,9
- 413a4: 003fda06 br 41310 <__alt_data_end+0xfffcf310>
- 413a8: 0009883a mov r4,zero
- 413ac: 0007883a mov r3,zero
- 413b0: 0021883a mov r16,zero
- 413b4: 003fd606 br 41310 <__alt_data_end+0xfffcf310>
- 413b8: 0121c83a sub r16,zero,r4
- 413bc: 003fc806 br 412e0 <__alt_data_end+0xfffcf2e0>
- 413c0: 01002e44 movi r4,185
- 413c4: 20c9c83a sub r4,r4,r3
- 413c8: 01400144 movi r5,5
- 413cc: 8108983a sll r4,r16,r4
- 413d0: 288bc83a sub r5,r5,r2
- 413d4: 8160d83a srl r16,r16,r5
- 413d8: 2008c03a cmpne r4,r4,zero
- 413dc: 8120b03a or r16,r16,r4
- 413e0: 003fdd06 br 41358 <__alt_data_end+0xfffcf358>
- 000413e4 <__adddf3>:
- 413e4: 02c00434 movhi r11,16
- 413e8: 5affffc4 addi r11,r11,-1
- 413ec: 2806d7fa srli r3,r5,31
- 413f0: 2ad4703a and r10,r5,r11
- 413f4: 3ad2703a and r9,r7,r11
- 413f8: 3804d53a srli r2,r7,20
- 413fc: 3018d77a srli r12,r6,29
- 41400: 280ad53a srli r5,r5,20
- 41404: 501490fa slli r10,r10,3
- 41408: 2010d77a srli r8,r4,29
- 4140c: 481290fa slli r9,r9,3
- 41410: 380ed7fa srli r7,r7,31
- 41414: defffb04 addi sp,sp,-20
- 41418: dc800215 stw r18,8(sp)
- 4141c: dc400115 stw r17,4(sp)
- 41420: dc000015 stw r16,0(sp)
- 41424: dfc00415 stw ra,16(sp)
- 41428: dcc00315 stw r19,12(sp)
- 4142c: 1c803fcc andi r18,r3,255
- 41430: 2c01ffcc andi r16,r5,2047
- 41434: 5210b03a or r8,r10,r8
- 41438: 202290fa slli r17,r4,3
- 4143c: 1081ffcc andi r2,r2,2047
- 41440: 4b12b03a or r9,r9,r12
- 41444: 300c90fa slli r6,r6,3
- 41448: 91c07526 beq r18,r7,41620 <__adddf3+0x23c>
- 4144c: 8087c83a sub r3,r16,r2
- 41450: 00c0ab0e bge zero,r3,41700 <__adddf3+0x31c>
- 41454: 10002a1e bne r2,zero,41500 <__adddf3+0x11c>
- 41458: 4984b03a or r2,r9,r6
- 4145c: 1000961e bne r2,zero,416b8 <__adddf3+0x2d4>
- 41460: 888001cc andi r2,r17,7
- 41464: 10000726 beq r2,zero,41484 <__adddf3+0xa0>
- 41468: 888003cc andi r2,r17,15
- 4146c: 00c00104 movi r3,4
- 41470: 10c00426 beq r2,r3,41484 <__adddf3+0xa0>
- 41474: 88c7883a add r3,r17,r3
- 41478: 1c63803a cmpltu r17,r3,r17
- 4147c: 4451883a add r8,r8,r17
- 41480: 1823883a mov r17,r3
- 41484: 4080202c andhi r2,r8,128
- 41488: 10005926 beq r2,zero,415f0 <__adddf3+0x20c>
- 4148c: 84000044 addi r16,r16,1
- 41490: 0081ffc4 movi r2,2047
- 41494: 8080ba26 beq r16,r2,41780 <__adddf3+0x39c>
- 41498: 00bfe034 movhi r2,65408
- 4149c: 10bfffc4 addi r2,r2,-1
- 414a0: 4090703a and r8,r8,r2
- 414a4: 4004977a slli r2,r8,29
- 414a8: 4010927a slli r8,r8,9
- 414ac: 8822d0fa srli r17,r17,3
- 414b0: 8401ffcc andi r16,r16,2047
- 414b4: 4010d33a srli r8,r8,12
- 414b8: 9007883a mov r3,r18
- 414bc: 1444b03a or r2,r2,r17
- 414c0: 8401ffcc andi r16,r16,2047
- 414c4: 8020953a slli r16,r16,20
- 414c8: 18c03fcc andi r3,r3,255
- 414cc: 01000434 movhi r4,16
- 414d0: 213fffc4 addi r4,r4,-1
- 414d4: 180697fa slli r3,r3,31
- 414d8: 4110703a and r8,r8,r4
- 414dc: 4410b03a or r8,r8,r16
- 414e0: 40c6b03a or r3,r8,r3
- 414e4: dfc00417 ldw ra,16(sp)
- 414e8: dcc00317 ldw r19,12(sp)
- 414ec: dc800217 ldw r18,8(sp)
- 414f0: dc400117 ldw r17,4(sp)
- 414f4: dc000017 ldw r16,0(sp)
- 414f8: dec00504 addi sp,sp,20
- 414fc: f800283a ret
- 41500: 0081ffc4 movi r2,2047
- 41504: 80bfd626 beq r16,r2,41460 <__alt_data_end+0xfffcf460>
- 41508: 4a402034 orhi r9,r9,128
- 4150c: 00800e04 movi r2,56
- 41510: 10c09f16 blt r2,r3,41790 <__adddf3+0x3ac>
- 41514: 008007c4 movi r2,31
- 41518: 10c0c216 blt r2,r3,41824 <__adddf3+0x440>
- 4151c: 00800804 movi r2,32
- 41520: 10c5c83a sub r2,r2,r3
- 41524: 488a983a sll r5,r9,r2
- 41528: 30c8d83a srl r4,r6,r3
- 4152c: 3084983a sll r2,r6,r2
- 41530: 48c6d83a srl r3,r9,r3
- 41534: 290cb03a or r6,r5,r4
- 41538: 1004c03a cmpne r2,r2,zero
- 4153c: 308cb03a or r6,r6,r2
- 41540: 898dc83a sub r6,r17,r6
- 41544: 89a3803a cmpltu r17,r17,r6
- 41548: 40d1c83a sub r8,r8,r3
- 4154c: 4451c83a sub r8,r8,r17
- 41550: 3023883a mov r17,r6
- 41554: 4080202c andhi r2,r8,128
- 41558: 10002326 beq r2,zero,415e8 <__adddf3+0x204>
- 4155c: 04c02034 movhi r19,128
- 41560: 9cffffc4 addi r19,r19,-1
- 41564: 44e6703a and r19,r8,r19
- 41568: 98007626 beq r19,zero,41744 <__adddf3+0x360>
- 4156c: 9809883a mov r4,r19
- 41570: 0041efc0 call 41efc <__clzsi2>
- 41574: 10fffe04 addi r3,r2,-8
- 41578: 010007c4 movi r4,31
- 4157c: 20c07716 blt r4,r3,4175c <__adddf3+0x378>
- 41580: 00800804 movi r2,32
- 41584: 10c5c83a sub r2,r2,r3
- 41588: 8884d83a srl r2,r17,r2
- 4158c: 98d0983a sll r8,r19,r3
- 41590: 88e2983a sll r17,r17,r3
- 41594: 1204b03a or r2,r2,r8
- 41598: 1c007416 blt r3,r16,4176c <__adddf3+0x388>
- 4159c: 1c21c83a sub r16,r3,r16
- 415a0: 82000044 addi r8,r16,1
- 415a4: 00c007c4 movi r3,31
- 415a8: 1a009116 blt r3,r8,417f0 <__adddf3+0x40c>
- 415ac: 00c00804 movi r3,32
- 415b0: 1a07c83a sub r3,r3,r8
- 415b4: 8a08d83a srl r4,r17,r8
- 415b8: 88e2983a sll r17,r17,r3
- 415bc: 10c6983a sll r3,r2,r3
- 415c0: 1210d83a srl r8,r2,r8
- 415c4: 8804c03a cmpne r2,r17,zero
- 415c8: 1906b03a or r3,r3,r4
- 415cc: 18a2b03a or r17,r3,r2
- 415d0: 0021883a mov r16,zero
- 415d4: 003fa206 br 41460 <__alt_data_end+0xfffcf460>
- 415d8: 1890b03a or r8,r3,r2
- 415dc: 40017d26 beq r8,zero,41bd4 <__adddf3+0x7f0>
- 415e0: 1011883a mov r8,r2
- 415e4: 1823883a mov r17,r3
- 415e8: 888001cc andi r2,r17,7
- 415ec: 103f9e1e bne r2,zero,41468 <__alt_data_end+0xfffcf468>
- 415f0: 4004977a slli r2,r8,29
- 415f4: 8822d0fa srli r17,r17,3
- 415f8: 4010d0fa srli r8,r8,3
- 415fc: 9007883a mov r3,r18
- 41600: 1444b03a or r2,r2,r17
- 41604: 0101ffc4 movi r4,2047
- 41608: 81002426 beq r16,r4,4169c <__adddf3+0x2b8>
- 4160c: 8120703a and r16,r16,r4
- 41610: 01000434 movhi r4,16
- 41614: 213fffc4 addi r4,r4,-1
- 41618: 4110703a and r8,r8,r4
- 4161c: 003fa806 br 414c0 <__alt_data_end+0xfffcf4c0>
- 41620: 8089c83a sub r4,r16,r2
- 41624: 01005e0e bge zero,r4,417a0 <__adddf3+0x3bc>
- 41628: 10002b26 beq r2,zero,416d8 <__adddf3+0x2f4>
- 4162c: 0081ffc4 movi r2,2047
- 41630: 80bf8b26 beq r16,r2,41460 <__alt_data_end+0xfffcf460>
- 41634: 4a402034 orhi r9,r9,128
- 41638: 00800e04 movi r2,56
- 4163c: 1100a40e bge r2,r4,418d0 <__adddf3+0x4ec>
- 41640: 498cb03a or r6,r9,r6
- 41644: 300ac03a cmpne r5,r6,zero
- 41648: 0013883a mov r9,zero
- 4164c: 2c4b883a add r5,r5,r17
- 41650: 2c63803a cmpltu r17,r5,r17
- 41654: 4a11883a add r8,r9,r8
- 41658: 8a11883a add r8,r17,r8
- 4165c: 2823883a mov r17,r5
- 41660: 4080202c andhi r2,r8,128
- 41664: 103fe026 beq r2,zero,415e8 <__alt_data_end+0xfffcf5e8>
- 41668: 84000044 addi r16,r16,1
- 4166c: 0081ffc4 movi r2,2047
- 41670: 8080d226 beq r16,r2,419bc <__adddf3+0x5d8>
- 41674: 00bfe034 movhi r2,65408
- 41678: 10bfffc4 addi r2,r2,-1
- 4167c: 4090703a and r8,r8,r2
- 41680: 880ad07a srli r5,r17,1
- 41684: 400897fa slli r4,r8,31
- 41688: 88c0004c andi r3,r17,1
- 4168c: 28e2b03a or r17,r5,r3
- 41690: 4010d07a srli r8,r8,1
- 41694: 2462b03a or r17,r4,r17
- 41698: 003f7106 br 41460 <__alt_data_end+0xfffcf460>
- 4169c: 4088b03a or r4,r8,r2
- 416a0: 20014526 beq r4,zero,41bb8 <__adddf3+0x7d4>
- 416a4: 01000434 movhi r4,16
- 416a8: 42000234 orhi r8,r8,8
- 416ac: 213fffc4 addi r4,r4,-1
- 416b0: 4110703a and r8,r8,r4
- 416b4: 003f8206 br 414c0 <__alt_data_end+0xfffcf4c0>
- 416b8: 18ffffc4 addi r3,r3,-1
- 416bc: 1800491e bne r3,zero,417e4 <__adddf3+0x400>
- 416c0: 898bc83a sub r5,r17,r6
- 416c4: 8963803a cmpltu r17,r17,r5
- 416c8: 4251c83a sub r8,r8,r9
- 416cc: 4451c83a sub r8,r8,r17
- 416d0: 2823883a mov r17,r5
- 416d4: 003f9f06 br 41554 <__alt_data_end+0xfffcf554>
- 416d8: 4984b03a or r2,r9,r6
- 416dc: 103f6026 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
- 416e0: 213fffc4 addi r4,r4,-1
- 416e4: 2000931e bne r4,zero,41934 <__adddf3+0x550>
- 416e8: 898d883a add r6,r17,r6
- 416ec: 3463803a cmpltu r17,r6,r17
- 416f0: 4251883a add r8,r8,r9
- 416f4: 8a11883a add r8,r17,r8
- 416f8: 3023883a mov r17,r6
- 416fc: 003fd806 br 41660 <__alt_data_end+0xfffcf660>
- 41700: 1800541e bne r3,zero,41854 <__adddf3+0x470>
- 41704: 80800044 addi r2,r16,1
- 41708: 1081ffcc andi r2,r2,2047
- 4170c: 00c00044 movi r3,1
- 41710: 1880a00e bge r3,r2,41994 <__adddf3+0x5b0>
- 41714: 8989c83a sub r4,r17,r6
- 41718: 8905803a cmpltu r2,r17,r4
- 4171c: 4267c83a sub r19,r8,r9
- 41720: 98a7c83a sub r19,r19,r2
- 41724: 9880202c andhi r2,r19,128
- 41728: 10006326 beq r2,zero,418b8 <__adddf3+0x4d4>
- 4172c: 3463c83a sub r17,r6,r17
- 41730: 4a07c83a sub r3,r9,r8
- 41734: 344d803a cmpltu r6,r6,r17
- 41738: 19a7c83a sub r19,r3,r6
- 4173c: 3825883a mov r18,r7
- 41740: 983f8a1e bne r19,zero,4156c <__alt_data_end+0xfffcf56c>
- 41744: 8809883a mov r4,r17
- 41748: 0041efc0 call 41efc <__clzsi2>
- 4174c: 10800804 addi r2,r2,32
- 41750: 10fffe04 addi r3,r2,-8
- 41754: 010007c4 movi r4,31
- 41758: 20ff890e bge r4,r3,41580 <__alt_data_end+0xfffcf580>
- 4175c: 10bff604 addi r2,r2,-40
- 41760: 8884983a sll r2,r17,r2
- 41764: 0023883a mov r17,zero
- 41768: 1c3f8c0e bge r3,r16,4159c <__alt_data_end+0xfffcf59c>
- 4176c: 023fe034 movhi r8,65408
- 41770: 423fffc4 addi r8,r8,-1
- 41774: 80e1c83a sub r16,r16,r3
- 41778: 1210703a and r8,r2,r8
- 4177c: 003f3806 br 41460 <__alt_data_end+0xfffcf460>
- 41780: 9007883a mov r3,r18
- 41784: 0011883a mov r8,zero
- 41788: 0005883a mov r2,zero
- 4178c: 003f4c06 br 414c0 <__alt_data_end+0xfffcf4c0>
- 41790: 498cb03a or r6,r9,r6
- 41794: 300cc03a cmpne r6,r6,zero
- 41798: 0007883a mov r3,zero
- 4179c: 003f6806 br 41540 <__alt_data_end+0xfffcf540>
- 417a0: 20009c1e bne r4,zero,41a14 <__adddf3+0x630>
- 417a4: 80800044 addi r2,r16,1
- 417a8: 1141ffcc andi r5,r2,2047
- 417ac: 01000044 movi r4,1
- 417b0: 2140670e bge r4,r5,41950 <__adddf3+0x56c>
- 417b4: 0101ffc4 movi r4,2047
- 417b8: 11007f26 beq r2,r4,419b8 <__adddf3+0x5d4>
- 417bc: 898d883a add r6,r17,r6
- 417c0: 4247883a add r3,r8,r9
- 417c4: 3451803a cmpltu r8,r6,r17
- 417c8: 40d1883a add r8,r8,r3
- 417cc: 402297fa slli r17,r8,31
- 417d0: 300cd07a srli r6,r6,1
- 417d4: 4010d07a srli r8,r8,1
- 417d8: 1021883a mov r16,r2
- 417dc: 89a2b03a or r17,r17,r6
- 417e0: 003f1f06 br 41460 <__alt_data_end+0xfffcf460>
- 417e4: 0081ffc4 movi r2,2047
- 417e8: 80bf481e bne r16,r2,4150c <__alt_data_end+0xfffcf50c>
- 417ec: 003f1c06 br 41460 <__alt_data_end+0xfffcf460>
- 417f0: 843ff844 addi r16,r16,-31
- 417f4: 01000804 movi r4,32
- 417f8: 1406d83a srl r3,r2,r16
- 417fc: 41005026 beq r8,r4,41940 <__adddf3+0x55c>
- 41800: 01001004 movi r4,64
- 41804: 2211c83a sub r8,r4,r8
- 41808: 1204983a sll r2,r2,r8
- 4180c: 88a2b03a or r17,r17,r2
- 41810: 8822c03a cmpne r17,r17,zero
- 41814: 1c62b03a or r17,r3,r17
- 41818: 0011883a mov r8,zero
- 4181c: 0021883a mov r16,zero
- 41820: 003f7106 br 415e8 <__alt_data_end+0xfffcf5e8>
- 41824: 193ff804 addi r4,r3,-32
- 41828: 00800804 movi r2,32
- 4182c: 4908d83a srl r4,r9,r4
- 41830: 18804526 beq r3,r2,41948 <__adddf3+0x564>
- 41834: 00801004 movi r2,64
- 41838: 10c5c83a sub r2,r2,r3
- 4183c: 4886983a sll r3,r9,r2
- 41840: 198cb03a or r6,r3,r6
- 41844: 300cc03a cmpne r6,r6,zero
- 41848: 218cb03a or r6,r4,r6
- 4184c: 0007883a mov r3,zero
- 41850: 003f3b06 br 41540 <__alt_data_end+0xfffcf540>
- 41854: 80002a26 beq r16,zero,41900 <__adddf3+0x51c>
- 41858: 0101ffc4 movi r4,2047
- 4185c: 11006826 beq r2,r4,41a00 <__adddf3+0x61c>
- 41860: 00c7c83a sub r3,zero,r3
- 41864: 42002034 orhi r8,r8,128
- 41868: 01000e04 movi r4,56
- 4186c: 20c07c16 blt r4,r3,41a60 <__adddf3+0x67c>
- 41870: 010007c4 movi r4,31
- 41874: 20c0da16 blt r4,r3,41be0 <__adddf3+0x7fc>
- 41878: 01000804 movi r4,32
- 4187c: 20c9c83a sub r4,r4,r3
- 41880: 4114983a sll r10,r8,r4
- 41884: 88cad83a srl r5,r17,r3
- 41888: 8908983a sll r4,r17,r4
- 4188c: 40c6d83a srl r3,r8,r3
- 41890: 5162b03a or r17,r10,r5
- 41894: 2008c03a cmpne r4,r4,zero
- 41898: 8922b03a or r17,r17,r4
- 4189c: 3463c83a sub r17,r6,r17
- 418a0: 48c7c83a sub r3,r9,r3
- 418a4: 344d803a cmpltu r6,r6,r17
- 418a8: 1991c83a sub r8,r3,r6
- 418ac: 1021883a mov r16,r2
- 418b0: 3825883a mov r18,r7
- 418b4: 003f2706 br 41554 <__alt_data_end+0xfffcf554>
- 418b8: 24d0b03a or r8,r4,r19
- 418bc: 40001b1e bne r8,zero,4192c <__adddf3+0x548>
- 418c0: 0005883a mov r2,zero
- 418c4: 0007883a mov r3,zero
- 418c8: 0021883a mov r16,zero
- 418cc: 003f4d06 br 41604 <__alt_data_end+0xfffcf604>
- 418d0: 008007c4 movi r2,31
- 418d4: 11003c16 blt r2,r4,419c8 <__adddf3+0x5e4>
- 418d8: 00800804 movi r2,32
- 418dc: 1105c83a sub r2,r2,r4
- 418e0: 488e983a sll r7,r9,r2
- 418e4: 310ad83a srl r5,r6,r4
- 418e8: 3084983a sll r2,r6,r2
- 418ec: 4912d83a srl r9,r9,r4
- 418f0: 394ab03a or r5,r7,r5
- 418f4: 1004c03a cmpne r2,r2,zero
- 418f8: 288ab03a or r5,r5,r2
- 418fc: 003f5306 br 4164c <__alt_data_end+0xfffcf64c>
- 41900: 4448b03a or r4,r8,r17
- 41904: 20003e26 beq r4,zero,41a00 <__adddf3+0x61c>
- 41908: 00c6303a nor r3,zero,r3
- 4190c: 18003a1e bne r3,zero,419f8 <__adddf3+0x614>
- 41910: 3463c83a sub r17,r6,r17
- 41914: 4a07c83a sub r3,r9,r8
- 41918: 344d803a cmpltu r6,r6,r17
- 4191c: 1991c83a sub r8,r3,r6
- 41920: 1021883a mov r16,r2
- 41924: 3825883a mov r18,r7
- 41928: 003f0a06 br 41554 <__alt_data_end+0xfffcf554>
- 4192c: 2023883a mov r17,r4
- 41930: 003f0d06 br 41568 <__alt_data_end+0xfffcf568>
- 41934: 0081ffc4 movi r2,2047
- 41938: 80bf3f1e bne r16,r2,41638 <__alt_data_end+0xfffcf638>
- 4193c: 003ec806 br 41460 <__alt_data_end+0xfffcf460>
- 41940: 0005883a mov r2,zero
- 41944: 003fb106 br 4180c <__alt_data_end+0xfffcf80c>
- 41948: 0007883a mov r3,zero
- 4194c: 003fbc06 br 41840 <__alt_data_end+0xfffcf840>
- 41950: 4444b03a or r2,r8,r17
- 41954: 8000871e bne r16,zero,41b74 <__adddf3+0x790>
- 41958: 1000ba26 beq r2,zero,41c44 <__adddf3+0x860>
- 4195c: 4984b03a or r2,r9,r6
- 41960: 103ebf26 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
- 41964: 8985883a add r2,r17,r6
- 41968: 4247883a add r3,r8,r9
- 4196c: 1451803a cmpltu r8,r2,r17
- 41970: 40d1883a add r8,r8,r3
- 41974: 40c0202c andhi r3,r8,128
- 41978: 1023883a mov r17,r2
- 4197c: 183f1a26 beq r3,zero,415e8 <__alt_data_end+0xfffcf5e8>
- 41980: 00bfe034 movhi r2,65408
- 41984: 10bfffc4 addi r2,r2,-1
- 41988: 2021883a mov r16,r4
- 4198c: 4090703a and r8,r8,r2
- 41990: 003eb306 br 41460 <__alt_data_end+0xfffcf460>
- 41994: 4444b03a or r2,r8,r17
- 41998: 8000291e bne r16,zero,41a40 <__adddf3+0x65c>
- 4199c: 10004b1e bne r2,zero,41acc <__adddf3+0x6e8>
- 419a0: 4990b03a or r8,r9,r6
- 419a4: 40008b26 beq r8,zero,41bd4 <__adddf3+0x7f0>
- 419a8: 4811883a mov r8,r9
- 419ac: 3023883a mov r17,r6
- 419b0: 3825883a mov r18,r7
- 419b4: 003eaa06 br 41460 <__alt_data_end+0xfffcf460>
- 419b8: 1021883a mov r16,r2
- 419bc: 0011883a mov r8,zero
- 419c0: 0005883a mov r2,zero
- 419c4: 003f0f06 br 41604 <__alt_data_end+0xfffcf604>
- 419c8: 217ff804 addi r5,r4,-32
- 419cc: 00800804 movi r2,32
- 419d0: 494ad83a srl r5,r9,r5
- 419d4: 20807d26 beq r4,r2,41bcc <__adddf3+0x7e8>
- 419d8: 00801004 movi r2,64
- 419dc: 1109c83a sub r4,r2,r4
- 419e0: 4912983a sll r9,r9,r4
- 419e4: 498cb03a or r6,r9,r6
- 419e8: 300cc03a cmpne r6,r6,zero
- 419ec: 298ab03a or r5,r5,r6
- 419f0: 0013883a mov r9,zero
- 419f4: 003f1506 br 4164c <__alt_data_end+0xfffcf64c>
- 419f8: 0101ffc4 movi r4,2047
- 419fc: 113f9a1e bne r2,r4,41868 <__alt_data_end+0xfffcf868>
- 41a00: 4811883a mov r8,r9
- 41a04: 3023883a mov r17,r6
- 41a08: 1021883a mov r16,r2
- 41a0c: 3825883a mov r18,r7
- 41a10: 003e9306 br 41460 <__alt_data_end+0xfffcf460>
- 41a14: 8000161e bne r16,zero,41a70 <__adddf3+0x68c>
- 41a18: 444ab03a or r5,r8,r17
- 41a1c: 28005126 beq r5,zero,41b64 <__adddf3+0x780>
- 41a20: 0108303a nor r4,zero,r4
- 41a24: 20004d1e bne r4,zero,41b5c <__adddf3+0x778>
- 41a28: 89a3883a add r17,r17,r6
- 41a2c: 4253883a add r9,r8,r9
- 41a30: 898d803a cmpltu r6,r17,r6
- 41a34: 3251883a add r8,r6,r9
- 41a38: 1021883a mov r16,r2
- 41a3c: 003f0806 br 41660 <__alt_data_end+0xfffcf660>
- 41a40: 1000301e bne r2,zero,41b04 <__adddf3+0x720>
- 41a44: 4984b03a or r2,r9,r6
- 41a48: 10007126 beq r2,zero,41c10 <__adddf3+0x82c>
- 41a4c: 4811883a mov r8,r9
- 41a50: 3023883a mov r17,r6
- 41a54: 3825883a mov r18,r7
- 41a58: 0401ffc4 movi r16,2047
- 41a5c: 003e8006 br 41460 <__alt_data_end+0xfffcf460>
- 41a60: 4462b03a or r17,r8,r17
- 41a64: 8822c03a cmpne r17,r17,zero
- 41a68: 0007883a mov r3,zero
- 41a6c: 003f8b06 br 4189c <__alt_data_end+0xfffcf89c>
- 41a70: 0141ffc4 movi r5,2047
- 41a74: 11403b26 beq r2,r5,41b64 <__adddf3+0x780>
- 41a78: 0109c83a sub r4,zero,r4
- 41a7c: 42002034 orhi r8,r8,128
- 41a80: 01400e04 movi r5,56
- 41a84: 29006716 blt r5,r4,41c24 <__adddf3+0x840>
- 41a88: 014007c4 movi r5,31
- 41a8c: 29007016 blt r5,r4,41c50 <__adddf3+0x86c>
- 41a90: 01400804 movi r5,32
- 41a94: 290bc83a sub r5,r5,r4
- 41a98: 4154983a sll r10,r8,r5
- 41a9c: 890ed83a srl r7,r17,r4
- 41aa0: 894a983a sll r5,r17,r5
- 41aa4: 4108d83a srl r4,r8,r4
- 41aa8: 51e2b03a or r17,r10,r7
- 41aac: 280ac03a cmpne r5,r5,zero
- 41ab0: 8962b03a or r17,r17,r5
- 41ab4: 89a3883a add r17,r17,r6
- 41ab8: 2253883a add r9,r4,r9
- 41abc: 898d803a cmpltu r6,r17,r6
- 41ac0: 3251883a add r8,r6,r9
- 41ac4: 1021883a mov r16,r2
- 41ac8: 003ee506 br 41660 <__alt_data_end+0xfffcf660>
- 41acc: 4984b03a or r2,r9,r6
- 41ad0: 103e6326 beq r2,zero,41460 <__alt_data_end+0xfffcf460>
- 41ad4: 8987c83a sub r3,r17,r6
- 41ad8: 88c9803a cmpltu r4,r17,r3
- 41adc: 4245c83a sub r2,r8,r9
- 41ae0: 1105c83a sub r2,r2,r4
- 41ae4: 1100202c andhi r4,r2,128
- 41ae8: 203ebb26 beq r4,zero,415d8 <__alt_data_end+0xfffcf5d8>
- 41aec: 3463c83a sub r17,r6,r17
- 41af0: 4a07c83a sub r3,r9,r8
- 41af4: 344d803a cmpltu r6,r6,r17
- 41af8: 1991c83a sub r8,r3,r6
- 41afc: 3825883a mov r18,r7
- 41b00: 003e5706 br 41460 <__alt_data_end+0xfffcf460>
- 41b04: 4984b03a or r2,r9,r6
- 41b08: 10002e26 beq r2,zero,41bc4 <__adddf3+0x7e0>
- 41b0c: 4004d0fa srli r2,r8,3
- 41b10: 8822d0fa srli r17,r17,3
- 41b14: 4010977a slli r8,r8,29
- 41b18: 10c0022c andhi r3,r2,8
- 41b1c: 4462b03a or r17,r8,r17
- 41b20: 18000826 beq r3,zero,41b44 <__adddf3+0x760>
- 41b24: 4808d0fa srli r4,r9,3
- 41b28: 20c0022c andhi r3,r4,8
- 41b2c: 1800051e bne r3,zero,41b44 <__adddf3+0x760>
- 41b30: 300cd0fa srli r6,r6,3
- 41b34: 4806977a slli r3,r9,29
- 41b38: 2005883a mov r2,r4
- 41b3c: 3825883a mov r18,r7
- 41b40: 19a2b03a or r17,r3,r6
- 41b44: 8810d77a srli r8,r17,29
- 41b48: 100490fa slli r2,r2,3
- 41b4c: 882290fa slli r17,r17,3
- 41b50: 0401ffc4 movi r16,2047
- 41b54: 4090b03a or r8,r8,r2
- 41b58: 003e4106 br 41460 <__alt_data_end+0xfffcf460>
- 41b5c: 0141ffc4 movi r5,2047
- 41b60: 117fc71e bne r2,r5,41a80 <__alt_data_end+0xfffcfa80>
- 41b64: 4811883a mov r8,r9
- 41b68: 3023883a mov r17,r6
- 41b6c: 1021883a mov r16,r2
- 41b70: 003e3b06 br 41460 <__alt_data_end+0xfffcf460>
- 41b74: 10002f26 beq r2,zero,41c34 <__adddf3+0x850>
- 41b78: 4984b03a or r2,r9,r6
- 41b7c: 10001126 beq r2,zero,41bc4 <__adddf3+0x7e0>
- 41b80: 4004d0fa srli r2,r8,3
- 41b84: 8822d0fa srli r17,r17,3
- 41b88: 4010977a slli r8,r8,29
- 41b8c: 10c0022c andhi r3,r2,8
- 41b90: 4462b03a or r17,r8,r17
- 41b94: 183feb26 beq r3,zero,41b44 <__alt_data_end+0xfffcfb44>
- 41b98: 4808d0fa srli r4,r9,3
- 41b9c: 20c0022c andhi r3,r4,8
- 41ba0: 183fe81e bne r3,zero,41b44 <__alt_data_end+0xfffcfb44>
- 41ba4: 300cd0fa srli r6,r6,3
- 41ba8: 4806977a slli r3,r9,29
- 41bac: 2005883a mov r2,r4
- 41bb0: 19a2b03a or r17,r3,r6
- 41bb4: 003fe306 br 41b44 <__alt_data_end+0xfffcfb44>
- 41bb8: 0011883a mov r8,zero
- 41bbc: 0005883a mov r2,zero
- 41bc0: 003e3f06 br 414c0 <__alt_data_end+0xfffcf4c0>
- 41bc4: 0401ffc4 movi r16,2047
- 41bc8: 003e2506 br 41460 <__alt_data_end+0xfffcf460>
- 41bcc: 0013883a mov r9,zero
- 41bd0: 003f8406 br 419e4 <__alt_data_end+0xfffcf9e4>
- 41bd4: 0005883a mov r2,zero
- 41bd8: 0007883a mov r3,zero
- 41bdc: 003e8906 br 41604 <__alt_data_end+0xfffcf604>
- 41be0: 197ff804 addi r5,r3,-32
- 41be4: 01000804 movi r4,32
- 41be8: 414ad83a srl r5,r8,r5
- 41bec: 19002426 beq r3,r4,41c80 <__adddf3+0x89c>
- 41bf0: 01001004 movi r4,64
- 41bf4: 20c7c83a sub r3,r4,r3
- 41bf8: 40c6983a sll r3,r8,r3
- 41bfc: 1c46b03a or r3,r3,r17
- 41c00: 1806c03a cmpne r3,r3,zero
- 41c04: 28e2b03a or r17,r5,r3
- 41c08: 0007883a mov r3,zero
- 41c0c: 003f2306 br 4189c <__alt_data_end+0xfffcf89c>
- 41c10: 0007883a mov r3,zero
- 41c14: 5811883a mov r8,r11
- 41c18: 00bfffc4 movi r2,-1
- 41c1c: 0401ffc4 movi r16,2047
- 41c20: 003e7806 br 41604 <__alt_data_end+0xfffcf604>
- 41c24: 4462b03a or r17,r8,r17
- 41c28: 8822c03a cmpne r17,r17,zero
- 41c2c: 0009883a mov r4,zero
- 41c30: 003fa006 br 41ab4 <__alt_data_end+0xfffcfab4>
- 41c34: 4811883a mov r8,r9
- 41c38: 3023883a mov r17,r6
- 41c3c: 0401ffc4 movi r16,2047
- 41c40: 003e0706 br 41460 <__alt_data_end+0xfffcf460>
- 41c44: 4811883a mov r8,r9
- 41c48: 3023883a mov r17,r6
- 41c4c: 003e0406 br 41460 <__alt_data_end+0xfffcf460>
- 41c50: 21fff804 addi r7,r4,-32
- 41c54: 01400804 movi r5,32
- 41c58: 41ced83a srl r7,r8,r7
- 41c5c: 21400a26 beq r4,r5,41c88 <__adddf3+0x8a4>
- 41c60: 01401004 movi r5,64
- 41c64: 2909c83a sub r4,r5,r4
- 41c68: 4108983a sll r4,r8,r4
- 41c6c: 2448b03a or r4,r4,r17
- 41c70: 2008c03a cmpne r4,r4,zero
- 41c74: 3922b03a or r17,r7,r4
- 41c78: 0009883a mov r4,zero
- 41c7c: 003f8d06 br 41ab4 <__alt_data_end+0xfffcfab4>
- 41c80: 0007883a mov r3,zero
- 41c84: 003fdd06 br 41bfc <__alt_data_end+0xfffcfbfc>
- 41c88: 0009883a mov r4,zero
- 41c8c: 003ff706 br 41c6c <__alt_data_end+0xfffcfc6c>
- 00041c90 <__fixdfsi>:
- 41c90: 280cd53a srli r6,r5,20
- 41c94: 00c00434 movhi r3,16
- 41c98: 18ffffc4 addi r3,r3,-1
- 41c9c: 3181ffcc andi r6,r6,2047
- 41ca0: 01c0ff84 movi r7,1022
- 41ca4: 28c6703a and r3,r5,r3
- 41ca8: 280ad7fa srli r5,r5,31
- 41cac: 3980120e bge r7,r6,41cf8 <__fixdfsi+0x68>
- 41cb0: 00810744 movi r2,1053
- 41cb4: 11800c16 blt r2,r6,41ce8 <__fixdfsi+0x58>
- 41cb8: 00810cc4 movi r2,1075
- 41cbc: 1185c83a sub r2,r2,r6
- 41cc0: 01c007c4 movi r7,31
- 41cc4: 18c00434 orhi r3,r3,16
- 41cc8: 38800d16 blt r7,r2,41d00 <__fixdfsi+0x70>
- 41ccc: 31befb44 addi r6,r6,-1043
- 41cd0: 2084d83a srl r2,r4,r2
- 41cd4: 1986983a sll r3,r3,r6
- 41cd8: 1884b03a or r2,r3,r2
- 41cdc: 28000726 beq r5,zero,41cfc <__fixdfsi+0x6c>
- 41ce0: 0085c83a sub r2,zero,r2
- 41ce4: f800283a ret
- 41ce8: 00a00034 movhi r2,32768
- 41cec: 10bfffc4 addi r2,r2,-1
- 41cf0: 2885883a add r2,r5,r2
- 41cf4: f800283a ret
- 41cf8: 0005883a mov r2,zero
- 41cfc: f800283a ret
- 41d00: 008104c4 movi r2,1043
- 41d04: 1185c83a sub r2,r2,r6
- 41d08: 1884d83a srl r2,r3,r2
- 41d0c: 003ff306 br 41cdc <__alt_data_end+0xfffcfcdc>
- 00041d10 <__floatsidf>:
- 41d10: defffd04 addi sp,sp,-12
- 41d14: dfc00215 stw ra,8(sp)
- 41d18: dc400115 stw r17,4(sp)
- 41d1c: dc000015 stw r16,0(sp)
- 41d20: 20002b26 beq r4,zero,41dd0 <__floatsidf+0xc0>
- 41d24: 2023883a mov r17,r4
- 41d28: 2020d7fa srli r16,r4,31
- 41d2c: 20002d16 blt r4,zero,41de4 <__floatsidf+0xd4>
- 41d30: 8809883a mov r4,r17
- 41d34: 0041efc0 call 41efc <__clzsi2>
- 41d38: 01410784 movi r5,1054
- 41d3c: 288bc83a sub r5,r5,r2
- 41d40: 01010cc4 movi r4,1075
- 41d44: 2149c83a sub r4,r4,r5
- 41d48: 00c007c4 movi r3,31
- 41d4c: 1900160e bge r3,r4,41da8 <__floatsidf+0x98>
- 41d50: 00c104c4 movi r3,1043
- 41d54: 1947c83a sub r3,r3,r5
- 41d58: 88c6983a sll r3,r17,r3
- 41d5c: 00800434 movhi r2,16
- 41d60: 10bfffc4 addi r2,r2,-1
- 41d64: 1886703a and r3,r3,r2
- 41d68: 2941ffcc andi r5,r5,2047
- 41d6c: 800d883a mov r6,r16
- 41d70: 0005883a mov r2,zero
- 41d74: 280a953a slli r5,r5,20
- 41d78: 31803fcc andi r6,r6,255
- 41d7c: 01000434 movhi r4,16
- 41d80: 300c97fa slli r6,r6,31
- 41d84: 213fffc4 addi r4,r4,-1
- 41d88: 1906703a and r3,r3,r4
- 41d8c: 1946b03a or r3,r3,r5
- 41d90: 1986b03a or r3,r3,r6
- 41d94: dfc00217 ldw ra,8(sp)
- 41d98: dc400117 ldw r17,4(sp)
- 41d9c: dc000017 ldw r16,0(sp)
- 41da0: dec00304 addi sp,sp,12
- 41da4: f800283a ret
- 41da8: 00c002c4 movi r3,11
- 41dac: 1887c83a sub r3,r3,r2
- 41db0: 88c6d83a srl r3,r17,r3
- 41db4: 8904983a sll r2,r17,r4
- 41db8: 01000434 movhi r4,16
- 41dbc: 213fffc4 addi r4,r4,-1
- 41dc0: 2941ffcc andi r5,r5,2047
- 41dc4: 1906703a and r3,r3,r4
- 41dc8: 800d883a mov r6,r16
- 41dcc: 003fe906 br 41d74 <__alt_data_end+0xfffcfd74>
- 41dd0: 000d883a mov r6,zero
- 41dd4: 000b883a mov r5,zero
- 41dd8: 0007883a mov r3,zero
- 41ddc: 0005883a mov r2,zero
- 41de0: 003fe406 br 41d74 <__alt_data_end+0xfffcfd74>
- 41de4: 0123c83a sub r17,zero,r4
- 41de8: 003fd106 br 41d30 <__alt_data_end+0xfffcfd30>
- 00041dec <__extendsfdf2>:
- 41dec: 200ad5fa srli r5,r4,23
- 41df0: defffd04 addi sp,sp,-12
- 41df4: dc400115 stw r17,4(sp)
- 41df8: 29403fcc andi r5,r5,255
- 41dfc: 29800044 addi r6,r5,1
- 41e00: 04402034 movhi r17,128
- 41e04: dc000015 stw r16,0(sp)
- 41e08: 8c7fffc4 addi r17,r17,-1
- 41e0c: dfc00215 stw ra,8(sp)
- 41e10: 31803fcc andi r6,r6,255
- 41e14: 00800044 movi r2,1
- 41e18: 8922703a and r17,r17,r4
- 41e1c: 2020d7fa srli r16,r4,31
- 41e20: 1180110e bge r2,r6,41e68 <__extendsfdf2+0x7c>
- 41e24: 880cd0fa srli r6,r17,3
- 41e28: 8822977a slli r17,r17,29
- 41e2c: 2940e004 addi r5,r5,896
- 41e30: 2941ffcc andi r5,r5,2047
- 41e34: 2804953a slli r2,r5,20
- 41e38: 01400434 movhi r5,16
- 41e3c: 800697fa slli r3,r16,31
- 41e40: 297fffc4 addi r5,r5,-1
- 41e44: 314a703a and r5,r6,r5
- 41e48: 288ab03a or r5,r5,r2
- 41e4c: 28c6b03a or r3,r5,r3
- 41e50: 8805883a mov r2,r17
- 41e54: dfc00217 ldw ra,8(sp)
- 41e58: dc400117 ldw r17,4(sp)
- 41e5c: dc000017 ldw r16,0(sp)
- 41e60: dec00304 addi sp,sp,12
- 41e64: f800283a ret
- 41e68: 2800111e bne r5,zero,41eb0 <__extendsfdf2+0xc4>
- 41e6c: 88001c26 beq r17,zero,41ee0 <__extendsfdf2+0xf4>
- 41e70: 8809883a mov r4,r17
- 41e74: 0041efc0 call 41efc <__clzsi2>
- 41e78: 00c00284 movi r3,10
- 41e7c: 18801b16 blt r3,r2,41eec <__extendsfdf2+0x100>
- 41e80: 018002c4 movi r6,11
- 41e84: 308dc83a sub r6,r6,r2
- 41e88: 11000544 addi r4,r2,21
- 41e8c: 8986d83a srl r3,r17,r6
- 41e90: 8922983a sll r17,r17,r4
- 41e94: 0180e244 movi r6,905
- 41e98: 01400434 movhi r5,16
- 41e9c: 3085c83a sub r2,r6,r2
- 41ea0: 297fffc4 addi r5,r5,-1
- 41ea4: 194c703a and r6,r3,r5
- 41ea8: 1141ffcc andi r5,r2,2047
- 41eac: 003fe006 br 41e30 <__alt_data_end+0xfffcfe30>
- 41eb0: 88000826 beq r17,zero,41ed4 <__extendsfdf2+0xe8>
- 41eb4: 880cd0fa srli r6,r17,3
- 41eb8: 00800434 movhi r2,16
- 41ebc: 10bfffc4 addi r2,r2,-1
- 41ec0: 31800234 orhi r6,r6,8
- 41ec4: 8822977a slli r17,r17,29
- 41ec8: 308c703a and r6,r6,r2
- 41ecc: 0141ffc4 movi r5,2047
- 41ed0: 003fd706 br 41e30 <__alt_data_end+0xfffcfe30>
- 41ed4: 0141ffc4 movi r5,2047
- 41ed8: 000d883a mov r6,zero
- 41edc: 003fd406 br 41e30 <__alt_data_end+0xfffcfe30>
- 41ee0: 000b883a mov r5,zero
- 41ee4: 000d883a mov r6,zero
- 41ee8: 003fd106 br 41e30 <__alt_data_end+0xfffcfe30>
- 41eec: 11bffd44 addi r6,r2,-11
- 41ef0: 8986983a sll r3,r17,r6
- 41ef4: 0023883a mov r17,zero
- 41ef8: 003fe606 br 41e94 <__alt_data_end+0xfffcfe94>
- 00041efc <__clzsi2>:
- 41efc: 00bfffd4 movui r2,65535
- 41f00: 11000536 bltu r2,r4,41f18 <__clzsi2+0x1c>
- 41f04: 00803fc4 movi r2,255
- 41f08: 11000f36 bltu r2,r4,41f48 <__clzsi2+0x4c>
- 41f0c: 00800804 movi r2,32
- 41f10: 0007883a mov r3,zero
- 41f14: 00000506 br 41f2c <__clzsi2+0x30>
- 41f18: 00804034 movhi r2,256
- 41f1c: 10bfffc4 addi r2,r2,-1
- 41f20: 11000c2e bgeu r2,r4,41f54 <__clzsi2+0x58>
- 41f24: 00800204 movi r2,8
- 41f28: 00c00604 movi r3,24
- 41f2c: 20c8d83a srl r4,r4,r3
- 41f30: 00c00174 movhi r3,5
- 41f34: 18c83584 addi r3,r3,8406
- 41f38: 1909883a add r4,r3,r4
- 41f3c: 20c00003 ldbu r3,0(r4)
- 41f40: 10c5c83a sub r2,r2,r3
- 41f44: f800283a ret
- 41f48: 00800604 movi r2,24
- 41f4c: 00c00204 movi r3,8
- 41f50: 003ff606 br 41f2c <__alt_data_end+0xfffcff2c>
- 41f54: 00800404 movi r2,16
- 41f58: 1007883a mov r3,r2
- 41f5c: 003ff306 br 41f2c <__alt_data_end+0xfffcff2c>
- 00041f60 <_getc_r>:
- 41f60: defffd04 addi sp,sp,-12
- 41f64: dc000115 stw r16,4(sp)
- 41f68: dfc00215 stw ra,8(sp)
- 41f6c: 2021883a mov r16,r4
- 41f70: 20000226 beq r4,zero,41f7c <_getc_r+0x1c>
- 41f74: 20800e17 ldw r2,56(r4)
- 41f78: 10000c26 beq r2,zero,41fac <_getc_r+0x4c>
- 41f7c: 28800117 ldw r2,4(r5)
- 41f80: 10bfffc4 addi r2,r2,-1
- 41f84: 28800115 stw r2,4(r5)
- 41f88: 10000c16 blt r2,zero,41fbc <_getc_r+0x5c>
- 41f8c: 28800017 ldw r2,0(r5)
- 41f90: 10c00044 addi r3,r2,1
- 41f94: 28c00015 stw r3,0(r5)
- 41f98: 10800003 ldbu r2,0(r2)
- 41f9c: dfc00217 ldw ra,8(sp)
- 41fa0: dc000117 ldw r16,4(sp)
- 41fa4: dec00304 addi sp,sp,12
- 41fa8: f800283a ret
- 41fac: d9400015 stw r5,0(sp)
- 41fb0: 004652c0 call 4652c <__sinit>
- 41fb4: d9400017 ldw r5,0(sp)
- 41fb8: 003ff006 br 41f7c <__alt_data_end+0xfffcff7c>
- 41fbc: 8009883a mov r4,r16
- 41fc0: dfc00217 ldw ra,8(sp)
- 41fc4: dc000117 ldw r16,4(sp)
- 41fc8: dec00304 addi sp,sp,12
- 41fcc: 00420e41 jmpi 420e4 <__srget_r>
- 00041fd0 <getc>:
- 41fd0: 00800174 movhi r2,5
- 41fd4: defffd04 addi sp,sp,-12
- 41fd8: 10908b04 addi r2,r2,16940
- 41fdc: dc400115 stw r17,4(sp)
- 41fe0: 14400017 ldw r17,0(r2)
- 41fe4: dc000015 stw r16,0(sp)
- 41fe8: dfc00215 stw ra,8(sp)
- 41fec: 2021883a mov r16,r4
- 41ff0: 88000226 beq r17,zero,41ffc <getc+0x2c>
- 41ff4: 88800e17 ldw r2,56(r17)
- 41ff8: 10000d26 beq r2,zero,42030 <getc+0x60>
- 41ffc: 80800117 ldw r2,4(r16)
- 42000: 10bfffc4 addi r2,r2,-1
- 42004: 80800115 stw r2,4(r16)
- 42008: 10000c16 blt r2,zero,4203c <getc+0x6c>
- 4200c: 80800017 ldw r2,0(r16)
- 42010: 10c00044 addi r3,r2,1
- 42014: 80c00015 stw r3,0(r16)
- 42018: 10800003 ldbu r2,0(r2)
- 4201c: dfc00217 ldw ra,8(sp)
- 42020: dc400117 ldw r17,4(sp)
- 42024: dc000017 ldw r16,0(sp)
- 42028: dec00304 addi sp,sp,12
- 4202c: f800283a ret
- 42030: 8809883a mov r4,r17
- 42034: 004652c0 call 4652c <__sinit>
- 42038: 003ff006 br 41ffc <__alt_data_end+0xfffcfffc>
- 4203c: 800b883a mov r5,r16
- 42040: 8809883a mov r4,r17
- 42044: dfc00217 ldw ra,8(sp)
- 42048: dc400117 ldw r17,4(sp)
- 4204c: dc000017 ldw r16,0(sp)
- 42050: dec00304 addi sp,sp,12
- 42054: 00420e41 jmpi 420e4 <__srget_r>
- 00042058 <_printf_r>:
- 42058: defffd04 addi sp,sp,-12
- 4205c: 2805883a mov r2,r5
- 42060: dfc00015 stw ra,0(sp)
- 42064: d9800115 stw r6,4(sp)
- 42068: d9c00215 stw r7,8(sp)
- 4206c: 21400217 ldw r5,8(r4)
- 42070: d9c00104 addi r7,sp,4
- 42074: 100d883a mov r6,r2
- 42078: 004216c0 call 4216c <___vfprintf_internal_r>
- 4207c: dfc00017 ldw ra,0(sp)
- 42080: dec00304 addi sp,sp,12
- 42084: f800283a ret
- 00042088 <printf>:
- 42088: defffc04 addi sp,sp,-16
- 4208c: dfc00015 stw ra,0(sp)
- 42090: d9400115 stw r5,4(sp)
- 42094: d9800215 stw r6,8(sp)
- 42098: d9c00315 stw r7,12(sp)
- 4209c: 00800174 movhi r2,5
- 420a0: 10908b04 addi r2,r2,16940
- 420a4: 10800017 ldw r2,0(r2)
- 420a8: 200b883a mov r5,r4
- 420ac: d9800104 addi r6,sp,4
- 420b0: 11000217 ldw r4,8(r2)
- 420b4: 00444480 call 44448 <__vfprintf_internal>
- 420b8: dfc00017 ldw ra,0(sp)
- 420bc: dec00404 addi sp,sp,16
- 420c0: f800283a ret
- 000420c4 <_putchar_r>:
- 420c4: 21800217 ldw r6,8(r4)
- 420c8: 00489e81 jmpi 489e8 <_putc_r>
- 000420cc <putchar>:
- 420cc: 00800174 movhi r2,5
- 420d0: 10908b04 addi r2,r2,16940
- 420d4: 200b883a mov r5,r4
- 420d8: 11000017 ldw r4,0(r2)
- 420dc: 21800217 ldw r6,8(r4)
- 420e0: 00489e81 jmpi 489e8 <_putc_r>
- 000420e4 <__srget_r>:
- 420e4: defffd04 addi sp,sp,-12
- 420e8: dc400115 stw r17,4(sp)
- 420ec: dc000015 stw r16,0(sp)
- 420f0: dfc00215 stw ra,8(sp)
- 420f4: 2023883a mov r17,r4
- 420f8: 2821883a mov r16,r5
- 420fc: 20000226 beq r4,zero,42108 <__srget_r+0x24>
- 42100: 20800e17 ldw r2,56(r4)
- 42104: 10001026 beq r2,zero,42148 <__srget_r+0x64>
- 42108: 800b883a mov r5,r16
- 4210c: 8809883a mov r4,r17
- 42110: 0048b6c0 call 48b6c <__srefill_r>
- 42114: 10000e1e bne r2,zero,42150 <__srget_r+0x6c>
- 42118: 80c00017 ldw r3,0(r16)
- 4211c: 80800117 ldw r2,4(r16)
- 42120: 19000044 addi r4,r3,1
- 42124: 10bfffc4 addi r2,r2,-1
- 42128: 80800115 stw r2,4(r16)
- 4212c: 81000015 stw r4,0(r16)
- 42130: 18800003 ldbu r2,0(r3)
- 42134: dfc00217 ldw ra,8(sp)
- 42138: dc400117 ldw r17,4(sp)
- 4213c: dc000017 ldw r16,0(sp)
- 42140: dec00304 addi sp,sp,12
- 42144: f800283a ret
- 42148: 004652c0 call 4652c <__sinit>
- 4214c: 003fee06 br 42108 <__alt_data_end+0xfffd0108>
- 42150: 00bfffc4 movi r2,-1
- 42154: 003ff706 br 42134 <__alt_data_end+0xfffd0134>
- 00042158 <__srget>:
- 42158: 00800174 movhi r2,5
- 4215c: 10908b04 addi r2,r2,16940
- 42160: 200b883a mov r5,r4
- 42164: 11000017 ldw r4,0(r2)
- 42168: 00420e41 jmpi 420e4 <__srget_r>
- 0004216c <___vfprintf_internal_r>:
- 4216c: deffb804 addi sp,sp,-288
- 42170: dfc04715 stw ra,284(sp)
- 42174: ddc04515 stw r23,276(sp)
- 42178: dd404315 stw r21,268(sp)
- 4217c: d9002d15 stw r4,180(sp)
- 42180: 282f883a mov r23,r5
- 42184: 302b883a mov r21,r6
- 42188: d9c02e15 stw r7,184(sp)
- 4218c: df004615 stw fp,280(sp)
- 42190: dd804415 stw r22,272(sp)
- 42194: dd004215 stw r20,264(sp)
- 42198: dcc04115 stw r19,260(sp)
- 4219c: dc804015 stw r18,256(sp)
- 421a0: dc403f15 stw r17,252(sp)
- 421a4: dc003e15 stw r16,248(sp)
- 421a8: 0046be40 call 46be4 <_localeconv_r>
- 421ac: 10800017 ldw r2,0(r2)
- 421b0: 1009883a mov r4,r2
- 421b4: d8803415 stw r2,208(sp)
- 421b8: 00490200 call 49020 <strlen>
- 421bc: d8803715 stw r2,220(sp)
- 421c0: d8802d17 ldw r2,180(sp)
- 421c4: 10000226 beq r2,zero,421d0 <___vfprintf_internal_r+0x64>
- 421c8: 10800e17 ldw r2,56(r2)
- 421cc: 1000fb26 beq r2,zero,425bc <___vfprintf_internal_r+0x450>
- 421d0: b880030b ldhu r2,12(r23)
- 421d4: 10c8000c andi r3,r2,8192
- 421d8: 1800061e bne r3,zero,421f4 <___vfprintf_internal_r+0x88>
- 421dc: b9001917 ldw r4,100(r23)
- 421e0: 00f7ffc4 movi r3,-8193
- 421e4: 10880014 ori r2,r2,8192
- 421e8: 20c6703a and r3,r4,r3
- 421ec: b880030d sth r2,12(r23)
- 421f0: b8c01915 stw r3,100(r23)
- 421f4: 10c0020c andi r3,r2,8
- 421f8: 1800c326 beq r3,zero,42508 <___vfprintf_internal_r+0x39c>
- 421fc: b8c00417 ldw r3,16(r23)
- 42200: 1800c126 beq r3,zero,42508 <___vfprintf_internal_r+0x39c>
- 42204: 1080068c andi r2,r2,26
- 42208: 00c00284 movi r3,10
- 4220c: 10c0c626 beq r2,r3,42528 <___vfprintf_internal_r+0x3bc>
- 42210: d8c00404 addi r3,sp,16
- 42214: 05000174 movhi r20,5
- 42218: d9001e04 addi r4,sp,120
- 4221c: a5088784 addi r20,r20,8734
- 42220: d8c01e15 stw r3,120(sp)
- 42224: d8002015 stw zero,128(sp)
- 42228: d8001f15 stw zero,124(sp)
- 4222c: d8003315 stw zero,204(sp)
- 42230: d8003615 stw zero,216(sp)
- 42234: d8003815 stw zero,224(sp)
- 42238: 1811883a mov r8,r3
- 4223c: d8003915 stw zero,228(sp)
- 42240: d8003a15 stw zero,232(sp)
- 42244: d8002f15 stw zero,188(sp)
- 42248: d9002815 stw r4,160(sp)
- 4224c: a8800007 ldb r2,0(r21)
- 42250: 10028b26 beq r2,zero,42c80 <___vfprintf_internal_r+0xb14>
- 42254: 00c00944 movi r3,37
- 42258: a823883a mov r17,r21
- 4225c: 10c0021e bne r2,r3,42268 <___vfprintf_internal_r+0xfc>
- 42260: 00001406 br 422b4 <___vfprintf_internal_r+0x148>
- 42264: 10c00326 beq r2,r3,42274 <___vfprintf_internal_r+0x108>
- 42268: 8c400044 addi r17,r17,1
- 4226c: 88800007 ldb r2,0(r17)
- 42270: 103ffc1e bne r2,zero,42264 <__alt_data_end+0xfffd0264>
- 42274: 8d61c83a sub r16,r17,r21
- 42278: 80000e26 beq r16,zero,422b4 <___vfprintf_internal_r+0x148>
- 4227c: d8c02017 ldw r3,128(sp)
- 42280: d8801f17 ldw r2,124(sp)
- 42284: 45400015 stw r21,0(r8)
- 42288: 1c07883a add r3,r3,r16
- 4228c: 10800044 addi r2,r2,1
- 42290: d8c02015 stw r3,128(sp)
- 42294: 44000115 stw r16,4(r8)
- 42298: d8801f15 stw r2,124(sp)
- 4229c: 00c001c4 movi r3,7
- 422a0: 1880a916 blt r3,r2,42548 <___vfprintf_internal_r+0x3dc>
- 422a4: 42000204 addi r8,r8,8
- 422a8: d9402f17 ldw r5,188(sp)
- 422ac: 2c0b883a add r5,r5,r16
- 422b0: d9402f15 stw r5,188(sp)
- 422b4: 88800007 ldb r2,0(r17)
- 422b8: 1000aa26 beq r2,zero,42564 <___vfprintf_internal_r+0x3f8>
- 422bc: 8d400044 addi r21,r17,1
- 422c0: 8c400047 ldb r17,1(r17)
- 422c4: 0021883a mov r16,zero
- 422c8: 00bfffc4 movi r2,-1
- 422cc: 0025883a mov r18,zero
- 422d0: dc002905 stb r16,164(sp)
- 422d4: d8002785 stb zero,158(sp)
- 422d8: d8002b05 stb zero,172(sp)
- 422dc: d8802a15 stw r2,168(sp)
- 422e0: d8003115 stw zero,196(sp)
- 422e4: 04c01604 movi r19,88
- 422e8: 05800244 movi r22,9
- 422ec: 9021883a mov r16,r18
- 422f0: 4039883a mov fp,r8
- 422f4: ad400044 addi r21,r21,1
- 422f8: 88bff804 addi r2,r17,-32
- 422fc: 98833236 bltu r19,r2,42fc8 <___vfprintf_internal_r+0xe5c>
- 42300: 100490ba slli r2,r2,2
- 42304: 00c00134 movhi r3,4
- 42308: 18c8c604 addi r3,r3,8984
- 4230c: 10c5883a add r2,r2,r3
- 42310: 10800017 ldw r2,0(r2)
- 42314: 1000683a jmp r2
- 42318: 00042ec0 call 42ec <__alt_mem_onchip_memory2-0x3bd14>
- 4231c: 00042fc8 cmpgei zero,zero,4287
- 42320: 00042fc8 cmpgei zero,zero,4287
- 42324: 00042ee0 cmpeqi zero,zero,4283
- 42328: 00042fc8 cmpgei zero,zero,4287
- 4232c: 00042fc8 cmpgei zero,zero,4287
- 42330: 00042fc8 cmpgei zero,zero,4287
- 42334: 00042fc8 cmpgei zero,zero,4287
- 42338: 00042fc8 cmpgei zero,zero,4287
- 4233c: 00042fc8 cmpgei zero,zero,4287
- 42340: 000425c8 cmpgei zero,zero,4247
- 42344: 00042dd0 cmplti zero,zero,4279
- 42348: 00042fc8 cmpgei zero,zero,4287
- 4234c: 0004248c andi zero,zero,4242
- 42350: 000425ec andhi zero,zero,4247
- 42354: 00042fc8 cmpgei zero,zero,4287
- 42358: 0004263c xorhi zero,zero,4248
- 4235c: 00042648 cmpgei zero,zero,4249
- 42360: 00042648 cmpgei zero,zero,4249
- 42364: 00042648 cmpgei zero,zero,4249
- 42368: 00042648 cmpgei zero,zero,4249
- 4236c: 00042648 cmpgei zero,zero,4249
- 42370: 00042648 cmpgei zero,zero,4249
- 42374: 00042648 cmpgei zero,zero,4249
- 42378: 00042648 cmpgei zero,zero,4249
- 4237c: 00042648 cmpgei zero,zero,4249
- 42380: 00042fc8 cmpgei zero,zero,4287
- 42384: 00042fc8 cmpgei zero,zero,4287
- 42388: 00042fc8 cmpgei zero,zero,4287
- 4238c: 00042fc8 cmpgei zero,zero,4287
- 42390: 00042fc8 cmpgei zero,zero,4287
- 42394: 00042fc8 cmpgei zero,zero,4287
- 42398: 00042fc8 cmpgei zero,zero,4287
- 4239c: 00042fc8 cmpgei zero,zero,4287
- 423a0: 00042fc8 cmpgei zero,zero,4287
- 423a4: 00042fc8 cmpgei zero,zero,4287
- 423a8: 00042684 movi zero,4250
- 423ac: 0004274c andi zero,zero,4253
- 423b0: 00042fc8 cmpgei zero,zero,4287
- 423b4: 0004274c andi zero,zero,4253
- 423b8: 00042fc8 cmpgei zero,zero,4287
- 423bc: 00042fc8 cmpgei zero,zero,4287
- 423c0: 00042fc8 cmpgei zero,zero,4287
- 423c4: 00042fc8 cmpgei zero,zero,4287
- 423c8: 000427f8 rdprs zero,zero,4255
- 423cc: 00042fc8 cmpgei zero,zero,4287
- 423d0: 00042fc8 cmpgei zero,zero,4287
- 423d4: 00042804 movi zero,4256
- 423d8: 00042fc8 cmpgei zero,zero,4287
- 423dc: 00042fc8 cmpgei zero,zero,4287
- 423e0: 00042fc8 cmpgei zero,zero,4287
- 423e4: 00042fc8 cmpgei zero,zero,4287
- 423e8: 00042fc8 cmpgei zero,zero,4287
- 423ec: 00042c88 cmpgei zero,zero,4274
- 423f0: 00042fc8 cmpgei zero,zero,4287
- 423f4: 00042fc8 cmpgei zero,zero,4287
- 423f8: 00042cf4 movhi zero,4275
- 423fc: 00042fc8 cmpgei zero,zero,4287
- 42400: 00042fc8 cmpgei zero,zero,4287
- 42404: 00042fc8 cmpgei zero,zero,4287
- 42408: 00042fc8 cmpgei zero,zero,4287
- 4240c: 00042fc8 cmpgei zero,zero,4287
- 42410: 00042fc8 cmpgei zero,zero,4287
- 42414: 00042fc8 cmpgei zero,zero,4287
- 42418: 00042fc8 cmpgei zero,zero,4287
- 4241c: 00042fc8 cmpgei zero,zero,4287
- 42420: 00042fc8 cmpgei zero,zero,4287
- 42424: 00042f6c andhi zero,zero,4285
- 42428: 00042eec andhi zero,zero,4283
- 4242c: 0004274c andi zero,zero,4253
- 42430: 0004274c andi zero,zero,4253
- 42434: 0004274c andi zero,zero,4253
- 42438: 00042f0c andi zero,zero,4284
- 4243c: 00042eec andhi zero,zero,4283
- 42440: 00042fc8 cmpgei zero,zero,4287
- 42444: 00042fc8 cmpgei zero,zero,4287
- 42448: 00042f18 cmpnei zero,zero,4284
- 4244c: 00042fc8 cmpgei zero,zero,4287
- 42450: 00042f2c andhi zero,zero,4284
- 42454: 00042db0 cmpltui zero,zero,4278
- 42458: 00042498 cmpnei zero,zero,4242
- 4245c: 00042de8 cmpgeui zero,zero,4279
- 42460: 00042fc8 cmpgei zero,zero,4287
- 42464: 00042df4 movhi zero,4279
- 42468: 00042fc8 cmpgei zero,zero,4287
- 4246c: 00042e58 cmpnei zero,zero,4281
- 42470: 00042fc8 cmpgei zero,zero,4287
- 42474: 00042fc8 cmpgei zero,zero,4287
- 42478: 00042e78 rdprs zero,zero,4281
- 4247c: d8c03117 ldw r3,196(sp)
- 42480: d8802e15 stw r2,184(sp)
- 42484: 00c7c83a sub r3,zero,r3
- 42488: d8c03115 stw r3,196(sp)
- 4248c: 84000114 ori r16,r16,4
- 42490: ac400007 ldb r17,0(r21)
- 42494: 003f9706 br 422f4 <__alt_data_end+0xfffd02f4>
- 42498: 00800c04 movi r2,48
- 4249c: d8802705 stb r2,156(sp)
- 424a0: 00801e04 movi r2,120
- 424a4: d8802745 stb r2,157(sp)
- 424a8: d9002a17 ldw r4,168(sp)
- 424ac: d8802e17 ldw r2,184(sp)
- 424b0: d8002785 stb zero,158(sp)
- 424b4: e011883a mov r8,fp
- 424b8: 10c00104 addi r3,r2,4
- 424bc: 14c00017 ldw r19,0(r2)
- 424c0: 002d883a mov r22,zero
- 424c4: 80800094 ori r2,r16,2
- 424c8: 2002ca16 blt r4,zero,42ff4 <___vfprintf_internal_r+0xe88>
- 424cc: 00bfdfc4 movi r2,-129
- 424d0: 80a4703a and r18,r16,r2
- 424d4: d8c02e15 stw r3,184(sp)
- 424d8: 94800094 ori r18,r18,2
- 424dc: 9802b41e bne r19,zero,42fb0 <___vfprintf_internal_r+0xe44>
- 424e0: 01400174 movhi r5,5
- 424e4: 29488004 addi r5,r5,8704
- 424e8: d9403915 stw r5,228(sp)
- 424ec: 04401e04 movi r17,120
- 424f0: d8802a17 ldw r2,168(sp)
- 424f4: 0039883a mov fp,zero
- 424f8: 1001fa26 beq r2,zero,42ce4 <___vfprintf_internal_r+0xb78>
- 424fc: 0027883a mov r19,zero
- 42500: 002d883a mov r22,zero
- 42504: 00021906 br 42d6c <___vfprintf_internal_r+0xc00>
- 42508: d9002d17 ldw r4,180(sp)
- 4250c: b80b883a mov r5,r23
- 42510: 00445200 call 44520 <__swsetup_r>
- 42514: 1005dc1e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c>
- 42518: b880030b ldhu r2,12(r23)
- 4251c: 00c00284 movi r3,10
- 42520: 1080068c andi r2,r2,26
- 42524: 10ff3a1e bne r2,r3,42210 <__alt_data_end+0xfffd0210>
- 42528: b880038f ldh r2,14(r23)
- 4252c: 103f3816 blt r2,zero,42210 <__alt_data_end+0xfffd0210>
- 42530: d9c02e17 ldw r7,184(sp)
- 42534: d9002d17 ldw r4,180(sp)
- 42538: a80d883a mov r6,r21
- 4253c: b80b883a mov r5,r23
- 42540: 00444640 call 44464 <__sbprintf>
- 42544: 00001106 br 4258c <___vfprintf_internal_r+0x420>
- 42548: d9002d17 ldw r4,180(sp)
- 4254c: d9801e04 addi r6,sp,120
- 42550: b80b883a mov r5,r23
- 42554: 00491b40 call 491b4 <__sprint_r>
- 42558: 1000081e bne r2,zero,4257c <___vfprintf_internal_r+0x410>
- 4255c: da000404 addi r8,sp,16
- 42560: 003f5106 br 422a8 <__alt_data_end+0xfffd02a8>
- 42564: d8802017 ldw r2,128(sp)
- 42568: 10000426 beq r2,zero,4257c <___vfprintf_internal_r+0x410>
- 4256c: d9002d17 ldw r4,180(sp)
- 42570: d9801e04 addi r6,sp,120
- 42574: b80b883a mov r5,r23
- 42578: 00491b40 call 491b4 <__sprint_r>
- 4257c: b880030b ldhu r2,12(r23)
- 42580: 1080100c andi r2,r2,64
- 42584: 1005c01e bne r2,zero,43c88 <___vfprintf_internal_r+0x1b1c>
- 42588: d8802f17 ldw r2,188(sp)
- 4258c: dfc04717 ldw ra,284(sp)
- 42590: df004617 ldw fp,280(sp)
- 42594: ddc04517 ldw r23,276(sp)
- 42598: dd804417 ldw r22,272(sp)
- 4259c: dd404317 ldw r21,268(sp)
- 425a0: dd004217 ldw r20,264(sp)
- 425a4: dcc04117 ldw r19,260(sp)
- 425a8: dc804017 ldw r18,256(sp)
- 425ac: dc403f17 ldw r17,252(sp)
- 425b0: dc003e17 ldw r16,248(sp)
- 425b4: dec04804 addi sp,sp,288
- 425b8: f800283a ret
- 425bc: d9002d17 ldw r4,180(sp)
- 425c0: 004652c0 call 4652c <__sinit>
- 425c4: 003f0206 br 421d0 <__alt_data_end+0xfffd01d0>
- 425c8: d9002e17 ldw r4,184(sp)
- 425cc: d9402e17 ldw r5,184(sp)
- 425d0: 21000017 ldw r4,0(r4)
- 425d4: 28800104 addi r2,r5,4
- 425d8: d9003115 stw r4,196(sp)
- 425dc: 203fa716 blt r4,zero,4247c <__alt_data_end+0xfffd047c>
- 425e0: d8802e15 stw r2,184(sp)
- 425e4: ac400007 ldb r17,0(r21)
- 425e8: 003f4206 br 422f4 <__alt_data_end+0xfffd02f4>
- 425ec: ac400007 ldb r17,0(r21)
- 425f0: 01000a84 movi r4,42
- 425f4: a8c00044 addi r3,r21,1
- 425f8: 89075826 beq r17,r4,4435c <___vfprintf_internal_r+0x21f0>
- 425fc: 8cbff404 addi r18,r17,-48
- 42600: b486ae36 bltu r22,r18,440bc <___vfprintf_internal_r+0x1f50>
- 42604: 0009883a mov r4,zero
- 42608: 1823883a mov r17,r3
- 4260c: 01400284 movi r5,10
- 42610: 004c9f80 call 4c9f8 <__mulsi3>
- 42614: 88c00007 ldb r3,0(r17)
- 42618: 1489883a add r4,r2,r18
- 4261c: 8d400044 addi r21,r17,1
- 42620: 1cbff404 addi r18,r3,-48
- 42624: a823883a mov r17,r21
- 42628: b4bff82e bgeu r22,r18,4260c <__alt_data_end+0xfffd060c>
- 4262c: 1823883a mov r17,r3
- 42630: 2005f616 blt r4,zero,43e0c <___vfprintf_internal_r+0x1ca0>
- 42634: d9002a15 stw r4,168(sp)
- 42638: 003f2f06 br 422f8 <__alt_data_end+0xfffd02f8>
- 4263c: 84002014 ori r16,r16,128
- 42640: ac400007 ldb r17,0(r21)
- 42644: 003f2b06 br 422f4 <__alt_data_end+0xfffd02f4>
- 42648: 8cbff404 addi r18,r17,-48
- 4264c: d8003115 stw zero,196(sp)
- 42650: 0009883a mov r4,zero
- 42654: a823883a mov r17,r21
- 42658: 01400284 movi r5,10
- 4265c: 004c9f80 call 4c9f8 <__mulsi3>
- 42660: 88c00007 ldb r3,0(r17)
- 42664: 9089883a add r4,r18,r2
- 42668: ad400044 addi r21,r21,1
- 4266c: 1cbff404 addi r18,r3,-48
- 42670: a823883a mov r17,r21
- 42674: b4bff82e bgeu r22,r18,42658 <__alt_data_end+0xfffd0658>
- 42678: 1823883a mov r17,r3
- 4267c: d9003115 stw r4,196(sp)
- 42680: 003f1d06 br 422f8 <__alt_data_end+0xfffd02f8>
- 42684: 8025883a mov r18,r16
- 42688: dc002903 ldbu r16,164(sp)
- 4268c: e011883a mov r8,fp
- 42690: 84003fcc andi r16,r16,255
- 42694: 8007531e bne r16,zero,443e4 <___vfprintf_internal_r+0x2278>
- 42698: 94800414 ori r18,r18,16
- 4269c: 9080080c andi r2,r18,32
- 426a0: 1003a326 beq r2,zero,43530 <___vfprintf_internal_r+0x13c4>
- 426a4: d9002e17 ldw r4,184(sp)
- 426a8: 20800117 ldw r2,4(r4)
- 426ac: 24c00017 ldw r19,0(r4)
- 426b0: 21000204 addi r4,r4,8
- 426b4: d9002e15 stw r4,184(sp)
- 426b8: 102d883a mov r22,r2
- 426bc: 10047316 blt r2,zero,4388c <___vfprintf_internal_r+0x1720>
- 426c0: d9002a17 ldw r4,168(sp)
- 426c4: df002783 ldbu fp,158(sp)
- 426c8: 2003e416 blt r4,zero,4365c <___vfprintf_internal_r+0x14f0>
- 426cc: 00ffdfc4 movi r3,-129
- 426d0: 9d84b03a or r2,r19,r22
- 426d4: 90e4703a and r18,r18,r3
- 426d8: 10018026 beq r2,zero,42cdc <___vfprintf_internal_r+0xb70>
- 426dc: b003ab26 beq r22,zero,4358c <___vfprintf_internal_r+0x1420>
- 426e0: dc402915 stw r17,164(sp)
- 426e4: dc001e04 addi r16,sp,120
- 426e8: b023883a mov r17,r22
- 426ec: 402d883a mov r22,r8
- 426f0: 9809883a mov r4,r19
- 426f4: 880b883a mov r5,r17
- 426f8: 01800284 movi r6,10
- 426fc: 000f883a mov r7,zero
- 42700: 004c2800 call 4c280 <__umoddi3>
- 42704: 10800c04 addi r2,r2,48
- 42708: 843fffc4 addi r16,r16,-1
- 4270c: 9809883a mov r4,r19
- 42710: 880b883a mov r5,r17
- 42714: 80800005 stb r2,0(r16)
- 42718: 01800284 movi r6,10
- 4271c: 000f883a mov r7,zero
- 42720: 004bc840 call 4bc84 <__udivdi3>
- 42724: 1027883a mov r19,r2
- 42728: 10c4b03a or r2,r2,r3
- 4272c: 1823883a mov r17,r3
- 42730: 103fef1e bne r2,zero,426f0 <__alt_data_end+0xfffd06f0>
- 42734: d8c02817 ldw r3,160(sp)
- 42738: dc402917 ldw r17,164(sp)
- 4273c: b011883a mov r8,r22
- 42740: 1c07c83a sub r3,r3,r16
- 42744: d8c02b15 stw r3,172(sp)
- 42748: 00005f06 br 428c8 <___vfprintf_internal_r+0x75c>
- 4274c: 8025883a mov r18,r16
- 42750: dc002903 ldbu r16,164(sp)
- 42754: e011883a mov r8,fp
- 42758: 84003fcc andi r16,r16,255
- 4275c: 80071e1e bne r16,zero,443d8 <___vfprintf_internal_r+0x226c>
- 42760: 9080020c andi r2,r18,8
- 42764: 1004af26 beq r2,zero,43a24 <___vfprintf_internal_r+0x18b8>
- 42768: d9002e17 ldw r4,184(sp)
- 4276c: d9402e17 ldw r5,184(sp)
- 42770: d8802e17 ldw r2,184(sp)
- 42774: 21000017 ldw r4,0(r4)
- 42778: 29400117 ldw r5,4(r5)
- 4277c: 10800204 addi r2,r2,8
- 42780: d9003615 stw r4,216(sp)
- 42784: d9403815 stw r5,224(sp)
- 42788: d8802e15 stw r2,184(sp)
- 4278c: d9003617 ldw r4,216(sp)
- 42790: d9403817 ldw r5,224(sp)
- 42794: da003d15 stw r8,244(sp)
- 42798: 04000044 movi r16,1
- 4279c: 0048d400 call 48d40 <__fpclassifyd>
- 427a0: da003d17 ldw r8,244(sp)
- 427a4: 1404441e bne r2,r16,438b8 <___vfprintf_internal_r+0x174c>
- 427a8: d9003617 ldw r4,216(sp)
- 427ac: d9403817 ldw r5,224(sp)
- 427b0: 000d883a mov r6,zero
- 427b4: 000f883a mov r7,zero
- 427b8: 004d5540 call 4d554 <__ledf2>
- 427bc: da003d17 ldw r8,244(sp)
- 427c0: 1005e316 blt r2,zero,43f50 <___vfprintf_internal_r+0x1de4>
- 427c4: df002783 ldbu fp,158(sp)
- 427c8: 008011c4 movi r2,71
- 427cc: 1445580e bge r2,r17,43d30 <___vfprintf_internal_r+0x1bc4>
- 427d0: 04000174 movhi r16,5
- 427d4: 84087804 addi r16,r16,8672
- 427d8: 00c000c4 movi r3,3
- 427dc: 00bfdfc4 movi r2,-129
- 427e0: d8c02915 stw r3,164(sp)
- 427e4: 90a4703a and r18,r18,r2
- 427e8: d8c02b15 stw r3,172(sp)
- 427ec: d8002a15 stw zero,168(sp)
- 427f0: d8003215 stw zero,200(sp)
- 427f4: 00003a06 br 428e0 <___vfprintf_internal_r+0x774>
- 427f8: 84000214 ori r16,r16,8
- 427fc: ac400007 ldb r17,0(r21)
- 42800: 003ebc06 br 422f4 <__alt_data_end+0xfffd02f4>
- 42804: 8025883a mov r18,r16
- 42808: dc002903 ldbu r16,164(sp)
- 4280c: e011883a mov r8,fp
- 42810: 84003fcc andi r16,r16,255
- 42814: 8007001e bne r16,zero,44418 <___vfprintf_internal_r+0x22ac>
- 42818: 94800414 ori r18,r18,16
- 4281c: 9080080c andi r2,r18,32
- 42820: 1002fa26 beq r2,zero,4340c <___vfprintf_internal_r+0x12a0>
- 42824: d9002e17 ldw r4,184(sp)
- 42828: d9402a17 ldw r5,168(sp)
- 4282c: d8002785 stb zero,158(sp)
- 42830: 20800204 addi r2,r4,8
- 42834: 24c00017 ldw r19,0(r4)
- 42838: 25800117 ldw r22,4(r4)
- 4283c: 2804b116 blt r5,zero,43b04 <___vfprintf_internal_r+0x1998>
- 42840: 013fdfc4 movi r4,-129
- 42844: 9d86b03a or r3,r19,r22
- 42848: d8802e15 stw r2,184(sp)
- 4284c: 9124703a and r18,r18,r4
- 42850: 1802fb1e bne r3,zero,43440 <___vfprintf_internal_r+0x12d4>
- 42854: d8c02a17 ldw r3,168(sp)
- 42858: 0039883a mov fp,zero
- 4285c: 1805e526 beq r3,zero,43ff4 <___vfprintf_internal_r+0x1e88>
- 42860: 0027883a mov r19,zero
- 42864: 002d883a mov r22,zero
- 42868: dc001e04 addi r16,sp,120
- 4286c: 9806d0fa srli r3,r19,3
- 42870: b008977a slli r4,r22,29
- 42874: b02cd0fa srli r22,r22,3
- 42878: 9cc001cc andi r19,r19,7
- 4287c: 98800c04 addi r2,r19,48
- 42880: 843fffc4 addi r16,r16,-1
- 42884: 20e6b03a or r19,r4,r3
- 42888: 80800005 stb r2,0(r16)
- 4288c: 9d86b03a or r3,r19,r22
- 42890: 183ff61e bne r3,zero,4286c <__alt_data_end+0xfffd086c>
- 42894: 90c0004c andi r3,r18,1
- 42898: 18014126 beq r3,zero,42da0 <___vfprintf_internal_r+0xc34>
- 4289c: 10803fcc andi r2,r2,255
- 428a0: 1080201c xori r2,r2,128
- 428a4: 10bfe004 addi r2,r2,-128
- 428a8: 00c00c04 movi r3,48
- 428ac: 10c13c26 beq r2,r3,42da0 <___vfprintf_internal_r+0xc34>
- 428b0: 80ffffc5 stb r3,-1(r16)
- 428b4: d8c02817 ldw r3,160(sp)
- 428b8: 80bfffc4 addi r2,r16,-1
- 428bc: 1021883a mov r16,r2
- 428c0: 1887c83a sub r3,r3,r2
- 428c4: d8c02b15 stw r3,172(sp)
- 428c8: d8802b17 ldw r2,172(sp)
- 428cc: d9002a17 ldw r4,168(sp)
- 428d0: 1100010e bge r2,r4,428d8 <___vfprintf_internal_r+0x76c>
- 428d4: 2005883a mov r2,r4
- 428d8: d8802915 stw r2,164(sp)
- 428dc: d8003215 stw zero,200(sp)
- 428e0: e7003fcc andi fp,fp,255
- 428e4: e700201c xori fp,fp,128
- 428e8: e73fe004 addi fp,fp,-128
- 428ec: e0000326 beq fp,zero,428fc <___vfprintf_internal_r+0x790>
- 428f0: d8c02917 ldw r3,164(sp)
- 428f4: 18c00044 addi r3,r3,1
- 428f8: d8c02915 stw r3,164(sp)
- 428fc: 90c0008c andi r3,r18,2
- 42900: d8c02c15 stw r3,176(sp)
- 42904: 18000326 beq r3,zero,42914 <___vfprintf_internal_r+0x7a8>
- 42908: d8c02917 ldw r3,164(sp)
- 4290c: 18c00084 addi r3,r3,2
- 42910: d8c02915 stw r3,164(sp)
- 42914: 90c0210c andi r3,r18,132
- 42918: d8c03015 stw r3,192(sp)
- 4291c: 1801c51e bne r3,zero,43034 <___vfprintf_internal_r+0xec8>
- 42920: d9003117 ldw r4,196(sp)
- 42924: d8c02917 ldw r3,164(sp)
- 42928: 20e7c83a sub r19,r4,r3
- 4292c: 04c1c10e bge zero,r19,43034 <___vfprintf_internal_r+0xec8>
- 42930: 02400404 movi r9,16
- 42934: d8c02017 ldw r3,128(sp)
- 42938: d8801f17 ldw r2,124(sp)
- 4293c: 4cc52f0e bge r9,r19,43dfc <___vfprintf_internal_r+0x1c90>
- 42940: 01400174 movhi r5,5
- 42944: 29488b84 addi r5,r5,8750
- 42948: dc403b15 stw r17,236(sp)
- 4294c: d9403515 stw r5,212(sp)
- 42950: 9823883a mov r17,r19
- 42954: 482d883a mov r22,r9
- 42958: 9027883a mov r19,r18
- 4295c: 070001c4 movi fp,7
- 42960: 8025883a mov r18,r16
- 42964: dc002d17 ldw r16,180(sp)
- 42968: 00000306 br 42978 <___vfprintf_internal_r+0x80c>
- 4296c: 8c7ffc04 addi r17,r17,-16
- 42970: 42000204 addi r8,r8,8
- 42974: b440130e bge r22,r17,429c4 <___vfprintf_internal_r+0x858>
- 42978: 01000174 movhi r4,5
- 4297c: 18c00404 addi r3,r3,16
- 42980: 10800044 addi r2,r2,1
- 42984: 21088b84 addi r4,r4,8750
- 42988: 41000015 stw r4,0(r8)
- 4298c: 45800115 stw r22,4(r8)
- 42990: d8c02015 stw r3,128(sp)
- 42994: d8801f15 stw r2,124(sp)
- 42998: e0bff40e bge fp,r2,4296c <__alt_data_end+0xfffd096c>
- 4299c: d9801e04 addi r6,sp,120
- 429a0: b80b883a mov r5,r23
- 429a4: 8009883a mov r4,r16
- 429a8: 00491b40 call 491b4 <__sprint_r>
- 429ac: 103ef31e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 429b0: 8c7ffc04 addi r17,r17,-16
- 429b4: d8c02017 ldw r3,128(sp)
- 429b8: d8801f17 ldw r2,124(sp)
- 429bc: da000404 addi r8,sp,16
- 429c0: b47fed16 blt r22,r17,42978 <__alt_data_end+0xfffd0978>
- 429c4: 9021883a mov r16,r18
- 429c8: 9825883a mov r18,r19
- 429cc: 8827883a mov r19,r17
- 429d0: dc403b17 ldw r17,236(sp)
- 429d4: d9403517 ldw r5,212(sp)
- 429d8: 98c7883a add r3,r19,r3
- 429dc: 10800044 addi r2,r2,1
- 429e0: 41400015 stw r5,0(r8)
- 429e4: 44c00115 stw r19,4(r8)
- 429e8: d8c02015 stw r3,128(sp)
- 429ec: d8801f15 stw r2,124(sp)
- 429f0: 010001c4 movi r4,7
- 429f4: 2082c516 blt r4,r2,4350c <___vfprintf_internal_r+0x13a0>
- 429f8: df002787 ldb fp,158(sp)
- 429fc: 42000204 addi r8,r8,8
- 42a00: e0000c26 beq fp,zero,42a34 <___vfprintf_internal_r+0x8c8>
- 42a04: d8801f17 ldw r2,124(sp)
- 42a08: d9002784 addi r4,sp,158
- 42a0c: 18c00044 addi r3,r3,1
- 42a10: 10800044 addi r2,r2,1
- 42a14: 41000015 stw r4,0(r8)
- 42a18: 01000044 movi r4,1
- 42a1c: 41000115 stw r4,4(r8)
- 42a20: d8c02015 stw r3,128(sp)
- 42a24: d8801f15 stw r2,124(sp)
- 42a28: 010001c4 movi r4,7
- 42a2c: 20825e16 blt r4,r2,433a8 <___vfprintf_internal_r+0x123c>
- 42a30: 42000204 addi r8,r8,8
- 42a34: d8802c17 ldw r2,176(sp)
- 42a38: 10000c26 beq r2,zero,42a6c <___vfprintf_internal_r+0x900>
- 42a3c: d8801f17 ldw r2,124(sp)
- 42a40: d9002704 addi r4,sp,156
- 42a44: 18c00084 addi r3,r3,2
- 42a48: 10800044 addi r2,r2,1
- 42a4c: 41000015 stw r4,0(r8)
- 42a50: 01000084 movi r4,2
- 42a54: 41000115 stw r4,4(r8)
- 42a58: d8c02015 stw r3,128(sp)
- 42a5c: d8801f15 stw r2,124(sp)
- 42a60: 010001c4 movi r4,7
- 42a64: 20825816 blt r4,r2,433c8 <___vfprintf_internal_r+0x125c>
- 42a68: 42000204 addi r8,r8,8
- 42a6c: d9003017 ldw r4,192(sp)
- 42a70: 00802004 movi r2,128
- 42a74: 2081bb26 beq r4,r2,43164 <___vfprintf_internal_r+0xff8>
- 42a78: d9402a17 ldw r5,168(sp)
- 42a7c: d8802b17 ldw r2,172(sp)
- 42a80: 28adc83a sub r22,r5,r2
- 42a84: 0580310e bge zero,r22,42b4c <___vfprintf_internal_r+0x9e0>
- 42a88: 07000404 movi fp,16
- 42a8c: d8801f17 ldw r2,124(sp)
- 42a90: e584360e bge fp,r22,43b6c <___vfprintf_internal_r+0x1a00>
- 42a94: 01400174 movhi r5,5
- 42a98: 29488784 addi r5,r5,8734
- 42a9c: dc402a15 stw r17,168(sp)
- 42aa0: d9402c15 stw r5,176(sp)
- 42aa4: b023883a mov r17,r22
- 42aa8: 04c001c4 movi r19,7
- 42aac: a82d883a mov r22,r21
- 42ab0: 902b883a mov r21,r18
- 42ab4: 8025883a mov r18,r16
- 42ab8: dc002d17 ldw r16,180(sp)
- 42abc: 00000306 br 42acc <___vfprintf_internal_r+0x960>
- 42ac0: 8c7ffc04 addi r17,r17,-16
- 42ac4: 42000204 addi r8,r8,8
- 42ac8: e440110e bge fp,r17,42b10 <___vfprintf_internal_r+0x9a4>
- 42acc: 18c00404 addi r3,r3,16
- 42ad0: 10800044 addi r2,r2,1
- 42ad4: 45000015 stw r20,0(r8)
- 42ad8: 47000115 stw fp,4(r8)
- 42adc: d8c02015 stw r3,128(sp)
- 42ae0: d8801f15 stw r2,124(sp)
- 42ae4: 98bff60e bge r19,r2,42ac0 <__alt_data_end+0xfffd0ac0>
- 42ae8: d9801e04 addi r6,sp,120
- 42aec: b80b883a mov r5,r23
- 42af0: 8009883a mov r4,r16
- 42af4: 00491b40 call 491b4 <__sprint_r>
- 42af8: 103ea01e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 42afc: 8c7ffc04 addi r17,r17,-16
- 42b00: d8c02017 ldw r3,128(sp)
- 42b04: d8801f17 ldw r2,124(sp)
- 42b08: da000404 addi r8,sp,16
- 42b0c: e47fef16 blt fp,r17,42acc <__alt_data_end+0xfffd0acc>
- 42b10: 9021883a mov r16,r18
- 42b14: a825883a mov r18,r21
- 42b18: b02b883a mov r21,r22
- 42b1c: 882d883a mov r22,r17
- 42b20: dc402a17 ldw r17,168(sp)
- 42b24: d9002c17 ldw r4,176(sp)
- 42b28: 1d87883a add r3,r3,r22
- 42b2c: 10800044 addi r2,r2,1
- 42b30: 41000015 stw r4,0(r8)
- 42b34: 45800115 stw r22,4(r8)
- 42b38: d8c02015 stw r3,128(sp)
- 42b3c: d8801f15 stw r2,124(sp)
- 42b40: 010001c4 movi r4,7
- 42b44: 20821016 blt r4,r2,43388 <___vfprintf_internal_r+0x121c>
- 42b48: 42000204 addi r8,r8,8
- 42b4c: 9080400c andi r2,r18,256
- 42b50: 10013a1e bne r2,zero,4303c <___vfprintf_internal_r+0xed0>
- 42b54: d9402b17 ldw r5,172(sp)
- 42b58: d8801f17 ldw r2,124(sp)
- 42b5c: 44000015 stw r16,0(r8)
- 42b60: 1947883a add r3,r3,r5
- 42b64: 10800044 addi r2,r2,1
- 42b68: 41400115 stw r5,4(r8)
- 42b6c: d8c02015 stw r3,128(sp)
- 42b70: d8801f15 stw r2,124(sp)
- 42b74: 010001c4 movi r4,7
- 42b78: 2081f516 blt r4,r2,43350 <___vfprintf_internal_r+0x11e4>
- 42b7c: 42000204 addi r8,r8,8
- 42b80: 9480010c andi r18,r18,4
- 42b84: 90003226 beq r18,zero,42c50 <___vfprintf_internal_r+0xae4>
- 42b88: d9403117 ldw r5,196(sp)
- 42b8c: d8802917 ldw r2,164(sp)
- 42b90: 28a1c83a sub r16,r5,r2
- 42b94: 04002e0e bge zero,r16,42c50 <___vfprintf_internal_r+0xae4>
- 42b98: 04400404 movi r17,16
- 42b9c: d8801f17 ldw r2,124(sp)
- 42ba0: 8c04c40e bge r17,r16,43eb4 <___vfprintf_internal_r+0x1d48>
- 42ba4: 01400174 movhi r5,5
- 42ba8: 29488b84 addi r5,r5,8750
- 42bac: d9403515 stw r5,212(sp)
- 42bb0: 048001c4 movi r18,7
- 42bb4: dcc02d17 ldw r19,180(sp)
- 42bb8: 00000306 br 42bc8 <___vfprintf_internal_r+0xa5c>
- 42bbc: 843ffc04 addi r16,r16,-16
- 42bc0: 42000204 addi r8,r8,8
- 42bc4: 8c00130e bge r17,r16,42c14 <___vfprintf_internal_r+0xaa8>
- 42bc8: 01000174 movhi r4,5
- 42bcc: 18c00404 addi r3,r3,16
- 42bd0: 10800044 addi r2,r2,1
- 42bd4: 21088b84 addi r4,r4,8750
- 42bd8: 41000015 stw r4,0(r8)
- 42bdc: 44400115 stw r17,4(r8)
- 42be0: d8c02015 stw r3,128(sp)
- 42be4: d8801f15 stw r2,124(sp)
- 42be8: 90bff40e bge r18,r2,42bbc <__alt_data_end+0xfffd0bbc>
- 42bec: d9801e04 addi r6,sp,120
- 42bf0: b80b883a mov r5,r23
- 42bf4: 9809883a mov r4,r19
- 42bf8: 00491b40 call 491b4 <__sprint_r>
- 42bfc: 103e5f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 42c00: 843ffc04 addi r16,r16,-16
- 42c04: d8c02017 ldw r3,128(sp)
- 42c08: d8801f17 ldw r2,124(sp)
- 42c0c: da000404 addi r8,sp,16
- 42c10: 8c3fed16 blt r17,r16,42bc8 <__alt_data_end+0xfffd0bc8>
- 42c14: d9403517 ldw r5,212(sp)
- 42c18: 1c07883a add r3,r3,r16
- 42c1c: 10800044 addi r2,r2,1
- 42c20: 41400015 stw r5,0(r8)
- 42c24: 44000115 stw r16,4(r8)
- 42c28: d8c02015 stw r3,128(sp)
- 42c2c: d8801f15 stw r2,124(sp)
- 42c30: 010001c4 movi r4,7
- 42c34: 2080060e bge r4,r2,42c50 <___vfprintf_internal_r+0xae4>
- 42c38: d9002d17 ldw r4,180(sp)
- 42c3c: d9801e04 addi r6,sp,120
- 42c40: b80b883a mov r5,r23
- 42c44: 00491b40 call 491b4 <__sprint_r>
- 42c48: 103e4c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 42c4c: d8c02017 ldw r3,128(sp)
- 42c50: d8803117 ldw r2,196(sp)
- 42c54: d9002917 ldw r4,164(sp)
- 42c58: 1100010e bge r2,r4,42c60 <___vfprintf_internal_r+0xaf4>
- 42c5c: 2005883a mov r2,r4
- 42c60: d9402f17 ldw r5,188(sp)
- 42c64: 288b883a add r5,r5,r2
- 42c68: d9402f15 stw r5,188(sp)
- 42c6c: 1801c01e bne r3,zero,43370 <___vfprintf_internal_r+0x1204>
- 42c70: a8800007 ldb r2,0(r21)
- 42c74: d8001f15 stw zero,124(sp)
- 42c78: da000404 addi r8,sp,16
- 42c7c: 103d751e bne r2,zero,42254 <__alt_data_end+0xfffd0254>
- 42c80: a823883a mov r17,r21
- 42c84: 003d8b06 br 422b4 <__alt_data_end+0xfffd02b4>
- 42c88: 8025883a mov r18,r16
- 42c8c: dc002903 ldbu r16,164(sp)
- 42c90: e011883a mov r8,fp
- 42c94: 84003fcc andi r16,r16,255
- 42c98: 8005e51e bne r16,zero,44430 <___vfprintf_internal_r+0x22c4>
- 42c9c: 94800414 ori r18,r18,16
- 42ca0: 9080080c andi r2,r18,32
- 42ca4: 10022b26 beq r2,zero,43554 <___vfprintf_internal_r+0x13e8>
- 42ca8: d9002e17 ldw r4,184(sp)
- 42cac: d9402a17 ldw r5,168(sp)
- 42cb0: d8002785 stb zero,158(sp)
- 42cb4: 20c00204 addi r3,r4,8
- 42cb8: 24c00017 ldw r19,0(r4)
- 42cbc: 25800117 ldw r22,4(r4)
- 42cc0: 28042e16 blt r5,zero,43d7c <___vfprintf_internal_r+0x1c10>
- 42cc4: 013fdfc4 movi r4,-129
- 42cc8: 9d84b03a or r2,r19,r22
- 42ccc: d8c02e15 stw r3,184(sp)
- 42cd0: 9124703a and r18,r18,r4
- 42cd4: 0039883a mov fp,zero
- 42cd8: 103e801e bne r2,zero,426dc <__alt_data_end+0xfffd06dc>
- 42cdc: d9002a17 ldw r4,168(sp)
- 42ce0: 2002e01e bne r4,zero,43864 <___vfprintf_internal_r+0x16f8>
- 42ce4: d8002a15 stw zero,168(sp)
- 42ce8: d8002b15 stw zero,172(sp)
- 42cec: dc001e04 addi r16,sp,120
- 42cf0: 003ef506 br 428c8 <__alt_data_end+0xfffd08c8>
- 42cf4: 8025883a mov r18,r16
- 42cf8: dc002903 ldbu r16,164(sp)
- 42cfc: e011883a mov r8,fp
- 42d00: 84003fcc andi r16,r16,255
- 42d04: 8005ba1e bne r16,zero,443f0 <___vfprintf_internal_r+0x2284>
- 42d08: 01000174 movhi r4,5
- 42d0c: 21087b04 addi r4,r4,8684
- 42d10: d9003915 stw r4,228(sp)
- 42d14: 9080080c andi r2,r18,32
- 42d18: 10006126 beq r2,zero,42ea0 <___vfprintf_internal_r+0xd34>
- 42d1c: d9402e17 ldw r5,184(sp)
- 42d20: 2cc00017 ldw r19,0(r5)
- 42d24: 2d800117 ldw r22,4(r5)
- 42d28: 29400204 addi r5,r5,8
- 42d2c: d9402e15 stw r5,184(sp)
- 42d30: 9080004c andi r2,r18,1
- 42d34: 1001ac26 beq r2,zero,433e8 <___vfprintf_internal_r+0x127c>
- 42d38: 9d84b03a or r2,r19,r22
- 42d3c: 10038526 beq r2,zero,43b54 <___vfprintf_internal_r+0x19e8>
- 42d40: d8c02a17 ldw r3,168(sp)
- 42d44: 00800c04 movi r2,48
- 42d48: d8802705 stb r2,156(sp)
- 42d4c: dc402745 stb r17,157(sp)
- 42d50: d8002785 stb zero,158(sp)
- 42d54: 90800094 ori r2,r18,2
- 42d58: 18047916 blt r3,zero,43f40 <___vfprintf_internal_r+0x1dd4>
- 42d5c: 00bfdfc4 movi r2,-129
- 42d60: 90a4703a and r18,r18,r2
- 42d64: 94800094 ori r18,r18,2
- 42d68: 0039883a mov fp,zero
- 42d6c: d9003917 ldw r4,228(sp)
- 42d70: dc001e04 addi r16,sp,120
- 42d74: 988003cc andi r2,r19,15
- 42d78: b006973a slli r3,r22,28
- 42d7c: 2085883a add r2,r4,r2
- 42d80: 9826d13a srli r19,r19,4
- 42d84: 10800003 ldbu r2,0(r2)
- 42d88: b02cd13a srli r22,r22,4
- 42d8c: 843fffc4 addi r16,r16,-1
- 42d90: 1ce6b03a or r19,r3,r19
- 42d94: 80800005 stb r2,0(r16)
- 42d98: 9d84b03a or r2,r19,r22
- 42d9c: 103ff51e bne r2,zero,42d74 <__alt_data_end+0xfffd0d74>
- 42da0: d8c02817 ldw r3,160(sp)
- 42da4: 1c07c83a sub r3,r3,r16
- 42da8: d8c02b15 stw r3,172(sp)
- 42dac: 003ec606 br 428c8 <__alt_data_end+0xfffd08c8>
- 42db0: 8025883a mov r18,r16
- 42db4: dc002903 ldbu r16,164(sp)
- 42db8: e011883a mov r8,fp
- 42dbc: 84003fcc andi r16,r16,255
- 42dc0: 803e9626 beq r16,zero,4281c <__alt_data_end+0xfffd081c>
- 42dc4: d8c02b03 ldbu r3,172(sp)
- 42dc8: d8c02785 stb r3,158(sp)
- 42dcc: 003e9306 br 4281c <__alt_data_end+0xfffd081c>
- 42dd0: 00c00044 movi r3,1
- 42dd4: d8c02905 stb r3,164(sp)
- 42dd8: 00c00ac4 movi r3,43
- 42ddc: d8c02b05 stb r3,172(sp)
- 42de0: ac400007 ldb r17,0(r21)
- 42de4: 003d4306 br 422f4 <__alt_data_end+0xfffd02f4>
- 42de8: 84000814 ori r16,r16,32
- 42dec: ac400007 ldb r17,0(r21)
- 42df0: 003d4006 br 422f4 <__alt_data_end+0xfffd02f4>
- 42df4: d8802e17 ldw r2,184(sp)
- 42df8: 8025883a mov r18,r16
- 42dfc: d8002785 stb zero,158(sp)
- 42e00: 14000017 ldw r16,0(r2)
- 42e04: e011883a mov r8,fp
- 42e08: 14c00104 addi r19,r2,4
- 42e0c: 80042d26 beq r16,zero,43ec4 <___vfprintf_internal_r+0x1d58>
- 42e10: d8c02a17 ldw r3,168(sp)
- 42e14: 1803e416 blt r3,zero,43da8 <___vfprintf_internal_r+0x1c3c>
- 42e18: 180d883a mov r6,r3
- 42e1c: 000b883a mov r5,zero
- 42e20: 8009883a mov r4,r16
- 42e24: df003d15 stw fp,244(sp)
- 42e28: 00475dc0 call 475dc <memchr>
- 42e2c: da003d17 ldw r8,244(sp)
- 42e30: 10046826 beq r2,zero,43fd4 <___vfprintf_internal_r+0x1e68>
- 42e34: 1405c83a sub r2,r2,r16
- 42e38: d8802b15 stw r2,172(sp)
- 42e3c: 1003e016 blt r2,zero,43dc0 <___vfprintf_internal_r+0x1c54>
- 42e40: df002783 ldbu fp,158(sp)
- 42e44: d8802915 stw r2,164(sp)
- 42e48: dcc02e15 stw r19,184(sp)
- 42e4c: d8002a15 stw zero,168(sp)
- 42e50: d8003215 stw zero,200(sp)
- 42e54: 003ea206 br 428e0 <__alt_data_end+0xfffd08e0>
- 42e58: 8025883a mov r18,r16
- 42e5c: dc002903 ldbu r16,164(sp)
- 42e60: e011883a mov r8,fp
- 42e64: 84003fcc andi r16,r16,255
- 42e68: 803f8d26 beq r16,zero,42ca0 <__alt_data_end+0xfffd0ca0>
- 42e6c: d8c02b03 ldbu r3,172(sp)
- 42e70: d8c02785 stb r3,158(sp)
- 42e74: 003f8a06 br 42ca0 <__alt_data_end+0xfffd0ca0>
- 42e78: 8025883a mov r18,r16
- 42e7c: dc002903 ldbu r16,164(sp)
- 42e80: e011883a mov r8,fp
- 42e84: 84003fcc andi r16,r16,255
- 42e88: 8005661e bne r16,zero,44424 <___vfprintf_internal_r+0x22b8>
- 42e8c: 01000174 movhi r4,5
- 42e90: 21088004 addi r4,r4,8704
- 42e94: d9003915 stw r4,228(sp)
- 42e98: 9080080c andi r2,r18,32
- 42e9c: 103f9f1e bne r2,zero,42d1c <__alt_data_end+0xfffd0d1c>
- 42ea0: 9080040c andi r2,r18,16
- 42ea4: 1002eb26 beq r2,zero,43a54 <___vfprintf_internal_r+0x18e8>
- 42ea8: d8802e17 ldw r2,184(sp)
- 42eac: 002d883a mov r22,zero
- 42eb0: 14c00017 ldw r19,0(r2)
- 42eb4: 10800104 addi r2,r2,4
- 42eb8: d8802e15 stw r2,184(sp)
- 42ebc: 003f9c06 br 42d30 <__alt_data_end+0xfffd0d30>
- 42ec0: d8802b07 ldb r2,172(sp)
- 42ec4: 1002e11e bne r2,zero,43a4c <___vfprintf_internal_r+0x18e0>
- 42ec8: 00c00044 movi r3,1
- 42ecc: d8c02905 stb r3,164(sp)
- 42ed0: 00c00804 movi r3,32
- 42ed4: d8c02b05 stb r3,172(sp)
- 42ed8: ac400007 ldb r17,0(r21)
- 42edc: 003d0506 br 422f4 <__alt_data_end+0xfffd02f4>
- 42ee0: 84000054 ori r16,r16,1
- 42ee4: ac400007 ldb r17,0(r21)
- 42ee8: 003d0206 br 422f4 <__alt_data_end+0xfffd02f4>
- 42eec: 8025883a mov r18,r16
- 42ef0: dc002903 ldbu r16,164(sp)
- 42ef4: e011883a mov r8,fp
- 42ef8: 84003fcc andi r16,r16,255
- 42efc: 803de726 beq r16,zero,4269c <__alt_data_end+0xfffd069c>
- 42f00: d8c02b03 ldbu r3,172(sp)
- 42f04: d8c02785 stb r3,158(sp)
- 42f08: 003de406 br 4269c <__alt_data_end+0xfffd069c>
- 42f0c: 84001014 ori r16,r16,64
- 42f10: ac400007 ldb r17,0(r21)
- 42f14: 003cf706 br 422f4 <__alt_data_end+0xfffd02f4>
- 42f18: ac400007 ldb r17,0(r21)
- 42f1c: 00801b04 movi r2,108
- 42f20: 88838f26 beq r17,r2,43d60 <___vfprintf_internal_r+0x1bf4>
- 42f24: 84000414 ori r16,r16,16
- 42f28: 003cf206 br 422f4 <__alt_data_end+0xfffd02f4>
- 42f2c: 8025883a mov r18,r16
- 42f30: dc002903 ldbu r16,164(sp)
- 42f34: e011883a mov r8,fp
- 42f38: 84003fcc andi r16,r16,255
- 42f3c: 80053f1e bne r16,zero,4443c <___vfprintf_internal_r+0x22d0>
- 42f40: 9080080c andi r2,r18,32
- 42f44: 1002d226 beq r2,zero,43a90 <___vfprintf_internal_r+0x1924>
- 42f48: d9002e17 ldw r4,184(sp)
- 42f4c: d9402f17 ldw r5,188(sp)
- 42f50: 20800017 ldw r2,0(r4)
- 42f54: 2807d7fa srai r3,r5,31
- 42f58: 21000104 addi r4,r4,4
- 42f5c: d9002e15 stw r4,184(sp)
- 42f60: 11400015 stw r5,0(r2)
- 42f64: 10c00115 stw r3,4(r2)
- 42f68: 003cb806 br 4224c <__alt_data_end+0xfffd024c>
- 42f6c: d8c02e17 ldw r3,184(sp)
- 42f70: d9002e17 ldw r4,184(sp)
- 42f74: 8025883a mov r18,r16
- 42f78: 18800017 ldw r2,0(r3)
- 42f7c: 21000104 addi r4,r4,4
- 42f80: 00c00044 movi r3,1
- 42f84: e011883a mov r8,fp
- 42f88: d8c02915 stw r3,164(sp)
- 42f8c: d8002785 stb zero,158(sp)
- 42f90: d8801405 stb r2,80(sp)
- 42f94: d9002e15 stw r4,184(sp)
- 42f98: d8c02b15 stw r3,172(sp)
- 42f9c: d8002a15 stw zero,168(sp)
- 42fa0: d8003215 stw zero,200(sp)
- 42fa4: dc001404 addi r16,sp,80
- 42fa8: 0039883a mov fp,zero
- 42fac: 003e5306 br 428fc <__alt_data_end+0xfffd08fc>
- 42fb0: 01000174 movhi r4,5
- 42fb4: 21088004 addi r4,r4,8704
- 42fb8: 0039883a mov fp,zero
- 42fbc: d9003915 stw r4,228(sp)
- 42fc0: 04401e04 movi r17,120
- 42fc4: 003f6906 br 42d6c <__alt_data_end+0xfffd0d6c>
- 42fc8: 8025883a mov r18,r16
- 42fcc: dc002903 ldbu r16,164(sp)
- 42fd0: e011883a mov r8,fp
- 42fd4: 84003fcc andi r16,r16,255
- 42fd8: 8005081e bne r16,zero,443fc <___vfprintf_internal_r+0x2290>
- 42fdc: 883d6126 beq r17,zero,42564 <__alt_data_end+0xfffd0564>
- 42fe0: 00c00044 movi r3,1
- 42fe4: d8c02915 stw r3,164(sp)
- 42fe8: dc401405 stb r17,80(sp)
- 42fec: d8002785 stb zero,158(sp)
- 42ff0: 003fe906 br 42f98 <__alt_data_end+0xfffd0f98>
- 42ff4: 01400174 movhi r5,5
- 42ff8: 29488004 addi r5,r5,8704
- 42ffc: d9403915 stw r5,228(sp)
- 43000: d8c02e15 stw r3,184(sp)
- 43004: 1025883a mov r18,r2
- 43008: 04401e04 movi r17,120
- 4300c: 9d84b03a or r2,r19,r22
- 43010: 1000fc1e bne r2,zero,43404 <___vfprintf_internal_r+0x1298>
- 43014: 0039883a mov fp,zero
- 43018: 00800084 movi r2,2
- 4301c: 10803fcc andi r2,r2,255
- 43020: 00c00044 movi r3,1
- 43024: 10c20f26 beq r2,r3,43864 <___vfprintf_internal_r+0x16f8>
- 43028: 00c00084 movi r3,2
- 4302c: 10fd3326 beq r2,r3,424fc <__alt_data_end+0xfffd04fc>
- 43030: 003e0b06 br 42860 <__alt_data_end+0xfffd0860>
- 43034: d8c02017 ldw r3,128(sp)
- 43038: 003e7106 br 42a00 <__alt_data_end+0xfffd0a00>
- 4303c: 00801944 movi r2,101
- 43040: 14407e0e bge r2,r17,4323c <___vfprintf_internal_r+0x10d0>
- 43044: d9003617 ldw r4,216(sp)
- 43048: d9403817 ldw r5,224(sp)
- 4304c: 000d883a mov r6,zero
- 43050: 000f883a mov r7,zero
- 43054: d8c03c15 stw r3,240(sp)
- 43058: da003d15 stw r8,244(sp)
- 4305c: 004d3f00 call 4d3f0 <__eqdf2>
- 43060: d8c03c17 ldw r3,240(sp)
- 43064: da003d17 ldw r8,244(sp)
- 43068: 1000f71e bne r2,zero,43448 <___vfprintf_internal_r+0x12dc>
- 4306c: d8801f17 ldw r2,124(sp)
- 43070: 01000174 movhi r4,5
- 43074: 21088704 addi r4,r4,8732
- 43078: 18c00044 addi r3,r3,1
- 4307c: 10800044 addi r2,r2,1
- 43080: 41000015 stw r4,0(r8)
- 43084: 01000044 movi r4,1
- 43088: 41000115 stw r4,4(r8)
- 4308c: d8c02015 stw r3,128(sp)
- 43090: d8801f15 stw r2,124(sp)
- 43094: 010001c4 movi r4,7
- 43098: 2082b816 blt r4,r2,43b7c <___vfprintf_internal_r+0x1a10>
- 4309c: 42000204 addi r8,r8,8
- 430a0: d8802617 ldw r2,152(sp)
- 430a4: d9403317 ldw r5,204(sp)
- 430a8: 11400216 blt r2,r5,430b4 <___vfprintf_internal_r+0xf48>
- 430ac: 9080004c andi r2,r18,1
- 430b0: 103eb326 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80>
- 430b4: d8803717 ldw r2,220(sp)
- 430b8: d9003417 ldw r4,208(sp)
- 430bc: d9403717 ldw r5,220(sp)
- 430c0: 1887883a add r3,r3,r2
- 430c4: d8801f17 ldw r2,124(sp)
- 430c8: 41000015 stw r4,0(r8)
- 430cc: 41400115 stw r5,4(r8)
- 430d0: 10800044 addi r2,r2,1
- 430d4: d8c02015 stw r3,128(sp)
- 430d8: d8801f15 stw r2,124(sp)
- 430dc: 010001c4 movi r4,7
- 430e0: 20832916 blt r4,r2,43d88 <___vfprintf_internal_r+0x1c1c>
- 430e4: 42000204 addi r8,r8,8
- 430e8: d8803317 ldw r2,204(sp)
- 430ec: 143fffc4 addi r16,r2,-1
- 430f0: 043ea30e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80>
- 430f4: 04400404 movi r17,16
- 430f8: d8801f17 ldw r2,124(sp)
- 430fc: 8c00880e bge r17,r16,43320 <___vfprintf_internal_r+0x11b4>
- 43100: 01400174 movhi r5,5
- 43104: 29488784 addi r5,r5,8734
- 43108: d9402c15 stw r5,176(sp)
- 4310c: 058001c4 movi r22,7
- 43110: dcc02d17 ldw r19,180(sp)
- 43114: 00000306 br 43124 <___vfprintf_internal_r+0xfb8>
- 43118: 42000204 addi r8,r8,8
- 4311c: 843ffc04 addi r16,r16,-16
- 43120: 8c00820e bge r17,r16,4332c <___vfprintf_internal_r+0x11c0>
- 43124: 18c00404 addi r3,r3,16
- 43128: 10800044 addi r2,r2,1
- 4312c: 45000015 stw r20,0(r8)
- 43130: 44400115 stw r17,4(r8)
- 43134: d8c02015 stw r3,128(sp)
- 43138: d8801f15 stw r2,124(sp)
- 4313c: b0bff60e bge r22,r2,43118 <__alt_data_end+0xfffd1118>
- 43140: d9801e04 addi r6,sp,120
- 43144: b80b883a mov r5,r23
- 43148: 9809883a mov r4,r19
- 4314c: 00491b40 call 491b4 <__sprint_r>
- 43150: 103d0a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43154: d8c02017 ldw r3,128(sp)
- 43158: d8801f17 ldw r2,124(sp)
- 4315c: da000404 addi r8,sp,16
- 43160: 003fee06 br 4311c <__alt_data_end+0xfffd111c>
- 43164: d9403117 ldw r5,196(sp)
- 43168: d8802917 ldw r2,164(sp)
- 4316c: 28adc83a sub r22,r5,r2
- 43170: 05be410e bge zero,r22,42a78 <__alt_data_end+0xfffd0a78>
- 43174: 07000404 movi fp,16
- 43178: d8801f17 ldw r2,124(sp)
- 4317c: e5838f0e bge fp,r22,43fbc <___vfprintf_internal_r+0x1e50>
- 43180: 01400174 movhi r5,5
- 43184: 29488784 addi r5,r5,8734
- 43188: dc403015 stw r17,192(sp)
- 4318c: d9402c15 stw r5,176(sp)
- 43190: b023883a mov r17,r22
- 43194: 04c001c4 movi r19,7
- 43198: a82d883a mov r22,r21
- 4319c: 902b883a mov r21,r18
- 431a0: 8025883a mov r18,r16
- 431a4: dc002d17 ldw r16,180(sp)
- 431a8: 00000306 br 431b8 <___vfprintf_internal_r+0x104c>
- 431ac: 8c7ffc04 addi r17,r17,-16
- 431b0: 42000204 addi r8,r8,8
- 431b4: e440110e bge fp,r17,431fc <___vfprintf_internal_r+0x1090>
- 431b8: 18c00404 addi r3,r3,16
- 431bc: 10800044 addi r2,r2,1
- 431c0: 45000015 stw r20,0(r8)
- 431c4: 47000115 stw fp,4(r8)
- 431c8: d8c02015 stw r3,128(sp)
- 431cc: d8801f15 stw r2,124(sp)
- 431d0: 98bff60e bge r19,r2,431ac <__alt_data_end+0xfffd11ac>
- 431d4: d9801e04 addi r6,sp,120
- 431d8: b80b883a mov r5,r23
- 431dc: 8009883a mov r4,r16
- 431e0: 00491b40 call 491b4 <__sprint_r>
- 431e4: 103ce51e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 431e8: 8c7ffc04 addi r17,r17,-16
- 431ec: d8c02017 ldw r3,128(sp)
- 431f0: d8801f17 ldw r2,124(sp)
- 431f4: da000404 addi r8,sp,16
- 431f8: e47fef16 blt fp,r17,431b8 <__alt_data_end+0xfffd11b8>
- 431fc: 9021883a mov r16,r18
- 43200: a825883a mov r18,r21
- 43204: b02b883a mov r21,r22
- 43208: 882d883a mov r22,r17
- 4320c: dc403017 ldw r17,192(sp)
- 43210: d9002c17 ldw r4,176(sp)
- 43214: 1d87883a add r3,r3,r22
- 43218: 10800044 addi r2,r2,1
- 4321c: 41000015 stw r4,0(r8)
- 43220: 45800115 stw r22,4(r8)
- 43224: d8c02015 stw r3,128(sp)
- 43228: d8801f15 stw r2,124(sp)
- 4322c: 010001c4 movi r4,7
- 43230: 20818e16 blt r4,r2,4386c <___vfprintf_internal_r+0x1700>
- 43234: 42000204 addi r8,r8,8
- 43238: 003e0f06 br 42a78 <__alt_data_end+0xfffd0a78>
- 4323c: d9403317 ldw r5,204(sp)
- 43240: 00800044 movi r2,1
- 43244: 18c00044 addi r3,r3,1
- 43248: 1141530e bge r2,r5,43798 <___vfprintf_internal_r+0x162c>
- 4324c: dc401f17 ldw r17,124(sp)
- 43250: 00800044 movi r2,1
- 43254: 40800115 stw r2,4(r8)
- 43258: 8c400044 addi r17,r17,1
- 4325c: 44000015 stw r16,0(r8)
- 43260: d8c02015 stw r3,128(sp)
- 43264: dc401f15 stw r17,124(sp)
- 43268: 008001c4 movi r2,7
- 4326c: 14416b16 blt r2,r17,4381c <___vfprintf_internal_r+0x16b0>
- 43270: 42000204 addi r8,r8,8
- 43274: d8803717 ldw r2,220(sp)
- 43278: d9003417 ldw r4,208(sp)
- 4327c: 8c400044 addi r17,r17,1
- 43280: 10c7883a add r3,r2,r3
- 43284: 40800115 stw r2,4(r8)
- 43288: 41000015 stw r4,0(r8)
- 4328c: d8c02015 stw r3,128(sp)
- 43290: dc401f15 stw r17,124(sp)
- 43294: 008001c4 movi r2,7
- 43298: 14416916 blt r2,r17,43840 <___vfprintf_internal_r+0x16d4>
- 4329c: 45800204 addi r22,r8,8
- 432a0: d9003617 ldw r4,216(sp)
- 432a4: d9403817 ldw r5,224(sp)
- 432a8: 000d883a mov r6,zero
- 432ac: 000f883a mov r7,zero
- 432b0: d8c03c15 stw r3,240(sp)
- 432b4: 004d3f00 call 4d3f0 <__eqdf2>
- 432b8: d8c03c17 ldw r3,240(sp)
- 432bc: 1000bc26 beq r2,zero,435b0 <___vfprintf_internal_r+0x1444>
- 432c0: d9403317 ldw r5,204(sp)
- 432c4: 84000044 addi r16,r16,1
- 432c8: 8c400044 addi r17,r17,1
- 432cc: 28bfffc4 addi r2,r5,-1
- 432d0: 1887883a add r3,r3,r2
- 432d4: b0800115 stw r2,4(r22)
- 432d8: b4000015 stw r16,0(r22)
- 432dc: d8c02015 stw r3,128(sp)
- 432e0: dc401f15 stw r17,124(sp)
- 432e4: 008001c4 movi r2,7
- 432e8: 14414316 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c>
- 432ec: b5800204 addi r22,r22,8
- 432f0: d9003a17 ldw r4,232(sp)
- 432f4: df0022c4 addi fp,sp,139
- 432f8: 8c400044 addi r17,r17,1
- 432fc: 20c7883a add r3,r4,r3
- 43300: b7000015 stw fp,0(r22)
- 43304: b1000115 stw r4,4(r22)
- 43308: d8c02015 stw r3,128(sp)
- 4330c: dc401f15 stw r17,124(sp)
- 43310: 008001c4 movi r2,7
- 43314: 14400e16 blt r2,r17,43350 <___vfprintf_internal_r+0x11e4>
- 43318: b2000204 addi r8,r22,8
- 4331c: 003e1806 br 42b80 <__alt_data_end+0xfffd0b80>
- 43320: 01000174 movhi r4,5
- 43324: 21088784 addi r4,r4,8734
- 43328: d9002c15 stw r4,176(sp)
- 4332c: d9002c17 ldw r4,176(sp)
- 43330: 1c07883a add r3,r3,r16
- 43334: 44000115 stw r16,4(r8)
- 43338: 41000015 stw r4,0(r8)
- 4333c: 10800044 addi r2,r2,1
- 43340: d8c02015 stw r3,128(sp)
- 43344: d8801f15 stw r2,124(sp)
- 43348: 010001c4 movi r4,7
- 4334c: 20be0b0e bge r4,r2,42b7c <__alt_data_end+0xfffd0b7c>
- 43350: d9002d17 ldw r4,180(sp)
- 43354: d9801e04 addi r6,sp,120
- 43358: b80b883a mov r5,r23
- 4335c: 00491b40 call 491b4 <__sprint_r>
- 43360: 103c861e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43364: d8c02017 ldw r3,128(sp)
- 43368: da000404 addi r8,sp,16
- 4336c: 003e0406 br 42b80 <__alt_data_end+0xfffd0b80>
- 43370: d9002d17 ldw r4,180(sp)
- 43374: d9801e04 addi r6,sp,120
- 43378: b80b883a mov r5,r23
- 4337c: 00491b40 call 491b4 <__sprint_r>
- 43380: 103e3b26 beq r2,zero,42c70 <__alt_data_end+0xfffd0c70>
- 43384: 003c7d06 br 4257c <__alt_data_end+0xfffd057c>
- 43388: d9002d17 ldw r4,180(sp)
- 4338c: d9801e04 addi r6,sp,120
- 43390: b80b883a mov r5,r23
- 43394: 00491b40 call 491b4 <__sprint_r>
- 43398: 103c781e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 4339c: d8c02017 ldw r3,128(sp)
- 433a0: da000404 addi r8,sp,16
- 433a4: 003de906 br 42b4c <__alt_data_end+0xfffd0b4c>
- 433a8: d9002d17 ldw r4,180(sp)
- 433ac: d9801e04 addi r6,sp,120
- 433b0: b80b883a mov r5,r23
- 433b4: 00491b40 call 491b4 <__sprint_r>
- 433b8: 103c701e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 433bc: d8c02017 ldw r3,128(sp)
- 433c0: da000404 addi r8,sp,16
- 433c4: 003d9b06 br 42a34 <__alt_data_end+0xfffd0a34>
- 433c8: d9002d17 ldw r4,180(sp)
- 433cc: d9801e04 addi r6,sp,120
- 433d0: b80b883a mov r5,r23
- 433d4: 00491b40 call 491b4 <__sprint_r>
- 433d8: 103c681e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 433dc: d8c02017 ldw r3,128(sp)
- 433e0: da000404 addi r8,sp,16
- 433e4: 003da106 br 42a6c <__alt_data_end+0xfffd0a6c>
- 433e8: d9402a17 ldw r5,168(sp)
- 433ec: d8002785 stb zero,158(sp)
- 433f0: 283f0616 blt r5,zero,4300c <__alt_data_end+0xfffd100c>
- 433f4: 00ffdfc4 movi r3,-129
- 433f8: 9d84b03a or r2,r19,r22
- 433fc: 90e4703a and r18,r18,r3
- 43400: 103c3b26 beq r2,zero,424f0 <__alt_data_end+0xfffd04f0>
- 43404: 0039883a mov fp,zero
- 43408: 003e5806 br 42d6c <__alt_data_end+0xfffd0d6c>
- 4340c: 9080040c andi r2,r18,16
- 43410: 1001b326 beq r2,zero,43ae0 <___vfprintf_internal_r+0x1974>
- 43414: d8c02e17 ldw r3,184(sp)
- 43418: d9002a17 ldw r4,168(sp)
- 4341c: d8002785 stb zero,158(sp)
- 43420: 18800104 addi r2,r3,4
- 43424: 1cc00017 ldw r19,0(r3)
- 43428: 002d883a mov r22,zero
- 4342c: 2001b516 blt r4,zero,43b04 <___vfprintf_internal_r+0x1998>
- 43430: 00ffdfc4 movi r3,-129
- 43434: d8802e15 stw r2,184(sp)
- 43438: 90e4703a and r18,r18,r3
- 4343c: 983d0526 beq r19,zero,42854 <__alt_data_end+0xfffd0854>
- 43440: 0039883a mov fp,zero
- 43444: 003d0806 br 42868 <__alt_data_end+0xfffd0868>
- 43448: dc402617 ldw r17,152(sp)
- 4344c: 0441d30e bge zero,r17,43b9c <___vfprintf_internal_r+0x1a30>
- 43450: dc403217 ldw r17,200(sp)
- 43454: d8803317 ldw r2,204(sp)
- 43458: 1440010e bge r2,r17,43460 <___vfprintf_internal_r+0x12f4>
- 4345c: 1023883a mov r17,r2
- 43460: 04400a0e bge zero,r17,4348c <___vfprintf_internal_r+0x1320>
- 43464: d8801f17 ldw r2,124(sp)
- 43468: 1c47883a add r3,r3,r17
- 4346c: 44000015 stw r16,0(r8)
- 43470: 10800044 addi r2,r2,1
- 43474: 44400115 stw r17,4(r8)
- 43478: d8c02015 stw r3,128(sp)
- 4347c: d8801f15 stw r2,124(sp)
- 43480: 010001c4 movi r4,7
- 43484: 20826516 blt r4,r2,43e1c <___vfprintf_internal_r+0x1cb0>
- 43488: 42000204 addi r8,r8,8
- 4348c: 88026116 blt r17,zero,43e14 <___vfprintf_internal_r+0x1ca8>
- 43490: d9003217 ldw r4,200(sp)
- 43494: 2463c83a sub r17,r4,r17
- 43498: 04407b0e bge zero,r17,43688 <___vfprintf_internal_r+0x151c>
- 4349c: 05800404 movi r22,16
- 434a0: d8801f17 ldw r2,124(sp)
- 434a4: b4419d0e bge r22,r17,43b1c <___vfprintf_internal_r+0x19b0>
- 434a8: 01000174 movhi r4,5
- 434ac: 21088784 addi r4,r4,8734
- 434b0: d9002c15 stw r4,176(sp)
- 434b4: 070001c4 movi fp,7
- 434b8: dcc02d17 ldw r19,180(sp)
- 434bc: 00000306 br 434cc <___vfprintf_internal_r+0x1360>
- 434c0: 42000204 addi r8,r8,8
- 434c4: 8c7ffc04 addi r17,r17,-16
- 434c8: b441970e bge r22,r17,43b28 <___vfprintf_internal_r+0x19bc>
- 434cc: 18c00404 addi r3,r3,16
- 434d0: 10800044 addi r2,r2,1
- 434d4: 45000015 stw r20,0(r8)
- 434d8: 45800115 stw r22,4(r8)
- 434dc: d8c02015 stw r3,128(sp)
- 434e0: d8801f15 stw r2,124(sp)
- 434e4: e0bff60e bge fp,r2,434c0 <__alt_data_end+0xfffd14c0>
- 434e8: d9801e04 addi r6,sp,120
- 434ec: b80b883a mov r5,r23
- 434f0: 9809883a mov r4,r19
- 434f4: 00491b40 call 491b4 <__sprint_r>
- 434f8: 103c201e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 434fc: d8c02017 ldw r3,128(sp)
- 43500: d8801f17 ldw r2,124(sp)
- 43504: da000404 addi r8,sp,16
- 43508: 003fee06 br 434c4 <__alt_data_end+0xfffd14c4>
- 4350c: d9002d17 ldw r4,180(sp)
- 43510: d9801e04 addi r6,sp,120
- 43514: b80b883a mov r5,r23
- 43518: 00491b40 call 491b4 <__sprint_r>
- 4351c: 103c171e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43520: d8c02017 ldw r3,128(sp)
- 43524: df002787 ldb fp,158(sp)
- 43528: da000404 addi r8,sp,16
- 4352c: 003d3406 br 42a00 <__alt_data_end+0xfffd0a00>
- 43530: 9080040c andi r2,r18,16
- 43534: 10016126 beq r2,zero,43abc <___vfprintf_internal_r+0x1950>
- 43538: d9402e17 ldw r5,184(sp)
- 4353c: 2cc00017 ldw r19,0(r5)
- 43540: 29400104 addi r5,r5,4
- 43544: d9402e15 stw r5,184(sp)
- 43548: 982dd7fa srai r22,r19,31
- 4354c: b005883a mov r2,r22
- 43550: 003c5a06 br 426bc <__alt_data_end+0xfffd06bc>
- 43554: 9080040c andi r2,r18,16
- 43558: 10003526 beq r2,zero,43630 <___vfprintf_internal_r+0x14c4>
- 4355c: d8c02e17 ldw r3,184(sp)
- 43560: d9002a17 ldw r4,168(sp)
- 43564: d8002785 stb zero,158(sp)
- 43568: 18800104 addi r2,r3,4
- 4356c: 1cc00017 ldw r19,0(r3)
- 43570: 002d883a mov r22,zero
- 43574: 20003716 blt r4,zero,43654 <___vfprintf_internal_r+0x14e8>
- 43578: 00ffdfc4 movi r3,-129
- 4357c: d8802e15 stw r2,184(sp)
- 43580: 90e4703a and r18,r18,r3
- 43584: 0039883a mov fp,zero
- 43588: 983dd426 beq r19,zero,42cdc <__alt_data_end+0xfffd0cdc>
- 4358c: 00800244 movi r2,9
- 43590: 14fc5336 bltu r2,r19,426e0 <__alt_data_end+0xfffd06e0>
- 43594: d8c02817 ldw r3,160(sp)
- 43598: dc001dc4 addi r16,sp,119
- 4359c: 9cc00c04 addi r19,r19,48
- 435a0: 1c07c83a sub r3,r3,r16
- 435a4: dcc01dc5 stb r19,119(sp)
- 435a8: d8c02b15 stw r3,172(sp)
- 435ac: 003cc606 br 428c8 <__alt_data_end+0xfffd08c8>
- 435b0: d8803317 ldw r2,204(sp)
- 435b4: 143fffc4 addi r16,r2,-1
- 435b8: 043f4d0e bge zero,r16,432f0 <__alt_data_end+0xfffd12f0>
- 435bc: 07000404 movi fp,16
- 435c0: e400810e bge fp,r16,437c8 <___vfprintf_internal_r+0x165c>
- 435c4: 01400174 movhi r5,5
- 435c8: 29488784 addi r5,r5,8734
- 435cc: d9402c15 stw r5,176(sp)
- 435d0: 01c001c4 movi r7,7
- 435d4: dcc02d17 ldw r19,180(sp)
- 435d8: 00000306 br 435e8 <___vfprintf_internal_r+0x147c>
- 435dc: b5800204 addi r22,r22,8
- 435e0: 843ffc04 addi r16,r16,-16
- 435e4: e4007b0e bge fp,r16,437d4 <___vfprintf_internal_r+0x1668>
- 435e8: 18c00404 addi r3,r3,16
- 435ec: 8c400044 addi r17,r17,1
- 435f0: b5000015 stw r20,0(r22)
- 435f4: b7000115 stw fp,4(r22)
- 435f8: d8c02015 stw r3,128(sp)
- 435fc: dc401f15 stw r17,124(sp)
- 43600: 3c7ff60e bge r7,r17,435dc <__alt_data_end+0xfffd15dc>
- 43604: d9801e04 addi r6,sp,120
- 43608: b80b883a mov r5,r23
- 4360c: 9809883a mov r4,r19
- 43610: d9c03c15 stw r7,240(sp)
- 43614: 00491b40 call 491b4 <__sprint_r>
- 43618: d9c03c17 ldw r7,240(sp)
- 4361c: 103bd71e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43620: d8c02017 ldw r3,128(sp)
- 43624: dc401f17 ldw r17,124(sp)
- 43628: dd800404 addi r22,sp,16
- 4362c: 003fec06 br 435e0 <__alt_data_end+0xfffd15e0>
- 43630: 9080100c andi r2,r18,64
- 43634: d8002785 stb zero,158(sp)
- 43638: 10010e26 beq r2,zero,43a74 <___vfprintf_internal_r+0x1908>
- 4363c: d9402e17 ldw r5,184(sp)
- 43640: d8c02a17 ldw r3,168(sp)
- 43644: 002d883a mov r22,zero
- 43648: 28800104 addi r2,r5,4
- 4364c: 2cc0000b ldhu r19,0(r5)
- 43650: 183fc90e bge r3,zero,43578 <__alt_data_end+0xfffd1578>
- 43654: d8802e15 stw r2,184(sp)
- 43658: 0039883a mov fp,zero
- 4365c: 9d84b03a or r2,r19,r22
- 43660: 103c1e1e bne r2,zero,426dc <__alt_data_end+0xfffd06dc>
- 43664: 00800044 movi r2,1
- 43668: 003e6c06 br 4301c <__alt_data_end+0xfffd101c>
- 4366c: d9002d17 ldw r4,180(sp)
- 43670: d9801e04 addi r6,sp,120
- 43674: b80b883a mov r5,r23
- 43678: 00491b40 call 491b4 <__sprint_r>
- 4367c: 103bbf1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43680: d8c02017 ldw r3,128(sp)
- 43684: da000404 addi r8,sp,16
- 43688: d9003217 ldw r4,200(sp)
- 4368c: d8802617 ldw r2,152(sp)
- 43690: d9403317 ldw r5,204(sp)
- 43694: 8123883a add r17,r16,r4
- 43698: 11400216 blt r2,r5,436a4 <___vfprintf_internal_r+0x1538>
- 4369c: 9100004c andi r4,r18,1
- 436a0: 20000d26 beq r4,zero,436d8 <___vfprintf_internal_r+0x156c>
- 436a4: d9003717 ldw r4,220(sp)
- 436a8: d9403417 ldw r5,208(sp)
- 436ac: 1907883a add r3,r3,r4
- 436b0: d9001f17 ldw r4,124(sp)
- 436b4: 41400015 stw r5,0(r8)
- 436b8: d9403717 ldw r5,220(sp)
- 436bc: 21000044 addi r4,r4,1
- 436c0: d8c02015 stw r3,128(sp)
- 436c4: 41400115 stw r5,4(r8)
- 436c8: d9001f15 stw r4,124(sp)
- 436cc: 014001c4 movi r5,7
- 436d0: 2901e816 blt r5,r4,43e74 <___vfprintf_internal_r+0x1d08>
- 436d4: 42000204 addi r8,r8,8
- 436d8: d9003317 ldw r4,204(sp)
- 436dc: 8121883a add r16,r16,r4
- 436e0: 2085c83a sub r2,r4,r2
- 436e4: 8461c83a sub r16,r16,r17
- 436e8: 1400010e bge r2,r16,436f0 <___vfprintf_internal_r+0x1584>
- 436ec: 1021883a mov r16,r2
- 436f0: 04000a0e bge zero,r16,4371c <___vfprintf_internal_r+0x15b0>
- 436f4: d9001f17 ldw r4,124(sp)
- 436f8: 1c07883a add r3,r3,r16
- 436fc: 44400015 stw r17,0(r8)
- 43700: 21000044 addi r4,r4,1
- 43704: 44000115 stw r16,4(r8)
- 43708: d8c02015 stw r3,128(sp)
- 4370c: d9001f15 stw r4,124(sp)
- 43710: 014001c4 movi r5,7
- 43714: 2901fb16 blt r5,r4,43f04 <___vfprintf_internal_r+0x1d98>
- 43718: 42000204 addi r8,r8,8
- 4371c: 8001f716 blt r16,zero,43efc <___vfprintf_internal_r+0x1d90>
- 43720: 1421c83a sub r16,r2,r16
- 43724: 043d160e bge zero,r16,42b80 <__alt_data_end+0xfffd0b80>
- 43728: 04400404 movi r17,16
- 4372c: d8801f17 ldw r2,124(sp)
- 43730: 8c3efb0e bge r17,r16,43320 <__alt_data_end+0xfffd1320>
- 43734: 01400174 movhi r5,5
- 43738: 29488784 addi r5,r5,8734
- 4373c: d9402c15 stw r5,176(sp)
- 43740: 058001c4 movi r22,7
- 43744: dcc02d17 ldw r19,180(sp)
- 43748: 00000306 br 43758 <___vfprintf_internal_r+0x15ec>
- 4374c: 42000204 addi r8,r8,8
- 43750: 843ffc04 addi r16,r16,-16
- 43754: 8c3ef50e bge r17,r16,4332c <__alt_data_end+0xfffd132c>
- 43758: 18c00404 addi r3,r3,16
- 4375c: 10800044 addi r2,r2,1
- 43760: 45000015 stw r20,0(r8)
- 43764: 44400115 stw r17,4(r8)
- 43768: d8c02015 stw r3,128(sp)
- 4376c: d8801f15 stw r2,124(sp)
- 43770: b0bff60e bge r22,r2,4374c <__alt_data_end+0xfffd174c>
- 43774: d9801e04 addi r6,sp,120
- 43778: b80b883a mov r5,r23
- 4377c: 9809883a mov r4,r19
- 43780: 00491b40 call 491b4 <__sprint_r>
- 43784: 103b7d1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43788: d8c02017 ldw r3,128(sp)
- 4378c: d8801f17 ldw r2,124(sp)
- 43790: da000404 addi r8,sp,16
- 43794: 003fee06 br 43750 <__alt_data_end+0xfffd1750>
- 43798: 9088703a and r4,r18,r2
- 4379c: 203eab1e bne r4,zero,4324c <__alt_data_end+0xfffd124c>
- 437a0: dc401f17 ldw r17,124(sp)
- 437a4: 40800115 stw r2,4(r8)
- 437a8: 44000015 stw r16,0(r8)
- 437ac: 8c400044 addi r17,r17,1
- 437b0: d8c02015 stw r3,128(sp)
- 437b4: dc401f15 stw r17,124(sp)
- 437b8: 008001c4 movi r2,7
- 437bc: 14400e16 blt r2,r17,437f8 <___vfprintf_internal_r+0x168c>
- 437c0: 45800204 addi r22,r8,8
- 437c4: 003eca06 br 432f0 <__alt_data_end+0xfffd12f0>
- 437c8: 01000174 movhi r4,5
- 437cc: 21088784 addi r4,r4,8734
- 437d0: d9002c15 stw r4,176(sp)
- 437d4: d8802c17 ldw r2,176(sp)
- 437d8: 1c07883a add r3,r3,r16
- 437dc: 8c400044 addi r17,r17,1
- 437e0: b0800015 stw r2,0(r22)
- 437e4: b4000115 stw r16,4(r22)
- 437e8: d8c02015 stw r3,128(sp)
- 437ec: dc401f15 stw r17,124(sp)
- 437f0: 008001c4 movi r2,7
- 437f4: 147ebd0e bge r2,r17,432ec <__alt_data_end+0xfffd12ec>
- 437f8: d9002d17 ldw r4,180(sp)
- 437fc: d9801e04 addi r6,sp,120
- 43800: b80b883a mov r5,r23
- 43804: 00491b40 call 491b4 <__sprint_r>
- 43808: 103b5c1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 4380c: d8c02017 ldw r3,128(sp)
- 43810: dc401f17 ldw r17,124(sp)
- 43814: dd800404 addi r22,sp,16
- 43818: 003eb506 br 432f0 <__alt_data_end+0xfffd12f0>
- 4381c: d9002d17 ldw r4,180(sp)
- 43820: d9801e04 addi r6,sp,120
- 43824: b80b883a mov r5,r23
- 43828: 00491b40 call 491b4 <__sprint_r>
- 4382c: 103b531e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43830: d8c02017 ldw r3,128(sp)
- 43834: dc401f17 ldw r17,124(sp)
- 43838: da000404 addi r8,sp,16
- 4383c: 003e8d06 br 43274 <__alt_data_end+0xfffd1274>
- 43840: d9002d17 ldw r4,180(sp)
- 43844: d9801e04 addi r6,sp,120
- 43848: b80b883a mov r5,r23
- 4384c: 00491b40 call 491b4 <__sprint_r>
- 43850: 103b4a1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43854: d8c02017 ldw r3,128(sp)
- 43858: dc401f17 ldw r17,124(sp)
- 4385c: dd800404 addi r22,sp,16
- 43860: 003e8f06 br 432a0 <__alt_data_end+0xfffd12a0>
- 43864: 0027883a mov r19,zero
- 43868: 003f4a06 br 43594 <__alt_data_end+0xfffd1594>
- 4386c: d9002d17 ldw r4,180(sp)
- 43870: d9801e04 addi r6,sp,120
- 43874: b80b883a mov r5,r23
- 43878: 00491b40 call 491b4 <__sprint_r>
- 4387c: 103b3f1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43880: d8c02017 ldw r3,128(sp)
- 43884: da000404 addi r8,sp,16
- 43888: 003c7b06 br 42a78 <__alt_data_end+0xfffd0a78>
- 4388c: d9402a17 ldw r5,168(sp)
- 43890: 04e7c83a sub r19,zero,r19
- 43894: 07000b44 movi fp,45
- 43898: 9804c03a cmpne r2,r19,zero
- 4389c: 05adc83a sub r22,zero,r22
- 438a0: df002785 stb fp,158(sp)
- 438a4: b0adc83a sub r22,r22,r2
- 438a8: 28017b16 blt r5,zero,43e98 <___vfprintf_internal_r+0x1d2c>
- 438ac: 00bfdfc4 movi r2,-129
- 438b0: 90a4703a and r18,r18,r2
- 438b4: 003b8906 br 426dc <__alt_data_end+0xfffd06dc>
- 438b8: d9003617 ldw r4,216(sp)
- 438bc: d9403817 ldw r5,224(sp)
- 438c0: da003d15 stw r8,244(sp)
- 438c4: 0048d400 call 48d40 <__fpclassifyd>
- 438c8: da003d17 ldw r8,244(sp)
- 438cc: 1000f026 beq r2,zero,43c90 <___vfprintf_internal_r+0x1b24>
- 438d0: d9002a17 ldw r4,168(sp)
- 438d4: 05bff7c4 movi r22,-33
- 438d8: 00bfffc4 movi r2,-1
- 438dc: 8dac703a and r22,r17,r22
- 438e0: 20820026 beq r4,r2,440e4 <___vfprintf_internal_r+0x1f78>
- 438e4: 008011c4 movi r2,71
- 438e8: b081f726 beq r22,r2,440c8 <___vfprintf_internal_r+0x1f5c>
- 438ec: d9003817 ldw r4,224(sp)
- 438f0: 90c04014 ori r3,r18,256
- 438f4: d8c02c15 stw r3,176(sp)
- 438f8: 20021516 blt r4,zero,44150 <___vfprintf_internal_r+0x1fe4>
- 438fc: dcc03817 ldw r19,224(sp)
- 43900: d8002905 stb zero,164(sp)
- 43904: 00801984 movi r2,102
- 43908: 8881f926 beq r17,r2,440f0 <___vfprintf_internal_r+0x1f84>
- 4390c: 00801184 movi r2,70
- 43910: 88821c26 beq r17,r2,44184 <___vfprintf_internal_r+0x2018>
- 43914: 00801144 movi r2,69
- 43918: b081ef26 beq r22,r2,440d8 <___vfprintf_internal_r+0x1f6c>
- 4391c: d8c02a17 ldw r3,168(sp)
- 43920: d8802104 addi r2,sp,132
- 43924: d8800315 stw r2,12(sp)
- 43928: d9403617 ldw r5,216(sp)
- 4392c: d8802504 addi r2,sp,148
- 43930: d9002d17 ldw r4,180(sp)
- 43934: d8800215 stw r2,8(sp)
- 43938: d8802604 addi r2,sp,152
- 4393c: d8c00015 stw r3,0(sp)
- 43940: d8800115 stw r2,4(sp)
- 43944: 01c00084 movi r7,2
- 43948: 980d883a mov r6,r19
- 4394c: d8c03c15 stw r3,240(sp)
- 43950: da003d15 stw r8,244(sp)
- 43954: 004489c0 call 4489c <_dtoa_r>
- 43958: 1021883a mov r16,r2
- 4395c: 008019c4 movi r2,103
- 43960: d8c03c17 ldw r3,240(sp)
- 43964: da003d17 ldw r8,244(sp)
- 43968: 88817126 beq r17,r2,43f30 <___vfprintf_internal_r+0x1dc4>
- 4396c: 008011c4 movi r2,71
- 43970: 88829126 beq r17,r2,443b8 <___vfprintf_internal_r+0x224c>
- 43974: 80f9883a add fp,r16,r3
- 43978: d9003617 ldw r4,216(sp)
- 4397c: 000d883a mov r6,zero
- 43980: 000f883a mov r7,zero
- 43984: 980b883a mov r5,r19
- 43988: da003d15 stw r8,244(sp)
- 4398c: 004d3f00 call 4d3f0 <__eqdf2>
- 43990: da003d17 ldw r8,244(sp)
- 43994: 10018d26 beq r2,zero,43fcc <___vfprintf_internal_r+0x1e60>
- 43998: d8802117 ldw r2,132(sp)
- 4399c: 1700062e bgeu r2,fp,439b8 <___vfprintf_internal_r+0x184c>
- 439a0: 01000c04 movi r4,48
- 439a4: 10c00044 addi r3,r2,1
- 439a8: d8c02115 stw r3,132(sp)
- 439ac: 11000005 stb r4,0(r2)
- 439b0: d8802117 ldw r2,132(sp)
- 439b4: 173ffb36 bltu r2,fp,439a4 <__alt_data_end+0xfffd19a4>
- 439b8: 1405c83a sub r2,r2,r16
- 439bc: d8803315 stw r2,204(sp)
- 439c0: 008011c4 movi r2,71
- 439c4: b0817626 beq r22,r2,43fa0 <___vfprintf_internal_r+0x1e34>
- 439c8: 00801944 movi r2,101
- 439cc: 1442800e bge r2,r17,443d0 <___vfprintf_internal_r+0x2264>
- 439d0: d8c02617 ldw r3,152(sp)
- 439d4: 00801984 movi r2,102
- 439d8: d8c03215 stw r3,200(sp)
- 439dc: 8881fe26 beq r17,r2,441d8 <___vfprintf_internal_r+0x206c>
- 439e0: d8c03217 ldw r3,200(sp)
- 439e4: d9003317 ldw r4,204(sp)
- 439e8: 1901dd16 blt r3,r4,44160 <___vfprintf_internal_r+0x1ff4>
- 439ec: 9480004c andi r18,r18,1
- 439f0: 90022b1e bne r18,zero,442a0 <___vfprintf_internal_r+0x2134>
- 439f4: 1805883a mov r2,r3
- 439f8: 18028316 blt r3,zero,44408 <___vfprintf_internal_r+0x229c>
- 439fc: d8c03217 ldw r3,200(sp)
- 43a00: 044019c4 movi r17,103
- 43a04: d8c02b15 stw r3,172(sp)
- 43a08: df002907 ldb fp,164(sp)
- 43a0c: e001531e bne fp,zero,43f5c <___vfprintf_internal_r+0x1df0>
- 43a10: df002783 ldbu fp,158(sp)
- 43a14: d8802915 stw r2,164(sp)
- 43a18: dc802c17 ldw r18,176(sp)
- 43a1c: d8002a15 stw zero,168(sp)
- 43a20: 003baf06 br 428e0 <__alt_data_end+0xfffd08e0>
- 43a24: d8c02e17 ldw r3,184(sp)
- 43a28: d9002e17 ldw r4,184(sp)
- 43a2c: d9402e17 ldw r5,184(sp)
- 43a30: 18c00017 ldw r3,0(r3)
- 43a34: 21000117 ldw r4,4(r4)
- 43a38: 29400204 addi r5,r5,8
- 43a3c: d8c03615 stw r3,216(sp)
- 43a40: d9003815 stw r4,224(sp)
- 43a44: d9402e15 stw r5,184(sp)
- 43a48: 003b5006 br 4278c <__alt_data_end+0xfffd078c>
- 43a4c: ac400007 ldb r17,0(r21)
- 43a50: 003a2806 br 422f4 <__alt_data_end+0xfffd02f4>
- 43a54: 9080100c andi r2,r18,64
- 43a58: 1000a826 beq r2,zero,43cfc <___vfprintf_internal_r+0x1b90>
- 43a5c: d8c02e17 ldw r3,184(sp)
- 43a60: 002d883a mov r22,zero
- 43a64: 1cc0000b ldhu r19,0(r3)
- 43a68: 18c00104 addi r3,r3,4
- 43a6c: d8c02e15 stw r3,184(sp)
- 43a70: 003caf06 br 42d30 <__alt_data_end+0xfffd0d30>
- 43a74: d9002e17 ldw r4,184(sp)
- 43a78: d9402a17 ldw r5,168(sp)
- 43a7c: 002d883a mov r22,zero
- 43a80: 20800104 addi r2,r4,4
- 43a84: 24c00017 ldw r19,0(r4)
- 43a88: 283ebb0e bge r5,zero,43578 <__alt_data_end+0xfffd1578>
- 43a8c: 003ef106 br 43654 <__alt_data_end+0xfffd1654>
- 43a90: 9080040c andi r2,r18,16
- 43a94: 1000921e bne r2,zero,43ce0 <___vfprintf_internal_r+0x1b74>
- 43a98: 9480100c andi r18,r18,64
- 43a9c: 90013926 beq r18,zero,43f84 <___vfprintf_internal_r+0x1e18>
- 43aa0: d9402e17 ldw r5,184(sp)
- 43aa4: d8c02f17 ldw r3,188(sp)
- 43aa8: 28800017 ldw r2,0(r5)
- 43aac: 29400104 addi r5,r5,4
- 43ab0: d9402e15 stw r5,184(sp)
- 43ab4: 10c0000d sth r3,0(r2)
- 43ab8: 0039e406 br 4224c <__alt_data_end+0xfffd024c>
- 43abc: 9080100c andi r2,r18,64
- 43ac0: 10008026 beq r2,zero,43cc4 <___vfprintf_internal_r+0x1b58>
- 43ac4: d8802e17 ldw r2,184(sp)
- 43ac8: 14c0000f ldh r19,0(r2)
- 43acc: 10800104 addi r2,r2,4
- 43ad0: d8802e15 stw r2,184(sp)
- 43ad4: 982dd7fa srai r22,r19,31
- 43ad8: b005883a mov r2,r22
- 43adc: 003af706 br 426bc <__alt_data_end+0xfffd06bc>
- 43ae0: 9080100c andi r2,r18,64
- 43ae4: d8002785 stb zero,158(sp)
- 43ae8: 10008a1e bne r2,zero,43d14 <___vfprintf_internal_r+0x1ba8>
- 43aec: d9002e17 ldw r4,184(sp)
- 43af0: d9402a17 ldw r5,168(sp)
- 43af4: 002d883a mov r22,zero
- 43af8: 20800104 addi r2,r4,4
- 43afc: 24c00017 ldw r19,0(r4)
- 43b00: 283e4b0e bge r5,zero,43430 <__alt_data_end+0xfffd1430>
- 43b04: 9d86b03a or r3,r19,r22
- 43b08: d8802e15 stw r2,184(sp)
- 43b0c: 183e4c1e bne r3,zero,43440 <__alt_data_end+0xfffd1440>
- 43b10: 0039883a mov fp,zero
- 43b14: 0005883a mov r2,zero
- 43b18: 003d4006 br 4301c <__alt_data_end+0xfffd101c>
- 43b1c: 01400174 movhi r5,5
- 43b20: 29488784 addi r5,r5,8734
- 43b24: d9402c15 stw r5,176(sp)
- 43b28: d9402c17 ldw r5,176(sp)
- 43b2c: 1c47883a add r3,r3,r17
- 43b30: 10800044 addi r2,r2,1
- 43b34: 41400015 stw r5,0(r8)
- 43b38: 44400115 stw r17,4(r8)
- 43b3c: d8c02015 stw r3,128(sp)
- 43b40: d8801f15 stw r2,124(sp)
- 43b44: 010001c4 movi r4,7
- 43b48: 20bec816 blt r4,r2,4366c <__alt_data_end+0xfffd166c>
- 43b4c: 42000204 addi r8,r8,8
- 43b50: 003ecd06 br 43688 <__alt_data_end+0xfffd1688>
- 43b54: d9002a17 ldw r4,168(sp)
- 43b58: d8002785 stb zero,158(sp)
- 43b5c: 203d2d16 blt r4,zero,43014 <__alt_data_end+0xfffd1014>
- 43b60: 00bfdfc4 movi r2,-129
- 43b64: 90a4703a and r18,r18,r2
- 43b68: 003a6106 br 424f0 <__alt_data_end+0xfffd04f0>
- 43b6c: 01000174 movhi r4,5
- 43b70: 21088784 addi r4,r4,8734
- 43b74: d9002c15 stw r4,176(sp)
- 43b78: 003bea06 br 42b24 <__alt_data_end+0xfffd0b24>
- 43b7c: d9002d17 ldw r4,180(sp)
- 43b80: d9801e04 addi r6,sp,120
- 43b84: b80b883a mov r5,r23
- 43b88: 00491b40 call 491b4 <__sprint_r>
- 43b8c: 103a7b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43b90: d8c02017 ldw r3,128(sp)
- 43b94: da000404 addi r8,sp,16
- 43b98: 003d4106 br 430a0 <__alt_data_end+0xfffd10a0>
- 43b9c: d8801f17 ldw r2,124(sp)
- 43ba0: 01400174 movhi r5,5
- 43ba4: 01000044 movi r4,1
- 43ba8: 18c00044 addi r3,r3,1
- 43bac: 10800044 addi r2,r2,1
- 43bb0: 29488704 addi r5,r5,8732
- 43bb4: 41000115 stw r4,4(r8)
- 43bb8: 41400015 stw r5,0(r8)
- 43bbc: d8c02015 stw r3,128(sp)
- 43bc0: d8801f15 stw r2,124(sp)
- 43bc4: 010001c4 movi r4,7
- 43bc8: 20805c16 blt r4,r2,43d3c <___vfprintf_internal_r+0x1bd0>
- 43bcc: 42000204 addi r8,r8,8
- 43bd0: 8800041e bne r17,zero,43be4 <___vfprintf_internal_r+0x1a78>
- 43bd4: d8803317 ldw r2,204(sp)
- 43bd8: 1000021e bne r2,zero,43be4 <___vfprintf_internal_r+0x1a78>
- 43bdc: 9080004c andi r2,r18,1
- 43be0: 103be726 beq r2,zero,42b80 <__alt_data_end+0xfffd0b80>
- 43be4: d9003717 ldw r4,220(sp)
- 43be8: d8801f17 ldw r2,124(sp)
- 43bec: d9403417 ldw r5,208(sp)
- 43bf0: 20c7883a add r3,r4,r3
- 43bf4: 10800044 addi r2,r2,1
- 43bf8: 41000115 stw r4,4(r8)
- 43bfc: 41400015 stw r5,0(r8)
- 43c00: d8c02015 stw r3,128(sp)
- 43c04: d8801f15 stw r2,124(sp)
- 43c08: 010001c4 movi r4,7
- 43c0c: 20812116 blt r4,r2,44094 <___vfprintf_internal_r+0x1f28>
- 43c10: 42000204 addi r8,r8,8
- 43c14: 0463c83a sub r17,zero,r17
- 43c18: 0440730e bge zero,r17,43de8 <___vfprintf_internal_r+0x1c7c>
- 43c1c: 05800404 movi r22,16
- 43c20: b440860e bge r22,r17,43e3c <___vfprintf_internal_r+0x1cd0>
- 43c24: 01400174 movhi r5,5
- 43c28: 29488784 addi r5,r5,8734
- 43c2c: d9402c15 stw r5,176(sp)
- 43c30: 070001c4 movi fp,7
- 43c34: dcc02d17 ldw r19,180(sp)
- 43c38: 00000306 br 43c48 <___vfprintf_internal_r+0x1adc>
- 43c3c: 42000204 addi r8,r8,8
- 43c40: 8c7ffc04 addi r17,r17,-16
- 43c44: b440800e bge r22,r17,43e48 <___vfprintf_internal_r+0x1cdc>
- 43c48: 18c00404 addi r3,r3,16
- 43c4c: 10800044 addi r2,r2,1
- 43c50: 45000015 stw r20,0(r8)
- 43c54: 45800115 stw r22,4(r8)
- 43c58: d8c02015 stw r3,128(sp)
- 43c5c: d8801f15 stw r2,124(sp)
- 43c60: e0bff60e bge fp,r2,43c3c <__alt_data_end+0xfffd1c3c>
- 43c64: d9801e04 addi r6,sp,120
- 43c68: b80b883a mov r5,r23
- 43c6c: 9809883a mov r4,r19
- 43c70: 00491b40 call 491b4 <__sprint_r>
- 43c74: 103a411e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43c78: d8c02017 ldw r3,128(sp)
- 43c7c: d8801f17 ldw r2,124(sp)
- 43c80: da000404 addi r8,sp,16
- 43c84: 003fee06 br 43c40 <__alt_data_end+0xfffd1c40>
- 43c88: 00bfffc4 movi r2,-1
- 43c8c: 003a3f06 br 4258c <__alt_data_end+0xfffd058c>
- 43c90: 008011c4 movi r2,71
- 43c94: 1440b816 blt r2,r17,43f78 <___vfprintf_internal_r+0x1e0c>
- 43c98: 04000174 movhi r16,5
- 43c9c: 84087904 addi r16,r16,8676
- 43ca0: 00c000c4 movi r3,3
- 43ca4: 00bfdfc4 movi r2,-129
- 43ca8: d8c02915 stw r3,164(sp)
- 43cac: 90a4703a and r18,r18,r2
- 43cb0: df002783 ldbu fp,158(sp)
- 43cb4: d8c02b15 stw r3,172(sp)
- 43cb8: d8002a15 stw zero,168(sp)
- 43cbc: d8003215 stw zero,200(sp)
- 43cc0: 003b0706 br 428e0 <__alt_data_end+0xfffd08e0>
- 43cc4: d8c02e17 ldw r3,184(sp)
- 43cc8: 1cc00017 ldw r19,0(r3)
- 43ccc: 18c00104 addi r3,r3,4
- 43cd0: d8c02e15 stw r3,184(sp)
- 43cd4: 982dd7fa srai r22,r19,31
- 43cd8: b005883a mov r2,r22
- 43cdc: 003a7706 br 426bc <__alt_data_end+0xfffd06bc>
- 43ce0: d8c02e17 ldw r3,184(sp)
- 43ce4: d9002f17 ldw r4,188(sp)
- 43ce8: 18800017 ldw r2,0(r3)
- 43cec: 18c00104 addi r3,r3,4
- 43cf0: d8c02e15 stw r3,184(sp)
- 43cf4: 11000015 stw r4,0(r2)
- 43cf8: 00395406 br 4224c <__alt_data_end+0xfffd024c>
- 43cfc: d9002e17 ldw r4,184(sp)
- 43d00: 002d883a mov r22,zero
- 43d04: 24c00017 ldw r19,0(r4)
- 43d08: 21000104 addi r4,r4,4
- 43d0c: d9002e15 stw r4,184(sp)
- 43d10: 003c0706 br 42d30 <__alt_data_end+0xfffd0d30>
- 43d14: d9402e17 ldw r5,184(sp)
- 43d18: d8c02a17 ldw r3,168(sp)
- 43d1c: 002d883a mov r22,zero
- 43d20: 28800104 addi r2,r5,4
- 43d24: 2cc0000b ldhu r19,0(r5)
- 43d28: 183dc10e bge r3,zero,43430 <__alt_data_end+0xfffd1430>
- 43d2c: 003f7506 br 43b04 <__alt_data_end+0xfffd1b04>
- 43d30: 04000174 movhi r16,5
- 43d34: 84087704 addi r16,r16,8668
- 43d38: 003aa706 br 427d8 <__alt_data_end+0xfffd07d8>
- 43d3c: d9002d17 ldw r4,180(sp)
- 43d40: d9801e04 addi r6,sp,120
- 43d44: b80b883a mov r5,r23
- 43d48: 00491b40 call 491b4 <__sprint_r>
- 43d4c: 103a0b1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43d50: dc402617 ldw r17,152(sp)
- 43d54: d8c02017 ldw r3,128(sp)
- 43d58: da000404 addi r8,sp,16
- 43d5c: 003f9c06 br 43bd0 <__alt_data_end+0xfffd1bd0>
- 43d60: ac400043 ldbu r17,1(r21)
- 43d64: 84000814 ori r16,r16,32
- 43d68: ad400044 addi r21,r21,1
- 43d6c: 8c403fcc andi r17,r17,255
- 43d70: 8c40201c xori r17,r17,128
- 43d74: 8c7fe004 addi r17,r17,-128
- 43d78: 00395e06 br 422f4 <__alt_data_end+0xfffd02f4>
- 43d7c: d8c02e15 stw r3,184(sp)
- 43d80: 0039883a mov fp,zero
- 43d84: 003e3506 br 4365c <__alt_data_end+0xfffd165c>
- 43d88: d9002d17 ldw r4,180(sp)
- 43d8c: d9801e04 addi r6,sp,120
- 43d90: b80b883a mov r5,r23
- 43d94: 00491b40 call 491b4 <__sprint_r>
- 43d98: 1039f81e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43d9c: d8c02017 ldw r3,128(sp)
- 43da0: da000404 addi r8,sp,16
- 43da4: 003cd006 br 430e8 <__alt_data_end+0xfffd10e8>
- 43da8: 8009883a mov r4,r16
- 43dac: df003d15 stw fp,244(sp)
- 43db0: 00490200 call 49020 <strlen>
- 43db4: d8802b15 stw r2,172(sp)
- 43db8: da003d17 ldw r8,244(sp)
- 43dbc: 103c200e bge r2,zero,42e40 <__alt_data_end+0xfffd0e40>
- 43dc0: 0005883a mov r2,zero
- 43dc4: 003c1e06 br 42e40 <__alt_data_end+0xfffd0e40>
- 43dc8: d9002d17 ldw r4,180(sp)
- 43dcc: d9801e04 addi r6,sp,120
- 43dd0: b80b883a mov r5,r23
- 43dd4: 00491b40 call 491b4 <__sprint_r>
- 43dd8: 1039e81e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43ddc: d8c02017 ldw r3,128(sp)
- 43de0: d8801f17 ldw r2,124(sp)
- 43de4: da000404 addi r8,sp,16
- 43de8: d9403317 ldw r5,204(sp)
- 43dec: 10800044 addi r2,r2,1
- 43df0: 44000015 stw r16,0(r8)
- 43df4: 28c7883a add r3,r5,r3
- 43df8: 003b5b06 br 42b68 <__alt_data_end+0xfffd0b68>
- 43dfc: 01000174 movhi r4,5
- 43e00: 21088b84 addi r4,r4,8750
- 43e04: d9003515 stw r4,212(sp)
- 43e08: 003af206 br 429d4 <__alt_data_end+0xfffd09d4>
- 43e0c: 013fffc4 movi r4,-1
- 43e10: 003a0806 br 42634 <__alt_data_end+0xfffd0634>
- 43e14: 0023883a mov r17,zero
- 43e18: 003d9d06 br 43490 <__alt_data_end+0xfffd1490>
- 43e1c: d9002d17 ldw r4,180(sp)
- 43e20: d9801e04 addi r6,sp,120
- 43e24: b80b883a mov r5,r23
- 43e28: 00491b40 call 491b4 <__sprint_r>
- 43e2c: 1039d31e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43e30: d8c02017 ldw r3,128(sp)
- 43e34: da000404 addi r8,sp,16
- 43e38: 003d9406 br 4348c <__alt_data_end+0xfffd148c>
- 43e3c: 01000174 movhi r4,5
- 43e40: 21088784 addi r4,r4,8734
- 43e44: d9002c15 stw r4,176(sp)
- 43e48: d9002c17 ldw r4,176(sp)
- 43e4c: 1c47883a add r3,r3,r17
- 43e50: 10800044 addi r2,r2,1
- 43e54: 41000015 stw r4,0(r8)
- 43e58: 44400115 stw r17,4(r8)
- 43e5c: d8c02015 stw r3,128(sp)
- 43e60: d8801f15 stw r2,124(sp)
- 43e64: 010001c4 movi r4,7
- 43e68: 20bfd716 blt r4,r2,43dc8 <__alt_data_end+0xfffd1dc8>
- 43e6c: 42000204 addi r8,r8,8
- 43e70: 003fdd06 br 43de8 <__alt_data_end+0xfffd1de8>
- 43e74: d9002d17 ldw r4,180(sp)
- 43e78: d9801e04 addi r6,sp,120
- 43e7c: b80b883a mov r5,r23
- 43e80: 00491b40 call 491b4 <__sprint_r>
- 43e84: 1039bd1e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43e88: d8802617 ldw r2,152(sp)
- 43e8c: d8c02017 ldw r3,128(sp)
- 43e90: da000404 addi r8,sp,16
- 43e94: 003e1006 br 436d8 <__alt_data_end+0xfffd16d8>
- 43e98: 00800044 movi r2,1
- 43e9c: 10803fcc andi r2,r2,255
- 43ea0: 00c00044 movi r3,1
- 43ea4: 10fa0d26 beq r2,r3,426dc <__alt_data_end+0xfffd06dc>
- 43ea8: 00c00084 movi r3,2
- 43eac: 10fbaf26 beq r2,r3,42d6c <__alt_data_end+0xfffd0d6c>
- 43eb0: 003a6d06 br 42868 <__alt_data_end+0xfffd0868>
- 43eb4: 01000174 movhi r4,5
- 43eb8: 21088b84 addi r4,r4,8750
- 43ebc: d9003515 stw r4,212(sp)
- 43ec0: 003b5406 br 42c14 <__alt_data_end+0xfffd0c14>
- 43ec4: d8802a17 ldw r2,168(sp)
- 43ec8: 00c00184 movi r3,6
- 43ecc: 1880012e bgeu r3,r2,43ed4 <___vfprintf_internal_r+0x1d68>
- 43ed0: 1805883a mov r2,r3
- 43ed4: d8802b15 stw r2,172(sp)
- 43ed8: 1000ef16 blt r2,zero,44298 <___vfprintf_internal_r+0x212c>
- 43edc: 04000174 movhi r16,5
- 43ee0: d8802915 stw r2,164(sp)
- 43ee4: dcc02e15 stw r19,184(sp)
- 43ee8: d8002a15 stw zero,168(sp)
- 43eec: d8003215 stw zero,200(sp)
- 43ef0: 84088504 addi r16,r16,8724
- 43ef4: 0039883a mov fp,zero
- 43ef8: 003a8006 br 428fc <__alt_data_end+0xfffd08fc>
- 43efc: 0021883a mov r16,zero
- 43f00: 003e0706 br 43720 <__alt_data_end+0xfffd1720>
- 43f04: d9002d17 ldw r4,180(sp)
- 43f08: d9801e04 addi r6,sp,120
- 43f0c: b80b883a mov r5,r23
- 43f10: 00491b40 call 491b4 <__sprint_r>
- 43f14: 1039991e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 43f18: d8802617 ldw r2,152(sp)
- 43f1c: d9403317 ldw r5,204(sp)
- 43f20: d8c02017 ldw r3,128(sp)
- 43f24: da000404 addi r8,sp,16
- 43f28: 2885c83a sub r2,r5,r2
- 43f2c: 003dfb06 br 4371c <__alt_data_end+0xfffd171c>
- 43f30: 9080004c andi r2,r18,1
- 43f34: 103e8f1e bne r2,zero,43974 <__alt_data_end+0xfffd1974>
- 43f38: d8802117 ldw r2,132(sp)
- 43f3c: 003e9e06 br 439b8 <__alt_data_end+0xfffd19b8>
- 43f40: 1025883a mov r18,r2
- 43f44: 0039883a mov fp,zero
- 43f48: 00800084 movi r2,2
- 43f4c: 003fd306 br 43e9c <__alt_data_end+0xfffd1e9c>
- 43f50: 07000b44 movi fp,45
- 43f54: df002785 stb fp,158(sp)
- 43f58: 003a1b06 br 427c8 <__alt_data_end+0xfffd07c8>
- 43f5c: 00c00b44 movi r3,45
- 43f60: d8c02785 stb r3,158(sp)
- 43f64: d8802915 stw r2,164(sp)
- 43f68: dc802c17 ldw r18,176(sp)
- 43f6c: d8002a15 stw zero,168(sp)
- 43f70: 07000b44 movi fp,45
- 43f74: 003a5e06 br 428f0 <__alt_data_end+0xfffd08f0>
- 43f78: 04000174 movhi r16,5
- 43f7c: 84087a04 addi r16,r16,8680
- 43f80: 003f4706 br 43ca0 <__alt_data_end+0xfffd1ca0>
- 43f84: d9002e17 ldw r4,184(sp)
- 43f88: d9402f17 ldw r5,188(sp)
- 43f8c: 20800017 ldw r2,0(r4)
- 43f90: 21000104 addi r4,r4,4
- 43f94: d9002e15 stw r4,184(sp)
- 43f98: 11400015 stw r5,0(r2)
- 43f9c: 0038ab06 br 4224c <__alt_data_end+0xfffd024c>
- 43fa0: dd802617 ldw r22,152(sp)
- 43fa4: 00bfff44 movi r2,-3
- 43fa8: b0801c16 blt r22,r2,4401c <___vfprintf_internal_r+0x1eb0>
- 43fac: d9402a17 ldw r5,168(sp)
- 43fb0: 2d801a16 blt r5,r22,4401c <___vfprintf_internal_r+0x1eb0>
- 43fb4: dd803215 stw r22,200(sp)
- 43fb8: 003e8906 br 439e0 <__alt_data_end+0xfffd19e0>
- 43fbc: 01000174 movhi r4,5
- 43fc0: 21088784 addi r4,r4,8734
- 43fc4: d9002c15 stw r4,176(sp)
- 43fc8: 003c9106 br 43210 <__alt_data_end+0xfffd1210>
- 43fcc: e005883a mov r2,fp
- 43fd0: 003e7906 br 439b8 <__alt_data_end+0xfffd19b8>
- 43fd4: d9002a17 ldw r4,168(sp)
- 43fd8: df002783 ldbu fp,158(sp)
- 43fdc: dcc02e15 stw r19,184(sp)
- 43fe0: d9002915 stw r4,164(sp)
- 43fe4: d9002b15 stw r4,172(sp)
- 43fe8: d8002a15 stw zero,168(sp)
- 43fec: d8003215 stw zero,200(sp)
- 43ff0: 003a3b06 br 428e0 <__alt_data_end+0xfffd08e0>
- 43ff4: 9080004c andi r2,r18,1
- 43ff8: 0039883a mov fp,zero
- 43ffc: 10000426 beq r2,zero,44010 <___vfprintf_internal_r+0x1ea4>
- 44000: 00800c04 movi r2,48
- 44004: dc001dc4 addi r16,sp,119
- 44008: d8801dc5 stb r2,119(sp)
- 4400c: 003b6406 br 42da0 <__alt_data_end+0xfffd0da0>
- 44010: d8002b15 stw zero,172(sp)
- 44014: dc001e04 addi r16,sp,120
- 44018: 003a2b06 br 428c8 <__alt_data_end+0xfffd08c8>
- 4401c: 8c7fff84 addi r17,r17,-2
- 44020: b5bfffc4 addi r22,r22,-1
- 44024: dd802615 stw r22,152(sp)
- 44028: dc4022c5 stb r17,139(sp)
- 4402c: b000bf16 blt r22,zero,4432c <___vfprintf_internal_r+0x21c0>
- 44030: 00800ac4 movi r2,43
- 44034: d8802305 stb r2,140(sp)
- 44038: 00800244 movi r2,9
- 4403c: 15807016 blt r2,r22,44200 <___vfprintf_internal_r+0x2094>
- 44040: 00800c04 movi r2,48
- 44044: b5800c04 addi r22,r22,48
- 44048: d8802345 stb r2,141(sp)
- 4404c: dd802385 stb r22,142(sp)
- 44050: d88023c4 addi r2,sp,143
- 44054: df0022c4 addi fp,sp,139
- 44058: d8c03317 ldw r3,204(sp)
- 4405c: 1739c83a sub fp,r2,fp
- 44060: d9003317 ldw r4,204(sp)
- 44064: e0c7883a add r3,fp,r3
- 44068: df003a15 stw fp,232(sp)
- 4406c: d8c02b15 stw r3,172(sp)
- 44070: 00800044 movi r2,1
- 44074: 1100b30e bge r2,r4,44344 <___vfprintf_internal_r+0x21d8>
- 44078: d8c02b17 ldw r3,172(sp)
- 4407c: 18c00044 addi r3,r3,1
- 44080: d8c02b15 stw r3,172(sp)
- 44084: 1805883a mov r2,r3
- 44088: 1800ac16 blt r3,zero,4433c <___vfprintf_internal_r+0x21d0>
- 4408c: d8003215 stw zero,200(sp)
- 44090: 003e5d06 br 43a08 <__alt_data_end+0xfffd1a08>
- 44094: d9002d17 ldw r4,180(sp)
- 44098: d9801e04 addi r6,sp,120
- 4409c: b80b883a mov r5,r23
- 440a0: 00491b40 call 491b4 <__sprint_r>
- 440a4: 1039351e bne r2,zero,4257c <__alt_data_end+0xfffd057c>
- 440a8: dc402617 ldw r17,152(sp)
- 440ac: d8c02017 ldw r3,128(sp)
- 440b0: d8801f17 ldw r2,124(sp)
- 440b4: da000404 addi r8,sp,16
- 440b8: 003ed606 br 43c14 <__alt_data_end+0xfffd1c14>
- 440bc: 182b883a mov r21,r3
- 440c0: d8002a15 stw zero,168(sp)
- 440c4: 00388c06 br 422f8 <__alt_data_end+0xfffd02f8>
- 440c8: d8802a17 ldw r2,168(sp)
- 440cc: 103e071e bne r2,zero,438ec <__alt_data_end+0xfffd18ec>
- 440d0: dc002a15 stw r16,168(sp)
- 440d4: 003e0506 br 438ec <__alt_data_end+0xfffd18ec>
- 440d8: d9002a17 ldw r4,168(sp)
- 440dc: 20c00044 addi r3,r4,1
- 440e0: 003e0f06 br 43920 <__alt_data_end+0xfffd1920>
- 440e4: 01400184 movi r5,6
- 440e8: d9402a15 stw r5,168(sp)
- 440ec: 003dff06 br 438ec <__alt_data_end+0xfffd18ec>
- 440f0: d8802104 addi r2,sp,132
- 440f4: d8800315 stw r2,12(sp)
- 440f8: d8802504 addi r2,sp,148
- 440fc: d8800215 stw r2,8(sp)
- 44100: d8802604 addi r2,sp,152
- 44104: d8800115 stw r2,4(sp)
- 44108: d8802a17 ldw r2,168(sp)
- 4410c: d9403617 ldw r5,216(sp)
- 44110: d9002d17 ldw r4,180(sp)
- 44114: d8800015 stw r2,0(sp)
- 44118: 01c000c4 movi r7,3
- 4411c: 980d883a mov r6,r19
- 44120: da003d15 stw r8,244(sp)
- 44124: 004489c0 call 4489c <_dtoa_r>
- 44128: d8c02a17 ldw r3,168(sp)
- 4412c: da003d17 ldw r8,244(sp)
- 44130: 1021883a mov r16,r2
- 44134: 10f9883a add fp,r2,r3
- 44138: 81000007 ldb r4,0(r16)
- 4413c: 00800c04 movi r2,48
- 44140: 20805e26 beq r4,r2,442bc <___vfprintf_internal_r+0x2150>
- 44144: d8c02617 ldw r3,152(sp)
- 44148: e0f9883a add fp,fp,r3
- 4414c: 003e0a06 br 43978 <__alt_data_end+0xfffd1978>
- 44150: 00c00b44 movi r3,45
- 44154: 24e0003c xorhi r19,r4,32768
- 44158: d8c02905 stb r3,164(sp)
- 4415c: 003de906 br 43904 <__alt_data_end+0xfffd1904>
- 44160: d8c03217 ldw r3,200(sp)
- 44164: 00c07a0e bge zero,r3,44350 <___vfprintf_internal_r+0x21e4>
- 44168: 00800044 movi r2,1
- 4416c: d9003317 ldw r4,204(sp)
- 44170: 1105883a add r2,r2,r4
- 44174: d8802b15 stw r2,172(sp)
- 44178: 10004e16 blt r2,zero,442b4 <___vfprintf_internal_r+0x2148>
- 4417c: 044019c4 movi r17,103
- 44180: 003e2106 br 43a08 <__alt_data_end+0xfffd1a08>
- 44184: d9002a17 ldw r4,168(sp)
- 44188: d8802104 addi r2,sp,132
- 4418c: d8800315 stw r2,12(sp)
- 44190: d9000015 stw r4,0(sp)
- 44194: d8802504 addi r2,sp,148
- 44198: d9403617 ldw r5,216(sp)
- 4419c: d9002d17 ldw r4,180(sp)
- 441a0: d8800215 stw r2,8(sp)
- 441a4: d8802604 addi r2,sp,152
- 441a8: d8800115 stw r2,4(sp)
- 441ac: 01c000c4 movi r7,3
- 441b0: 980d883a mov r6,r19
- 441b4: da003d15 stw r8,244(sp)
- 441b8: 004489c0 call 4489c <_dtoa_r>
- 441bc: d8c02a17 ldw r3,168(sp)
- 441c0: da003d17 ldw r8,244(sp)
- 441c4: 1021883a mov r16,r2
- 441c8: 00801184 movi r2,70
- 441cc: 80f9883a add fp,r16,r3
- 441d0: 88bfd926 beq r17,r2,44138 <__alt_data_end+0xfffd2138>
- 441d4: 003de806 br 43978 <__alt_data_end+0xfffd1978>
- 441d8: d9002a17 ldw r4,168(sp)
- 441dc: 00c04d0e bge zero,r3,44314 <___vfprintf_internal_r+0x21a8>
- 441e0: 2000441e bne r4,zero,442f4 <___vfprintf_internal_r+0x2188>
- 441e4: 9480004c andi r18,r18,1
- 441e8: 9000421e bne r18,zero,442f4 <___vfprintf_internal_r+0x2188>
- 441ec: 1805883a mov r2,r3
- 441f0: 18006f16 blt r3,zero,443b0 <___vfprintf_internal_r+0x2244>
- 441f4: d8c03217 ldw r3,200(sp)
- 441f8: d8c02b15 stw r3,172(sp)
- 441fc: 003e0206 br 43a08 <__alt_data_end+0xfffd1a08>
- 44200: df0022c4 addi fp,sp,139
- 44204: dc002a15 stw r16,168(sp)
- 44208: 4027883a mov r19,r8
- 4420c: e021883a mov r16,fp
- 44210: b009883a mov r4,r22
- 44214: 01400284 movi r5,10
- 44218: 004c8c80 call 4c8c8 <__modsi3>
- 4421c: 10800c04 addi r2,r2,48
- 44220: 843fffc4 addi r16,r16,-1
- 44224: b009883a mov r4,r22
- 44228: 01400284 movi r5,10
- 4422c: 80800005 stb r2,0(r16)
- 44230: 004c8440 call 4c844 <__divsi3>
- 44234: 102d883a mov r22,r2
- 44238: 00800244 movi r2,9
- 4423c: 15bff416 blt r2,r22,44210 <__alt_data_end+0xfffd2210>
- 44240: 9811883a mov r8,r19
- 44244: b0800c04 addi r2,r22,48
- 44248: 8027883a mov r19,r16
- 4424c: 997fffc4 addi r5,r19,-1
- 44250: 98bfffc5 stb r2,-1(r19)
- 44254: dc002a17 ldw r16,168(sp)
- 44258: 2f006d2e bgeu r5,fp,44410 <___vfprintf_internal_r+0x22a4>
- 4425c: d9c02384 addi r7,sp,142
- 44260: 3ccfc83a sub r7,r7,r19
- 44264: d9002344 addi r4,sp,141
- 44268: e1cf883a add r7,fp,r7
- 4426c: 00000106 br 44274 <___vfprintf_internal_r+0x2108>
- 44270: 28800003 ldbu r2,0(r5)
- 44274: 20800005 stb r2,0(r4)
- 44278: 21000044 addi r4,r4,1
- 4427c: 29400044 addi r5,r5,1
- 44280: 393ffb1e bne r7,r4,44270 <__alt_data_end+0xfffd2270>
- 44284: d8802304 addi r2,sp,140
- 44288: 14c5c83a sub r2,r2,r19
- 4428c: d8c02344 addi r3,sp,141
- 44290: 1885883a add r2,r3,r2
- 44294: 003f7006 br 44058 <__alt_data_end+0xfffd2058>
- 44298: 0005883a mov r2,zero
- 4429c: 003f0f06 br 43edc <__alt_data_end+0xfffd1edc>
- 442a0: d8c03217 ldw r3,200(sp)
- 442a4: 18c00044 addi r3,r3,1
- 442a8: d8c02b15 stw r3,172(sp)
- 442ac: 1805883a mov r2,r3
- 442b0: 183fb20e bge r3,zero,4417c <__alt_data_end+0xfffd217c>
- 442b4: 0005883a mov r2,zero
- 442b8: 003fb006 br 4417c <__alt_data_end+0xfffd217c>
- 442bc: d9003617 ldw r4,216(sp)
- 442c0: 000d883a mov r6,zero
- 442c4: 000f883a mov r7,zero
- 442c8: 980b883a mov r5,r19
- 442cc: d8c03c15 stw r3,240(sp)
- 442d0: da003d15 stw r8,244(sp)
- 442d4: 004d3f00 call 4d3f0 <__eqdf2>
- 442d8: d8c03c17 ldw r3,240(sp)
- 442dc: da003d17 ldw r8,244(sp)
- 442e0: 103f9826 beq r2,zero,44144 <__alt_data_end+0xfffd2144>
- 442e4: 00800044 movi r2,1
- 442e8: 10c7c83a sub r3,r2,r3
- 442ec: d8c02615 stw r3,152(sp)
- 442f0: 003f9506 br 44148 <__alt_data_end+0xfffd2148>
- 442f4: d9002a17 ldw r4,168(sp)
- 442f8: d8c03217 ldw r3,200(sp)
- 442fc: 20800044 addi r2,r4,1
- 44300: 1885883a add r2,r3,r2
- 44304: d8802b15 stw r2,172(sp)
- 44308: 103dbf0e bge r2,zero,43a08 <__alt_data_end+0xfffd1a08>
- 4430c: 0005883a mov r2,zero
- 44310: 003dbd06 br 43a08 <__alt_data_end+0xfffd1a08>
- 44314: 2000201e bne r4,zero,44398 <___vfprintf_internal_r+0x222c>
- 44318: 9480004c andi r18,r18,1
- 4431c: 90001e1e bne r18,zero,44398 <___vfprintf_internal_r+0x222c>
- 44320: 00800044 movi r2,1
- 44324: d8802b15 stw r2,172(sp)
- 44328: 003db706 br 43a08 <__alt_data_end+0xfffd1a08>
- 4432c: 00800b44 movi r2,45
- 44330: 05adc83a sub r22,zero,r22
- 44334: d8802305 stb r2,140(sp)
- 44338: 003f3f06 br 44038 <__alt_data_end+0xfffd2038>
- 4433c: 0005883a mov r2,zero
- 44340: 003f5206 br 4408c <__alt_data_end+0xfffd208c>
- 44344: 90a4703a and r18,r18,r2
- 44348: 903f4e26 beq r18,zero,44084 <__alt_data_end+0xfffd2084>
- 4434c: 003f4a06 br 44078 <__alt_data_end+0xfffd2078>
- 44350: 00800084 movi r2,2
- 44354: 10c5c83a sub r2,r2,r3
- 44358: 003f8406 br 4416c <__alt_data_end+0xfffd216c>
- 4435c: d9402e17 ldw r5,184(sp)
- 44360: d9002e17 ldw r4,184(sp)
- 44364: ac400043 ldbu r17,1(r21)
- 44368: 29400017 ldw r5,0(r5)
- 4436c: 20800104 addi r2,r4,4
- 44370: d8802e15 stw r2,184(sp)
- 44374: d9402a15 stw r5,168(sp)
- 44378: 182b883a mov r21,r3
- 4437c: 283e7b0e bge r5,zero,43d6c <__alt_data_end+0xfffd1d6c>
- 44380: 8c403fcc andi r17,r17,255
- 44384: 017fffc4 movi r5,-1
- 44388: 8c40201c xori r17,r17,128
- 4438c: d9402a15 stw r5,168(sp)
- 44390: 8c7fe004 addi r17,r17,-128
- 44394: 0037d706 br 422f4 <__alt_data_end+0xfffd02f4>
- 44398: d8c02a17 ldw r3,168(sp)
- 4439c: 18c00084 addi r3,r3,2
- 443a0: d8c02b15 stw r3,172(sp)
- 443a4: 1805883a mov r2,r3
- 443a8: 183d970e bge r3,zero,43a08 <__alt_data_end+0xfffd1a08>
- 443ac: 003fd706 br 4430c <__alt_data_end+0xfffd230c>
- 443b0: 0005883a mov r2,zero
- 443b4: 003f8f06 br 441f4 <__alt_data_end+0xfffd21f4>
- 443b8: 9080004c andi r2,r18,1
- 443bc: 103f821e bne r2,zero,441c8 <__alt_data_end+0xfffd21c8>
- 443c0: d8802117 ldw r2,132(sp)
- 443c4: 1405c83a sub r2,r2,r16
- 443c8: d8803315 stw r2,204(sp)
- 443cc: b47ef426 beq r22,r17,43fa0 <__alt_data_end+0xfffd1fa0>
- 443d0: dd802617 ldw r22,152(sp)
- 443d4: 003f1206 br 44020 <__alt_data_end+0xfffd2020>
- 443d8: d8c02b03 ldbu r3,172(sp)
- 443dc: d8c02785 stb r3,158(sp)
- 443e0: 0038df06 br 42760 <__alt_data_end+0xfffd0760>
- 443e4: d8c02b03 ldbu r3,172(sp)
- 443e8: d8c02785 stb r3,158(sp)
- 443ec: 0038aa06 br 42698 <__alt_data_end+0xfffd0698>
- 443f0: d8c02b03 ldbu r3,172(sp)
- 443f4: d8c02785 stb r3,158(sp)
- 443f8: 003a4306 br 42d08 <__alt_data_end+0xfffd0d08>
- 443fc: d8c02b03 ldbu r3,172(sp)
- 44400: d8c02785 stb r3,158(sp)
- 44404: 003af506 br 42fdc <__alt_data_end+0xfffd0fdc>
- 44408: 0005883a mov r2,zero
- 4440c: 003d7b06 br 439fc <__alt_data_end+0xfffd19fc>
- 44410: d8802344 addi r2,sp,141
- 44414: 003f1006 br 44058 <__alt_data_end+0xfffd2058>
- 44418: d8c02b03 ldbu r3,172(sp)
- 4441c: d8c02785 stb r3,158(sp)
- 44420: 0038fd06 br 42818 <__alt_data_end+0xfffd0818>
- 44424: d8c02b03 ldbu r3,172(sp)
- 44428: d8c02785 stb r3,158(sp)
- 4442c: 003a9706 br 42e8c <__alt_data_end+0xfffd0e8c>
- 44430: d8c02b03 ldbu r3,172(sp)
- 44434: d8c02785 stb r3,158(sp)
- 44438: 003a1806 br 42c9c <__alt_data_end+0xfffd0c9c>
- 4443c: d8c02b03 ldbu r3,172(sp)
- 44440: d8c02785 stb r3,158(sp)
- 44444: 003abe06 br 42f40 <__alt_data_end+0xfffd0f40>
- 00044448 <__vfprintf_internal>:
- 44448: 00800174 movhi r2,5
- 4444c: 10908b04 addi r2,r2,16940
- 44450: 300f883a mov r7,r6
- 44454: 280d883a mov r6,r5
- 44458: 200b883a mov r5,r4
- 4445c: 11000017 ldw r4,0(r2)
- 44460: 004216c1 jmpi 4216c <___vfprintf_internal_r>
- 00044464 <__sbprintf>:
- 44464: 2880030b ldhu r2,12(r5)
- 44468: 2ac01917 ldw r11,100(r5)
- 4446c: 2a80038b ldhu r10,14(r5)
- 44470: 2a400717 ldw r9,28(r5)
- 44474: 2a000917 ldw r8,36(r5)
- 44478: defee204 addi sp,sp,-1144
- 4447c: 00c10004 movi r3,1024
- 44480: dc011a15 stw r16,1128(sp)
- 44484: 10bfff4c andi r2,r2,65533
- 44488: 2821883a mov r16,r5
- 4448c: d8cb883a add r5,sp,r3
- 44490: dc811c15 stw r18,1136(sp)
- 44494: dc411b15 stw r17,1132(sp)
- 44498: dfc11d15 stw ra,1140(sp)
- 4449c: 2025883a mov r18,r4
- 444a0: d881030d sth r2,1036(sp)
- 444a4: dac11915 stw r11,1124(sp)
- 444a8: da81038d sth r10,1038(sp)
- 444ac: da410715 stw r9,1052(sp)
- 444b0: da010915 stw r8,1060(sp)
- 444b4: dec10015 stw sp,1024(sp)
- 444b8: dec10415 stw sp,1040(sp)
- 444bc: d8c10215 stw r3,1032(sp)
- 444c0: d8c10515 stw r3,1044(sp)
- 444c4: d8010615 stw zero,1048(sp)
- 444c8: 004216c0 call 4216c <___vfprintf_internal_r>
- 444cc: 1023883a mov r17,r2
- 444d0: 10000416 blt r2,zero,444e4 <__sbprintf+0x80>
- 444d4: d9410004 addi r5,sp,1024
- 444d8: 9009883a mov r4,r18
- 444dc: 00461400 call 46140 <_fflush_r>
- 444e0: 10000d1e bne r2,zero,44518 <__sbprintf+0xb4>
- 444e4: d881030b ldhu r2,1036(sp)
- 444e8: 1080100c andi r2,r2,64
- 444ec: 10000326 beq r2,zero,444fc <__sbprintf+0x98>
- 444f0: 8080030b ldhu r2,12(r16)
- 444f4: 10801014 ori r2,r2,64
- 444f8: 8080030d sth r2,12(r16)
- 444fc: 8805883a mov r2,r17
- 44500: dfc11d17 ldw ra,1140(sp)
- 44504: dc811c17 ldw r18,1136(sp)
- 44508: dc411b17 ldw r17,1132(sp)
- 4450c: dc011a17 ldw r16,1128(sp)
- 44510: dec11e04 addi sp,sp,1144
- 44514: f800283a ret
- 44518: 047fffc4 movi r17,-1
- 4451c: 003ff106 br 444e4 <__alt_data_end+0xfffd24e4>
- 00044520 <__swsetup_r>:
- 44520: 00800174 movhi r2,5
- 44524: defffd04 addi sp,sp,-12
- 44528: 10908b04 addi r2,r2,16940
- 4452c: dc400115 stw r17,4(sp)
- 44530: 2023883a mov r17,r4
- 44534: 11000017 ldw r4,0(r2)
- 44538: dc000015 stw r16,0(sp)
- 4453c: dfc00215 stw ra,8(sp)
- 44540: 2821883a mov r16,r5
- 44544: 20000226 beq r4,zero,44550 <__swsetup_r+0x30>
- 44548: 20800e17 ldw r2,56(r4)
- 4454c: 10003126 beq r2,zero,44614 <__swsetup_r+0xf4>
- 44550: 8080030b ldhu r2,12(r16)
- 44554: 10c0020c andi r3,r2,8
- 44558: 1009883a mov r4,r2
- 4455c: 18000f26 beq r3,zero,4459c <__swsetup_r+0x7c>
- 44560: 80c00417 ldw r3,16(r16)
- 44564: 18001526 beq r3,zero,445bc <__swsetup_r+0x9c>
- 44568: 1100004c andi r4,r2,1
- 4456c: 20001c1e bne r4,zero,445e0 <__swsetup_r+0xc0>
- 44570: 1080008c andi r2,r2,2
- 44574: 1000291e bne r2,zero,4461c <__swsetup_r+0xfc>
- 44578: 80800517 ldw r2,20(r16)
- 4457c: 80800215 stw r2,8(r16)
- 44580: 18001c26 beq r3,zero,445f4 <__swsetup_r+0xd4>
- 44584: 0005883a mov r2,zero
- 44588: dfc00217 ldw ra,8(sp)
- 4458c: dc400117 ldw r17,4(sp)
- 44590: dc000017 ldw r16,0(sp)
- 44594: dec00304 addi sp,sp,12
- 44598: f800283a ret
- 4459c: 2080040c andi r2,r4,16
- 445a0: 10002e26 beq r2,zero,4465c <__swsetup_r+0x13c>
- 445a4: 2080010c andi r2,r4,4
- 445a8: 10001e1e bne r2,zero,44624 <__swsetup_r+0x104>
- 445ac: 80c00417 ldw r3,16(r16)
- 445b0: 20800214 ori r2,r4,8
- 445b4: 8080030d sth r2,12(r16)
- 445b8: 183feb1e bne r3,zero,44568 <__alt_data_end+0xfffd2568>
- 445bc: 1100a00c andi r4,r2,640
- 445c0: 01408004 movi r5,512
- 445c4: 217fe826 beq r4,r5,44568 <__alt_data_end+0xfffd2568>
- 445c8: 800b883a mov r5,r16
- 445cc: 8809883a mov r4,r17
- 445d0: 0046c140 call 46c14 <__smakebuf_r>
- 445d4: 8080030b ldhu r2,12(r16)
- 445d8: 80c00417 ldw r3,16(r16)
- 445dc: 003fe206 br 44568 <__alt_data_end+0xfffd2568>
- 445e0: 80800517 ldw r2,20(r16)
- 445e4: 80000215 stw zero,8(r16)
- 445e8: 0085c83a sub r2,zero,r2
- 445ec: 80800615 stw r2,24(r16)
- 445f0: 183fe41e bne r3,zero,44584 <__alt_data_end+0xfffd2584>
- 445f4: 80c0030b ldhu r3,12(r16)
- 445f8: 0005883a mov r2,zero
- 445fc: 1900200c andi r4,r3,128
- 44600: 203fe126 beq r4,zero,44588 <__alt_data_end+0xfffd2588>
- 44604: 18c01014 ori r3,r3,64
- 44608: 80c0030d sth r3,12(r16)
- 4460c: 00bfffc4 movi r2,-1
- 44610: 003fdd06 br 44588 <__alt_data_end+0xfffd2588>
- 44614: 004652c0 call 4652c <__sinit>
- 44618: 003fcd06 br 44550 <__alt_data_end+0xfffd2550>
- 4461c: 0005883a mov r2,zero
- 44620: 003fd606 br 4457c <__alt_data_end+0xfffd257c>
- 44624: 81400c17 ldw r5,48(r16)
- 44628: 28000626 beq r5,zero,44644 <__swsetup_r+0x124>
- 4462c: 80801004 addi r2,r16,64
- 44630: 28800326 beq r5,r2,44640 <__swsetup_r+0x120>
- 44634: 8809883a mov r4,r17
- 44638: 00466a00 call 466a0 <_free_r>
- 4463c: 8100030b ldhu r4,12(r16)
- 44640: 80000c15 stw zero,48(r16)
- 44644: 80c00417 ldw r3,16(r16)
- 44648: 00bff6c4 movi r2,-37
- 4464c: 1108703a and r4,r2,r4
- 44650: 80000115 stw zero,4(r16)
- 44654: 80c00015 stw r3,0(r16)
- 44658: 003fd506 br 445b0 <__alt_data_end+0xfffd25b0>
- 4465c: 00800244 movi r2,9
- 44660: 88800015 stw r2,0(r17)
- 44664: 20801014 ori r2,r4,64
- 44668: 8080030d sth r2,12(r16)
- 4466c: 00bfffc4 movi r2,-1
- 44670: 003fc506 br 44588 <__alt_data_end+0xfffd2588>
- 00044674 <quorem>:
- 44674: defff204 addi sp,sp,-56
- 44678: ddc00b15 stw r23,44(sp)
- 4467c: 20800417 ldw r2,16(r4)
- 44680: 2dc00417 ldw r23,16(r5)
- 44684: dfc00d15 stw ra,52(sp)
- 44688: df000c15 stw fp,48(sp)
- 4468c: dd800a15 stw r22,40(sp)
- 44690: dd400915 stw r21,36(sp)
- 44694: dd000815 stw r20,32(sp)
- 44698: dcc00715 stw r19,28(sp)
- 4469c: dc800615 stw r18,24(sp)
- 446a0: dc400515 stw r17,20(sp)
- 446a4: dc000415 stw r16,16(sp)
- 446a8: 15c07a16 blt r2,r23,44894 <quorem+0x220>
- 446ac: bdffffc4 addi r23,r23,-1
- 446b0: bde9883a add r20,r23,r23
- 446b4: 28c00504 addi r3,r5,20
- 446b8: a529883a add r20,r20,r20
- 446bc: 1d39883a add fp,r3,r20
- 446c0: 24c00504 addi r19,r4,20
- 446c4: d9400215 stw r5,8(sp)
- 446c8: 9d29883a add r20,r19,r20
- 446cc: e1400017 ldw r5,0(fp)
- 446d0: d9000015 stw r4,0(sp)
- 446d4: a1000017 ldw r4,0(r20)
- 446d8: 29400044 addi r5,r5,1
- 446dc: d8c00115 stw r3,4(sp)
- 446e0: dd000315 stw r20,12(sp)
- 446e4: 004c93c0 call 4c93c <__udivsi3>
- 446e8: 1025883a mov r18,r2
- 446ec: 10003026 beq r2,zero,447b0 <quorem+0x13c>
- 446f0: dc400117 ldw r17,4(sp)
- 446f4: 9829883a mov r20,r19
- 446f8: 002d883a mov r22,zero
- 446fc: 0021883a mov r16,zero
- 44700: 8d400017 ldw r21,0(r17)
- 44704: 900b883a mov r5,r18
- 44708: 8c400104 addi r17,r17,4
- 4470c: a93fffcc andi r4,r21,65535
- 44710: 004c9f80 call 4c9f8 <__mulsi3>
- 44714: a808d43a srli r4,r21,16
- 44718: 900b883a mov r5,r18
- 4471c: 15ad883a add r22,r2,r22
- 44720: 004c9f80 call 4c9f8 <__mulsi3>
- 44724: a1000017 ldw r4,0(r20)
- 44728: b00cd43a srli r6,r22,16
- 4472c: b0ffffcc andi r3,r22,65535
- 44730: 217fffcc andi r5,r4,65535
- 44734: 2c21883a add r16,r5,r16
- 44738: 80c7c83a sub r3,r16,r3
- 4473c: 2008d43a srli r4,r4,16
- 44740: 1185883a add r2,r2,r6
- 44744: 1821d43a srai r16,r3,16
- 44748: 117fffcc andi r5,r2,65535
- 4474c: 2149c83a sub r4,r4,r5
- 44750: 2421883a add r16,r4,r16
- 44754: 8008943a slli r4,r16,16
- 44758: 18ffffcc andi r3,r3,65535
- 4475c: 102cd43a srli r22,r2,16
- 44760: 20c8b03a or r4,r4,r3
- 44764: a1000015 stw r4,0(r20)
- 44768: 8021d43a srai r16,r16,16
- 4476c: a5000104 addi r20,r20,4
- 44770: e47fe32e bgeu fp,r17,44700 <__alt_data_end+0xfffd2700>
- 44774: d8c00317 ldw r3,12(sp)
- 44778: 18800017 ldw r2,0(r3)
- 4477c: 10000c1e bne r2,zero,447b0 <quorem+0x13c>
- 44780: 18bfff04 addi r2,r3,-4
- 44784: 9880082e bgeu r19,r2,447a8 <quorem+0x134>
- 44788: 18ffff17 ldw r3,-4(r3)
- 4478c: 18000326 beq r3,zero,4479c <quorem+0x128>
- 44790: 00000506 br 447a8 <quorem+0x134>
- 44794: 10c00017 ldw r3,0(r2)
- 44798: 1800031e bne r3,zero,447a8 <quorem+0x134>
- 4479c: 10bfff04 addi r2,r2,-4
- 447a0: bdffffc4 addi r23,r23,-1
- 447a4: 98bffb36 bltu r19,r2,44794 <__alt_data_end+0xfffd2794>
- 447a8: d8c00017 ldw r3,0(sp)
- 447ac: 1dc00415 stw r23,16(r3)
- 447b0: d9400217 ldw r5,8(sp)
- 447b4: d9000017 ldw r4,0(sp)
- 447b8: 00482b40 call 482b4 <__mcmp>
- 447bc: 10002816 blt r2,zero,44860 <quorem+0x1ec>
- 447c0: dc400117 ldw r17,4(sp)
- 447c4: 94800044 addi r18,r18,1
- 447c8: 980d883a mov r6,r19
- 447cc: 0007883a mov r3,zero
- 447d0: 31000017 ldw r4,0(r6)
- 447d4: 89400017 ldw r5,0(r17)
- 447d8: 31800104 addi r6,r6,4
- 447dc: 20bfffcc andi r2,r4,65535
- 447e0: 10c7883a add r3,r2,r3
- 447e4: 28bfffcc andi r2,r5,65535
- 447e8: 1885c83a sub r2,r3,r2
- 447ec: 280ad43a srli r5,r5,16
- 447f0: 2008d43a srli r4,r4,16
- 447f4: 1007d43a srai r3,r2,16
- 447f8: 10bfffcc andi r2,r2,65535
- 447fc: 2149c83a sub r4,r4,r5
- 44800: 20c9883a add r4,r4,r3
- 44804: 200a943a slli r5,r4,16
- 44808: 8c400104 addi r17,r17,4
- 4480c: 2007d43a srai r3,r4,16
- 44810: 2884b03a or r2,r5,r2
- 44814: 30bfff15 stw r2,-4(r6)
- 44818: e47fed2e bgeu fp,r17,447d0 <__alt_data_end+0xfffd27d0>
- 4481c: bdc5883a add r2,r23,r23
- 44820: 1085883a add r2,r2,r2
- 44824: 9887883a add r3,r19,r2
- 44828: 18800017 ldw r2,0(r3)
- 4482c: 10000c1e bne r2,zero,44860 <quorem+0x1ec>
- 44830: 18bfff04 addi r2,r3,-4
- 44834: 9880082e bgeu r19,r2,44858 <quorem+0x1e4>
- 44838: 18ffff17 ldw r3,-4(r3)
- 4483c: 18000326 beq r3,zero,4484c <quorem+0x1d8>
- 44840: 00000506 br 44858 <quorem+0x1e4>
- 44844: 10c00017 ldw r3,0(r2)
- 44848: 1800031e bne r3,zero,44858 <quorem+0x1e4>
- 4484c: 10bfff04 addi r2,r2,-4
- 44850: bdffffc4 addi r23,r23,-1
- 44854: 98bffb36 bltu r19,r2,44844 <__alt_data_end+0xfffd2844>
- 44858: d8c00017 ldw r3,0(sp)
- 4485c: 1dc00415 stw r23,16(r3)
- 44860: 9005883a mov r2,r18
- 44864: dfc00d17 ldw ra,52(sp)
- 44868: df000c17 ldw fp,48(sp)
- 4486c: ddc00b17 ldw r23,44(sp)
- 44870: dd800a17 ldw r22,40(sp)
- 44874: dd400917 ldw r21,36(sp)
- 44878: dd000817 ldw r20,32(sp)
- 4487c: dcc00717 ldw r19,28(sp)
- 44880: dc800617 ldw r18,24(sp)
- 44884: dc400517 ldw r17,20(sp)
- 44888: dc000417 ldw r16,16(sp)
- 4488c: dec00e04 addi sp,sp,56
- 44890: f800283a ret
- 44894: 0005883a mov r2,zero
- 44898: 003ff206 br 44864 <__alt_data_end+0xfffd2864>
- 0004489c <_dtoa_r>:
- 4489c: 20801017 ldw r2,64(r4)
- 448a0: deffde04 addi sp,sp,-136
- 448a4: df002015 stw fp,128(sp)
- 448a8: dcc01b15 stw r19,108(sp)
- 448ac: dc801a15 stw r18,104(sp)
- 448b0: dc401915 stw r17,100(sp)
- 448b4: dc001815 stw r16,96(sp)
- 448b8: dfc02115 stw ra,132(sp)
- 448bc: ddc01f15 stw r23,124(sp)
- 448c0: dd801e15 stw r22,120(sp)
- 448c4: dd401d15 stw r21,116(sp)
- 448c8: dd001c15 stw r20,112(sp)
- 448cc: d9c00315 stw r7,12(sp)
- 448d0: 2039883a mov fp,r4
- 448d4: 3023883a mov r17,r6
- 448d8: 2825883a mov r18,r5
- 448dc: dc002417 ldw r16,144(sp)
- 448e0: 3027883a mov r19,r6
- 448e4: 10000826 beq r2,zero,44908 <_dtoa_r+0x6c>
- 448e8: 21801117 ldw r6,68(r4)
- 448ec: 00c00044 movi r3,1
- 448f0: 100b883a mov r5,r2
- 448f4: 1986983a sll r3,r3,r6
- 448f8: 11800115 stw r6,4(r2)
- 448fc: 10c00215 stw r3,8(r2)
- 44900: 00479d80 call 479d8 <_Bfree>
- 44904: e0001015 stw zero,64(fp)
- 44908: 88002e16 blt r17,zero,449c4 <_dtoa_r+0x128>
- 4490c: 80000015 stw zero,0(r16)
- 44910: 889ffc2c andhi r2,r17,32752
- 44914: 00dffc34 movhi r3,32752
- 44918: 10c01c26 beq r2,r3,4498c <_dtoa_r+0xf0>
- 4491c: 000d883a mov r6,zero
- 44920: 000f883a mov r7,zero
- 44924: 9009883a mov r4,r18
- 44928: 980b883a mov r5,r19
- 4492c: 004d3f00 call 4d3f0 <__eqdf2>
- 44930: 10002b1e bne r2,zero,449e0 <_dtoa_r+0x144>
- 44934: d9c02317 ldw r7,140(sp)
- 44938: 00800044 movi r2,1
- 4493c: 38800015 stw r2,0(r7)
- 44940: d8802517 ldw r2,148(sp)
- 44944: 10019e26 beq r2,zero,44fc0 <_dtoa_r+0x724>
- 44948: d8c02517 ldw r3,148(sp)
- 4494c: 00800174 movhi r2,5
- 44950: 10888744 addi r2,r2,8733
- 44954: 18800015 stw r2,0(r3)
- 44958: 10bfffc4 addi r2,r2,-1
- 4495c: dfc02117 ldw ra,132(sp)
- 44960: df002017 ldw fp,128(sp)
- 44964: ddc01f17 ldw r23,124(sp)
- 44968: dd801e17 ldw r22,120(sp)
- 4496c: dd401d17 ldw r21,116(sp)
- 44970: dd001c17 ldw r20,112(sp)
- 44974: dcc01b17 ldw r19,108(sp)
- 44978: dc801a17 ldw r18,104(sp)
- 4497c: dc401917 ldw r17,100(sp)
- 44980: dc001817 ldw r16,96(sp)
- 44984: dec02204 addi sp,sp,136
- 44988: f800283a ret
- 4498c: d8c02317 ldw r3,140(sp)
- 44990: 0089c3c4 movi r2,9999
- 44994: 18800015 stw r2,0(r3)
- 44998: 90017726 beq r18,zero,44f78 <_dtoa_r+0x6dc>
- 4499c: 00800174 movhi r2,5
- 449a0: 10889304 addi r2,r2,8780
- 449a4: d9002517 ldw r4,148(sp)
- 449a8: 203fec26 beq r4,zero,4495c <__alt_data_end+0xfffd295c>
- 449ac: 10c000c7 ldb r3,3(r2)
- 449b0: 1801781e bne r3,zero,44f94 <_dtoa_r+0x6f8>
- 449b4: 10c000c4 addi r3,r2,3
- 449b8: d9802517 ldw r6,148(sp)
- 449bc: 30c00015 stw r3,0(r6)
- 449c0: 003fe606 br 4495c <__alt_data_end+0xfffd295c>
- 449c4: 04e00034 movhi r19,32768
- 449c8: 9cffffc4 addi r19,r19,-1
- 449cc: 00800044 movi r2,1
- 449d0: 8ce6703a and r19,r17,r19
- 449d4: 80800015 stw r2,0(r16)
- 449d8: 9823883a mov r17,r19
- 449dc: 003fcc06 br 44910 <__alt_data_end+0xfffd2910>
- 449e0: d8800204 addi r2,sp,8
- 449e4: d8800015 stw r2,0(sp)
- 449e8: d9c00104 addi r7,sp,4
- 449ec: 900b883a mov r5,r18
- 449f0: 980d883a mov r6,r19
- 449f4: e009883a mov r4,fp
- 449f8: 8820d53a srli r16,r17,20
- 449fc: 00486800 call 48680 <__d2b>
- 44a00: d8800915 stw r2,36(sp)
- 44a04: 8001651e bne r16,zero,44f9c <_dtoa_r+0x700>
- 44a08: dd800217 ldw r22,8(sp)
- 44a0c: dc000117 ldw r16,4(sp)
- 44a10: 00800804 movi r2,32
- 44a14: b421883a add r16,r22,r16
- 44a18: 80c10c84 addi r3,r16,1074
- 44a1c: 10c2d10e bge r2,r3,45564 <_dtoa_r+0xcc8>
- 44a20: 00801004 movi r2,64
- 44a24: 81010484 addi r4,r16,1042
- 44a28: 10c7c83a sub r3,r2,r3
- 44a2c: 9108d83a srl r4,r18,r4
- 44a30: 88e2983a sll r17,r17,r3
- 44a34: 2448b03a or r4,r4,r17
- 44a38: 004e7b00 call 4e7b0 <__floatunsidf>
- 44a3c: 017f8434 movhi r5,65040
- 44a40: 01800044 movi r6,1
- 44a44: 1009883a mov r4,r2
- 44a48: 194b883a add r5,r3,r5
- 44a4c: 843fffc4 addi r16,r16,-1
- 44a50: d9801115 stw r6,68(sp)
- 44a54: 000d883a mov r6,zero
- 44a58: 01cffe34 movhi r7,16376
- 44a5c: 004deb40 call 4deb4 <__subdf3>
- 44a60: 0198dbf4 movhi r6,25455
- 44a64: 01cff4f4 movhi r7,16339
- 44a68: 3190d844 addi r6,r6,17249
- 44a6c: 39e1e9c4 addi r7,r7,-30809
- 44a70: 1009883a mov r4,r2
- 44a74: 180b883a mov r5,r3
- 44a78: 004d6480 call 4d648 <__muldf3>
- 44a7c: 01a2d874 movhi r6,35681
- 44a80: 01cff1f4 movhi r7,16327
- 44a84: 31b22cc4 addi r6,r6,-14157
- 44a88: 39e28a04 addi r7,r7,-30168
- 44a8c: 180b883a mov r5,r3
- 44a90: 1009883a mov r4,r2
- 44a94: 00413e40 call 413e4 <__adddf3>
- 44a98: 8009883a mov r4,r16
- 44a9c: 1029883a mov r20,r2
- 44aa0: 1823883a mov r17,r3
- 44aa4: 0041d100 call 41d10 <__floatsidf>
- 44aa8: 019427f4 movhi r6,20639
- 44aac: 01cff4f4 movhi r7,16339
- 44ab0: 319e7ec4 addi r6,r6,31227
- 44ab4: 39d104c4 addi r7,r7,17427
- 44ab8: 1009883a mov r4,r2
- 44abc: 180b883a mov r5,r3
- 44ac0: 004d6480 call 4d648 <__muldf3>
- 44ac4: 100d883a mov r6,r2
- 44ac8: 180f883a mov r7,r3
- 44acc: a009883a mov r4,r20
- 44ad0: 880b883a mov r5,r17
- 44ad4: 00413e40 call 413e4 <__adddf3>
- 44ad8: 1009883a mov r4,r2
- 44adc: 180b883a mov r5,r3
- 44ae0: 1029883a mov r20,r2
- 44ae4: 1823883a mov r17,r3
- 44ae8: 0041c900 call 41c90 <__fixdfsi>
- 44aec: 000d883a mov r6,zero
- 44af0: 000f883a mov r7,zero
- 44af4: a009883a mov r4,r20
- 44af8: 880b883a mov r5,r17
- 44afc: d8800515 stw r2,20(sp)
- 44b00: 004d5540 call 4d554 <__ledf2>
- 44b04: 10028716 blt r2,zero,45524 <_dtoa_r+0xc88>
- 44b08: d8c00517 ldw r3,20(sp)
- 44b0c: 00800584 movi r2,22
- 44b10: 10c27536 bltu r2,r3,454e8 <_dtoa_r+0xc4c>
- 44b14: 180490fa slli r2,r3,3
- 44b18: 00c00174 movhi r3,5
- 44b1c: 18c8ae04 addi r3,r3,8888
- 44b20: 1885883a add r2,r3,r2
- 44b24: 11000017 ldw r4,0(r2)
- 44b28: 11400117 ldw r5,4(r2)
- 44b2c: 900d883a mov r6,r18
- 44b30: 980f883a mov r7,r19
- 44b34: 004d4780 call 4d478 <__gedf2>
- 44b38: 00828d0e bge zero,r2,45570 <_dtoa_r+0xcd4>
- 44b3c: d9000517 ldw r4,20(sp)
- 44b40: d8000e15 stw zero,56(sp)
- 44b44: 213fffc4 addi r4,r4,-1
- 44b48: d9000515 stw r4,20(sp)
- 44b4c: b42dc83a sub r22,r22,r16
- 44b50: b5bfffc4 addi r22,r22,-1
- 44b54: b0026f16 blt r22,zero,45514 <_dtoa_r+0xc78>
- 44b58: d8000815 stw zero,32(sp)
- 44b5c: d9c00517 ldw r7,20(sp)
- 44b60: 38026416 blt r7,zero,454f4 <_dtoa_r+0xc58>
- 44b64: b1ed883a add r22,r22,r7
- 44b68: d9c00d15 stw r7,52(sp)
- 44b6c: d8000a15 stw zero,40(sp)
- 44b70: d9800317 ldw r6,12(sp)
- 44b74: 00800244 movi r2,9
- 44b78: 11811436 bltu r2,r6,44fcc <_dtoa_r+0x730>
- 44b7c: 00800144 movi r2,5
- 44b80: 1184e10e bge r2,r6,45f08 <_dtoa_r+0x166c>
- 44b84: 31bfff04 addi r6,r6,-4
- 44b88: d9800315 stw r6,12(sp)
- 44b8c: 0023883a mov r17,zero
- 44b90: d9800317 ldw r6,12(sp)
- 44b94: 008000c4 movi r2,3
- 44b98: 30836726 beq r6,r2,45938 <_dtoa_r+0x109c>
- 44b9c: 1183410e bge r2,r6,458a4 <_dtoa_r+0x1008>
- 44ba0: d9c00317 ldw r7,12(sp)
- 44ba4: 00800104 movi r2,4
- 44ba8: 38827c26 beq r7,r2,4559c <_dtoa_r+0xd00>
- 44bac: 00800144 movi r2,5
- 44bb0: 3884c41e bne r7,r2,45ec4 <_dtoa_r+0x1628>
- 44bb4: 00800044 movi r2,1
- 44bb8: d8800b15 stw r2,44(sp)
- 44bbc: d8c00517 ldw r3,20(sp)
- 44bc0: d9002217 ldw r4,136(sp)
- 44bc4: 1907883a add r3,r3,r4
- 44bc8: 19800044 addi r6,r3,1
- 44bcc: d8c00c15 stw r3,48(sp)
- 44bd0: d9800615 stw r6,24(sp)
- 44bd4: 0183a40e bge zero,r6,45a68 <_dtoa_r+0x11cc>
- 44bd8: d9800617 ldw r6,24(sp)
- 44bdc: 3021883a mov r16,r6
- 44be0: e0001115 stw zero,68(fp)
- 44be4: 008005c4 movi r2,23
- 44be8: 1184c92e bgeu r2,r6,45f10 <_dtoa_r+0x1674>
- 44bec: 00c00044 movi r3,1
- 44bf0: 00800104 movi r2,4
- 44bf4: 1085883a add r2,r2,r2
- 44bf8: 11000504 addi r4,r2,20
- 44bfc: 180b883a mov r5,r3
- 44c00: 18c00044 addi r3,r3,1
- 44c04: 313ffb2e bgeu r6,r4,44bf4 <__alt_data_end+0xfffd2bf4>
- 44c08: e1401115 stw r5,68(fp)
- 44c0c: e009883a mov r4,fp
- 44c10: 00479300 call 47930 <_Balloc>
- 44c14: d8800715 stw r2,28(sp)
- 44c18: e0801015 stw r2,64(fp)
- 44c1c: 00800384 movi r2,14
- 44c20: 1400f736 bltu r2,r16,45000 <_dtoa_r+0x764>
- 44c24: 8800f626 beq r17,zero,45000 <_dtoa_r+0x764>
- 44c28: d9c00517 ldw r7,20(sp)
- 44c2c: 01c39a0e bge zero,r7,45a98 <_dtoa_r+0x11fc>
- 44c30: 388003cc andi r2,r7,15
- 44c34: 100490fa slli r2,r2,3
- 44c38: 382bd13a srai r21,r7,4
- 44c3c: 00c00174 movhi r3,5
- 44c40: 18c8ae04 addi r3,r3,8888
- 44c44: 1885883a add r2,r3,r2
- 44c48: a8c0040c andi r3,r21,16
- 44c4c: 12400017 ldw r9,0(r2)
- 44c50: 12000117 ldw r8,4(r2)
- 44c54: 18037926 beq r3,zero,45a3c <_dtoa_r+0x11a0>
- 44c58: 00800174 movhi r2,5
- 44c5c: 1088a404 addi r2,r2,8848
- 44c60: 11800817 ldw r6,32(r2)
- 44c64: 11c00917 ldw r7,36(r2)
- 44c68: 9009883a mov r4,r18
- 44c6c: 980b883a mov r5,r19
- 44c70: da001715 stw r8,92(sp)
- 44c74: da401615 stw r9,88(sp)
- 44c78: 004ca200 call 4ca20 <__divdf3>
- 44c7c: da001717 ldw r8,92(sp)
- 44c80: da401617 ldw r9,88(sp)
- 44c84: ad4003cc andi r21,r21,15
- 44c88: 040000c4 movi r16,3
- 44c8c: 1023883a mov r17,r2
- 44c90: 1829883a mov r20,r3
- 44c94: a8001126 beq r21,zero,44cdc <_dtoa_r+0x440>
- 44c98: 05c00174 movhi r23,5
- 44c9c: bdc8a404 addi r23,r23,8848
- 44ca0: 4805883a mov r2,r9
- 44ca4: 4007883a mov r3,r8
- 44ca8: a980004c andi r6,r21,1
- 44cac: 1009883a mov r4,r2
- 44cb0: a82bd07a srai r21,r21,1
- 44cb4: 180b883a mov r5,r3
- 44cb8: 30000426 beq r6,zero,44ccc <_dtoa_r+0x430>
- 44cbc: b9800017 ldw r6,0(r23)
- 44cc0: b9c00117 ldw r7,4(r23)
- 44cc4: 84000044 addi r16,r16,1
- 44cc8: 004d6480 call 4d648 <__muldf3>
- 44ccc: bdc00204 addi r23,r23,8
- 44cd0: a83ff51e bne r21,zero,44ca8 <__alt_data_end+0xfffd2ca8>
- 44cd4: 1013883a mov r9,r2
- 44cd8: 1811883a mov r8,r3
- 44cdc: 480d883a mov r6,r9
- 44ce0: 400f883a mov r7,r8
- 44ce4: 8809883a mov r4,r17
- 44ce8: a00b883a mov r5,r20
- 44cec: 004ca200 call 4ca20 <__divdf3>
- 44cf0: d8800f15 stw r2,60(sp)
- 44cf4: d8c01015 stw r3,64(sp)
- 44cf8: d8c00e17 ldw r3,56(sp)
- 44cfc: 18000626 beq r3,zero,44d18 <_dtoa_r+0x47c>
- 44d00: d9000f17 ldw r4,60(sp)
- 44d04: d9401017 ldw r5,64(sp)
- 44d08: 000d883a mov r6,zero
- 44d0c: 01cffc34 movhi r7,16368
- 44d10: 004d5540 call 4d554 <__ledf2>
- 44d14: 10040b16 blt r2,zero,45d44 <_dtoa_r+0x14a8>
- 44d18: 8009883a mov r4,r16
- 44d1c: 0041d100 call 41d10 <__floatsidf>
- 44d20: d9800f17 ldw r6,60(sp)
- 44d24: d9c01017 ldw r7,64(sp)
- 44d28: 1009883a mov r4,r2
- 44d2c: 180b883a mov r5,r3
- 44d30: 004d6480 call 4d648 <__muldf3>
- 44d34: 000d883a mov r6,zero
- 44d38: 01d00734 movhi r7,16412
- 44d3c: 1009883a mov r4,r2
- 44d40: 180b883a mov r5,r3
- 44d44: 00413e40 call 413e4 <__adddf3>
- 44d48: 1021883a mov r16,r2
- 44d4c: d8800617 ldw r2,24(sp)
- 44d50: 047f3034 movhi r17,64704
- 44d54: 1c63883a add r17,r3,r17
- 44d58: 10031826 beq r2,zero,459bc <_dtoa_r+0x1120>
- 44d5c: d8c00517 ldw r3,20(sp)
- 44d60: db000617 ldw r12,24(sp)
- 44d64: d8c01315 stw r3,76(sp)
- 44d68: d9000b17 ldw r4,44(sp)
- 44d6c: 20038f26 beq r4,zero,45bac <_dtoa_r+0x1310>
- 44d70: 60bfffc4 addi r2,r12,-1
- 44d74: 100490fa slli r2,r2,3
- 44d78: 00c00174 movhi r3,5
- 44d7c: 18c8ae04 addi r3,r3,8888
- 44d80: 1885883a add r2,r3,r2
- 44d84: 11800017 ldw r6,0(r2)
- 44d88: 11c00117 ldw r7,4(r2)
- 44d8c: d8800717 ldw r2,28(sp)
- 44d90: 0009883a mov r4,zero
- 44d94: 014ff834 movhi r5,16352
- 44d98: db001615 stw r12,88(sp)
- 44d9c: 15c00044 addi r23,r2,1
- 44da0: 004ca200 call 4ca20 <__divdf3>
- 44da4: 800d883a mov r6,r16
- 44da8: 880f883a mov r7,r17
- 44dac: 1009883a mov r4,r2
- 44db0: 180b883a mov r5,r3
- 44db4: 004deb40 call 4deb4 <__subdf3>
- 44db8: d9401017 ldw r5,64(sp)
- 44dbc: d9000f17 ldw r4,60(sp)
- 44dc0: 102b883a mov r21,r2
- 44dc4: d8c01215 stw r3,72(sp)
- 44dc8: 0041c900 call 41c90 <__fixdfsi>
- 44dcc: 1009883a mov r4,r2
- 44dd0: 1029883a mov r20,r2
- 44dd4: 0041d100 call 41d10 <__floatsidf>
- 44dd8: d9000f17 ldw r4,60(sp)
- 44ddc: d9401017 ldw r5,64(sp)
- 44de0: 100d883a mov r6,r2
- 44de4: 180f883a mov r7,r3
- 44de8: 004deb40 call 4deb4 <__subdf3>
- 44dec: 1823883a mov r17,r3
- 44df0: d8c00717 ldw r3,28(sp)
- 44df4: d9401217 ldw r5,72(sp)
- 44df8: a2000c04 addi r8,r20,48
- 44dfc: 1021883a mov r16,r2
- 44e00: 1a000005 stb r8,0(r3)
- 44e04: 800d883a mov r6,r16
- 44e08: 880f883a mov r7,r17
- 44e0c: a809883a mov r4,r21
- 44e10: 4029883a mov r20,r8
- 44e14: 004d4780 call 4d478 <__gedf2>
- 44e18: 00841d16 blt zero,r2,45e90 <_dtoa_r+0x15f4>
- 44e1c: 800d883a mov r6,r16
- 44e20: 880f883a mov r7,r17
- 44e24: 0009883a mov r4,zero
- 44e28: 014ffc34 movhi r5,16368
- 44e2c: 004deb40 call 4deb4 <__subdf3>
- 44e30: d9401217 ldw r5,72(sp)
- 44e34: 100d883a mov r6,r2
- 44e38: 180f883a mov r7,r3
- 44e3c: a809883a mov r4,r21
- 44e40: 004d4780 call 4d478 <__gedf2>
- 44e44: db001617 ldw r12,88(sp)
- 44e48: 00840e16 blt zero,r2,45e84 <_dtoa_r+0x15e8>
- 44e4c: 00800044 movi r2,1
- 44e50: 13006b0e bge r2,r12,45000 <_dtoa_r+0x764>
- 44e54: d9000717 ldw r4,28(sp)
- 44e58: dd800f15 stw r22,60(sp)
- 44e5c: dcc01015 stw r19,64(sp)
- 44e60: 2319883a add r12,r4,r12
- 44e64: dcc01217 ldw r19,72(sp)
- 44e68: 602d883a mov r22,r12
- 44e6c: dc801215 stw r18,72(sp)
- 44e70: b825883a mov r18,r23
- 44e74: 00000906 br 44e9c <_dtoa_r+0x600>
- 44e78: 004deb40 call 4deb4 <__subdf3>
- 44e7c: a80d883a mov r6,r21
- 44e80: 980f883a mov r7,r19
- 44e84: 1009883a mov r4,r2
- 44e88: 180b883a mov r5,r3
- 44e8c: 004d5540 call 4d554 <__ledf2>
- 44e90: 1003e816 blt r2,zero,45e34 <_dtoa_r+0x1598>
- 44e94: b825883a mov r18,r23
- 44e98: bd83e926 beq r23,r22,45e40 <_dtoa_r+0x15a4>
- 44e9c: a809883a mov r4,r21
- 44ea0: 980b883a mov r5,r19
- 44ea4: 000d883a mov r6,zero
- 44ea8: 01d00934 movhi r7,16420
- 44eac: 004d6480 call 4d648 <__muldf3>
- 44eb0: 000d883a mov r6,zero
- 44eb4: 01d00934 movhi r7,16420
- 44eb8: 8009883a mov r4,r16
- 44ebc: 880b883a mov r5,r17
- 44ec0: 102b883a mov r21,r2
- 44ec4: 1827883a mov r19,r3
- 44ec8: 004d6480 call 4d648 <__muldf3>
- 44ecc: 180b883a mov r5,r3
- 44ed0: 1009883a mov r4,r2
- 44ed4: 1821883a mov r16,r3
- 44ed8: 1023883a mov r17,r2
- 44edc: 0041c900 call 41c90 <__fixdfsi>
- 44ee0: 1009883a mov r4,r2
- 44ee4: 1029883a mov r20,r2
- 44ee8: 0041d100 call 41d10 <__floatsidf>
- 44eec: 8809883a mov r4,r17
- 44ef0: 800b883a mov r5,r16
- 44ef4: 100d883a mov r6,r2
- 44ef8: 180f883a mov r7,r3
- 44efc: 004deb40 call 4deb4 <__subdf3>
- 44f00: a5000c04 addi r20,r20,48
- 44f04: a80d883a mov r6,r21
- 44f08: 980f883a mov r7,r19
- 44f0c: 1009883a mov r4,r2
- 44f10: 180b883a mov r5,r3
- 44f14: 95000005 stb r20,0(r18)
- 44f18: 1021883a mov r16,r2
- 44f1c: 1823883a mov r17,r3
- 44f20: 004d5540 call 4d554 <__ledf2>
- 44f24: bdc00044 addi r23,r23,1
- 44f28: 800d883a mov r6,r16
- 44f2c: 880f883a mov r7,r17
- 44f30: 0009883a mov r4,zero
- 44f34: 014ffc34 movhi r5,16368
- 44f38: 103fcf0e bge r2,zero,44e78 <__alt_data_end+0xfffd2e78>
- 44f3c: d8c01317 ldw r3,76(sp)
- 44f40: d8c00515 stw r3,20(sp)
- 44f44: d9400917 ldw r5,36(sp)
- 44f48: e009883a mov r4,fp
- 44f4c: 00479d80 call 479d8 <_Bfree>
- 44f50: d9000517 ldw r4,20(sp)
- 44f54: d9802317 ldw r6,140(sp)
- 44f58: d9c02517 ldw r7,148(sp)
- 44f5c: b8000005 stb zero,0(r23)
- 44f60: 20800044 addi r2,r4,1
- 44f64: 30800015 stw r2,0(r6)
- 44f68: 3802aa26 beq r7,zero,45a14 <_dtoa_r+0x1178>
- 44f6c: 3dc00015 stw r23,0(r7)
- 44f70: d8800717 ldw r2,28(sp)
- 44f74: 003e7906 br 4495c <__alt_data_end+0xfffd295c>
- 44f78: 00800434 movhi r2,16
- 44f7c: 10bfffc4 addi r2,r2,-1
- 44f80: 88a2703a and r17,r17,r2
- 44f84: 883e851e bne r17,zero,4499c <__alt_data_end+0xfffd299c>
- 44f88: 00800174 movhi r2,5
- 44f8c: 10889004 addi r2,r2,8768
- 44f90: 003e8406 br 449a4 <__alt_data_end+0xfffd29a4>
- 44f94: 10c00204 addi r3,r2,8
- 44f98: 003e8706 br 449b8 <__alt_data_end+0xfffd29b8>
- 44f9c: 01400434 movhi r5,16
- 44fa0: 297fffc4 addi r5,r5,-1
- 44fa4: 994a703a and r5,r19,r5
- 44fa8: 9009883a mov r4,r18
- 44fac: 843f0044 addi r16,r16,-1023
- 44fb0: 294ffc34 orhi r5,r5,16368
- 44fb4: dd800217 ldw r22,8(sp)
- 44fb8: d8001115 stw zero,68(sp)
- 44fbc: 003ea506 br 44a54 <__alt_data_end+0xfffd2a54>
- 44fc0: 00800174 movhi r2,5
- 44fc4: 10888704 addi r2,r2,8732
- 44fc8: 003e6406 br 4495c <__alt_data_end+0xfffd295c>
- 44fcc: e0001115 stw zero,68(fp)
- 44fd0: 000b883a mov r5,zero
- 44fd4: e009883a mov r4,fp
- 44fd8: 00479300 call 47930 <_Balloc>
- 44fdc: 01bfffc4 movi r6,-1
- 44fe0: 01c00044 movi r7,1
- 44fe4: d8800715 stw r2,28(sp)
- 44fe8: d9800c15 stw r6,48(sp)
- 44fec: e0801015 stw r2,64(fp)
- 44ff0: d8000315 stw zero,12(sp)
- 44ff4: d9c00b15 stw r7,44(sp)
- 44ff8: d9800615 stw r6,24(sp)
- 44ffc: d8002215 stw zero,136(sp)
- 45000: d8800117 ldw r2,4(sp)
- 45004: 10008916 blt r2,zero,4522c <_dtoa_r+0x990>
- 45008: d9000517 ldw r4,20(sp)
- 4500c: 00c00384 movi r3,14
- 45010: 19008616 blt r3,r4,4522c <_dtoa_r+0x990>
- 45014: 200490fa slli r2,r4,3
- 45018: 00c00174 movhi r3,5
- 4501c: d9802217 ldw r6,136(sp)
- 45020: 18c8ae04 addi r3,r3,8888
- 45024: 1885883a add r2,r3,r2
- 45028: 14000017 ldw r16,0(r2)
- 4502c: 14400117 ldw r17,4(r2)
- 45030: 30016316 blt r6,zero,455c0 <_dtoa_r+0xd24>
- 45034: 800d883a mov r6,r16
- 45038: 880f883a mov r7,r17
- 4503c: 9009883a mov r4,r18
- 45040: 980b883a mov r5,r19
- 45044: 004ca200 call 4ca20 <__divdf3>
- 45048: 180b883a mov r5,r3
- 4504c: 1009883a mov r4,r2
- 45050: 0041c900 call 41c90 <__fixdfsi>
- 45054: 1009883a mov r4,r2
- 45058: 102b883a mov r21,r2
- 4505c: 0041d100 call 41d10 <__floatsidf>
- 45060: 800d883a mov r6,r16
- 45064: 880f883a mov r7,r17
- 45068: 1009883a mov r4,r2
- 4506c: 180b883a mov r5,r3
- 45070: 004d6480 call 4d648 <__muldf3>
- 45074: 100d883a mov r6,r2
- 45078: 180f883a mov r7,r3
- 4507c: 9009883a mov r4,r18
- 45080: 980b883a mov r5,r19
- 45084: 004deb40 call 4deb4 <__subdf3>
- 45088: d9c00717 ldw r7,28(sp)
- 4508c: 1009883a mov r4,r2
- 45090: a8800c04 addi r2,r21,48
- 45094: 38800005 stb r2,0(r7)
- 45098: 3dc00044 addi r23,r7,1
- 4509c: d9c00617 ldw r7,24(sp)
- 450a0: 01800044 movi r6,1
- 450a4: 180b883a mov r5,r3
- 450a8: 2005883a mov r2,r4
- 450ac: 39803826 beq r7,r6,45190 <_dtoa_r+0x8f4>
- 450b0: 000d883a mov r6,zero
- 450b4: 01d00934 movhi r7,16420
- 450b8: 004d6480 call 4d648 <__muldf3>
- 450bc: 000d883a mov r6,zero
- 450c0: 000f883a mov r7,zero
- 450c4: 1009883a mov r4,r2
- 450c8: 180b883a mov r5,r3
- 450cc: 1025883a mov r18,r2
- 450d0: 1827883a mov r19,r3
- 450d4: 004d3f00 call 4d3f0 <__eqdf2>
- 450d8: 103f9a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44>
- 450dc: d9c00617 ldw r7,24(sp)
- 450e0: d8c00717 ldw r3,28(sp)
- 450e4: b829883a mov r20,r23
- 450e8: 38bfffc4 addi r2,r7,-1
- 450ec: 18ad883a add r22,r3,r2
- 450f0: 00000a06 br 4511c <_dtoa_r+0x880>
- 450f4: 004d6480 call 4d648 <__muldf3>
- 450f8: 000d883a mov r6,zero
- 450fc: 000f883a mov r7,zero
- 45100: 1009883a mov r4,r2
- 45104: 180b883a mov r5,r3
- 45108: 1025883a mov r18,r2
- 4510c: 1827883a mov r19,r3
- 45110: b829883a mov r20,r23
- 45114: 004d3f00 call 4d3f0 <__eqdf2>
- 45118: 103f8a26 beq r2,zero,44f44 <__alt_data_end+0xfffd2f44>
- 4511c: 800d883a mov r6,r16
- 45120: 880f883a mov r7,r17
- 45124: 9009883a mov r4,r18
- 45128: 980b883a mov r5,r19
- 4512c: 004ca200 call 4ca20 <__divdf3>
- 45130: 180b883a mov r5,r3
- 45134: 1009883a mov r4,r2
- 45138: 0041c900 call 41c90 <__fixdfsi>
- 4513c: 1009883a mov r4,r2
- 45140: 102b883a mov r21,r2
- 45144: 0041d100 call 41d10 <__floatsidf>
- 45148: 800d883a mov r6,r16
- 4514c: 880f883a mov r7,r17
- 45150: 1009883a mov r4,r2
- 45154: 180b883a mov r5,r3
- 45158: 004d6480 call 4d648 <__muldf3>
- 4515c: 100d883a mov r6,r2
- 45160: 180f883a mov r7,r3
- 45164: 9009883a mov r4,r18
- 45168: 980b883a mov r5,r19
- 4516c: 004deb40 call 4deb4 <__subdf3>
- 45170: aa000c04 addi r8,r21,48
- 45174: a2000005 stb r8,0(r20)
- 45178: 000d883a mov r6,zero
- 4517c: 01d00934 movhi r7,16420
- 45180: 1009883a mov r4,r2
- 45184: 180b883a mov r5,r3
- 45188: a5c00044 addi r23,r20,1
- 4518c: b53fd91e bne r22,r20,450f4 <__alt_data_end+0xfffd30f4>
- 45190: 100d883a mov r6,r2
- 45194: 180f883a mov r7,r3
- 45198: 1009883a mov r4,r2
- 4519c: 180b883a mov r5,r3
- 451a0: 00413e40 call 413e4 <__adddf3>
- 451a4: 100d883a mov r6,r2
- 451a8: 180f883a mov r7,r3
- 451ac: 8009883a mov r4,r16
- 451b0: 880b883a mov r5,r17
- 451b4: 1027883a mov r19,r2
- 451b8: 1825883a mov r18,r3
- 451bc: 004d5540 call 4d554 <__ledf2>
- 451c0: 10000816 blt r2,zero,451e4 <_dtoa_r+0x948>
- 451c4: 980d883a mov r6,r19
- 451c8: 900f883a mov r7,r18
- 451cc: 8009883a mov r4,r16
- 451d0: 880b883a mov r5,r17
- 451d4: 004d3f00 call 4d3f0 <__eqdf2>
- 451d8: 103f5a1e bne r2,zero,44f44 <__alt_data_end+0xfffd2f44>
- 451dc: ad40004c andi r21,r21,1
- 451e0: a83f5826 beq r21,zero,44f44 <__alt_data_end+0xfffd2f44>
- 451e4: bd3fffc3 ldbu r20,-1(r23)
- 451e8: b8bfffc4 addi r2,r23,-1
- 451ec: 1007883a mov r3,r2
- 451f0: 01400e44 movi r5,57
- 451f4: d9800717 ldw r6,28(sp)
- 451f8: 00000506 br 45210 <_dtoa_r+0x974>
- 451fc: 18ffffc4 addi r3,r3,-1
- 45200: 11824726 beq r2,r6,45b20 <_dtoa_r+0x1284>
- 45204: 1d000003 ldbu r20,0(r3)
- 45208: 102f883a mov r23,r2
- 4520c: 10bfffc4 addi r2,r2,-1
- 45210: a1003fcc andi r4,r20,255
- 45214: 2100201c xori r4,r4,128
- 45218: 213fe004 addi r4,r4,-128
- 4521c: 217ff726 beq r4,r5,451fc <__alt_data_end+0xfffd31fc>
- 45220: a2000044 addi r8,r20,1
- 45224: 12000005 stb r8,0(r2)
- 45228: 003f4606 br 44f44 <__alt_data_end+0xfffd2f44>
- 4522c: d9000b17 ldw r4,44(sp)
- 45230: 2000c826 beq r4,zero,45554 <_dtoa_r+0xcb8>
- 45234: d9800317 ldw r6,12(sp)
- 45238: 00c00044 movi r3,1
- 4523c: 1980f90e bge r3,r6,45624 <_dtoa_r+0xd88>
- 45240: d8800617 ldw r2,24(sp)
- 45244: d8c00a17 ldw r3,40(sp)
- 45248: 157fffc4 addi r21,r2,-1
- 4524c: 1d41f316 blt r3,r21,45a1c <_dtoa_r+0x1180>
- 45250: 1d6bc83a sub r21,r3,r21
- 45254: d9c00617 ldw r7,24(sp)
- 45258: 3802aa16 blt r7,zero,45d04 <_dtoa_r+0x1468>
- 4525c: dd000817 ldw r20,32(sp)
- 45260: d8800617 ldw r2,24(sp)
- 45264: d8c00817 ldw r3,32(sp)
- 45268: 01400044 movi r5,1
- 4526c: e009883a mov r4,fp
- 45270: 1887883a add r3,r3,r2
- 45274: d8c00815 stw r3,32(sp)
- 45278: b0ad883a add r22,r22,r2
- 4527c: 0047d640 call 47d64 <__i2b>
- 45280: 1023883a mov r17,r2
- 45284: a0000826 beq r20,zero,452a8 <_dtoa_r+0xa0c>
- 45288: 0580070e bge zero,r22,452a8 <_dtoa_r+0xa0c>
- 4528c: a005883a mov r2,r20
- 45290: b500b916 blt r22,r20,45578 <_dtoa_r+0xcdc>
- 45294: d9000817 ldw r4,32(sp)
- 45298: a0a9c83a sub r20,r20,r2
- 4529c: b0adc83a sub r22,r22,r2
- 452a0: 2089c83a sub r4,r4,r2
- 452a4: d9000815 stw r4,32(sp)
- 452a8: d9800a17 ldw r6,40(sp)
- 452ac: 0181810e bge zero,r6,458b4 <_dtoa_r+0x1018>
- 452b0: d9c00b17 ldw r7,44(sp)
- 452b4: 3800b326 beq r7,zero,45584 <_dtoa_r+0xce8>
- 452b8: a800b226 beq r21,zero,45584 <_dtoa_r+0xce8>
- 452bc: 880b883a mov r5,r17
- 452c0: a80d883a mov r6,r21
- 452c4: e009883a mov r4,fp
- 452c8: 004802c0 call 4802c <__pow5mult>
- 452cc: d9800917 ldw r6,36(sp)
- 452d0: 100b883a mov r5,r2
- 452d4: e009883a mov r4,fp
- 452d8: 1023883a mov r17,r2
- 452dc: 0047da00 call 47da0 <__multiply>
- 452e0: 1021883a mov r16,r2
- 452e4: d8800a17 ldw r2,40(sp)
- 452e8: d9400917 ldw r5,36(sp)
- 452ec: e009883a mov r4,fp
- 452f0: 1545c83a sub r2,r2,r21
- 452f4: d8800a15 stw r2,40(sp)
- 452f8: 00479d80 call 479d8 <_Bfree>
- 452fc: d8c00a17 ldw r3,40(sp)
- 45300: 18009f1e bne r3,zero,45580 <_dtoa_r+0xce4>
- 45304: 05c00044 movi r23,1
- 45308: e009883a mov r4,fp
- 4530c: b80b883a mov r5,r23
- 45310: 0047d640 call 47d64 <__i2b>
- 45314: d9000d17 ldw r4,52(sp)
- 45318: 102b883a mov r21,r2
- 4531c: 2000ce26 beq r4,zero,45658 <_dtoa_r+0xdbc>
- 45320: 200d883a mov r6,r4
- 45324: 100b883a mov r5,r2
- 45328: e009883a mov r4,fp
- 4532c: 004802c0 call 4802c <__pow5mult>
- 45330: d9800317 ldw r6,12(sp)
- 45334: 102b883a mov r21,r2
- 45338: b981810e bge r23,r6,45940 <_dtoa_r+0x10a4>
- 4533c: 0027883a mov r19,zero
- 45340: a8800417 ldw r2,16(r21)
- 45344: 05c00804 movi r23,32
- 45348: 10800104 addi r2,r2,4
- 4534c: 1085883a add r2,r2,r2
- 45350: 1085883a add r2,r2,r2
- 45354: a885883a add r2,r21,r2
- 45358: 11000017 ldw r4,0(r2)
- 4535c: 0047c4c0 call 47c4c <__hi0bits>
- 45360: b885c83a sub r2,r23,r2
- 45364: 1585883a add r2,r2,r22
- 45368: 108007cc andi r2,r2,31
- 4536c: 1000b326 beq r2,zero,4563c <_dtoa_r+0xda0>
- 45370: 00c00804 movi r3,32
- 45374: 1887c83a sub r3,r3,r2
- 45378: 01000104 movi r4,4
- 4537c: 20c2cd0e bge r4,r3,45eb4 <_dtoa_r+0x1618>
- 45380: 00c00704 movi r3,28
- 45384: 1885c83a sub r2,r3,r2
- 45388: d8c00817 ldw r3,32(sp)
- 4538c: a0a9883a add r20,r20,r2
- 45390: b0ad883a add r22,r22,r2
- 45394: 1887883a add r3,r3,r2
- 45398: d8c00815 stw r3,32(sp)
- 4539c: d9800817 ldw r6,32(sp)
- 453a0: 0180040e bge zero,r6,453b4 <_dtoa_r+0xb18>
- 453a4: 800b883a mov r5,r16
- 453a8: e009883a mov r4,fp
- 453ac: 004816c0 call 4816c <__lshift>
- 453b0: 1021883a mov r16,r2
- 453b4: 0580050e bge zero,r22,453cc <_dtoa_r+0xb30>
- 453b8: a80b883a mov r5,r21
- 453bc: b00d883a mov r6,r22
- 453c0: e009883a mov r4,fp
- 453c4: 004816c0 call 4816c <__lshift>
- 453c8: 102b883a mov r21,r2
- 453cc: d9c00e17 ldw r7,56(sp)
- 453d0: 3801211e bne r7,zero,45858 <_dtoa_r+0xfbc>
- 453d4: d9800617 ldw r6,24(sp)
- 453d8: 0181380e bge zero,r6,458bc <_dtoa_r+0x1020>
- 453dc: d8c00b17 ldw r3,44(sp)
- 453e0: 1800ab1e bne r3,zero,45690 <_dtoa_r+0xdf4>
- 453e4: dc800717 ldw r18,28(sp)
- 453e8: dcc00617 ldw r19,24(sp)
- 453ec: 9029883a mov r20,r18
- 453f0: 00000206 br 453fc <_dtoa_r+0xb60>
- 453f4: 0047a000 call 47a00 <__multadd>
- 453f8: 1021883a mov r16,r2
- 453fc: a80b883a mov r5,r21
- 45400: 8009883a mov r4,r16
- 45404: 00446740 call 44674 <quorem>
- 45408: 10800c04 addi r2,r2,48
- 4540c: 90800005 stb r2,0(r18)
- 45410: 94800044 addi r18,r18,1
- 45414: 9507c83a sub r3,r18,r20
- 45418: 000f883a mov r7,zero
- 4541c: 01800284 movi r6,10
- 45420: 800b883a mov r5,r16
- 45424: e009883a mov r4,fp
- 45428: 1cfff216 blt r3,r19,453f4 <__alt_data_end+0xfffd33f4>
- 4542c: 1011883a mov r8,r2
- 45430: d8800617 ldw r2,24(sp)
- 45434: 0082370e bge zero,r2,45d14 <_dtoa_r+0x1478>
- 45438: d9000717 ldw r4,28(sp)
- 4543c: 0025883a mov r18,zero
- 45440: 20af883a add r23,r4,r2
- 45444: 01800044 movi r6,1
- 45448: 800b883a mov r5,r16
- 4544c: e009883a mov r4,fp
- 45450: da001715 stw r8,92(sp)
- 45454: 004816c0 call 4816c <__lshift>
- 45458: a80b883a mov r5,r21
- 4545c: 1009883a mov r4,r2
- 45460: d8800915 stw r2,36(sp)
- 45464: 00482b40 call 482b4 <__mcmp>
- 45468: da001717 ldw r8,92(sp)
- 4546c: 0081800e bge zero,r2,45a70 <_dtoa_r+0x11d4>
- 45470: b93fffc3 ldbu r4,-1(r23)
- 45474: b8bfffc4 addi r2,r23,-1
- 45478: 1007883a mov r3,r2
- 4547c: 01800e44 movi r6,57
- 45480: d9c00717 ldw r7,28(sp)
- 45484: 00000506 br 4549c <_dtoa_r+0xc00>
- 45488: 18ffffc4 addi r3,r3,-1
- 4548c: 11c12326 beq r2,r7,4591c <_dtoa_r+0x1080>
- 45490: 19000003 ldbu r4,0(r3)
- 45494: 102f883a mov r23,r2
- 45498: 10bfffc4 addi r2,r2,-1
- 4549c: 21403fcc andi r5,r4,255
- 454a0: 2940201c xori r5,r5,128
- 454a4: 297fe004 addi r5,r5,-128
- 454a8: 29bff726 beq r5,r6,45488 <__alt_data_end+0xfffd3488>
- 454ac: 21000044 addi r4,r4,1
- 454b0: 11000005 stb r4,0(r2)
- 454b4: a80b883a mov r5,r21
- 454b8: e009883a mov r4,fp
- 454bc: 00479d80 call 479d8 <_Bfree>
- 454c0: 883ea026 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44>
- 454c4: 90000426 beq r18,zero,454d8 <_dtoa_r+0xc3c>
- 454c8: 94400326 beq r18,r17,454d8 <_dtoa_r+0xc3c>
- 454cc: 900b883a mov r5,r18
- 454d0: e009883a mov r4,fp
- 454d4: 00479d80 call 479d8 <_Bfree>
- 454d8: 880b883a mov r5,r17
- 454dc: e009883a mov r4,fp
- 454e0: 00479d80 call 479d8 <_Bfree>
- 454e4: 003e9706 br 44f44 <__alt_data_end+0xfffd2f44>
- 454e8: 01800044 movi r6,1
- 454ec: d9800e15 stw r6,56(sp)
- 454f0: 003d9606 br 44b4c <__alt_data_end+0xfffd2b4c>
- 454f4: d8800817 ldw r2,32(sp)
- 454f8: d8c00517 ldw r3,20(sp)
- 454fc: d8000d15 stw zero,52(sp)
- 45500: 10c5c83a sub r2,r2,r3
- 45504: 00c9c83a sub r4,zero,r3
- 45508: d8800815 stw r2,32(sp)
- 4550c: d9000a15 stw r4,40(sp)
- 45510: 003d9706 br 44b70 <__alt_data_end+0xfffd2b70>
- 45514: 05adc83a sub r22,zero,r22
- 45518: dd800815 stw r22,32(sp)
- 4551c: 002d883a mov r22,zero
- 45520: 003d8e06 br 44b5c <__alt_data_end+0xfffd2b5c>
- 45524: d9000517 ldw r4,20(sp)
- 45528: 0041d100 call 41d10 <__floatsidf>
- 4552c: 100d883a mov r6,r2
- 45530: 180f883a mov r7,r3
- 45534: a009883a mov r4,r20
- 45538: 880b883a mov r5,r17
- 4553c: 004d3f00 call 4d3f0 <__eqdf2>
- 45540: 103d7126 beq r2,zero,44b08 <__alt_data_end+0xfffd2b08>
- 45544: d9c00517 ldw r7,20(sp)
- 45548: 39ffffc4 addi r7,r7,-1
- 4554c: d9c00515 stw r7,20(sp)
- 45550: 003d6d06 br 44b08 <__alt_data_end+0xfffd2b08>
- 45554: dd400a17 ldw r21,40(sp)
- 45558: dd000817 ldw r20,32(sp)
- 4555c: 0023883a mov r17,zero
- 45560: 003f4806 br 45284 <__alt_data_end+0xfffd3284>
- 45564: 10e3c83a sub r17,r2,r3
- 45568: 9448983a sll r4,r18,r17
- 4556c: 003d3206 br 44a38 <__alt_data_end+0xfffd2a38>
- 45570: d8000e15 stw zero,56(sp)
- 45574: 003d7506 br 44b4c <__alt_data_end+0xfffd2b4c>
- 45578: b005883a mov r2,r22
- 4557c: 003f4506 br 45294 <__alt_data_end+0xfffd3294>
- 45580: dc000915 stw r16,36(sp)
- 45584: d9800a17 ldw r6,40(sp)
- 45588: d9400917 ldw r5,36(sp)
- 4558c: e009883a mov r4,fp
- 45590: 004802c0 call 4802c <__pow5mult>
- 45594: 1021883a mov r16,r2
- 45598: 003f5a06 br 45304 <__alt_data_end+0xfffd3304>
- 4559c: 01c00044 movi r7,1
- 455a0: d9c00b15 stw r7,44(sp)
- 455a4: d8802217 ldw r2,136(sp)
- 455a8: 0081280e bge zero,r2,45a4c <_dtoa_r+0x11b0>
- 455ac: 100d883a mov r6,r2
- 455b0: 1021883a mov r16,r2
- 455b4: d8800c15 stw r2,48(sp)
- 455b8: d8800615 stw r2,24(sp)
- 455bc: 003d8806 br 44be0 <__alt_data_end+0xfffd2be0>
- 455c0: d8800617 ldw r2,24(sp)
- 455c4: 00be9b16 blt zero,r2,45034 <__alt_data_end+0xfffd3034>
- 455c8: 10010f1e bne r2,zero,45a08 <_dtoa_r+0x116c>
- 455cc: 880b883a mov r5,r17
- 455d0: 000d883a mov r6,zero
- 455d4: 01d00534 movhi r7,16404
- 455d8: 8009883a mov r4,r16
- 455dc: 004d6480 call 4d648 <__muldf3>
- 455e0: 900d883a mov r6,r18
- 455e4: 980f883a mov r7,r19
- 455e8: 1009883a mov r4,r2
- 455ec: 180b883a mov r5,r3
- 455f0: 004d4780 call 4d478 <__gedf2>
- 455f4: 002b883a mov r21,zero
- 455f8: 0023883a mov r17,zero
- 455fc: 1000bf16 blt r2,zero,458fc <_dtoa_r+0x1060>
- 45600: d9802217 ldw r6,136(sp)
- 45604: ddc00717 ldw r23,28(sp)
- 45608: 018c303a nor r6,zero,r6
- 4560c: d9800515 stw r6,20(sp)
- 45610: a80b883a mov r5,r21
- 45614: e009883a mov r4,fp
- 45618: 00479d80 call 479d8 <_Bfree>
- 4561c: 883e4926 beq r17,zero,44f44 <__alt_data_end+0xfffd2f44>
- 45620: 003fad06 br 454d8 <__alt_data_end+0xfffd34d8>
- 45624: d9c01117 ldw r7,68(sp)
- 45628: 3801bc26 beq r7,zero,45d1c <_dtoa_r+0x1480>
- 4562c: 10810cc4 addi r2,r2,1075
- 45630: dd400a17 ldw r21,40(sp)
- 45634: dd000817 ldw r20,32(sp)
- 45638: 003f0a06 br 45264 <__alt_data_end+0xfffd3264>
- 4563c: 00800704 movi r2,28
- 45640: d9000817 ldw r4,32(sp)
- 45644: a0a9883a add r20,r20,r2
- 45648: b0ad883a add r22,r22,r2
- 4564c: 2089883a add r4,r4,r2
- 45650: d9000815 stw r4,32(sp)
- 45654: 003f5106 br 4539c <__alt_data_end+0xfffd339c>
- 45658: d8c00317 ldw r3,12(sp)
- 4565c: b8c1fc0e bge r23,r3,45e50 <_dtoa_r+0x15b4>
- 45660: 0027883a mov r19,zero
- 45664: b805883a mov r2,r23
- 45668: 003f3e06 br 45364 <__alt_data_end+0xfffd3364>
- 4566c: 880b883a mov r5,r17
- 45670: e009883a mov r4,fp
- 45674: 000f883a mov r7,zero
- 45678: 01800284 movi r6,10
- 4567c: 0047a000 call 47a00 <__multadd>
- 45680: d9000c17 ldw r4,48(sp)
- 45684: 1023883a mov r17,r2
- 45688: 0102040e bge zero,r4,45e9c <_dtoa_r+0x1600>
- 4568c: d9000615 stw r4,24(sp)
- 45690: 0500050e bge zero,r20,456a8 <_dtoa_r+0xe0c>
- 45694: 880b883a mov r5,r17
- 45698: a00d883a mov r6,r20
- 4569c: e009883a mov r4,fp
- 456a0: 004816c0 call 4816c <__lshift>
- 456a4: 1023883a mov r17,r2
- 456a8: 9801241e bne r19,zero,45b3c <_dtoa_r+0x12a0>
- 456ac: 8829883a mov r20,r17
- 456b0: d9000617 ldw r4,24(sp)
- 456b4: dcc00717 ldw r19,28(sp)
- 456b8: 9480004c andi r18,r18,1
- 456bc: 20bfffc4 addi r2,r4,-1
- 456c0: 9885883a add r2,r19,r2
- 456c4: d8800415 stw r2,16(sp)
- 456c8: dc800615 stw r18,24(sp)
- 456cc: a80b883a mov r5,r21
- 456d0: 8009883a mov r4,r16
- 456d4: 00446740 call 44674 <quorem>
- 456d8: 880b883a mov r5,r17
- 456dc: 8009883a mov r4,r16
- 456e0: 102f883a mov r23,r2
- 456e4: 00482b40 call 482b4 <__mcmp>
- 456e8: a80b883a mov r5,r21
- 456ec: a00d883a mov r6,r20
- 456f0: e009883a mov r4,fp
- 456f4: 102d883a mov r22,r2
- 456f8: 00483140 call 48314 <__mdiff>
- 456fc: 1007883a mov r3,r2
- 45700: 10800317 ldw r2,12(r2)
- 45704: bc800c04 addi r18,r23,48
- 45708: 180b883a mov r5,r3
- 4570c: 10004e1e bne r2,zero,45848 <_dtoa_r+0xfac>
- 45710: 8009883a mov r4,r16
- 45714: d8c01615 stw r3,88(sp)
- 45718: 00482b40 call 482b4 <__mcmp>
- 4571c: d8c01617 ldw r3,88(sp)
- 45720: e009883a mov r4,fp
- 45724: d8801615 stw r2,88(sp)
- 45728: 180b883a mov r5,r3
- 4572c: 00479d80 call 479d8 <_Bfree>
- 45730: d8801617 ldw r2,88(sp)
- 45734: 1000041e bne r2,zero,45748 <_dtoa_r+0xeac>
- 45738: d9800317 ldw r6,12(sp)
- 4573c: 3000021e bne r6,zero,45748 <_dtoa_r+0xeac>
- 45740: d8c00617 ldw r3,24(sp)
- 45744: 18003726 beq r3,zero,45824 <_dtoa_r+0xf88>
- 45748: b0002016 blt r22,zero,457cc <_dtoa_r+0xf30>
- 4574c: b000041e bne r22,zero,45760 <_dtoa_r+0xec4>
- 45750: d9000317 ldw r4,12(sp)
- 45754: 2000021e bne r4,zero,45760 <_dtoa_r+0xec4>
- 45758: d8c00617 ldw r3,24(sp)
- 4575c: 18001b26 beq r3,zero,457cc <_dtoa_r+0xf30>
- 45760: 00810716 blt zero,r2,45b80 <_dtoa_r+0x12e4>
- 45764: d8c00417 ldw r3,16(sp)
- 45768: 9d800044 addi r22,r19,1
- 4576c: 9c800005 stb r18,0(r19)
- 45770: b02f883a mov r23,r22
- 45774: 98c10626 beq r19,r3,45b90 <_dtoa_r+0x12f4>
- 45778: 800b883a mov r5,r16
- 4577c: 000f883a mov r7,zero
- 45780: 01800284 movi r6,10
- 45784: e009883a mov r4,fp
- 45788: 0047a000 call 47a00 <__multadd>
- 4578c: 1021883a mov r16,r2
- 45790: 000f883a mov r7,zero
- 45794: 01800284 movi r6,10
- 45798: 880b883a mov r5,r17
- 4579c: e009883a mov r4,fp
- 457a0: 8d002526 beq r17,r20,45838 <_dtoa_r+0xf9c>
- 457a4: 0047a000 call 47a00 <__multadd>
- 457a8: a00b883a mov r5,r20
- 457ac: 000f883a mov r7,zero
- 457b0: 01800284 movi r6,10
- 457b4: e009883a mov r4,fp
- 457b8: 1023883a mov r17,r2
- 457bc: 0047a000 call 47a00 <__multadd>
- 457c0: 1029883a mov r20,r2
- 457c4: b027883a mov r19,r22
- 457c8: 003fc006 br 456cc <__alt_data_end+0xfffd36cc>
- 457cc: 9011883a mov r8,r18
- 457d0: 00800e0e bge zero,r2,4580c <_dtoa_r+0xf70>
- 457d4: 800b883a mov r5,r16
- 457d8: 01800044 movi r6,1
- 457dc: e009883a mov r4,fp
- 457e0: da001715 stw r8,92(sp)
- 457e4: 004816c0 call 4816c <__lshift>
- 457e8: a80b883a mov r5,r21
- 457ec: 1009883a mov r4,r2
- 457f0: 1021883a mov r16,r2
- 457f4: 00482b40 call 482b4 <__mcmp>
- 457f8: da001717 ldw r8,92(sp)
- 457fc: 0081960e bge zero,r2,45e58 <_dtoa_r+0x15bc>
- 45800: 00800e44 movi r2,57
- 45804: 40817026 beq r8,r2,45dc8 <_dtoa_r+0x152c>
- 45808: ba000c44 addi r8,r23,49
- 4580c: 8825883a mov r18,r17
- 45810: 9dc00044 addi r23,r19,1
- 45814: 9a000005 stb r8,0(r19)
- 45818: a023883a mov r17,r20
- 4581c: dc000915 stw r16,36(sp)
- 45820: 003f2406 br 454b4 <__alt_data_end+0xfffd34b4>
- 45824: 00800e44 movi r2,57
- 45828: 9011883a mov r8,r18
- 4582c: 90816626 beq r18,r2,45dc8 <_dtoa_r+0x152c>
- 45830: 05bff516 blt zero,r22,45808 <__alt_data_end+0xfffd3808>
- 45834: 003ff506 br 4580c <__alt_data_end+0xfffd380c>
- 45838: 0047a000 call 47a00 <__multadd>
- 4583c: 1023883a mov r17,r2
- 45840: 1029883a mov r20,r2
- 45844: 003fdf06 br 457c4 <__alt_data_end+0xfffd37c4>
- 45848: e009883a mov r4,fp
- 4584c: 00479d80 call 479d8 <_Bfree>
- 45850: 00800044 movi r2,1
- 45854: 003fbc06 br 45748 <__alt_data_end+0xfffd3748>
- 45858: a80b883a mov r5,r21
- 4585c: 8009883a mov r4,r16
- 45860: 00482b40 call 482b4 <__mcmp>
- 45864: 103edb0e bge r2,zero,453d4 <__alt_data_end+0xfffd33d4>
- 45868: 800b883a mov r5,r16
- 4586c: 000f883a mov r7,zero
- 45870: 01800284 movi r6,10
- 45874: e009883a mov r4,fp
- 45878: 0047a000 call 47a00 <__multadd>
- 4587c: 1021883a mov r16,r2
- 45880: d8800517 ldw r2,20(sp)
- 45884: d8c00b17 ldw r3,44(sp)
- 45888: 10bfffc4 addi r2,r2,-1
- 4588c: d8800515 stw r2,20(sp)
- 45890: 183f761e bne r3,zero,4566c <__alt_data_end+0xfffd366c>
- 45894: d9000c17 ldw r4,48(sp)
- 45898: 0101730e bge zero,r4,45e68 <_dtoa_r+0x15cc>
- 4589c: d9000615 stw r4,24(sp)
- 458a0: 003ed006 br 453e4 <__alt_data_end+0xfffd33e4>
- 458a4: 00800084 movi r2,2
- 458a8: 3081861e bne r6,r2,45ec4 <_dtoa_r+0x1628>
- 458ac: d8000b15 stw zero,44(sp)
- 458b0: 003f3c06 br 455a4 <__alt_data_end+0xfffd35a4>
- 458b4: dc000917 ldw r16,36(sp)
- 458b8: 003e9206 br 45304 <__alt_data_end+0xfffd3304>
- 458bc: d9c00317 ldw r7,12(sp)
- 458c0: 00800084 movi r2,2
- 458c4: 11fec50e bge r2,r7,453dc <__alt_data_end+0xfffd33dc>
- 458c8: d9000617 ldw r4,24(sp)
- 458cc: 20013c1e bne r4,zero,45dc0 <_dtoa_r+0x1524>
- 458d0: a80b883a mov r5,r21
- 458d4: 000f883a mov r7,zero
- 458d8: 01800144 movi r6,5
- 458dc: e009883a mov r4,fp
- 458e0: 0047a000 call 47a00 <__multadd>
- 458e4: 100b883a mov r5,r2
- 458e8: 8009883a mov r4,r16
- 458ec: 102b883a mov r21,r2
- 458f0: 00482b40 call 482b4 <__mcmp>
- 458f4: dc000915 stw r16,36(sp)
- 458f8: 00bf410e bge zero,r2,45600 <__alt_data_end+0xfffd3600>
- 458fc: d9c00717 ldw r7,28(sp)
- 45900: 00800c44 movi r2,49
- 45904: 38800005 stb r2,0(r7)
- 45908: d8800517 ldw r2,20(sp)
- 4590c: 3dc00044 addi r23,r7,1
- 45910: 10800044 addi r2,r2,1
- 45914: d8800515 stw r2,20(sp)
- 45918: 003f3d06 br 45610 <__alt_data_end+0xfffd3610>
- 4591c: d9800517 ldw r6,20(sp)
- 45920: d9c00717 ldw r7,28(sp)
- 45924: 00800c44 movi r2,49
- 45928: 31800044 addi r6,r6,1
- 4592c: d9800515 stw r6,20(sp)
- 45930: 38800005 stb r2,0(r7)
- 45934: 003edf06 br 454b4 <__alt_data_end+0xfffd34b4>
- 45938: d8000b15 stw zero,44(sp)
- 4593c: 003c9f06 br 44bbc <__alt_data_end+0xfffd2bbc>
- 45940: 903e7e1e bne r18,zero,4533c <__alt_data_end+0xfffd333c>
- 45944: 00800434 movhi r2,16
- 45948: 10bfffc4 addi r2,r2,-1
- 4594c: 9884703a and r2,r19,r2
- 45950: 1000ea1e bne r2,zero,45cfc <_dtoa_r+0x1460>
- 45954: 9cdffc2c andhi r19,r19,32752
- 45958: 9800e826 beq r19,zero,45cfc <_dtoa_r+0x1460>
- 4595c: d9c00817 ldw r7,32(sp)
- 45960: b5800044 addi r22,r22,1
- 45964: 04c00044 movi r19,1
- 45968: 39c00044 addi r7,r7,1
- 4596c: d9c00815 stw r7,32(sp)
- 45970: d8800d17 ldw r2,52(sp)
- 45974: 103e721e bne r2,zero,45340 <__alt_data_end+0xfffd3340>
- 45978: 00800044 movi r2,1
- 4597c: 003e7906 br 45364 <__alt_data_end+0xfffd3364>
- 45980: 8009883a mov r4,r16
- 45984: 0041d100 call 41d10 <__floatsidf>
- 45988: d9800f17 ldw r6,60(sp)
- 4598c: d9c01017 ldw r7,64(sp)
- 45990: 1009883a mov r4,r2
- 45994: 180b883a mov r5,r3
- 45998: 004d6480 call 4d648 <__muldf3>
- 4599c: 000d883a mov r6,zero
- 459a0: 01d00734 movhi r7,16412
- 459a4: 1009883a mov r4,r2
- 459a8: 180b883a mov r5,r3
- 459ac: 00413e40 call 413e4 <__adddf3>
- 459b0: 047f3034 movhi r17,64704
- 459b4: 1021883a mov r16,r2
- 459b8: 1c63883a add r17,r3,r17
- 459bc: d9000f17 ldw r4,60(sp)
- 459c0: d9401017 ldw r5,64(sp)
- 459c4: 000d883a mov r6,zero
- 459c8: 01d00534 movhi r7,16404
- 459cc: 004deb40 call 4deb4 <__subdf3>
- 459d0: 800d883a mov r6,r16
- 459d4: 880f883a mov r7,r17
- 459d8: 1009883a mov r4,r2
- 459dc: 180b883a mov r5,r3
- 459e0: 102b883a mov r21,r2
- 459e4: 1829883a mov r20,r3
- 459e8: 004d4780 call 4d478 <__gedf2>
- 459ec: 00806c16 blt zero,r2,45ba0 <_dtoa_r+0x1304>
- 459f0: 89e0003c xorhi r7,r17,32768
- 459f4: 800d883a mov r6,r16
- 459f8: a809883a mov r4,r21
- 459fc: a00b883a mov r5,r20
- 45a00: 004d5540 call 4d554 <__ledf2>
- 45a04: 103d7e0e bge r2,zero,45000 <__alt_data_end+0xfffd3000>
- 45a08: 002b883a mov r21,zero
- 45a0c: 0023883a mov r17,zero
- 45a10: 003efb06 br 45600 <__alt_data_end+0xfffd3600>
- 45a14: d8800717 ldw r2,28(sp)
- 45a18: 003bd006 br 4495c <__alt_data_end+0xfffd295c>
- 45a1c: d9000a17 ldw r4,40(sp)
- 45a20: d9800d17 ldw r6,52(sp)
- 45a24: dd400a15 stw r21,40(sp)
- 45a28: a905c83a sub r2,r21,r4
- 45a2c: 308d883a add r6,r6,r2
- 45a30: d9800d15 stw r6,52(sp)
- 45a34: 002b883a mov r21,zero
- 45a38: 003e0606 br 45254 <__alt_data_end+0xfffd3254>
- 45a3c: 9023883a mov r17,r18
- 45a40: 9829883a mov r20,r19
- 45a44: 04000084 movi r16,2
- 45a48: 003c9206 br 44c94 <__alt_data_end+0xfffd2c94>
- 45a4c: 04000044 movi r16,1
- 45a50: dc000c15 stw r16,48(sp)
- 45a54: dc000615 stw r16,24(sp)
- 45a58: dc002215 stw r16,136(sp)
- 45a5c: e0001115 stw zero,68(fp)
- 45a60: 000b883a mov r5,zero
- 45a64: 003c6906 br 44c0c <__alt_data_end+0xfffd2c0c>
- 45a68: 3021883a mov r16,r6
- 45a6c: 003ffb06 br 45a5c <__alt_data_end+0xfffd3a5c>
- 45a70: 1000021e bne r2,zero,45a7c <_dtoa_r+0x11e0>
- 45a74: 4200004c andi r8,r8,1
- 45a78: 403e7d1e bne r8,zero,45470 <__alt_data_end+0xfffd3470>
- 45a7c: 01000c04 movi r4,48
- 45a80: 00000106 br 45a88 <_dtoa_r+0x11ec>
- 45a84: 102f883a mov r23,r2
- 45a88: b8bfffc4 addi r2,r23,-1
- 45a8c: 10c00007 ldb r3,0(r2)
- 45a90: 193ffc26 beq r3,r4,45a84 <__alt_data_end+0xfffd3a84>
- 45a94: 003e8706 br 454b4 <__alt_data_end+0xfffd34b4>
- 45a98: d8800517 ldw r2,20(sp)
- 45a9c: 00a3c83a sub r17,zero,r2
- 45aa0: 8800a426 beq r17,zero,45d34 <_dtoa_r+0x1498>
- 45aa4: 888003cc andi r2,r17,15
- 45aa8: 100490fa slli r2,r2,3
- 45aac: 00c00174 movhi r3,5
- 45ab0: 18c8ae04 addi r3,r3,8888
- 45ab4: 1885883a add r2,r3,r2
- 45ab8: 11800017 ldw r6,0(r2)
- 45abc: 11c00117 ldw r7,4(r2)
- 45ac0: 9009883a mov r4,r18
- 45ac4: 980b883a mov r5,r19
- 45ac8: 8823d13a srai r17,r17,4
- 45acc: 004d6480 call 4d648 <__muldf3>
- 45ad0: d8800f15 stw r2,60(sp)
- 45ad4: d8c01015 stw r3,64(sp)
- 45ad8: 8800e826 beq r17,zero,45e7c <_dtoa_r+0x15e0>
- 45adc: 05000174 movhi r20,5
- 45ae0: a508a404 addi r20,r20,8848
- 45ae4: 04000084 movi r16,2
- 45ae8: 8980004c andi r6,r17,1
- 45aec: 1009883a mov r4,r2
- 45af0: 8823d07a srai r17,r17,1
- 45af4: 180b883a mov r5,r3
- 45af8: 30000426 beq r6,zero,45b0c <_dtoa_r+0x1270>
- 45afc: a1800017 ldw r6,0(r20)
- 45b00: a1c00117 ldw r7,4(r20)
- 45b04: 84000044 addi r16,r16,1
- 45b08: 004d6480 call 4d648 <__muldf3>
- 45b0c: a5000204 addi r20,r20,8
- 45b10: 883ff51e bne r17,zero,45ae8 <__alt_data_end+0xfffd3ae8>
- 45b14: d8800f15 stw r2,60(sp)
- 45b18: d8c01015 stw r3,64(sp)
- 45b1c: 003c7606 br 44cf8 <__alt_data_end+0xfffd2cf8>
- 45b20: 00c00c04 movi r3,48
- 45b24: 10c00005 stb r3,0(r2)
- 45b28: d8c00517 ldw r3,20(sp)
- 45b2c: bd3fffc3 ldbu r20,-1(r23)
- 45b30: 18c00044 addi r3,r3,1
- 45b34: d8c00515 stw r3,20(sp)
- 45b38: 003db906 br 45220 <__alt_data_end+0xfffd3220>
- 45b3c: 89400117 ldw r5,4(r17)
- 45b40: e009883a mov r4,fp
- 45b44: 00479300 call 47930 <_Balloc>
- 45b48: 89800417 ldw r6,16(r17)
- 45b4c: 89400304 addi r5,r17,12
- 45b50: 11000304 addi r4,r2,12
- 45b54: 31800084 addi r6,r6,2
- 45b58: 318d883a add r6,r6,r6
- 45b5c: 318d883a add r6,r6,r6
- 45b60: 1027883a mov r19,r2
- 45b64: 00476c00 call 476c0 <memcpy>
- 45b68: 01800044 movi r6,1
- 45b6c: 980b883a mov r5,r19
- 45b70: e009883a mov r4,fp
- 45b74: 004816c0 call 4816c <__lshift>
- 45b78: 1029883a mov r20,r2
- 45b7c: 003ecc06 br 456b0 <__alt_data_end+0xfffd36b0>
- 45b80: 00800e44 movi r2,57
- 45b84: 90809026 beq r18,r2,45dc8 <_dtoa_r+0x152c>
- 45b88: 92000044 addi r8,r18,1
- 45b8c: 003f1f06 br 4580c <__alt_data_end+0xfffd380c>
- 45b90: 9011883a mov r8,r18
- 45b94: 8825883a mov r18,r17
- 45b98: a023883a mov r17,r20
- 45b9c: 003e2906 br 45444 <__alt_data_end+0xfffd3444>
- 45ba0: 002b883a mov r21,zero
- 45ba4: 0023883a mov r17,zero
- 45ba8: 003f5406 br 458fc <__alt_data_end+0xfffd38fc>
- 45bac: 61bfffc4 addi r6,r12,-1
- 45bb0: 300490fa slli r2,r6,3
- 45bb4: 00c00174 movhi r3,5
- 45bb8: 18c8ae04 addi r3,r3,8888
- 45bbc: 1885883a add r2,r3,r2
- 45bc0: 11000017 ldw r4,0(r2)
- 45bc4: 11400117 ldw r5,4(r2)
- 45bc8: d8800717 ldw r2,28(sp)
- 45bcc: 880f883a mov r7,r17
- 45bd0: d9801215 stw r6,72(sp)
- 45bd4: 800d883a mov r6,r16
- 45bd8: db001615 stw r12,88(sp)
- 45bdc: 15c00044 addi r23,r2,1
- 45be0: 004d6480 call 4d648 <__muldf3>
- 45be4: d9401017 ldw r5,64(sp)
- 45be8: d9000f17 ldw r4,60(sp)
- 45bec: d8c01515 stw r3,84(sp)
- 45bf0: d8801415 stw r2,80(sp)
- 45bf4: 0041c900 call 41c90 <__fixdfsi>
- 45bf8: 1009883a mov r4,r2
- 45bfc: 1021883a mov r16,r2
- 45c00: 0041d100 call 41d10 <__floatsidf>
- 45c04: d9000f17 ldw r4,60(sp)
- 45c08: d9401017 ldw r5,64(sp)
- 45c0c: 100d883a mov r6,r2
- 45c10: 180f883a mov r7,r3
- 45c14: 004deb40 call 4deb4 <__subdf3>
- 45c18: 1829883a mov r20,r3
- 45c1c: d8c00717 ldw r3,28(sp)
- 45c20: 84000c04 addi r16,r16,48
- 45c24: 1023883a mov r17,r2
- 45c28: 1c000005 stb r16,0(r3)
- 45c2c: db001617 ldw r12,88(sp)
- 45c30: 00800044 movi r2,1
- 45c34: 60802226 beq r12,r2,45cc0 <_dtoa_r+0x1424>
- 45c38: d9c00717 ldw r7,28(sp)
- 45c3c: 8805883a mov r2,r17
- 45c40: b82b883a mov r21,r23
- 45c44: 3b19883a add r12,r7,r12
- 45c48: 6023883a mov r17,r12
- 45c4c: a007883a mov r3,r20
- 45c50: dc800f15 stw r18,60(sp)
- 45c54: 000d883a mov r6,zero
- 45c58: 01d00934 movhi r7,16420
- 45c5c: 1009883a mov r4,r2
- 45c60: 180b883a mov r5,r3
- 45c64: 004d6480 call 4d648 <__muldf3>
- 45c68: 180b883a mov r5,r3
- 45c6c: 1009883a mov r4,r2
- 45c70: 1829883a mov r20,r3
- 45c74: 1025883a mov r18,r2
- 45c78: 0041c900 call 41c90 <__fixdfsi>
- 45c7c: 1009883a mov r4,r2
- 45c80: 1021883a mov r16,r2
- 45c84: 0041d100 call 41d10 <__floatsidf>
- 45c88: 100d883a mov r6,r2
- 45c8c: 180f883a mov r7,r3
- 45c90: 9009883a mov r4,r18
- 45c94: a00b883a mov r5,r20
- 45c98: 84000c04 addi r16,r16,48
- 45c9c: 004deb40 call 4deb4 <__subdf3>
- 45ca0: ad400044 addi r21,r21,1
- 45ca4: ac3fffc5 stb r16,-1(r21)
- 45ca8: ac7fea1e bne r21,r17,45c54 <__alt_data_end+0xfffd3c54>
- 45cac: 1023883a mov r17,r2
- 45cb0: d8801217 ldw r2,72(sp)
- 45cb4: dc800f17 ldw r18,60(sp)
- 45cb8: 1829883a mov r20,r3
- 45cbc: b8af883a add r23,r23,r2
- 45cc0: d9001417 ldw r4,80(sp)
- 45cc4: d9401517 ldw r5,84(sp)
- 45cc8: 000d883a mov r6,zero
- 45ccc: 01cff834 movhi r7,16352
- 45cd0: 00413e40 call 413e4 <__adddf3>
- 45cd4: 880d883a mov r6,r17
- 45cd8: a00f883a mov r7,r20
- 45cdc: 1009883a mov r4,r2
- 45ce0: 180b883a mov r5,r3
- 45ce4: 004d5540 call 4d554 <__ledf2>
- 45ce8: 10003e0e bge r2,zero,45de4 <_dtoa_r+0x1548>
- 45cec: d9001317 ldw r4,76(sp)
- 45cf0: bd3fffc3 ldbu r20,-1(r23)
- 45cf4: d9000515 stw r4,20(sp)
- 45cf8: 003d3b06 br 451e8 <__alt_data_end+0xfffd31e8>
- 45cfc: 0027883a mov r19,zero
- 45d00: 003f1b06 br 45970 <__alt_data_end+0xfffd3970>
- 45d04: d8800817 ldw r2,32(sp)
- 45d08: 11e9c83a sub r20,r2,r7
- 45d0c: 0005883a mov r2,zero
- 45d10: 003d5406 br 45264 <__alt_data_end+0xfffd3264>
- 45d14: 00800044 movi r2,1
- 45d18: 003dc706 br 45438 <__alt_data_end+0xfffd3438>
- 45d1c: d8c00217 ldw r3,8(sp)
- 45d20: 00800d84 movi r2,54
- 45d24: dd400a17 ldw r21,40(sp)
- 45d28: 10c5c83a sub r2,r2,r3
- 45d2c: dd000817 ldw r20,32(sp)
- 45d30: 003d4c06 br 45264 <__alt_data_end+0xfffd3264>
- 45d34: dc800f15 stw r18,60(sp)
- 45d38: dcc01015 stw r19,64(sp)
- 45d3c: 04000084 movi r16,2
- 45d40: 003bed06 br 44cf8 <__alt_data_end+0xfffd2cf8>
- 45d44: d9000617 ldw r4,24(sp)
- 45d48: 203f0d26 beq r4,zero,45980 <__alt_data_end+0xfffd3980>
- 45d4c: d9800c17 ldw r6,48(sp)
- 45d50: 01bcab0e bge zero,r6,45000 <__alt_data_end+0xfffd3000>
- 45d54: d9401017 ldw r5,64(sp)
- 45d58: d9000f17 ldw r4,60(sp)
- 45d5c: 000d883a mov r6,zero
- 45d60: 01d00934 movhi r7,16420
- 45d64: 004d6480 call 4d648 <__muldf3>
- 45d68: 81000044 addi r4,r16,1
- 45d6c: d8800f15 stw r2,60(sp)
- 45d70: d8c01015 stw r3,64(sp)
- 45d74: 0041d100 call 41d10 <__floatsidf>
- 45d78: d9800f17 ldw r6,60(sp)
- 45d7c: d9c01017 ldw r7,64(sp)
- 45d80: 1009883a mov r4,r2
- 45d84: 180b883a mov r5,r3
- 45d88: 004d6480 call 4d648 <__muldf3>
- 45d8c: 01d00734 movhi r7,16412
- 45d90: 000d883a mov r6,zero
- 45d94: 1009883a mov r4,r2
- 45d98: 180b883a mov r5,r3
- 45d9c: 00413e40 call 413e4 <__adddf3>
- 45da0: d9c00517 ldw r7,20(sp)
- 45da4: 047f3034 movhi r17,64704
- 45da8: 1021883a mov r16,r2
- 45dac: 39ffffc4 addi r7,r7,-1
- 45db0: d9c01315 stw r7,76(sp)
- 45db4: 1c63883a add r17,r3,r17
- 45db8: db000c17 ldw r12,48(sp)
- 45dbc: 003bea06 br 44d68 <__alt_data_end+0xfffd2d68>
- 45dc0: dc000915 stw r16,36(sp)
- 45dc4: 003e0e06 br 45600 <__alt_data_end+0xfffd3600>
- 45dc8: 01000e44 movi r4,57
- 45dcc: 8825883a mov r18,r17
- 45dd0: 9dc00044 addi r23,r19,1
- 45dd4: 99000005 stb r4,0(r19)
- 45dd8: a023883a mov r17,r20
- 45ddc: dc000915 stw r16,36(sp)
- 45de0: 003da406 br 45474 <__alt_data_end+0xfffd3474>
- 45de4: d9801417 ldw r6,80(sp)
- 45de8: d9c01517 ldw r7,84(sp)
- 45dec: 0009883a mov r4,zero
- 45df0: 014ff834 movhi r5,16352
- 45df4: 004deb40 call 4deb4 <__subdf3>
- 45df8: 880d883a mov r6,r17
- 45dfc: a00f883a mov r7,r20
- 45e00: 1009883a mov r4,r2
- 45e04: 180b883a mov r5,r3
- 45e08: 004d4780 call 4d478 <__gedf2>
- 45e0c: 00bc7c0e bge zero,r2,45000 <__alt_data_end+0xfffd3000>
- 45e10: 01000c04 movi r4,48
- 45e14: 00000106 br 45e1c <_dtoa_r+0x1580>
- 45e18: 102f883a mov r23,r2
- 45e1c: b8bfffc4 addi r2,r23,-1
- 45e20: 10c00007 ldb r3,0(r2)
- 45e24: 193ffc26 beq r3,r4,45e18 <__alt_data_end+0xfffd3e18>
- 45e28: d9801317 ldw r6,76(sp)
- 45e2c: d9800515 stw r6,20(sp)
- 45e30: 003c4406 br 44f44 <__alt_data_end+0xfffd2f44>
- 45e34: d9801317 ldw r6,76(sp)
- 45e38: d9800515 stw r6,20(sp)
- 45e3c: 003cea06 br 451e8 <__alt_data_end+0xfffd31e8>
- 45e40: dd800f17 ldw r22,60(sp)
- 45e44: dcc01017 ldw r19,64(sp)
- 45e48: dc801217 ldw r18,72(sp)
- 45e4c: 003c6c06 br 45000 <__alt_data_end+0xfffd3000>
- 45e50: 903e031e bne r18,zero,45660 <__alt_data_end+0xfffd3660>
- 45e54: 003ebb06 br 45944 <__alt_data_end+0xfffd3944>
- 45e58: 103e6c1e bne r2,zero,4580c <__alt_data_end+0xfffd380c>
- 45e5c: 4080004c andi r2,r8,1
- 45e60: 103e6a26 beq r2,zero,4580c <__alt_data_end+0xfffd380c>
- 45e64: 003e6606 br 45800 <__alt_data_end+0xfffd3800>
- 45e68: d8c00317 ldw r3,12(sp)
- 45e6c: 00800084 movi r2,2
- 45e70: 10c02916 blt r2,r3,45f18 <_dtoa_r+0x167c>
- 45e74: d9000c17 ldw r4,48(sp)
- 45e78: 003e8806 br 4589c <__alt_data_end+0xfffd389c>
- 45e7c: 04000084 movi r16,2
- 45e80: 003b9d06 br 44cf8 <__alt_data_end+0xfffd2cf8>
- 45e84: d9001317 ldw r4,76(sp)
- 45e88: d9000515 stw r4,20(sp)
- 45e8c: 003cd606 br 451e8 <__alt_data_end+0xfffd31e8>
- 45e90: d8801317 ldw r2,76(sp)
- 45e94: d8800515 stw r2,20(sp)
- 45e98: 003c2a06 br 44f44 <__alt_data_end+0xfffd2f44>
- 45e9c: d9800317 ldw r6,12(sp)
- 45ea0: 00800084 movi r2,2
- 45ea4: 11801516 blt r2,r6,45efc <_dtoa_r+0x1660>
- 45ea8: d9c00c17 ldw r7,48(sp)
- 45eac: d9c00615 stw r7,24(sp)
- 45eb0: 003df706 br 45690 <__alt_data_end+0xfffd3690>
- 45eb4: 193d3926 beq r3,r4,4539c <__alt_data_end+0xfffd339c>
- 45eb8: 00c00f04 movi r3,60
- 45ebc: 1885c83a sub r2,r3,r2
- 45ec0: 003ddf06 br 45640 <__alt_data_end+0xfffd3640>
- 45ec4: e009883a mov r4,fp
- 45ec8: e0001115 stw zero,68(fp)
- 45ecc: 000b883a mov r5,zero
- 45ed0: 00479300 call 47930 <_Balloc>
- 45ed4: d8800715 stw r2,28(sp)
- 45ed8: d8c00717 ldw r3,28(sp)
- 45edc: 00bfffc4 movi r2,-1
- 45ee0: 01000044 movi r4,1
- 45ee4: d8800c15 stw r2,48(sp)
- 45ee8: e0c01015 stw r3,64(fp)
- 45eec: d9000b15 stw r4,44(sp)
- 45ef0: d8800615 stw r2,24(sp)
- 45ef4: d8002215 stw zero,136(sp)
- 45ef8: 003c4106 br 45000 <__alt_data_end+0xfffd3000>
- 45efc: d8c00c17 ldw r3,48(sp)
- 45f00: d8c00615 stw r3,24(sp)
- 45f04: 003e7006 br 458c8 <__alt_data_end+0xfffd38c8>
- 45f08: 04400044 movi r17,1
- 45f0c: 003b2006 br 44b90 <__alt_data_end+0xfffd2b90>
- 45f10: 000b883a mov r5,zero
- 45f14: 003b3d06 br 44c0c <__alt_data_end+0xfffd2c0c>
- 45f18: d8800c17 ldw r2,48(sp)
- 45f1c: d8800615 stw r2,24(sp)
- 45f20: 003e6906 br 458c8 <__alt_data_end+0xfffd38c8>
- 00045f24 <__sflush_r>:
- 45f24: 2880030b ldhu r2,12(r5)
- 45f28: defffb04 addi sp,sp,-20
- 45f2c: dcc00315 stw r19,12(sp)
- 45f30: dc400115 stw r17,4(sp)
- 45f34: dfc00415 stw ra,16(sp)
- 45f38: dc800215 stw r18,8(sp)
- 45f3c: dc000015 stw r16,0(sp)
- 45f40: 10c0020c andi r3,r2,8
- 45f44: 2823883a mov r17,r5
- 45f48: 2027883a mov r19,r4
- 45f4c: 1800311e bne r3,zero,46014 <__sflush_r+0xf0>
- 45f50: 28c00117 ldw r3,4(r5)
- 45f54: 10820014 ori r2,r2,2048
- 45f58: 2880030d sth r2,12(r5)
- 45f5c: 00c04b0e bge zero,r3,4608c <__sflush_r+0x168>
- 45f60: 8a000a17 ldw r8,40(r17)
- 45f64: 40002326 beq r8,zero,45ff4 <__sflush_r+0xd0>
- 45f68: 9c000017 ldw r16,0(r19)
- 45f6c: 10c4000c andi r3,r2,4096
- 45f70: 98000015 stw zero,0(r19)
- 45f74: 18004826 beq r3,zero,46098 <__sflush_r+0x174>
- 45f78: 89801417 ldw r6,80(r17)
- 45f7c: 10c0010c andi r3,r2,4
- 45f80: 18000626 beq r3,zero,45f9c <__sflush_r+0x78>
- 45f84: 88c00117 ldw r3,4(r17)
- 45f88: 88800c17 ldw r2,48(r17)
- 45f8c: 30cdc83a sub r6,r6,r3
- 45f90: 10000226 beq r2,zero,45f9c <__sflush_r+0x78>
- 45f94: 88800f17 ldw r2,60(r17)
- 45f98: 308dc83a sub r6,r6,r2
- 45f9c: 89400717 ldw r5,28(r17)
- 45fa0: 000f883a mov r7,zero
- 45fa4: 9809883a mov r4,r19
- 45fa8: 403ee83a callr r8
- 45fac: 00ffffc4 movi r3,-1
- 45fb0: 10c04426 beq r2,r3,460c4 <__sflush_r+0x1a0>
- 45fb4: 88c0030b ldhu r3,12(r17)
- 45fb8: 89000417 ldw r4,16(r17)
- 45fbc: 88000115 stw zero,4(r17)
- 45fc0: 197dffcc andi r5,r3,63487
- 45fc4: 8940030d sth r5,12(r17)
- 45fc8: 89000015 stw r4,0(r17)
- 45fcc: 18c4000c andi r3,r3,4096
- 45fd0: 18002c1e bne r3,zero,46084 <__sflush_r+0x160>
- 45fd4: 89400c17 ldw r5,48(r17)
- 45fd8: 9c000015 stw r16,0(r19)
- 45fdc: 28000526 beq r5,zero,45ff4 <__sflush_r+0xd0>
- 45fe0: 88801004 addi r2,r17,64
- 45fe4: 28800226 beq r5,r2,45ff0 <__sflush_r+0xcc>
- 45fe8: 9809883a mov r4,r19
- 45fec: 00466a00 call 466a0 <_free_r>
- 45ff0: 88000c15 stw zero,48(r17)
- 45ff4: 0005883a mov r2,zero
- 45ff8: dfc00417 ldw ra,16(sp)
- 45ffc: dcc00317 ldw r19,12(sp)
- 46000: dc800217 ldw r18,8(sp)
- 46004: dc400117 ldw r17,4(sp)
- 46008: dc000017 ldw r16,0(sp)
- 4600c: dec00504 addi sp,sp,20
- 46010: f800283a ret
- 46014: 2c800417 ldw r18,16(r5)
- 46018: 903ff626 beq r18,zero,45ff4 <__alt_data_end+0xfffd3ff4>
- 4601c: 2c000017 ldw r16,0(r5)
- 46020: 108000cc andi r2,r2,3
- 46024: 2c800015 stw r18,0(r5)
- 46028: 84a1c83a sub r16,r16,r18
- 4602c: 1000131e bne r2,zero,4607c <__sflush_r+0x158>
- 46030: 28800517 ldw r2,20(r5)
- 46034: 88800215 stw r2,8(r17)
- 46038: 04000316 blt zero,r16,46048 <__sflush_r+0x124>
- 4603c: 003fed06 br 45ff4 <__alt_data_end+0xfffd3ff4>
- 46040: 90a5883a add r18,r18,r2
- 46044: 043feb0e bge zero,r16,45ff4 <__alt_data_end+0xfffd3ff4>
- 46048: 88800917 ldw r2,36(r17)
- 4604c: 89400717 ldw r5,28(r17)
- 46050: 800f883a mov r7,r16
- 46054: 900d883a mov r6,r18
- 46058: 9809883a mov r4,r19
- 4605c: 103ee83a callr r2
- 46060: 80a1c83a sub r16,r16,r2
- 46064: 00bff616 blt zero,r2,46040 <__alt_data_end+0xfffd4040>
- 46068: 88c0030b ldhu r3,12(r17)
- 4606c: 00bfffc4 movi r2,-1
- 46070: 18c01014 ori r3,r3,64
- 46074: 88c0030d sth r3,12(r17)
- 46078: 003fdf06 br 45ff8 <__alt_data_end+0xfffd3ff8>
- 4607c: 0005883a mov r2,zero
- 46080: 003fec06 br 46034 <__alt_data_end+0xfffd4034>
- 46084: 88801415 stw r2,80(r17)
- 46088: 003fd206 br 45fd4 <__alt_data_end+0xfffd3fd4>
- 4608c: 28c00f17 ldw r3,60(r5)
- 46090: 00ffb316 blt zero,r3,45f60 <__alt_data_end+0xfffd3f60>
- 46094: 003fd706 br 45ff4 <__alt_data_end+0xfffd3ff4>
- 46098: 89400717 ldw r5,28(r17)
- 4609c: 000d883a mov r6,zero
- 460a0: 01c00044 movi r7,1
- 460a4: 9809883a mov r4,r19
- 460a8: 403ee83a callr r8
- 460ac: 100d883a mov r6,r2
- 460b0: 00bfffc4 movi r2,-1
- 460b4: 30801426 beq r6,r2,46108 <__sflush_r+0x1e4>
- 460b8: 8880030b ldhu r2,12(r17)
- 460bc: 8a000a17 ldw r8,40(r17)
- 460c0: 003fae06 br 45f7c <__alt_data_end+0xfffd3f7c>
- 460c4: 98c00017 ldw r3,0(r19)
- 460c8: 183fba26 beq r3,zero,45fb4 <__alt_data_end+0xfffd3fb4>
- 460cc: 01000744 movi r4,29
- 460d0: 19000626 beq r3,r4,460ec <__sflush_r+0x1c8>
- 460d4: 01000584 movi r4,22
- 460d8: 19000426 beq r3,r4,460ec <__sflush_r+0x1c8>
- 460dc: 88c0030b ldhu r3,12(r17)
- 460e0: 18c01014 ori r3,r3,64
- 460e4: 88c0030d sth r3,12(r17)
- 460e8: 003fc306 br 45ff8 <__alt_data_end+0xfffd3ff8>
- 460ec: 8880030b ldhu r2,12(r17)
- 460f0: 88c00417 ldw r3,16(r17)
- 460f4: 88000115 stw zero,4(r17)
- 460f8: 10bdffcc andi r2,r2,63487
- 460fc: 8880030d sth r2,12(r17)
- 46100: 88c00015 stw r3,0(r17)
- 46104: 003fb306 br 45fd4 <__alt_data_end+0xfffd3fd4>
- 46108: 98800017 ldw r2,0(r19)
- 4610c: 103fea26 beq r2,zero,460b8 <__alt_data_end+0xfffd40b8>
- 46110: 00c00744 movi r3,29
- 46114: 10c00226 beq r2,r3,46120 <__sflush_r+0x1fc>
- 46118: 00c00584 movi r3,22
- 4611c: 10c0031e bne r2,r3,4612c <__sflush_r+0x208>
- 46120: 9c000015 stw r16,0(r19)
- 46124: 0005883a mov r2,zero
- 46128: 003fb306 br 45ff8 <__alt_data_end+0xfffd3ff8>
- 4612c: 88c0030b ldhu r3,12(r17)
- 46130: 3005883a mov r2,r6
- 46134: 18c01014 ori r3,r3,64
- 46138: 88c0030d sth r3,12(r17)
- 4613c: 003fae06 br 45ff8 <__alt_data_end+0xfffd3ff8>
- 00046140 <_fflush_r>:
- 46140: defffd04 addi sp,sp,-12
- 46144: dc000115 stw r16,4(sp)
- 46148: dfc00215 stw ra,8(sp)
- 4614c: 2021883a mov r16,r4
- 46150: 20000226 beq r4,zero,4615c <_fflush_r+0x1c>
- 46154: 20800e17 ldw r2,56(r4)
- 46158: 10000c26 beq r2,zero,4618c <_fflush_r+0x4c>
- 4615c: 2880030f ldh r2,12(r5)
- 46160: 1000051e bne r2,zero,46178 <_fflush_r+0x38>
- 46164: 0005883a mov r2,zero
- 46168: dfc00217 ldw ra,8(sp)
- 4616c: dc000117 ldw r16,4(sp)
- 46170: dec00304 addi sp,sp,12
- 46174: f800283a ret
- 46178: 8009883a mov r4,r16
- 4617c: dfc00217 ldw ra,8(sp)
- 46180: dc000117 ldw r16,4(sp)
- 46184: dec00304 addi sp,sp,12
- 46188: 0045f241 jmpi 45f24 <__sflush_r>
- 4618c: d9400015 stw r5,0(sp)
- 46190: 004652c0 call 4652c <__sinit>
- 46194: d9400017 ldw r5,0(sp)
- 46198: 003ff006 br 4615c <__alt_data_end+0xfffd415c>
- 0004619c <fflush>:
- 4619c: 20000526 beq r4,zero,461b4 <fflush+0x18>
- 461a0: 00800174 movhi r2,5
- 461a4: 10908b04 addi r2,r2,16940
- 461a8: 200b883a mov r5,r4
- 461ac: 11000017 ldw r4,0(r2)
- 461b0: 00461401 jmpi 46140 <_fflush_r>
- 461b4: 00800174 movhi r2,5
- 461b8: 10908a04 addi r2,r2,16936
- 461bc: 11000017 ldw r4,0(r2)
- 461c0: 01400134 movhi r5,4
- 461c4: 29585004 addi r5,r5,24896
- 461c8: 0046a741 jmpi 46a74 <_fwalk_reent>
- 000461cc <__fp_unlock>:
- 461cc: 0005883a mov r2,zero
- 461d0: f800283a ret
- 000461d4 <_cleanup_r>:
- 461d4: 01400174 movhi r5,5
- 461d8: 296aa604 addi r5,r5,-21864
- 461dc: 0046a741 jmpi 46a74 <_fwalk_reent>
- 000461e0 <__sinit.part.1>:
- 461e0: defff704 addi sp,sp,-36
- 461e4: 00c00134 movhi r3,4
- 461e8: dfc00815 stw ra,32(sp)
- 461ec: ddc00715 stw r23,28(sp)
- 461f0: dd800615 stw r22,24(sp)
- 461f4: dd400515 stw r21,20(sp)
- 461f8: dd000415 stw r20,16(sp)
- 461fc: dcc00315 stw r19,12(sp)
- 46200: dc800215 stw r18,8(sp)
- 46204: dc400115 stw r17,4(sp)
- 46208: dc000015 stw r16,0(sp)
- 4620c: 18d87504 addi r3,r3,25044
- 46210: 24000117 ldw r16,4(r4)
- 46214: 20c00f15 stw r3,60(r4)
- 46218: 2080bb04 addi r2,r4,748
- 4621c: 00c000c4 movi r3,3
- 46220: 20c0b915 stw r3,740(r4)
- 46224: 2080ba15 stw r2,744(r4)
- 46228: 2000b815 stw zero,736(r4)
- 4622c: 05c00204 movi r23,8
- 46230: 00800104 movi r2,4
- 46234: 2025883a mov r18,r4
- 46238: b80d883a mov r6,r23
- 4623c: 81001704 addi r4,r16,92
- 46240: 000b883a mov r5,zero
- 46244: 80000015 stw zero,0(r16)
- 46248: 80000115 stw zero,4(r16)
- 4624c: 80000215 stw zero,8(r16)
- 46250: 8080030d sth r2,12(r16)
- 46254: 80001915 stw zero,100(r16)
- 46258: 8000038d sth zero,14(r16)
- 4625c: 80000415 stw zero,16(r16)
- 46260: 80000515 stw zero,20(r16)
- 46264: 80000615 stw zero,24(r16)
- 46268: 00478080 call 47808 <memset>
- 4626c: 05800174 movhi r22,5
- 46270: 94400217 ldw r17,8(r18)
- 46274: 05400174 movhi r21,5
- 46278: 05000174 movhi r20,5
- 4627c: 04c00174 movhi r19,5
- 46280: b5a38204 addi r22,r22,-29176
- 46284: ad639904 addi r21,r21,-29084
- 46288: a523b804 addi r20,r20,-28960
- 4628c: 9ce3cf04 addi r19,r19,-28868
- 46290: 85800815 stw r22,32(r16)
- 46294: 85400915 stw r21,36(r16)
- 46298: 85000a15 stw r20,40(r16)
- 4629c: 84c00b15 stw r19,44(r16)
- 462a0: 84000715 stw r16,28(r16)
- 462a4: 00800284 movi r2,10
- 462a8: 8880030d sth r2,12(r17)
- 462ac: 00800044 movi r2,1
- 462b0: b80d883a mov r6,r23
- 462b4: 89001704 addi r4,r17,92
- 462b8: 000b883a mov r5,zero
- 462bc: 88000015 stw zero,0(r17)
- 462c0: 88000115 stw zero,4(r17)
- 462c4: 88000215 stw zero,8(r17)
- 462c8: 88001915 stw zero,100(r17)
- 462cc: 8880038d sth r2,14(r17)
- 462d0: 88000415 stw zero,16(r17)
- 462d4: 88000515 stw zero,20(r17)
- 462d8: 88000615 stw zero,24(r17)
- 462dc: 00478080 call 47808 <memset>
- 462e0: 94000317 ldw r16,12(r18)
- 462e4: 00800484 movi r2,18
- 462e8: 8c400715 stw r17,28(r17)
- 462ec: 8d800815 stw r22,32(r17)
- 462f0: 8d400915 stw r21,36(r17)
- 462f4: 8d000a15 stw r20,40(r17)
- 462f8: 8cc00b15 stw r19,44(r17)
- 462fc: 8080030d sth r2,12(r16)
- 46300: 00800084 movi r2,2
- 46304: 80000015 stw zero,0(r16)
- 46308: 80000115 stw zero,4(r16)
- 4630c: 80000215 stw zero,8(r16)
- 46310: 80001915 stw zero,100(r16)
- 46314: 8080038d sth r2,14(r16)
- 46318: 80000415 stw zero,16(r16)
- 4631c: 80000515 stw zero,20(r16)
- 46320: 80000615 stw zero,24(r16)
- 46324: b80d883a mov r6,r23
- 46328: 000b883a mov r5,zero
- 4632c: 81001704 addi r4,r16,92
- 46330: 00478080 call 47808 <memset>
- 46334: 00800044 movi r2,1
- 46338: 84000715 stw r16,28(r16)
- 4633c: 85800815 stw r22,32(r16)
- 46340: 85400915 stw r21,36(r16)
- 46344: 85000a15 stw r20,40(r16)
- 46348: 84c00b15 stw r19,44(r16)
- 4634c: 90800e15 stw r2,56(r18)
- 46350: dfc00817 ldw ra,32(sp)
- 46354: ddc00717 ldw r23,28(sp)
- 46358: dd800617 ldw r22,24(sp)
- 4635c: dd400517 ldw r21,20(sp)
- 46360: dd000417 ldw r20,16(sp)
- 46364: dcc00317 ldw r19,12(sp)
- 46368: dc800217 ldw r18,8(sp)
- 4636c: dc400117 ldw r17,4(sp)
- 46370: dc000017 ldw r16,0(sp)
- 46374: dec00904 addi sp,sp,36
- 46378: f800283a ret
- 0004637c <__fp_lock>:
- 4637c: 0005883a mov r2,zero
- 46380: f800283a ret
- 00046384 <__sfmoreglue>:
- 46384: defffc04 addi sp,sp,-16
- 46388: dc800215 stw r18,8(sp)
- 4638c: 2825883a mov r18,r5
- 46390: dc000015 stw r16,0(sp)
- 46394: 01401a04 movi r5,104
- 46398: 2021883a mov r16,r4
- 4639c: 913fffc4 addi r4,r18,-1
- 463a0: dfc00315 stw ra,12(sp)
- 463a4: dc400115 stw r17,4(sp)
- 463a8: 004c9f80 call 4c9f8 <__mulsi3>
- 463ac: 8009883a mov r4,r16
- 463b0: 11401d04 addi r5,r2,116
- 463b4: 1023883a mov r17,r2
- 463b8: 0046dd00 call 46dd0 <_malloc_r>
- 463bc: 1021883a mov r16,r2
- 463c0: 10000726 beq r2,zero,463e0 <__sfmoreglue+0x5c>
- 463c4: 11000304 addi r4,r2,12
- 463c8: 10000015 stw zero,0(r2)
- 463cc: 14800115 stw r18,4(r2)
- 463d0: 11000215 stw r4,8(r2)
- 463d4: 89801a04 addi r6,r17,104
- 463d8: 000b883a mov r5,zero
- 463dc: 00478080 call 47808 <memset>
- 463e0: 8005883a mov r2,r16
- 463e4: dfc00317 ldw ra,12(sp)
- 463e8: dc800217 ldw r18,8(sp)
- 463ec: dc400117 ldw r17,4(sp)
- 463f0: dc000017 ldw r16,0(sp)
- 463f4: dec00404 addi sp,sp,16
- 463f8: f800283a ret
- 000463fc <__sfp>:
- 463fc: defffb04 addi sp,sp,-20
- 46400: dc000015 stw r16,0(sp)
- 46404: 04000174 movhi r16,5
- 46408: 84108a04 addi r16,r16,16936
- 4640c: dcc00315 stw r19,12(sp)
- 46410: 2027883a mov r19,r4
- 46414: 81000017 ldw r4,0(r16)
- 46418: dfc00415 stw ra,16(sp)
- 4641c: dc800215 stw r18,8(sp)
- 46420: 20800e17 ldw r2,56(r4)
- 46424: dc400115 stw r17,4(sp)
- 46428: 1000021e bne r2,zero,46434 <__sfp+0x38>
- 4642c: 00461e00 call 461e0 <__sinit.part.1>
- 46430: 81000017 ldw r4,0(r16)
- 46434: 2480b804 addi r18,r4,736
- 46438: 047fffc4 movi r17,-1
- 4643c: 91000117 ldw r4,4(r18)
- 46440: 94000217 ldw r16,8(r18)
- 46444: 213fffc4 addi r4,r4,-1
- 46448: 20000a16 blt r4,zero,46474 <__sfp+0x78>
- 4644c: 8080030f ldh r2,12(r16)
- 46450: 10000c26 beq r2,zero,46484 <__sfp+0x88>
- 46454: 80c01d04 addi r3,r16,116
- 46458: 00000206 br 46464 <__sfp+0x68>
- 4645c: 18bfe60f ldh r2,-104(r3)
- 46460: 10000826 beq r2,zero,46484 <__sfp+0x88>
- 46464: 213fffc4 addi r4,r4,-1
- 46468: 1c3ffd04 addi r16,r3,-12
- 4646c: 18c01a04 addi r3,r3,104
- 46470: 247ffa1e bne r4,r17,4645c <__alt_data_end+0xfffd445c>
- 46474: 90800017 ldw r2,0(r18)
- 46478: 10001d26 beq r2,zero,464f0 <__sfp+0xf4>
- 4647c: 1025883a mov r18,r2
- 46480: 003fee06 br 4643c <__alt_data_end+0xfffd443c>
- 46484: 00bfffc4 movi r2,-1
- 46488: 8080038d sth r2,14(r16)
- 4648c: 00800044 movi r2,1
- 46490: 8080030d sth r2,12(r16)
- 46494: 80001915 stw zero,100(r16)
- 46498: 80000015 stw zero,0(r16)
- 4649c: 80000215 stw zero,8(r16)
- 464a0: 80000115 stw zero,4(r16)
- 464a4: 80000415 stw zero,16(r16)
- 464a8: 80000515 stw zero,20(r16)
- 464ac: 80000615 stw zero,24(r16)
- 464b0: 01800204 movi r6,8
- 464b4: 000b883a mov r5,zero
- 464b8: 81001704 addi r4,r16,92
- 464bc: 00478080 call 47808 <memset>
- 464c0: 8005883a mov r2,r16
- 464c4: 80000c15 stw zero,48(r16)
- 464c8: 80000d15 stw zero,52(r16)
- 464cc: 80001115 stw zero,68(r16)
- 464d0: 80001215 stw zero,72(r16)
- 464d4: dfc00417 ldw ra,16(sp)
- 464d8: dcc00317 ldw r19,12(sp)
- 464dc: dc800217 ldw r18,8(sp)
- 464e0: dc400117 ldw r17,4(sp)
- 464e4: dc000017 ldw r16,0(sp)
- 464e8: dec00504 addi sp,sp,20
- 464ec: f800283a ret
- 464f0: 01400104 movi r5,4
- 464f4: 9809883a mov r4,r19
- 464f8: 00463840 call 46384 <__sfmoreglue>
- 464fc: 90800015 stw r2,0(r18)
- 46500: 103fde1e bne r2,zero,4647c <__alt_data_end+0xfffd447c>
- 46504: 00800304 movi r2,12
- 46508: 98800015 stw r2,0(r19)
- 4650c: 0005883a mov r2,zero
- 46510: 003ff006 br 464d4 <__alt_data_end+0xfffd44d4>
- 00046514 <_cleanup>:
- 46514: 00800174 movhi r2,5
- 46518: 10908a04 addi r2,r2,16936
- 4651c: 11000017 ldw r4,0(r2)
- 46520: 01400174 movhi r5,5
- 46524: 296aa604 addi r5,r5,-21864
- 46528: 0046a741 jmpi 46a74 <_fwalk_reent>
- 0004652c <__sinit>:
- 4652c: 20800e17 ldw r2,56(r4)
- 46530: 10000126 beq r2,zero,46538 <__sinit+0xc>
- 46534: f800283a ret
- 46538: 00461e01 jmpi 461e0 <__sinit.part.1>
- 0004653c <__sfp_lock_acquire>:
- 4653c: f800283a ret
- 00046540 <__sfp_lock_release>:
- 46540: f800283a ret
- 00046544 <__sinit_lock_acquire>:
- 46544: f800283a ret
- 00046548 <__sinit_lock_release>:
- 46548: f800283a ret
- 0004654c <__fp_lock_all>:
- 4654c: 00800174 movhi r2,5
- 46550: 10908b04 addi r2,r2,16940
- 46554: 11000017 ldw r4,0(r2)
- 46558: 01400134 movhi r5,4
- 4655c: 2958df04 addi r5,r5,25468
- 46560: 00469b01 jmpi 469b0 <_fwalk>
- 00046564 <__fp_unlock_all>:
- 46564: 00800174 movhi r2,5
- 46568: 10908b04 addi r2,r2,16940
- 4656c: 11000017 ldw r4,0(r2)
- 46570: 01400134 movhi r5,4
- 46574: 29587304 addi r5,r5,25036
- 46578: 00469b01 jmpi 469b0 <_fwalk>
- 0004657c <_malloc_trim_r>:
- 4657c: defffb04 addi sp,sp,-20
- 46580: dcc00315 stw r19,12(sp)
- 46584: 04c00174 movhi r19,5
- 46588: dc800215 stw r18,8(sp)
- 4658c: dc400115 stw r17,4(sp)
- 46590: dc000015 stw r16,0(sp)
- 46594: dfc00415 stw ra,16(sp)
- 46598: 2821883a mov r16,r5
- 4659c: 9ccabe04 addi r19,r19,11000
- 465a0: 2025883a mov r18,r4
- 465a4: 004edf40 call 4edf4 <__malloc_lock>
- 465a8: 98800217 ldw r2,8(r19)
- 465ac: 14400117 ldw r17,4(r2)
- 465b0: 00bfff04 movi r2,-4
- 465b4: 88a2703a and r17,r17,r2
- 465b8: 8c21c83a sub r16,r17,r16
- 465bc: 8403fbc4 addi r16,r16,4079
- 465c0: 8020d33a srli r16,r16,12
- 465c4: 0083ffc4 movi r2,4095
- 465c8: 843fffc4 addi r16,r16,-1
- 465cc: 8020933a slli r16,r16,12
- 465d0: 1400060e bge r2,r16,465ec <_malloc_trim_r+0x70>
- 465d4: 000b883a mov r5,zero
- 465d8: 9009883a mov r4,r18
- 465dc: 0048db40 call 48db4 <_sbrk_r>
- 465e0: 98c00217 ldw r3,8(r19)
- 465e4: 1c47883a add r3,r3,r17
- 465e8: 10c00a26 beq r2,r3,46614 <_malloc_trim_r+0x98>
- 465ec: 9009883a mov r4,r18
- 465f0: 004ee180 call 4ee18 <__malloc_unlock>
- 465f4: 0005883a mov r2,zero
- 465f8: dfc00417 ldw ra,16(sp)
- 465fc: dcc00317 ldw r19,12(sp)
- 46600: dc800217 ldw r18,8(sp)
- 46604: dc400117 ldw r17,4(sp)
- 46608: dc000017 ldw r16,0(sp)
- 4660c: dec00504 addi sp,sp,20
- 46610: f800283a ret
- 46614: 040bc83a sub r5,zero,r16
- 46618: 9009883a mov r4,r18
- 4661c: 0048db40 call 48db4 <_sbrk_r>
- 46620: 00ffffc4 movi r3,-1
- 46624: 10c00d26 beq r2,r3,4665c <_malloc_trim_r+0xe0>
- 46628: 00c00174 movhi r3,5
- 4662c: 18d7b304 addi r3,r3,24268
- 46630: 18800017 ldw r2,0(r3)
- 46634: 99000217 ldw r4,8(r19)
- 46638: 8c23c83a sub r17,r17,r16
- 4663c: 8c400054 ori r17,r17,1
- 46640: 1421c83a sub r16,r2,r16
- 46644: 24400115 stw r17,4(r4)
- 46648: 9009883a mov r4,r18
- 4664c: 1c000015 stw r16,0(r3)
- 46650: 004ee180 call 4ee18 <__malloc_unlock>
- 46654: 00800044 movi r2,1
- 46658: 003fe706 br 465f8 <__alt_data_end+0xfffd45f8>
- 4665c: 000b883a mov r5,zero
- 46660: 9009883a mov r4,r18
- 46664: 0048db40 call 48db4 <_sbrk_r>
- 46668: 99000217 ldw r4,8(r19)
- 4666c: 014003c4 movi r5,15
- 46670: 1107c83a sub r3,r2,r4
- 46674: 28ffdd0e bge r5,r3,465ec <__alt_data_end+0xfffd45ec>
- 46678: 01400174 movhi r5,5
- 4667c: 29508d04 addi r5,r5,16948
- 46680: 29400017 ldw r5,0(r5)
- 46684: 18c00054 ori r3,r3,1
- 46688: 20c00115 stw r3,4(r4)
- 4668c: 00c00174 movhi r3,5
- 46690: 1145c83a sub r2,r2,r5
- 46694: 18d7b304 addi r3,r3,24268
- 46698: 18800015 stw r2,0(r3)
- 4669c: 003fd306 br 465ec <__alt_data_end+0xfffd45ec>
- 000466a0 <_free_r>:
- 466a0: 28004126 beq r5,zero,467a8 <_free_r+0x108>
- 466a4: defffd04 addi sp,sp,-12
- 466a8: dc400115 stw r17,4(sp)
- 466ac: dc000015 stw r16,0(sp)
- 466b0: 2023883a mov r17,r4
- 466b4: 2821883a mov r16,r5
- 466b8: dfc00215 stw ra,8(sp)
- 466bc: 004edf40 call 4edf4 <__malloc_lock>
- 466c0: 81ffff17 ldw r7,-4(r16)
- 466c4: 00bfff84 movi r2,-2
- 466c8: 01000174 movhi r4,5
- 466cc: 81bffe04 addi r6,r16,-8
- 466d0: 3884703a and r2,r7,r2
- 466d4: 210abe04 addi r4,r4,11000
- 466d8: 308b883a add r5,r6,r2
- 466dc: 2a400117 ldw r9,4(r5)
- 466e0: 22000217 ldw r8,8(r4)
- 466e4: 00ffff04 movi r3,-4
- 466e8: 48c6703a and r3,r9,r3
- 466ec: 2a005726 beq r5,r8,4684c <_free_r+0x1ac>
- 466f0: 28c00115 stw r3,4(r5)
- 466f4: 39c0004c andi r7,r7,1
- 466f8: 3800091e bne r7,zero,46720 <_free_r+0x80>
- 466fc: 823ffe17 ldw r8,-8(r16)
- 46700: 22400204 addi r9,r4,8
- 46704: 320dc83a sub r6,r6,r8
- 46708: 31c00217 ldw r7,8(r6)
- 4670c: 1205883a add r2,r2,r8
- 46710: 3a406526 beq r7,r9,468a8 <_free_r+0x208>
- 46714: 32000317 ldw r8,12(r6)
- 46718: 3a000315 stw r8,12(r7)
- 4671c: 41c00215 stw r7,8(r8)
- 46720: 28cf883a add r7,r5,r3
- 46724: 39c00117 ldw r7,4(r7)
- 46728: 39c0004c andi r7,r7,1
- 4672c: 38003a26 beq r7,zero,46818 <_free_r+0x178>
- 46730: 10c00054 ori r3,r2,1
- 46734: 30c00115 stw r3,4(r6)
- 46738: 3087883a add r3,r6,r2
- 4673c: 18800015 stw r2,0(r3)
- 46740: 00c07fc4 movi r3,511
- 46744: 18801936 bltu r3,r2,467ac <_free_r+0x10c>
- 46748: 1004d0fa srli r2,r2,3
- 4674c: 01c00044 movi r7,1
- 46750: 21400117 ldw r5,4(r4)
- 46754: 10c00044 addi r3,r2,1
- 46758: 18c7883a add r3,r3,r3
- 4675c: 1005d0ba srai r2,r2,2
- 46760: 18c7883a add r3,r3,r3
- 46764: 18c7883a add r3,r3,r3
- 46768: 1907883a add r3,r3,r4
- 4676c: 3884983a sll r2,r7,r2
- 46770: 19c00017 ldw r7,0(r3)
- 46774: 1a3ffe04 addi r8,r3,-8
- 46778: 1144b03a or r2,r2,r5
- 4677c: 32000315 stw r8,12(r6)
- 46780: 31c00215 stw r7,8(r6)
- 46784: 20800115 stw r2,4(r4)
- 46788: 19800015 stw r6,0(r3)
- 4678c: 39800315 stw r6,12(r7)
- 46790: 8809883a mov r4,r17
- 46794: dfc00217 ldw ra,8(sp)
- 46798: dc400117 ldw r17,4(sp)
- 4679c: dc000017 ldw r16,0(sp)
- 467a0: dec00304 addi sp,sp,12
- 467a4: 004ee181 jmpi 4ee18 <__malloc_unlock>
- 467a8: f800283a ret
- 467ac: 100ad27a srli r5,r2,9
- 467b0: 00c00104 movi r3,4
- 467b4: 19404a36 bltu r3,r5,468e0 <_free_r+0x240>
- 467b8: 100ad1ba srli r5,r2,6
- 467bc: 28c00e44 addi r3,r5,57
- 467c0: 18c7883a add r3,r3,r3
- 467c4: 29400e04 addi r5,r5,56
- 467c8: 18c7883a add r3,r3,r3
- 467cc: 18c7883a add r3,r3,r3
- 467d0: 1909883a add r4,r3,r4
- 467d4: 20c00017 ldw r3,0(r4)
- 467d8: 01c00174 movhi r7,5
- 467dc: 213ffe04 addi r4,r4,-8
- 467e0: 39cabe04 addi r7,r7,11000
- 467e4: 20c04426 beq r4,r3,468f8 <_free_r+0x258>
- 467e8: 01ffff04 movi r7,-4
- 467ec: 19400117 ldw r5,4(r3)
- 467f0: 29ca703a and r5,r5,r7
- 467f4: 1140022e bgeu r2,r5,46800 <_free_r+0x160>
- 467f8: 18c00217 ldw r3,8(r3)
- 467fc: 20fffb1e bne r4,r3,467ec <__alt_data_end+0xfffd47ec>
- 46800: 19000317 ldw r4,12(r3)
- 46804: 31000315 stw r4,12(r6)
- 46808: 30c00215 stw r3,8(r6)
- 4680c: 21800215 stw r6,8(r4)
- 46810: 19800315 stw r6,12(r3)
- 46814: 003fde06 br 46790 <__alt_data_end+0xfffd4790>
- 46818: 29c00217 ldw r7,8(r5)
- 4681c: 10c5883a add r2,r2,r3
- 46820: 00c00174 movhi r3,5
- 46824: 18cac004 addi r3,r3,11008
- 46828: 38c03b26 beq r7,r3,46918 <_free_r+0x278>
- 4682c: 2a000317 ldw r8,12(r5)
- 46830: 11400054 ori r5,r2,1
- 46834: 3087883a add r3,r6,r2
- 46838: 3a000315 stw r8,12(r7)
- 4683c: 41c00215 stw r7,8(r8)
- 46840: 31400115 stw r5,4(r6)
- 46844: 18800015 stw r2,0(r3)
- 46848: 003fbd06 br 46740 <__alt_data_end+0xfffd4740>
- 4684c: 39c0004c andi r7,r7,1
- 46850: 10c5883a add r2,r2,r3
- 46854: 3800071e bne r7,zero,46874 <_free_r+0x1d4>
- 46858: 81fffe17 ldw r7,-8(r16)
- 4685c: 31cdc83a sub r6,r6,r7
- 46860: 30c00317 ldw r3,12(r6)
- 46864: 31400217 ldw r5,8(r6)
- 46868: 11c5883a add r2,r2,r7
- 4686c: 28c00315 stw r3,12(r5)
- 46870: 19400215 stw r5,8(r3)
- 46874: 10c00054 ori r3,r2,1
- 46878: 30c00115 stw r3,4(r6)
- 4687c: 00c00174 movhi r3,5
- 46880: 18d08e04 addi r3,r3,16952
- 46884: 18c00017 ldw r3,0(r3)
- 46888: 21800215 stw r6,8(r4)
- 4688c: 10ffc036 bltu r2,r3,46790 <__alt_data_end+0xfffd4790>
- 46890: 00800174 movhi r2,5
- 46894: 1097aa04 addi r2,r2,24232
- 46898: 11400017 ldw r5,0(r2)
- 4689c: 8809883a mov r4,r17
- 468a0: 004657c0 call 4657c <_malloc_trim_r>
- 468a4: 003fba06 br 46790 <__alt_data_end+0xfffd4790>
- 468a8: 28c9883a add r4,r5,r3
- 468ac: 21000117 ldw r4,4(r4)
- 468b0: 2100004c andi r4,r4,1
- 468b4: 2000391e bne r4,zero,4699c <_free_r+0x2fc>
- 468b8: 29c00217 ldw r7,8(r5)
- 468bc: 29000317 ldw r4,12(r5)
- 468c0: 1885883a add r2,r3,r2
- 468c4: 10c00054 ori r3,r2,1
- 468c8: 39000315 stw r4,12(r7)
- 468cc: 21c00215 stw r7,8(r4)
- 468d0: 30c00115 stw r3,4(r6)
- 468d4: 308d883a add r6,r6,r2
- 468d8: 30800015 stw r2,0(r6)
- 468dc: 003fac06 br 46790 <__alt_data_end+0xfffd4790>
- 468e0: 00c00504 movi r3,20
- 468e4: 19401536 bltu r3,r5,4693c <_free_r+0x29c>
- 468e8: 28c01704 addi r3,r5,92
- 468ec: 18c7883a add r3,r3,r3
- 468f0: 294016c4 addi r5,r5,91
- 468f4: 003fb406 br 467c8 <__alt_data_end+0xfffd47c8>
- 468f8: 280bd0ba srai r5,r5,2
- 468fc: 00c00044 movi r3,1
- 46900: 38800117 ldw r2,4(r7)
- 46904: 194a983a sll r5,r3,r5
- 46908: 2007883a mov r3,r4
- 4690c: 2884b03a or r2,r5,r2
- 46910: 38800115 stw r2,4(r7)
- 46914: 003fbb06 br 46804 <__alt_data_end+0xfffd4804>
- 46918: 21800515 stw r6,20(r4)
- 4691c: 21800415 stw r6,16(r4)
- 46920: 10c00054 ori r3,r2,1
- 46924: 31c00315 stw r7,12(r6)
- 46928: 31c00215 stw r7,8(r6)
- 4692c: 30c00115 stw r3,4(r6)
- 46930: 308d883a add r6,r6,r2
- 46934: 30800015 stw r2,0(r6)
- 46938: 003f9506 br 46790 <__alt_data_end+0xfffd4790>
- 4693c: 00c01504 movi r3,84
- 46940: 19400536 bltu r3,r5,46958 <_free_r+0x2b8>
- 46944: 100ad33a srli r5,r2,12
- 46948: 28c01bc4 addi r3,r5,111
- 4694c: 18c7883a add r3,r3,r3
- 46950: 29401b84 addi r5,r5,110
- 46954: 003f9c06 br 467c8 <__alt_data_end+0xfffd47c8>
- 46958: 00c05504 movi r3,340
- 4695c: 19400536 bltu r3,r5,46974 <_free_r+0x2d4>
- 46960: 100ad3fa srli r5,r2,15
- 46964: 28c01e04 addi r3,r5,120
- 46968: 18c7883a add r3,r3,r3
- 4696c: 29401dc4 addi r5,r5,119
- 46970: 003f9506 br 467c8 <__alt_data_end+0xfffd47c8>
- 46974: 00c15504 movi r3,1364
- 46978: 19400536 bltu r3,r5,46990 <_free_r+0x2f0>
- 4697c: 100ad4ba srli r5,r2,18
- 46980: 28c01f44 addi r3,r5,125
- 46984: 18c7883a add r3,r3,r3
- 46988: 29401f04 addi r5,r5,124
- 4698c: 003f8e06 br 467c8 <__alt_data_end+0xfffd47c8>
- 46990: 00c03f84 movi r3,254
- 46994: 01401f84 movi r5,126
- 46998: 003f8b06 br 467c8 <__alt_data_end+0xfffd47c8>
- 4699c: 10c00054 ori r3,r2,1
- 469a0: 30c00115 stw r3,4(r6)
- 469a4: 308d883a add r6,r6,r2
- 469a8: 30800015 stw r2,0(r6)
- 469ac: 003f7806 br 46790 <__alt_data_end+0xfffd4790>
- 000469b0 <_fwalk>:
- 469b0: defff704 addi sp,sp,-36
- 469b4: dd000415 stw r20,16(sp)
- 469b8: dfc00815 stw ra,32(sp)
- 469bc: ddc00715 stw r23,28(sp)
- 469c0: dd800615 stw r22,24(sp)
- 469c4: dd400515 stw r21,20(sp)
- 469c8: dcc00315 stw r19,12(sp)
- 469cc: dc800215 stw r18,8(sp)
- 469d0: dc400115 stw r17,4(sp)
- 469d4: dc000015 stw r16,0(sp)
- 469d8: 2500b804 addi r20,r4,736
- 469dc: a0002326 beq r20,zero,46a6c <_fwalk+0xbc>
- 469e0: 282b883a mov r21,r5
- 469e4: 002f883a mov r23,zero
- 469e8: 05800044 movi r22,1
- 469ec: 04ffffc4 movi r19,-1
- 469f0: a4400117 ldw r17,4(r20)
- 469f4: a4800217 ldw r18,8(r20)
- 469f8: 8c7fffc4 addi r17,r17,-1
- 469fc: 88000d16 blt r17,zero,46a34 <_fwalk+0x84>
- 46a00: 94000304 addi r16,r18,12
- 46a04: 94800384 addi r18,r18,14
- 46a08: 8080000b ldhu r2,0(r16)
- 46a0c: 8c7fffc4 addi r17,r17,-1
- 46a10: 813ffd04 addi r4,r16,-12
- 46a14: b080042e bgeu r22,r2,46a28 <_fwalk+0x78>
- 46a18: 9080000f ldh r2,0(r18)
- 46a1c: 14c00226 beq r2,r19,46a28 <_fwalk+0x78>
- 46a20: a83ee83a callr r21
- 46a24: b8aeb03a or r23,r23,r2
- 46a28: 84001a04 addi r16,r16,104
- 46a2c: 94801a04 addi r18,r18,104
- 46a30: 8cfff51e bne r17,r19,46a08 <__alt_data_end+0xfffd4a08>
- 46a34: a5000017 ldw r20,0(r20)
- 46a38: a03fed1e bne r20,zero,469f0 <__alt_data_end+0xfffd49f0>
- 46a3c: b805883a mov r2,r23
- 46a40: dfc00817 ldw ra,32(sp)
- 46a44: ddc00717 ldw r23,28(sp)
- 46a48: dd800617 ldw r22,24(sp)
- 46a4c: dd400517 ldw r21,20(sp)
- 46a50: dd000417 ldw r20,16(sp)
- 46a54: dcc00317 ldw r19,12(sp)
- 46a58: dc800217 ldw r18,8(sp)
- 46a5c: dc400117 ldw r17,4(sp)
- 46a60: dc000017 ldw r16,0(sp)
- 46a64: dec00904 addi sp,sp,36
- 46a68: f800283a ret
- 46a6c: 002f883a mov r23,zero
- 46a70: 003ff206 br 46a3c <__alt_data_end+0xfffd4a3c>
- 00046a74 <_fwalk_reent>:
- 46a74: defff704 addi sp,sp,-36
- 46a78: dd000415 stw r20,16(sp)
- 46a7c: dfc00815 stw ra,32(sp)
- 46a80: ddc00715 stw r23,28(sp)
- 46a84: dd800615 stw r22,24(sp)
- 46a88: dd400515 stw r21,20(sp)
- 46a8c: dcc00315 stw r19,12(sp)
- 46a90: dc800215 stw r18,8(sp)
- 46a94: dc400115 stw r17,4(sp)
- 46a98: dc000015 stw r16,0(sp)
- 46a9c: 2500b804 addi r20,r4,736
- 46aa0: a0002326 beq r20,zero,46b30 <_fwalk_reent+0xbc>
- 46aa4: 282b883a mov r21,r5
- 46aa8: 2027883a mov r19,r4
- 46aac: 002f883a mov r23,zero
- 46ab0: 05800044 movi r22,1
- 46ab4: 04bfffc4 movi r18,-1
- 46ab8: a4400117 ldw r17,4(r20)
- 46abc: a4000217 ldw r16,8(r20)
- 46ac0: 8c7fffc4 addi r17,r17,-1
- 46ac4: 88000c16 blt r17,zero,46af8 <_fwalk_reent+0x84>
- 46ac8: 84000304 addi r16,r16,12
- 46acc: 8080000b ldhu r2,0(r16)
- 46ad0: 8c7fffc4 addi r17,r17,-1
- 46ad4: 817ffd04 addi r5,r16,-12
- 46ad8: b080052e bgeu r22,r2,46af0 <_fwalk_reent+0x7c>
- 46adc: 8080008f ldh r2,2(r16)
- 46ae0: 9809883a mov r4,r19
- 46ae4: 14800226 beq r2,r18,46af0 <_fwalk_reent+0x7c>
- 46ae8: a83ee83a callr r21
- 46aec: b8aeb03a or r23,r23,r2
- 46af0: 84001a04 addi r16,r16,104
- 46af4: 8cbff51e bne r17,r18,46acc <__alt_data_end+0xfffd4acc>
- 46af8: a5000017 ldw r20,0(r20)
- 46afc: a03fee1e bne r20,zero,46ab8 <__alt_data_end+0xfffd4ab8>
- 46b00: b805883a mov r2,r23
- 46b04: dfc00817 ldw ra,32(sp)
- 46b08: ddc00717 ldw r23,28(sp)
- 46b0c: dd800617 ldw r22,24(sp)
- 46b10: dd400517 ldw r21,20(sp)
- 46b14: dd000417 ldw r20,16(sp)
- 46b18: dcc00317 ldw r19,12(sp)
- 46b1c: dc800217 ldw r18,8(sp)
- 46b20: dc400117 ldw r17,4(sp)
- 46b24: dc000017 ldw r16,0(sp)
- 46b28: dec00904 addi sp,sp,36
- 46b2c: f800283a ret
- 46b30: 002f883a mov r23,zero
- 46b34: 003ff206 br 46b00 <__alt_data_end+0xfffd4b00>
- 00046b38 <_setlocale_r>:
- 46b38: 30001b26 beq r6,zero,46ba8 <_setlocale_r+0x70>
- 46b3c: 01400174 movhi r5,5
- 46b40: defffe04 addi sp,sp,-8
- 46b44: 29489404 addi r5,r5,8784
- 46b48: 3009883a mov r4,r6
- 46b4c: dc000015 stw r16,0(sp)
- 46b50: dfc00115 stw ra,4(sp)
- 46b54: 3021883a mov r16,r6
- 46b58: 0048f440 call 48f44 <strcmp>
- 46b5c: 1000061e bne r2,zero,46b78 <_setlocale_r+0x40>
- 46b60: 00800174 movhi r2,5
- 46b64: 10887604 addi r2,r2,8664
- 46b68: dfc00117 ldw ra,4(sp)
- 46b6c: dc000017 ldw r16,0(sp)
- 46b70: dec00204 addi sp,sp,8
- 46b74: f800283a ret
- 46b78: 01400174 movhi r5,5
- 46b7c: 29487604 addi r5,r5,8664
- 46b80: 8009883a mov r4,r16
- 46b84: 0048f440 call 48f44 <strcmp>
- 46b88: 103ff526 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60>
- 46b8c: 01400174 movhi r5,5
- 46b90: 29487f04 addi r5,r5,8700
- 46b94: 8009883a mov r4,r16
- 46b98: 0048f440 call 48f44 <strcmp>
- 46b9c: 103ff026 beq r2,zero,46b60 <__alt_data_end+0xfffd4b60>
- 46ba0: 0005883a mov r2,zero
- 46ba4: 003ff006 br 46b68 <__alt_data_end+0xfffd4b68>
- 46ba8: 00800174 movhi r2,5
- 46bac: 10887604 addi r2,r2,8664
- 46bb0: f800283a ret
- 00046bb4 <__locale_charset>:
- 46bb4: 00800174 movhi r2,5
- 46bb8: 108aa804 addi r2,r2,10912
- 46bbc: f800283a ret
- 00046bc0 <__locale_mb_cur_max>:
- 46bc0: 00800174 movhi r2,5
- 46bc4: 10908c04 addi r2,r2,16944
- 46bc8: 10800017 ldw r2,0(r2)
- 46bcc: f800283a ret
- 00046bd0 <__locale_msgcharset>:
- 46bd0: 00800174 movhi r2,5
- 46bd4: 108aa004 addi r2,r2,10880
- 46bd8: f800283a ret
- 00046bdc <__locale_cjk_lang>:
- 46bdc: 0005883a mov r2,zero
- 46be0: f800283a ret
- 00046be4 <_localeconv_r>:
- 46be4: 00800174 movhi r2,5
- 46be8: 108ab004 addi r2,r2,10944
- 46bec: f800283a ret
- 00046bf0 <setlocale>:
- 46bf0: 00800174 movhi r2,5
- 46bf4: 10908b04 addi r2,r2,16940
- 46bf8: 280d883a mov r6,r5
- 46bfc: 200b883a mov r5,r4
- 46c00: 11000017 ldw r4,0(r2)
- 46c04: 0046b381 jmpi 46b38 <_setlocale_r>
- 00046c08 <localeconv>:
- 46c08: 00800174 movhi r2,5
- 46c0c: 108ab004 addi r2,r2,10944
- 46c10: f800283a ret
- 00046c14 <__smakebuf_r>:
- 46c14: 2880030b ldhu r2,12(r5)
- 46c18: 10c0008c andi r3,r2,2
- 46c1c: 1800411e bne r3,zero,46d24 <__smakebuf_r+0x110>
- 46c20: deffec04 addi sp,sp,-80
- 46c24: dc000f15 stw r16,60(sp)
- 46c28: 2821883a mov r16,r5
- 46c2c: 2940038f ldh r5,14(r5)
- 46c30: dc401015 stw r17,64(sp)
- 46c34: dfc01315 stw ra,76(sp)
- 46c38: dcc01215 stw r19,72(sp)
- 46c3c: dc801115 stw r18,68(sp)
- 46c40: 2023883a mov r17,r4
- 46c44: 28001c16 blt r5,zero,46cb8 <__smakebuf_r+0xa4>
- 46c48: d80d883a mov r6,sp
- 46c4c: 004ada40 call 4ada4 <_fstat_r>
- 46c50: 10001816 blt r2,zero,46cb4 <__smakebuf_r+0xa0>
- 46c54: d8800117 ldw r2,4(sp)
- 46c58: 00e00014 movui r3,32768
- 46c5c: 10bc000c andi r2,r2,61440
- 46c60: 14c80020 cmpeqi r19,r2,8192
- 46c64: 10c03726 beq r2,r3,46d44 <__smakebuf_r+0x130>
- 46c68: 80c0030b ldhu r3,12(r16)
- 46c6c: 18c20014 ori r3,r3,2048
- 46c70: 80c0030d sth r3,12(r16)
- 46c74: 00c80004 movi r3,8192
- 46c78: 10c0521e bne r2,r3,46dc4 <__smakebuf_r+0x1b0>
- 46c7c: 8140038f ldh r5,14(r16)
- 46c80: 8809883a mov r4,r17
- 46c84: 004b2c80 call 4b2c8 <_isatty_r>
- 46c88: 10004c26 beq r2,zero,46dbc <__smakebuf_r+0x1a8>
- 46c8c: 8080030b ldhu r2,12(r16)
- 46c90: 80c010c4 addi r3,r16,67
- 46c94: 80c00015 stw r3,0(r16)
- 46c98: 10800054 ori r2,r2,1
- 46c9c: 8080030d sth r2,12(r16)
- 46ca0: 00800044 movi r2,1
- 46ca4: 80c00415 stw r3,16(r16)
- 46ca8: 80800515 stw r2,20(r16)
- 46cac: 04810004 movi r18,1024
- 46cb0: 00000706 br 46cd0 <__smakebuf_r+0xbc>
- 46cb4: 8080030b ldhu r2,12(r16)
- 46cb8: 10c0200c andi r3,r2,128
- 46cbc: 18001f1e bne r3,zero,46d3c <__smakebuf_r+0x128>
- 46cc0: 04810004 movi r18,1024
- 46cc4: 10820014 ori r2,r2,2048
- 46cc8: 8080030d sth r2,12(r16)
- 46ccc: 0027883a mov r19,zero
- 46cd0: 900b883a mov r5,r18
- 46cd4: 8809883a mov r4,r17
- 46cd8: 0046dd00 call 46dd0 <_malloc_r>
- 46cdc: 10002c26 beq r2,zero,46d90 <__smakebuf_r+0x17c>
- 46ce0: 80c0030b ldhu r3,12(r16)
- 46ce4: 01000134 movhi r4,4
- 46ce8: 21187504 addi r4,r4,25044
- 46cec: 89000f15 stw r4,60(r17)
- 46cf0: 18c02014 ori r3,r3,128
- 46cf4: 80c0030d sth r3,12(r16)
- 46cf8: 80800015 stw r2,0(r16)
- 46cfc: 80800415 stw r2,16(r16)
- 46d00: 84800515 stw r18,20(r16)
- 46d04: 98001a1e bne r19,zero,46d70 <__smakebuf_r+0x15c>
- 46d08: dfc01317 ldw ra,76(sp)
- 46d0c: dcc01217 ldw r19,72(sp)
- 46d10: dc801117 ldw r18,68(sp)
- 46d14: dc401017 ldw r17,64(sp)
- 46d18: dc000f17 ldw r16,60(sp)
- 46d1c: dec01404 addi sp,sp,80
- 46d20: f800283a ret
- 46d24: 288010c4 addi r2,r5,67
- 46d28: 28800015 stw r2,0(r5)
- 46d2c: 28800415 stw r2,16(r5)
- 46d30: 00800044 movi r2,1
- 46d34: 28800515 stw r2,20(r5)
- 46d38: f800283a ret
- 46d3c: 04801004 movi r18,64
- 46d40: 003fe006 br 46cc4 <__alt_data_end+0xfffd4cc4>
- 46d44: 81000a17 ldw r4,40(r16)
- 46d48: 00c00174 movhi r3,5
- 46d4c: 18e3b804 addi r3,r3,-28960
- 46d50: 20ffc51e bne r4,r3,46c68 <__alt_data_end+0xfffd4c68>
- 46d54: 8080030b ldhu r2,12(r16)
- 46d58: 04810004 movi r18,1024
- 46d5c: 84801315 stw r18,76(r16)
- 46d60: 1484b03a or r2,r2,r18
- 46d64: 8080030d sth r2,12(r16)
- 46d68: 0027883a mov r19,zero
- 46d6c: 003fd806 br 46cd0 <__alt_data_end+0xfffd4cd0>
- 46d70: 8140038f ldh r5,14(r16)
- 46d74: 8809883a mov r4,r17
- 46d78: 004b2c80 call 4b2c8 <_isatty_r>
- 46d7c: 103fe226 beq r2,zero,46d08 <__alt_data_end+0xfffd4d08>
- 46d80: 8080030b ldhu r2,12(r16)
- 46d84: 10800054 ori r2,r2,1
- 46d88: 8080030d sth r2,12(r16)
- 46d8c: 003fde06 br 46d08 <__alt_data_end+0xfffd4d08>
- 46d90: 8080030b ldhu r2,12(r16)
- 46d94: 10c0800c andi r3,r2,512
- 46d98: 183fdb1e bne r3,zero,46d08 <__alt_data_end+0xfffd4d08>
- 46d9c: 10800094 ori r2,r2,2
- 46da0: 80c010c4 addi r3,r16,67
- 46da4: 8080030d sth r2,12(r16)
- 46da8: 00800044 movi r2,1
- 46dac: 80c00015 stw r3,0(r16)
- 46db0: 80c00415 stw r3,16(r16)
- 46db4: 80800515 stw r2,20(r16)
- 46db8: 003fd306 br 46d08 <__alt_data_end+0xfffd4d08>
- 46dbc: 04810004 movi r18,1024
- 46dc0: 003fc306 br 46cd0 <__alt_data_end+0xfffd4cd0>
- 46dc4: 0027883a mov r19,zero
- 46dc8: 04810004 movi r18,1024
- 46dcc: 003fc006 br 46cd0 <__alt_data_end+0xfffd4cd0>
- 00046dd0 <_malloc_r>:
- 46dd0: defff504 addi sp,sp,-44
- 46dd4: dc800315 stw r18,12(sp)
- 46dd8: dfc00a15 stw ra,40(sp)
- 46ddc: df000915 stw fp,36(sp)
- 46de0: ddc00815 stw r23,32(sp)
- 46de4: dd800715 stw r22,28(sp)
- 46de8: dd400615 stw r21,24(sp)
- 46dec: dd000515 stw r20,20(sp)
- 46df0: dcc00415 stw r19,16(sp)
- 46df4: dc400215 stw r17,8(sp)
- 46df8: dc000115 stw r16,4(sp)
- 46dfc: 288002c4 addi r2,r5,11
- 46e00: 00c00584 movi r3,22
- 46e04: 2025883a mov r18,r4
- 46e08: 18807f2e bgeu r3,r2,47008 <_malloc_r+0x238>
- 46e0c: 047ffe04 movi r17,-8
- 46e10: 1462703a and r17,r2,r17
- 46e14: 8800a316 blt r17,zero,470a4 <_malloc_r+0x2d4>
- 46e18: 8940a236 bltu r17,r5,470a4 <_malloc_r+0x2d4>
- 46e1c: 004edf40 call 4edf4 <__malloc_lock>
- 46e20: 00807dc4 movi r2,503
- 46e24: 1441e92e bgeu r2,r17,475cc <_malloc_r+0x7fc>
- 46e28: 8804d27a srli r2,r17,9
- 46e2c: 1000a126 beq r2,zero,470b4 <_malloc_r+0x2e4>
- 46e30: 00c00104 movi r3,4
- 46e34: 18811e36 bltu r3,r2,472b0 <_malloc_r+0x4e0>
- 46e38: 8804d1ba srli r2,r17,6
- 46e3c: 12000e44 addi r8,r2,57
- 46e40: 11c00e04 addi r7,r2,56
- 46e44: 4209883a add r4,r8,r8
- 46e48: 04c00174 movhi r19,5
- 46e4c: 2109883a add r4,r4,r4
- 46e50: 9ccabe04 addi r19,r19,11000
- 46e54: 2109883a add r4,r4,r4
- 46e58: 9909883a add r4,r19,r4
- 46e5c: 24000117 ldw r16,4(r4)
- 46e60: 213ffe04 addi r4,r4,-8
- 46e64: 24009726 beq r4,r16,470c4 <_malloc_r+0x2f4>
- 46e68: 80800117 ldw r2,4(r16)
- 46e6c: 01bfff04 movi r6,-4
- 46e70: 014003c4 movi r5,15
- 46e74: 1184703a and r2,r2,r6
- 46e78: 1447c83a sub r3,r2,r17
- 46e7c: 28c00716 blt r5,r3,46e9c <_malloc_r+0xcc>
- 46e80: 1800920e bge r3,zero,470cc <_malloc_r+0x2fc>
- 46e84: 84000317 ldw r16,12(r16)
- 46e88: 24008e26 beq r4,r16,470c4 <_malloc_r+0x2f4>
- 46e8c: 80800117 ldw r2,4(r16)
- 46e90: 1184703a and r2,r2,r6
- 46e94: 1447c83a sub r3,r2,r17
- 46e98: 28fff90e bge r5,r3,46e80 <__alt_data_end+0xfffd4e80>
- 46e9c: 3809883a mov r4,r7
- 46ea0: 01800174 movhi r6,5
- 46ea4: 9c000417 ldw r16,16(r19)
- 46ea8: 318abe04 addi r6,r6,11000
- 46eac: 32000204 addi r8,r6,8
- 46eb0: 82013426 beq r16,r8,47384 <_malloc_r+0x5b4>
- 46eb4: 80c00117 ldw r3,4(r16)
- 46eb8: 00bfff04 movi r2,-4
- 46ebc: 188e703a and r7,r3,r2
- 46ec0: 3c45c83a sub r2,r7,r17
- 46ec4: 00c003c4 movi r3,15
- 46ec8: 18811f16 blt r3,r2,47348 <_malloc_r+0x578>
- 46ecc: 32000515 stw r8,20(r6)
- 46ed0: 32000415 stw r8,16(r6)
- 46ed4: 10007f0e bge r2,zero,470d4 <_malloc_r+0x304>
- 46ed8: 00807fc4 movi r2,511
- 46edc: 11c0fd36 bltu r2,r7,472d4 <_malloc_r+0x504>
- 46ee0: 3806d0fa srli r3,r7,3
- 46ee4: 01c00044 movi r7,1
- 46ee8: 30800117 ldw r2,4(r6)
- 46eec: 19400044 addi r5,r3,1
- 46ef0: 294b883a add r5,r5,r5
- 46ef4: 1807d0ba srai r3,r3,2
- 46ef8: 294b883a add r5,r5,r5
- 46efc: 294b883a add r5,r5,r5
- 46f00: 298b883a add r5,r5,r6
- 46f04: 38c6983a sll r3,r7,r3
- 46f08: 29c00017 ldw r7,0(r5)
- 46f0c: 2a7ffe04 addi r9,r5,-8
- 46f10: 1886b03a or r3,r3,r2
- 46f14: 82400315 stw r9,12(r16)
- 46f18: 81c00215 stw r7,8(r16)
- 46f1c: 30c00115 stw r3,4(r6)
- 46f20: 2c000015 stw r16,0(r5)
- 46f24: 3c000315 stw r16,12(r7)
- 46f28: 2005d0ba srai r2,r4,2
- 46f2c: 01400044 movi r5,1
- 46f30: 288a983a sll r5,r5,r2
- 46f34: 19406f36 bltu r3,r5,470f4 <_malloc_r+0x324>
- 46f38: 28c4703a and r2,r5,r3
- 46f3c: 10000a1e bne r2,zero,46f68 <_malloc_r+0x198>
- 46f40: 00bfff04 movi r2,-4
- 46f44: 294b883a add r5,r5,r5
- 46f48: 2088703a and r4,r4,r2
- 46f4c: 28c4703a and r2,r5,r3
- 46f50: 21000104 addi r4,r4,4
- 46f54: 1000041e bne r2,zero,46f68 <_malloc_r+0x198>
- 46f58: 294b883a add r5,r5,r5
- 46f5c: 28c4703a and r2,r5,r3
- 46f60: 21000104 addi r4,r4,4
- 46f64: 103ffc26 beq r2,zero,46f58 <__alt_data_end+0xfffd4f58>
- 46f68: 02bfff04 movi r10,-4
- 46f6c: 024003c4 movi r9,15
- 46f70: 21800044 addi r6,r4,1
- 46f74: 318d883a add r6,r6,r6
- 46f78: 318d883a add r6,r6,r6
- 46f7c: 318d883a add r6,r6,r6
- 46f80: 998d883a add r6,r19,r6
- 46f84: 333ffe04 addi r12,r6,-8
- 46f88: 2017883a mov r11,r4
- 46f8c: 31800104 addi r6,r6,4
- 46f90: 34000017 ldw r16,0(r6)
- 46f94: 31fffd04 addi r7,r6,-12
- 46f98: 81c0041e bne r16,r7,46fac <_malloc_r+0x1dc>
- 46f9c: 0000fb06 br 4738c <_malloc_r+0x5bc>
- 46fa0: 1801030e bge r3,zero,473b0 <_malloc_r+0x5e0>
- 46fa4: 84000317 ldw r16,12(r16)
- 46fa8: 81c0f826 beq r16,r7,4738c <_malloc_r+0x5bc>
- 46fac: 80800117 ldw r2,4(r16)
- 46fb0: 1284703a and r2,r2,r10
- 46fb4: 1447c83a sub r3,r2,r17
- 46fb8: 48fff90e bge r9,r3,46fa0 <__alt_data_end+0xfffd4fa0>
- 46fbc: 80800317 ldw r2,12(r16)
- 46fc0: 81000217 ldw r4,8(r16)
- 46fc4: 89400054 ori r5,r17,1
- 46fc8: 81400115 stw r5,4(r16)
- 46fcc: 20800315 stw r2,12(r4)
- 46fd0: 11000215 stw r4,8(r2)
- 46fd4: 8463883a add r17,r16,r17
- 46fd8: 9c400515 stw r17,20(r19)
- 46fdc: 9c400415 stw r17,16(r19)
- 46fe0: 18800054 ori r2,r3,1
- 46fe4: 88800115 stw r2,4(r17)
- 46fe8: 8a000315 stw r8,12(r17)
- 46fec: 8a000215 stw r8,8(r17)
- 46ff0: 88e3883a add r17,r17,r3
- 46ff4: 88c00015 stw r3,0(r17)
- 46ff8: 9009883a mov r4,r18
- 46ffc: 004ee180 call 4ee18 <__malloc_unlock>
- 47000: 80800204 addi r2,r16,8
- 47004: 00001b06 br 47074 <_malloc_r+0x2a4>
- 47008: 04400404 movi r17,16
- 4700c: 89402536 bltu r17,r5,470a4 <_malloc_r+0x2d4>
- 47010: 004edf40 call 4edf4 <__malloc_lock>
- 47014: 00800184 movi r2,6
- 47018: 01000084 movi r4,2
- 4701c: 04c00174 movhi r19,5
- 47020: 1085883a add r2,r2,r2
- 47024: 9ccabe04 addi r19,r19,11000
- 47028: 1085883a add r2,r2,r2
- 4702c: 9885883a add r2,r19,r2
- 47030: 14000117 ldw r16,4(r2)
- 47034: 10fffe04 addi r3,r2,-8
- 47038: 80c0d926 beq r16,r3,473a0 <_malloc_r+0x5d0>
- 4703c: 80c00117 ldw r3,4(r16)
- 47040: 81000317 ldw r4,12(r16)
- 47044: 00bfff04 movi r2,-4
- 47048: 1884703a and r2,r3,r2
- 4704c: 81400217 ldw r5,8(r16)
- 47050: 8085883a add r2,r16,r2
- 47054: 10c00117 ldw r3,4(r2)
- 47058: 29000315 stw r4,12(r5)
- 4705c: 21400215 stw r5,8(r4)
- 47060: 18c00054 ori r3,r3,1
- 47064: 10c00115 stw r3,4(r2)
- 47068: 9009883a mov r4,r18
- 4706c: 004ee180 call 4ee18 <__malloc_unlock>
- 47070: 80800204 addi r2,r16,8
- 47074: dfc00a17 ldw ra,40(sp)
- 47078: df000917 ldw fp,36(sp)
- 4707c: ddc00817 ldw r23,32(sp)
- 47080: dd800717 ldw r22,28(sp)
- 47084: dd400617 ldw r21,24(sp)
- 47088: dd000517 ldw r20,20(sp)
- 4708c: dcc00417 ldw r19,16(sp)
- 47090: dc800317 ldw r18,12(sp)
- 47094: dc400217 ldw r17,8(sp)
- 47098: dc000117 ldw r16,4(sp)
- 4709c: dec00b04 addi sp,sp,44
- 470a0: f800283a ret
- 470a4: 00800304 movi r2,12
- 470a8: 90800015 stw r2,0(r18)
- 470ac: 0005883a mov r2,zero
- 470b0: 003ff006 br 47074 <__alt_data_end+0xfffd5074>
- 470b4: 01002004 movi r4,128
- 470b8: 02001004 movi r8,64
- 470bc: 01c00fc4 movi r7,63
- 470c0: 003f6106 br 46e48 <__alt_data_end+0xfffd4e48>
- 470c4: 4009883a mov r4,r8
- 470c8: 003f7506 br 46ea0 <__alt_data_end+0xfffd4ea0>
- 470cc: 81000317 ldw r4,12(r16)
- 470d0: 003fde06 br 4704c <__alt_data_end+0xfffd504c>
- 470d4: 81c5883a add r2,r16,r7
- 470d8: 11400117 ldw r5,4(r2)
- 470dc: 9009883a mov r4,r18
- 470e0: 29400054 ori r5,r5,1
- 470e4: 11400115 stw r5,4(r2)
- 470e8: 004ee180 call 4ee18 <__malloc_unlock>
- 470ec: 80800204 addi r2,r16,8
- 470f0: 003fe006 br 47074 <__alt_data_end+0xfffd5074>
- 470f4: 9c000217 ldw r16,8(r19)
- 470f8: 00bfff04 movi r2,-4
- 470fc: 85800117 ldw r22,4(r16)
- 47100: b0ac703a and r22,r22,r2
- 47104: b4400336 bltu r22,r17,47114 <_malloc_r+0x344>
- 47108: b445c83a sub r2,r22,r17
- 4710c: 00c003c4 movi r3,15
- 47110: 18805d16 blt r3,r2,47288 <_malloc_r+0x4b8>
- 47114: 05c00174 movhi r23,5
- 47118: 00800174 movhi r2,5
- 4711c: 1097aa04 addi r2,r2,24232
- 47120: bdd08d04 addi r23,r23,16948
- 47124: 15400017 ldw r21,0(r2)
- 47128: b8c00017 ldw r3,0(r23)
- 4712c: 00bfffc4 movi r2,-1
- 47130: 858d883a add r6,r16,r22
- 47134: 8d6b883a add r21,r17,r21
- 47138: 1880ea26 beq r3,r2,474e4 <_malloc_r+0x714>
- 4713c: ad4403c4 addi r21,r21,4111
- 47140: 00bc0004 movi r2,-4096
- 47144: a8aa703a and r21,r21,r2
- 47148: a80b883a mov r5,r21
- 4714c: 9009883a mov r4,r18
- 47150: d9800015 stw r6,0(sp)
- 47154: 0048db40 call 48db4 <_sbrk_r>
- 47158: 1029883a mov r20,r2
- 4715c: 00bfffc4 movi r2,-1
- 47160: d9800017 ldw r6,0(sp)
- 47164: a080e826 beq r20,r2,47508 <_malloc_r+0x738>
- 47168: a180a636 bltu r20,r6,47404 <_malloc_r+0x634>
- 4716c: 07000174 movhi fp,5
- 47170: e717b304 addi fp,fp,24268
- 47174: e0800017 ldw r2,0(fp)
- 47178: a887883a add r3,r21,r2
- 4717c: e0c00015 stw r3,0(fp)
- 47180: 3500e626 beq r6,r20,4751c <_malloc_r+0x74c>
- 47184: b9000017 ldw r4,0(r23)
- 47188: 00bfffc4 movi r2,-1
- 4718c: 2080ee26 beq r4,r2,47548 <_malloc_r+0x778>
- 47190: a185c83a sub r2,r20,r6
- 47194: 10c5883a add r2,r2,r3
- 47198: e0800015 stw r2,0(fp)
- 4719c: a0c001cc andi r3,r20,7
- 471a0: 1800bc26 beq r3,zero,47494 <_malloc_r+0x6c4>
- 471a4: a0e9c83a sub r20,r20,r3
- 471a8: 00840204 movi r2,4104
- 471ac: a5000204 addi r20,r20,8
- 471b0: 10c7c83a sub r3,r2,r3
- 471b4: a545883a add r2,r20,r21
- 471b8: 1083ffcc andi r2,r2,4095
- 471bc: 18abc83a sub r21,r3,r2
- 471c0: a80b883a mov r5,r21
- 471c4: 9009883a mov r4,r18
- 471c8: 0048db40 call 48db4 <_sbrk_r>
- 471cc: 00ffffc4 movi r3,-1
- 471d0: 10c0e126 beq r2,r3,47558 <_malloc_r+0x788>
- 471d4: 1505c83a sub r2,r2,r20
- 471d8: 1545883a add r2,r2,r21
- 471dc: 10800054 ori r2,r2,1
- 471e0: e0c00017 ldw r3,0(fp)
- 471e4: 9d000215 stw r20,8(r19)
- 471e8: a0800115 stw r2,4(r20)
- 471ec: a8c7883a add r3,r21,r3
- 471f0: e0c00015 stw r3,0(fp)
- 471f4: 84c00e26 beq r16,r19,47230 <_malloc_r+0x460>
- 471f8: 018003c4 movi r6,15
- 471fc: 3580a72e bgeu r6,r22,4749c <_malloc_r+0x6cc>
- 47200: 81400117 ldw r5,4(r16)
- 47204: 013ffe04 movi r4,-8
- 47208: b0bffd04 addi r2,r22,-12
- 4720c: 1104703a and r2,r2,r4
- 47210: 2900004c andi r4,r5,1
- 47214: 2088b03a or r4,r4,r2
- 47218: 81000115 stw r4,4(r16)
- 4721c: 01400144 movi r5,5
- 47220: 8089883a add r4,r16,r2
- 47224: 21400115 stw r5,4(r4)
- 47228: 21400215 stw r5,8(r4)
- 4722c: 3080cd36 bltu r6,r2,47564 <_malloc_r+0x794>
- 47230: 00800174 movhi r2,5
- 47234: 1097a904 addi r2,r2,24228
- 47238: 11000017 ldw r4,0(r2)
- 4723c: 20c0012e bgeu r4,r3,47244 <_malloc_r+0x474>
- 47240: 10c00015 stw r3,0(r2)
- 47244: 00800174 movhi r2,5
- 47248: 1097a804 addi r2,r2,24224
- 4724c: 11000017 ldw r4,0(r2)
- 47250: 9c000217 ldw r16,8(r19)
- 47254: 20c0012e bgeu r4,r3,4725c <_malloc_r+0x48c>
- 47258: 10c00015 stw r3,0(r2)
- 4725c: 80c00117 ldw r3,4(r16)
- 47260: 00bfff04 movi r2,-4
- 47264: 1886703a and r3,r3,r2
- 47268: 1c45c83a sub r2,r3,r17
- 4726c: 1c400236 bltu r3,r17,47278 <_malloc_r+0x4a8>
- 47270: 00c003c4 movi r3,15
- 47274: 18800416 blt r3,r2,47288 <_malloc_r+0x4b8>
- 47278: 9009883a mov r4,r18
- 4727c: 004ee180 call 4ee18 <__malloc_unlock>
- 47280: 0005883a mov r2,zero
- 47284: 003f7b06 br 47074 <__alt_data_end+0xfffd5074>
- 47288: 88c00054 ori r3,r17,1
- 4728c: 80c00115 stw r3,4(r16)
- 47290: 8463883a add r17,r16,r17
- 47294: 10800054 ori r2,r2,1
- 47298: 9c400215 stw r17,8(r19)
- 4729c: 88800115 stw r2,4(r17)
- 472a0: 9009883a mov r4,r18
- 472a4: 004ee180 call 4ee18 <__malloc_unlock>
- 472a8: 80800204 addi r2,r16,8
- 472ac: 003f7106 br 47074 <__alt_data_end+0xfffd5074>
- 472b0: 00c00504 movi r3,20
- 472b4: 18804a2e bgeu r3,r2,473e0 <_malloc_r+0x610>
- 472b8: 00c01504 movi r3,84
- 472bc: 18806e36 bltu r3,r2,47478 <_malloc_r+0x6a8>
- 472c0: 8804d33a srli r2,r17,12
- 472c4: 12001bc4 addi r8,r2,111
- 472c8: 11c01b84 addi r7,r2,110
- 472cc: 4209883a add r4,r8,r8
- 472d0: 003edd06 br 46e48 <__alt_data_end+0xfffd4e48>
- 472d4: 3804d27a srli r2,r7,9
- 472d8: 00c00104 movi r3,4
- 472dc: 1880442e bgeu r3,r2,473f0 <_malloc_r+0x620>
- 472e0: 00c00504 movi r3,20
- 472e4: 18808136 bltu r3,r2,474ec <_malloc_r+0x71c>
- 472e8: 11401704 addi r5,r2,92
- 472ec: 10c016c4 addi r3,r2,91
- 472f0: 294b883a add r5,r5,r5
- 472f4: 294b883a add r5,r5,r5
- 472f8: 294b883a add r5,r5,r5
- 472fc: 994b883a add r5,r19,r5
- 47300: 28800017 ldw r2,0(r5)
- 47304: 01800174 movhi r6,5
- 47308: 297ffe04 addi r5,r5,-8
- 4730c: 318abe04 addi r6,r6,11000
- 47310: 28806526 beq r5,r2,474a8 <_malloc_r+0x6d8>
- 47314: 01bfff04 movi r6,-4
- 47318: 10c00117 ldw r3,4(r2)
- 4731c: 1986703a and r3,r3,r6
- 47320: 38c0022e bgeu r7,r3,4732c <_malloc_r+0x55c>
- 47324: 10800217 ldw r2,8(r2)
- 47328: 28bffb1e bne r5,r2,47318 <__alt_data_end+0xfffd5318>
- 4732c: 11400317 ldw r5,12(r2)
- 47330: 98c00117 ldw r3,4(r19)
- 47334: 81400315 stw r5,12(r16)
- 47338: 80800215 stw r2,8(r16)
- 4733c: 2c000215 stw r16,8(r5)
- 47340: 14000315 stw r16,12(r2)
- 47344: 003ef806 br 46f28 <__alt_data_end+0xfffd4f28>
- 47348: 88c00054 ori r3,r17,1
- 4734c: 80c00115 stw r3,4(r16)
- 47350: 8463883a add r17,r16,r17
- 47354: 34400515 stw r17,20(r6)
- 47358: 34400415 stw r17,16(r6)
- 4735c: 10c00054 ori r3,r2,1
- 47360: 8a000315 stw r8,12(r17)
- 47364: 8a000215 stw r8,8(r17)
- 47368: 88c00115 stw r3,4(r17)
- 4736c: 88a3883a add r17,r17,r2
- 47370: 88800015 stw r2,0(r17)
- 47374: 9009883a mov r4,r18
- 47378: 004ee180 call 4ee18 <__malloc_unlock>
- 4737c: 80800204 addi r2,r16,8
- 47380: 003f3c06 br 47074 <__alt_data_end+0xfffd5074>
- 47384: 30c00117 ldw r3,4(r6)
- 47388: 003ee706 br 46f28 <__alt_data_end+0xfffd4f28>
- 4738c: 5ac00044 addi r11,r11,1
- 47390: 588000cc andi r2,r11,3
- 47394: 31800204 addi r6,r6,8
- 47398: 103efd1e bne r2,zero,46f90 <__alt_data_end+0xfffd4f90>
- 4739c: 00002406 br 47430 <_malloc_r+0x660>
- 473a0: 14000317 ldw r16,12(r2)
- 473a4: 143f251e bne r2,r16,4703c <__alt_data_end+0xfffd503c>
- 473a8: 21000084 addi r4,r4,2
- 473ac: 003ebc06 br 46ea0 <__alt_data_end+0xfffd4ea0>
- 473b0: 8085883a add r2,r16,r2
- 473b4: 10c00117 ldw r3,4(r2)
- 473b8: 81000317 ldw r4,12(r16)
- 473bc: 81400217 ldw r5,8(r16)
- 473c0: 18c00054 ori r3,r3,1
- 473c4: 10c00115 stw r3,4(r2)
- 473c8: 29000315 stw r4,12(r5)
- 473cc: 21400215 stw r5,8(r4)
- 473d0: 9009883a mov r4,r18
- 473d4: 004ee180 call 4ee18 <__malloc_unlock>
- 473d8: 80800204 addi r2,r16,8
- 473dc: 003f2506 br 47074 <__alt_data_end+0xfffd5074>
- 473e0: 12001704 addi r8,r2,92
- 473e4: 11c016c4 addi r7,r2,91
- 473e8: 4209883a add r4,r8,r8
- 473ec: 003e9606 br 46e48 <__alt_data_end+0xfffd4e48>
- 473f0: 3804d1ba srli r2,r7,6
- 473f4: 11400e44 addi r5,r2,57
- 473f8: 10c00e04 addi r3,r2,56
- 473fc: 294b883a add r5,r5,r5
- 47400: 003fbc06 br 472f4 <__alt_data_end+0xfffd52f4>
- 47404: 84ff5926 beq r16,r19,4716c <__alt_data_end+0xfffd516c>
- 47408: 00800174 movhi r2,5
- 4740c: 108abe04 addi r2,r2,11000
- 47410: 14000217 ldw r16,8(r2)
- 47414: 00bfff04 movi r2,-4
- 47418: 80c00117 ldw r3,4(r16)
- 4741c: 1886703a and r3,r3,r2
- 47420: 003f9106 br 47268 <__alt_data_end+0xfffd5268>
- 47424: 60800217 ldw r2,8(r12)
- 47428: 213fffc4 addi r4,r4,-1
- 4742c: 1300651e bne r2,r12,475c4 <_malloc_r+0x7f4>
- 47430: 208000cc andi r2,r4,3
- 47434: 633ffe04 addi r12,r12,-8
- 47438: 103ffa1e bne r2,zero,47424 <__alt_data_end+0xfffd5424>
- 4743c: 98800117 ldw r2,4(r19)
- 47440: 0146303a nor r3,zero,r5
- 47444: 1884703a and r2,r3,r2
- 47448: 98800115 stw r2,4(r19)
- 4744c: 294b883a add r5,r5,r5
- 47450: 117f2836 bltu r2,r5,470f4 <__alt_data_end+0xfffd50f4>
- 47454: 283f2726 beq r5,zero,470f4 <__alt_data_end+0xfffd50f4>
- 47458: 2886703a and r3,r5,r2
- 4745c: 5809883a mov r4,r11
- 47460: 183ec31e bne r3,zero,46f70 <__alt_data_end+0xfffd4f70>
- 47464: 294b883a add r5,r5,r5
- 47468: 2886703a and r3,r5,r2
- 4746c: 21000104 addi r4,r4,4
- 47470: 183ffc26 beq r3,zero,47464 <__alt_data_end+0xfffd5464>
- 47474: 003ebe06 br 46f70 <__alt_data_end+0xfffd4f70>
- 47478: 00c05504 movi r3,340
- 4747c: 18801236 bltu r3,r2,474c8 <_malloc_r+0x6f8>
- 47480: 8804d3fa srli r2,r17,15
- 47484: 12001e04 addi r8,r2,120
- 47488: 11c01dc4 addi r7,r2,119
- 4748c: 4209883a add r4,r8,r8
- 47490: 003e6d06 br 46e48 <__alt_data_end+0xfffd4e48>
- 47494: 00c40004 movi r3,4096
- 47498: 003f4606 br 471b4 <__alt_data_end+0xfffd51b4>
- 4749c: 00800044 movi r2,1
- 474a0: a0800115 stw r2,4(r20)
- 474a4: 003f7406 br 47278 <__alt_data_end+0xfffd5278>
- 474a8: 1805d0ba srai r2,r3,2
- 474ac: 01c00044 movi r7,1
- 474b0: 30c00117 ldw r3,4(r6)
- 474b4: 388e983a sll r7,r7,r2
- 474b8: 2805883a mov r2,r5
- 474bc: 38c6b03a or r3,r7,r3
- 474c0: 30c00115 stw r3,4(r6)
- 474c4: 003f9b06 br 47334 <__alt_data_end+0xfffd5334>
- 474c8: 00c15504 movi r3,1364
- 474cc: 18801a36 bltu r3,r2,47538 <_malloc_r+0x768>
- 474d0: 8804d4ba srli r2,r17,18
- 474d4: 12001f44 addi r8,r2,125
- 474d8: 11c01f04 addi r7,r2,124
- 474dc: 4209883a add r4,r8,r8
- 474e0: 003e5906 br 46e48 <__alt_data_end+0xfffd4e48>
- 474e4: ad400404 addi r21,r21,16
- 474e8: 003f1706 br 47148 <__alt_data_end+0xfffd5148>
- 474ec: 00c01504 movi r3,84
- 474f0: 18802336 bltu r3,r2,47580 <_malloc_r+0x7b0>
- 474f4: 3804d33a srli r2,r7,12
- 474f8: 11401bc4 addi r5,r2,111
- 474fc: 10c01b84 addi r3,r2,110
- 47500: 294b883a add r5,r5,r5
- 47504: 003f7b06 br 472f4 <__alt_data_end+0xfffd52f4>
- 47508: 9c000217 ldw r16,8(r19)
- 4750c: 00bfff04 movi r2,-4
- 47510: 80c00117 ldw r3,4(r16)
- 47514: 1886703a and r3,r3,r2
- 47518: 003f5306 br 47268 <__alt_data_end+0xfffd5268>
- 4751c: 3083ffcc andi r2,r6,4095
- 47520: 103f181e bne r2,zero,47184 <__alt_data_end+0xfffd5184>
- 47524: 99000217 ldw r4,8(r19)
- 47528: b545883a add r2,r22,r21
- 4752c: 10800054 ori r2,r2,1
- 47530: 20800115 stw r2,4(r4)
- 47534: 003f3e06 br 47230 <__alt_data_end+0xfffd5230>
- 47538: 01003f84 movi r4,254
- 4753c: 02001fc4 movi r8,127
- 47540: 01c01f84 movi r7,126
- 47544: 003e4006 br 46e48 <__alt_data_end+0xfffd4e48>
- 47548: 00800174 movhi r2,5
- 4754c: 10908d04 addi r2,r2,16948
- 47550: 15000015 stw r20,0(r2)
- 47554: 003f1106 br 4719c <__alt_data_end+0xfffd519c>
- 47558: 00800044 movi r2,1
- 4755c: 002b883a mov r21,zero
- 47560: 003f1f06 br 471e0 <__alt_data_end+0xfffd51e0>
- 47564: 81400204 addi r5,r16,8
- 47568: 9009883a mov r4,r18
- 4756c: 00466a00 call 466a0 <_free_r>
- 47570: 00800174 movhi r2,5
- 47574: 1097b304 addi r2,r2,24268
- 47578: 10c00017 ldw r3,0(r2)
- 4757c: 003f2c06 br 47230 <__alt_data_end+0xfffd5230>
- 47580: 00c05504 movi r3,340
- 47584: 18800536 bltu r3,r2,4759c <_malloc_r+0x7cc>
- 47588: 3804d3fa srli r2,r7,15
- 4758c: 11401e04 addi r5,r2,120
- 47590: 10c01dc4 addi r3,r2,119
- 47594: 294b883a add r5,r5,r5
- 47598: 003f5606 br 472f4 <__alt_data_end+0xfffd52f4>
- 4759c: 00c15504 movi r3,1364
- 475a0: 18800536 bltu r3,r2,475b8 <_malloc_r+0x7e8>
- 475a4: 3804d4ba srli r2,r7,18
- 475a8: 11401f44 addi r5,r2,125
- 475ac: 10c01f04 addi r3,r2,124
- 475b0: 294b883a add r5,r5,r5
- 475b4: 003f4f06 br 472f4 <__alt_data_end+0xfffd52f4>
- 475b8: 01403f84 movi r5,254
- 475bc: 00c01f84 movi r3,126
- 475c0: 003f4c06 br 472f4 <__alt_data_end+0xfffd52f4>
- 475c4: 98800117 ldw r2,4(r19)
- 475c8: 003fa006 br 4744c <__alt_data_end+0xfffd544c>
- 475cc: 8808d0fa srli r4,r17,3
- 475d0: 20800044 addi r2,r4,1
- 475d4: 1085883a add r2,r2,r2
- 475d8: 003e9006 br 4701c <__alt_data_end+0xfffd501c>
- 000475dc <memchr>:
- 475dc: 208000cc andi r2,r4,3
- 475e0: 280f883a mov r7,r5
- 475e4: 10003426 beq r2,zero,476b8 <memchr+0xdc>
- 475e8: 30bfffc4 addi r2,r6,-1
- 475ec: 30001a26 beq r6,zero,47658 <memchr+0x7c>
- 475f0: 20c00003 ldbu r3,0(r4)
- 475f4: 29803fcc andi r6,r5,255
- 475f8: 30c0051e bne r6,r3,47610 <memchr+0x34>
- 475fc: 00001806 br 47660 <memchr+0x84>
- 47600: 10001526 beq r2,zero,47658 <memchr+0x7c>
- 47604: 20c00003 ldbu r3,0(r4)
- 47608: 10bfffc4 addi r2,r2,-1
- 4760c: 30c01426 beq r6,r3,47660 <memchr+0x84>
- 47610: 21000044 addi r4,r4,1
- 47614: 20c000cc andi r3,r4,3
- 47618: 183ff91e bne r3,zero,47600 <__alt_data_end+0xfffd5600>
- 4761c: 020000c4 movi r8,3
- 47620: 40801136 bltu r8,r2,47668 <memchr+0x8c>
- 47624: 10000c26 beq r2,zero,47658 <memchr+0x7c>
- 47628: 20c00003 ldbu r3,0(r4)
- 4762c: 29403fcc andi r5,r5,255
- 47630: 28c00b26 beq r5,r3,47660 <memchr+0x84>
- 47634: 20c00044 addi r3,r4,1
- 47638: 39803fcc andi r6,r7,255
- 4763c: 2089883a add r4,r4,r2
- 47640: 00000306 br 47650 <memchr+0x74>
- 47644: 18c00044 addi r3,r3,1
- 47648: 197fffc3 ldbu r5,-1(r3)
- 4764c: 31400526 beq r6,r5,47664 <memchr+0x88>
- 47650: 1805883a mov r2,r3
- 47654: 20fffb1e bne r4,r3,47644 <__alt_data_end+0xfffd5644>
- 47658: 0005883a mov r2,zero
- 4765c: f800283a ret
- 47660: 2005883a mov r2,r4
- 47664: f800283a ret
- 47668: 28c03fcc andi r3,r5,255
- 4766c: 1812923a slli r9,r3,8
- 47670: 02ffbff4 movhi r11,65279
- 47674: 02a02074 movhi r10,32897
- 47678: 48d2b03a or r9,r9,r3
- 4767c: 4806943a slli r3,r9,16
- 47680: 5affbfc4 addi r11,r11,-257
- 47684: 52a02004 addi r10,r10,-32640
- 47688: 48d2b03a or r9,r9,r3
- 4768c: 20c00017 ldw r3,0(r4)
- 47690: 48c6f03a xor r3,r9,r3
- 47694: 1acd883a add r6,r3,r11
- 47698: 00c6303a nor r3,zero,r3
- 4769c: 30c6703a and r3,r6,r3
- 476a0: 1a86703a and r3,r3,r10
- 476a4: 183fe01e bne r3,zero,47628 <__alt_data_end+0xfffd5628>
- 476a8: 10bfff04 addi r2,r2,-4
- 476ac: 21000104 addi r4,r4,4
- 476b0: 40bff636 bltu r8,r2,4768c <__alt_data_end+0xfffd568c>
- 476b4: 003fdb06 br 47624 <__alt_data_end+0xfffd5624>
- 476b8: 3005883a mov r2,r6
- 476bc: 003fd706 br 4761c <__alt_data_end+0xfffd561c>
- 000476c0 <memcpy>:
- 476c0: defffd04 addi sp,sp,-12
- 476c4: dfc00215 stw ra,8(sp)
- 476c8: dc400115 stw r17,4(sp)
- 476cc: dc000015 stw r16,0(sp)
- 476d0: 00c003c4 movi r3,15
- 476d4: 2005883a mov r2,r4
- 476d8: 1980452e bgeu r3,r6,477f0 <memcpy+0x130>
- 476dc: 2906b03a or r3,r5,r4
- 476e0: 18c000cc andi r3,r3,3
- 476e4: 1800441e bne r3,zero,477f8 <memcpy+0x138>
- 476e8: 347ffc04 addi r17,r6,-16
- 476ec: 8822d13a srli r17,r17,4
- 476f0: 28c00104 addi r3,r5,4
- 476f4: 23400104 addi r13,r4,4
- 476f8: 8820913a slli r16,r17,4
- 476fc: 2b000204 addi r12,r5,8
- 47700: 22c00204 addi r11,r4,8
- 47704: 84000504 addi r16,r16,20
- 47708: 2a800304 addi r10,r5,12
- 4770c: 22400304 addi r9,r4,12
- 47710: 2c21883a add r16,r5,r16
- 47714: 2811883a mov r8,r5
- 47718: 200f883a mov r7,r4
- 4771c: 41000017 ldw r4,0(r8)
- 47720: 1fc00017 ldw ra,0(r3)
- 47724: 63c00017 ldw r15,0(r12)
- 47728: 39000015 stw r4,0(r7)
- 4772c: 53800017 ldw r14,0(r10)
- 47730: 6fc00015 stw ra,0(r13)
- 47734: 5bc00015 stw r15,0(r11)
- 47738: 4b800015 stw r14,0(r9)
- 4773c: 18c00404 addi r3,r3,16
- 47740: 39c00404 addi r7,r7,16
- 47744: 42000404 addi r8,r8,16
- 47748: 6b400404 addi r13,r13,16
- 4774c: 63000404 addi r12,r12,16
- 47750: 5ac00404 addi r11,r11,16
- 47754: 52800404 addi r10,r10,16
- 47758: 4a400404 addi r9,r9,16
- 4775c: 1c3fef1e bne r3,r16,4771c <__alt_data_end+0xfffd571c>
- 47760: 89c00044 addi r7,r17,1
- 47764: 380e913a slli r7,r7,4
- 47768: 310003cc andi r4,r6,15
- 4776c: 02c000c4 movi r11,3
- 47770: 11c7883a add r3,r2,r7
- 47774: 29cb883a add r5,r5,r7
- 47778: 5900212e bgeu r11,r4,47800 <memcpy+0x140>
- 4777c: 1813883a mov r9,r3
- 47780: 2811883a mov r8,r5
- 47784: 200f883a mov r7,r4
- 47788: 42800017 ldw r10,0(r8)
- 4778c: 4a400104 addi r9,r9,4
- 47790: 39ffff04 addi r7,r7,-4
- 47794: 4abfff15 stw r10,-4(r9)
- 47798: 42000104 addi r8,r8,4
- 4779c: 59fffa36 bltu r11,r7,47788 <__alt_data_end+0xfffd5788>
- 477a0: 213fff04 addi r4,r4,-4
- 477a4: 2008d0ba srli r4,r4,2
- 477a8: 318000cc andi r6,r6,3
- 477ac: 21000044 addi r4,r4,1
- 477b0: 2109883a add r4,r4,r4
- 477b4: 2109883a add r4,r4,r4
- 477b8: 1907883a add r3,r3,r4
- 477bc: 290b883a add r5,r5,r4
- 477c0: 30000626 beq r6,zero,477dc <memcpy+0x11c>
- 477c4: 198d883a add r6,r3,r6
- 477c8: 29c00003 ldbu r7,0(r5)
- 477cc: 18c00044 addi r3,r3,1
- 477d0: 29400044 addi r5,r5,1
- 477d4: 19ffffc5 stb r7,-1(r3)
- 477d8: 19bffb1e bne r3,r6,477c8 <__alt_data_end+0xfffd57c8>
- 477dc: dfc00217 ldw ra,8(sp)
- 477e0: dc400117 ldw r17,4(sp)
- 477e4: dc000017 ldw r16,0(sp)
- 477e8: dec00304 addi sp,sp,12
- 477ec: f800283a ret
- 477f0: 2007883a mov r3,r4
- 477f4: 003ff206 br 477c0 <__alt_data_end+0xfffd57c0>
- 477f8: 2007883a mov r3,r4
- 477fc: 003ff106 br 477c4 <__alt_data_end+0xfffd57c4>
- 47800: 200d883a mov r6,r4
- 47804: 003fee06 br 477c0 <__alt_data_end+0xfffd57c0>
- 00047808 <memset>:
- 47808: 20c000cc andi r3,r4,3
- 4780c: 2005883a mov r2,r4
- 47810: 18004426 beq r3,zero,47924 <memset+0x11c>
- 47814: 31ffffc4 addi r7,r6,-1
- 47818: 30004026 beq r6,zero,4791c <memset+0x114>
- 4781c: 2813883a mov r9,r5
- 47820: 200d883a mov r6,r4
- 47824: 2007883a mov r3,r4
- 47828: 00000406 br 4783c <memset+0x34>
- 4782c: 3a3fffc4 addi r8,r7,-1
- 47830: 31800044 addi r6,r6,1
- 47834: 38003926 beq r7,zero,4791c <memset+0x114>
- 47838: 400f883a mov r7,r8
- 4783c: 18c00044 addi r3,r3,1
- 47840: 32400005 stb r9,0(r6)
- 47844: 1a0000cc andi r8,r3,3
- 47848: 403ff81e bne r8,zero,4782c <__alt_data_end+0xfffd582c>
- 4784c: 010000c4 movi r4,3
- 47850: 21c02d2e bgeu r4,r7,47908 <memset+0x100>
- 47854: 29003fcc andi r4,r5,255
- 47858: 200c923a slli r6,r4,8
- 4785c: 3108b03a or r4,r6,r4
- 47860: 200c943a slli r6,r4,16
- 47864: 218cb03a or r6,r4,r6
- 47868: 010003c4 movi r4,15
- 4786c: 21c0182e bgeu r4,r7,478d0 <memset+0xc8>
- 47870: 3b3ffc04 addi r12,r7,-16
- 47874: 6018d13a srli r12,r12,4
- 47878: 1a000104 addi r8,r3,4
- 4787c: 1ac00204 addi r11,r3,8
- 47880: 6008913a slli r4,r12,4
- 47884: 1a800304 addi r10,r3,12
- 47888: 1813883a mov r9,r3
- 4788c: 21000504 addi r4,r4,20
- 47890: 1909883a add r4,r3,r4
- 47894: 49800015 stw r6,0(r9)
- 47898: 41800015 stw r6,0(r8)
- 4789c: 59800015 stw r6,0(r11)
- 478a0: 51800015 stw r6,0(r10)
- 478a4: 42000404 addi r8,r8,16
- 478a8: 4a400404 addi r9,r9,16
- 478ac: 5ac00404 addi r11,r11,16
- 478b0: 52800404 addi r10,r10,16
- 478b4: 413ff71e bne r8,r4,47894 <__alt_data_end+0xfffd5894>
- 478b8: 63000044 addi r12,r12,1
- 478bc: 6018913a slli r12,r12,4
- 478c0: 39c003cc andi r7,r7,15
- 478c4: 010000c4 movi r4,3
- 478c8: 1b07883a add r3,r3,r12
- 478cc: 21c00e2e bgeu r4,r7,47908 <memset+0x100>
- 478d0: 1813883a mov r9,r3
- 478d4: 3811883a mov r8,r7
- 478d8: 010000c4 movi r4,3
- 478dc: 49800015 stw r6,0(r9)
- 478e0: 423fff04 addi r8,r8,-4
- 478e4: 4a400104 addi r9,r9,4
- 478e8: 223ffc36 bltu r4,r8,478dc <__alt_data_end+0xfffd58dc>
- 478ec: 393fff04 addi r4,r7,-4
- 478f0: 2008d0ba srli r4,r4,2
- 478f4: 39c000cc andi r7,r7,3
- 478f8: 21000044 addi r4,r4,1
- 478fc: 2109883a add r4,r4,r4
- 47900: 2109883a add r4,r4,r4
- 47904: 1907883a add r3,r3,r4
- 47908: 38000526 beq r7,zero,47920 <memset+0x118>
- 4790c: 19cf883a add r7,r3,r7
- 47910: 19400005 stb r5,0(r3)
- 47914: 18c00044 addi r3,r3,1
- 47918: 38fffd1e bne r7,r3,47910 <__alt_data_end+0xfffd5910>
- 4791c: f800283a ret
- 47920: f800283a ret
- 47924: 2007883a mov r3,r4
- 47928: 300f883a mov r7,r6
- 4792c: 003fc706 br 4784c <__alt_data_end+0xfffd584c>
- 00047930 <_Balloc>:
- 47930: 20801317 ldw r2,76(r4)
- 47934: defffc04 addi sp,sp,-16
- 47938: dc400115 stw r17,4(sp)
- 4793c: dc000015 stw r16,0(sp)
- 47940: dfc00315 stw ra,12(sp)
- 47944: dc800215 stw r18,8(sp)
- 47948: 2023883a mov r17,r4
- 4794c: 2821883a mov r16,r5
- 47950: 10000f26 beq r2,zero,47990 <_Balloc+0x60>
- 47954: 8407883a add r3,r16,r16
- 47958: 18c7883a add r3,r3,r3
- 4795c: 10c7883a add r3,r2,r3
- 47960: 18800017 ldw r2,0(r3)
- 47964: 10001126 beq r2,zero,479ac <_Balloc+0x7c>
- 47968: 11000017 ldw r4,0(r2)
- 4796c: 19000015 stw r4,0(r3)
- 47970: 10000415 stw zero,16(r2)
- 47974: 10000315 stw zero,12(r2)
- 47978: dfc00317 ldw ra,12(sp)
- 4797c: dc800217 ldw r18,8(sp)
- 47980: dc400117 ldw r17,4(sp)
- 47984: dc000017 ldw r16,0(sp)
- 47988: dec00404 addi sp,sp,16
- 4798c: f800283a ret
- 47990: 01800844 movi r6,33
- 47994: 01400104 movi r5,4
- 47998: 004a9bc0 call 4a9bc <_calloc_r>
- 4799c: 88801315 stw r2,76(r17)
- 479a0: 103fec1e bne r2,zero,47954 <__alt_data_end+0xfffd5954>
- 479a4: 0005883a mov r2,zero
- 479a8: 003ff306 br 47978 <__alt_data_end+0xfffd5978>
- 479ac: 01400044 movi r5,1
- 479b0: 2c24983a sll r18,r5,r16
- 479b4: 8809883a mov r4,r17
- 479b8: 91800144 addi r6,r18,5
- 479bc: 318d883a add r6,r6,r6
- 479c0: 318d883a add r6,r6,r6
- 479c4: 004a9bc0 call 4a9bc <_calloc_r>
- 479c8: 103ff626 beq r2,zero,479a4 <__alt_data_end+0xfffd59a4>
- 479cc: 14000115 stw r16,4(r2)
- 479d0: 14800215 stw r18,8(r2)
- 479d4: 003fe606 br 47970 <__alt_data_end+0xfffd5970>
- 000479d8 <_Bfree>:
- 479d8: 28000826 beq r5,zero,479fc <_Bfree+0x24>
- 479dc: 28c00117 ldw r3,4(r5)
- 479e0: 20801317 ldw r2,76(r4)
- 479e4: 18c7883a add r3,r3,r3
- 479e8: 18c7883a add r3,r3,r3
- 479ec: 10c5883a add r2,r2,r3
- 479f0: 10c00017 ldw r3,0(r2)
- 479f4: 28c00015 stw r3,0(r5)
- 479f8: 11400015 stw r5,0(r2)
- 479fc: f800283a ret
- 00047a00 <__multadd>:
- 47a00: defff704 addi sp,sp,-36
- 47a04: dc800215 stw r18,8(sp)
- 47a08: 2c800417 ldw r18,16(r5)
- 47a0c: dd800615 stw r22,24(sp)
- 47a10: dd400515 stw r21,20(sp)
- 47a14: dd000415 stw r20,16(sp)
- 47a18: dcc00315 stw r19,12(sp)
- 47a1c: dc400115 stw r17,4(sp)
- 47a20: dc000015 stw r16,0(sp)
- 47a24: dfc00815 stw ra,32(sp)
- 47a28: ddc00715 stw r23,28(sp)
- 47a2c: 2827883a mov r19,r5
- 47a30: 2029883a mov r20,r4
- 47a34: 3023883a mov r17,r6
- 47a38: 3821883a mov r16,r7
- 47a3c: 2d400504 addi r21,r5,20
- 47a40: 002d883a mov r22,zero
- 47a44: adc00017 ldw r23,0(r21)
- 47a48: 880b883a mov r5,r17
- 47a4c: ad400104 addi r21,r21,4
- 47a50: b93fffcc andi r4,r23,65535
- 47a54: 004c9f80 call 4c9f8 <__mulsi3>
- 47a58: b808d43a srli r4,r23,16
- 47a5c: 880b883a mov r5,r17
- 47a60: 1421883a add r16,r2,r16
- 47a64: 004c9f80 call 4c9f8 <__mulsi3>
- 47a68: 800ed43a srli r7,r16,16
- 47a6c: 80ffffcc andi r3,r16,65535
- 47a70: b5800044 addi r22,r22,1
- 47a74: 11c5883a add r2,r2,r7
- 47a78: 100e943a slli r7,r2,16
- 47a7c: 1020d43a srli r16,r2,16
- 47a80: 38c7883a add r3,r7,r3
- 47a84: a8ffff15 stw r3,-4(r21)
- 47a88: b4bfee16 blt r22,r18,47a44 <__alt_data_end+0xfffd5a44>
- 47a8c: 80000926 beq r16,zero,47ab4 <__multadd+0xb4>
- 47a90: 98800217 ldw r2,8(r19)
- 47a94: 9080130e bge r18,r2,47ae4 <__multadd+0xe4>
- 47a98: 90800144 addi r2,r18,5
- 47a9c: 1085883a add r2,r2,r2
- 47aa0: 1085883a add r2,r2,r2
- 47aa4: 9885883a add r2,r19,r2
- 47aa8: 14000015 stw r16,0(r2)
- 47aac: 94800044 addi r18,r18,1
- 47ab0: 9c800415 stw r18,16(r19)
- 47ab4: 9805883a mov r2,r19
- 47ab8: dfc00817 ldw ra,32(sp)
- 47abc: ddc00717 ldw r23,28(sp)
- 47ac0: dd800617 ldw r22,24(sp)
- 47ac4: dd400517 ldw r21,20(sp)
- 47ac8: dd000417 ldw r20,16(sp)
- 47acc: dcc00317 ldw r19,12(sp)
- 47ad0: dc800217 ldw r18,8(sp)
- 47ad4: dc400117 ldw r17,4(sp)
- 47ad8: dc000017 ldw r16,0(sp)
- 47adc: dec00904 addi sp,sp,36
- 47ae0: f800283a ret
- 47ae4: 99400117 ldw r5,4(r19)
- 47ae8: a009883a mov r4,r20
- 47aec: 29400044 addi r5,r5,1
- 47af0: 00479300 call 47930 <_Balloc>
- 47af4: 99800417 ldw r6,16(r19)
- 47af8: 99400304 addi r5,r19,12
- 47afc: 11000304 addi r4,r2,12
- 47b00: 31800084 addi r6,r6,2
- 47b04: 318d883a add r6,r6,r6
- 47b08: 318d883a add r6,r6,r6
- 47b0c: 1023883a mov r17,r2
- 47b10: 00476c00 call 476c0 <memcpy>
- 47b14: 98000a26 beq r19,zero,47b40 <__multadd+0x140>
- 47b18: 98c00117 ldw r3,4(r19)
- 47b1c: a0801317 ldw r2,76(r20)
- 47b20: 18c7883a add r3,r3,r3
- 47b24: 18c7883a add r3,r3,r3
- 47b28: 10c5883a add r2,r2,r3
- 47b2c: 10c00017 ldw r3,0(r2)
- 47b30: 98c00015 stw r3,0(r19)
- 47b34: 14c00015 stw r19,0(r2)
- 47b38: 8827883a mov r19,r17
- 47b3c: 003fd606 br 47a98 <__alt_data_end+0xfffd5a98>
- 47b40: 8827883a mov r19,r17
- 47b44: 003fd406 br 47a98 <__alt_data_end+0xfffd5a98>
- 00047b48 <__s2b>:
- 47b48: defff904 addi sp,sp,-28
- 47b4c: dc400115 stw r17,4(sp)
- 47b50: dc000015 stw r16,0(sp)
- 47b54: 2023883a mov r17,r4
- 47b58: 2821883a mov r16,r5
- 47b5c: 39000204 addi r4,r7,8
- 47b60: 01400244 movi r5,9
- 47b64: dcc00315 stw r19,12(sp)
- 47b68: dc800215 stw r18,8(sp)
- 47b6c: dfc00615 stw ra,24(sp)
- 47b70: dd400515 stw r21,20(sp)
- 47b74: dd000415 stw r20,16(sp)
- 47b78: 3825883a mov r18,r7
- 47b7c: 3027883a mov r19,r6
- 47b80: 004c8440 call 4c844 <__divsi3>
- 47b84: 00c00044 movi r3,1
- 47b88: 000b883a mov r5,zero
- 47b8c: 1880030e bge r3,r2,47b9c <__s2b+0x54>
- 47b90: 18c7883a add r3,r3,r3
- 47b94: 29400044 addi r5,r5,1
- 47b98: 18bffd16 blt r3,r2,47b90 <__alt_data_end+0xfffd5b90>
- 47b9c: 8809883a mov r4,r17
- 47ba0: 00479300 call 47930 <_Balloc>
- 47ba4: d8c00717 ldw r3,28(sp)
- 47ba8: 10c00515 stw r3,20(r2)
- 47bac: 00c00044 movi r3,1
- 47bb0: 10c00415 stw r3,16(r2)
- 47bb4: 00c00244 movi r3,9
- 47bb8: 1cc0210e bge r3,r19,47c40 <__s2b+0xf8>
- 47bbc: 80eb883a add r21,r16,r3
- 47bc0: a829883a mov r20,r21
- 47bc4: 84e1883a add r16,r16,r19
- 47bc8: a1c00007 ldb r7,0(r20)
- 47bcc: 01800284 movi r6,10
- 47bd0: a5000044 addi r20,r20,1
- 47bd4: 100b883a mov r5,r2
- 47bd8: 39fff404 addi r7,r7,-48
- 47bdc: 8809883a mov r4,r17
- 47be0: 0047a000 call 47a00 <__multadd>
- 47be4: a43ff81e bne r20,r16,47bc8 <__alt_data_end+0xfffd5bc8>
- 47be8: ace1883a add r16,r21,r19
- 47bec: 843ffe04 addi r16,r16,-8
- 47bf0: 9c800a0e bge r19,r18,47c1c <__s2b+0xd4>
- 47bf4: 94e5c83a sub r18,r18,r19
- 47bf8: 84a5883a add r18,r16,r18
- 47bfc: 81c00007 ldb r7,0(r16)
- 47c00: 01800284 movi r6,10
- 47c04: 84000044 addi r16,r16,1
- 47c08: 100b883a mov r5,r2
- 47c0c: 39fff404 addi r7,r7,-48
- 47c10: 8809883a mov r4,r17
- 47c14: 0047a000 call 47a00 <__multadd>
- 47c18: 84bff81e bne r16,r18,47bfc <__alt_data_end+0xfffd5bfc>
- 47c1c: dfc00617 ldw ra,24(sp)
- 47c20: dd400517 ldw r21,20(sp)
- 47c24: dd000417 ldw r20,16(sp)
- 47c28: dcc00317 ldw r19,12(sp)
- 47c2c: dc800217 ldw r18,8(sp)
- 47c30: dc400117 ldw r17,4(sp)
- 47c34: dc000017 ldw r16,0(sp)
- 47c38: dec00704 addi sp,sp,28
- 47c3c: f800283a ret
- 47c40: 84000284 addi r16,r16,10
- 47c44: 1827883a mov r19,r3
- 47c48: 003fe906 br 47bf0 <__alt_data_end+0xfffd5bf0>
- 00047c4c <__hi0bits>:
- 47c4c: 20bfffec andhi r2,r4,65535
- 47c50: 1000141e bne r2,zero,47ca4 <__hi0bits+0x58>
- 47c54: 2008943a slli r4,r4,16
- 47c58: 00800404 movi r2,16
- 47c5c: 20ffc02c andhi r3,r4,65280
- 47c60: 1800021e bne r3,zero,47c6c <__hi0bits+0x20>
- 47c64: 2008923a slli r4,r4,8
- 47c68: 10800204 addi r2,r2,8
- 47c6c: 20fc002c andhi r3,r4,61440
- 47c70: 1800021e bne r3,zero,47c7c <__hi0bits+0x30>
- 47c74: 2008913a slli r4,r4,4
- 47c78: 10800104 addi r2,r2,4
- 47c7c: 20f0002c andhi r3,r4,49152
- 47c80: 1800031e bne r3,zero,47c90 <__hi0bits+0x44>
- 47c84: 2109883a add r4,r4,r4
- 47c88: 10800084 addi r2,r2,2
- 47c8c: 2109883a add r4,r4,r4
- 47c90: 20000316 blt r4,zero,47ca0 <__hi0bits+0x54>
- 47c94: 2110002c andhi r4,r4,16384
- 47c98: 2000041e bne r4,zero,47cac <__hi0bits+0x60>
- 47c9c: 00800804 movi r2,32
- 47ca0: f800283a ret
- 47ca4: 0005883a mov r2,zero
- 47ca8: 003fec06 br 47c5c <__alt_data_end+0xfffd5c5c>
- 47cac: 10800044 addi r2,r2,1
- 47cb0: f800283a ret
- 00047cb4 <__lo0bits>:
- 47cb4: 20c00017 ldw r3,0(r4)
- 47cb8: 188001cc andi r2,r3,7
- 47cbc: 10000826 beq r2,zero,47ce0 <__lo0bits+0x2c>
- 47cc0: 1880004c andi r2,r3,1
- 47cc4: 1000211e bne r2,zero,47d4c <__lo0bits+0x98>
- 47cc8: 1880008c andi r2,r3,2
- 47ccc: 1000211e bne r2,zero,47d54 <__lo0bits+0xa0>
- 47cd0: 1806d0ba srli r3,r3,2
- 47cd4: 00800084 movi r2,2
- 47cd8: 20c00015 stw r3,0(r4)
- 47cdc: f800283a ret
- 47ce0: 18bfffcc andi r2,r3,65535
- 47ce4: 10001326 beq r2,zero,47d34 <__lo0bits+0x80>
- 47ce8: 0005883a mov r2,zero
- 47cec: 19403fcc andi r5,r3,255
- 47cf0: 2800021e bne r5,zero,47cfc <__lo0bits+0x48>
- 47cf4: 1806d23a srli r3,r3,8
- 47cf8: 10800204 addi r2,r2,8
- 47cfc: 194003cc andi r5,r3,15
- 47d00: 2800021e bne r5,zero,47d0c <__lo0bits+0x58>
- 47d04: 1806d13a srli r3,r3,4
- 47d08: 10800104 addi r2,r2,4
- 47d0c: 194000cc andi r5,r3,3
- 47d10: 2800021e bne r5,zero,47d1c <__lo0bits+0x68>
- 47d14: 1806d0ba srli r3,r3,2
- 47d18: 10800084 addi r2,r2,2
- 47d1c: 1940004c andi r5,r3,1
- 47d20: 2800081e bne r5,zero,47d44 <__lo0bits+0x90>
- 47d24: 1806d07a srli r3,r3,1
- 47d28: 1800051e bne r3,zero,47d40 <__lo0bits+0x8c>
- 47d2c: 00800804 movi r2,32
- 47d30: f800283a ret
- 47d34: 1806d43a srli r3,r3,16
- 47d38: 00800404 movi r2,16
- 47d3c: 003feb06 br 47cec <__alt_data_end+0xfffd5cec>
- 47d40: 10800044 addi r2,r2,1
- 47d44: 20c00015 stw r3,0(r4)
- 47d48: f800283a ret
- 47d4c: 0005883a mov r2,zero
- 47d50: f800283a ret
- 47d54: 1806d07a srli r3,r3,1
- 47d58: 00800044 movi r2,1
- 47d5c: 20c00015 stw r3,0(r4)
- 47d60: f800283a ret
- 00047d64 <__i2b>:
- 47d64: defffd04 addi sp,sp,-12
- 47d68: dc000015 stw r16,0(sp)
- 47d6c: 04000044 movi r16,1
- 47d70: dc400115 stw r17,4(sp)
- 47d74: 2823883a mov r17,r5
- 47d78: 800b883a mov r5,r16
- 47d7c: dfc00215 stw ra,8(sp)
- 47d80: 00479300 call 47930 <_Balloc>
- 47d84: 14400515 stw r17,20(r2)
- 47d88: 14000415 stw r16,16(r2)
- 47d8c: dfc00217 ldw ra,8(sp)
- 47d90: dc400117 ldw r17,4(sp)
- 47d94: dc000017 ldw r16,0(sp)
- 47d98: dec00304 addi sp,sp,12
- 47d9c: f800283a ret
- 00047da0 <__multiply>:
- 47da0: deffef04 addi sp,sp,-68
- 47da4: dc400815 stw r17,32(sp)
- 47da8: dc000715 stw r16,28(sp)
- 47dac: 34400417 ldw r17,16(r6)
- 47db0: 2c000417 ldw r16,16(r5)
- 47db4: dd800d15 stw r22,52(sp)
- 47db8: dc800915 stw r18,36(sp)
- 47dbc: dfc01015 stw ra,64(sp)
- 47dc0: df000f15 stw fp,60(sp)
- 47dc4: ddc00e15 stw r23,56(sp)
- 47dc8: dd400c15 stw r21,48(sp)
- 47dcc: dd000b15 stw r20,44(sp)
- 47dd0: dcc00a15 stw r19,40(sp)
- 47dd4: 2825883a mov r18,r5
- 47dd8: 302d883a mov r22,r6
- 47ddc: 8440050e bge r16,r17,47df4 <__multiply+0x54>
- 47de0: 8007883a mov r3,r16
- 47de4: 3025883a mov r18,r6
- 47de8: 8821883a mov r16,r17
- 47dec: 282d883a mov r22,r5
- 47df0: 1823883a mov r17,r3
- 47df4: 90800217 ldw r2,8(r18)
- 47df8: 8447883a add r3,r16,r17
- 47dfc: d8c00215 stw r3,8(sp)
- 47e00: 91400117 ldw r5,4(r18)
- 47e04: 10c0010e bge r2,r3,47e0c <__multiply+0x6c>
- 47e08: 29400044 addi r5,r5,1
- 47e0c: 00479300 call 47930 <_Balloc>
- 47e10: d8c00217 ldw r3,8(sp)
- 47e14: d8800615 stw r2,24(sp)
- 47e18: 18eb883a add r21,r3,r3
- 47e1c: ad6b883a add r21,r21,r21
- 47e20: 10c00504 addi r3,r2,20
- 47e24: 1d6b883a add r21,r3,r21
- 47e28: d8c00115 stw r3,4(sp)
- 47e2c: dd400315 stw r21,12(sp)
- 47e30: 1805883a mov r2,r3
- 47e34: 1d40042e bgeu r3,r21,47e48 <__multiply+0xa8>
- 47e38: d8c00317 ldw r3,12(sp)
- 47e3c: 10000015 stw zero,0(r2)
- 47e40: 10800104 addi r2,r2,4
- 47e44: 10fffc36 bltu r2,r3,47e38 <__alt_data_end+0xfffd5e38>
- 47e48: 8c63883a add r17,r17,r17
- 47e4c: b5800504 addi r22,r22,20
- 47e50: 8c63883a add r17,r17,r17
- 47e54: 94800504 addi r18,r18,20
- 47e58: 8421883a add r16,r16,r16
- 47e5c: b463883a add r17,r22,r17
- 47e60: 8421883a add r16,r16,r16
- 47e64: dd800015 stw r22,0(sp)
- 47e68: dc800415 stw r18,16(sp)
- 47e6c: dc400515 stw r17,20(sp)
- 47e70: 9429883a add r20,r18,r16
- 47e74: b4404f2e bgeu r22,r17,47fb4 <__multiply+0x214>
- 47e78: d8c00017 ldw r3,0(sp)
- 47e7c: 1c800017 ldw r18,0(r3)
- 47e80: 947fffcc andi r17,r18,65535
- 47e84: 88001e26 beq r17,zero,47f00 <__multiply+0x160>
- 47e88: dd800117 ldw r22,4(sp)
- 47e8c: dd400417 ldw r21,16(sp)
- 47e90: 0027883a mov r19,zero
- 47e94: ac800017 ldw r18,0(r21)
- 47e98: b4000017 ldw r16,0(r22)
- 47e9c: 880b883a mov r5,r17
- 47ea0: 913fffcc andi r4,r18,65535
- 47ea4: 004c9f80 call 4c9f8 <__mulsi3>
- 47ea8: 9008d43a srli r4,r18,16
- 47eac: 84bfffcc andi r18,r16,65535
- 47eb0: 1485883a add r2,r2,r18
- 47eb4: 14e5883a add r18,r2,r19
- 47eb8: 8020d43a srli r16,r16,16
- 47ebc: 9026d43a srli r19,r18,16
- 47ec0: 880b883a mov r5,r17
- 47ec4: 004c9f80 call 4c9f8 <__mulsi3>
- 47ec8: 1405883a add r2,r2,r16
- 47ecc: 14e1883a add r16,r2,r19
- 47ed0: 90ffffcc andi r3,r18,65535
- 47ed4: 8024943a slli r18,r16,16
- 47ed8: ad400104 addi r21,r21,4
- 47edc: b005883a mov r2,r22
- 47ee0: 90c6b03a or r3,r18,r3
- 47ee4: b0c00015 stw r3,0(r22)
- 47ee8: 8026d43a srli r19,r16,16
- 47eec: b5800104 addi r22,r22,4
- 47ef0: ad3fe836 bltu r21,r20,47e94 <__alt_data_end+0xfffd5e94>
- 47ef4: d8c00017 ldw r3,0(sp)
- 47ef8: 14c00115 stw r19,4(r2)
- 47efc: 1c800017 ldw r18,0(r3)
- 47f00: 9024d43a srli r18,r18,16
- 47f04: 90002226 beq r18,zero,47f90 <__multiply+0x1f0>
- 47f08: d8c00117 ldw r3,4(sp)
- 47f0c: dd800417 ldw r22,16(sp)
- 47f10: 002f883a mov r23,zero
- 47f14: 1f000017 ldw fp,0(r3)
- 47f18: 1823883a mov r17,r3
- 47f1c: 182b883a mov r21,r3
- 47f20: e021883a mov r16,fp
- 47f24: 00000106 br 47f2c <__multiply+0x18c>
- 47f28: 982b883a mov r21,r19
- 47f2c: b100000b ldhu r4,0(r22)
- 47f30: 8020d43a srli r16,r16,16
- 47f34: 900b883a mov r5,r18
- 47f38: 004c9f80 call 4c9f8 <__mulsi3>
- 47f3c: 1405883a add r2,r2,r16
- 47f40: 15ef883a add r23,r2,r23
- 47f44: b804943a slli r2,r23,16
- 47f48: e0ffffcc andi r3,fp,65535
- 47f4c: 8c400104 addi r17,r17,4
- 47f50: 10c6b03a or r3,r2,r3
- 47f54: 88ffff15 stw r3,-4(r17)
- 47f58: b5800104 addi r22,r22,4
- 47f5c: b13fff17 ldw r4,-4(r22)
- 47f60: acc00104 addi r19,r21,4
- 47f64: 900b883a mov r5,r18
- 47f68: 2008d43a srli r4,r4,16
- 47f6c: 9c000017 ldw r16,0(r19)
- 47f70: 004c9f80 call 4c9f8 <__mulsi3>
- 47f74: b806d43a srli r3,r23,16
- 47f78: 813fffcc andi r4,r16,65535
- 47f7c: 1105883a add r2,r2,r4
- 47f80: 10f9883a add fp,r2,r3
- 47f84: e02ed43a srli r23,fp,16
- 47f88: b53fe736 bltu r22,r20,47f28 <__alt_data_end+0xfffd5f28>
- 47f8c: af000115 stw fp,4(r21)
- 47f90: d8c00017 ldw r3,0(sp)
- 47f94: d9000517 ldw r4,20(sp)
- 47f98: 18c00104 addi r3,r3,4
- 47f9c: d8c00015 stw r3,0(sp)
- 47fa0: d8c00117 ldw r3,4(sp)
- 47fa4: 18c00104 addi r3,r3,4
- 47fa8: d8c00115 stw r3,4(sp)
- 47fac: d8c00017 ldw r3,0(sp)
- 47fb0: 193fb136 bltu r3,r4,47e78 <__alt_data_end+0xfffd5e78>
- 47fb4: d8c00217 ldw r3,8(sp)
- 47fb8: 00c00c0e bge zero,r3,47fec <__multiply+0x24c>
- 47fbc: d8c00317 ldw r3,12(sp)
- 47fc0: 18bfff17 ldw r2,-4(r3)
- 47fc4: 1d7fff04 addi r21,r3,-4
- 47fc8: 10000326 beq r2,zero,47fd8 <__multiply+0x238>
- 47fcc: 00000706 br 47fec <__multiply+0x24c>
- 47fd0: a8800017 ldw r2,0(r21)
- 47fd4: 1000051e bne r2,zero,47fec <__multiply+0x24c>
- 47fd8: d8c00217 ldw r3,8(sp)
- 47fdc: ad7fff04 addi r21,r21,-4
- 47fe0: 18ffffc4 addi r3,r3,-1
- 47fe4: d8c00215 stw r3,8(sp)
- 47fe8: 183ff91e bne r3,zero,47fd0 <__alt_data_end+0xfffd5fd0>
- 47fec: d8c00617 ldw r3,24(sp)
- 47ff0: d9000217 ldw r4,8(sp)
- 47ff4: 1805883a mov r2,r3
- 47ff8: 19000415 stw r4,16(r3)
- 47ffc: dfc01017 ldw ra,64(sp)
- 48000: df000f17 ldw fp,60(sp)
- 48004: ddc00e17 ldw r23,56(sp)
- 48008: dd800d17 ldw r22,52(sp)
- 4800c: dd400c17 ldw r21,48(sp)
- 48010: dd000b17 ldw r20,44(sp)
- 48014: dcc00a17 ldw r19,40(sp)
- 48018: dc800917 ldw r18,36(sp)
- 4801c: dc400817 ldw r17,32(sp)
- 48020: dc000717 ldw r16,28(sp)
- 48024: dec01104 addi sp,sp,68
- 48028: f800283a ret
- 0004802c <__pow5mult>:
- 4802c: defffa04 addi sp,sp,-24
- 48030: dcc00315 stw r19,12(sp)
- 48034: dc000015 stw r16,0(sp)
- 48038: dfc00515 stw ra,20(sp)
- 4803c: dd000415 stw r20,16(sp)
- 48040: dc800215 stw r18,8(sp)
- 48044: dc400115 stw r17,4(sp)
- 48048: 308000cc andi r2,r6,3
- 4804c: 3021883a mov r16,r6
- 48050: 2027883a mov r19,r4
- 48054: 10002f1e bne r2,zero,48114 <__pow5mult+0xe8>
- 48058: 2825883a mov r18,r5
- 4805c: 8021d0ba srai r16,r16,2
- 48060: 80001a26 beq r16,zero,480cc <__pow5mult+0xa0>
- 48064: 9c401217 ldw r17,72(r19)
- 48068: 8800061e bne r17,zero,48084 <__pow5mult+0x58>
- 4806c: 00003406 br 48140 <__pow5mult+0x114>
- 48070: 8021d07a srai r16,r16,1
- 48074: 80001526 beq r16,zero,480cc <__pow5mult+0xa0>
- 48078: 88800017 ldw r2,0(r17)
- 4807c: 10001c26 beq r2,zero,480f0 <__pow5mult+0xc4>
- 48080: 1023883a mov r17,r2
- 48084: 8080004c andi r2,r16,1
- 48088: 103ff926 beq r2,zero,48070 <__alt_data_end+0xfffd6070>
- 4808c: 880d883a mov r6,r17
- 48090: 900b883a mov r5,r18
- 48094: 9809883a mov r4,r19
- 48098: 0047da00 call 47da0 <__multiply>
- 4809c: 90001b26 beq r18,zero,4810c <__pow5mult+0xe0>
- 480a0: 91000117 ldw r4,4(r18)
- 480a4: 98c01317 ldw r3,76(r19)
- 480a8: 8021d07a srai r16,r16,1
- 480ac: 2109883a add r4,r4,r4
- 480b0: 2109883a add r4,r4,r4
- 480b4: 1907883a add r3,r3,r4
- 480b8: 19000017 ldw r4,0(r3)
- 480bc: 91000015 stw r4,0(r18)
- 480c0: 1c800015 stw r18,0(r3)
- 480c4: 1025883a mov r18,r2
- 480c8: 803feb1e bne r16,zero,48078 <__alt_data_end+0xfffd6078>
- 480cc: 9005883a mov r2,r18
- 480d0: dfc00517 ldw ra,20(sp)
- 480d4: dd000417 ldw r20,16(sp)
- 480d8: dcc00317 ldw r19,12(sp)
- 480dc: dc800217 ldw r18,8(sp)
- 480e0: dc400117 ldw r17,4(sp)
- 480e4: dc000017 ldw r16,0(sp)
- 480e8: dec00604 addi sp,sp,24
- 480ec: f800283a ret
- 480f0: 880d883a mov r6,r17
- 480f4: 880b883a mov r5,r17
- 480f8: 9809883a mov r4,r19
- 480fc: 0047da00 call 47da0 <__multiply>
- 48100: 88800015 stw r2,0(r17)
- 48104: 10000015 stw zero,0(r2)
- 48108: 003fdd06 br 48080 <__alt_data_end+0xfffd6080>
- 4810c: 1025883a mov r18,r2
- 48110: 003fd706 br 48070 <__alt_data_end+0xfffd6070>
- 48114: 10bfffc4 addi r2,r2,-1
- 48118: 1085883a add r2,r2,r2
- 4811c: 00c00174 movhi r3,5
- 48120: 18c89704 addi r3,r3,8796
- 48124: 1085883a add r2,r2,r2
- 48128: 1885883a add r2,r3,r2
- 4812c: 11800017 ldw r6,0(r2)
- 48130: 000f883a mov r7,zero
- 48134: 0047a000 call 47a00 <__multadd>
- 48138: 1025883a mov r18,r2
- 4813c: 003fc706 br 4805c <__alt_data_end+0xfffd605c>
- 48140: 05000044 movi r20,1
- 48144: a00b883a mov r5,r20
- 48148: 9809883a mov r4,r19
- 4814c: 00479300 call 47930 <_Balloc>
- 48150: 1023883a mov r17,r2
- 48154: 00809c44 movi r2,625
- 48158: 88800515 stw r2,20(r17)
- 4815c: 8d000415 stw r20,16(r17)
- 48160: 9c401215 stw r17,72(r19)
- 48164: 88000015 stw zero,0(r17)
- 48168: 003fc606 br 48084 <__alt_data_end+0xfffd6084>
- 0004816c <__lshift>:
- 4816c: defff904 addi sp,sp,-28
- 48170: dd400515 stw r21,20(sp)
- 48174: dcc00315 stw r19,12(sp)
- 48178: 302bd17a srai r21,r6,5
- 4817c: 2cc00417 ldw r19,16(r5)
- 48180: 28800217 ldw r2,8(r5)
- 48184: dd000415 stw r20,16(sp)
- 48188: ace7883a add r19,r21,r19
- 4818c: dc800215 stw r18,8(sp)
- 48190: dc400115 stw r17,4(sp)
- 48194: dc000015 stw r16,0(sp)
- 48198: dfc00615 stw ra,24(sp)
- 4819c: 9c000044 addi r16,r19,1
- 481a0: 2823883a mov r17,r5
- 481a4: 3029883a mov r20,r6
- 481a8: 2025883a mov r18,r4
- 481ac: 29400117 ldw r5,4(r5)
- 481b0: 1400030e bge r2,r16,481c0 <__lshift+0x54>
- 481b4: 1085883a add r2,r2,r2
- 481b8: 29400044 addi r5,r5,1
- 481bc: 143ffd16 blt r2,r16,481b4 <__alt_data_end+0xfffd61b4>
- 481c0: 9009883a mov r4,r18
- 481c4: 00479300 call 47930 <_Balloc>
- 481c8: 10c00504 addi r3,r2,20
- 481cc: 0540070e bge zero,r21,481ec <__lshift+0x80>
- 481d0: ad6b883a add r21,r21,r21
- 481d4: ad6b883a add r21,r21,r21
- 481d8: 1809883a mov r4,r3
- 481dc: 1d47883a add r3,r3,r21
- 481e0: 20000015 stw zero,0(r4)
- 481e4: 21000104 addi r4,r4,4
- 481e8: 193ffd1e bne r3,r4,481e0 <__alt_data_end+0xfffd61e0>
- 481ec: 8a000417 ldw r8,16(r17)
- 481f0: 89000504 addi r4,r17,20
- 481f4: a18007cc andi r6,r20,31
- 481f8: 4211883a add r8,r8,r8
- 481fc: 4211883a add r8,r8,r8
- 48200: 2211883a add r8,r4,r8
- 48204: 30002326 beq r6,zero,48294 <__lshift+0x128>
- 48208: 02400804 movi r9,32
- 4820c: 4993c83a sub r9,r9,r6
- 48210: 000b883a mov r5,zero
- 48214: 21c00017 ldw r7,0(r4)
- 48218: 1815883a mov r10,r3
- 4821c: 18c00104 addi r3,r3,4
- 48220: 398e983a sll r7,r7,r6
- 48224: 21000104 addi r4,r4,4
- 48228: 394ab03a or r5,r7,r5
- 4822c: 197fff15 stw r5,-4(r3)
- 48230: 217fff17 ldw r5,-4(r4)
- 48234: 2a4ad83a srl r5,r5,r9
- 48238: 223ff636 bltu r4,r8,48214 <__alt_data_end+0xfffd6214>
- 4823c: 51400115 stw r5,4(r10)
- 48240: 28001a1e bne r5,zero,482ac <__lshift+0x140>
- 48244: 843fffc4 addi r16,r16,-1
- 48248: 14000415 stw r16,16(r2)
- 4824c: 88000826 beq r17,zero,48270 <__lshift+0x104>
- 48250: 89000117 ldw r4,4(r17)
- 48254: 90c01317 ldw r3,76(r18)
- 48258: 2109883a add r4,r4,r4
- 4825c: 2109883a add r4,r4,r4
- 48260: 1907883a add r3,r3,r4
- 48264: 19000017 ldw r4,0(r3)
- 48268: 89000015 stw r4,0(r17)
- 4826c: 1c400015 stw r17,0(r3)
- 48270: dfc00617 ldw ra,24(sp)
- 48274: dd400517 ldw r21,20(sp)
- 48278: dd000417 ldw r20,16(sp)
- 4827c: dcc00317 ldw r19,12(sp)
- 48280: dc800217 ldw r18,8(sp)
- 48284: dc400117 ldw r17,4(sp)
- 48288: dc000017 ldw r16,0(sp)
- 4828c: dec00704 addi sp,sp,28
- 48290: f800283a ret
- 48294: 21400017 ldw r5,0(r4)
- 48298: 18c00104 addi r3,r3,4
- 4829c: 21000104 addi r4,r4,4
- 482a0: 197fff15 stw r5,-4(r3)
- 482a4: 223ffb36 bltu r4,r8,48294 <__alt_data_end+0xfffd6294>
- 482a8: 003fe606 br 48244 <__alt_data_end+0xfffd6244>
- 482ac: 9c000084 addi r16,r19,2
- 482b0: 003fe406 br 48244 <__alt_data_end+0xfffd6244>
- 000482b4 <__mcmp>:
- 482b4: 20800417 ldw r2,16(r4)
- 482b8: 28c00417 ldw r3,16(r5)
- 482bc: 10c5c83a sub r2,r2,r3
- 482c0: 1000111e bne r2,zero,48308 <__mcmp+0x54>
- 482c4: 18c7883a add r3,r3,r3
- 482c8: 18c7883a add r3,r3,r3
- 482cc: 21000504 addi r4,r4,20
- 482d0: 29400504 addi r5,r5,20
- 482d4: 20c5883a add r2,r4,r3
- 482d8: 28cb883a add r5,r5,r3
- 482dc: 00000106 br 482e4 <__mcmp+0x30>
- 482e0: 20800a2e bgeu r4,r2,4830c <__mcmp+0x58>
- 482e4: 10bfff04 addi r2,r2,-4
- 482e8: 297fff04 addi r5,r5,-4
- 482ec: 11800017 ldw r6,0(r2)
- 482f0: 28c00017 ldw r3,0(r5)
- 482f4: 30fffa26 beq r6,r3,482e0 <__alt_data_end+0xfffd62e0>
- 482f8: 30c00236 bltu r6,r3,48304 <__mcmp+0x50>
- 482fc: 00800044 movi r2,1
- 48300: f800283a ret
- 48304: 00bfffc4 movi r2,-1
- 48308: f800283a ret
- 4830c: 0005883a mov r2,zero
- 48310: f800283a ret
- 00048314 <__mdiff>:
- 48314: 28c00417 ldw r3,16(r5)
- 48318: 30800417 ldw r2,16(r6)
- 4831c: defffa04 addi sp,sp,-24
- 48320: dcc00315 stw r19,12(sp)
- 48324: dc800215 stw r18,8(sp)
- 48328: dfc00515 stw ra,20(sp)
- 4832c: dd000415 stw r20,16(sp)
- 48330: dc400115 stw r17,4(sp)
- 48334: dc000015 stw r16,0(sp)
- 48338: 1887c83a sub r3,r3,r2
- 4833c: 2825883a mov r18,r5
- 48340: 3027883a mov r19,r6
- 48344: 1800141e bne r3,zero,48398 <__mdiff+0x84>
- 48348: 1085883a add r2,r2,r2
- 4834c: 1085883a add r2,r2,r2
- 48350: 2a000504 addi r8,r5,20
- 48354: 34000504 addi r16,r6,20
- 48358: 4087883a add r3,r8,r2
- 4835c: 8085883a add r2,r16,r2
- 48360: 00000106 br 48368 <__mdiff+0x54>
- 48364: 40c0592e bgeu r8,r3,484cc <__mdiff+0x1b8>
- 48368: 18ffff04 addi r3,r3,-4
- 4836c: 10bfff04 addi r2,r2,-4
- 48370: 19c00017 ldw r7,0(r3)
- 48374: 11400017 ldw r5,0(r2)
- 48378: 397ffa26 beq r7,r5,48364 <__alt_data_end+0xfffd6364>
- 4837c: 3940592e bgeu r7,r5,484e4 <__mdiff+0x1d0>
- 48380: 9005883a mov r2,r18
- 48384: 4023883a mov r17,r8
- 48388: 9825883a mov r18,r19
- 4838c: 05000044 movi r20,1
- 48390: 1027883a mov r19,r2
- 48394: 00000406 br 483a8 <__mdiff+0x94>
- 48398: 18005616 blt r3,zero,484f4 <__mdiff+0x1e0>
- 4839c: 34400504 addi r17,r6,20
- 483a0: 2c000504 addi r16,r5,20
- 483a4: 0029883a mov r20,zero
- 483a8: 91400117 ldw r5,4(r18)
- 483ac: 00479300 call 47930 <_Balloc>
- 483b0: 92400417 ldw r9,16(r18)
- 483b4: 9b000417 ldw r12,16(r19)
- 483b8: 12c00504 addi r11,r2,20
- 483bc: 4a51883a add r8,r9,r9
- 483c0: 6319883a add r12,r12,r12
- 483c4: 4211883a add r8,r8,r8
- 483c8: 6319883a add r12,r12,r12
- 483cc: 15000315 stw r20,12(r2)
- 483d0: 8211883a add r8,r16,r8
- 483d4: 8b19883a add r12,r17,r12
- 483d8: 0007883a mov r3,zero
- 483dc: 81400017 ldw r5,0(r16)
- 483e0: 89c00017 ldw r7,0(r17)
- 483e4: 59800104 addi r6,r11,4
- 483e8: 293fffcc andi r4,r5,65535
- 483ec: 20c7883a add r3,r4,r3
- 483f0: 393fffcc andi r4,r7,65535
- 483f4: 1909c83a sub r4,r3,r4
- 483f8: 280ad43a srli r5,r5,16
- 483fc: 380ed43a srli r7,r7,16
- 48400: 2007d43a srai r3,r4,16
- 48404: 213fffcc andi r4,r4,65535
- 48408: 29cbc83a sub r5,r5,r7
- 4840c: 28c7883a add r3,r5,r3
- 48410: 180a943a slli r5,r3,16
- 48414: 8c400104 addi r17,r17,4
- 48418: 84000104 addi r16,r16,4
- 4841c: 2908b03a or r4,r5,r4
- 48420: 59000015 stw r4,0(r11)
- 48424: 1807d43a srai r3,r3,16
- 48428: 3015883a mov r10,r6
- 4842c: 3017883a mov r11,r6
- 48430: 8b3fea36 bltu r17,r12,483dc <__alt_data_end+0xfffd63dc>
- 48434: 8200162e bgeu r16,r8,48490 <__mdiff+0x17c>
- 48438: 8017883a mov r11,r16
- 4843c: 59400017 ldw r5,0(r11)
- 48440: 31800104 addi r6,r6,4
- 48444: 5ac00104 addi r11,r11,4
- 48448: 293fffcc andi r4,r5,65535
- 4844c: 20c7883a add r3,r4,r3
- 48450: 280ed43a srli r7,r5,16
- 48454: 180bd43a srai r5,r3,16
- 48458: 193fffcc andi r4,r3,65535
- 4845c: 3947883a add r3,r7,r5
- 48460: 180a943a slli r5,r3,16
- 48464: 1807d43a srai r3,r3,16
- 48468: 2908b03a or r4,r5,r4
- 4846c: 313fff15 stw r4,-4(r6)
- 48470: 5a3ff236 bltu r11,r8,4843c <__alt_data_end+0xfffd643c>
- 48474: 0406303a nor r3,zero,r16
- 48478: 1a07883a add r3,r3,r8
- 4847c: 1806d0ba srli r3,r3,2
- 48480: 18c00044 addi r3,r3,1
- 48484: 18c7883a add r3,r3,r3
- 48488: 18c7883a add r3,r3,r3
- 4848c: 50d5883a add r10,r10,r3
- 48490: 50ffff04 addi r3,r10,-4
- 48494: 2000041e bne r4,zero,484a8 <__mdiff+0x194>
- 48498: 18ffff04 addi r3,r3,-4
- 4849c: 19000017 ldw r4,0(r3)
- 484a0: 4a7fffc4 addi r9,r9,-1
- 484a4: 203ffc26 beq r4,zero,48498 <__alt_data_end+0xfffd6498>
- 484a8: 12400415 stw r9,16(r2)
- 484ac: dfc00517 ldw ra,20(sp)
- 484b0: dd000417 ldw r20,16(sp)
- 484b4: dcc00317 ldw r19,12(sp)
- 484b8: dc800217 ldw r18,8(sp)
- 484bc: dc400117 ldw r17,4(sp)
- 484c0: dc000017 ldw r16,0(sp)
- 484c4: dec00604 addi sp,sp,24
- 484c8: f800283a ret
- 484cc: 000b883a mov r5,zero
- 484d0: 00479300 call 47930 <_Balloc>
- 484d4: 00c00044 movi r3,1
- 484d8: 10c00415 stw r3,16(r2)
- 484dc: 10000515 stw zero,20(r2)
- 484e0: 003ff206 br 484ac <__alt_data_end+0xfffd64ac>
- 484e4: 8023883a mov r17,r16
- 484e8: 0029883a mov r20,zero
- 484ec: 4021883a mov r16,r8
- 484f0: 003fad06 br 483a8 <__alt_data_end+0xfffd63a8>
- 484f4: 9005883a mov r2,r18
- 484f8: 94400504 addi r17,r18,20
- 484fc: 9c000504 addi r16,r19,20
- 48500: 9825883a mov r18,r19
- 48504: 05000044 movi r20,1
- 48508: 1027883a mov r19,r2
- 4850c: 003fa606 br 483a8 <__alt_data_end+0xfffd63a8>
- 00048510 <__ulp>:
- 48510: 295ffc2c andhi r5,r5,32752
- 48514: 00bf3034 movhi r2,64704
- 48518: 2887883a add r3,r5,r2
- 4851c: 00c0020e bge zero,r3,48528 <__ulp+0x18>
- 48520: 0005883a mov r2,zero
- 48524: f800283a ret
- 48528: 00c7c83a sub r3,zero,r3
- 4852c: 1807d53a srai r3,r3,20
- 48530: 008004c4 movi r2,19
- 48534: 10c00b0e bge r2,r3,48564 <__ulp+0x54>
- 48538: 18bffb04 addi r2,r3,-20
- 4853c: 01000784 movi r4,30
- 48540: 0007883a mov r3,zero
- 48544: 20800516 blt r4,r2,4855c <__ulp+0x4c>
- 48548: 010007c4 movi r4,31
- 4854c: 2089c83a sub r4,r4,r2
- 48550: 00800044 movi r2,1
- 48554: 1104983a sll r2,r2,r4
- 48558: f800283a ret
- 4855c: 00800044 movi r2,1
- 48560: f800283a ret
- 48564: 01400234 movhi r5,8
- 48568: 28c7d83a sra r3,r5,r3
- 4856c: 0005883a mov r2,zero
- 48570: f800283a ret
- 00048574 <__b2d>:
- 48574: defffa04 addi sp,sp,-24
- 48578: dc000015 stw r16,0(sp)
- 4857c: 24000417 ldw r16,16(r4)
- 48580: dc400115 stw r17,4(sp)
- 48584: 24400504 addi r17,r4,20
- 48588: 8421883a add r16,r16,r16
- 4858c: 8421883a add r16,r16,r16
- 48590: 8c21883a add r16,r17,r16
- 48594: dc800215 stw r18,8(sp)
- 48598: 84bfff17 ldw r18,-4(r16)
- 4859c: dd000415 stw r20,16(sp)
- 485a0: dcc00315 stw r19,12(sp)
- 485a4: 9009883a mov r4,r18
- 485a8: 2829883a mov r20,r5
- 485ac: dfc00515 stw ra,20(sp)
- 485b0: 0047c4c0 call 47c4c <__hi0bits>
- 485b4: 00c00804 movi r3,32
- 485b8: 1889c83a sub r4,r3,r2
- 485bc: a1000015 stw r4,0(r20)
- 485c0: 01000284 movi r4,10
- 485c4: 84ffff04 addi r19,r16,-4
- 485c8: 20801216 blt r4,r2,48614 <__b2d+0xa0>
- 485cc: 018002c4 movi r6,11
- 485d0: 308dc83a sub r6,r6,r2
- 485d4: 9186d83a srl r3,r18,r6
- 485d8: 18cffc34 orhi r3,r3,16368
- 485dc: 8cc0212e bgeu r17,r19,48664 <__b2d+0xf0>
- 485e0: 813ffe17 ldw r4,-8(r16)
- 485e4: 218cd83a srl r6,r4,r6
- 485e8: 10800544 addi r2,r2,21
- 485ec: 9084983a sll r2,r18,r2
- 485f0: 1184b03a or r2,r2,r6
- 485f4: dfc00517 ldw ra,20(sp)
- 485f8: dd000417 ldw r20,16(sp)
- 485fc: dcc00317 ldw r19,12(sp)
- 48600: dc800217 ldw r18,8(sp)
- 48604: dc400117 ldw r17,4(sp)
- 48608: dc000017 ldw r16,0(sp)
- 4860c: dec00604 addi sp,sp,24
- 48610: f800283a ret
- 48614: 8cc00f2e bgeu r17,r19,48654 <__b2d+0xe0>
- 48618: 117ffd44 addi r5,r2,-11
- 4861c: 80bffe17 ldw r2,-8(r16)
- 48620: 28000e26 beq r5,zero,4865c <__b2d+0xe8>
- 48624: 1949c83a sub r4,r3,r5
- 48628: 9164983a sll r18,r18,r5
- 4862c: 1106d83a srl r3,r2,r4
- 48630: 81bffe04 addi r6,r16,-8
- 48634: 948ffc34 orhi r18,r18,16368
- 48638: 90c6b03a or r3,r18,r3
- 4863c: 89800e2e bgeu r17,r6,48678 <__b2d+0x104>
- 48640: 81bffd17 ldw r6,-12(r16)
- 48644: 1144983a sll r2,r2,r5
- 48648: 310ad83a srl r5,r6,r4
- 4864c: 2884b03a or r2,r5,r2
- 48650: 003fe806 br 485f4 <__alt_data_end+0xfffd65f4>
- 48654: 10bffd44 addi r2,r2,-11
- 48658: 1000041e bne r2,zero,4866c <__b2d+0xf8>
- 4865c: 90cffc34 orhi r3,r18,16368
- 48660: 003fe406 br 485f4 <__alt_data_end+0xfffd65f4>
- 48664: 000d883a mov r6,zero
- 48668: 003fdf06 br 485e8 <__alt_data_end+0xfffd65e8>
- 4866c: 90a4983a sll r18,r18,r2
- 48670: 0005883a mov r2,zero
- 48674: 003ff906 br 4865c <__alt_data_end+0xfffd665c>
- 48678: 1144983a sll r2,r2,r5
- 4867c: 003fdd06 br 485f4 <__alt_data_end+0xfffd65f4>
- 00048680 <__d2b>:
- 48680: defff804 addi sp,sp,-32
- 48684: dc000215 stw r16,8(sp)
- 48688: 3021883a mov r16,r6
- 4868c: dc400315 stw r17,12(sp)
- 48690: 8022907a slli r17,r16,1
- 48694: dd000615 stw r20,24(sp)
- 48698: 2829883a mov r20,r5
- 4869c: 01400044 movi r5,1
- 486a0: dcc00515 stw r19,20(sp)
- 486a4: dc800415 stw r18,16(sp)
- 486a8: dfc00715 stw ra,28(sp)
- 486ac: 3825883a mov r18,r7
- 486b0: 8822d57a srli r17,r17,21
- 486b4: 00479300 call 47930 <_Balloc>
- 486b8: 1027883a mov r19,r2
- 486bc: 00800434 movhi r2,16
- 486c0: 10bfffc4 addi r2,r2,-1
- 486c4: 808c703a and r6,r16,r2
- 486c8: 88000126 beq r17,zero,486d0 <__d2b+0x50>
- 486cc: 31800434 orhi r6,r6,16
- 486d0: d9800015 stw r6,0(sp)
- 486d4: a0002426 beq r20,zero,48768 <__d2b+0xe8>
- 486d8: d9000104 addi r4,sp,4
- 486dc: dd000115 stw r20,4(sp)
- 486e0: 0047cb40 call 47cb4 <__lo0bits>
- 486e4: d8c00017 ldw r3,0(sp)
- 486e8: 10002f1e bne r2,zero,487a8 <__d2b+0x128>
- 486ec: d9000117 ldw r4,4(sp)
- 486f0: 99000515 stw r4,20(r19)
- 486f4: 1821003a cmpeq r16,r3,zero
- 486f8: 01000084 movi r4,2
- 486fc: 2421c83a sub r16,r4,r16
- 48700: 98c00615 stw r3,24(r19)
- 48704: 9c000415 stw r16,16(r19)
- 48708: 88001f1e bne r17,zero,48788 <__d2b+0x108>
- 4870c: 10bef384 addi r2,r2,-1074
- 48710: 90800015 stw r2,0(r18)
- 48714: 00900034 movhi r2,16384
- 48718: 10bfffc4 addi r2,r2,-1
- 4871c: 8085883a add r2,r16,r2
- 48720: 1085883a add r2,r2,r2
- 48724: 1085883a add r2,r2,r2
- 48728: 9885883a add r2,r19,r2
- 4872c: 11000517 ldw r4,20(r2)
- 48730: 8020917a slli r16,r16,5
- 48734: 0047c4c0 call 47c4c <__hi0bits>
- 48738: d8c00817 ldw r3,32(sp)
- 4873c: 8085c83a sub r2,r16,r2
- 48740: 18800015 stw r2,0(r3)
- 48744: 9805883a mov r2,r19
- 48748: dfc00717 ldw ra,28(sp)
- 4874c: dd000617 ldw r20,24(sp)
- 48750: dcc00517 ldw r19,20(sp)
- 48754: dc800417 ldw r18,16(sp)
- 48758: dc400317 ldw r17,12(sp)
- 4875c: dc000217 ldw r16,8(sp)
- 48760: dec00804 addi sp,sp,32
- 48764: f800283a ret
- 48768: d809883a mov r4,sp
- 4876c: 0047cb40 call 47cb4 <__lo0bits>
- 48770: d8c00017 ldw r3,0(sp)
- 48774: 04000044 movi r16,1
- 48778: 9c000415 stw r16,16(r19)
- 4877c: 98c00515 stw r3,20(r19)
- 48780: 10800804 addi r2,r2,32
- 48784: 883fe126 beq r17,zero,4870c <__alt_data_end+0xfffd670c>
- 48788: 00c00d44 movi r3,53
- 4878c: 8c7ef344 addi r17,r17,-1075
- 48790: 88a3883a add r17,r17,r2
- 48794: 1885c83a sub r2,r3,r2
- 48798: d8c00817 ldw r3,32(sp)
- 4879c: 94400015 stw r17,0(r18)
- 487a0: 18800015 stw r2,0(r3)
- 487a4: 003fe706 br 48744 <__alt_data_end+0xfffd6744>
- 487a8: 01000804 movi r4,32
- 487ac: 2089c83a sub r4,r4,r2
- 487b0: 1908983a sll r4,r3,r4
- 487b4: d9400117 ldw r5,4(sp)
- 487b8: 1886d83a srl r3,r3,r2
- 487bc: 2148b03a or r4,r4,r5
- 487c0: 99000515 stw r4,20(r19)
- 487c4: d8c00015 stw r3,0(sp)
- 487c8: 003fca06 br 486f4 <__alt_data_end+0xfffd66f4>
- 000487cc <__ratio>:
- 487cc: defff904 addi sp,sp,-28
- 487d0: dc400315 stw r17,12(sp)
- 487d4: 2823883a mov r17,r5
- 487d8: d9400104 addi r5,sp,4
- 487dc: dfc00615 stw ra,24(sp)
- 487e0: dcc00515 stw r19,20(sp)
- 487e4: dc800415 stw r18,16(sp)
- 487e8: 2027883a mov r19,r4
- 487ec: dc000215 stw r16,8(sp)
- 487f0: 00485740 call 48574 <__b2d>
- 487f4: d80b883a mov r5,sp
- 487f8: 8809883a mov r4,r17
- 487fc: 1025883a mov r18,r2
- 48800: 1821883a mov r16,r3
- 48804: 00485740 call 48574 <__b2d>
- 48808: 8a000417 ldw r8,16(r17)
- 4880c: 99000417 ldw r4,16(r19)
- 48810: d9400117 ldw r5,4(sp)
- 48814: 2209c83a sub r4,r4,r8
- 48818: 2010917a slli r8,r4,5
- 4881c: d9000017 ldw r4,0(sp)
- 48820: 2909c83a sub r4,r5,r4
- 48824: 4109883a add r4,r8,r4
- 48828: 01000e0e bge zero,r4,48864 <__ratio+0x98>
- 4882c: 2008953a slli r4,r4,20
- 48830: 2421883a add r16,r4,r16
- 48834: 100d883a mov r6,r2
- 48838: 180f883a mov r7,r3
- 4883c: 9009883a mov r4,r18
- 48840: 800b883a mov r5,r16
- 48844: 004ca200 call 4ca20 <__divdf3>
- 48848: dfc00617 ldw ra,24(sp)
- 4884c: dcc00517 ldw r19,20(sp)
- 48850: dc800417 ldw r18,16(sp)
- 48854: dc400317 ldw r17,12(sp)
- 48858: dc000217 ldw r16,8(sp)
- 4885c: dec00704 addi sp,sp,28
- 48860: f800283a ret
- 48864: 2008953a slli r4,r4,20
- 48868: 1907c83a sub r3,r3,r4
- 4886c: 003ff106 br 48834 <__alt_data_end+0xfffd6834>
- 00048870 <_mprec_log10>:
- 48870: defffe04 addi sp,sp,-8
- 48874: dc000015 stw r16,0(sp)
- 48878: dfc00115 stw ra,4(sp)
- 4887c: 008005c4 movi r2,23
- 48880: 2021883a mov r16,r4
- 48884: 11000d0e bge r2,r4,488bc <_mprec_log10+0x4c>
- 48888: 0005883a mov r2,zero
- 4888c: 00cffc34 movhi r3,16368
- 48890: 843fffc4 addi r16,r16,-1
- 48894: 000d883a mov r6,zero
- 48898: 01d00934 movhi r7,16420
- 4889c: 1009883a mov r4,r2
- 488a0: 180b883a mov r5,r3
- 488a4: 004d6480 call 4d648 <__muldf3>
- 488a8: 803ff91e bne r16,zero,48890 <__alt_data_end+0xfffd6890>
- 488ac: dfc00117 ldw ra,4(sp)
- 488b0: dc000017 ldw r16,0(sp)
- 488b4: dec00204 addi sp,sp,8
- 488b8: f800283a ret
- 488bc: 202090fa slli r16,r4,3
- 488c0: 00800174 movhi r2,5
- 488c4: 1088ae04 addi r2,r2,8888
- 488c8: 1421883a add r16,r2,r16
- 488cc: 80800017 ldw r2,0(r16)
- 488d0: 80c00117 ldw r3,4(r16)
- 488d4: dfc00117 ldw ra,4(sp)
- 488d8: dc000017 ldw r16,0(sp)
- 488dc: dec00204 addi sp,sp,8
- 488e0: f800283a ret
- 000488e4 <__copybits>:
- 488e4: 297fffc4 addi r5,r5,-1
- 488e8: 280fd17a srai r7,r5,5
- 488ec: 30c00417 ldw r3,16(r6)
- 488f0: 30800504 addi r2,r6,20
- 488f4: 39c00044 addi r7,r7,1
- 488f8: 18c7883a add r3,r3,r3
- 488fc: 39cf883a add r7,r7,r7
- 48900: 18c7883a add r3,r3,r3
- 48904: 39cf883a add r7,r7,r7
- 48908: 10c7883a add r3,r2,r3
- 4890c: 21cf883a add r7,r4,r7
- 48910: 10c00d2e bgeu r2,r3,48948 <__copybits+0x64>
- 48914: 200b883a mov r5,r4
- 48918: 12000017 ldw r8,0(r2)
- 4891c: 29400104 addi r5,r5,4
- 48920: 10800104 addi r2,r2,4
- 48924: 2a3fff15 stw r8,-4(r5)
- 48928: 10fffb36 bltu r2,r3,48918 <__alt_data_end+0xfffd6918>
- 4892c: 1985c83a sub r2,r3,r6
- 48930: 10bffac4 addi r2,r2,-21
- 48934: 1004d0ba srli r2,r2,2
- 48938: 10800044 addi r2,r2,1
- 4893c: 1085883a add r2,r2,r2
- 48940: 1085883a add r2,r2,r2
- 48944: 2089883a add r4,r4,r2
- 48948: 21c0032e bgeu r4,r7,48958 <__copybits+0x74>
- 4894c: 20000015 stw zero,0(r4)
- 48950: 21000104 addi r4,r4,4
- 48954: 21fffd36 bltu r4,r7,4894c <__alt_data_end+0xfffd694c>
- 48958: f800283a ret
- 0004895c <__any_on>:
- 4895c: 20c00417 ldw r3,16(r4)
- 48960: 2805d17a srai r2,r5,5
- 48964: 21000504 addi r4,r4,20
- 48968: 18800d0e bge r3,r2,489a0 <__any_on+0x44>
- 4896c: 18c7883a add r3,r3,r3
- 48970: 18c7883a add r3,r3,r3
- 48974: 20c7883a add r3,r4,r3
- 48978: 20c0192e bgeu r4,r3,489e0 <__any_on+0x84>
- 4897c: 18bfff17 ldw r2,-4(r3)
- 48980: 18ffff04 addi r3,r3,-4
- 48984: 1000041e bne r2,zero,48998 <__any_on+0x3c>
- 48988: 20c0142e bgeu r4,r3,489dc <__any_on+0x80>
- 4898c: 18ffff04 addi r3,r3,-4
- 48990: 19400017 ldw r5,0(r3)
- 48994: 283ffc26 beq r5,zero,48988 <__alt_data_end+0xfffd6988>
- 48998: 00800044 movi r2,1
- 4899c: f800283a ret
- 489a0: 10c00a0e bge r2,r3,489cc <__any_on+0x70>
- 489a4: 1085883a add r2,r2,r2
- 489a8: 1085883a add r2,r2,r2
- 489ac: 294007cc andi r5,r5,31
- 489b0: 2087883a add r3,r4,r2
- 489b4: 283ff026 beq r5,zero,48978 <__alt_data_end+0xfffd6978>
- 489b8: 19800017 ldw r6,0(r3)
- 489bc: 3144d83a srl r2,r6,r5
- 489c0: 114a983a sll r5,r2,r5
- 489c4: 317ff41e bne r6,r5,48998 <__alt_data_end+0xfffd6998>
- 489c8: 003feb06 br 48978 <__alt_data_end+0xfffd6978>
- 489cc: 1085883a add r2,r2,r2
- 489d0: 1085883a add r2,r2,r2
- 489d4: 2087883a add r3,r4,r2
- 489d8: 003fe706 br 48978 <__alt_data_end+0xfffd6978>
- 489dc: f800283a ret
- 489e0: 0005883a mov r2,zero
- 489e4: f800283a ret
- 000489e8 <_putc_r>:
- 489e8: defffc04 addi sp,sp,-16
- 489ec: dc000215 stw r16,8(sp)
- 489f0: dfc00315 stw ra,12(sp)
- 489f4: 2021883a mov r16,r4
- 489f8: 20000226 beq r4,zero,48a04 <_putc_r+0x1c>
- 489fc: 20800e17 ldw r2,56(r4)
- 48a00: 10001b26 beq r2,zero,48a70 <_putc_r+0x88>
- 48a04: 30800217 ldw r2,8(r6)
- 48a08: 10bfffc4 addi r2,r2,-1
- 48a0c: 30800215 stw r2,8(r6)
- 48a10: 10000a16 blt r2,zero,48a3c <_putc_r+0x54>
- 48a14: 30800017 ldw r2,0(r6)
- 48a18: 11400005 stb r5,0(r2)
- 48a1c: 30800017 ldw r2,0(r6)
- 48a20: 10c00044 addi r3,r2,1
- 48a24: 30c00015 stw r3,0(r6)
- 48a28: 10800003 ldbu r2,0(r2)
- 48a2c: dfc00317 ldw ra,12(sp)
- 48a30: dc000217 ldw r16,8(sp)
- 48a34: dec00404 addi sp,sp,16
- 48a38: f800283a ret
- 48a3c: 30c00617 ldw r3,24(r6)
- 48a40: 10c00616 blt r2,r3,48a5c <_putc_r+0x74>
- 48a44: 30800017 ldw r2,0(r6)
- 48a48: 00c00284 movi r3,10
- 48a4c: 11400005 stb r5,0(r2)
- 48a50: 30800017 ldw r2,0(r6)
- 48a54: 11400003 ldbu r5,0(r2)
- 48a58: 28fff11e bne r5,r3,48a20 <__alt_data_end+0xfffd6a20>
- 48a5c: 8009883a mov r4,r16
- 48a60: dfc00317 ldw ra,12(sp)
- 48a64: dc000217 ldw r16,8(sp)
- 48a68: dec00404 addi sp,sp,16
- 48a6c: 004a7b01 jmpi 4a7b0 <__swbuf_r>
- 48a70: d9400015 stw r5,0(sp)
- 48a74: d9800115 stw r6,4(sp)
- 48a78: 004652c0 call 4652c <__sinit>
- 48a7c: d9800117 ldw r6,4(sp)
- 48a80: d9400017 ldw r5,0(sp)
- 48a84: 003fdf06 br 48a04 <__alt_data_end+0xfffd6a04>
- 00048a88 <putc>:
- 48a88: 00800174 movhi r2,5
- 48a8c: defffc04 addi sp,sp,-16
- 48a90: 10908b04 addi r2,r2,16940
- 48a94: dc000115 stw r16,4(sp)
- 48a98: 14000017 ldw r16,0(r2)
- 48a9c: dc400215 stw r17,8(sp)
- 48aa0: dfc00315 stw ra,12(sp)
- 48aa4: 2023883a mov r17,r4
- 48aa8: 80000226 beq r16,zero,48ab4 <putc+0x2c>
- 48aac: 80800e17 ldw r2,56(r16)
- 48ab0: 10001a26 beq r2,zero,48b1c <putc+0x94>
- 48ab4: 28800217 ldw r2,8(r5)
- 48ab8: 10bfffc4 addi r2,r2,-1
- 48abc: 28800215 stw r2,8(r5)
- 48ac0: 10000b16 blt r2,zero,48af0 <putc+0x68>
- 48ac4: 28800017 ldw r2,0(r5)
- 48ac8: 14400005 stb r17,0(r2)
- 48acc: 28800017 ldw r2,0(r5)
- 48ad0: 10c00044 addi r3,r2,1
- 48ad4: 28c00015 stw r3,0(r5)
- 48ad8: 10800003 ldbu r2,0(r2)
- 48adc: dfc00317 ldw ra,12(sp)
- 48ae0: dc400217 ldw r17,8(sp)
- 48ae4: dc000117 ldw r16,4(sp)
- 48ae8: dec00404 addi sp,sp,16
- 48aec: f800283a ret
- 48af0: 28c00617 ldw r3,24(r5)
- 48af4: 10c00e16 blt r2,r3,48b30 <putc+0xa8>
- 48af8: 28800017 ldw r2,0(r5)
- 48afc: 01000284 movi r4,10
- 48b00: 14400005 stb r17,0(r2)
- 48b04: 28800017 ldw r2,0(r5)
- 48b08: 10c00003 ldbu r3,0(r2)
- 48b0c: 193ff01e bne r3,r4,48ad0 <__alt_data_end+0xfffd6ad0>
- 48b10: 280d883a mov r6,r5
- 48b14: 180b883a mov r5,r3
- 48b18: 00000706 br 48b38 <putc+0xb0>
- 48b1c: 8009883a mov r4,r16
- 48b20: d9400015 stw r5,0(sp)
- 48b24: 004652c0 call 4652c <__sinit>
- 48b28: d9400017 ldw r5,0(sp)
- 48b2c: 003fe106 br 48ab4 <__alt_data_end+0xfffd6ab4>
- 48b30: 280d883a mov r6,r5
- 48b34: 880b883a mov r5,r17
- 48b38: 8009883a mov r4,r16
- 48b3c: dfc00317 ldw ra,12(sp)
- 48b40: dc400217 ldw r17,8(sp)
- 48b44: dc000117 ldw r16,4(sp)
- 48b48: dec00404 addi sp,sp,16
- 48b4c: 004a7b01 jmpi 4a7b0 <__swbuf_r>
- 00048b50 <lflush>:
- 48b50: 2080030b ldhu r2,12(r4)
- 48b54: 00c00244 movi r3,9
- 48b58: 1080024c andi r2,r2,9
- 48b5c: 10c00226 beq r2,r3,48b68 <lflush+0x18>
- 48b60: 0005883a mov r2,zero
- 48b64: f800283a ret
- 48b68: 004619c1 jmpi 4619c <fflush>
- 00048b6c <__srefill_r>:
- 48b6c: defffc04 addi sp,sp,-16
- 48b70: dc400115 stw r17,4(sp)
- 48b74: dc000015 stw r16,0(sp)
- 48b78: dfc00315 stw ra,12(sp)
- 48b7c: dc800215 stw r18,8(sp)
- 48b80: 2023883a mov r17,r4
- 48b84: 2821883a mov r16,r5
- 48b88: 20000226 beq r4,zero,48b94 <__srefill_r+0x28>
- 48b8c: 20800e17 ldw r2,56(r4)
- 48b90: 10003c26 beq r2,zero,48c84 <__srefill_r+0x118>
- 48b94: 80c0030b ldhu r3,12(r16)
- 48b98: 1908000c andi r4,r3,8192
- 48b9c: 1805883a mov r2,r3
- 48ba0: 2000071e bne r4,zero,48bc0 <__srefill_r+0x54>
- 48ba4: 81001917 ldw r4,100(r16)
- 48ba8: 18880014 ori r2,r3,8192
- 48bac: 00f7ffc4 movi r3,-8193
- 48bb0: 20c8703a and r4,r4,r3
- 48bb4: 8080030d sth r2,12(r16)
- 48bb8: 1007883a mov r3,r2
- 48bbc: 81001915 stw r4,100(r16)
- 48bc0: 80000115 stw zero,4(r16)
- 48bc4: 1100080c andi r4,r2,32
- 48bc8: 2000571e bne r4,zero,48d28 <__srefill_r+0x1bc>
- 48bcc: 1100010c andi r4,r2,4
- 48bd0: 20001f26 beq r4,zero,48c50 <__srefill_r+0xe4>
- 48bd4: 81400c17 ldw r5,48(r16)
- 48bd8: 28000826 beq r5,zero,48bfc <__srefill_r+0x90>
- 48bdc: 80801004 addi r2,r16,64
- 48be0: 28800226 beq r5,r2,48bec <__srefill_r+0x80>
- 48be4: 8809883a mov r4,r17
- 48be8: 00466a00 call 466a0 <_free_r>
- 48bec: 80800f17 ldw r2,60(r16)
- 48bf0: 80000c15 stw zero,48(r16)
- 48bf4: 80800115 stw r2,4(r16)
- 48bf8: 1000391e bne r2,zero,48ce0 <__srefill_r+0x174>
- 48bfc: 80800417 ldw r2,16(r16)
- 48c00: 10004b26 beq r2,zero,48d30 <__srefill_r+0x1c4>
- 48c04: 8480030b ldhu r18,12(r16)
- 48c08: 908000cc andi r2,r18,3
- 48c0c: 10001f1e bne r2,zero,48c8c <__srefill_r+0x120>
- 48c10: 81800417 ldw r6,16(r16)
- 48c14: 80800817 ldw r2,32(r16)
- 48c18: 81c00517 ldw r7,20(r16)
- 48c1c: 81400717 ldw r5,28(r16)
- 48c20: 81800015 stw r6,0(r16)
- 48c24: 8809883a mov r4,r17
- 48c28: 103ee83a callr r2
- 48c2c: 80800115 stw r2,4(r16)
- 48c30: 00800e0e bge zero,r2,48c6c <__srefill_r+0x100>
- 48c34: 0005883a mov r2,zero
- 48c38: dfc00317 ldw ra,12(sp)
- 48c3c: dc800217 ldw r18,8(sp)
- 48c40: dc400117 ldw r17,4(sp)
- 48c44: dc000017 ldw r16,0(sp)
- 48c48: dec00404 addi sp,sp,16
- 48c4c: f800283a ret
- 48c50: 1100040c andi r4,r2,16
- 48c54: 20003026 beq r4,zero,48d18 <__srefill_r+0x1ac>
- 48c58: 1080020c andi r2,r2,8
- 48c5c: 1000241e bne r2,zero,48cf0 <__srefill_r+0x184>
- 48c60: 18c00114 ori r3,r3,4
- 48c64: 80c0030d sth r3,12(r16)
- 48c68: 003fe406 br 48bfc <__alt_data_end+0xfffd6bfc>
- 48c6c: 80c0030b ldhu r3,12(r16)
- 48c70: 1000161e bne r2,zero,48ccc <__srefill_r+0x160>
- 48c74: 18c00814 ori r3,r3,32
- 48c78: 00bfffc4 movi r2,-1
- 48c7c: 80c0030d sth r3,12(r16)
- 48c80: 003fed06 br 48c38 <__alt_data_end+0xfffd6c38>
- 48c84: 004652c0 call 4652c <__sinit>
- 48c88: 003fc206 br 48b94 <__alt_data_end+0xfffd6b94>
- 48c8c: 00800174 movhi r2,5
- 48c90: 10908a04 addi r2,r2,16936
- 48c94: 11000017 ldw r4,0(r2)
- 48c98: 01400174 movhi r5,5
- 48c9c: 00800044 movi r2,1
- 48ca0: 2962d404 addi r5,r5,-29872
- 48ca4: 8080030d sth r2,12(r16)
- 48ca8: 00469b00 call 469b0 <_fwalk>
- 48cac: 00800244 movi r2,9
- 48cb0: 8480030d sth r18,12(r16)
- 48cb4: 9480024c andi r18,r18,9
- 48cb8: 90bfd51e bne r18,r2,48c10 <__alt_data_end+0xfffd6c10>
- 48cbc: 800b883a mov r5,r16
- 48cc0: 8809883a mov r4,r17
- 48cc4: 0045f240 call 45f24 <__sflush_r>
- 48cc8: 003fd106 br 48c10 <__alt_data_end+0xfffd6c10>
- 48ccc: 18c01014 ori r3,r3,64
- 48cd0: 80000115 stw zero,4(r16)
- 48cd4: 00bfffc4 movi r2,-1
- 48cd8: 80c0030d sth r3,12(r16)
- 48cdc: 003fd606 br 48c38 <__alt_data_end+0xfffd6c38>
- 48ce0: 80c00e17 ldw r3,56(r16)
- 48ce4: 0005883a mov r2,zero
- 48ce8: 80c00015 stw r3,0(r16)
- 48cec: 003fd206 br 48c38 <__alt_data_end+0xfffd6c38>
- 48cf0: 800b883a mov r5,r16
- 48cf4: 8809883a mov r4,r17
- 48cf8: 00461400 call 46140 <_fflush_r>
- 48cfc: 10000a1e bne r2,zero,48d28 <__srefill_r+0x1bc>
- 48d00: 8080030b ldhu r2,12(r16)
- 48d04: 00fffdc4 movi r3,-9
- 48d08: 80000215 stw zero,8(r16)
- 48d0c: 1886703a and r3,r3,r2
- 48d10: 80000615 stw zero,24(r16)
- 48d14: 003fd206 br 48c60 <__alt_data_end+0xfffd6c60>
- 48d18: 00800244 movi r2,9
- 48d1c: 88800015 stw r2,0(r17)
- 48d20: 18c01014 ori r3,r3,64
- 48d24: 80c0030d sth r3,12(r16)
- 48d28: 00bfffc4 movi r2,-1
- 48d2c: 003fc206 br 48c38 <__alt_data_end+0xfffd6c38>
- 48d30: 800b883a mov r5,r16
- 48d34: 8809883a mov r4,r17
- 48d38: 0046c140 call 46c14 <__smakebuf_r>
- 48d3c: 003fb106 br 48c04 <__alt_data_end+0xfffd6c04>
- 00048d40 <__fpclassifyd>:
- 48d40: 00a00034 movhi r2,32768
- 48d44: 10bfffc4 addi r2,r2,-1
- 48d48: 2884703a and r2,r5,r2
- 48d4c: 10000726 beq r2,zero,48d6c <__fpclassifyd+0x2c>
- 48d50: 00fffc34 movhi r3,65520
- 48d54: 019ff834 movhi r6,32736
- 48d58: 28c7883a add r3,r5,r3
- 48d5c: 31bfffc4 addi r6,r6,-1
- 48d60: 30c00536 bltu r6,r3,48d78 <__fpclassifyd+0x38>
- 48d64: 00800104 movi r2,4
- 48d68: f800283a ret
- 48d6c: 2000021e bne r4,zero,48d78 <__fpclassifyd+0x38>
- 48d70: 00800084 movi r2,2
- 48d74: f800283a ret
- 48d78: 00dffc34 movhi r3,32752
- 48d7c: 019ff834 movhi r6,32736
- 48d80: 28cb883a add r5,r5,r3
- 48d84: 31bfffc4 addi r6,r6,-1
- 48d88: 317ff62e bgeu r6,r5,48d64 <__alt_data_end+0xfffd6d64>
- 48d8c: 01400434 movhi r5,16
- 48d90: 297fffc4 addi r5,r5,-1
- 48d94: 28800236 bltu r5,r2,48da0 <__fpclassifyd+0x60>
- 48d98: 008000c4 movi r2,3
- 48d9c: f800283a ret
- 48da0: 10c00226 beq r2,r3,48dac <__fpclassifyd+0x6c>
- 48da4: 0005883a mov r2,zero
- 48da8: f800283a ret
- 48dac: 2005003a cmpeq r2,r4,zero
- 48db0: f800283a ret
- 00048db4 <_sbrk_r>:
- 48db4: defffd04 addi sp,sp,-12
- 48db8: dc000015 stw r16,0(sp)
- 48dbc: 04000174 movhi r16,5
- 48dc0: dc400115 stw r17,4(sp)
- 48dc4: 8417ab04 addi r16,r16,24236
- 48dc8: 2023883a mov r17,r4
- 48dcc: 2809883a mov r4,r5
- 48dd0: dfc00215 stw ra,8(sp)
- 48dd4: 80000015 stw zero,0(r16)
- 48dd8: 004f0000 call 4f000 <sbrk>
- 48ddc: 00ffffc4 movi r3,-1
- 48de0: 10c00526 beq r2,r3,48df8 <_sbrk_r+0x44>
- 48de4: dfc00217 ldw ra,8(sp)
- 48de8: dc400117 ldw r17,4(sp)
- 48dec: dc000017 ldw r16,0(sp)
- 48df0: dec00304 addi sp,sp,12
- 48df4: f800283a ret
- 48df8: 80c00017 ldw r3,0(r16)
- 48dfc: 183ff926 beq r3,zero,48de4 <__alt_data_end+0xfffd6de4>
- 48e00: 88c00015 stw r3,0(r17)
- 48e04: 003ff706 br 48de4 <__alt_data_end+0xfffd6de4>
- 00048e08 <__sread>:
- 48e08: defffe04 addi sp,sp,-8
- 48e0c: dc000015 stw r16,0(sp)
- 48e10: 2821883a mov r16,r5
- 48e14: 2940038f ldh r5,14(r5)
- 48e18: dfc00115 stw ra,4(sp)
- 48e1c: 004b4d80 call 4b4d8 <_read_r>
- 48e20: 10000716 blt r2,zero,48e40 <__sread+0x38>
- 48e24: 80c01417 ldw r3,80(r16)
- 48e28: 1887883a add r3,r3,r2
- 48e2c: 80c01415 stw r3,80(r16)
- 48e30: dfc00117 ldw ra,4(sp)
- 48e34: dc000017 ldw r16,0(sp)
- 48e38: dec00204 addi sp,sp,8
- 48e3c: f800283a ret
- 48e40: 80c0030b ldhu r3,12(r16)
- 48e44: 18fbffcc andi r3,r3,61439
- 48e48: 80c0030d sth r3,12(r16)
- 48e4c: dfc00117 ldw ra,4(sp)
- 48e50: dc000017 ldw r16,0(sp)
- 48e54: dec00204 addi sp,sp,8
- 48e58: f800283a ret
- 00048e5c <__seofread>:
- 48e5c: 0005883a mov r2,zero
- 48e60: f800283a ret
- 00048e64 <__swrite>:
- 48e64: 2880030b ldhu r2,12(r5)
- 48e68: defffb04 addi sp,sp,-20
- 48e6c: dcc00315 stw r19,12(sp)
- 48e70: dc800215 stw r18,8(sp)
- 48e74: dc400115 stw r17,4(sp)
- 48e78: dc000015 stw r16,0(sp)
- 48e7c: dfc00415 stw ra,16(sp)
- 48e80: 10c0400c andi r3,r2,256
- 48e84: 2821883a mov r16,r5
- 48e88: 2023883a mov r17,r4
- 48e8c: 3025883a mov r18,r6
- 48e90: 3827883a mov r19,r7
- 48e94: 18000526 beq r3,zero,48eac <__swrite+0x48>
- 48e98: 2940038f ldh r5,14(r5)
- 48e9c: 01c00084 movi r7,2
- 48ea0: 000d883a mov r6,zero
- 48ea4: 004b31c0 call 4b31c <_lseek_r>
- 48ea8: 8080030b ldhu r2,12(r16)
- 48eac: 8140038f ldh r5,14(r16)
- 48eb0: 10bbffcc andi r2,r2,61439
- 48eb4: 980f883a mov r7,r19
- 48eb8: 900d883a mov r6,r18
- 48ebc: 8809883a mov r4,r17
- 48ec0: 8080030d sth r2,12(r16)
- 48ec4: dfc00417 ldw ra,16(sp)
- 48ec8: dcc00317 ldw r19,12(sp)
- 48ecc: dc800217 ldw r18,8(sp)
- 48ed0: dc400117 ldw r17,4(sp)
- 48ed4: dc000017 ldw r16,0(sp)
- 48ed8: dec00504 addi sp,sp,20
- 48edc: 004a9081 jmpi 4a908 <_write_r>
- 00048ee0 <__sseek>:
- 48ee0: defffe04 addi sp,sp,-8
- 48ee4: dc000015 stw r16,0(sp)
- 48ee8: 2821883a mov r16,r5
- 48eec: 2940038f ldh r5,14(r5)
- 48ef0: dfc00115 stw ra,4(sp)
- 48ef4: 004b31c0 call 4b31c <_lseek_r>
- 48ef8: 00ffffc4 movi r3,-1
- 48efc: 10c00826 beq r2,r3,48f20 <__sseek+0x40>
- 48f00: 80c0030b ldhu r3,12(r16)
- 48f04: 80801415 stw r2,80(r16)
- 48f08: 18c40014 ori r3,r3,4096
- 48f0c: 80c0030d sth r3,12(r16)
- 48f10: dfc00117 ldw ra,4(sp)
- 48f14: dc000017 ldw r16,0(sp)
- 48f18: dec00204 addi sp,sp,8
- 48f1c: f800283a ret
- 48f20: 80c0030b ldhu r3,12(r16)
- 48f24: 18fbffcc andi r3,r3,61439
- 48f28: 80c0030d sth r3,12(r16)
- 48f2c: dfc00117 ldw ra,4(sp)
- 48f30: dc000017 ldw r16,0(sp)
- 48f34: dec00204 addi sp,sp,8
- 48f38: f800283a ret
- 00048f3c <__sclose>:
- 48f3c: 2940038f ldh r5,14(r5)
- 48f40: 004a9681 jmpi 4a968 <_close_r>
- 00048f44 <strcmp>:
- 48f44: 2144b03a or r2,r4,r5
- 48f48: 108000cc andi r2,r2,3
- 48f4c: 1000171e bne r2,zero,48fac <strcmp+0x68>
- 48f50: 20800017 ldw r2,0(r4)
- 48f54: 28c00017 ldw r3,0(r5)
- 48f58: 10c0141e bne r2,r3,48fac <strcmp+0x68>
- 48f5c: 027fbff4 movhi r9,65279
- 48f60: 4a7fbfc4 addi r9,r9,-257
- 48f64: 0086303a nor r3,zero,r2
- 48f68: 02202074 movhi r8,32897
- 48f6c: 1245883a add r2,r2,r9
- 48f70: 42202004 addi r8,r8,-32640
- 48f74: 10c4703a and r2,r2,r3
- 48f78: 1204703a and r2,r2,r8
- 48f7c: 10000226 beq r2,zero,48f88 <strcmp+0x44>
- 48f80: 00002306 br 49010 <strcmp+0xcc>
- 48f84: 1000221e bne r2,zero,49010 <strcmp+0xcc>
- 48f88: 21000104 addi r4,r4,4
- 48f8c: 20c00017 ldw r3,0(r4)
- 48f90: 29400104 addi r5,r5,4
- 48f94: 29800017 ldw r6,0(r5)
- 48f98: 1a4f883a add r7,r3,r9
- 48f9c: 00c4303a nor r2,zero,r3
- 48fa0: 3884703a and r2,r7,r2
- 48fa4: 1204703a and r2,r2,r8
- 48fa8: 19bff626 beq r3,r6,48f84 <__alt_data_end+0xfffd6f84>
- 48fac: 20800003 ldbu r2,0(r4)
- 48fb0: 10c03fcc andi r3,r2,255
- 48fb4: 18c0201c xori r3,r3,128
- 48fb8: 18ffe004 addi r3,r3,-128
- 48fbc: 18000c26 beq r3,zero,48ff0 <strcmp+0xac>
- 48fc0: 29800007 ldb r6,0(r5)
- 48fc4: 19800326 beq r3,r6,48fd4 <strcmp+0x90>
- 48fc8: 00001306 br 49018 <strcmp+0xd4>
- 48fcc: 29800007 ldb r6,0(r5)
- 48fd0: 11800b1e bne r2,r6,49000 <strcmp+0xbc>
- 48fd4: 21000044 addi r4,r4,1
- 48fd8: 20c00003 ldbu r3,0(r4)
- 48fdc: 29400044 addi r5,r5,1
- 48fe0: 18803fcc andi r2,r3,255
- 48fe4: 1080201c xori r2,r2,128
- 48fe8: 10bfe004 addi r2,r2,-128
- 48fec: 103ff71e bne r2,zero,48fcc <__alt_data_end+0xfffd6fcc>
- 48ff0: 0007883a mov r3,zero
- 48ff4: 28800003 ldbu r2,0(r5)
- 48ff8: 1885c83a sub r2,r3,r2
- 48ffc: f800283a ret
- 49000: 28800003 ldbu r2,0(r5)
- 49004: 18c03fcc andi r3,r3,255
- 49008: 1885c83a sub r2,r3,r2
- 4900c: f800283a ret
- 49010: 0005883a mov r2,zero
- 49014: f800283a ret
- 49018: 10c03fcc andi r3,r2,255
- 4901c: 003ff506 br 48ff4 <__alt_data_end+0xfffd6ff4>
- 00049020 <strlen>:
- 49020: 208000cc andi r2,r4,3
- 49024: 10002026 beq r2,zero,490a8 <strlen+0x88>
- 49028: 20800007 ldb r2,0(r4)
- 4902c: 10002026 beq r2,zero,490b0 <strlen+0x90>
- 49030: 2005883a mov r2,r4
- 49034: 00000206 br 49040 <strlen+0x20>
- 49038: 10c00007 ldb r3,0(r2)
- 4903c: 18001826 beq r3,zero,490a0 <strlen+0x80>
- 49040: 10800044 addi r2,r2,1
- 49044: 10c000cc andi r3,r2,3
- 49048: 183ffb1e bne r3,zero,49038 <__alt_data_end+0xfffd7038>
- 4904c: 10c00017 ldw r3,0(r2)
- 49050: 01ffbff4 movhi r7,65279
- 49054: 39ffbfc4 addi r7,r7,-257
- 49058: 00ca303a nor r5,zero,r3
- 4905c: 01a02074 movhi r6,32897
- 49060: 19c7883a add r3,r3,r7
- 49064: 31a02004 addi r6,r6,-32640
- 49068: 1946703a and r3,r3,r5
- 4906c: 1986703a and r3,r3,r6
- 49070: 1800091e bne r3,zero,49098 <strlen+0x78>
- 49074: 10800104 addi r2,r2,4
- 49078: 10c00017 ldw r3,0(r2)
- 4907c: 19cb883a add r5,r3,r7
- 49080: 00c6303a nor r3,zero,r3
- 49084: 28c6703a and r3,r5,r3
- 49088: 1986703a and r3,r3,r6
- 4908c: 183ff926 beq r3,zero,49074 <__alt_data_end+0xfffd7074>
- 49090: 00000106 br 49098 <strlen+0x78>
- 49094: 10800044 addi r2,r2,1
- 49098: 10c00007 ldb r3,0(r2)
- 4909c: 183ffd1e bne r3,zero,49094 <__alt_data_end+0xfffd7094>
- 490a0: 1105c83a sub r2,r2,r4
- 490a4: f800283a ret
- 490a8: 2005883a mov r2,r4
- 490ac: 003fe706 br 4904c <__alt_data_end+0xfffd704c>
- 490b0: 0005883a mov r2,zero
- 490b4: f800283a ret
- 000490b8 <__sprint_r.part.0>:
- 490b8: 28801917 ldw r2,100(r5)
- 490bc: defff604 addi sp,sp,-40
- 490c0: dd400515 stw r21,20(sp)
- 490c4: dfc00915 stw ra,36(sp)
- 490c8: df000815 stw fp,32(sp)
- 490cc: ddc00715 stw r23,28(sp)
- 490d0: dd800615 stw r22,24(sp)
- 490d4: dd000415 stw r20,16(sp)
- 490d8: dcc00315 stw r19,12(sp)
- 490dc: dc800215 stw r18,8(sp)
- 490e0: dc400115 stw r17,4(sp)
- 490e4: dc000015 stw r16,0(sp)
- 490e8: 1088000c andi r2,r2,8192
- 490ec: 302b883a mov r21,r6
- 490f0: 10002e26 beq r2,zero,491ac <__sprint_r.part.0+0xf4>
- 490f4: 30800217 ldw r2,8(r6)
- 490f8: 35800017 ldw r22,0(r6)
- 490fc: 10002926 beq r2,zero,491a4 <__sprint_r.part.0+0xec>
- 49100: 2827883a mov r19,r5
- 49104: 2029883a mov r20,r4
- 49108: b5c00104 addi r23,r22,4
- 4910c: 04bfffc4 movi r18,-1
- 49110: bc400017 ldw r17,0(r23)
- 49114: b4000017 ldw r16,0(r22)
- 49118: 0039883a mov fp,zero
- 4911c: 8822d0ba srli r17,r17,2
- 49120: 8800031e bne r17,zero,49130 <__sprint_r.part.0+0x78>
- 49124: 00001806 br 49188 <__sprint_r.part.0+0xd0>
- 49128: 84000104 addi r16,r16,4
- 4912c: 8f001526 beq r17,fp,49184 <__sprint_r.part.0+0xcc>
- 49130: 81400017 ldw r5,0(r16)
- 49134: 980d883a mov r6,r19
- 49138: a009883a mov r4,r20
- 4913c: 004ad000 call 4ad00 <_fputwc_r>
- 49140: e7000044 addi fp,fp,1
- 49144: 14bff81e bne r2,r18,49128 <__alt_data_end+0xfffd7128>
- 49148: 9005883a mov r2,r18
- 4914c: a8000215 stw zero,8(r21)
- 49150: a8000115 stw zero,4(r21)
- 49154: dfc00917 ldw ra,36(sp)
- 49158: df000817 ldw fp,32(sp)
- 4915c: ddc00717 ldw r23,28(sp)
- 49160: dd800617 ldw r22,24(sp)
- 49164: dd400517 ldw r21,20(sp)
- 49168: dd000417 ldw r20,16(sp)
- 4916c: dcc00317 ldw r19,12(sp)
- 49170: dc800217 ldw r18,8(sp)
- 49174: dc400117 ldw r17,4(sp)
- 49178: dc000017 ldw r16,0(sp)
- 4917c: dec00a04 addi sp,sp,40
- 49180: f800283a ret
- 49184: a8800217 ldw r2,8(r21)
- 49188: 8c63883a add r17,r17,r17
- 4918c: 8c63883a add r17,r17,r17
- 49190: 1445c83a sub r2,r2,r17
- 49194: a8800215 stw r2,8(r21)
- 49198: b5800204 addi r22,r22,8
- 4919c: bdc00204 addi r23,r23,8
- 491a0: 103fdb1e bne r2,zero,49110 <__alt_data_end+0xfffd7110>
- 491a4: 0005883a mov r2,zero
- 491a8: 003fe806 br 4914c <__alt_data_end+0xfffd714c>
- 491ac: 004ae000 call 4ae00 <__sfvwrite_r>
- 491b0: 003fe606 br 4914c <__alt_data_end+0xfffd714c>
- 000491b4 <__sprint_r>:
- 491b4: 30c00217 ldw r3,8(r6)
- 491b8: 18000126 beq r3,zero,491c0 <__sprint_r+0xc>
- 491bc: 00490b81 jmpi 490b8 <__sprint_r.part.0>
- 491c0: 30000115 stw zero,4(r6)
- 491c4: 0005883a mov r2,zero
- 491c8: f800283a ret
- 000491cc <___vfiprintf_internal_r>:
- 491cc: deffca04 addi sp,sp,-216
- 491d0: dd403115 stw r21,196(sp)
- 491d4: dfc03515 stw ra,212(sp)
- 491d8: df003415 stw fp,208(sp)
- 491dc: ddc03315 stw r23,204(sp)
- 491e0: dd803215 stw r22,200(sp)
- 491e4: dd003015 stw r20,192(sp)
- 491e8: dcc02f15 stw r19,188(sp)
- 491ec: dc802e15 stw r18,184(sp)
- 491f0: dc402d15 stw r17,180(sp)
- 491f4: dc002c15 stw r16,176(sp)
- 491f8: d9002115 stw r4,132(sp)
- 491fc: d9402015 stw r5,128(sp)
- 49200: d9c02215 stw r7,136(sp)
- 49204: 302b883a mov r21,r6
- 49208: 20000226 beq r4,zero,49214 <___vfiprintf_internal_r+0x48>
- 4920c: 20800e17 ldw r2,56(r4)
- 49210: 1000cf26 beq r2,zero,49550 <___vfiprintf_internal_r+0x384>
- 49214: d8c02017 ldw r3,128(sp)
- 49218: 1880030b ldhu r2,12(r3)
- 4921c: 10c8000c andi r3,r2,8192
- 49220: 1800071e bne r3,zero,49240 <___vfiprintf_internal_r+0x74>
- 49224: d9402017 ldw r5,128(sp)
- 49228: 00f7ffc4 movi r3,-8193
- 4922c: 10880014 ori r2,r2,8192
- 49230: 29001917 ldw r4,100(r5)
- 49234: 2880030d sth r2,12(r5)
- 49238: 20c6703a and r3,r4,r3
- 4923c: 28c01915 stw r3,100(r5)
- 49240: 10c0020c andi r3,r2,8
- 49244: 1800a526 beq r3,zero,494dc <___vfiprintf_internal_r+0x310>
- 49248: d9002017 ldw r4,128(sp)
- 4924c: 20c00417 ldw r3,16(r4)
- 49250: 1800a226 beq r3,zero,494dc <___vfiprintf_internal_r+0x310>
- 49254: 1080068c andi r2,r2,26
- 49258: 00c00284 movi r3,10
- 4925c: 10c0a826 beq r2,r3,49500 <___vfiprintf_internal_r+0x334>
- 49260: d9001a04 addi r4,sp,104
- 49264: d94019c4 addi r5,sp,103
- 49268: 04800174 movhi r18,5
- 4926c: 2145c83a sub r2,r4,r5
- 49270: 9488e004 addi r18,r18,9088
- 49274: d9001e15 stw r4,120(sp)
- 49278: d9401f15 stw r5,124(sp)
- 4927c: dec01a15 stw sp,104(sp)
- 49280: d8001c15 stw zero,112(sp)
- 49284: d8001b15 stw zero,108(sp)
- 49288: d811883a mov r8,sp
- 4928c: d8002615 stw zero,152(sp)
- 49290: d8002415 stw zero,144(sp)
- 49294: d8802815 stw r2,160(sp)
- 49298: a82d883a mov r22,r21
- 4929c: b0800007 ldb r2,0(r22)
- 492a0: 10040d26 beq r2,zero,4a2d8 <___vfiprintf_internal_r+0x110c>
- 492a4: 00c00944 movi r3,37
- 492a8: b029883a mov r20,r22
- 492ac: 10c0021e bne r2,r3,492b8 <___vfiprintf_internal_r+0xec>
- 492b0: 00001606 br 4930c <___vfiprintf_internal_r+0x140>
- 492b4: 10c00326 beq r2,r3,492c4 <___vfiprintf_internal_r+0xf8>
- 492b8: a5000044 addi r20,r20,1
- 492bc: a0800007 ldb r2,0(r20)
- 492c0: 103ffc1e bne r2,zero,492b4 <__alt_data_end+0xfffd72b4>
- 492c4: a5a1c83a sub r16,r20,r22
- 492c8: 80001026 beq r16,zero,4930c <___vfiprintf_internal_r+0x140>
- 492cc: d8c01c17 ldw r3,112(sp)
- 492d0: d8801b17 ldw r2,108(sp)
- 492d4: 45800015 stw r22,0(r8)
- 492d8: 80c7883a add r3,r16,r3
- 492dc: 10800044 addi r2,r2,1
- 492e0: 44000115 stw r16,4(r8)
- 492e4: d8c01c15 stw r3,112(sp)
- 492e8: d8801b15 stw r2,108(sp)
- 492ec: 010001c4 movi r4,7
- 492f0: 2080750e bge r4,r2,494c8 <___vfiprintf_internal_r+0x2fc>
- 492f4: 1803951e bne r3,zero,4a14c <___vfiprintf_internal_r+0xf80>
- 492f8: d8c02417 ldw r3,144(sp)
- 492fc: d8001b15 stw zero,108(sp)
- 49300: d811883a mov r8,sp
- 49304: 1c07883a add r3,r3,r16
- 49308: d8c02415 stw r3,144(sp)
- 4930c: a0800007 ldb r2,0(r20)
- 49310: 1002e026 beq r2,zero,49e94 <___vfiprintf_internal_r+0xcc8>
- 49314: a5800044 addi r22,r20,1
- 49318: a0c00047 ldb r3,1(r20)
- 4931c: d8001d85 stb zero,118(sp)
- 49320: 0027883a mov r19,zero
- 49324: d8002305 stb zero,140(sp)
- 49328: 043fffc4 movi r16,-1
- 4932c: d8002515 stw zero,148(sp)
- 49330: 0023883a mov r17,zero
- 49334: 05001604 movi r20,88
- 49338: 05400244 movi r21,9
- 4933c: 402f883a mov r23,r8
- 49340: b5800044 addi r22,r22,1
- 49344: 18bff804 addi r2,r3,-32
- 49348: a0827736 bltu r20,r2,49d28 <___vfiprintf_internal_r+0xb5c>
- 4934c: 100490ba slli r2,r2,2
- 49350: 01000174 movhi r4,5
- 49354: 2124d904 addi r4,r4,-27804
- 49358: 1105883a add r2,r2,r4
- 4935c: 10800017 ldw r2,0(r2)
- 49360: 1000683a jmp r2
- 49364: 00049a28 cmpgeui zero,zero,4712
- 49368: 00049d28 cmpgeui zero,zero,4724
- 4936c: 00049d28 cmpgeui zero,zero,4724
- 49370: 00049a44 movi zero,4713
- 49374: 00049d28 cmpgeui zero,zero,4724
- 49378: 00049d28 cmpgeui zero,zero,4724
- 4937c: 00049d28 cmpgeui zero,zero,4724
- 49380: 00049d28 cmpgeui zero,zero,4724
- 49384: 00049d28 cmpgeui zero,zero,4724
- 49388: 00049d28 cmpgeui zero,zero,4724
- 4938c: 00049c4c andi zero,zero,4721
- 49390: 00049c70 cmpltui zero,zero,4721
- 49394: 00049d28 cmpgeui zero,zero,4724
- 49398: 00049568 cmpgeui zero,zero,4693
- 4939c: 00049c84 movi zero,4722
- 493a0: 00049d28 cmpgeui zero,zero,4724
- 493a4: 00049a50 cmplti zero,zero,4713
- 493a8: 00049a5c xori zero,zero,4713
- 493ac: 00049a5c xori zero,zero,4713
- 493b0: 00049a5c xori zero,zero,4713
- 493b4: 00049a5c xori zero,zero,4713
- 493b8: 00049a5c xori zero,zero,4713
- 493bc: 00049a5c xori zero,zero,4713
- 493c0: 00049a5c xori zero,zero,4713
- 493c4: 00049a5c xori zero,zero,4713
- 493c8: 00049a5c xori zero,zero,4713
- 493cc: 00049d28 cmpgeui zero,zero,4724
- 493d0: 00049d28 cmpgeui zero,zero,4724
- 493d4: 00049d28 cmpgeui zero,zero,4724
- 493d8: 00049d28 cmpgeui zero,zero,4724
- 493dc: 00049d28 cmpgeui zero,zero,4724
- 493e0: 00049d28 cmpgeui zero,zero,4724
- 493e4: 00049d28 cmpgeui zero,zero,4724
- 493e8: 00049d28 cmpgeui zero,zero,4724
- 493ec: 00049d28 cmpgeui zero,zero,4724
- 493f0: 00049d28 cmpgeui zero,zero,4724
- 493f4: 00049a9c xori zero,zero,4714
- 493f8: 00049d28 cmpgeui zero,zero,4724
- 493fc: 00049d28 cmpgeui zero,zero,4724
- 49400: 00049d28 cmpgeui zero,zero,4724
- 49404: 00049d28 cmpgeui zero,zero,4724
- 49408: 00049d28 cmpgeui zero,zero,4724
- 4940c: 00049d28 cmpgeui zero,zero,4724
- 49410: 00049d28 cmpgeui zero,zero,4724
- 49414: 00049d28 cmpgeui zero,zero,4724
- 49418: 00049d28 cmpgeui zero,zero,4724
- 4941c: 00049d28 cmpgeui zero,zero,4724
- 49420: 00049ad8 cmpnei zero,zero,4715
- 49424: 00049d28 cmpgeui zero,zero,4724
- 49428: 00049d28 cmpgeui zero,zero,4724
- 4942c: 00049d28 cmpgeui zero,zero,4724
- 49430: 00049d28 cmpgeui zero,zero,4724
- 49434: 00049d28 cmpgeui zero,zero,4724
- 49438: 00049b34 movhi zero,4716
- 4943c: 00049d28 cmpgeui zero,zero,4724
- 49440: 00049d28 cmpgeui zero,zero,4724
- 49444: 00049ba8 cmpgeui zero,zero,4718
- 49448: 00049d28 cmpgeui zero,zero,4724
- 4944c: 00049d28 cmpgeui zero,zero,4724
- 49450: 00049d28 cmpgeui zero,zero,4724
- 49454: 00049d28 cmpgeui zero,zero,4724
- 49458: 00049d28 cmpgeui zero,zero,4724
- 4945c: 00049d28 cmpgeui zero,zero,4724
- 49460: 00049d28 cmpgeui zero,zero,4724
- 49464: 00049d28 cmpgeui zero,zero,4724
- 49468: 00049d28 cmpgeui zero,zero,4724
- 4946c: 00049d28 cmpgeui zero,zero,4724
- 49470: 00049950 cmplti zero,zero,4709
- 49474: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668>
- 49478: 00049d28 cmpgeui zero,zero,4724
- 4947c: 00049d28 cmpgeui zero,zero,4724
- 49480: 00049d28 cmpgeui zero,zero,4724
- 49484: 00049cd0 cmplti zero,zero,4723
- 49488: 00049980 call 4998 <__alt_mem_onchip_memory2-0x3b668>
- 4948c: 00049d28 cmpgeui zero,zero,4724
- 49490: 00049d28 cmpgeui zero,zero,4724
- 49494: 00049828 cmpgeui zero,zero,4704
- 49498: 00049d28 cmpgeui zero,zero,4724
- 4949c: 0004983c xorhi zero,zero,4704
- 494a0: 00049874 movhi zero,4705
- 494a4: 00049574 movhi zero,4693
- 494a8: 0004981c xori zero,zero,4704
- 494ac: 00049d28 cmpgeui zero,zero,4724
- 494b0: 00049be8 cmpgeui zero,zero,4719
- 494b4: 00049d28 cmpgeui zero,zero,4724
- 494b8: 00049c34 movhi zero,4720
- 494bc: 00049d28 cmpgeui zero,zero,4724
- 494c0: 00049d28 cmpgeui zero,zero,4724
- 494c4: 000498f8 rdprs zero,zero,4707
- 494c8: 42000204 addi r8,r8,8
- 494cc: d8c02417 ldw r3,144(sp)
- 494d0: 1c07883a add r3,r3,r16
- 494d4: d8c02415 stw r3,144(sp)
- 494d8: 003f8c06 br 4930c <__alt_data_end+0xfffd730c>
- 494dc: d9402017 ldw r5,128(sp)
- 494e0: d9002117 ldw r4,132(sp)
- 494e4: 00445200 call 44520 <__swsetup_r>
- 494e8: 1003c11e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224>
- 494ec: d9402017 ldw r5,128(sp)
- 494f0: 00c00284 movi r3,10
- 494f4: 2880030b ldhu r2,12(r5)
- 494f8: 1080068c andi r2,r2,26
- 494fc: 10ff581e bne r2,r3,49260 <__alt_data_end+0xfffd7260>
- 49500: d8c02017 ldw r3,128(sp)
- 49504: 1880038f ldh r2,14(r3)
- 49508: 103f5516 blt r2,zero,49260 <__alt_data_end+0xfffd7260>
- 4950c: d9c02217 ldw r7,136(sp)
- 49510: d9002117 ldw r4,132(sp)
- 49514: a80d883a mov r6,r21
- 49518: 180b883a mov r5,r3
- 4951c: 004a6f40 call 4a6f4 <__sbprintf>
- 49520: dfc03517 ldw ra,212(sp)
- 49524: df003417 ldw fp,208(sp)
- 49528: ddc03317 ldw r23,204(sp)
- 4952c: dd803217 ldw r22,200(sp)
- 49530: dd403117 ldw r21,196(sp)
- 49534: dd003017 ldw r20,192(sp)
- 49538: dcc02f17 ldw r19,188(sp)
- 4953c: dc802e17 ldw r18,184(sp)
- 49540: dc402d17 ldw r17,180(sp)
- 49544: dc002c17 ldw r16,176(sp)
- 49548: dec03604 addi sp,sp,216
- 4954c: f800283a ret
- 49550: 004652c0 call 4652c <__sinit>
- 49554: 003f2f06 br 49214 <__alt_data_end+0xfffd7214>
- 49558: d8c02517 ldw r3,148(sp)
- 4955c: d8802215 stw r2,136(sp)
- 49560: 00c7c83a sub r3,zero,r3
- 49564: d8c02515 stw r3,148(sp)
- 49568: 8c400114 ori r17,r17,4
- 4956c: b0c00007 ldb r3,0(r22)
- 49570: 003f7306 br 49340 <__alt_data_end+0xfffd7340>
- 49574: 00800c04 movi r2,48
- 49578: d9402217 ldw r5,136(sp)
- 4957c: d8801d05 stb r2,116(sp)
- 49580: 00801e04 movi r2,120
- 49584: d8801d45 stb r2,117(sp)
- 49588: d8001d85 stb zero,118(sp)
- 4958c: b811883a mov r8,r23
- 49590: 28c00104 addi r3,r5,4
- 49594: 2cc00017 ldw r19,0(r5)
- 49598: 0029883a mov r20,zero
- 4959c: 88800094 ori r2,r17,2
- 495a0: 80032516 blt r16,zero,4a238 <___vfiprintf_internal_r+0x106c>
- 495a4: 00bfdfc4 movi r2,-129
- 495a8: 88a2703a and r17,r17,r2
- 495ac: d8c02215 stw r3,136(sp)
- 495b0: 8c400094 ori r17,r17,2
- 495b4: 98032a1e bne r19,zero,4a260 <___vfiprintf_internal_r+0x1094>
- 495b8: 00800174 movhi r2,5
- 495bc: 10888004 addi r2,r2,8704
- 495c0: d8802615 stw r2,152(sp)
- 495c4: 002b883a mov r21,zero
- 495c8: 8001741e bne r16,zero,49b9c <___vfiprintf_internal_r+0x9d0>
- 495cc: 0021883a mov r16,zero
- 495d0: 0029883a mov r20,zero
- 495d4: ddc01a04 addi r23,sp,104
- 495d8: 8027883a mov r19,r16
- 495dc: 8500010e bge r16,r20,495e4 <___vfiprintf_internal_r+0x418>
- 495e0: a027883a mov r19,r20
- 495e4: ad403fcc andi r21,r21,255
- 495e8: ad40201c xori r21,r21,128
- 495ec: ad7fe004 addi r21,r21,-128
- 495f0: a8000126 beq r21,zero,495f8 <___vfiprintf_internal_r+0x42c>
- 495f4: 9cc00044 addi r19,r19,1
- 495f8: 89c0008c andi r7,r17,2
- 495fc: 38000126 beq r7,zero,49604 <___vfiprintf_internal_r+0x438>
- 49600: 9cc00084 addi r19,r19,2
- 49604: 88c0210c andi r3,r17,132
- 49608: 1801dd1e bne r3,zero,49d80 <___vfiprintf_internal_r+0xbb4>
- 4960c: d9402517 ldw r5,148(sp)
- 49610: 2cebc83a sub r21,r5,r19
- 49614: 0541da0e bge zero,r21,49d80 <___vfiprintf_internal_r+0xbb4>
- 49618: 07000404 movi fp,16
- 4961c: d8801c17 ldw r2,112(sp)
- 49620: e543be0e bge fp,r21,4a51c <___vfiprintf_internal_r+0x1350>
- 49624: 01400174 movhi r5,5
- 49628: 2948e404 addi r5,r5,9104
- 4962c: dc002715 stw r16,156(sp)
- 49630: d9801b17 ldw r6,108(sp)
- 49634: a821883a mov r16,r21
- 49638: d9402315 stw r5,140(sp)
- 4963c: 028001c4 movi r10,7
- 49640: d9c02915 stw r7,164(sp)
- 49644: 182b883a mov r21,r3
- 49648: 00000506 br 49660 <___vfiprintf_internal_r+0x494>
- 4964c: 31000084 addi r4,r6,2
- 49650: 42000204 addi r8,r8,8
- 49654: 180d883a mov r6,r3
- 49658: 843ffc04 addi r16,r16,-16
- 4965c: e4000f0e bge fp,r16,4969c <___vfiprintf_internal_r+0x4d0>
- 49660: 01000174 movhi r4,5
- 49664: 10800404 addi r2,r2,16
- 49668: 30c00044 addi r3,r6,1
- 4966c: 2108e404 addi r4,r4,9104
- 49670: 41000015 stw r4,0(r8)
- 49674: 47000115 stw fp,4(r8)
- 49678: d8801c15 stw r2,112(sp)
- 4967c: d8c01b15 stw r3,108(sp)
- 49680: 50fff20e bge r10,r3,4964c <__alt_data_end+0xfffd764c>
- 49684: 1001b21e bne r2,zero,49d50 <___vfiprintf_internal_r+0xb84>
- 49688: 843ffc04 addi r16,r16,-16
- 4968c: 000d883a mov r6,zero
- 49690: 01000044 movi r4,1
- 49694: d811883a mov r8,sp
- 49698: e43ff116 blt fp,r16,49660 <__alt_data_end+0xfffd7660>
- 4969c: a807883a mov r3,r21
- 496a0: d9c02917 ldw r7,164(sp)
- 496a4: 802b883a mov r21,r16
- 496a8: dc002717 ldw r16,156(sp)
- 496ac: d9402317 ldw r5,140(sp)
- 496b0: a885883a add r2,r21,r2
- 496b4: 45400115 stw r21,4(r8)
- 496b8: 41400015 stw r5,0(r8)
- 496bc: d8801c15 stw r2,112(sp)
- 496c0: d9001b15 stw r4,108(sp)
- 496c4: 014001c4 movi r5,7
- 496c8: 29026216 blt r5,r4,4a054 <___vfiprintf_internal_r+0xe88>
- 496cc: d9801d87 ldb r6,118(sp)
- 496d0: 42000204 addi r8,r8,8
- 496d4: 21400044 addi r5,r4,1
- 496d8: 3001ae1e bne r6,zero,49d94 <___vfiprintf_internal_r+0xbc8>
- 496dc: 3801bb26 beq r7,zero,49dcc <___vfiprintf_internal_r+0xc00>
- 496e0: d9001d04 addi r4,sp,116
- 496e4: 10800084 addi r2,r2,2
- 496e8: 41000015 stw r4,0(r8)
- 496ec: 01000084 movi r4,2
- 496f0: 41000115 stw r4,4(r8)
- 496f4: d8801c15 stw r2,112(sp)
- 496f8: d9401b15 stw r5,108(sp)
- 496fc: 010001c4 movi r4,7
- 49700: 2142680e bge r4,r5,4a0a4 <___vfiprintf_internal_r+0xed8>
- 49704: 1002b11e bne r2,zero,4a1cc <___vfiprintf_internal_r+0x1000>
- 49708: 01802004 movi r6,128
- 4970c: 01400044 movi r5,1
- 49710: 0009883a mov r4,zero
- 49714: d811883a mov r8,sp
- 49718: 1981ae1e bne r3,r6,49dd4 <___vfiprintf_internal_r+0xc08>
- 4971c: d8c02517 ldw r3,148(sp)
- 49720: 1cf9c83a sub fp,r3,r19
- 49724: 0701ab0e bge zero,fp,49dd4 <___vfiprintf_internal_r+0xc08>
- 49728: 05400404 movi r21,16
- 4972c: af03a90e bge r21,fp,4a5d4 <___vfiprintf_internal_r+0x1408>
- 49730: 01400174 movhi r5,5
- 49734: 2948e004 addi r5,r5,9088
- 49738: d9402315 stw r5,140(sp)
- 4973c: 01c001c4 movi r7,7
- 49740: 00000506 br 49758 <___vfiprintf_internal_r+0x58c>
- 49744: 21800084 addi r6,r4,2
- 49748: 42000204 addi r8,r8,8
- 4974c: 1809883a mov r4,r3
- 49750: e73ffc04 addi fp,fp,-16
- 49754: af000d0e bge r21,fp,4978c <___vfiprintf_internal_r+0x5c0>
- 49758: 10800404 addi r2,r2,16
- 4975c: 20c00044 addi r3,r4,1
- 49760: 44800015 stw r18,0(r8)
- 49764: 45400115 stw r21,4(r8)
- 49768: d8801c15 stw r2,112(sp)
- 4976c: d8c01b15 stw r3,108(sp)
- 49770: 38fff40e bge r7,r3,49744 <__alt_data_end+0xfffd7744>
- 49774: 10022b1e bne r2,zero,4a024 <___vfiprintf_internal_r+0xe58>
- 49778: e73ffc04 addi fp,fp,-16
- 4977c: 01800044 movi r6,1
- 49780: 0009883a mov r4,zero
- 49784: d811883a mov r8,sp
- 49788: af3ff316 blt r21,fp,49758 <__alt_data_end+0xfffd7758>
- 4978c: d8c02317 ldw r3,140(sp)
- 49790: 1705883a add r2,r2,fp
- 49794: 47000115 stw fp,4(r8)
- 49798: 40c00015 stw r3,0(r8)
- 4979c: d8801c15 stw r2,112(sp)
- 497a0: d9801b15 stw r6,108(sp)
- 497a4: 00c001c4 movi r3,7
- 497a8: 19829416 blt r3,r6,4a1fc <___vfiprintf_internal_r+0x1030>
- 497ac: 8521c83a sub r16,r16,r20
- 497b0: 42000204 addi r8,r8,8
- 497b4: 31400044 addi r5,r6,1
- 497b8: 3009883a mov r4,r6
- 497bc: 04018716 blt zero,r16,49ddc <___vfiprintf_internal_r+0xc10>
- 497c0: a085883a add r2,r20,r2
- 497c4: 45c00015 stw r23,0(r8)
- 497c8: 45000115 stw r20,4(r8)
- 497cc: d8801c15 stw r2,112(sp)
- 497d0: d9401b15 stw r5,108(sp)
- 497d4: 00c001c4 movi r3,7
- 497d8: 1941c20e bge r3,r5,49ee4 <___vfiprintf_internal_r+0xd18>
- 497dc: 1002531e bne r2,zero,4a12c <___vfiprintf_internal_r+0xf60>
- 497e0: d8001b15 stw zero,108(sp)
- 497e4: 8c40010c andi r17,r17,4
- 497e8: 88023226 beq r17,zero,4a0b4 <___vfiprintf_internal_r+0xee8>
- 497ec: d9002517 ldw r4,148(sp)
- 497f0: 24e3c83a sub r17,r4,r19
- 497f4: 04432916 blt zero,r17,4a49c <___vfiprintf_internal_r+0x12d0>
- 497f8: d8802517 ldw r2,148(sp)
- 497fc: 14c0010e bge r2,r19,49804 <___vfiprintf_internal_r+0x638>
- 49800: 9805883a mov r2,r19
- 49804: d8c02417 ldw r3,144(sp)
- 49808: 1887883a add r3,r3,r2
- 4980c: d8c02415 stw r3,144(sp)
- 49810: d8001b15 stw zero,108(sp)
- 49814: d811883a mov r8,sp
- 49818: 003ea006 br 4929c <__alt_data_end+0xfffd729c>
- 4981c: 8c400814 ori r17,r17,32
- 49820: b0c00007 ldb r3,0(r22)
- 49824: 003ec606 br 49340 <__alt_data_end+0xfffd7340>
- 49828: b0c00007 ldb r3,0(r22)
- 4982c: 00801b04 movi r2,108
- 49830: 18832026 beq r3,r2,4a4b4 <___vfiprintf_internal_r+0x12e8>
- 49834: 8c400414 ori r17,r17,16
- 49838: 003ec106 br 49340 <__alt_data_end+0xfffd7340>
- 4983c: 9cc03fcc andi r19,r19,255
- 49840: b811883a mov r8,r23
- 49844: 9803981e bne r19,zero,4a6a8 <___vfiprintf_internal_r+0x14dc>
- 49848: 8880080c andi r2,r17,32
- 4984c: 1002be26 beq r2,zero,4a348 <___vfiprintf_internal_r+0x117c>
- 49850: d9002217 ldw r4,136(sp)
- 49854: d9402417 ldw r5,144(sp)
- 49858: 20800017 ldw r2,0(r4)
- 4985c: 2807d7fa srai r3,r5,31
- 49860: 21000104 addi r4,r4,4
- 49864: d9002215 stw r4,136(sp)
- 49868: 11400015 stw r5,0(r2)
- 4986c: 10c00115 stw r3,4(r2)
- 49870: 003e8a06 br 4929c <__alt_data_end+0xfffd729c>
- 49874: 9cc03fcc andi r19,r19,255
- 49878: b811883a mov r8,r23
- 4987c: 9803871e bne r19,zero,4a69c <___vfiprintf_internal_r+0x14d0>
- 49880: 8880080c andi r2,r17,32
- 49884: 10009a26 beq r2,zero,49af0 <___vfiprintf_internal_r+0x924>
- 49888: d9002217 ldw r4,136(sp)
- 4988c: d8001d85 stb zero,118(sp)
- 49890: 20800204 addi r2,r4,8
- 49894: 24c00017 ldw r19,0(r4)
- 49898: 25000117 ldw r20,4(r4)
- 4989c: 8002a416 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164>
- 498a0: 013fdfc4 movi r4,-129
- 498a4: 9d06b03a or r3,r19,r20
- 498a8: d8802215 stw r2,136(sp)
- 498ac: 8922703a and r17,r17,r4
- 498b0: 18009b26 beq r3,zero,49b20 <___vfiprintf_internal_r+0x954>
- 498b4: 002b883a mov r21,zero
- 498b8: ddc01a04 addi r23,sp,104
- 498bc: 9806d0fa srli r3,r19,3
- 498c0: a008977a slli r4,r20,29
- 498c4: a028d0fa srli r20,r20,3
- 498c8: 9cc001cc andi r19,r19,7
- 498cc: 98800c04 addi r2,r19,48
- 498d0: bdffffc4 addi r23,r23,-1
- 498d4: 20e6b03a or r19,r4,r3
- 498d8: b8800005 stb r2,0(r23)
- 498dc: 9d06b03a or r3,r19,r20
- 498e0: 183ff61e bne r3,zero,498bc <__alt_data_end+0xfffd78bc>
- 498e4: 88c0004c andi r3,r17,1
- 498e8: 18021f1e bne r3,zero,4a168 <___vfiprintf_internal_r+0xf9c>
- 498ec: d9401e17 ldw r5,120(sp)
- 498f0: 2de9c83a sub r20,r5,r23
- 498f4: 003f3806 br 495d8 <__alt_data_end+0xfffd75d8>
- 498f8: 9cc03fcc andi r19,r19,255
- 498fc: b811883a mov r8,r23
- 49900: 98034f1e bne r19,zero,4a640 <___vfiprintf_internal_r+0x1474>
- 49904: 00800174 movhi r2,5
- 49908: 10888004 addi r2,r2,8704
- 4990c: d8802615 stw r2,152(sp)
- 49910: 8880080c andi r2,r17,32
- 49914: 1000ac26 beq r2,zero,49bc8 <___vfiprintf_internal_r+0x9fc>
- 49918: d9002217 ldw r4,136(sp)
- 4991c: 24c00017 ldw r19,0(r4)
- 49920: 25000117 ldw r20,4(r4)
- 49924: 21000204 addi r4,r4,8
- 49928: d9002215 stw r4,136(sp)
- 4992c: 8880004c andi r2,r17,1
- 49930: 1001e726 beq r2,zero,4a0d0 <___vfiprintf_internal_r+0xf04>
- 49934: 9d04b03a or r2,r19,r20
- 49938: 10025c1e bne r2,zero,4a2ac <___vfiprintf_internal_r+0x10e0>
- 4993c: d8001d85 stb zero,118(sp)
- 49940: 80024416 blt r16,zero,4a254 <___vfiprintf_internal_r+0x1088>
- 49944: 00bfdfc4 movi r2,-129
- 49948: 88a2703a and r17,r17,r2
- 4994c: 003f1d06 br 495c4 <__alt_data_end+0xfffd75c4>
- 49950: d8c02217 ldw r3,136(sp)
- 49954: 04c00044 movi r19,1
- 49958: b811883a mov r8,r23
- 4995c: 18800017 ldw r2,0(r3)
- 49960: 18c00104 addi r3,r3,4
- 49964: d8001d85 stb zero,118(sp)
- 49968: d8801005 stb r2,64(sp)
- 4996c: d8c02215 stw r3,136(sp)
- 49970: 9829883a mov r20,r19
- 49974: ddc01004 addi r23,sp,64
- 49978: 0021883a mov r16,zero
- 4997c: 003f1e06 br 495f8 <__alt_data_end+0xfffd75f8>
- 49980: 9cc03fcc andi r19,r19,255
- 49984: b811883a mov r8,r23
- 49988: 9803331e bne r19,zero,4a658 <___vfiprintf_internal_r+0x148c>
- 4998c: 8880080c andi r2,r17,32
- 49990: 10004826 beq r2,zero,49ab4 <___vfiprintf_internal_r+0x8e8>
- 49994: d9002217 ldw r4,136(sp)
- 49998: 20800117 ldw r2,4(r4)
- 4999c: 24c00017 ldw r19,0(r4)
- 499a0: 21000204 addi r4,r4,8
- 499a4: d9002215 stw r4,136(sp)
- 499a8: 1029883a mov r20,r2
- 499ac: 10024c16 blt r2,zero,4a2e0 <___vfiprintf_internal_r+0x1114>
- 499b0: dd401d83 ldbu r21,118(sp)
- 499b4: 80007116 blt r16,zero,49b7c <___vfiprintf_internal_r+0x9b0>
- 499b8: 00ffdfc4 movi r3,-129
- 499bc: 9d04b03a or r2,r19,r20
- 499c0: 88e2703a and r17,r17,r3
- 499c4: 1000d126 beq r2,zero,49d0c <___vfiprintf_internal_r+0xb40>
- 499c8: a0023526 beq r20,zero,4a2a0 <___vfiprintf_internal_r+0x10d4>
- 499cc: ddc01a04 addi r23,sp,104
- 499d0: 4039883a mov fp,r8
- 499d4: 9809883a mov r4,r19
- 499d8: a00b883a mov r5,r20
- 499dc: 01800284 movi r6,10
- 499e0: 000f883a mov r7,zero
- 499e4: 004c2800 call 4c280 <__umoddi3>
- 499e8: 10800c04 addi r2,r2,48
- 499ec: bdffffc4 addi r23,r23,-1
- 499f0: 9809883a mov r4,r19
- 499f4: a00b883a mov r5,r20
- 499f8: b8800005 stb r2,0(r23)
- 499fc: 01800284 movi r6,10
- 49a00: 000f883a mov r7,zero
- 49a04: 004bc840 call 4bc84 <__udivdi3>
- 49a08: 1027883a mov r19,r2
- 49a0c: 10c4b03a or r2,r2,r3
- 49a10: 1829883a mov r20,r3
- 49a14: 103fef1e bne r2,zero,499d4 <__alt_data_end+0xfffd79d4>
- 49a18: d9001e17 ldw r4,120(sp)
- 49a1c: e011883a mov r8,fp
- 49a20: 25e9c83a sub r20,r4,r23
- 49a24: 003eec06 br 495d8 <__alt_data_end+0xfffd75d8>
- 49a28: d8802307 ldb r2,140(sp)
- 49a2c: 1002361e bne r2,zero,4a308 <___vfiprintf_internal_r+0x113c>
- 49a30: 00c00804 movi r3,32
- 49a34: d8c02305 stb r3,140(sp)
- 49a38: 04c00044 movi r19,1
- 49a3c: b0c00007 ldb r3,0(r22)
- 49a40: 003e3f06 br 49340 <__alt_data_end+0xfffd7340>
- 49a44: 8c400054 ori r17,r17,1
- 49a48: b0c00007 ldb r3,0(r22)
- 49a4c: 003e3c06 br 49340 <__alt_data_end+0xfffd7340>
- 49a50: 8c402014 ori r17,r17,128
- 49a54: b0c00007 ldb r3,0(r22)
- 49a58: 003e3906 br 49340 <__alt_data_end+0xfffd7340>
- 49a5c: dc002715 stw r16,156(sp)
- 49a60: d8002515 stw zero,148(sp)
- 49a64: 1f3ff404 addi fp,r3,-48
- 49a68: 0009883a mov r4,zero
- 49a6c: b021883a mov r16,r22
- 49a70: 01400284 movi r5,10
- 49a74: 004c9f80 call 4c9f8 <__mulsi3>
- 49a78: 80c00007 ldb r3,0(r16)
- 49a7c: e089883a add r4,fp,r2
- 49a80: b5800044 addi r22,r22,1
- 49a84: 1f3ff404 addi fp,r3,-48
- 49a88: b021883a mov r16,r22
- 49a8c: af3ff82e bgeu r21,fp,49a70 <__alt_data_end+0xfffd7a70>
- 49a90: d9002515 stw r4,148(sp)
- 49a94: dc002717 ldw r16,156(sp)
- 49a98: 003e2a06 br 49344 <__alt_data_end+0xfffd7344>
- 49a9c: 9cc03fcc andi r19,r19,255
- 49aa0: b811883a mov r8,r23
- 49aa4: 9802e91e bne r19,zero,4a64c <___vfiprintf_internal_r+0x1480>
- 49aa8: 8c400414 ori r17,r17,16
- 49aac: 8880080c andi r2,r17,32
- 49ab0: 103fb81e bne r2,zero,49994 <__alt_data_end+0xfffd7994>
- 49ab4: 8880040c andi r2,r17,16
- 49ab8: 10022e26 beq r2,zero,4a374 <___vfiprintf_internal_r+0x11a8>
- 49abc: d9402217 ldw r5,136(sp)
- 49ac0: 2cc00017 ldw r19,0(r5)
- 49ac4: 29400104 addi r5,r5,4
- 49ac8: d9402215 stw r5,136(sp)
- 49acc: 9829d7fa srai r20,r19,31
- 49ad0: a005883a mov r2,r20
- 49ad4: 003fb506 br 499ac <__alt_data_end+0xfffd79ac>
- 49ad8: 9cc03fcc andi r19,r19,255
- 49adc: b811883a mov r8,r23
- 49ae0: 9802fa1e bne r19,zero,4a6cc <___vfiprintf_internal_r+0x1500>
- 49ae4: 8c400414 ori r17,r17,16
- 49ae8: 8880080c andi r2,r17,32
- 49aec: 103f661e bne r2,zero,49888 <__alt_data_end+0xfffd7888>
- 49af0: 8880040c andi r2,r17,16
- 49af4: 10020626 beq r2,zero,4a310 <___vfiprintf_internal_r+0x1144>
- 49af8: d9402217 ldw r5,136(sp)
- 49afc: d8001d85 stb zero,118(sp)
- 49b00: 0029883a mov r20,zero
- 49b04: 28800104 addi r2,r5,4
- 49b08: 2cc00017 ldw r19,0(r5)
- 49b0c: 80020816 blt r16,zero,4a330 <___vfiprintf_internal_r+0x1164>
- 49b10: 00ffdfc4 movi r3,-129
- 49b14: d8802215 stw r2,136(sp)
- 49b18: 88e2703a and r17,r17,r3
- 49b1c: 983f651e bne r19,zero,498b4 <__alt_data_end+0xfffd78b4>
- 49b20: 002b883a mov r21,zero
- 49b24: 8002cf26 beq r16,zero,4a664 <___vfiprintf_internal_r+0x1498>
- 49b28: 0027883a mov r19,zero
- 49b2c: 0029883a mov r20,zero
- 49b30: 003f6106 br 498b8 <__alt_data_end+0xfffd78b8>
- 49b34: 9cc03fcc andi r19,r19,255
- 49b38: b811883a mov r8,r23
- 49b3c: 9802e01e bne r19,zero,4a6c0 <___vfiprintf_internal_r+0x14f4>
- 49b40: 8c400414 ori r17,r17,16
- 49b44: 8880080c andi r2,r17,32
- 49b48: 1000641e bne r2,zero,49cdc <___vfiprintf_internal_r+0xb10>
- 49b4c: 8880040c andi r2,r17,16
- 49b50: 1001c81e bne r2,zero,4a274 <___vfiprintf_internal_r+0x10a8>
- 49b54: 8880100c andi r2,r17,64
- 49b58: d8001d85 stb zero,118(sp)
- 49b5c: 1002281e bne r2,zero,4a400 <___vfiprintf_internal_r+0x1234>
- 49b60: d9002217 ldw r4,136(sp)
- 49b64: 0029883a mov r20,zero
- 49b68: 20800104 addi r2,r4,4
- 49b6c: 24c00017 ldw r19,0(r4)
- 49b70: 8001c60e bge r16,zero,4a28c <___vfiprintf_internal_r+0x10c0>
- 49b74: d8802215 stw r2,136(sp)
- 49b78: 002b883a mov r21,zero
- 49b7c: 9d04b03a or r2,r19,r20
- 49b80: 103f911e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8>
- 49b84: 00800044 movi r2,1
- 49b88: 10803fcc andi r2,r2,255
- 49b8c: 00c00044 movi r3,1
- 49b90: 10c05f26 beq r2,r3,49d10 <___vfiprintf_internal_r+0xb44>
- 49b94: 00c00084 movi r3,2
- 49b98: 10ffe31e bne r2,r3,49b28 <__alt_data_end+0xfffd7b28>
- 49b9c: 0027883a mov r19,zero
- 49ba0: 0029883a mov r20,zero
- 49ba4: 00015106 br 4a0ec <___vfiprintf_internal_r+0xf20>
- 49ba8: 9cc03fcc andi r19,r19,255
- 49bac: b811883a mov r8,r23
- 49bb0: 9802c01e bne r19,zero,4a6b4 <___vfiprintf_internal_r+0x14e8>
- 49bb4: 01400174 movhi r5,5
- 49bb8: 29487b04 addi r5,r5,8684
- 49bbc: d9402615 stw r5,152(sp)
- 49bc0: 8880080c andi r2,r17,32
- 49bc4: 103f541e bne r2,zero,49918 <__alt_data_end+0xfffd7918>
- 49bc8: 8880040c andi r2,r17,16
- 49bcc: 1001f226 beq r2,zero,4a398 <___vfiprintf_internal_r+0x11cc>
- 49bd0: d9402217 ldw r5,136(sp)
- 49bd4: 0029883a mov r20,zero
- 49bd8: 2cc00017 ldw r19,0(r5)
- 49bdc: 29400104 addi r5,r5,4
- 49be0: d9402215 stw r5,136(sp)
- 49be4: 003f5106 br 4992c <__alt_data_end+0xfffd792c>
- 49be8: d8c02217 ldw r3,136(sp)
- 49bec: b811883a mov r8,r23
- 49bf0: d8001d85 stb zero,118(sp)
- 49bf4: 1dc00017 ldw r23,0(r3)
- 49bf8: 1f000104 addi fp,r3,4
- 49bfc: b8025926 beq r23,zero,4a564 <___vfiprintf_internal_r+0x1398>
- 49c00: 80023316 blt r16,zero,4a4d0 <___vfiprintf_internal_r+0x1304>
- 49c04: 800d883a mov r6,r16
- 49c08: 000b883a mov r5,zero
- 49c0c: b809883a mov r4,r23
- 49c10: da002a15 stw r8,168(sp)
- 49c14: 00475dc0 call 475dc <memchr>
- 49c18: da002a17 ldw r8,168(sp)
- 49c1c: 10026826 beq r2,zero,4a5c0 <___vfiprintf_internal_r+0x13f4>
- 49c20: 15e9c83a sub r20,r2,r23
- 49c24: dd401d83 ldbu r21,118(sp)
- 49c28: df002215 stw fp,136(sp)
- 49c2c: 0021883a mov r16,zero
- 49c30: 003e6906 br 495d8 <__alt_data_end+0xfffd75d8>
- 49c34: 9cc03fcc andi r19,r19,255
- 49c38: b811883a mov r8,r23
- 49c3c: 983fc126 beq r19,zero,49b44 <__alt_data_end+0xfffd7b44>
- 49c40: d8c02303 ldbu r3,140(sp)
- 49c44: d8c01d85 stb r3,118(sp)
- 49c48: 003fbe06 br 49b44 <__alt_data_end+0xfffd7b44>
- 49c4c: d9002217 ldw r4,136(sp)
- 49c50: d9402217 ldw r5,136(sp)
- 49c54: 21000017 ldw r4,0(r4)
- 49c58: 28800104 addi r2,r5,4
- 49c5c: d9002515 stw r4,148(sp)
- 49c60: 203e3d16 blt r4,zero,49558 <__alt_data_end+0xfffd7558>
- 49c64: d8802215 stw r2,136(sp)
- 49c68: b0c00007 ldb r3,0(r22)
- 49c6c: 003db406 br 49340 <__alt_data_end+0xfffd7340>
- 49c70: 00c00ac4 movi r3,43
- 49c74: d8c02305 stb r3,140(sp)
- 49c78: 04c00044 movi r19,1
- 49c7c: b0c00007 ldb r3,0(r22)
- 49c80: 003daf06 br 49340 <__alt_data_end+0xfffd7340>
- 49c84: b0c00007 ldb r3,0(r22)
- 49c88: 01000a84 movi r4,42
- 49c8c: b4000044 addi r16,r22,1
- 49c90: 19025e26 beq r3,r4,4a60c <___vfiprintf_internal_r+0x1440>
- 49c94: 1f3ff404 addi fp,r3,-48
- 49c98: 0009883a mov r4,zero
- 49c9c: af025236 bltu r21,fp,4a5e8 <___vfiprintf_internal_r+0x141c>
- 49ca0: 01400284 movi r5,10
- 49ca4: 004c9f80 call 4c9f8 <__mulsi3>
- 49ca8: 80c00007 ldb r3,0(r16)
- 49cac: 1709883a add r4,r2,fp
- 49cb0: 85800044 addi r22,r16,1
- 49cb4: 1f3ff404 addi fp,r3,-48
- 49cb8: b021883a mov r16,r22
- 49cbc: af3ff82e bgeu r21,fp,49ca0 <__alt_data_end+0xfffd7ca0>
- 49cc0: 2021883a mov r16,r4
- 49cc4: 203d9f0e bge r4,zero,49344 <__alt_data_end+0xfffd7344>
- 49cc8: 043fffc4 movi r16,-1
- 49ccc: 003d9d06 br 49344 <__alt_data_end+0xfffd7344>
- 49cd0: 8c401014 ori r17,r17,64
- 49cd4: b0c00007 ldb r3,0(r22)
- 49cd8: 003d9906 br 49340 <__alt_data_end+0xfffd7340>
- 49cdc: d9002217 ldw r4,136(sp)
- 49ce0: d8001d85 stb zero,118(sp)
- 49ce4: 20c00204 addi r3,r4,8
- 49ce8: 24c00017 ldw r19,0(r4)
- 49cec: 25000117 ldw r20,4(r4)
- 49cf0: 8001e716 blt r16,zero,4a490 <___vfiprintf_internal_r+0x12c4>
- 49cf4: 013fdfc4 movi r4,-129
- 49cf8: 9d04b03a or r2,r19,r20
- 49cfc: d8c02215 stw r3,136(sp)
- 49d00: 8922703a and r17,r17,r4
- 49d04: 002b883a mov r21,zero
- 49d08: 103f2f1e bne r2,zero,499c8 <__alt_data_end+0xfffd79c8>
- 49d0c: 803e2f26 beq r16,zero,495cc <__alt_data_end+0xfffd75cc>
- 49d10: 0027883a mov r19,zero
- 49d14: 9cc00c04 addi r19,r19,48
- 49d18: dcc019c5 stb r19,103(sp)
- 49d1c: dd002817 ldw r20,160(sp)
- 49d20: ddc019c4 addi r23,sp,103
- 49d24: 003e2c06 br 495d8 <__alt_data_end+0xfffd75d8>
- 49d28: 9cc03fcc andi r19,r19,255
- 49d2c: b811883a mov r8,r23
- 49d30: 9802571e bne r19,zero,4a690 <___vfiprintf_internal_r+0x14c4>
- 49d34: 18005726 beq r3,zero,49e94 <___vfiprintf_internal_r+0xcc8>
- 49d38: 04c00044 movi r19,1
- 49d3c: d8c01005 stb r3,64(sp)
- 49d40: d8001d85 stb zero,118(sp)
- 49d44: 9829883a mov r20,r19
- 49d48: ddc01004 addi r23,sp,64
- 49d4c: 003f0a06 br 49978 <__alt_data_end+0xfffd7978>
- 49d50: d9402017 ldw r5,128(sp)
- 49d54: d9002117 ldw r4,132(sp)
- 49d58: d9801a04 addi r6,sp,104
- 49d5c: da802a15 stw r10,168(sp)
- 49d60: 00490b80 call 490b8 <__sprint_r.part.0>
- 49d64: da802a17 ldw r10,168(sp)
- 49d68: 1000501e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0>
- 49d6c: d9801b17 ldw r6,108(sp)
- 49d70: d8801c17 ldw r2,112(sp)
- 49d74: d811883a mov r8,sp
- 49d78: 31000044 addi r4,r6,1
- 49d7c: 003e3606 br 49658 <__alt_data_end+0xfffd7658>
- 49d80: d9001b17 ldw r4,108(sp)
- 49d84: d8801c17 ldw r2,112(sp)
- 49d88: 21400044 addi r5,r4,1
- 49d8c: d9801d87 ldb r6,118(sp)
- 49d90: 303e5226 beq r6,zero,496dc <__alt_data_end+0xfffd76dc>
- 49d94: 01800044 movi r6,1
- 49d98: d9001d84 addi r4,sp,118
- 49d9c: 1185883a add r2,r2,r6
- 49da0: 41000015 stw r4,0(r8)
- 49da4: 41800115 stw r6,4(r8)
- 49da8: d8801c15 stw r2,112(sp)
- 49dac: d9401b15 stw r5,108(sp)
- 49db0: 010001c4 movi r4,7
- 49db4: 2140b00e bge r4,r5,4a078 <___vfiprintf_internal_r+0xeac>
- 49db8: 1000f61e bne r2,zero,4a194 <___vfiprintf_internal_r+0xfc8>
- 49dbc: 3800b31e bne r7,zero,4a08c <___vfiprintf_internal_r+0xec0>
- 49dc0: 0009883a mov r4,zero
- 49dc4: 300b883a mov r5,r6
- 49dc8: d811883a mov r8,sp
- 49dcc: 01802004 movi r6,128
- 49dd0: 19be5226 beq r3,r6,4971c <__alt_data_end+0xfffd771c>
- 49dd4: 8521c83a sub r16,r16,r20
- 49dd8: 043e790e bge zero,r16,497c0 <__alt_data_end+0xfffd77c0>
- 49ddc: 05400404 movi r21,16
- 49de0: ac01b00e bge r21,r16,4a4a4 <___vfiprintf_internal_r+0x12d8>
- 49de4: 01400174 movhi r5,5
- 49de8: 2948e004 addi r5,r5,9088
- 49dec: d9402315 stw r5,140(sp)
- 49df0: 070001c4 movi fp,7
- 49df4: 00000506 br 49e0c <___vfiprintf_internal_r+0xc40>
- 49df8: 21400084 addi r5,r4,2
- 49dfc: 42000204 addi r8,r8,8
- 49e00: 1809883a mov r4,r3
- 49e04: 843ffc04 addi r16,r16,-16
- 49e08: ac000d0e bge r21,r16,49e40 <___vfiprintf_internal_r+0xc74>
- 49e0c: 10800404 addi r2,r2,16
- 49e10: 20c00044 addi r3,r4,1
- 49e14: 44800015 stw r18,0(r8)
- 49e18: 45400115 stw r21,4(r8)
- 49e1c: d8801c15 stw r2,112(sp)
- 49e20: d8c01b15 stw r3,108(sp)
- 49e24: e0fff40e bge fp,r3,49df8 <__alt_data_end+0xfffd7df8>
- 49e28: 1000101e bne r2,zero,49e6c <___vfiprintf_internal_r+0xca0>
- 49e2c: 843ffc04 addi r16,r16,-16
- 49e30: 01400044 movi r5,1
- 49e34: 0009883a mov r4,zero
- 49e38: d811883a mov r8,sp
- 49e3c: ac3ff316 blt r21,r16,49e0c <__alt_data_end+0xfffd7e0c>
- 49e40: d8c02317 ldw r3,140(sp)
- 49e44: 1405883a add r2,r2,r16
- 49e48: 44000115 stw r16,4(r8)
- 49e4c: 40c00015 stw r3,0(r8)
- 49e50: d8801c15 stw r2,112(sp)
- 49e54: d9401b15 stw r5,108(sp)
- 49e58: 00c001c4 movi r3,7
- 49e5c: 19401916 blt r3,r5,49ec4 <___vfiprintf_internal_r+0xcf8>
- 49e60: 42000204 addi r8,r8,8
- 49e64: 29400044 addi r5,r5,1
- 49e68: 003e5506 br 497c0 <__alt_data_end+0xfffd77c0>
- 49e6c: d9402017 ldw r5,128(sp)
- 49e70: d9002117 ldw r4,132(sp)
- 49e74: d9801a04 addi r6,sp,104
- 49e78: 00490b80 call 490b8 <__sprint_r.part.0>
- 49e7c: 10000b1e bne r2,zero,49eac <___vfiprintf_internal_r+0xce0>
- 49e80: d9001b17 ldw r4,108(sp)
- 49e84: d8801c17 ldw r2,112(sp)
- 49e88: d811883a mov r8,sp
- 49e8c: 21400044 addi r5,r4,1
- 49e90: 003fdc06 br 49e04 <__alt_data_end+0xfffd7e04>
- 49e94: d8801c17 ldw r2,112(sp)
- 49e98: 10000426 beq r2,zero,49eac <___vfiprintf_internal_r+0xce0>
- 49e9c: d9402017 ldw r5,128(sp)
- 49ea0: d9002117 ldw r4,132(sp)
- 49ea4: d9801a04 addi r6,sp,104
- 49ea8: 00490b80 call 490b8 <__sprint_r.part.0>
- 49eac: d9402017 ldw r5,128(sp)
- 49eb0: 2880030b ldhu r2,12(r5)
- 49eb4: 1080100c andi r2,r2,64
- 49eb8: 10014d1e bne r2,zero,4a3f0 <___vfiprintf_internal_r+0x1224>
- 49ebc: d8802417 ldw r2,144(sp)
- 49ec0: 003d9706 br 49520 <__alt_data_end+0xfffd7520>
- 49ec4: 1000d21e bne r2,zero,4a210 <___vfiprintf_internal_r+0x1044>
- 49ec8: 00c00044 movi r3,1
- 49ecc: a005883a mov r2,r20
- 49ed0: ddc00015 stw r23,0(sp)
- 49ed4: dd000115 stw r20,4(sp)
- 49ed8: dd001c15 stw r20,112(sp)
- 49edc: d8c01b15 stw r3,108(sp)
- 49ee0: d811883a mov r8,sp
- 49ee4: 42000204 addi r8,r8,8
- 49ee8: 8c40010c andi r17,r17,4
- 49eec: 88004026 beq r17,zero,49ff0 <___vfiprintf_internal_r+0xe24>
- 49ef0: d9002517 ldw r4,148(sp)
- 49ef4: 24e3c83a sub r17,r4,r19
- 49ef8: 04403d0e bge zero,r17,49ff0 <___vfiprintf_internal_r+0xe24>
- 49efc: 04000404 movi r16,16
- 49f00: 8441a90e bge r16,r17,4a5a8 <___vfiprintf_internal_r+0x13dc>
- 49f04: 00c00174 movhi r3,5
- 49f08: 18c8e404 addi r3,r3,9104
- 49f0c: d9001b17 ldw r4,108(sp)
- 49f10: d8c02315 stw r3,140(sp)
- 49f14: 050001c4 movi r20,7
- 49f18: dd402117 ldw r21,132(sp)
- 49f1c: ddc02017 ldw r23,128(sp)
- 49f20: 00000506 br 49f38 <___vfiprintf_internal_r+0xd6c>
- 49f24: 21400084 addi r5,r4,2
- 49f28: 42000204 addi r8,r8,8
- 49f2c: 1809883a mov r4,r3
- 49f30: 8c7ffc04 addi r17,r17,-16
- 49f34: 84400f0e bge r16,r17,49f74 <___vfiprintf_internal_r+0xda8>
- 49f38: 01400174 movhi r5,5
- 49f3c: 10800404 addi r2,r2,16
- 49f40: 20c00044 addi r3,r4,1
- 49f44: 2948e404 addi r5,r5,9104
- 49f48: 41400015 stw r5,0(r8)
- 49f4c: 44000115 stw r16,4(r8)
- 49f50: d8801c15 stw r2,112(sp)
- 49f54: d8c01b15 stw r3,108(sp)
- 49f58: a0fff20e bge r20,r3,49f24 <__alt_data_end+0xfffd7f24>
- 49f5c: 1000141e bne r2,zero,49fb0 <___vfiprintf_internal_r+0xde4>
- 49f60: 8c7ffc04 addi r17,r17,-16
- 49f64: 01400044 movi r5,1
- 49f68: 0009883a mov r4,zero
- 49f6c: d811883a mov r8,sp
- 49f70: 847ff116 blt r16,r17,49f38 <__alt_data_end+0xfffd7f38>
- 49f74: d8c02317 ldw r3,140(sp)
- 49f78: 1445883a add r2,r2,r17
- 49f7c: 44400115 stw r17,4(r8)
- 49f80: 40c00015 stw r3,0(r8)
- 49f84: d8801c15 stw r2,112(sp)
- 49f88: d9401b15 stw r5,108(sp)
- 49f8c: 00c001c4 movi r3,7
- 49f90: 1940170e bge r3,r5,49ff0 <___vfiprintf_internal_r+0xe24>
- 49f94: 1000101e bne r2,zero,49fd8 <___vfiprintf_internal_r+0xe0c>
- 49f98: d8802517 ldw r2,148(sp)
- 49f9c: 14c11616 blt r2,r19,4a3f8 <___vfiprintf_internal_r+0x122c>
- 49fa0: d9002417 ldw r4,144(sp)
- 49fa4: 2089883a add r4,r4,r2
- 49fa8: d9002415 stw r4,144(sp)
- 49fac: 003e1806 br 49810 <__alt_data_end+0xfffd7810>
- 49fb0: d9801a04 addi r6,sp,104
- 49fb4: b80b883a mov r5,r23
- 49fb8: a809883a mov r4,r21
- 49fbc: 00490b80 call 490b8 <__sprint_r.part.0>
- 49fc0: 103fba1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 49fc4: d9001b17 ldw r4,108(sp)
- 49fc8: d8801c17 ldw r2,112(sp)
- 49fcc: d811883a mov r8,sp
- 49fd0: 21400044 addi r5,r4,1
- 49fd4: 003fd606 br 49f30 <__alt_data_end+0xfffd7f30>
- 49fd8: d9402017 ldw r5,128(sp)
- 49fdc: d9002117 ldw r4,132(sp)
- 49fe0: d9801a04 addi r6,sp,104
- 49fe4: 00490b80 call 490b8 <__sprint_r.part.0>
- 49fe8: 103fb01e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 49fec: d8801c17 ldw r2,112(sp)
- 49ff0: d8c02517 ldw r3,148(sp)
- 49ff4: 1cc0010e bge r3,r19,49ffc <___vfiprintf_internal_r+0xe30>
- 49ff8: 9807883a mov r3,r19
- 49ffc: d9002417 ldw r4,144(sp)
- 4a000: 20c9883a add r4,r4,r3
- 4a004: d9002415 stw r4,144(sp)
- 4a008: 103e0126 beq r2,zero,49810 <__alt_data_end+0xfffd7810>
- 4a00c: d9402017 ldw r5,128(sp)
- 4a010: d9002117 ldw r4,132(sp)
- 4a014: d9801a04 addi r6,sp,104
- 4a018: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a01c: 103dfc26 beq r2,zero,49810 <__alt_data_end+0xfffd7810>
- 4a020: 003fa206 br 49eac <__alt_data_end+0xfffd7eac>
- 4a024: d9402017 ldw r5,128(sp)
- 4a028: d9002117 ldw r4,132(sp)
- 4a02c: d9801a04 addi r6,sp,104
- 4a030: d9c02b15 stw r7,172(sp)
- 4a034: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a038: d9c02b17 ldw r7,172(sp)
- 4a03c: 103f9b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a040: d9001b17 ldw r4,108(sp)
- 4a044: d8801c17 ldw r2,112(sp)
- 4a048: d811883a mov r8,sp
- 4a04c: 21800044 addi r6,r4,1
- 4a050: 003dbf06 br 49750 <__alt_data_end+0xfffd7750>
- 4a054: 1000d81e bne r2,zero,4a3b8 <___vfiprintf_internal_r+0x11ec>
- 4a058: d9001d87 ldb r4,118(sp)
- 4a05c: 20000a26 beq r4,zero,4a088 <___vfiprintf_internal_r+0xebc>
- 4a060: 00800044 movi r2,1
- 4a064: d9001d84 addi r4,sp,118
- 4a068: 100b883a mov r5,r2
- 4a06c: d9000015 stw r4,0(sp)
- 4a070: d8800115 stw r2,4(sp)
- 4a074: d811883a mov r8,sp
- 4a078: 2809883a mov r4,r5
- 4a07c: 42000204 addi r8,r8,8
- 4a080: 29400044 addi r5,r5,1
- 4a084: 003d9506 br 496dc <__alt_data_end+0xfffd76dc>
- 4a088: 3800fd26 beq r7,zero,4a480 <___vfiprintf_internal_r+0x12b4>
- 4a08c: 00800084 movi r2,2
- 4a090: d9001d04 addi r4,sp,116
- 4a094: d9000015 stw r4,0(sp)
- 4a098: d8800115 stw r2,4(sp)
- 4a09c: 01400044 movi r5,1
- 4a0a0: d811883a mov r8,sp
- 4a0a4: 2809883a mov r4,r5
- 4a0a8: 42000204 addi r8,r8,8
- 4a0ac: 29400044 addi r5,r5,1
- 4a0b0: 003f4606 br 49dcc <__alt_data_end+0xfffd7dcc>
- 4a0b4: d8802517 ldw r2,148(sp)
- 4a0b8: 14c0010e bge r2,r19,4a0c0 <___vfiprintf_internal_r+0xef4>
- 4a0bc: 9805883a mov r2,r19
- 4a0c0: d9402417 ldw r5,144(sp)
- 4a0c4: 288b883a add r5,r5,r2
- 4a0c8: d9402415 stw r5,144(sp)
- 4a0cc: 003dd006 br 49810 <__alt_data_end+0xfffd7810>
- 4a0d0: d8001d85 stb zero,118(sp)
- 4a0d4: 80005d16 blt r16,zero,4a24c <___vfiprintf_internal_r+0x1080>
- 4a0d8: 00ffdfc4 movi r3,-129
- 4a0dc: 9d04b03a or r2,r19,r20
- 4a0e0: 88e2703a and r17,r17,r3
- 4a0e4: 103d3726 beq r2,zero,495c4 <__alt_data_end+0xfffd75c4>
- 4a0e8: 002b883a mov r21,zero
- 4a0ec: d9002617 ldw r4,152(sp)
- 4a0f0: ddc01a04 addi r23,sp,104
- 4a0f4: 988003cc andi r2,r19,15
- 4a0f8: a006973a slli r3,r20,28
- 4a0fc: 2085883a add r2,r4,r2
- 4a100: 9826d13a srli r19,r19,4
- 4a104: 10800003 ldbu r2,0(r2)
- 4a108: a028d13a srli r20,r20,4
- 4a10c: bdffffc4 addi r23,r23,-1
- 4a110: 1ce6b03a or r19,r3,r19
- 4a114: b8800005 stb r2,0(r23)
- 4a118: 9d04b03a or r2,r19,r20
- 4a11c: 103ff51e bne r2,zero,4a0f4 <__alt_data_end+0xfffd80f4>
- 4a120: d8801e17 ldw r2,120(sp)
- 4a124: 15e9c83a sub r20,r2,r23
- 4a128: 003d2b06 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a12c: d9402017 ldw r5,128(sp)
- 4a130: d9002117 ldw r4,132(sp)
- 4a134: d9801a04 addi r6,sp,104
- 4a138: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a13c: 103f5b1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a140: d8801c17 ldw r2,112(sp)
- 4a144: d811883a mov r8,sp
- 4a148: 003f6706 br 49ee8 <__alt_data_end+0xfffd7ee8>
- 4a14c: d9402017 ldw r5,128(sp)
- 4a150: d9002117 ldw r4,132(sp)
- 4a154: d9801a04 addi r6,sp,104
- 4a158: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a15c: 103f531e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a160: d811883a mov r8,sp
- 4a164: 003cd906 br 494cc <__alt_data_end+0xfffd74cc>
- 4a168: 10803fcc andi r2,r2,255
- 4a16c: 1080201c xori r2,r2,128
- 4a170: 10bfe004 addi r2,r2,-128
- 4a174: 00c00c04 movi r3,48
- 4a178: 10ffe926 beq r2,r3,4a120 <__alt_data_end+0xfffd8120>
- 4a17c: b8ffffc5 stb r3,-1(r23)
- 4a180: d8c01e17 ldw r3,120(sp)
- 4a184: b8bfffc4 addi r2,r23,-1
- 4a188: 102f883a mov r23,r2
- 4a18c: 18a9c83a sub r20,r3,r2
- 4a190: 003d1106 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a194: d9402017 ldw r5,128(sp)
- 4a198: d9002117 ldw r4,132(sp)
- 4a19c: d9801a04 addi r6,sp,104
- 4a1a0: d8c02a15 stw r3,168(sp)
- 4a1a4: d9c02b15 stw r7,172(sp)
- 4a1a8: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a1ac: d8c02a17 ldw r3,168(sp)
- 4a1b0: d9c02b17 ldw r7,172(sp)
- 4a1b4: 103f3d1e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a1b8: d9001b17 ldw r4,108(sp)
- 4a1bc: d8801c17 ldw r2,112(sp)
- 4a1c0: d811883a mov r8,sp
- 4a1c4: 21400044 addi r5,r4,1
- 4a1c8: 003d4406 br 496dc <__alt_data_end+0xfffd76dc>
- 4a1cc: d9402017 ldw r5,128(sp)
- 4a1d0: d9002117 ldw r4,132(sp)
- 4a1d4: d9801a04 addi r6,sp,104
- 4a1d8: d8c02a15 stw r3,168(sp)
- 4a1dc: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a1e0: d8c02a17 ldw r3,168(sp)
- 4a1e4: 103f311e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a1e8: d9001b17 ldw r4,108(sp)
- 4a1ec: d8801c17 ldw r2,112(sp)
- 4a1f0: d811883a mov r8,sp
- 4a1f4: 21400044 addi r5,r4,1
- 4a1f8: 003ef406 br 49dcc <__alt_data_end+0xfffd7dcc>
- 4a1fc: 1000bd1e bne r2,zero,4a4f4 <___vfiprintf_internal_r+0x1328>
- 4a200: 01400044 movi r5,1
- 4a204: 0009883a mov r4,zero
- 4a208: d811883a mov r8,sp
- 4a20c: 003ef106 br 49dd4 <__alt_data_end+0xfffd7dd4>
- 4a210: d9402017 ldw r5,128(sp)
- 4a214: d9002117 ldw r4,132(sp)
- 4a218: d9801a04 addi r6,sp,104
- 4a21c: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a220: 103f221e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a224: d9401b17 ldw r5,108(sp)
- 4a228: d8801c17 ldw r2,112(sp)
- 4a22c: d811883a mov r8,sp
- 4a230: 29400044 addi r5,r5,1
- 4a234: 003d6206 br 497c0 <__alt_data_end+0xfffd77c0>
- 4a238: 01400174 movhi r5,5
- 4a23c: 29488004 addi r5,r5,8704
- 4a240: d9402615 stw r5,152(sp)
- 4a244: d8c02215 stw r3,136(sp)
- 4a248: 1023883a mov r17,r2
- 4a24c: 9d04b03a or r2,r19,r20
- 4a250: 103fa51e bne r2,zero,4a0e8 <__alt_data_end+0xfffd80e8>
- 4a254: 002b883a mov r21,zero
- 4a258: 00800084 movi r2,2
- 4a25c: 003e4a06 br 49b88 <__alt_data_end+0xfffd7b88>
- 4a260: 01400174 movhi r5,5
- 4a264: 29488004 addi r5,r5,8704
- 4a268: 002b883a mov r21,zero
- 4a26c: d9402615 stw r5,152(sp)
- 4a270: 003f9e06 br 4a0ec <__alt_data_end+0xfffd80ec>
- 4a274: d9402217 ldw r5,136(sp)
- 4a278: d8001d85 stb zero,118(sp)
- 4a27c: 0029883a mov r20,zero
- 4a280: 28800104 addi r2,r5,4
- 4a284: 2cc00017 ldw r19,0(r5)
- 4a288: 803e3a16 blt r16,zero,49b74 <__alt_data_end+0xfffd7b74>
- 4a28c: 00ffdfc4 movi r3,-129
- 4a290: d8802215 stw r2,136(sp)
- 4a294: 88e2703a and r17,r17,r3
- 4a298: 002b883a mov r21,zero
- 4a29c: 983e9b26 beq r19,zero,49d0c <__alt_data_end+0xfffd7d0c>
- 4a2a0: 00800244 movi r2,9
- 4a2a4: 14fdc936 bltu r2,r19,499cc <__alt_data_end+0xfffd79cc>
- 4a2a8: 003e9a06 br 49d14 <__alt_data_end+0xfffd7d14>
- 4a2ac: 00800c04 movi r2,48
- 4a2b0: d8c01d45 stb r3,117(sp)
- 4a2b4: d8801d05 stb r2,116(sp)
- 4a2b8: d8001d85 stb zero,118(sp)
- 4a2bc: 88c00094 ori r3,r17,2
- 4a2c0: 80009c16 blt r16,zero,4a534 <___vfiprintf_internal_r+0x1368>
- 4a2c4: 00bfdfc4 movi r2,-129
- 4a2c8: 88a2703a and r17,r17,r2
- 4a2cc: 8c400094 ori r17,r17,2
- 4a2d0: 002b883a mov r21,zero
- 4a2d4: 003f8506 br 4a0ec <__alt_data_end+0xfffd80ec>
- 4a2d8: b029883a mov r20,r22
- 4a2dc: 003c0b06 br 4930c <__alt_data_end+0xfffd730c>
- 4a2e0: 04e7c83a sub r19,zero,r19
- 4a2e4: 05400b44 movi r21,45
- 4a2e8: 9804c03a cmpne r2,r19,zero
- 4a2ec: 0529c83a sub r20,zero,r20
- 4a2f0: dd401d85 stb r21,118(sp)
- 4a2f4: a0a9c83a sub r20,r20,r2
- 4a2f8: 80009716 blt r16,zero,4a558 <___vfiprintf_internal_r+0x138c>
- 4a2fc: 00bfdfc4 movi r2,-129
- 4a300: 88a2703a and r17,r17,r2
- 4a304: 003db006 br 499c8 <__alt_data_end+0xfffd79c8>
- 4a308: b0c00007 ldb r3,0(r22)
- 4a30c: 003c0c06 br 49340 <__alt_data_end+0xfffd7340>
- 4a310: 8880100c andi r2,r17,64
- 4a314: d8001d85 stb zero,118(sp)
- 4a318: 1000461e bne r2,zero,4a434 <___vfiprintf_internal_r+0x1268>
- 4a31c: d9002217 ldw r4,136(sp)
- 4a320: 0029883a mov r20,zero
- 4a324: 20800104 addi r2,r4,4
- 4a328: 24c00017 ldw r19,0(r4)
- 4a32c: 803df80e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10>
- 4a330: 9d06b03a or r3,r19,r20
- 4a334: d8802215 stw r2,136(sp)
- 4a338: 183d5e1e bne r3,zero,498b4 <__alt_data_end+0xfffd78b4>
- 4a33c: 002b883a mov r21,zero
- 4a340: 0005883a mov r2,zero
- 4a344: 003e1006 br 49b88 <__alt_data_end+0xfffd7b88>
- 4a348: 8880040c andi r2,r17,16
- 4a34c: 1000321e bne r2,zero,4a418 <___vfiprintf_internal_r+0x124c>
- 4a350: 8c40100c andi r17,r17,64
- 4a354: 88008d26 beq r17,zero,4a58c <___vfiprintf_internal_r+0x13c0>
- 4a358: d9402217 ldw r5,136(sp)
- 4a35c: d8c02417 ldw r3,144(sp)
- 4a360: 28800017 ldw r2,0(r5)
- 4a364: 29400104 addi r5,r5,4
- 4a368: d9402215 stw r5,136(sp)
- 4a36c: 10c0000d sth r3,0(r2)
- 4a370: 003bca06 br 4929c <__alt_data_end+0xfffd729c>
- 4a374: 8880100c andi r2,r17,64
- 4a378: 10003a26 beq r2,zero,4a464 <___vfiprintf_internal_r+0x1298>
- 4a37c: d8802217 ldw r2,136(sp)
- 4a380: 14c0000f ldh r19,0(r2)
- 4a384: 10800104 addi r2,r2,4
- 4a388: d8802215 stw r2,136(sp)
- 4a38c: 9829d7fa srai r20,r19,31
- 4a390: a005883a mov r2,r20
- 4a394: 003d8506 br 499ac <__alt_data_end+0xfffd79ac>
- 4a398: 8880100c andi r2,r17,64
- 4a39c: 10002b26 beq r2,zero,4a44c <___vfiprintf_internal_r+0x1280>
- 4a3a0: d8802217 ldw r2,136(sp)
- 4a3a4: 0029883a mov r20,zero
- 4a3a8: 14c0000b ldhu r19,0(r2)
- 4a3ac: 10800104 addi r2,r2,4
- 4a3b0: d8802215 stw r2,136(sp)
- 4a3b4: 003d5d06 br 4992c <__alt_data_end+0xfffd792c>
- 4a3b8: d9402017 ldw r5,128(sp)
- 4a3bc: d9002117 ldw r4,132(sp)
- 4a3c0: d9801a04 addi r6,sp,104
- 4a3c4: d8c02a15 stw r3,168(sp)
- 4a3c8: d9c02b15 stw r7,172(sp)
- 4a3cc: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a3d0: d8c02a17 ldw r3,168(sp)
- 4a3d4: d9c02b17 ldw r7,172(sp)
- 4a3d8: 103eb41e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a3dc: d9001b17 ldw r4,108(sp)
- 4a3e0: d8801c17 ldw r2,112(sp)
- 4a3e4: d811883a mov r8,sp
- 4a3e8: 21400044 addi r5,r4,1
- 4a3ec: 003e6706 br 49d8c <__alt_data_end+0xfffd7d8c>
- 4a3f0: 00bfffc4 movi r2,-1
- 4a3f4: 003c4a06 br 49520 <__alt_data_end+0xfffd7520>
- 4a3f8: 9805883a mov r2,r19
- 4a3fc: 003ee806 br 49fa0 <__alt_data_end+0xfffd7fa0>
- 4a400: d8c02217 ldw r3,136(sp)
- 4a404: 0029883a mov r20,zero
- 4a408: 18800104 addi r2,r3,4
- 4a40c: 1cc0000b ldhu r19,0(r3)
- 4a410: 803f9e0e bge r16,zero,4a28c <__alt_data_end+0xfffd828c>
- 4a414: 003dd706 br 49b74 <__alt_data_end+0xfffd7b74>
- 4a418: d8c02217 ldw r3,136(sp)
- 4a41c: d9002417 ldw r4,144(sp)
- 4a420: 18800017 ldw r2,0(r3)
- 4a424: 18c00104 addi r3,r3,4
- 4a428: d8c02215 stw r3,136(sp)
- 4a42c: 11000015 stw r4,0(r2)
- 4a430: 003b9a06 br 4929c <__alt_data_end+0xfffd729c>
- 4a434: d8c02217 ldw r3,136(sp)
- 4a438: 0029883a mov r20,zero
- 4a43c: 18800104 addi r2,r3,4
- 4a440: 1cc0000b ldhu r19,0(r3)
- 4a444: 803db20e bge r16,zero,49b10 <__alt_data_end+0xfffd7b10>
- 4a448: 003fb906 br 4a330 <__alt_data_end+0xfffd8330>
- 4a44c: d9002217 ldw r4,136(sp)
- 4a450: 0029883a mov r20,zero
- 4a454: 24c00017 ldw r19,0(r4)
- 4a458: 21000104 addi r4,r4,4
- 4a45c: d9002215 stw r4,136(sp)
- 4a460: 003d3206 br 4992c <__alt_data_end+0xfffd792c>
- 4a464: d8c02217 ldw r3,136(sp)
- 4a468: 1cc00017 ldw r19,0(r3)
- 4a46c: 18c00104 addi r3,r3,4
- 4a470: d8c02215 stw r3,136(sp)
- 4a474: 9829d7fa srai r20,r19,31
- 4a478: a005883a mov r2,r20
- 4a47c: 003d4b06 br 499ac <__alt_data_end+0xfffd79ac>
- 4a480: 0009883a mov r4,zero
- 4a484: 01400044 movi r5,1
- 4a488: d811883a mov r8,sp
- 4a48c: 003e4f06 br 49dcc <__alt_data_end+0xfffd7dcc>
- 4a490: d8c02215 stw r3,136(sp)
- 4a494: 002b883a mov r21,zero
- 4a498: 003db806 br 49b7c <__alt_data_end+0xfffd7b7c>
- 4a49c: d811883a mov r8,sp
- 4a4a0: 003e9606 br 49efc <__alt_data_end+0xfffd7efc>
- 4a4a4: 01000174 movhi r4,5
- 4a4a8: 2108e004 addi r4,r4,9088
- 4a4ac: d9002315 stw r4,140(sp)
- 4a4b0: 003e6306 br 49e40 <__alt_data_end+0xfffd7e40>
- 4a4b4: b0c00043 ldbu r3,1(r22)
- 4a4b8: 8c400814 ori r17,r17,32
- 4a4bc: b5800044 addi r22,r22,1
- 4a4c0: 18c03fcc andi r3,r3,255
- 4a4c4: 18c0201c xori r3,r3,128
- 4a4c8: 18ffe004 addi r3,r3,-128
- 4a4cc: 003b9c06 br 49340 <__alt_data_end+0xfffd7340>
- 4a4d0: b809883a mov r4,r23
- 4a4d4: da002a15 stw r8,168(sp)
- 4a4d8: 00490200 call 49020 <strlen>
- 4a4dc: 1029883a mov r20,r2
- 4a4e0: dd401d83 ldbu r21,118(sp)
- 4a4e4: df002215 stw fp,136(sp)
- 4a4e8: 0021883a mov r16,zero
- 4a4ec: da002a17 ldw r8,168(sp)
- 4a4f0: 003c3906 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a4f4: d9402017 ldw r5,128(sp)
- 4a4f8: d9002117 ldw r4,132(sp)
- 4a4fc: d9801a04 addi r6,sp,104
- 4a500: 00490b80 call 490b8 <__sprint_r.part.0>
- 4a504: 103e691e bne r2,zero,49eac <__alt_data_end+0xfffd7eac>
- 4a508: d9001b17 ldw r4,108(sp)
- 4a50c: d8801c17 ldw r2,112(sp)
- 4a510: d811883a mov r8,sp
- 4a514: 21400044 addi r5,r4,1
- 4a518: 003e2e06 br 49dd4 <__alt_data_end+0xfffd7dd4>
- 4a51c: 01000174 movhi r4,5
- 4a520: 2108e404 addi r4,r4,9104
- 4a524: d9002315 stw r4,140(sp)
- 4a528: d9001b17 ldw r4,108(sp)
- 4a52c: 21000044 addi r4,r4,1
- 4a530: 003c5e06 br 496ac <__alt_data_end+0xfffd76ac>
- 4a534: 002b883a mov r21,zero
- 4a538: 00800084 movi r2,2
- 4a53c: 10803fcc andi r2,r2,255
- 4a540: 01000044 movi r4,1
- 4a544: 11002b26 beq r2,r4,4a5f4 <___vfiprintf_internal_r+0x1428>
- 4a548: 01000084 movi r4,2
- 4a54c: 11002b1e bne r2,r4,4a5fc <___vfiprintf_internal_r+0x1430>
- 4a550: 1823883a mov r17,r3
- 4a554: 003ee506 br 4a0ec <__alt_data_end+0xfffd80ec>
- 4a558: 8807883a mov r3,r17
- 4a55c: 00800044 movi r2,1
- 4a560: 003ff606 br 4a53c <__alt_data_end+0xfffd853c>
- 4a564: 00800184 movi r2,6
- 4a568: 1400012e bgeu r2,r16,4a570 <___vfiprintf_internal_r+0x13a4>
- 4a56c: 1021883a mov r16,r2
- 4a570: 8029883a mov r20,r16
- 4a574: 8027883a mov r19,r16
- 4a578: 80002216 blt r16,zero,4a604 <___vfiprintf_internal_r+0x1438>
- 4a57c: 05c00174 movhi r23,5
- 4a580: df002215 stw fp,136(sp)
- 4a584: bdc88504 addi r23,r23,8724
- 4a588: 003cfb06 br 49978 <__alt_data_end+0xfffd7978>
- 4a58c: d9002217 ldw r4,136(sp)
- 4a590: d9402417 ldw r5,144(sp)
- 4a594: 20800017 ldw r2,0(r4)
- 4a598: 21000104 addi r4,r4,4
- 4a59c: d9002215 stw r4,136(sp)
- 4a5a0: 11400015 stw r5,0(r2)
- 4a5a4: 003b3d06 br 4929c <__alt_data_end+0xfffd729c>
- 4a5a8: 01400174 movhi r5,5
- 4a5ac: 2948e404 addi r5,r5,9104
- 4a5b0: d9402315 stw r5,140(sp)
- 4a5b4: d9401b17 ldw r5,108(sp)
- 4a5b8: 29400044 addi r5,r5,1
- 4a5bc: 003e6d06 br 49f74 <__alt_data_end+0xfffd7f74>
- 4a5c0: 8029883a mov r20,r16
- 4a5c4: dd401d83 ldbu r21,118(sp)
- 4a5c8: df002215 stw fp,136(sp)
- 4a5cc: 0021883a mov r16,zero
- 4a5d0: 003c0106 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a5d4: 00c00174 movhi r3,5
- 4a5d8: 18c8e004 addi r3,r3,9088
- 4a5dc: d8c02315 stw r3,140(sp)
- 4a5e0: 280d883a mov r6,r5
- 4a5e4: 003c6906 br 4978c <__alt_data_end+0xfffd778c>
- 4a5e8: 802d883a mov r22,r16
- 4a5ec: 0021883a mov r16,zero
- 4a5f0: 003b5406 br 49344 <__alt_data_end+0xfffd7344>
- 4a5f4: 1823883a mov r17,r3
- 4a5f8: 003cf306 br 499c8 <__alt_data_end+0xfffd79c8>
- 4a5fc: 1823883a mov r17,r3
- 4a600: 003cad06 br 498b8 <__alt_data_end+0xfffd78b8>
- 4a604: 0027883a mov r19,zero
- 4a608: 003fdc06 br 4a57c <__alt_data_end+0xfffd857c>
- 4a60c: d9402217 ldw r5,136(sp)
- 4a610: 8005883a mov r2,r16
- 4a614: b0c00043 ldbu r3,1(r22)
- 4a618: 2c000017 ldw r16,0(r5)
- 4a61c: 29000104 addi r4,r5,4
- 4a620: d9002215 stw r4,136(sp)
- 4a624: 102d883a mov r22,r2
- 4a628: 803fa50e bge r16,zero,4a4c0 <__alt_data_end+0xfffd84c0>
- 4a62c: 18c03fcc andi r3,r3,255
- 4a630: 18c0201c xori r3,r3,128
- 4a634: 043fffc4 movi r16,-1
- 4a638: 18ffe004 addi r3,r3,-128
- 4a63c: 003b4006 br 49340 <__alt_data_end+0xfffd7340>
- 4a640: d9402303 ldbu r5,140(sp)
- 4a644: d9401d85 stb r5,118(sp)
- 4a648: 003cae06 br 49904 <__alt_data_end+0xfffd7904>
- 4a64c: d8c02303 ldbu r3,140(sp)
- 4a650: d8c01d85 stb r3,118(sp)
- 4a654: 003d1406 br 49aa8 <__alt_data_end+0xfffd7aa8>
- 4a658: d8c02303 ldbu r3,140(sp)
- 4a65c: d8c01d85 stb r3,118(sp)
- 4a660: 003cca06 br 4998c <__alt_data_end+0xfffd798c>
- 4a664: 8880004c andi r2,r17,1
- 4a668: 002b883a mov r21,zero
- 4a66c: 10000526 beq r2,zero,4a684 <___vfiprintf_internal_r+0x14b8>
- 4a670: 00800c04 movi r2,48
- 4a674: d88019c5 stb r2,103(sp)
- 4a678: dd002817 ldw r20,160(sp)
- 4a67c: ddc019c4 addi r23,sp,103
- 4a680: 003bd506 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a684: 0029883a mov r20,zero
- 4a688: ddc01a04 addi r23,sp,104
- 4a68c: 003bd206 br 495d8 <__alt_data_end+0xfffd75d8>
- 4a690: d9002303 ldbu r4,140(sp)
- 4a694: d9001d85 stb r4,118(sp)
- 4a698: 003da606 br 49d34 <__alt_data_end+0xfffd7d34>
- 4a69c: d8c02303 ldbu r3,140(sp)
- 4a6a0: d8c01d85 stb r3,118(sp)
- 4a6a4: 003c7606 br 49880 <__alt_data_end+0xfffd7880>
- 4a6a8: d8c02303 ldbu r3,140(sp)
- 4a6ac: d8c01d85 stb r3,118(sp)
- 4a6b0: 003c6506 br 49848 <__alt_data_end+0xfffd7848>
- 4a6b4: d9002303 ldbu r4,140(sp)
- 4a6b8: d9001d85 stb r4,118(sp)
- 4a6bc: 003d3d06 br 49bb4 <__alt_data_end+0xfffd7bb4>
- 4a6c0: d8c02303 ldbu r3,140(sp)
- 4a6c4: d8c01d85 stb r3,118(sp)
- 4a6c8: 003d1d06 br 49b40 <__alt_data_end+0xfffd7b40>
- 4a6cc: d8c02303 ldbu r3,140(sp)
- 4a6d0: d8c01d85 stb r3,118(sp)
- 4a6d4: 003d0306 br 49ae4 <__alt_data_end+0xfffd7ae4>
- 0004a6d8 <__vfiprintf_internal>:
- 4a6d8: 00800174 movhi r2,5
- 4a6dc: 10908b04 addi r2,r2,16940
- 4a6e0: 300f883a mov r7,r6
- 4a6e4: 280d883a mov r6,r5
- 4a6e8: 200b883a mov r5,r4
- 4a6ec: 11000017 ldw r4,0(r2)
- 4a6f0: 00491cc1 jmpi 491cc <___vfiprintf_internal_r>
- 0004a6f4 <__sbprintf>:
- 4a6f4: 2880030b ldhu r2,12(r5)
- 4a6f8: 2ac01917 ldw r11,100(r5)
- 4a6fc: 2a80038b ldhu r10,14(r5)
- 4a700: 2a400717 ldw r9,28(r5)
- 4a704: 2a000917 ldw r8,36(r5)
- 4a708: defee204 addi sp,sp,-1144
- 4a70c: 00c10004 movi r3,1024
- 4a710: dc011a15 stw r16,1128(sp)
- 4a714: 10bfff4c andi r2,r2,65533
- 4a718: 2821883a mov r16,r5
- 4a71c: d8cb883a add r5,sp,r3
- 4a720: dc811c15 stw r18,1136(sp)
- 4a724: dc411b15 stw r17,1132(sp)
- 4a728: dfc11d15 stw ra,1140(sp)
- 4a72c: 2025883a mov r18,r4
- 4a730: d881030d sth r2,1036(sp)
- 4a734: dac11915 stw r11,1124(sp)
- 4a738: da81038d sth r10,1038(sp)
- 4a73c: da410715 stw r9,1052(sp)
- 4a740: da010915 stw r8,1060(sp)
- 4a744: dec10015 stw sp,1024(sp)
- 4a748: dec10415 stw sp,1040(sp)
- 4a74c: d8c10215 stw r3,1032(sp)
- 4a750: d8c10515 stw r3,1044(sp)
- 4a754: d8010615 stw zero,1048(sp)
- 4a758: 00491cc0 call 491cc <___vfiprintf_internal_r>
- 4a75c: 1023883a mov r17,r2
- 4a760: 10000416 blt r2,zero,4a774 <__sbprintf+0x80>
- 4a764: d9410004 addi r5,sp,1024
- 4a768: 9009883a mov r4,r18
- 4a76c: 00461400 call 46140 <_fflush_r>
- 4a770: 10000d1e bne r2,zero,4a7a8 <__sbprintf+0xb4>
- 4a774: d881030b ldhu r2,1036(sp)
- 4a778: 1080100c andi r2,r2,64
- 4a77c: 10000326 beq r2,zero,4a78c <__sbprintf+0x98>
- 4a780: 8080030b ldhu r2,12(r16)
- 4a784: 10801014 ori r2,r2,64
- 4a788: 8080030d sth r2,12(r16)
- 4a78c: 8805883a mov r2,r17
- 4a790: dfc11d17 ldw ra,1140(sp)
- 4a794: dc811c17 ldw r18,1136(sp)
- 4a798: dc411b17 ldw r17,1132(sp)
- 4a79c: dc011a17 ldw r16,1128(sp)
- 4a7a0: dec11e04 addi sp,sp,1144
- 4a7a4: f800283a ret
- 4a7a8: 047fffc4 movi r17,-1
- 4a7ac: 003ff106 br 4a774 <__alt_data_end+0xfffd8774>
- 0004a7b0 <__swbuf_r>:
- 4a7b0: defffb04 addi sp,sp,-20
- 4a7b4: dcc00315 stw r19,12(sp)
- 4a7b8: dc800215 stw r18,8(sp)
- 4a7bc: dc000015 stw r16,0(sp)
- 4a7c0: dfc00415 stw ra,16(sp)
- 4a7c4: dc400115 stw r17,4(sp)
- 4a7c8: 2025883a mov r18,r4
- 4a7cc: 2827883a mov r19,r5
- 4a7d0: 3021883a mov r16,r6
- 4a7d4: 20000226 beq r4,zero,4a7e0 <__swbuf_r+0x30>
- 4a7d8: 20800e17 ldw r2,56(r4)
- 4a7dc: 10004226 beq r2,zero,4a8e8 <__swbuf_r+0x138>
- 4a7e0: 80800617 ldw r2,24(r16)
- 4a7e4: 8100030b ldhu r4,12(r16)
- 4a7e8: 80800215 stw r2,8(r16)
- 4a7ec: 2080020c andi r2,r4,8
- 4a7f0: 10003626 beq r2,zero,4a8cc <__swbuf_r+0x11c>
- 4a7f4: 80c00417 ldw r3,16(r16)
- 4a7f8: 18003426 beq r3,zero,4a8cc <__swbuf_r+0x11c>
- 4a7fc: 2088000c andi r2,r4,8192
- 4a800: 9c403fcc andi r17,r19,255
- 4a804: 10001a26 beq r2,zero,4a870 <__swbuf_r+0xc0>
- 4a808: 80800017 ldw r2,0(r16)
- 4a80c: 81000517 ldw r4,20(r16)
- 4a810: 10c7c83a sub r3,r2,r3
- 4a814: 1900200e bge r3,r4,4a898 <__swbuf_r+0xe8>
- 4a818: 18c00044 addi r3,r3,1
- 4a81c: 81000217 ldw r4,8(r16)
- 4a820: 11400044 addi r5,r2,1
- 4a824: 81400015 stw r5,0(r16)
- 4a828: 213fffc4 addi r4,r4,-1
- 4a82c: 81000215 stw r4,8(r16)
- 4a830: 14c00005 stb r19,0(r2)
- 4a834: 80800517 ldw r2,20(r16)
- 4a838: 10c01e26 beq r2,r3,4a8b4 <__swbuf_r+0x104>
- 4a83c: 8080030b ldhu r2,12(r16)
- 4a840: 1080004c andi r2,r2,1
- 4a844: 10000226 beq r2,zero,4a850 <__swbuf_r+0xa0>
- 4a848: 00800284 movi r2,10
- 4a84c: 88801926 beq r17,r2,4a8b4 <__swbuf_r+0x104>
- 4a850: 8805883a mov r2,r17
- 4a854: dfc00417 ldw ra,16(sp)
- 4a858: dcc00317 ldw r19,12(sp)
- 4a85c: dc800217 ldw r18,8(sp)
- 4a860: dc400117 ldw r17,4(sp)
- 4a864: dc000017 ldw r16,0(sp)
- 4a868: dec00504 addi sp,sp,20
- 4a86c: f800283a ret
- 4a870: 81401917 ldw r5,100(r16)
- 4a874: 00b7ffc4 movi r2,-8193
- 4a878: 21080014 ori r4,r4,8192
- 4a87c: 2884703a and r2,r5,r2
- 4a880: 80801915 stw r2,100(r16)
- 4a884: 80800017 ldw r2,0(r16)
- 4a888: 8100030d sth r4,12(r16)
- 4a88c: 81000517 ldw r4,20(r16)
- 4a890: 10c7c83a sub r3,r2,r3
- 4a894: 193fe016 blt r3,r4,4a818 <__alt_data_end+0xfffd8818>
- 4a898: 800b883a mov r5,r16
- 4a89c: 9009883a mov r4,r18
- 4a8a0: 00461400 call 46140 <_fflush_r>
- 4a8a4: 1000071e bne r2,zero,4a8c4 <__swbuf_r+0x114>
- 4a8a8: 80800017 ldw r2,0(r16)
- 4a8ac: 00c00044 movi r3,1
- 4a8b0: 003fda06 br 4a81c <__alt_data_end+0xfffd881c>
- 4a8b4: 800b883a mov r5,r16
- 4a8b8: 9009883a mov r4,r18
- 4a8bc: 00461400 call 46140 <_fflush_r>
- 4a8c0: 103fe326 beq r2,zero,4a850 <__alt_data_end+0xfffd8850>
- 4a8c4: 00bfffc4 movi r2,-1
- 4a8c8: 003fe206 br 4a854 <__alt_data_end+0xfffd8854>
- 4a8cc: 800b883a mov r5,r16
- 4a8d0: 9009883a mov r4,r18
- 4a8d4: 00445200 call 44520 <__swsetup_r>
- 4a8d8: 103ffa1e bne r2,zero,4a8c4 <__alt_data_end+0xfffd88c4>
- 4a8dc: 8100030b ldhu r4,12(r16)
- 4a8e0: 80c00417 ldw r3,16(r16)
- 4a8e4: 003fc506 br 4a7fc <__alt_data_end+0xfffd87fc>
- 4a8e8: 004652c0 call 4652c <__sinit>
- 4a8ec: 003fbc06 br 4a7e0 <__alt_data_end+0xfffd87e0>
- 0004a8f0 <__swbuf>:
- 4a8f0: 00800174 movhi r2,5
- 4a8f4: 10908b04 addi r2,r2,16940
- 4a8f8: 280d883a mov r6,r5
- 4a8fc: 200b883a mov r5,r4
- 4a900: 11000017 ldw r4,0(r2)
- 4a904: 004a7b01 jmpi 4a7b0 <__swbuf_r>
- 0004a908 <_write_r>:
- 4a908: defffd04 addi sp,sp,-12
- 4a90c: 2805883a mov r2,r5
- 4a910: dc000015 stw r16,0(sp)
- 4a914: 04000174 movhi r16,5
- 4a918: dc400115 stw r17,4(sp)
- 4a91c: 300b883a mov r5,r6
- 4a920: 8417ab04 addi r16,r16,24236
- 4a924: 2023883a mov r17,r4
- 4a928: 380d883a mov r6,r7
- 4a92c: 1009883a mov r4,r2
- 4a930: dfc00215 stw ra,8(sp)
- 4a934: 80000015 stw zero,0(r16)
- 4a938: 004f0ec0 call 4f0ec <write>
- 4a93c: 00ffffc4 movi r3,-1
- 4a940: 10c00526 beq r2,r3,4a958 <_write_r+0x50>
- 4a944: dfc00217 ldw ra,8(sp)
- 4a948: dc400117 ldw r17,4(sp)
- 4a94c: dc000017 ldw r16,0(sp)
- 4a950: dec00304 addi sp,sp,12
- 4a954: f800283a ret
- 4a958: 80c00017 ldw r3,0(r16)
- 4a95c: 183ff926 beq r3,zero,4a944 <__alt_data_end+0xfffd8944>
- 4a960: 88c00015 stw r3,0(r17)
- 4a964: 003ff706 br 4a944 <__alt_data_end+0xfffd8944>
- 0004a968 <_close_r>:
- 4a968: defffd04 addi sp,sp,-12
- 4a96c: dc000015 stw r16,0(sp)
- 4a970: 04000174 movhi r16,5
- 4a974: dc400115 stw r17,4(sp)
- 4a978: 8417ab04 addi r16,r16,24236
- 4a97c: 2023883a mov r17,r4
- 4a980: 2809883a mov r4,r5
- 4a984: dfc00215 stw ra,8(sp)
- 4a988: 80000015 stw zero,0(r16)
- 4a98c: 004e8940 call 4e894 <close>
- 4a990: 00ffffc4 movi r3,-1
- 4a994: 10c00526 beq r2,r3,4a9ac <_close_r+0x44>
- 4a998: dfc00217 ldw ra,8(sp)
- 4a99c: dc400117 ldw r17,4(sp)
- 4a9a0: dc000017 ldw r16,0(sp)
- 4a9a4: dec00304 addi sp,sp,12
- 4a9a8: f800283a ret
- 4a9ac: 80c00017 ldw r3,0(r16)
- 4a9b0: 183ff926 beq r3,zero,4a998 <__alt_data_end+0xfffd8998>
- 4a9b4: 88c00015 stw r3,0(r17)
- 4a9b8: 003ff706 br 4a998 <__alt_data_end+0xfffd8998>
- 0004a9bc <_calloc_r>:
- 4a9bc: defffe04 addi sp,sp,-8
- 4a9c0: 2805883a mov r2,r5
- 4a9c4: dc000015 stw r16,0(sp)
- 4a9c8: 300b883a mov r5,r6
- 4a9cc: 2021883a mov r16,r4
- 4a9d0: 1009883a mov r4,r2
- 4a9d4: dfc00115 stw ra,4(sp)
- 4a9d8: 004c9f80 call 4c9f8 <__mulsi3>
- 4a9dc: 100b883a mov r5,r2
- 4a9e0: 8009883a mov r4,r16
- 4a9e4: 0046dd00 call 46dd0 <_malloc_r>
- 4a9e8: 10002926 beq r2,zero,4aa90 <_calloc_r+0xd4>
- 4a9ec: 11bfff17 ldw r6,-4(r2)
- 4a9f0: 1021883a mov r16,r2
- 4a9f4: 00bfff04 movi r2,-4
- 4a9f8: 308c703a and r6,r6,r2
- 4a9fc: 00c00904 movi r3,36
- 4aa00: 308d883a add r6,r6,r2
- 4aa04: 19801636 bltu r3,r6,4aa60 <_calloc_r+0xa4>
- 4aa08: 008004c4 movi r2,19
- 4aa0c: 11800b2e bgeu r2,r6,4aa3c <_calloc_r+0x80>
- 4aa10: 80000015 stw zero,0(r16)
- 4aa14: 80000115 stw zero,4(r16)
- 4aa18: 008006c4 movi r2,27
- 4aa1c: 11801a2e bgeu r2,r6,4aa88 <_calloc_r+0xcc>
- 4aa20: 80000215 stw zero,8(r16)
- 4aa24: 80000315 stw zero,12(r16)
- 4aa28: 30c0151e bne r6,r3,4aa80 <_calloc_r+0xc4>
- 4aa2c: 80000415 stw zero,16(r16)
- 4aa30: 80800604 addi r2,r16,24
- 4aa34: 80000515 stw zero,20(r16)
- 4aa38: 00000106 br 4aa40 <_calloc_r+0x84>
- 4aa3c: 8005883a mov r2,r16
- 4aa40: 10000015 stw zero,0(r2)
- 4aa44: 10000115 stw zero,4(r2)
- 4aa48: 10000215 stw zero,8(r2)
- 4aa4c: 8005883a mov r2,r16
- 4aa50: dfc00117 ldw ra,4(sp)
- 4aa54: dc000017 ldw r16,0(sp)
- 4aa58: dec00204 addi sp,sp,8
- 4aa5c: f800283a ret
- 4aa60: 000b883a mov r5,zero
- 4aa64: 8009883a mov r4,r16
- 4aa68: 00478080 call 47808 <memset>
- 4aa6c: 8005883a mov r2,r16
- 4aa70: dfc00117 ldw ra,4(sp)
- 4aa74: dc000017 ldw r16,0(sp)
- 4aa78: dec00204 addi sp,sp,8
- 4aa7c: f800283a ret
- 4aa80: 80800404 addi r2,r16,16
- 4aa84: 003fee06 br 4aa40 <__alt_data_end+0xfffd8a40>
- 4aa88: 80800204 addi r2,r16,8
- 4aa8c: 003fec06 br 4aa40 <__alt_data_end+0xfffd8a40>
- 4aa90: 0005883a mov r2,zero
- 4aa94: 003fee06 br 4aa50 <__alt_data_end+0xfffd8a50>
- 0004aa98 <_fclose_r>:
- 4aa98: 28003926 beq r5,zero,4ab80 <_fclose_r+0xe8>
- 4aa9c: defffc04 addi sp,sp,-16
- 4aaa0: dc400115 stw r17,4(sp)
- 4aaa4: dc000015 stw r16,0(sp)
- 4aaa8: dfc00315 stw ra,12(sp)
- 4aaac: dc800215 stw r18,8(sp)
- 4aab0: 2023883a mov r17,r4
- 4aab4: 2821883a mov r16,r5
- 4aab8: 20000226 beq r4,zero,4aac4 <_fclose_r+0x2c>
- 4aabc: 20800e17 ldw r2,56(r4)
- 4aac0: 10002726 beq r2,zero,4ab60 <_fclose_r+0xc8>
- 4aac4: 8080030f ldh r2,12(r16)
- 4aac8: 1000071e bne r2,zero,4aae8 <_fclose_r+0x50>
- 4aacc: 0005883a mov r2,zero
- 4aad0: dfc00317 ldw ra,12(sp)
- 4aad4: dc800217 ldw r18,8(sp)
- 4aad8: dc400117 ldw r17,4(sp)
- 4aadc: dc000017 ldw r16,0(sp)
- 4aae0: dec00404 addi sp,sp,16
- 4aae4: f800283a ret
- 4aae8: 800b883a mov r5,r16
- 4aaec: 8809883a mov r4,r17
- 4aaf0: 0045f240 call 45f24 <__sflush_r>
- 4aaf4: 1025883a mov r18,r2
- 4aaf8: 80800b17 ldw r2,44(r16)
- 4aafc: 10000426 beq r2,zero,4ab10 <_fclose_r+0x78>
- 4ab00: 81400717 ldw r5,28(r16)
- 4ab04: 8809883a mov r4,r17
- 4ab08: 103ee83a callr r2
- 4ab0c: 10001616 blt r2,zero,4ab68 <_fclose_r+0xd0>
- 4ab10: 8080030b ldhu r2,12(r16)
- 4ab14: 1080200c andi r2,r2,128
- 4ab18: 1000151e bne r2,zero,4ab70 <_fclose_r+0xd8>
- 4ab1c: 81400c17 ldw r5,48(r16)
- 4ab20: 28000526 beq r5,zero,4ab38 <_fclose_r+0xa0>
- 4ab24: 80801004 addi r2,r16,64
- 4ab28: 28800226 beq r5,r2,4ab34 <_fclose_r+0x9c>
- 4ab2c: 8809883a mov r4,r17
- 4ab30: 00466a00 call 466a0 <_free_r>
- 4ab34: 80000c15 stw zero,48(r16)
- 4ab38: 81401117 ldw r5,68(r16)
- 4ab3c: 28000326 beq r5,zero,4ab4c <_fclose_r+0xb4>
- 4ab40: 8809883a mov r4,r17
- 4ab44: 00466a00 call 466a0 <_free_r>
- 4ab48: 80001115 stw zero,68(r16)
- 4ab4c: 004653c0 call 4653c <__sfp_lock_acquire>
- 4ab50: 8000030d sth zero,12(r16)
- 4ab54: 00465400 call 46540 <__sfp_lock_release>
- 4ab58: 9005883a mov r2,r18
- 4ab5c: 003fdc06 br 4aad0 <__alt_data_end+0xfffd8ad0>
- 4ab60: 004652c0 call 4652c <__sinit>
- 4ab64: 003fd706 br 4aac4 <__alt_data_end+0xfffd8ac4>
- 4ab68: 04bfffc4 movi r18,-1
- 4ab6c: 003fe806 br 4ab10 <__alt_data_end+0xfffd8b10>
- 4ab70: 81400417 ldw r5,16(r16)
- 4ab74: 8809883a mov r4,r17
- 4ab78: 00466a00 call 466a0 <_free_r>
- 4ab7c: 003fe706 br 4ab1c <__alt_data_end+0xfffd8b1c>
- 4ab80: 0005883a mov r2,zero
- 4ab84: f800283a ret
- 0004ab88 <fclose>:
- 4ab88: 00800174 movhi r2,5
- 4ab8c: 10908b04 addi r2,r2,16940
- 4ab90: 200b883a mov r5,r4
- 4ab94: 11000017 ldw r4,0(r2)
- 4ab98: 004aa981 jmpi 4aa98 <_fclose_r>
- 0004ab9c <__fputwc>:
- 4ab9c: defff804 addi sp,sp,-32
- 4aba0: dcc00415 stw r19,16(sp)
- 4aba4: dc800315 stw r18,12(sp)
- 4aba8: dc000115 stw r16,4(sp)
- 4abac: dfc00715 stw ra,28(sp)
- 4abb0: dd400615 stw r21,24(sp)
- 4abb4: dd000515 stw r20,20(sp)
- 4abb8: dc400215 stw r17,8(sp)
- 4abbc: 2027883a mov r19,r4
- 4abc0: 2825883a mov r18,r5
- 4abc4: 3021883a mov r16,r6
- 4abc8: 0046bc00 call 46bc0 <__locale_mb_cur_max>
- 4abcc: 00c00044 movi r3,1
- 4abd0: 10c03e26 beq r2,r3,4accc <__fputwc+0x130>
- 4abd4: 81c01704 addi r7,r16,92
- 4abd8: 900d883a mov r6,r18
- 4abdc: d80b883a mov r5,sp
- 4abe0: 9809883a mov r4,r19
- 4abe4: 004ba9c0 call 4ba9c <_wcrtomb_r>
- 4abe8: 1029883a mov r20,r2
- 4abec: 00bfffc4 movi r2,-1
- 4abf0: a0802026 beq r20,r2,4ac74 <__fputwc+0xd8>
- 4abf4: d9400003 ldbu r5,0(sp)
- 4abf8: a0001c26 beq r20,zero,4ac6c <__fputwc+0xd0>
- 4abfc: 0023883a mov r17,zero
- 4ac00: 05400284 movi r21,10
- 4ac04: 00000906 br 4ac2c <__fputwc+0x90>
- 4ac08: 80800017 ldw r2,0(r16)
- 4ac0c: 11400005 stb r5,0(r2)
- 4ac10: 80c00017 ldw r3,0(r16)
- 4ac14: 18c00044 addi r3,r3,1
- 4ac18: 80c00015 stw r3,0(r16)
- 4ac1c: 8c400044 addi r17,r17,1
- 4ac20: dc45883a add r2,sp,r17
- 4ac24: 8d00112e bgeu r17,r20,4ac6c <__fputwc+0xd0>
- 4ac28: 11400003 ldbu r5,0(r2)
- 4ac2c: 80c00217 ldw r3,8(r16)
- 4ac30: 18ffffc4 addi r3,r3,-1
- 4ac34: 80c00215 stw r3,8(r16)
- 4ac38: 183ff30e bge r3,zero,4ac08 <__alt_data_end+0xfffd8c08>
- 4ac3c: 80800617 ldw r2,24(r16)
- 4ac40: 18801916 blt r3,r2,4aca8 <__fputwc+0x10c>
- 4ac44: 80800017 ldw r2,0(r16)
- 4ac48: 11400005 stb r5,0(r2)
- 4ac4c: 80800017 ldw r2,0(r16)
- 4ac50: 10c00003 ldbu r3,0(r2)
- 4ac54: 10800044 addi r2,r2,1
- 4ac58: 1d402326 beq r3,r21,4ace8 <__fputwc+0x14c>
- 4ac5c: 80800015 stw r2,0(r16)
- 4ac60: 8c400044 addi r17,r17,1
- 4ac64: dc45883a add r2,sp,r17
- 4ac68: 8d3fef36 bltu r17,r20,4ac28 <__alt_data_end+0xfffd8c28>
- 4ac6c: 9005883a mov r2,r18
- 4ac70: 00000406 br 4ac84 <__fputwc+0xe8>
- 4ac74: 80c0030b ldhu r3,12(r16)
- 4ac78: a005883a mov r2,r20
- 4ac7c: 18c01014 ori r3,r3,64
- 4ac80: 80c0030d sth r3,12(r16)
- 4ac84: dfc00717 ldw ra,28(sp)
- 4ac88: dd400617 ldw r21,24(sp)
- 4ac8c: dd000517 ldw r20,20(sp)
- 4ac90: dcc00417 ldw r19,16(sp)
- 4ac94: dc800317 ldw r18,12(sp)
- 4ac98: dc400217 ldw r17,8(sp)
- 4ac9c: dc000117 ldw r16,4(sp)
- 4aca0: dec00804 addi sp,sp,32
- 4aca4: f800283a ret
- 4aca8: 800d883a mov r6,r16
- 4acac: 29403fcc andi r5,r5,255
- 4acb0: 9809883a mov r4,r19
- 4acb4: 004a7b00 call 4a7b0 <__swbuf_r>
- 4acb8: 10bfffe0 cmpeqi r2,r2,-1
- 4acbc: 10803fcc andi r2,r2,255
- 4acc0: 103fd626 beq r2,zero,4ac1c <__alt_data_end+0xfffd8c1c>
- 4acc4: 00bfffc4 movi r2,-1
- 4acc8: 003fee06 br 4ac84 <__alt_data_end+0xfffd8c84>
- 4accc: 90ffffc4 addi r3,r18,-1
- 4acd0: 01003f84 movi r4,254
- 4acd4: 20ffbf36 bltu r4,r3,4abd4 <__alt_data_end+0xfffd8bd4>
- 4acd8: 900b883a mov r5,r18
- 4acdc: dc800005 stb r18,0(sp)
- 4ace0: 1029883a mov r20,r2
- 4ace4: 003fc506 br 4abfc <__alt_data_end+0xfffd8bfc>
- 4ace8: 800d883a mov r6,r16
- 4acec: a80b883a mov r5,r21
- 4acf0: 9809883a mov r4,r19
- 4acf4: 004a7b00 call 4a7b0 <__swbuf_r>
- 4acf8: 10bfffe0 cmpeqi r2,r2,-1
- 4acfc: 003fef06 br 4acbc <__alt_data_end+0xfffd8cbc>
- 0004ad00 <_fputwc_r>:
- 4ad00: 3080030b ldhu r2,12(r6)
- 4ad04: 10c8000c andi r3,r2,8192
- 4ad08: 1800051e bne r3,zero,4ad20 <_fputwc_r+0x20>
- 4ad0c: 30c01917 ldw r3,100(r6)
- 4ad10: 10880014 ori r2,r2,8192
- 4ad14: 3080030d sth r2,12(r6)
- 4ad18: 18880014 ori r2,r3,8192
- 4ad1c: 30801915 stw r2,100(r6)
- 4ad20: 004ab9c1 jmpi 4ab9c <__fputwc>
- 0004ad24 <fputwc>:
- 4ad24: 00800174 movhi r2,5
- 4ad28: defffc04 addi sp,sp,-16
- 4ad2c: 10908b04 addi r2,r2,16940
- 4ad30: dc000115 stw r16,4(sp)
- 4ad34: 14000017 ldw r16,0(r2)
- 4ad38: dc400215 stw r17,8(sp)
- 4ad3c: dfc00315 stw ra,12(sp)
- 4ad40: 2023883a mov r17,r4
- 4ad44: 80000226 beq r16,zero,4ad50 <fputwc+0x2c>
- 4ad48: 80800e17 ldw r2,56(r16)
- 4ad4c: 10001026 beq r2,zero,4ad90 <fputwc+0x6c>
- 4ad50: 2880030b ldhu r2,12(r5)
- 4ad54: 10c8000c andi r3,r2,8192
- 4ad58: 1800051e bne r3,zero,4ad70 <fputwc+0x4c>
- 4ad5c: 28c01917 ldw r3,100(r5)
- 4ad60: 10880014 ori r2,r2,8192
- 4ad64: 2880030d sth r2,12(r5)
- 4ad68: 18880014 ori r2,r3,8192
- 4ad6c: 28801915 stw r2,100(r5)
- 4ad70: 280d883a mov r6,r5
- 4ad74: 8009883a mov r4,r16
- 4ad78: 880b883a mov r5,r17
- 4ad7c: dfc00317 ldw ra,12(sp)
- 4ad80: dc400217 ldw r17,8(sp)
- 4ad84: dc000117 ldw r16,4(sp)
- 4ad88: dec00404 addi sp,sp,16
- 4ad8c: 004ab9c1 jmpi 4ab9c <__fputwc>
- 4ad90: 8009883a mov r4,r16
- 4ad94: d9400015 stw r5,0(sp)
- 4ad98: 004652c0 call 4652c <__sinit>
- 4ad9c: d9400017 ldw r5,0(sp)
- 4ada0: 003feb06 br 4ad50 <__alt_data_end+0xfffd8d50>
- 0004ada4 <_fstat_r>:
- 4ada4: defffd04 addi sp,sp,-12
- 4ada8: 2805883a mov r2,r5
- 4adac: dc000015 stw r16,0(sp)
- 4adb0: 04000174 movhi r16,5
- 4adb4: dc400115 stw r17,4(sp)
- 4adb8: 8417ab04 addi r16,r16,24236
- 4adbc: 2023883a mov r17,r4
- 4adc0: 300b883a mov r5,r6
- 4adc4: 1009883a mov r4,r2
- 4adc8: dfc00215 stw ra,8(sp)
- 4adcc: 80000015 stw zero,0(r16)
- 4add0: 004e9d40 call 4e9d4 <fstat>
- 4add4: 00ffffc4 movi r3,-1
- 4add8: 10c00526 beq r2,r3,4adf0 <_fstat_r+0x4c>
- 4addc: dfc00217 ldw ra,8(sp)
- 4ade0: dc400117 ldw r17,4(sp)
- 4ade4: dc000017 ldw r16,0(sp)
- 4ade8: dec00304 addi sp,sp,12
- 4adec: f800283a ret
- 4adf0: 80c00017 ldw r3,0(r16)
- 4adf4: 183ff926 beq r3,zero,4addc <__alt_data_end+0xfffd8ddc>
- 4adf8: 88c00015 stw r3,0(r17)
- 4adfc: 003ff706 br 4addc <__alt_data_end+0xfffd8ddc>
- 0004ae00 <__sfvwrite_r>:
- 4ae00: 30800217 ldw r2,8(r6)
- 4ae04: 10006726 beq r2,zero,4afa4 <__sfvwrite_r+0x1a4>
- 4ae08: 28c0030b ldhu r3,12(r5)
- 4ae0c: defff404 addi sp,sp,-48
- 4ae10: dd400715 stw r21,28(sp)
- 4ae14: dd000615 stw r20,24(sp)
- 4ae18: dc000215 stw r16,8(sp)
- 4ae1c: dfc00b15 stw ra,44(sp)
- 4ae20: df000a15 stw fp,40(sp)
- 4ae24: ddc00915 stw r23,36(sp)
- 4ae28: dd800815 stw r22,32(sp)
- 4ae2c: dcc00515 stw r19,20(sp)
- 4ae30: dc800415 stw r18,16(sp)
- 4ae34: dc400315 stw r17,12(sp)
- 4ae38: 1880020c andi r2,r3,8
- 4ae3c: 2821883a mov r16,r5
- 4ae40: 202b883a mov r21,r4
- 4ae44: 3029883a mov r20,r6
- 4ae48: 10002726 beq r2,zero,4aee8 <__sfvwrite_r+0xe8>
- 4ae4c: 28800417 ldw r2,16(r5)
- 4ae50: 10002526 beq r2,zero,4aee8 <__sfvwrite_r+0xe8>
- 4ae54: 1880008c andi r2,r3,2
- 4ae58: a4400017 ldw r17,0(r20)
- 4ae5c: 10002a26 beq r2,zero,4af08 <__sfvwrite_r+0x108>
- 4ae60: 05a00034 movhi r22,32768
- 4ae64: 0027883a mov r19,zero
- 4ae68: 0025883a mov r18,zero
- 4ae6c: b5bf0004 addi r22,r22,-1024
- 4ae70: 980d883a mov r6,r19
- 4ae74: a809883a mov r4,r21
- 4ae78: 90004626 beq r18,zero,4af94 <__sfvwrite_r+0x194>
- 4ae7c: 900f883a mov r7,r18
- 4ae80: b480022e bgeu r22,r18,4ae8c <__sfvwrite_r+0x8c>
- 4ae84: 01e00034 movhi r7,32768
- 4ae88: 39ff0004 addi r7,r7,-1024
- 4ae8c: 80800917 ldw r2,36(r16)
- 4ae90: 81400717 ldw r5,28(r16)
- 4ae94: 103ee83a callr r2
- 4ae98: 00805a0e bge zero,r2,4b004 <__sfvwrite_r+0x204>
- 4ae9c: a0c00217 ldw r3,8(r20)
- 4aea0: 98a7883a add r19,r19,r2
- 4aea4: 90a5c83a sub r18,r18,r2
- 4aea8: 1885c83a sub r2,r3,r2
- 4aeac: a0800215 stw r2,8(r20)
- 4aeb0: 103fef1e bne r2,zero,4ae70 <__alt_data_end+0xfffd8e70>
- 4aeb4: 0005883a mov r2,zero
- 4aeb8: dfc00b17 ldw ra,44(sp)
- 4aebc: df000a17 ldw fp,40(sp)
- 4aec0: ddc00917 ldw r23,36(sp)
- 4aec4: dd800817 ldw r22,32(sp)
- 4aec8: dd400717 ldw r21,28(sp)
- 4aecc: dd000617 ldw r20,24(sp)
- 4aed0: dcc00517 ldw r19,20(sp)
- 4aed4: dc800417 ldw r18,16(sp)
- 4aed8: dc400317 ldw r17,12(sp)
- 4aedc: dc000217 ldw r16,8(sp)
- 4aee0: dec00c04 addi sp,sp,48
- 4aee4: f800283a ret
- 4aee8: 800b883a mov r5,r16
- 4aeec: a809883a mov r4,r21
- 4aef0: 00445200 call 44520 <__swsetup_r>
- 4aef4: 1000ee1e bne r2,zero,4b2b0 <__sfvwrite_r+0x4b0>
- 4aef8: 80c0030b ldhu r3,12(r16)
- 4aefc: a4400017 ldw r17,0(r20)
- 4af00: 1880008c andi r2,r3,2
- 4af04: 103fd61e bne r2,zero,4ae60 <__alt_data_end+0xfffd8e60>
- 4af08: 1880004c andi r2,r3,1
- 4af0c: 1000421e bne r2,zero,4b018 <__sfvwrite_r+0x218>
- 4af10: 0039883a mov fp,zero
- 4af14: 0025883a mov r18,zero
- 4af18: 90001a26 beq r18,zero,4af84 <__sfvwrite_r+0x184>
- 4af1c: 1880800c andi r2,r3,512
- 4af20: 84c00217 ldw r19,8(r16)
- 4af24: 10002126 beq r2,zero,4afac <__sfvwrite_r+0x1ac>
- 4af28: 982f883a mov r23,r19
- 4af2c: 94c09636 bltu r18,r19,4b188 <__sfvwrite_r+0x388>
- 4af30: 1881200c andi r2,r3,1152
- 4af34: 1000a11e bne r2,zero,4b1bc <__sfvwrite_r+0x3bc>
- 4af38: 81000017 ldw r4,0(r16)
- 4af3c: b80d883a mov r6,r23
- 4af40: e00b883a mov r5,fp
- 4af44: 004b37c0 call 4b37c <memmove>
- 4af48: 80c00217 ldw r3,8(r16)
- 4af4c: 81000017 ldw r4,0(r16)
- 4af50: 9005883a mov r2,r18
- 4af54: 1ce7c83a sub r19,r3,r19
- 4af58: 25cf883a add r7,r4,r23
- 4af5c: 84c00215 stw r19,8(r16)
- 4af60: 81c00015 stw r7,0(r16)
- 4af64: a0c00217 ldw r3,8(r20)
- 4af68: e0b9883a add fp,fp,r2
- 4af6c: 90a5c83a sub r18,r18,r2
- 4af70: 18a7c83a sub r19,r3,r2
- 4af74: a4c00215 stw r19,8(r20)
- 4af78: 983fce26 beq r19,zero,4aeb4 <__alt_data_end+0xfffd8eb4>
- 4af7c: 80c0030b ldhu r3,12(r16)
- 4af80: 903fe61e bne r18,zero,4af1c <__alt_data_end+0xfffd8f1c>
- 4af84: 8f000017 ldw fp,0(r17)
- 4af88: 8c800117 ldw r18,4(r17)
- 4af8c: 8c400204 addi r17,r17,8
- 4af90: 003fe106 br 4af18 <__alt_data_end+0xfffd8f18>
- 4af94: 8cc00017 ldw r19,0(r17)
- 4af98: 8c800117 ldw r18,4(r17)
- 4af9c: 8c400204 addi r17,r17,8
- 4afa0: 003fb306 br 4ae70 <__alt_data_end+0xfffd8e70>
- 4afa4: 0005883a mov r2,zero
- 4afa8: f800283a ret
- 4afac: 81000017 ldw r4,0(r16)
- 4afb0: 80800417 ldw r2,16(r16)
- 4afb4: 11005a36 bltu r2,r4,4b120 <__sfvwrite_r+0x320>
- 4afb8: 85c00517 ldw r23,20(r16)
- 4afbc: 95c05836 bltu r18,r23,4b120 <__sfvwrite_r+0x320>
- 4afc0: 00a00034 movhi r2,32768
- 4afc4: 10bfffc4 addi r2,r2,-1
- 4afc8: 9009883a mov r4,r18
- 4afcc: 1480012e bgeu r2,r18,4afd4 <__sfvwrite_r+0x1d4>
- 4afd0: 1009883a mov r4,r2
- 4afd4: b80b883a mov r5,r23
- 4afd8: 004c8440 call 4c844 <__divsi3>
- 4afdc: b80b883a mov r5,r23
- 4afe0: 1009883a mov r4,r2
- 4afe4: 004c9f80 call 4c9f8 <__mulsi3>
- 4afe8: 81400717 ldw r5,28(r16)
- 4afec: 80c00917 ldw r3,36(r16)
- 4aff0: 100f883a mov r7,r2
- 4aff4: e00d883a mov r6,fp
- 4aff8: a809883a mov r4,r21
- 4affc: 183ee83a callr r3
- 4b000: 00bfd816 blt zero,r2,4af64 <__alt_data_end+0xfffd8f64>
- 4b004: 8080030b ldhu r2,12(r16)
- 4b008: 10801014 ori r2,r2,64
- 4b00c: 8080030d sth r2,12(r16)
- 4b010: 00bfffc4 movi r2,-1
- 4b014: 003fa806 br 4aeb8 <__alt_data_end+0xfffd8eb8>
- 4b018: 0027883a mov r19,zero
- 4b01c: 0011883a mov r8,zero
- 4b020: 0039883a mov fp,zero
- 4b024: 0025883a mov r18,zero
- 4b028: 90001f26 beq r18,zero,4b0a8 <__sfvwrite_r+0x2a8>
- 4b02c: 40005a26 beq r8,zero,4b198 <__sfvwrite_r+0x398>
- 4b030: 982d883a mov r22,r19
- 4b034: 94c0012e bgeu r18,r19,4b03c <__sfvwrite_r+0x23c>
- 4b038: 902d883a mov r22,r18
- 4b03c: 81000017 ldw r4,0(r16)
- 4b040: 80800417 ldw r2,16(r16)
- 4b044: b02f883a mov r23,r22
- 4b048: 81c00517 ldw r7,20(r16)
- 4b04c: 1100032e bgeu r2,r4,4b05c <__sfvwrite_r+0x25c>
- 4b050: 80c00217 ldw r3,8(r16)
- 4b054: 38c7883a add r3,r7,r3
- 4b058: 1d801816 blt r3,r22,4b0bc <__sfvwrite_r+0x2bc>
- 4b05c: b1c03e16 blt r22,r7,4b158 <__sfvwrite_r+0x358>
- 4b060: 80800917 ldw r2,36(r16)
- 4b064: 81400717 ldw r5,28(r16)
- 4b068: e00d883a mov r6,fp
- 4b06c: da000115 stw r8,4(sp)
- 4b070: a809883a mov r4,r21
- 4b074: 103ee83a callr r2
- 4b078: 102f883a mov r23,r2
- 4b07c: da000117 ldw r8,4(sp)
- 4b080: 00bfe00e bge zero,r2,4b004 <__alt_data_end+0xfffd9004>
- 4b084: 9de7c83a sub r19,r19,r23
- 4b088: 98001f26 beq r19,zero,4b108 <__sfvwrite_r+0x308>
- 4b08c: a0800217 ldw r2,8(r20)
- 4b090: e5f9883a add fp,fp,r23
- 4b094: 95e5c83a sub r18,r18,r23
- 4b098: 15efc83a sub r23,r2,r23
- 4b09c: a5c00215 stw r23,8(r20)
- 4b0a0: b83f8426 beq r23,zero,4aeb4 <__alt_data_end+0xfffd8eb4>
- 4b0a4: 903fe11e bne r18,zero,4b02c <__alt_data_end+0xfffd902c>
- 4b0a8: 8f000017 ldw fp,0(r17)
- 4b0ac: 8c800117 ldw r18,4(r17)
- 4b0b0: 0011883a mov r8,zero
- 4b0b4: 8c400204 addi r17,r17,8
- 4b0b8: 003fdb06 br 4b028 <__alt_data_end+0xfffd9028>
- 4b0bc: 180d883a mov r6,r3
- 4b0c0: e00b883a mov r5,fp
- 4b0c4: da000115 stw r8,4(sp)
- 4b0c8: d8c00015 stw r3,0(sp)
- 4b0cc: 004b37c0 call 4b37c <memmove>
- 4b0d0: d8c00017 ldw r3,0(sp)
- 4b0d4: 80800017 ldw r2,0(r16)
- 4b0d8: 800b883a mov r5,r16
- 4b0dc: a809883a mov r4,r21
- 4b0e0: 10c5883a add r2,r2,r3
- 4b0e4: 80800015 stw r2,0(r16)
- 4b0e8: d8c00015 stw r3,0(sp)
- 4b0ec: 00461400 call 46140 <_fflush_r>
- 4b0f0: d8c00017 ldw r3,0(sp)
- 4b0f4: da000117 ldw r8,4(sp)
- 4b0f8: 103fc21e bne r2,zero,4b004 <__alt_data_end+0xfffd9004>
- 4b0fc: 182f883a mov r23,r3
- 4b100: 9de7c83a sub r19,r19,r23
- 4b104: 983fe11e bne r19,zero,4b08c <__alt_data_end+0xfffd908c>
- 4b108: 800b883a mov r5,r16
- 4b10c: a809883a mov r4,r21
- 4b110: 00461400 call 46140 <_fflush_r>
- 4b114: 103fbb1e bne r2,zero,4b004 <__alt_data_end+0xfffd9004>
- 4b118: 0011883a mov r8,zero
- 4b11c: 003fdb06 br 4b08c <__alt_data_end+0xfffd908c>
- 4b120: 94c0012e bgeu r18,r19,4b128 <__sfvwrite_r+0x328>
- 4b124: 9027883a mov r19,r18
- 4b128: 980d883a mov r6,r19
- 4b12c: e00b883a mov r5,fp
- 4b130: 004b37c0 call 4b37c <memmove>
- 4b134: 80800217 ldw r2,8(r16)
- 4b138: 80c00017 ldw r3,0(r16)
- 4b13c: 14c5c83a sub r2,r2,r19
- 4b140: 1cc7883a add r3,r3,r19
- 4b144: 80800215 stw r2,8(r16)
- 4b148: 80c00015 stw r3,0(r16)
- 4b14c: 10004326 beq r2,zero,4b25c <__sfvwrite_r+0x45c>
- 4b150: 9805883a mov r2,r19
- 4b154: 003f8306 br 4af64 <__alt_data_end+0xfffd8f64>
- 4b158: b00d883a mov r6,r22
- 4b15c: e00b883a mov r5,fp
- 4b160: da000115 stw r8,4(sp)
- 4b164: 004b37c0 call 4b37c <memmove>
- 4b168: 80800217 ldw r2,8(r16)
- 4b16c: 80c00017 ldw r3,0(r16)
- 4b170: da000117 ldw r8,4(sp)
- 4b174: 1585c83a sub r2,r2,r22
- 4b178: 1dad883a add r22,r3,r22
- 4b17c: 80800215 stw r2,8(r16)
- 4b180: 85800015 stw r22,0(r16)
- 4b184: 003fbf06 br 4b084 <__alt_data_end+0xfffd9084>
- 4b188: 81000017 ldw r4,0(r16)
- 4b18c: 9027883a mov r19,r18
- 4b190: 902f883a mov r23,r18
- 4b194: 003f6906 br 4af3c <__alt_data_end+0xfffd8f3c>
- 4b198: 900d883a mov r6,r18
- 4b19c: 01400284 movi r5,10
- 4b1a0: e009883a mov r4,fp
- 4b1a4: 00475dc0 call 475dc <memchr>
- 4b1a8: 10003e26 beq r2,zero,4b2a4 <__sfvwrite_r+0x4a4>
- 4b1ac: 10800044 addi r2,r2,1
- 4b1b0: 1727c83a sub r19,r2,fp
- 4b1b4: 02000044 movi r8,1
- 4b1b8: 003f9d06 br 4b030 <__alt_data_end+0xfffd9030>
- 4b1bc: 80800517 ldw r2,20(r16)
- 4b1c0: 81400417 ldw r5,16(r16)
- 4b1c4: 81c00017 ldw r7,0(r16)
- 4b1c8: 10a7883a add r19,r2,r2
- 4b1cc: 9885883a add r2,r19,r2
- 4b1d0: 1026d7fa srli r19,r2,31
- 4b1d4: 396dc83a sub r22,r7,r5
- 4b1d8: b1000044 addi r4,r22,1
- 4b1dc: 9885883a add r2,r19,r2
- 4b1e0: 1027d07a srai r19,r2,1
- 4b1e4: 2485883a add r2,r4,r18
- 4b1e8: 980d883a mov r6,r19
- 4b1ec: 9880022e bgeu r19,r2,4b1f8 <__sfvwrite_r+0x3f8>
- 4b1f0: 1027883a mov r19,r2
- 4b1f4: 100d883a mov r6,r2
- 4b1f8: 18c1000c andi r3,r3,1024
- 4b1fc: 18001c26 beq r3,zero,4b270 <__sfvwrite_r+0x470>
- 4b200: 300b883a mov r5,r6
- 4b204: a809883a mov r4,r21
- 4b208: 0046dd00 call 46dd0 <_malloc_r>
- 4b20c: 102f883a mov r23,r2
- 4b210: 10002926 beq r2,zero,4b2b8 <__sfvwrite_r+0x4b8>
- 4b214: 81400417 ldw r5,16(r16)
- 4b218: b00d883a mov r6,r22
- 4b21c: 1009883a mov r4,r2
- 4b220: 00476c00 call 476c0 <memcpy>
- 4b224: 8080030b ldhu r2,12(r16)
- 4b228: 00fedfc4 movi r3,-1153
- 4b22c: 10c4703a and r2,r2,r3
- 4b230: 10802014 ori r2,r2,128
- 4b234: 8080030d sth r2,12(r16)
- 4b238: bd89883a add r4,r23,r22
- 4b23c: 9d8fc83a sub r7,r19,r22
- 4b240: 85c00415 stw r23,16(r16)
- 4b244: 84c00515 stw r19,20(r16)
- 4b248: 81000015 stw r4,0(r16)
- 4b24c: 9027883a mov r19,r18
- 4b250: 81c00215 stw r7,8(r16)
- 4b254: 902f883a mov r23,r18
- 4b258: 003f3806 br 4af3c <__alt_data_end+0xfffd8f3c>
- 4b25c: 800b883a mov r5,r16
- 4b260: a809883a mov r4,r21
- 4b264: 00461400 call 46140 <_fflush_r>
- 4b268: 103fb926 beq r2,zero,4b150 <__alt_data_end+0xfffd9150>
- 4b26c: 003f6506 br 4b004 <__alt_data_end+0xfffd9004>
- 4b270: a809883a mov r4,r21
- 4b274: 004b5380 call 4b538 <_realloc_r>
- 4b278: 102f883a mov r23,r2
- 4b27c: 103fee1e bne r2,zero,4b238 <__alt_data_end+0xfffd9238>
- 4b280: 81400417 ldw r5,16(r16)
- 4b284: a809883a mov r4,r21
- 4b288: 00466a00 call 466a0 <_free_r>
- 4b28c: 8080030b ldhu r2,12(r16)
- 4b290: 00ffdfc4 movi r3,-129
- 4b294: 1884703a and r2,r3,r2
- 4b298: 00c00304 movi r3,12
- 4b29c: a8c00015 stw r3,0(r21)
- 4b2a0: 003f5906 br 4b008 <__alt_data_end+0xfffd9008>
- 4b2a4: 94c00044 addi r19,r18,1
- 4b2a8: 02000044 movi r8,1
- 4b2ac: 003f6006 br 4b030 <__alt_data_end+0xfffd9030>
- 4b2b0: 00bfffc4 movi r2,-1
- 4b2b4: 003f0006 br 4aeb8 <__alt_data_end+0xfffd8eb8>
- 4b2b8: 00800304 movi r2,12
- 4b2bc: a8800015 stw r2,0(r21)
- 4b2c0: 8080030b ldhu r2,12(r16)
- 4b2c4: 003f5006 br 4b008 <__alt_data_end+0xfffd9008>
- 0004b2c8 <_isatty_r>:
- 4b2c8: defffd04 addi sp,sp,-12
- 4b2cc: dc000015 stw r16,0(sp)
- 4b2d0: 04000174 movhi r16,5
- 4b2d4: dc400115 stw r17,4(sp)
- 4b2d8: 8417ab04 addi r16,r16,24236
- 4b2dc: 2023883a mov r17,r4
- 4b2e0: 2809883a mov r4,r5
- 4b2e4: dfc00215 stw ra,8(sp)
- 4b2e8: 80000015 stw zero,0(r16)
- 4b2ec: 004eac80 call 4eac8 <isatty>
- 4b2f0: 00ffffc4 movi r3,-1
- 4b2f4: 10c00526 beq r2,r3,4b30c <_isatty_r+0x44>
- 4b2f8: dfc00217 ldw ra,8(sp)
- 4b2fc: dc400117 ldw r17,4(sp)
- 4b300: dc000017 ldw r16,0(sp)
- 4b304: dec00304 addi sp,sp,12
- 4b308: f800283a ret
- 4b30c: 80c00017 ldw r3,0(r16)
- 4b310: 183ff926 beq r3,zero,4b2f8 <__alt_data_end+0xfffd92f8>
- 4b314: 88c00015 stw r3,0(r17)
- 4b318: 003ff706 br 4b2f8 <__alt_data_end+0xfffd92f8>
- 0004b31c <_lseek_r>:
- 4b31c: defffd04 addi sp,sp,-12
- 4b320: 2805883a mov r2,r5
- 4b324: dc000015 stw r16,0(sp)
- 4b328: 04000174 movhi r16,5
- 4b32c: dc400115 stw r17,4(sp)
- 4b330: 300b883a mov r5,r6
- 4b334: 8417ab04 addi r16,r16,24236
- 4b338: 2023883a mov r17,r4
- 4b33c: 380d883a mov r6,r7
- 4b340: 1009883a mov r4,r2
- 4b344: dfc00215 stw ra,8(sp)
- 4b348: 80000015 stw zero,0(r16)
- 4b34c: 004ec9c0 call 4ec9c <lseek>
- 4b350: 00ffffc4 movi r3,-1
- 4b354: 10c00526 beq r2,r3,4b36c <_lseek_r+0x50>
- 4b358: dfc00217 ldw ra,8(sp)
- 4b35c: dc400117 ldw r17,4(sp)
- 4b360: dc000017 ldw r16,0(sp)
- 4b364: dec00304 addi sp,sp,12
- 4b368: f800283a ret
- 4b36c: 80c00017 ldw r3,0(r16)
- 4b370: 183ff926 beq r3,zero,4b358 <__alt_data_end+0xfffd9358>
- 4b374: 88c00015 stw r3,0(r17)
- 4b378: 003ff706 br 4b358 <__alt_data_end+0xfffd9358>
- 0004b37c <memmove>:
- 4b37c: 2005883a mov r2,r4
- 4b380: 29000b2e bgeu r5,r4,4b3b0 <memmove+0x34>
- 4b384: 298f883a add r7,r5,r6
- 4b388: 21c0092e bgeu r4,r7,4b3b0 <memmove+0x34>
- 4b38c: 2187883a add r3,r4,r6
- 4b390: 198bc83a sub r5,r3,r6
- 4b394: 30004826 beq r6,zero,4b4b8 <memmove+0x13c>
- 4b398: 39ffffc4 addi r7,r7,-1
- 4b39c: 39000003 ldbu r4,0(r7)
- 4b3a0: 18ffffc4 addi r3,r3,-1
- 4b3a4: 19000005 stb r4,0(r3)
- 4b3a8: 28fffb1e bne r5,r3,4b398 <__alt_data_end+0xfffd9398>
- 4b3ac: f800283a ret
- 4b3b0: 00c003c4 movi r3,15
- 4b3b4: 1980412e bgeu r3,r6,4b4bc <memmove+0x140>
- 4b3b8: 2886b03a or r3,r5,r2
- 4b3bc: 18c000cc andi r3,r3,3
- 4b3c0: 1800401e bne r3,zero,4b4c4 <memmove+0x148>
- 4b3c4: 33fffc04 addi r15,r6,-16
- 4b3c8: 781ed13a srli r15,r15,4
- 4b3cc: 28c00104 addi r3,r5,4
- 4b3d0: 13400104 addi r13,r2,4
- 4b3d4: 781c913a slli r14,r15,4
- 4b3d8: 2b000204 addi r12,r5,8
- 4b3dc: 12c00204 addi r11,r2,8
- 4b3e0: 73800504 addi r14,r14,20
- 4b3e4: 2a800304 addi r10,r5,12
- 4b3e8: 12400304 addi r9,r2,12
- 4b3ec: 2b9d883a add r14,r5,r14
- 4b3f0: 2811883a mov r8,r5
- 4b3f4: 100f883a mov r7,r2
- 4b3f8: 41000017 ldw r4,0(r8)
- 4b3fc: 39c00404 addi r7,r7,16
- 4b400: 18c00404 addi r3,r3,16
- 4b404: 393ffc15 stw r4,-16(r7)
- 4b408: 193ffc17 ldw r4,-16(r3)
- 4b40c: 6b400404 addi r13,r13,16
- 4b410: 5ac00404 addi r11,r11,16
- 4b414: 693ffc15 stw r4,-16(r13)
- 4b418: 61000017 ldw r4,0(r12)
- 4b41c: 4a400404 addi r9,r9,16
- 4b420: 42000404 addi r8,r8,16
- 4b424: 593ffc15 stw r4,-16(r11)
- 4b428: 51000017 ldw r4,0(r10)
- 4b42c: 63000404 addi r12,r12,16
- 4b430: 52800404 addi r10,r10,16
- 4b434: 493ffc15 stw r4,-16(r9)
- 4b438: 1bbfef1e bne r3,r14,4b3f8 <__alt_data_end+0xfffd93f8>
- 4b43c: 79000044 addi r4,r15,1
- 4b440: 2008913a slli r4,r4,4
- 4b444: 328003cc andi r10,r6,15
- 4b448: 02c000c4 movi r11,3
- 4b44c: 1107883a add r3,r2,r4
- 4b450: 290b883a add r5,r5,r4
- 4b454: 5a801e2e bgeu r11,r10,4b4d0 <memmove+0x154>
- 4b458: 1813883a mov r9,r3
- 4b45c: 2811883a mov r8,r5
- 4b460: 500f883a mov r7,r10
- 4b464: 41000017 ldw r4,0(r8)
- 4b468: 4a400104 addi r9,r9,4
- 4b46c: 39ffff04 addi r7,r7,-4
- 4b470: 493fff15 stw r4,-4(r9)
- 4b474: 42000104 addi r8,r8,4
- 4b478: 59fffa36 bltu r11,r7,4b464 <__alt_data_end+0xfffd9464>
- 4b47c: 513fff04 addi r4,r10,-4
- 4b480: 2008d0ba srli r4,r4,2
- 4b484: 318000cc andi r6,r6,3
- 4b488: 21000044 addi r4,r4,1
- 4b48c: 2109883a add r4,r4,r4
- 4b490: 2109883a add r4,r4,r4
- 4b494: 1907883a add r3,r3,r4
- 4b498: 290b883a add r5,r5,r4
- 4b49c: 30000b26 beq r6,zero,4b4cc <memmove+0x150>
- 4b4a0: 198d883a add r6,r3,r6
- 4b4a4: 29c00003 ldbu r7,0(r5)
- 4b4a8: 18c00044 addi r3,r3,1
- 4b4ac: 29400044 addi r5,r5,1
- 4b4b0: 19ffffc5 stb r7,-1(r3)
- 4b4b4: 19bffb1e bne r3,r6,4b4a4 <__alt_data_end+0xfffd94a4>
- 4b4b8: f800283a ret
- 4b4bc: 1007883a mov r3,r2
- 4b4c0: 003ff606 br 4b49c <__alt_data_end+0xfffd949c>
- 4b4c4: 1007883a mov r3,r2
- 4b4c8: 003ff506 br 4b4a0 <__alt_data_end+0xfffd94a0>
- 4b4cc: f800283a ret
- 4b4d0: 500d883a mov r6,r10
- 4b4d4: 003ff106 br 4b49c <__alt_data_end+0xfffd949c>
- 0004b4d8 <_read_r>:
- 4b4d8: defffd04 addi sp,sp,-12
- 4b4dc: 2805883a mov r2,r5
- 4b4e0: dc000015 stw r16,0(sp)
- 4b4e4: 04000174 movhi r16,5
- 4b4e8: dc400115 stw r17,4(sp)
- 4b4ec: 300b883a mov r5,r6
- 4b4f0: 8417ab04 addi r16,r16,24236
- 4b4f4: 2023883a mov r17,r4
- 4b4f8: 380d883a mov r6,r7
- 4b4fc: 1009883a mov r4,r2
- 4b500: dfc00215 stw ra,8(sp)
- 4b504: 80000015 stw zero,0(r16)
- 4b508: 004ee780 call 4ee78 <read>
- 4b50c: 00ffffc4 movi r3,-1
- 4b510: 10c00526 beq r2,r3,4b528 <_read_r+0x50>
- 4b514: dfc00217 ldw ra,8(sp)
- 4b518: dc400117 ldw r17,4(sp)
- 4b51c: dc000017 ldw r16,0(sp)
- 4b520: dec00304 addi sp,sp,12
- 4b524: f800283a ret
- 4b528: 80c00017 ldw r3,0(r16)
- 4b52c: 183ff926 beq r3,zero,4b514 <__alt_data_end+0xfffd9514>
- 4b530: 88c00015 stw r3,0(r17)
- 4b534: 003ff706 br 4b514 <__alt_data_end+0xfffd9514>
- 0004b538 <_realloc_r>:
- 4b538: defff604 addi sp,sp,-40
- 4b53c: dc800215 stw r18,8(sp)
- 4b540: dfc00915 stw ra,36(sp)
- 4b544: df000815 stw fp,32(sp)
- 4b548: ddc00715 stw r23,28(sp)
- 4b54c: dd800615 stw r22,24(sp)
- 4b550: dd400515 stw r21,20(sp)
- 4b554: dd000415 stw r20,16(sp)
- 4b558: dcc00315 stw r19,12(sp)
- 4b55c: dc400115 stw r17,4(sp)
- 4b560: dc000015 stw r16,0(sp)
- 4b564: 3025883a mov r18,r6
- 4b568: 2800b726 beq r5,zero,4b848 <_realloc_r+0x310>
- 4b56c: 282b883a mov r21,r5
- 4b570: 2029883a mov r20,r4
- 4b574: 004edf40 call 4edf4 <__malloc_lock>
- 4b578: a8bfff17 ldw r2,-4(r21)
- 4b57c: 043fff04 movi r16,-4
- 4b580: 90c002c4 addi r3,r18,11
- 4b584: 01000584 movi r4,22
- 4b588: acfffe04 addi r19,r21,-8
- 4b58c: 1420703a and r16,r2,r16
- 4b590: 20c0332e bgeu r4,r3,4b660 <_realloc_r+0x128>
- 4b594: 047ffe04 movi r17,-8
- 4b598: 1c62703a and r17,r3,r17
- 4b59c: 8807883a mov r3,r17
- 4b5a0: 88005816 blt r17,zero,4b704 <_realloc_r+0x1cc>
- 4b5a4: 8c805736 bltu r17,r18,4b704 <_realloc_r+0x1cc>
- 4b5a8: 80c0300e bge r16,r3,4b66c <_realloc_r+0x134>
- 4b5ac: 07000174 movhi fp,5
- 4b5b0: e70abe04 addi fp,fp,11000
- 4b5b4: e1c00217 ldw r7,8(fp)
- 4b5b8: 9c09883a add r4,r19,r16
- 4b5bc: 22000117 ldw r8,4(r4)
- 4b5c0: 21c06326 beq r4,r7,4b750 <_realloc_r+0x218>
- 4b5c4: 017fff84 movi r5,-2
- 4b5c8: 414a703a and r5,r8,r5
- 4b5cc: 214b883a add r5,r4,r5
- 4b5d0: 29800117 ldw r6,4(r5)
- 4b5d4: 3180004c andi r6,r6,1
- 4b5d8: 30003f26 beq r6,zero,4b6d8 <_realloc_r+0x1a0>
- 4b5dc: 1080004c andi r2,r2,1
- 4b5e0: 10008326 beq r2,zero,4b7f0 <_realloc_r+0x2b8>
- 4b5e4: 900b883a mov r5,r18
- 4b5e8: a009883a mov r4,r20
- 4b5ec: 0046dd00 call 46dd0 <_malloc_r>
- 4b5f0: 1025883a mov r18,r2
- 4b5f4: 10011e26 beq r2,zero,4ba70 <_realloc_r+0x538>
- 4b5f8: a93fff17 ldw r4,-4(r21)
- 4b5fc: 10fffe04 addi r3,r2,-8
- 4b600: 00bfff84 movi r2,-2
- 4b604: 2084703a and r2,r4,r2
- 4b608: 9885883a add r2,r19,r2
- 4b60c: 1880ee26 beq r3,r2,4b9c8 <_realloc_r+0x490>
- 4b610: 81bfff04 addi r6,r16,-4
- 4b614: 00800904 movi r2,36
- 4b618: 1180b836 bltu r2,r6,4b8fc <_realloc_r+0x3c4>
- 4b61c: 00c004c4 movi r3,19
- 4b620: 19809636 bltu r3,r6,4b87c <_realloc_r+0x344>
- 4b624: 9005883a mov r2,r18
- 4b628: a807883a mov r3,r21
- 4b62c: 19000017 ldw r4,0(r3)
- 4b630: 11000015 stw r4,0(r2)
- 4b634: 19000117 ldw r4,4(r3)
- 4b638: 11000115 stw r4,4(r2)
- 4b63c: 18c00217 ldw r3,8(r3)
- 4b640: 10c00215 stw r3,8(r2)
- 4b644: a80b883a mov r5,r21
- 4b648: a009883a mov r4,r20
- 4b64c: 00466a00 call 466a0 <_free_r>
- 4b650: a009883a mov r4,r20
- 4b654: 004ee180 call 4ee18 <__malloc_unlock>
- 4b658: 9005883a mov r2,r18
- 4b65c: 00001206 br 4b6a8 <_realloc_r+0x170>
- 4b660: 00c00404 movi r3,16
- 4b664: 1823883a mov r17,r3
- 4b668: 003fce06 br 4b5a4 <__alt_data_end+0xfffd95a4>
- 4b66c: a825883a mov r18,r21
- 4b670: 8445c83a sub r2,r16,r17
- 4b674: 00c003c4 movi r3,15
- 4b678: 18802636 bltu r3,r2,4b714 <_realloc_r+0x1dc>
- 4b67c: 99800117 ldw r6,4(r19)
- 4b680: 9c07883a add r3,r19,r16
- 4b684: 3180004c andi r6,r6,1
- 4b688: 3420b03a or r16,r6,r16
- 4b68c: 9c000115 stw r16,4(r19)
- 4b690: 18800117 ldw r2,4(r3)
- 4b694: 10800054 ori r2,r2,1
- 4b698: 18800115 stw r2,4(r3)
- 4b69c: a009883a mov r4,r20
- 4b6a0: 004ee180 call 4ee18 <__malloc_unlock>
- 4b6a4: 9005883a mov r2,r18
- 4b6a8: dfc00917 ldw ra,36(sp)
- 4b6ac: df000817 ldw fp,32(sp)
- 4b6b0: ddc00717 ldw r23,28(sp)
- 4b6b4: dd800617 ldw r22,24(sp)
- 4b6b8: dd400517 ldw r21,20(sp)
- 4b6bc: dd000417 ldw r20,16(sp)
- 4b6c0: dcc00317 ldw r19,12(sp)
- 4b6c4: dc800217 ldw r18,8(sp)
- 4b6c8: dc400117 ldw r17,4(sp)
- 4b6cc: dc000017 ldw r16,0(sp)
- 4b6d0: dec00a04 addi sp,sp,40
- 4b6d4: f800283a ret
- 4b6d8: 017fff04 movi r5,-4
- 4b6dc: 414a703a and r5,r8,r5
- 4b6e0: 814d883a add r6,r16,r5
- 4b6e4: 30c01f16 blt r6,r3,4b764 <_realloc_r+0x22c>
- 4b6e8: 20800317 ldw r2,12(r4)
- 4b6ec: 20c00217 ldw r3,8(r4)
- 4b6f0: a825883a mov r18,r21
- 4b6f4: 3021883a mov r16,r6
- 4b6f8: 18800315 stw r2,12(r3)
- 4b6fc: 10c00215 stw r3,8(r2)
- 4b700: 003fdb06 br 4b670 <__alt_data_end+0xfffd9670>
- 4b704: 00800304 movi r2,12
- 4b708: a0800015 stw r2,0(r20)
- 4b70c: 0005883a mov r2,zero
- 4b710: 003fe506 br 4b6a8 <__alt_data_end+0xfffd96a8>
- 4b714: 98c00117 ldw r3,4(r19)
- 4b718: 9c4b883a add r5,r19,r17
- 4b71c: 11000054 ori r4,r2,1
- 4b720: 18c0004c andi r3,r3,1
- 4b724: 1c62b03a or r17,r3,r17
- 4b728: 9c400115 stw r17,4(r19)
- 4b72c: 29000115 stw r4,4(r5)
- 4b730: 2885883a add r2,r5,r2
- 4b734: 10c00117 ldw r3,4(r2)
- 4b738: 29400204 addi r5,r5,8
- 4b73c: a009883a mov r4,r20
- 4b740: 18c00054 ori r3,r3,1
- 4b744: 10c00115 stw r3,4(r2)
- 4b748: 00466a00 call 466a0 <_free_r>
- 4b74c: 003fd306 br 4b69c <__alt_data_end+0xfffd969c>
- 4b750: 017fff04 movi r5,-4
- 4b754: 414a703a and r5,r8,r5
- 4b758: 89800404 addi r6,r17,16
- 4b75c: 8151883a add r8,r16,r5
- 4b760: 4180590e bge r8,r6,4b8c8 <_realloc_r+0x390>
- 4b764: 1080004c andi r2,r2,1
- 4b768: 103f9e1e bne r2,zero,4b5e4 <__alt_data_end+0xfffd95e4>
- 4b76c: adbffe17 ldw r22,-8(r21)
- 4b770: 00bfff04 movi r2,-4
- 4b774: 9dadc83a sub r22,r19,r22
- 4b778: b1800117 ldw r6,4(r22)
- 4b77c: 3084703a and r2,r6,r2
- 4b780: 20002026 beq r4,zero,4b804 <_realloc_r+0x2cc>
- 4b784: 80af883a add r23,r16,r2
- 4b788: b96f883a add r23,r23,r5
- 4b78c: 21c05f26 beq r4,r7,4b90c <_realloc_r+0x3d4>
- 4b790: b8c01c16 blt r23,r3,4b804 <_realloc_r+0x2cc>
- 4b794: 20800317 ldw r2,12(r4)
- 4b798: 20c00217 ldw r3,8(r4)
- 4b79c: 81bfff04 addi r6,r16,-4
- 4b7a0: 01000904 movi r4,36
- 4b7a4: 18800315 stw r2,12(r3)
- 4b7a8: 10c00215 stw r3,8(r2)
- 4b7ac: b0c00217 ldw r3,8(r22)
- 4b7b0: b0800317 ldw r2,12(r22)
- 4b7b4: b4800204 addi r18,r22,8
- 4b7b8: 18800315 stw r2,12(r3)
- 4b7bc: 10c00215 stw r3,8(r2)
- 4b7c0: 21801b36 bltu r4,r6,4b830 <_realloc_r+0x2f8>
- 4b7c4: 008004c4 movi r2,19
- 4b7c8: 1180352e bgeu r2,r6,4b8a0 <_realloc_r+0x368>
- 4b7cc: a8800017 ldw r2,0(r21)
- 4b7d0: b0800215 stw r2,8(r22)
- 4b7d4: a8800117 ldw r2,4(r21)
- 4b7d8: b0800315 stw r2,12(r22)
- 4b7dc: 008006c4 movi r2,27
- 4b7e0: 11807f36 bltu r2,r6,4b9e0 <_realloc_r+0x4a8>
- 4b7e4: b0800404 addi r2,r22,16
- 4b7e8: ad400204 addi r21,r21,8
- 4b7ec: 00002d06 br 4b8a4 <_realloc_r+0x36c>
- 4b7f0: adbffe17 ldw r22,-8(r21)
- 4b7f4: 00bfff04 movi r2,-4
- 4b7f8: 9dadc83a sub r22,r19,r22
- 4b7fc: b1000117 ldw r4,4(r22)
- 4b800: 2084703a and r2,r4,r2
- 4b804: b03f7726 beq r22,zero,4b5e4 <__alt_data_end+0xfffd95e4>
- 4b808: 80af883a add r23,r16,r2
- 4b80c: b8ff7516 blt r23,r3,4b5e4 <__alt_data_end+0xfffd95e4>
- 4b810: b0800317 ldw r2,12(r22)
- 4b814: b0c00217 ldw r3,8(r22)
- 4b818: 81bfff04 addi r6,r16,-4
- 4b81c: 01000904 movi r4,36
- 4b820: 18800315 stw r2,12(r3)
- 4b824: 10c00215 stw r3,8(r2)
- 4b828: b4800204 addi r18,r22,8
- 4b82c: 21bfe52e bgeu r4,r6,4b7c4 <__alt_data_end+0xfffd97c4>
- 4b830: a80b883a mov r5,r21
- 4b834: 9009883a mov r4,r18
- 4b838: 004b37c0 call 4b37c <memmove>
- 4b83c: b821883a mov r16,r23
- 4b840: b027883a mov r19,r22
- 4b844: 003f8a06 br 4b670 <__alt_data_end+0xfffd9670>
- 4b848: 300b883a mov r5,r6
- 4b84c: dfc00917 ldw ra,36(sp)
- 4b850: df000817 ldw fp,32(sp)
- 4b854: ddc00717 ldw r23,28(sp)
- 4b858: dd800617 ldw r22,24(sp)
- 4b85c: dd400517 ldw r21,20(sp)
- 4b860: dd000417 ldw r20,16(sp)
- 4b864: dcc00317 ldw r19,12(sp)
- 4b868: dc800217 ldw r18,8(sp)
- 4b86c: dc400117 ldw r17,4(sp)
- 4b870: dc000017 ldw r16,0(sp)
- 4b874: dec00a04 addi sp,sp,40
- 4b878: 0046dd01 jmpi 46dd0 <_malloc_r>
- 4b87c: a8c00017 ldw r3,0(r21)
- 4b880: 90c00015 stw r3,0(r18)
- 4b884: a8c00117 ldw r3,4(r21)
- 4b888: 90c00115 stw r3,4(r18)
- 4b88c: 00c006c4 movi r3,27
- 4b890: 19804536 bltu r3,r6,4b9a8 <_realloc_r+0x470>
- 4b894: 90800204 addi r2,r18,8
- 4b898: a8c00204 addi r3,r21,8
- 4b89c: 003f6306 br 4b62c <__alt_data_end+0xfffd962c>
- 4b8a0: 9005883a mov r2,r18
- 4b8a4: a8c00017 ldw r3,0(r21)
- 4b8a8: b821883a mov r16,r23
- 4b8ac: b027883a mov r19,r22
- 4b8b0: 10c00015 stw r3,0(r2)
- 4b8b4: a8c00117 ldw r3,4(r21)
- 4b8b8: 10c00115 stw r3,4(r2)
- 4b8bc: a8c00217 ldw r3,8(r21)
- 4b8c0: 10c00215 stw r3,8(r2)
- 4b8c4: 003f6a06 br 4b670 <__alt_data_end+0xfffd9670>
- 4b8c8: 9c67883a add r19,r19,r17
- 4b8cc: 4445c83a sub r2,r8,r17
- 4b8d0: e4c00215 stw r19,8(fp)
- 4b8d4: 10800054 ori r2,r2,1
- 4b8d8: 98800115 stw r2,4(r19)
- 4b8dc: a8bfff17 ldw r2,-4(r21)
- 4b8e0: a009883a mov r4,r20
- 4b8e4: 1080004c andi r2,r2,1
- 4b8e8: 1462b03a or r17,r2,r17
- 4b8ec: ac7fff15 stw r17,-4(r21)
- 4b8f0: 004ee180 call 4ee18 <__malloc_unlock>
- 4b8f4: a805883a mov r2,r21
- 4b8f8: 003f6b06 br 4b6a8 <__alt_data_end+0xfffd96a8>
- 4b8fc: a80b883a mov r5,r21
- 4b900: 9009883a mov r4,r18
- 4b904: 004b37c0 call 4b37c <memmove>
- 4b908: 003f4e06 br 4b644 <__alt_data_end+0xfffd9644>
- 4b90c: 89000404 addi r4,r17,16
- 4b910: b93fbc16 blt r23,r4,4b804 <__alt_data_end+0xfffd9804>
- 4b914: b0800317 ldw r2,12(r22)
- 4b918: b0c00217 ldw r3,8(r22)
- 4b91c: 81bfff04 addi r6,r16,-4
- 4b920: 01000904 movi r4,36
- 4b924: 18800315 stw r2,12(r3)
- 4b928: 10c00215 stw r3,8(r2)
- 4b92c: b4800204 addi r18,r22,8
- 4b930: 21804336 bltu r4,r6,4ba40 <_realloc_r+0x508>
- 4b934: 008004c4 movi r2,19
- 4b938: 11803f2e bgeu r2,r6,4ba38 <_realloc_r+0x500>
- 4b93c: a8800017 ldw r2,0(r21)
- 4b940: b0800215 stw r2,8(r22)
- 4b944: a8800117 ldw r2,4(r21)
- 4b948: b0800315 stw r2,12(r22)
- 4b94c: 008006c4 movi r2,27
- 4b950: 11803f36 bltu r2,r6,4ba50 <_realloc_r+0x518>
- 4b954: b0800404 addi r2,r22,16
- 4b958: ad400204 addi r21,r21,8
- 4b95c: a8c00017 ldw r3,0(r21)
- 4b960: 10c00015 stw r3,0(r2)
- 4b964: a8c00117 ldw r3,4(r21)
- 4b968: 10c00115 stw r3,4(r2)
- 4b96c: a8c00217 ldw r3,8(r21)
- 4b970: 10c00215 stw r3,8(r2)
- 4b974: b447883a add r3,r22,r17
- 4b978: bc45c83a sub r2,r23,r17
- 4b97c: e0c00215 stw r3,8(fp)
- 4b980: 10800054 ori r2,r2,1
- 4b984: 18800115 stw r2,4(r3)
- 4b988: b0800117 ldw r2,4(r22)
- 4b98c: a009883a mov r4,r20
- 4b990: 1080004c andi r2,r2,1
- 4b994: 1462b03a or r17,r2,r17
- 4b998: b4400115 stw r17,4(r22)
- 4b99c: 004ee180 call 4ee18 <__malloc_unlock>
- 4b9a0: 9005883a mov r2,r18
- 4b9a4: 003f4006 br 4b6a8 <__alt_data_end+0xfffd96a8>
- 4b9a8: a8c00217 ldw r3,8(r21)
- 4b9ac: 90c00215 stw r3,8(r18)
- 4b9b0: a8c00317 ldw r3,12(r21)
- 4b9b4: 90c00315 stw r3,12(r18)
- 4b9b8: 30801126 beq r6,r2,4ba00 <_realloc_r+0x4c8>
- 4b9bc: 90800404 addi r2,r18,16
- 4b9c0: a8c00404 addi r3,r21,16
- 4b9c4: 003f1906 br 4b62c <__alt_data_end+0xfffd962c>
- 4b9c8: 90ffff17 ldw r3,-4(r18)
- 4b9cc: 00bfff04 movi r2,-4
- 4b9d0: a825883a mov r18,r21
- 4b9d4: 1884703a and r2,r3,r2
- 4b9d8: 80a1883a add r16,r16,r2
- 4b9dc: 003f2406 br 4b670 <__alt_data_end+0xfffd9670>
- 4b9e0: a8800217 ldw r2,8(r21)
- 4b9e4: b0800415 stw r2,16(r22)
- 4b9e8: a8800317 ldw r2,12(r21)
- 4b9ec: b0800515 stw r2,20(r22)
- 4b9f0: 31000a26 beq r6,r4,4ba1c <_realloc_r+0x4e4>
- 4b9f4: b0800604 addi r2,r22,24
- 4b9f8: ad400404 addi r21,r21,16
- 4b9fc: 003fa906 br 4b8a4 <__alt_data_end+0xfffd98a4>
- 4ba00: a9000417 ldw r4,16(r21)
- 4ba04: 90800604 addi r2,r18,24
- 4ba08: a8c00604 addi r3,r21,24
- 4ba0c: 91000415 stw r4,16(r18)
- 4ba10: a9000517 ldw r4,20(r21)
- 4ba14: 91000515 stw r4,20(r18)
- 4ba18: 003f0406 br 4b62c <__alt_data_end+0xfffd962c>
- 4ba1c: a8c00417 ldw r3,16(r21)
- 4ba20: ad400604 addi r21,r21,24
- 4ba24: b0800804 addi r2,r22,32
- 4ba28: b0c00615 stw r3,24(r22)
- 4ba2c: a8ffff17 ldw r3,-4(r21)
- 4ba30: b0c00715 stw r3,28(r22)
- 4ba34: 003f9b06 br 4b8a4 <__alt_data_end+0xfffd98a4>
- 4ba38: 9005883a mov r2,r18
- 4ba3c: 003fc706 br 4b95c <__alt_data_end+0xfffd995c>
- 4ba40: a80b883a mov r5,r21
- 4ba44: 9009883a mov r4,r18
- 4ba48: 004b37c0 call 4b37c <memmove>
- 4ba4c: 003fc906 br 4b974 <__alt_data_end+0xfffd9974>
- 4ba50: a8800217 ldw r2,8(r21)
- 4ba54: b0800415 stw r2,16(r22)
- 4ba58: a8800317 ldw r2,12(r21)
- 4ba5c: b0800515 stw r2,20(r22)
- 4ba60: 31000726 beq r6,r4,4ba80 <_realloc_r+0x548>
- 4ba64: b0800604 addi r2,r22,24
- 4ba68: ad400404 addi r21,r21,16
- 4ba6c: 003fbb06 br 4b95c <__alt_data_end+0xfffd995c>
- 4ba70: a009883a mov r4,r20
- 4ba74: 004ee180 call 4ee18 <__malloc_unlock>
- 4ba78: 0005883a mov r2,zero
- 4ba7c: 003f0a06 br 4b6a8 <__alt_data_end+0xfffd96a8>
- 4ba80: a8c00417 ldw r3,16(r21)
- 4ba84: ad400604 addi r21,r21,24
- 4ba88: b0800804 addi r2,r22,32
- 4ba8c: b0c00615 stw r3,24(r22)
- 4ba90: a8ffff17 ldw r3,-4(r21)
- 4ba94: b0c00715 stw r3,28(r22)
- 4ba98: 003fb006 br 4b95c <__alt_data_end+0xfffd995c>
- 0004ba9c <_wcrtomb_r>:
- 4ba9c: defff604 addi sp,sp,-40
- 4baa0: 00800174 movhi r2,5
- 4baa4: dc800815 stw r18,32(sp)
- 4baa8: dc400715 stw r17,28(sp)
- 4baac: dc000615 stw r16,24(sp)
- 4bab0: 10908f04 addi r2,r2,16956
- 4bab4: dfc00915 stw ra,36(sp)
- 4bab8: 2021883a mov r16,r4
- 4babc: 3823883a mov r17,r7
- 4bac0: 14800017 ldw r18,0(r2)
- 4bac4: 28001426 beq r5,zero,4bb18 <_wcrtomb_r+0x7c>
- 4bac8: d9400415 stw r5,16(sp)
- 4bacc: d9800515 stw r6,20(sp)
- 4bad0: 0046bb40 call 46bb4 <__locale_charset>
- 4bad4: d9800517 ldw r6,20(sp)
- 4bad8: d9400417 ldw r5,16(sp)
- 4badc: 100f883a mov r7,r2
- 4bae0: dc400015 stw r17,0(sp)
- 4bae4: 8009883a mov r4,r16
- 4bae8: 903ee83a callr r18
- 4baec: 00ffffc4 movi r3,-1
- 4baf0: 10c0031e bne r2,r3,4bb00 <_wcrtomb_r+0x64>
- 4baf4: 88000015 stw zero,0(r17)
- 4baf8: 00c02284 movi r3,138
- 4bafc: 80c00015 stw r3,0(r16)
- 4bb00: dfc00917 ldw ra,36(sp)
- 4bb04: dc800817 ldw r18,32(sp)
- 4bb08: dc400717 ldw r17,28(sp)
- 4bb0c: dc000617 ldw r16,24(sp)
- 4bb10: dec00a04 addi sp,sp,40
- 4bb14: f800283a ret
- 4bb18: 0046bb40 call 46bb4 <__locale_charset>
- 4bb1c: 100f883a mov r7,r2
- 4bb20: dc400015 stw r17,0(sp)
- 4bb24: 000d883a mov r6,zero
- 4bb28: d9400104 addi r5,sp,4
- 4bb2c: 8009883a mov r4,r16
- 4bb30: 903ee83a callr r18
- 4bb34: 003fed06 br 4baec <__alt_data_end+0xfffd9aec>
- 0004bb38 <wcrtomb>:
- 4bb38: defff604 addi sp,sp,-40
- 4bb3c: 00800174 movhi r2,5
- 4bb40: dc800615 stw r18,24(sp)
- 4bb44: dc400515 stw r17,20(sp)
- 4bb48: 10908b04 addi r2,r2,16940
- 4bb4c: dfc00915 stw ra,36(sp)
- 4bb50: dd000815 stw r20,32(sp)
- 4bb54: dcc00715 stw r19,28(sp)
- 4bb58: dc000415 stw r16,16(sp)
- 4bb5c: 3025883a mov r18,r6
- 4bb60: 14400017 ldw r17,0(r2)
- 4bb64: 20001926 beq r4,zero,4bbcc <wcrtomb+0x94>
- 4bb68: 00800174 movhi r2,5
- 4bb6c: 10908f04 addi r2,r2,16956
- 4bb70: 15000017 ldw r20,0(r2)
- 4bb74: 2021883a mov r16,r4
- 4bb78: 2827883a mov r19,r5
- 4bb7c: 0046bb40 call 46bb4 <__locale_charset>
- 4bb80: 100f883a mov r7,r2
- 4bb84: dc800015 stw r18,0(sp)
- 4bb88: 980d883a mov r6,r19
- 4bb8c: 800b883a mov r5,r16
- 4bb90: 8809883a mov r4,r17
- 4bb94: a03ee83a callr r20
- 4bb98: 00ffffc4 movi r3,-1
- 4bb9c: 10c0031e bne r2,r3,4bbac <wcrtomb+0x74>
- 4bba0: 90000015 stw zero,0(r18)
- 4bba4: 00c02284 movi r3,138
- 4bba8: 88c00015 stw r3,0(r17)
- 4bbac: dfc00917 ldw ra,36(sp)
- 4bbb0: dd000817 ldw r20,32(sp)
- 4bbb4: dcc00717 ldw r19,28(sp)
- 4bbb8: dc800617 ldw r18,24(sp)
- 4bbbc: dc400517 ldw r17,20(sp)
- 4bbc0: dc000417 ldw r16,16(sp)
- 4bbc4: dec00a04 addi sp,sp,40
- 4bbc8: f800283a ret
- 4bbcc: 00800174 movhi r2,5
- 4bbd0: 10908f04 addi r2,r2,16956
- 4bbd4: 14000017 ldw r16,0(r2)
- 4bbd8: 0046bb40 call 46bb4 <__locale_charset>
- 4bbdc: 100f883a mov r7,r2
- 4bbe0: dc800015 stw r18,0(sp)
- 4bbe4: 000d883a mov r6,zero
- 4bbe8: d9400104 addi r5,sp,4
- 4bbec: 8809883a mov r4,r17
- 4bbf0: 803ee83a callr r16
- 4bbf4: 003fe806 br 4bb98 <__alt_data_end+0xfffd9b98>
- 0004bbf8 <__ascii_wctomb>:
- 4bbf8: 28000526 beq r5,zero,4bc10 <__ascii_wctomb+0x18>
- 4bbfc: 00803fc4 movi r2,255
- 4bc00: 11800536 bltu r2,r6,4bc18 <__ascii_wctomb+0x20>
- 4bc04: 29800005 stb r6,0(r5)
- 4bc08: 00800044 movi r2,1
- 4bc0c: f800283a ret
- 4bc10: 0005883a mov r2,zero
- 4bc14: f800283a ret
- 4bc18: 00802284 movi r2,138
- 4bc1c: 20800015 stw r2,0(r4)
- 4bc20: 00bfffc4 movi r2,-1
- 4bc24: f800283a ret
- 0004bc28 <_wctomb_r>:
- 4bc28: 00800174 movhi r2,5
- 4bc2c: defff904 addi sp,sp,-28
- 4bc30: 10908f04 addi r2,r2,16956
- 4bc34: dfc00615 stw ra,24(sp)
- 4bc38: dc400515 stw r17,20(sp)
- 4bc3c: dc000415 stw r16,16(sp)
- 4bc40: 3823883a mov r17,r7
- 4bc44: 14000017 ldw r16,0(r2)
- 4bc48: d9000115 stw r4,4(sp)
- 4bc4c: d9400215 stw r5,8(sp)
- 4bc50: d9800315 stw r6,12(sp)
- 4bc54: 0046bb40 call 46bb4 <__locale_charset>
- 4bc58: d9800317 ldw r6,12(sp)
- 4bc5c: d9400217 ldw r5,8(sp)
- 4bc60: d9000117 ldw r4,4(sp)
- 4bc64: 100f883a mov r7,r2
- 4bc68: dc400015 stw r17,0(sp)
- 4bc6c: 803ee83a callr r16
- 4bc70: dfc00617 ldw ra,24(sp)
- 4bc74: dc400517 ldw r17,20(sp)
- 4bc78: dc000417 ldw r16,16(sp)
- 4bc7c: dec00704 addi sp,sp,28
- 4bc80: f800283a ret
- 0004bc84 <__udivdi3>:
- 4bc84: defff404 addi sp,sp,-48
- 4bc88: dcc00515 stw r19,20(sp)
- 4bc8c: dc000215 stw r16,8(sp)
- 4bc90: dfc00b15 stw ra,44(sp)
- 4bc94: df000a15 stw fp,40(sp)
- 4bc98: ddc00915 stw r23,36(sp)
- 4bc9c: dd800815 stw r22,32(sp)
- 4bca0: dd400715 stw r21,28(sp)
- 4bca4: dd000615 stw r20,24(sp)
- 4bca8: dc800415 stw r18,16(sp)
- 4bcac: dc400315 stw r17,12(sp)
- 4bcb0: 2027883a mov r19,r4
- 4bcb4: 2821883a mov r16,r5
- 4bcb8: 3800461e bne r7,zero,4bdd4 <__udivdi3+0x150>
- 4bcbc: 3023883a mov r17,r6
- 4bcc0: 2025883a mov r18,r4
- 4bcc4: 2980572e bgeu r5,r6,4be24 <__udivdi3+0x1a0>
- 4bcc8: 00bfffd4 movui r2,65535
- 4bccc: 282d883a mov r22,r5
- 4bcd0: 1180b236 bltu r2,r6,4bf9c <__udivdi3+0x318>
- 4bcd4: 00803fc4 movi r2,255
- 4bcd8: 1185803a cmpltu r2,r2,r6
- 4bcdc: 100490fa slli r2,r2,3
- 4bce0: 3086d83a srl r3,r6,r2
- 4bce4: 01000174 movhi r4,5
- 4bce8: 21083584 addi r4,r4,8406
- 4bcec: 20c7883a add r3,r4,r3
- 4bcf0: 18c00003 ldbu r3,0(r3)
- 4bcf4: 1885883a add r2,r3,r2
- 4bcf8: 00c00804 movi r3,32
- 4bcfc: 1887c83a sub r3,r3,r2
- 4bd00: 18000526 beq r3,zero,4bd18 <__udivdi3+0x94>
- 4bd04: 80e0983a sll r16,r16,r3
- 4bd08: 9884d83a srl r2,r19,r2
- 4bd0c: 30e2983a sll r17,r6,r3
- 4bd10: 98e4983a sll r18,r19,r3
- 4bd14: 142cb03a or r22,r2,r16
- 4bd18: 882ad43a srli r21,r17,16
- 4bd1c: b009883a mov r4,r22
- 4bd20: 8d3fffcc andi r20,r17,65535
- 4bd24: a80b883a mov r5,r21
- 4bd28: 004c9a00 call 4c9a0 <__umodsi3>
- 4bd2c: b009883a mov r4,r22
- 4bd30: a80b883a mov r5,r21
- 4bd34: 1027883a mov r19,r2
- 4bd38: 004c93c0 call 4c93c <__udivsi3>
- 4bd3c: 100b883a mov r5,r2
- 4bd40: a009883a mov r4,r20
- 4bd44: 102d883a mov r22,r2
- 4bd48: 004c9f80 call 4c9f8 <__mulsi3>
- 4bd4c: 9826943a slli r19,r19,16
- 4bd50: 9006d43a srli r3,r18,16
- 4bd54: 1cc6b03a or r3,r3,r19
- 4bd58: 1880052e bgeu r3,r2,4bd70 <__udivdi3+0xec>
- 4bd5c: 1c47883a add r3,r3,r17
- 4bd60: b13fffc4 addi r4,r22,-1
- 4bd64: 1c400136 bltu r3,r17,4bd6c <__udivdi3+0xe8>
- 4bd68: 18814236 bltu r3,r2,4c274 <__udivdi3+0x5f0>
- 4bd6c: 202d883a mov r22,r4
- 4bd70: 18a1c83a sub r16,r3,r2
- 4bd74: 8009883a mov r4,r16
- 4bd78: a80b883a mov r5,r21
- 4bd7c: 004c9a00 call 4c9a0 <__umodsi3>
- 4bd80: 1027883a mov r19,r2
- 4bd84: 8009883a mov r4,r16
- 4bd88: a80b883a mov r5,r21
- 4bd8c: 9826943a slli r19,r19,16
- 4bd90: 004c93c0 call 4c93c <__udivsi3>
- 4bd94: 100b883a mov r5,r2
- 4bd98: a009883a mov r4,r20
- 4bd9c: 94bfffcc andi r18,r18,65535
- 4bda0: 1021883a mov r16,r2
- 4bda4: 94e4b03a or r18,r18,r19
- 4bda8: 004c9f80 call 4c9f8 <__mulsi3>
- 4bdac: 9080052e bgeu r18,r2,4bdc4 <__udivdi3+0x140>
- 4bdb0: 8ca5883a add r18,r17,r18
- 4bdb4: 80ffffc4 addi r3,r16,-1
- 4bdb8: 94410c36 bltu r18,r17,4c1ec <__udivdi3+0x568>
- 4bdbc: 90810b2e bgeu r18,r2,4c1ec <__udivdi3+0x568>
- 4bdc0: 843fff84 addi r16,r16,-2
- 4bdc4: b004943a slli r2,r22,16
- 4bdc8: 0007883a mov r3,zero
- 4bdcc: 1404b03a or r2,r2,r16
- 4bdd0: 00005e06 br 4bf4c <__udivdi3+0x2c8>
- 4bdd4: 29c05b36 bltu r5,r7,4bf44 <__udivdi3+0x2c0>
- 4bdd8: 00bfffd4 movui r2,65535
- 4bddc: 11c0672e bgeu r2,r7,4bf7c <__udivdi3+0x2f8>
- 4bde0: 00804034 movhi r2,256
- 4bde4: 10bfffc4 addi r2,r2,-1
- 4bde8: 11c10a36 bltu r2,r7,4c214 <__udivdi3+0x590>
- 4bdec: 00800404 movi r2,16
- 4bdf0: 3886d83a srl r3,r7,r2
- 4bdf4: 01000174 movhi r4,5
- 4bdf8: 21083584 addi r4,r4,8406
- 4bdfc: 20c7883a add r3,r4,r3
- 4be00: 18c00003 ldbu r3,0(r3)
- 4be04: 05c00804 movi r23,32
- 4be08: 1885883a add r2,r3,r2
- 4be0c: b8afc83a sub r23,r23,r2
- 4be10: b800671e bne r23,zero,4bfb0 <__udivdi3+0x32c>
- 4be14: 3c010536 bltu r7,r16,4c22c <__udivdi3+0x5a8>
- 4be18: 9985403a cmpgeu r2,r19,r6
- 4be1c: 0007883a mov r3,zero
- 4be20: 00004a06 br 4bf4c <__udivdi3+0x2c8>
- 4be24: 3000041e bne r6,zero,4be38 <__udivdi3+0x1b4>
- 4be28: 000b883a mov r5,zero
- 4be2c: 01000044 movi r4,1
- 4be30: 004c93c0 call 4c93c <__udivsi3>
- 4be34: 1023883a mov r17,r2
- 4be38: 00bfffd4 movui r2,65535
- 4be3c: 1440532e bgeu r2,r17,4bf8c <__udivdi3+0x308>
- 4be40: 00804034 movhi r2,256
- 4be44: 10bfffc4 addi r2,r2,-1
- 4be48: 1440f436 bltu r2,r17,4c21c <__udivdi3+0x598>
- 4be4c: 00800404 movi r2,16
- 4be50: 8886d83a srl r3,r17,r2
- 4be54: 01000174 movhi r4,5
- 4be58: 21083584 addi r4,r4,8406
- 4be5c: 20c7883a add r3,r4,r3
- 4be60: 18c00003 ldbu r3,0(r3)
- 4be64: 1885883a add r2,r3,r2
- 4be68: 00c00804 movi r3,32
- 4be6c: 1887c83a sub r3,r3,r2
- 4be70: 1800a51e bne r3,zero,4c108 <__udivdi3+0x484>
- 4be74: 882ad43a srli r21,r17,16
- 4be78: 8461c83a sub r16,r16,r17
- 4be7c: 8d3fffcc andi r20,r17,65535
- 4be80: 00c00044 movi r3,1
- 4be84: a80b883a mov r5,r21
- 4be88: 8009883a mov r4,r16
- 4be8c: d8c00115 stw r3,4(sp)
- 4be90: 004c9a00 call 4c9a0 <__umodsi3>
- 4be94: a80b883a mov r5,r21
- 4be98: 8009883a mov r4,r16
- 4be9c: 1027883a mov r19,r2
- 4bea0: 004c93c0 call 4c93c <__udivsi3>
- 4bea4: a00b883a mov r5,r20
- 4bea8: 1009883a mov r4,r2
- 4beac: 102d883a mov r22,r2
- 4beb0: 004c9f80 call 4c9f8 <__mulsi3>
- 4beb4: 9826943a slli r19,r19,16
- 4beb8: 900ed43a srli r7,r18,16
- 4bebc: d8c00117 ldw r3,4(sp)
- 4bec0: 3cceb03a or r7,r7,r19
- 4bec4: 3880052e bgeu r7,r2,4bedc <__udivdi3+0x258>
- 4bec8: 3c4f883a add r7,r7,r17
- 4becc: b13fffc4 addi r4,r22,-1
- 4bed0: 3c400136 bltu r7,r17,4bed8 <__udivdi3+0x254>
- 4bed4: 3880e436 bltu r7,r2,4c268 <__udivdi3+0x5e4>
- 4bed8: 202d883a mov r22,r4
- 4bedc: 38a1c83a sub r16,r7,r2
- 4bee0: 8009883a mov r4,r16
- 4bee4: a80b883a mov r5,r21
- 4bee8: d8c00115 stw r3,4(sp)
- 4beec: 004c9a00 call 4c9a0 <__umodsi3>
- 4bef0: 1027883a mov r19,r2
- 4bef4: 8009883a mov r4,r16
- 4bef8: a80b883a mov r5,r21
- 4befc: 9826943a slli r19,r19,16
- 4bf00: 004c93c0 call 4c93c <__udivsi3>
- 4bf04: a00b883a mov r5,r20
- 4bf08: 1009883a mov r4,r2
- 4bf0c: 94bfffcc andi r18,r18,65535
- 4bf10: 1021883a mov r16,r2
- 4bf14: 94e4b03a or r18,r18,r19
- 4bf18: 004c9f80 call 4c9f8 <__mulsi3>
- 4bf1c: d8c00117 ldw r3,4(sp)
- 4bf20: 9080052e bgeu r18,r2,4bf38 <__udivdi3+0x2b4>
- 4bf24: 8ca5883a add r18,r17,r18
- 4bf28: 813fffc4 addi r4,r16,-1
- 4bf2c: 9440ad36 bltu r18,r17,4c1e4 <__udivdi3+0x560>
- 4bf30: 9080ac2e bgeu r18,r2,4c1e4 <__udivdi3+0x560>
- 4bf34: 843fff84 addi r16,r16,-2
- 4bf38: b004943a slli r2,r22,16
- 4bf3c: 1404b03a or r2,r2,r16
- 4bf40: 00000206 br 4bf4c <__udivdi3+0x2c8>
- 4bf44: 0007883a mov r3,zero
- 4bf48: 0005883a mov r2,zero
- 4bf4c: dfc00b17 ldw ra,44(sp)
- 4bf50: df000a17 ldw fp,40(sp)
- 4bf54: ddc00917 ldw r23,36(sp)
- 4bf58: dd800817 ldw r22,32(sp)
- 4bf5c: dd400717 ldw r21,28(sp)
- 4bf60: dd000617 ldw r20,24(sp)
- 4bf64: dcc00517 ldw r19,20(sp)
- 4bf68: dc800417 ldw r18,16(sp)
- 4bf6c: dc400317 ldw r17,12(sp)
- 4bf70: dc000217 ldw r16,8(sp)
- 4bf74: dec00c04 addi sp,sp,48
- 4bf78: f800283a ret
- 4bf7c: 00803fc4 movi r2,255
- 4bf80: 11c5803a cmpltu r2,r2,r7
- 4bf84: 100490fa slli r2,r2,3
- 4bf88: 003f9906 br 4bdf0 <__alt_data_end+0xfffd9df0>
- 4bf8c: 00803fc4 movi r2,255
- 4bf90: 1445803a cmpltu r2,r2,r17
- 4bf94: 100490fa slli r2,r2,3
- 4bf98: 003fad06 br 4be50 <__alt_data_end+0xfffd9e50>
- 4bf9c: 00804034 movhi r2,256
- 4bfa0: 10bfffc4 addi r2,r2,-1
- 4bfa4: 11809f36 bltu r2,r6,4c224 <__udivdi3+0x5a0>
- 4bfa8: 00800404 movi r2,16
- 4bfac: 003f4c06 br 4bce0 <__alt_data_end+0xfffd9ce0>
- 4bfb0: 3dce983a sll r7,r7,r23
- 4bfb4: 30b8d83a srl fp,r6,r2
- 4bfb8: 80a2d83a srl r17,r16,r2
- 4bfbc: 35cc983a sll r6,r6,r23
- 4bfc0: 3f38b03a or fp,r7,fp
- 4bfc4: e024d43a srli r18,fp,16
- 4bfc8: 9884d83a srl r2,r19,r2
- 4bfcc: 85e0983a sll r16,r16,r23
- 4bfd0: 8809883a mov r4,r17
- 4bfd4: 900b883a mov r5,r18
- 4bfd8: d9800015 stw r6,0(sp)
- 4bfdc: 1420b03a or r16,r2,r16
- 4bfe0: 004c9a00 call 4c9a0 <__umodsi3>
- 4bfe4: 900b883a mov r5,r18
- 4bfe8: 8809883a mov r4,r17
- 4bfec: 1029883a mov r20,r2
- 4bff0: e5bfffcc andi r22,fp,65535
- 4bff4: 004c93c0 call 4c93c <__udivsi3>
- 4bff8: 100b883a mov r5,r2
- 4bffc: b009883a mov r4,r22
- 4c000: 102b883a mov r21,r2
- 4c004: 004c9f80 call 4c9f8 <__mulsi3>
- 4c008: a028943a slli r20,r20,16
- 4c00c: 8006d43a srli r3,r16,16
- 4c010: 1d06b03a or r3,r3,r20
- 4c014: 1880042e bgeu r3,r2,4c028 <__udivdi3+0x3a4>
- 4c018: 1f07883a add r3,r3,fp
- 4c01c: a93fffc4 addi r4,r21,-1
- 4c020: 1f00892e bgeu r3,fp,4c248 <__udivdi3+0x5c4>
- 4c024: 202b883a mov r21,r4
- 4c028: 18a3c83a sub r17,r3,r2
- 4c02c: 8809883a mov r4,r17
- 4c030: 900b883a mov r5,r18
- 4c034: 004c9a00 call 4c9a0 <__umodsi3>
- 4c038: 1029883a mov r20,r2
- 4c03c: 8809883a mov r4,r17
- 4c040: 900b883a mov r5,r18
- 4c044: a028943a slli r20,r20,16
- 4c048: 004c93c0 call 4c93c <__udivsi3>
- 4c04c: 100b883a mov r5,r2
- 4c050: b009883a mov r4,r22
- 4c054: 843fffcc andi r16,r16,65535
- 4c058: 1023883a mov r17,r2
- 4c05c: 8520b03a or r16,r16,r20
- 4c060: 004c9f80 call 4c9f8 <__mulsi3>
- 4c064: 8080042e bgeu r16,r2,4c078 <__udivdi3+0x3f4>
- 4c068: 8721883a add r16,r16,fp
- 4c06c: 88ffffc4 addi r3,r17,-1
- 4c070: 8700712e bgeu r16,fp,4c238 <__udivdi3+0x5b4>
- 4c074: 1823883a mov r17,r3
- 4c078: a80e943a slli r7,r21,16
- 4c07c: d8c00017 ldw r3,0(sp)
- 4c080: 80a1c83a sub r16,r16,r2
- 4c084: 3c64b03a or r18,r7,r17
- 4c088: 1d3fffcc andi r20,r3,65535
- 4c08c: 9022d43a srli r17,r18,16
- 4c090: 95bfffcc andi r22,r18,65535
- 4c094: a00b883a mov r5,r20
- 4c098: b009883a mov r4,r22
- 4c09c: 182ad43a srli r21,r3,16
- 4c0a0: 004c9f80 call 4c9f8 <__mulsi3>
- 4c0a4: a00b883a mov r5,r20
- 4c0a8: 8809883a mov r4,r17
- 4c0ac: 1039883a mov fp,r2
- 4c0b0: 004c9f80 call 4c9f8 <__mulsi3>
- 4c0b4: 8809883a mov r4,r17
- 4c0b8: a80b883a mov r5,r21
- 4c0bc: 1029883a mov r20,r2
- 4c0c0: 004c9f80 call 4c9f8 <__mulsi3>
- 4c0c4: a80b883a mov r5,r21
- 4c0c8: b009883a mov r4,r22
- 4c0cc: 1023883a mov r17,r2
- 4c0d0: 004c9f80 call 4c9f8 <__mulsi3>
- 4c0d4: e006d43a srli r3,fp,16
- 4c0d8: 1505883a add r2,r2,r20
- 4c0dc: 1887883a add r3,r3,r2
- 4c0e0: 1d00022e bgeu r3,r20,4c0ec <__udivdi3+0x468>
- 4c0e4: 00800074 movhi r2,1
- 4c0e8: 88a3883a add r17,r17,r2
- 4c0ec: 1804d43a srli r2,r3,16
- 4c0f0: 1463883a add r17,r2,r17
- 4c0f4: 84404436 bltu r16,r17,4c208 <__udivdi3+0x584>
- 4c0f8: 84403e26 beq r16,r17,4c1f4 <__udivdi3+0x570>
- 4c0fc: 9005883a mov r2,r18
- 4c100: 0007883a mov r3,zero
- 4c104: 003f9106 br 4bf4c <__alt_data_end+0xfffd9f4c>
- 4c108: 88e2983a sll r17,r17,r3
- 4c10c: 80aed83a srl r23,r16,r2
- 4c110: 80e0983a sll r16,r16,r3
- 4c114: 882ad43a srli r21,r17,16
- 4c118: 9884d83a srl r2,r19,r2
- 4c11c: b809883a mov r4,r23
- 4c120: a80b883a mov r5,r21
- 4c124: 98e4983a sll r18,r19,r3
- 4c128: 142cb03a or r22,r2,r16
- 4c12c: 004c9a00 call 4c9a0 <__umodsi3>
- 4c130: b809883a mov r4,r23
- 4c134: a80b883a mov r5,r21
- 4c138: 1027883a mov r19,r2
- 4c13c: 8d3fffcc andi r20,r17,65535
- 4c140: 004c93c0 call 4c93c <__udivsi3>
- 4c144: a009883a mov r4,r20
- 4c148: 100b883a mov r5,r2
- 4c14c: 102f883a mov r23,r2
- 4c150: 004c9f80 call 4c9f8 <__mulsi3>
- 4c154: 9826943a slli r19,r19,16
- 4c158: b008d43a srli r4,r22,16
- 4c15c: 24c8b03a or r4,r4,r19
- 4c160: 2080062e bgeu r4,r2,4c17c <__udivdi3+0x4f8>
- 4c164: 2449883a add r4,r4,r17
- 4c168: b8ffffc4 addi r3,r23,-1
- 4c16c: 24403c36 bltu r4,r17,4c260 <__udivdi3+0x5dc>
- 4c170: 20803b2e bgeu r4,r2,4c260 <__udivdi3+0x5dc>
- 4c174: bdffff84 addi r23,r23,-2
- 4c178: 2449883a add r4,r4,r17
- 4c17c: 20a1c83a sub r16,r4,r2
- 4c180: a80b883a mov r5,r21
- 4c184: 8009883a mov r4,r16
- 4c188: 004c9a00 call 4c9a0 <__umodsi3>
- 4c18c: a80b883a mov r5,r21
- 4c190: 8009883a mov r4,r16
- 4c194: 1027883a mov r19,r2
- 4c198: 004c93c0 call 4c93c <__udivsi3>
- 4c19c: a009883a mov r4,r20
- 4c1a0: 100b883a mov r5,r2
- 4c1a4: 9826943a slli r19,r19,16
- 4c1a8: 1039883a mov fp,r2
- 4c1ac: 004c9f80 call 4c9f8 <__mulsi3>
- 4c1b0: b13fffcc andi r4,r22,65535
- 4c1b4: 24c8b03a or r4,r4,r19
- 4c1b8: 2080062e bgeu r4,r2,4c1d4 <__udivdi3+0x550>
- 4c1bc: 2449883a add r4,r4,r17
- 4c1c0: e0ffffc4 addi r3,fp,-1
- 4c1c4: 24402436 bltu r4,r17,4c258 <__udivdi3+0x5d4>
- 4c1c8: 2080232e bgeu r4,r2,4c258 <__udivdi3+0x5d4>
- 4c1cc: e73fff84 addi fp,fp,-2
- 4c1d0: 2449883a add r4,r4,r17
- 4c1d4: b82e943a slli r23,r23,16
- 4c1d8: 20a1c83a sub r16,r4,r2
- 4c1dc: bf06b03a or r3,r23,fp
- 4c1e0: 003f2806 br 4be84 <__alt_data_end+0xfffd9e84>
- 4c1e4: 2021883a mov r16,r4
- 4c1e8: 003f5306 br 4bf38 <__alt_data_end+0xfffd9f38>
- 4c1ec: 1821883a mov r16,r3
- 4c1f0: 003ef406 br 4bdc4 <__alt_data_end+0xfffd9dc4>
- 4c1f4: 1806943a slli r3,r3,16
- 4c1f8: 9de6983a sll r19,r19,r23
- 4c1fc: e73fffcc andi fp,fp,65535
- 4c200: 1f07883a add r3,r3,fp
- 4c204: 98ffbd2e bgeu r19,r3,4c0fc <__alt_data_end+0xfffda0fc>
- 4c208: 90bfffc4 addi r2,r18,-1
- 4c20c: 0007883a mov r3,zero
- 4c210: 003f4e06 br 4bf4c <__alt_data_end+0xfffd9f4c>
- 4c214: 00800604 movi r2,24
- 4c218: 003ef506 br 4bdf0 <__alt_data_end+0xfffd9df0>
- 4c21c: 00800604 movi r2,24
- 4c220: 003f0b06 br 4be50 <__alt_data_end+0xfffd9e50>
- 4c224: 00800604 movi r2,24
- 4c228: 003ead06 br 4bce0 <__alt_data_end+0xfffd9ce0>
- 4c22c: 0007883a mov r3,zero
- 4c230: 00800044 movi r2,1
- 4c234: 003f4506 br 4bf4c <__alt_data_end+0xfffd9f4c>
- 4c238: 80bf8e2e bgeu r16,r2,4c074 <__alt_data_end+0xfffda074>
- 4c23c: 8c7fff84 addi r17,r17,-2
- 4c240: 8721883a add r16,r16,fp
- 4c244: 003f8c06 br 4c078 <__alt_data_end+0xfffda078>
- 4c248: 18bf762e bgeu r3,r2,4c024 <__alt_data_end+0xfffda024>
- 4c24c: ad7fff84 addi r21,r21,-2
- 4c250: 1f07883a add r3,r3,fp
- 4c254: 003f7406 br 4c028 <__alt_data_end+0xfffda028>
- 4c258: 1839883a mov fp,r3
- 4c25c: 003fdd06 br 4c1d4 <__alt_data_end+0xfffda1d4>
- 4c260: 182f883a mov r23,r3
- 4c264: 003fc506 br 4c17c <__alt_data_end+0xfffda17c>
- 4c268: b5bfff84 addi r22,r22,-2
- 4c26c: 3c4f883a add r7,r7,r17
- 4c270: 003f1a06 br 4bedc <__alt_data_end+0xfffd9edc>
- 4c274: b5bfff84 addi r22,r22,-2
- 4c278: 1c47883a add r3,r3,r17
- 4c27c: 003ebc06 br 4bd70 <__alt_data_end+0xfffd9d70>
- 0004c280 <__umoddi3>:
- 4c280: defff304 addi sp,sp,-52
- 4c284: df000b15 stw fp,44(sp)
- 4c288: dc400415 stw r17,16(sp)
- 4c28c: dc000315 stw r16,12(sp)
- 4c290: dfc00c15 stw ra,48(sp)
- 4c294: ddc00a15 stw r23,40(sp)
- 4c298: dd800915 stw r22,36(sp)
- 4c29c: dd400815 stw r21,32(sp)
- 4c2a0: dd000715 stw r20,28(sp)
- 4c2a4: dcc00615 stw r19,24(sp)
- 4c2a8: dc800515 stw r18,20(sp)
- 4c2ac: 2021883a mov r16,r4
- 4c2b0: 2823883a mov r17,r5
- 4c2b4: 2839883a mov fp,r5
- 4c2b8: 3800401e bne r7,zero,4c3bc <__umoddi3+0x13c>
- 4c2bc: 3027883a mov r19,r6
- 4c2c0: 2029883a mov r20,r4
- 4c2c4: 2980552e bgeu r5,r6,4c41c <__umoddi3+0x19c>
- 4c2c8: 00bfffd4 movui r2,65535
- 4c2cc: 1180a236 bltu r2,r6,4c558 <__umoddi3+0x2d8>
- 4c2d0: 01003fc4 movi r4,255
- 4c2d4: 2189803a cmpltu r4,r4,r6
- 4c2d8: 200890fa slli r4,r4,3
- 4c2dc: 3104d83a srl r2,r6,r4
- 4c2e0: 00c00174 movhi r3,5
- 4c2e4: 18c83584 addi r3,r3,8406
- 4c2e8: 1885883a add r2,r3,r2
- 4c2ec: 10c00003 ldbu r3,0(r2)
- 4c2f0: 00800804 movi r2,32
- 4c2f4: 1909883a add r4,r3,r4
- 4c2f8: 1125c83a sub r18,r2,r4
- 4c2fc: 90000526 beq r18,zero,4c314 <__umoddi3+0x94>
- 4c300: 8ca2983a sll r17,r17,r18
- 4c304: 8108d83a srl r4,r16,r4
- 4c308: 34a6983a sll r19,r6,r18
- 4c30c: 84a8983a sll r20,r16,r18
- 4c310: 2478b03a or fp,r4,r17
- 4c314: 982cd43a srli r22,r19,16
- 4c318: e009883a mov r4,fp
- 4c31c: 9dffffcc andi r23,r19,65535
- 4c320: b00b883a mov r5,r22
- 4c324: 004c9a00 call 4c9a0 <__umodsi3>
- 4c328: b00b883a mov r5,r22
- 4c32c: e009883a mov r4,fp
- 4c330: 102b883a mov r21,r2
- 4c334: 004c93c0 call 4c93c <__udivsi3>
- 4c338: 100b883a mov r5,r2
- 4c33c: b809883a mov r4,r23
- 4c340: 004c9f80 call 4c9f8 <__mulsi3>
- 4c344: a82a943a slli r21,r21,16
- 4c348: a006d43a srli r3,r20,16
- 4c34c: 1d46b03a or r3,r3,r21
- 4c350: 1880032e bgeu r3,r2,4c360 <__umoddi3+0xe0>
- 4c354: 1cc7883a add r3,r3,r19
- 4c358: 1cc00136 bltu r3,r19,4c360 <__umoddi3+0xe0>
- 4c35c: 18813136 bltu r3,r2,4c824 <__umoddi3+0x5a4>
- 4c360: 18a1c83a sub r16,r3,r2
- 4c364: b00b883a mov r5,r22
- 4c368: 8009883a mov r4,r16
- 4c36c: 004c9a00 call 4c9a0 <__umodsi3>
- 4c370: b00b883a mov r5,r22
- 4c374: 8009883a mov r4,r16
- 4c378: 1023883a mov r17,r2
- 4c37c: 004c93c0 call 4c93c <__udivsi3>
- 4c380: 100b883a mov r5,r2
- 4c384: b809883a mov r4,r23
- 4c388: 8822943a slli r17,r17,16
- 4c38c: 004c9f80 call 4c9f8 <__mulsi3>
- 4c390: a0ffffcc andi r3,r20,65535
- 4c394: 1c46b03a or r3,r3,r17
- 4c398: 1880042e bgeu r3,r2,4c3ac <__umoddi3+0x12c>
- 4c39c: 1cc7883a add r3,r3,r19
- 4c3a0: 1cc00236 bltu r3,r19,4c3ac <__umoddi3+0x12c>
- 4c3a4: 1880012e bgeu r3,r2,4c3ac <__umoddi3+0x12c>
- 4c3a8: 1cc7883a add r3,r3,r19
- 4c3ac: 1885c83a sub r2,r3,r2
- 4c3b0: 1484d83a srl r2,r2,r18
- 4c3b4: 0007883a mov r3,zero
- 4c3b8: 00005306 br 4c508 <__umoddi3+0x288>
- 4c3bc: 29c05036 bltu r5,r7,4c500 <__umoddi3+0x280>
- 4c3c0: 00bfffd4 movui r2,65535
- 4c3c4: 11c05c2e bgeu r2,r7,4c538 <__umoddi3+0x2b8>
- 4c3c8: 00804034 movhi r2,256
- 4c3cc: 10bfffc4 addi r2,r2,-1
- 4c3d0: 11c10636 bltu r2,r7,4c7ec <__umoddi3+0x56c>
- 4c3d4: 01000404 movi r4,16
- 4c3d8: 3904d83a srl r2,r7,r4
- 4c3dc: 00c00174 movhi r3,5
- 4c3e0: 18c83584 addi r3,r3,8406
- 4c3e4: 1885883a add r2,r3,r2
- 4c3e8: 14c00003 ldbu r19,0(r2)
- 4c3ec: 00c00804 movi r3,32
- 4c3f0: 9927883a add r19,r19,r4
- 4c3f4: 1ce9c83a sub r20,r3,r19
- 4c3f8: a0005c1e bne r20,zero,4c56c <__umoddi3+0x2ec>
- 4c3fc: 3c400136 bltu r7,r17,4c404 <__umoddi3+0x184>
- 4c400: 81810a36 bltu r16,r6,4c82c <__umoddi3+0x5ac>
- 4c404: 8185c83a sub r2,r16,r6
- 4c408: 89e3c83a sub r17,r17,r7
- 4c40c: 8089803a cmpltu r4,r16,r2
- 4c410: 8939c83a sub fp,r17,r4
- 4c414: e007883a mov r3,fp
- 4c418: 00003b06 br 4c508 <__umoddi3+0x288>
- 4c41c: 3000041e bne r6,zero,4c430 <__umoddi3+0x1b0>
- 4c420: 000b883a mov r5,zero
- 4c424: 01000044 movi r4,1
- 4c428: 004c93c0 call 4c93c <__udivsi3>
- 4c42c: 1027883a mov r19,r2
- 4c430: 00bfffd4 movui r2,65535
- 4c434: 14c0442e bgeu r2,r19,4c548 <__umoddi3+0x2c8>
- 4c438: 00804034 movhi r2,256
- 4c43c: 10bfffc4 addi r2,r2,-1
- 4c440: 14c0ec36 bltu r2,r19,4c7f4 <__umoddi3+0x574>
- 4c444: 00800404 movi r2,16
- 4c448: 9886d83a srl r3,r19,r2
- 4c44c: 01000174 movhi r4,5
- 4c450: 21083584 addi r4,r4,8406
- 4c454: 20c7883a add r3,r4,r3
- 4c458: 18c00003 ldbu r3,0(r3)
- 4c45c: 1887883a add r3,r3,r2
- 4c460: 00800804 movi r2,32
- 4c464: 10e5c83a sub r18,r2,r3
- 4c468: 9000ab1e bne r18,zero,4c718 <__umoddi3+0x498>
- 4c46c: 982cd43a srli r22,r19,16
- 4c470: 8ce3c83a sub r17,r17,r19
- 4c474: 9dffffcc andi r23,r19,65535
- 4c478: b00b883a mov r5,r22
- 4c47c: 8809883a mov r4,r17
- 4c480: 004c9a00 call 4c9a0 <__umodsi3>
- 4c484: b00b883a mov r5,r22
- 4c488: 8809883a mov r4,r17
- 4c48c: 102b883a mov r21,r2
- 4c490: 004c93c0 call 4c93c <__udivsi3>
- 4c494: b80b883a mov r5,r23
- 4c498: 1009883a mov r4,r2
- 4c49c: 004c9f80 call 4c9f8 <__mulsi3>
- 4c4a0: a82a943a slli r21,r21,16
- 4c4a4: a006d43a srli r3,r20,16
- 4c4a8: 1d46b03a or r3,r3,r21
- 4c4ac: 1880042e bgeu r3,r2,4c4c0 <__umoddi3+0x240>
- 4c4b0: 1cc7883a add r3,r3,r19
- 4c4b4: 1cc00236 bltu r3,r19,4c4c0 <__umoddi3+0x240>
- 4c4b8: 1880012e bgeu r3,r2,4c4c0 <__umoddi3+0x240>
- 4c4bc: 1cc7883a add r3,r3,r19
- 4c4c0: 18a1c83a sub r16,r3,r2
- 4c4c4: b00b883a mov r5,r22
- 4c4c8: 8009883a mov r4,r16
- 4c4cc: 004c9a00 call 4c9a0 <__umodsi3>
- 4c4d0: 1023883a mov r17,r2
- 4c4d4: b00b883a mov r5,r22
- 4c4d8: 8009883a mov r4,r16
- 4c4dc: 004c93c0 call 4c93c <__udivsi3>
- 4c4e0: 8822943a slli r17,r17,16
- 4c4e4: b80b883a mov r5,r23
- 4c4e8: 1009883a mov r4,r2
- 4c4ec: 004c9f80 call 4c9f8 <__mulsi3>
- 4c4f0: a53fffcc andi r20,r20,65535
- 4c4f4: a446b03a or r3,r20,r17
- 4c4f8: 18bfac2e bgeu r3,r2,4c3ac <__alt_data_end+0xfffda3ac>
- 4c4fc: 003fa706 br 4c39c <__alt_data_end+0xfffda39c>
- 4c500: 2005883a mov r2,r4
- 4c504: 2807883a mov r3,r5
- 4c508: dfc00c17 ldw ra,48(sp)
- 4c50c: df000b17 ldw fp,44(sp)
- 4c510: ddc00a17 ldw r23,40(sp)
- 4c514: dd800917 ldw r22,36(sp)
- 4c518: dd400817 ldw r21,32(sp)
- 4c51c: dd000717 ldw r20,28(sp)
- 4c520: dcc00617 ldw r19,24(sp)
- 4c524: dc800517 ldw r18,20(sp)
- 4c528: dc400417 ldw r17,16(sp)
- 4c52c: dc000317 ldw r16,12(sp)
- 4c530: dec00d04 addi sp,sp,52
- 4c534: f800283a ret
- 4c538: 04c03fc4 movi r19,255
- 4c53c: 99c9803a cmpltu r4,r19,r7
- 4c540: 200890fa slli r4,r4,3
- 4c544: 003fa406 br 4c3d8 <__alt_data_end+0xfffda3d8>
- 4c548: 00803fc4 movi r2,255
- 4c54c: 14c5803a cmpltu r2,r2,r19
- 4c550: 100490fa slli r2,r2,3
- 4c554: 003fbc06 br 4c448 <__alt_data_end+0xfffda448>
- 4c558: 00804034 movhi r2,256
- 4c55c: 10bfffc4 addi r2,r2,-1
- 4c560: 1180a636 bltu r2,r6,4c7fc <__umoddi3+0x57c>
- 4c564: 01000404 movi r4,16
- 4c568: 003f5c06 br 4c2dc <__alt_data_end+0xfffda2dc>
- 4c56c: 3d0e983a sll r7,r7,r20
- 4c570: 34ead83a srl r21,r6,r19
- 4c574: 8cc6d83a srl r3,r17,r19
- 4c578: 8d10983a sll r8,r17,r20
- 4c57c: 3d6ab03a or r21,r7,r21
- 4c580: a82cd43a srli r22,r21,16
- 4c584: 84e2d83a srl r17,r16,r19
- 4c588: 1809883a mov r4,r3
- 4c58c: b00b883a mov r5,r22
- 4c590: 8a22b03a or r17,r17,r8
- 4c594: 3524983a sll r18,r6,r20
- 4c598: dc400015 stw r17,0(sp)
- 4c59c: d8c00115 stw r3,4(sp)
- 4c5a0: 004c9a00 call 4c9a0 <__umodsi3>
- 4c5a4: d8c00117 ldw r3,4(sp)
- 4c5a8: b00b883a mov r5,r22
- 4c5ac: 1039883a mov fp,r2
- 4c5b0: 1809883a mov r4,r3
- 4c5b4: 004c93c0 call 4c93c <__udivsi3>
- 4c5b8: adffffcc andi r23,r21,65535
- 4c5bc: 100b883a mov r5,r2
- 4c5c0: b809883a mov r4,r23
- 4c5c4: 1023883a mov r17,r2
- 4c5c8: 004c9f80 call 4c9f8 <__mulsi3>
- 4c5cc: d9400017 ldw r5,0(sp)
- 4c5d0: e008943a slli r4,fp,16
- 4c5d4: 8520983a sll r16,r16,r20
- 4c5d8: 2806d43a srli r3,r5,16
- 4c5dc: 1906b03a or r3,r3,r4
- 4c5e0: 1880042e bgeu r3,r2,4c5f4 <__umoddi3+0x374>
- 4c5e4: 1d47883a add r3,r3,r21
- 4c5e8: 893fffc4 addi r4,r17,-1
- 4c5ec: 1d40892e bgeu r3,r21,4c814 <__umoddi3+0x594>
- 4c5f0: 2023883a mov r17,r4
- 4c5f4: 18b9c83a sub fp,r3,r2
- 4c5f8: b00b883a mov r5,r22
- 4c5fc: e009883a mov r4,fp
- 4c600: 004c9a00 call 4c9a0 <__umodsi3>
- 4c604: b00b883a mov r5,r22
- 4c608: e009883a mov r4,fp
- 4c60c: d8800215 stw r2,8(sp)
- 4c610: 004c93c0 call 4c93c <__udivsi3>
- 4c614: 100b883a mov r5,r2
- 4c618: b809883a mov r4,r23
- 4c61c: 102d883a mov r22,r2
- 4c620: 004c9f80 call 4c9f8 <__mulsi3>
- 4c624: d9800217 ldw r6,8(sp)
- 4c628: d8c00017 ldw r3,0(sp)
- 4c62c: 300c943a slli r6,r6,16
- 4c630: 1a3fffcc andi r8,r3,65535
- 4c634: 4190b03a or r8,r8,r6
- 4c638: 4080042e bgeu r8,r2,4c64c <__umoddi3+0x3cc>
- 4c63c: 4551883a add r8,r8,r21
- 4c640: b0ffffc4 addi r3,r22,-1
- 4c644: 45406f2e bgeu r8,r21,4c804 <__umoddi3+0x584>
- 4c648: 182d883a mov r22,r3
- 4c64c: 880e943a slli r7,r17,16
- 4c650: 9006d43a srli r3,r18,16
- 4c654: 91bfffcc andi r6,r18,65535
- 4c658: 3dacb03a or r22,r7,r22
- 4c65c: b02ed43a srli r23,r22,16
- 4c660: b5bfffcc andi r22,r22,65535
- 4c664: 300b883a mov r5,r6
- 4c668: b009883a mov r4,r22
- 4c66c: 40a3c83a sub r17,r8,r2
- 4c670: d8c00115 stw r3,4(sp)
- 4c674: d9800215 stw r6,8(sp)
- 4c678: 004c9f80 call 4c9f8 <__mulsi3>
- 4c67c: d9800217 ldw r6,8(sp)
- 4c680: b809883a mov r4,r23
- 4c684: 1039883a mov fp,r2
- 4c688: 300b883a mov r5,r6
- 4c68c: 004c9f80 call 4c9f8 <__mulsi3>
- 4c690: d8c00117 ldw r3,4(sp)
- 4c694: b809883a mov r4,r23
- 4c698: d8800215 stw r2,8(sp)
- 4c69c: 180b883a mov r5,r3
- 4c6a0: 004c9f80 call 4c9f8 <__mulsi3>
- 4c6a4: d8c00117 ldw r3,4(sp)
- 4c6a8: b009883a mov r4,r22
- 4c6ac: 102f883a mov r23,r2
- 4c6b0: 180b883a mov r5,r3
- 4c6b4: 004c9f80 call 4c9f8 <__mulsi3>
- 4c6b8: d9800217 ldw r6,8(sp)
- 4c6bc: e006d43a srli r3,fp,16
- 4c6c0: 1185883a add r2,r2,r6
- 4c6c4: 1885883a add r2,r3,r2
- 4c6c8: 1180022e bgeu r2,r6,4c6d4 <__umoddi3+0x454>
- 4c6cc: 00c00074 movhi r3,1
- 4c6d0: b8ef883a add r23,r23,r3
- 4c6d4: 1006d43a srli r3,r2,16
- 4c6d8: 1004943a slli r2,r2,16
- 4c6dc: e73fffcc andi fp,fp,65535
- 4c6e0: 1dc7883a add r3,r3,r23
- 4c6e4: 1739883a add fp,r2,fp
- 4c6e8: 88c03a36 bltu r17,r3,4c7d4 <__umoddi3+0x554>
- 4c6ec: 88c05126 beq r17,r3,4c834 <__umoddi3+0x5b4>
- 4c6f0: 88c9c83a sub r4,r17,r3
- 4c6f4: e00f883a mov r7,fp
- 4c6f8: 81cfc83a sub r7,r16,r7
- 4c6fc: 81c7803a cmpltu r3,r16,r7
- 4c700: 20c7c83a sub r3,r4,r3
- 4c704: 1cc4983a sll r2,r3,r19
- 4c708: 3d0ed83a srl r7,r7,r20
- 4c70c: 1d06d83a srl r3,r3,r20
- 4c710: 11c4b03a or r2,r2,r7
- 4c714: 003f7c06 br 4c508 <__alt_data_end+0xfffda508>
- 4c718: 9ca6983a sll r19,r19,r18
- 4c71c: 88f8d83a srl fp,r17,r3
- 4c720: 80c4d83a srl r2,r16,r3
- 4c724: 982cd43a srli r22,r19,16
- 4c728: 8ca2983a sll r17,r17,r18
- 4c72c: e009883a mov r4,fp
- 4c730: b00b883a mov r5,r22
- 4c734: 146ab03a or r21,r2,r17
- 4c738: 004c9a00 call 4c9a0 <__umodsi3>
- 4c73c: b00b883a mov r5,r22
- 4c740: e009883a mov r4,fp
- 4c744: 1029883a mov r20,r2
- 4c748: 9dffffcc andi r23,r19,65535
- 4c74c: 004c93c0 call 4c93c <__udivsi3>
- 4c750: b809883a mov r4,r23
- 4c754: 100b883a mov r5,r2
- 4c758: 004c9f80 call 4c9f8 <__mulsi3>
- 4c75c: a008943a slli r4,r20,16
- 4c760: a806d43a srli r3,r21,16
- 4c764: 84a8983a sll r20,r16,r18
- 4c768: 1906b03a or r3,r3,r4
- 4c76c: 1880042e bgeu r3,r2,4c780 <__umoddi3+0x500>
- 4c770: 1cc7883a add r3,r3,r19
- 4c774: 1cc00236 bltu r3,r19,4c780 <__umoddi3+0x500>
- 4c778: 1880012e bgeu r3,r2,4c780 <__umoddi3+0x500>
- 4c77c: 1cc7883a add r3,r3,r19
- 4c780: 18a3c83a sub r17,r3,r2
- 4c784: b00b883a mov r5,r22
- 4c788: 8809883a mov r4,r17
- 4c78c: 004c9a00 call 4c9a0 <__umodsi3>
- 4c790: b00b883a mov r5,r22
- 4c794: 8809883a mov r4,r17
- 4c798: 1021883a mov r16,r2
- 4c79c: 004c93c0 call 4c93c <__udivsi3>
- 4c7a0: 100b883a mov r5,r2
- 4c7a4: b809883a mov r4,r23
- 4c7a8: 8020943a slli r16,r16,16
- 4c7ac: 004c9f80 call 4c9f8 <__mulsi3>
- 4c7b0: a8ffffcc andi r3,r21,65535
- 4c7b4: 1c06b03a or r3,r3,r16
- 4c7b8: 1880042e bgeu r3,r2,4c7cc <__umoddi3+0x54c>
- 4c7bc: 1cc7883a add r3,r3,r19
- 4c7c0: 1cc00236 bltu r3,r19,4c7cc <__umoddi3+0x54c>
- 4c7c4: 1880012e bgeu r3,r2,4c7cc <__umoddi3+0x54c>
- 4c7c8: 1cc7883a add r3,r3,r19
- 4c7cc: 18a3c83a sub r17,r3,r2
- 4c7d0: 003f2906 br 4c478 <__alt_data_end+0xfffda478>
- 4c7d4: e48fc83a sub r7,fp,r18
- 4c7d8: 1d49c83a sub r4,r3,r21
- 4c7dc: e1f9803a cmpltu fp,fp,r7
- 4c7e0: 2739c83a sub fp,r4,fp
- 4c7e4: 8f09c83a sub r4,r17,fp
- 4c7e8: 003fc306 br 4c6f8 <__alt_data_end+0xfffda6f8>
- 4c7ec: 01000604 movi r4,24
- 4c7f0: 003ef906 br 4c3d8 <__alt_data_end+0xfffda3d8>
- 4c7f4: 00800604 movi r2,24
- 4c7f8: 003f1306 br 4c448 <__alt_data_end+0xfffda448>
- 4c7fc: 01000604 movi r4,24
- 4c800: 003eb606 br 4c2dc <__alt_data_end+0xfffda2dc>
- 4c804: 40bf902e bgeu r8,r2,4c648 <__alt_data_end+0xfffda648>
- 4c808: b5bfff84 addi r22,r22,-2
- 4c80c: 4551883a add r8,r8,r21
- 4c810: 003f8e06 br 4c64c <__alt_data_end+0xfffda64c>
- 4c814: 18bf762e bgeu r3,r2,4c5f0 <__alt_data_end+0xfffda5f0>
- 4c818: 8c7fff84 addi r17,r17,-2
- 4c81c: 1d47883a add r3,r3,r21
- 4c820: 003f7406 br 4c5f4 <__alt_data_end+0xfffda5f4>
- 4c824: 1cc7883a add r3,r3,r19
- 4c828: 003ecd06 br 4c360 <__alt_data_end+0xfffda360>
- 4c82c: 8005883a mov r2,r16
- 4c830: 003ef806 br 4c414 <__alt_data_end+0xfffda414>
- 4c834: 873fe736 bltu r16,fp,4c7d4 <__alt_data_end+0xfffda7d4>
- 4c838: e00f883a mov r7,fp
- 4c83c: 0009883a mov r4,zero
- 4c840: 003fad06 br 4c6f8 <__alt_data_end+0xfffda6f8>
- 0004c844 <__divsi3>:
- 4c844: 20001b16 blt r4,zero,4c8b4 <__divsi3+0x70>
- 4c848: 000f883a mov r7,zero
- 4c84c: 28001616 blt r5,zero,4c8a8 <__divsi3+0x64>
- 4c850: 200d883a mov r6,r4
- 4c854: 29001a2e bgeu r5,r4,4c8c0 <__divsi3+0x7c>
- 4c858: 00800804 movi r2,32
- 4c85c: 00c00044 movi r3,1
- 4c860: 00000106 br 4c868 <__divsi3+0x24>
- 4c864: 10000d26 beq r2,zero,4c89c <__divsi3+0x58>
- 4c868: 294b883a add r5,r5,r5
- 4c86c: 10bfffc4 addi r2,r2,-1
- 4c870: 18c7883a add r3,r3,r3
- 4c874: 293ffb36 bltu r5,r4,4c864 <__alt_data_end+0xfffda864>
- 4c878: 0005883a mov r2,zero
- 4c87c: 18000726 beq r3,zero,4c89c <__divsi3+0x58>
- 4c880: 0005883a mov r2,zero
- 4c884: 31400236 bltu r6,r5,4c890 <__divsi3+0x4c>
- 4c888: 314dc83a sub r6,r6,r5
- 4c88c: 10c4b03a or r2,r2,r3
- 4c890: 1806d07a srli r3,r3,1
- 4c894: 280ad07a srli r5,r5,1
- 4c898: 183ffa1e bne r3,zero,4c884 <__alt_data_end+0xfffda884>
- 4c89c: 38000126 beq r7,zero,4c8a4 <__divsi3+0x60>
- 4c8a0: 0085c83a sub r2,zero,r2
- 4c8a4: f800283a ret
- 4c8a8: 014bc83a sub r5,zero,r5
- 4c8ac: 39c0005c xori r7,r7,1
- 4c8b0: 003fe706 br 4c850 <__alt_data_end+0xfffda850>
- 4c8b4: 0109c83a sub r4,zero,r4
- 4c8b8: 01c00044 movi r7,1
- 4c8bc: 003fe306 br 4c84c <__alt_data_end+0xfffda84c>
- 4c8c0: 00c00044 movi r3,1
- 4c8c4: 003fee06 br 4c880 <__alt_data_end+0xfffda880>
- 0004c8c8 <__modsi3>:
- 4c8c8: 20001716 blt r4,zero,4c928 <__modsi3+0x60>
- 4c8cc: 000f883a mov r7,zero
- 4c8d0: 2005883a mov r2,r4
- 4c8d4: 28001216 blt r5,zero,4c920 <__modsi3+0x58>
- 4c8d8: 2900162e bgeu r5,r4,4c934 <__modsi3+0x6c>
- 4c8dc: 01800804 movi r6,32
- 4c8e0: 00c00044 movi r3,1
- 4c8e4: 00000106 br 4c8ec <__modsi3+0x24>
- 4c8e8: 30000a26 beq r6,zero,4c914 <__modsi3+0x4c>
- 4c8ec: 294b883a add r5,r5,r5
- 4c8f0: 31bfffc4 addi r6,r6,-1
- 4c8f4: 18c7883a add r3,r3,r3
- 4c8f8: 293ffb36 bltu r5,r4,4c8e8 <__alt_data_end+0xfffda8e8>
- 4c8fc: 18000526 beq r3,zero,4c914 <__modsi3+0x4c>
- 4c900: 1806d07a srli r3,r3,1
- 4c904: 11400136 bltu r2,r5,4c90c <__modsi3+0x44>
- 4c908: 1145c83a sub r2,r2,r5
- 4c90c: 280ad07a srli r5,r5,1
- 4c910: 183ffb1e bne r3,zero,4c900 <__alt_data_end+0xfffda900>
- 4c914: 38000126 beq r7,zero,4c91c <__modsi3+0x54>
- 4c918: 0085c83a sub r2,zero,r2
- 4c91c: f800283a ret
- 4c920: 014bc83a sub r5,zero,r5
- 4c924: 003fec06 br 4c8d8 <__alt_data_end+0xfffda8d8>
- 4c928: 0109c83a sub r4,zero,r4
- 4c92c: 01c00044 movi r7,1
- 4c930: 003fe706 br 4c8d0 <__alt_data_end+0xfffda8d0>
- 4c934: 00c00044 movi r3,1
- 4c938: 003ff106 br 4c900 <__alt_data_end+0xfffda900>
- 0004c93c <__udivsi3>:
- 4c93c: 200d883a mov r6,r4
- 4c940: 2900152e bgeu r5,r4,4c998 <__udivsi3+0x5c>
- 4c944: 28001416 blt r5,zero,4c998 <__udivsi3+0x5c>
- 4c948: 00800804 movi r2,32
- 4c94c: 00c00044 movi r3,1
- 4c950: 00000206 br 4c95c <__udivsi3+0x20>
- 4c954: 10000e26 beq r2,zero,4c990 <__udivsi3+0x54>
- 4c958: 28000516 blt r5,zero,4c970 <__udivsi3+0x34>
- 4c95c: 294b883a add r5,r5,r5
- 4c960: 10bfffc4 addi r2,r2,-1
- 4c964: 18c7883a add r3,r3,r3
- 4c968: 293ffa36 bltu r5,r4,4c954 <__alt_data_end+0xfffda954>
- 4c96c: 18000826 beq r3,zero,4c990 <__udivsi3+0x54>
- 4c970: 0005883a mov r2,zero
- 4c974: 31400236 bltu r6,r5,4c980 <__udivsi3+0x44>
- 4c978: 314dc83a sub r6,r6,r5
- 4c97c: 10c4b03a or r2,r2,r3
- 4c980: 1806d07a srli r3,r3,1
- 4c984: 280ad07a srli r5,r5,1
- 4c988: 183ffa1e bne r3,zero,4c974 <__alt_data_end+0xfffda974>
- 4c98c: f800283a ret
- 4c990: 0005883a mov r2,zero
- 4c994: f800283a ret
- 4c998: 00c00044 movi r3,1
- 4c99c: 003ff406 br 4c970 <__alt_data_end+0xfffda970>
- 0004c9a0 <__umodsi3>:
- 4c9a0: 2005883a mov r2,r4
- 4c9a4: 2900122e bgeu r5,r4,4c9f0 <__umodsi3+0x50>
- 4c9a8: 28001116 blt r5,zero,4c9f0 <__umodsi3+0x50>
- 4c9ac: 01800804 movi r6,32
- 4c9b0: 00c00044 movi r3,1
- 4c9b4: 00000206 br 4c9c0 <__umodsi3+0x20>
- 4c9b8: 30000c26 beq r6,zero,4c9ec <__umodsi3+0x4c>
- 4c9bc: 28000516 blt r5,zero,4c9d4 <__umodsi3+0x34>
- 4c9c0: 294b883a add r5,r5,r5
- 4c9c4: 31bfffc4 addi r6,r6,-1
- 4c9c8: 18c7883a add r3,r3,r3
- 4c9cc: 293ffa36 bltu r5,r4,4c9b8 <__alt_data_end+0xfffda9b8>
- 4c9d0: 18000626 beq r3,zero,4c9ec <__umodsi3+0x4c>
- 4c9d4: 1806d07a srli r3,r3,1
- 4c9d8: 11400136 bltu r2,r5,4c9e0 <__umodsi3+0x40>
- 4c9dc: 1145c83a sub r2,r2,r5
- 4c9e0: 280ad07a srli r5,r5,1
- 4c9e4: 183ffb1e bne r3,zero,4c9d4 <__alt_data_end+0xfffda9d4>
- 4c9e8: f800283a ret
- 4c9ec: f800283a ret
- 4c9f0: 00c00044 movi r3,1
- 4c9f4: 003ff706 br 4c9d4 <__alt_data_end+0xfffda9d4>
- 0004c9f8 <__mulsi3>:
- 4c9f8: 0005883a mov r2,zero
- 4c9fc: 20000726 beq r4,zero,4ca1c <__mulsi3+0x24>
- 4ca00: 20c0004c andi r3,r4,1
- 4ca04: 2008d07a srli r4,r4,1
- 4ca08: 18000126 beq r3,zero,4ca10 <__mulsi3+0x18>
- 4ca0c: 1145883a add r2,r2,r5
- 4ca10: 294b883a add r5,r5,r5
- 4ca14: 203ffa1e bne r4,zero,4ca00 <__alt_data_end+0xfffdaa00>
- 4ca18: f800283a ret
- 4ca1c: f800283a ret
- 0004ca20 <__divdf3>:
- 4ca20: defff004 addi sp,sp,-64
- 4ca24: dc800815 stw r18,32(sp)
- 4ca28: 2824d53a srli r18,r5,20
- 4ca2c: dd800c15 stw r22,48(sp)
- 4ca30: 282cd7fa srli r22,r5,31
- 4ca34: dc000615 stw r16,24(sp)
- 4ca38: 04000434 movhi r16,16
- 4ca3c: 843fffc4 addi r16,r16,-1
- 4ca40: dfc00f15 stw ra,60(sp)
- 4ca44: df000e15 stw fp,56(sp)
- 4ca48: ddc00d15 stw r23,52(sp)
- 4ca4c: dd400b15 stw r21,44(sp)
- 4ca50: dd000a15 stw r20,40(sp)
- 4ca54: dcc00915 stw r19,36(sp)
- 4ca58: dc400715 stw r17,28(sp)
- 4ca5c: 9481ffcc andi r18,r18,2047
- 4ca60: 2c20703a and r16,r5,r16
- 4ca64: b2003fcc andi r8,r22,255
- 4ca68: 90006126 beq r18,zero,4cbf0 <__divdf3+0x1d0>
- 4ca6c: 0081ffc4 movi r2,2047
- 4ca70: 202b883a mov r21,r4
- 4ca74: 90803726 beq r18,r2,4cb54 <__divdf3+0x134>
- 4ca78: 80800434 orhi r2,r16,16
- 4ca7c: 100490fa slli r2,r2,3
- 4ca80: 2020d77a srli r16,r4,29
- 4ca84: 202a90fa slli r21,r4,3
- 4ca88: 94bf0044 addi r18,r18,-1023
- 4ca8c: 80a0b03a or r16,r16,r2
- 4ca90: 0013883a mov r9,zero
- 4ca94: 000b883a mov r5,zero
- 4ca98: 3806d53a srli r3,r7,20
- 4ca9c: 382ed7fa srli r23,r7,31
- 4caa0: 04400434 movhi r17,16
- 4caa4: 8c7fffc4 addi r17,r17,-1
- 4caa8: 18c1ffcc andi r3,r3,2047
- 4caac: 3029883a mov r20,r6
- 4cab0: 3c62703a and r17,r7,r17
- 4cab4: bf003fcc andi fp,r23,255
- 4cab8: 18006e26 beq r3,zero,4cc74 <__divdf3+0x254>
- 4cabc: 0081ffc4 movi r2,2047
- 4cac0: 18806626 beq r3,r2,4cc5c <__divdf3+0x23c>
- 4cac4: 88800434 orhi r2,r17,16
- 4cac8: 100490fa slli r2,r2,3
- 4cacc: 3022d77a srli r17,r6,29
- 4cad0: 302890fa slli r20,r6,3
- 4cad4: 18ff0044 addi r3,r3,-1023
- 4cad8: 88a2b03a or r17,r17,r2
- 4cadc: 000f883a mov r7,zero
- 4cae0: b5e6f03a xor r19,r22,r23
- 4cae4: 3a4cb03a or r6,r7,r9
- 4cae8: 008003c4 movi r2,15
- 4caec: 9809883a mov r4,r19
- 4caf0: 90c7c83a sub r3,r18,r3
- 4caf4: 9cc03fcc andi r19,r19,255
- 4caf8: 11809636 bltu r2,r6,4cd54 <__divdf3+0x334>
- 4cafc: 300c90ba slli r6,r6,2
- 4cb00: 00800174 movhi r2,5
- 4cb04: 10b2c504 addi r2,r2,-13548
- 4cb08: 308d883a add r6,r6,r2
- 4cb0c: 30800017 ldw r2,0(r6)
- 4cb10: 1000683a jmp r2
- 4cb14: 0004cd54 movui zero,4917
- 4cb18: 0004cb8c andi zero,zero,4910
- 4cb1c: 0004cd44 movi zero,4917
- 4cb20: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
- 4cb24: 0004cd44 movi zero,4917
- 4cb28: 0004cd18 cmpnei zero,zero,4916
- 4cb2c: 0004cd44 movi zero,4917
- 4cb30: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
- 4cb34: 0004cb8c andi zero,zero,4910
- 4cb38: 0004cb8c andi zero,zero,4910
- 4cb3c: 0004cd18 cmpnei zero,zero,4916
- 4cb40: 0004cb80 call 4cb8 <__alt_mem_onchip_memory2-0x3b348>
- 4cb44: 0004cb70 cmpltui zero,zero,4909
- 4cb48: 0004cb70 cmpltui zero,zero,4909
- 4cb4c: 0004cb70 cmpltui zero,zero,4909
- 4cb50: 0004d0dc xori zero,zero,4931
- 4cb54: 2404b03a or r2,r4,r16
- 4cb58: 10006c1e bne r2,zero,4cd0c <__divdf3+0x2ec>
- 4cb5c: 02400204 movi r9,8
- 4cb60: 0021883a mov r16,zero
- 4cb64: 002b883a mov r21,zero
- 4cb68: 01400084 movi r5,2
- 4cb6c: 003fca06 br 4ca98 <__alt_data_end+0xfffdaa98>
- 4cb70: 8023883a mov r17,r16
- 4cb74: a829883a mov r20,r21
- 4cb78: 4039883a mov fp,r8
- 4cb7c: 280f883a mov r7,r5
- 4cb80: 00800084 movi r2,2
- 4cb84: 3881601e bne r7,r2,4d108 <__divdf3+0x6e8>
- 4cb88: e027883a mov r19,fp
- 4cb8c: 9900004c andi r4,r19,1
- 4cb90: 0081ffc4 movi r2,2047
- 4cb94: 0021883a mov r16,zero
- 4cb98: 002b883a mov r21,zero
- 4cb9c: 1004953a slli r2,r2,20
- 4cba0: 20c03fcc andi r3,r4,255
- 4cba4: 01400434 movhi r5,16
- 4cba8: 297fffc4 addi r5,r5,-1
- 4cbac: 180697fa slli r3,r3,31
- 4cbb0: 8160703a and r16,r16,r5
- 4cbb4: 80a0b03a or r16,r16,r2
- 4cbb8: 80c6b03a or r3,r16,r3
- 4cbbc: a805883a mov r2,r21
- 4cbc0: dfc00f17 ldw ra,60(sp)
- 4cbc4: df000e17 ldw fp,56(sp)
- 4cbc8: ddc00d17 ldw r23,52(sp)
- 4cbcc: dd800c17 ldw r22,48(sp)
- 4cbd0: dd400b17 ldw r21,44(sp)
- 4cbd4: dd000a17 ldw r20,40(sp)
- 4cbd8: dcc00917 ldw r19,36(sp)
- 4cbdc: dc800817 ldw r18,32(sp)
- 4cbe0: dc400717 ldw r17,28(sp)
- 4cbe4: dc000617 ldw r16,24(sp)
- 4cbe8: dec01004 addi sp,sp,64
- 4cbec: f800283a ret
- 4cbf0: 2404b03a or r2,r4,r16
- 4cbf4: 2023883a mov r17,r4
- 4cbf8: 10003f26 beq r2,zero,4ccf8 <__divdf3+0x2d8>
- 4cbfc: 80015e26 beq r16,zero,4d178 <__divdf3+0x758>
- 4cc00: 8009883a mov r4,r16
- 4cc04: d9800215 stw r6,8(sp)
- 4cc08: d9c00515 stw r7,20(sp)
- 4cc0c: da000415 stw r8,16(sp)
- 4cc10: 0041efc0 call 41efc <__clzsi2>
- 4cc14: d9800217 ldw r6,8(sp)
- 4cc18: d9c00517 ldw r7,20(sp)
- 4cc1c: da000417 ldw r8,16(sp)
- 4cc20: 113ffd44 addi r4,r2,-11
- 4cc24: 00c00704 movi r3,28
- 4cc28: 19014f16 blt r3,r4,4d168 <__divdf3+0x748>
- 4cc2c: 00c00744 movi r3,29
- 4cc30: 157ffe04 addi r21,r2,-8
- 4cc34: 1907c83a sub r3,r3,r4
- 4cc38: 8560983a sll r16,r16,r21
- 4cc3c: 88c6d83a srl r3,r17,r3
- 4cc40: 8d6a983a sll r21,r17,r21
- 4cc44: 1c20b03a or r16,r3,r16
- 4cc48: 1080fcc4 addi r2,r2,1011
- 4cc4c: 00a5c83a sub r18,zero,r2
- 4cc50: 0013883a mov r9,zero
- 4cc54: 000b883a mov r5,zero
- 4cc58: 003f8f06 br 4ca98 <__alt_data_end+0xfffdaa98>
- 4cc5c: 3444b03a or r2,r6,r17
- 4cc60: 1000231e bne r2,zero,4ccf0 <__divdf3+0x2d0>
- 4cc64: 0023883a mov r17,zero
- 4cc68: 0029883a mov r20,zero
- 4cc6c: 01c00084 movi r7,2
- 4cc70: 003f9b06 br 4cae0 <__alt_data_end+0xfffdaae0>
- 4cc74: 3444b03a or r2,r6,r17
- 4cc78: 10001926 beq r2,zero,4cce0 <__divdf3+0x2c0>
- 4cc7c: 88014b26 beq r17,zero,4d1ac <__divdf3+0x78c>
- 4cc80: 8809883a mov r4,r17
- 4cc84: d9400115 stw r5,4(sp)
- 4cc88: d9800215 stw r6,8(sp)
- 4cc8c: da000415 stw r8,16(sp)
- 4cc90: da400315 stw r9,12(sp)
- 4cc94: 0041efc0 call 41efc <__clzsi2>
- 4cc98: d9400117 ldw r5,4(sp)
- 4cc9c: d9800217 ldw r6,8(sp)
- 4cca0: da000417 ldw r8,16(sp)
- 4cca4: da400317 ldw r9,12(sp)
- 4cca8: 113ffd44 addi r4,r2,-11
- 4ccac: 00c00704 movi r3,28
- 4ccb0: 19013a16 blt r3,r4,4d19c <__divdf3+0x77c>
- 4ccb4: 00c00744 movi r3,29
- 4ccb8: 153ffe04 addi r20,r2,-8
- 4ccbc: 1907c83a sub r3,r3,r4
- 4ccc0: 8d22983a sll r17,r17,r20
- 4ccc4: 30c6d83a srl r3,r6,r3
- 4ccc8: 3528983a sll r20,r6,r20
- 4cccc: 1c62b03a or r17,r3,r17
- 4ccd0: 1080fcc4 addi r2,r2,1011
- 4ccd4: 0087c83a sub r3,zero,r2
- 4ccd8: 000f883a mov r7,zero
- 4ccdc: 003f8006 br 4cae0 <__alt_data_end+0xfffdaae0>
- 4cce0: 0023883a mov r17,zero
- 4cce4: 0029883a mov r20,zero
- 4cce8: 01c00044 movi r7,1
- 4ccec: 003f7c06 br 4cae0 <__alt_data_end+0xfffdaae0>
- 4ccf0: 01c000c4 movi r7,3
- 4ccf4: 003f7a06 br 4cae0 <__alt_data_end+0xfffdaae0>
- 4ccf8: 02400104 movi r9,4
- 4ccfc: 0021883a mov r16,zero
- 4cd00: 002b883a mov r21,zero
- 4cd04: 01400044 movi r5,1
- 4cd08: 003f6306 br 4ca98 <__alt_data_end+0xfffdaa98>
- 4cd0c: 02400304 movi r9,12
- 4cd10: 014000c4 movi r5,3
- 4cd14: 003f6006 br 4ca98 <__alt_data_end+0xfffdaa98>
- 4cd18: 04000434 movhi r16,16
- 4cd1c: 0009883a mov r4,zero
- 4cd20: 843fffc4 addi r16,r16,-1
- 4cd24: 057fffc4 movi r21,-1
- 4cd28: 0081ffc4 movi r2,2047
- 4cd2c: 003f9b06 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4cd30: 00c00044 movi r3,1
- 4cd34: 1887c83a sub r3,r3,r2
- 4cd38: 01000e04 movi r4,56
- 4cd3c: 20c1530e bge r4,r3,4d28c <__divdf3+0x86c>
- 4cd40: 9900004c andi r4,r19,1
- 4cd44: 0005883a mov r2,zero
- 4cd48: 0021883a mov r16,zero
- 4cd4c: 002b883a mov r21,zero
- 4cd50: 003f9206 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4cd54: 8c012e36 bltu r17,r16,4d210 <__divdf3+0x7f0>
- 4cd58: 84412c26 beq r16,r17,4d20c <__divdf3+0x7ec>
- 4cd5c: a82f883a mov r23,r21
- 4cd60: 18ffffc4 addi r3,r3,-1
- 4cd64: 002b883a mov r21,zero
- 4cd68: a004d63a srli r2,r20,24
- 4cd6c: 8822923a slli r17,r17,8
- 4cd70: a028923a slli r20,r20,8
- 4cd74: 8009883a mov r4,r16
- 4cd78: 88acb03a or r22,r17,r2
- 4cd7c: dd000015 stw r20,0(sp)
- 4cd80: b028d43a srli r20,r22,16
- 4cd84: d8c00215 stw r3,8(sp)
- 4cd88: b4bfffcc andi r18,r22,65535
- 4cd8c: a00b883a mov r5,r20
- 4cd90: 004c93c0 call 4c93c <__udivsi3>
- 4cd94: 100b883a mov r5,r2
- 4cd98: 9009883a mov r4,r18
- 4cd9c: 1023883a mov r17,r2
- 4cda0: 004c9f80 call 4c9f8 <__mulsi3>
- 4cda4: 8009883a mov r4,r16
- 4cda8: a00b883a mov r5,r20
- 4cdac: 1039883a mov fp,r2
- 4cdb0: 004c9a00 call 4c9a0 <__umodsi3>
- 4cdb4: 1004943a slli r2,r2,16
- 4cdb8: b808d43a srli r4,r23,16
- 4cdbc: d8c00217 ldw r3,8(sp)
- 4cdc0: 2084b03a or r2,r4,r2
- 4cdc4: 1700062e bgeu r2,fp,4cde0 <__divdf3+0x3c0>
- 4cdc8: 1585883a add r2,r2,r22
- 4cdcc: 893fffc4 addi r4,r17,-1
- 4cdd0: 15811d36 bltu r2,r22,4d248 <__divdf3+0x828>
- 4cdd4: 17011c2e bgeu r2,fp,4d248 <__divdf3+0x828>
- 4cdd8: 8c7fff84 addi r17,r17,-2
- 4cddc: 1585883a add r2,r2,r22
- 4cde0: 1739c83a sub fp,r2,fp
- 4cde4: a00b883a mov r5,r20
- 4cde8: e009883a mov r4,fp
- 4cdec: d8c00215 stw r3,8(sp)
- 4cdf0: 004c93c0 call 4c93c <__udivsi3>
- 4cdf4: 100b883a mov r5,r2
- 4cdf8: 9009883a mov r4,r18
- 4cdfc: 1021883a mov r16,r2
- 4ce00: 004c9f80 call 4c9f8 <__mulsi3>
- 4ce04: a00b883a mov r5,r20
- 4ce08: e009883a mov r4,fp
- 4ce0c: d8800415 stw r2,16(sp)
- 4ce10: 004c9a00 call 4c9a0 <__umodsi3>
- 4ce14: 1004943a slli r2,r2,16
- 4ce18: da000417 ldw r8,16(sp)
- 4ce1c: bdffffcc andi r23,r23,65535
- 4ce20: b884b03a or r2,r23,r2
- 4ce24: d8c00217 ldw r3,8(sp)
- 4ce28: 1200062e bgeu r2,r8,4ce44 <__divdf3+0x424>
- 4ce2c: 1585883a add r2,r2,r22
- 4ce30: 813fffc4 addi r4,r16,-1
- 4ce34: 15810236 bltu r2,r22,4d240 <__divdf3+0x820>
- 4ce38: 1201012e bgeu r2,r8,4d240 <__divdf3+0x820>
- 4ce3c: 843fff84 addi r16,r16,-2
- 4ce40: 1585883a add r2,r2,r22
- 4ce44: 8822943a slli r17,r17,16
- 4ce48: d9800017 ldw r6,0(sp)
- 4ce4c: 1211c83a sub r8,r2,r8
- 4ce50: 8c22b03a or r17,r17,r16
- 4ce54: 373fffcc andi fp,r6,65535
- 4ce58: 8abfffcc andi r10,r17,65535
- 4ce5c: 8820d43a srli r16,r17,16
- 4ce60: 5009883a mov r4,r10
- 4ce64: e00b883a mov r5,fp
- 4ce68: 302ed43a srli r23,r6,16
- 4ce6c: d8c00215 stw r3,8(sp)
- 4ce70: da000415 stw r8,16(sp)
- 4ce74: da800115 stw r10,4(sp)
- 4ce78: 004c9f80 call 4c9f8 <__mulsi3>
- 4ce7c: 800b883a mov r5,r16
- 4ce80: e009883a mov r4,fp
- 4ce84: d8800515 stw r2,20(sp)
- 4ce88: 004c9f80 call 4c9f8 <__mulsi3>
- 4ce8c: 8009883a mov r4,r16
- 4ce90: b80b883a mov r5,r23
- 4ce94: d8800315 stw r2,12(sp)
- 4ce98: 004c9f80 call 4c9f8 <__mulsi3>
- 4ce9c: da800117 ldw r10,4(sp)
- 4cea0: b80b883a mov r5,r23
- 4cea4: 1021883a mov r16,r2
- 4cea8: 5009883a mov r4,r10
- 4ceac: 004c9f80 call 4c9f8 <__mulsi3>
- 4ceb0: d9c00517 ldw r7,20(sp)
- 4ceb4: da400317 ldw r9,12(sp)
- 4ceb8: d8c00217 ldw r3,8(sp)
- 4cebc: 3808d43a srli r4,r7,16
- 4cec0: 1245883a add r2,r2,r9
- 4cec4: da000417 ldw r8,16(sp)
- 4cec8: 2085883a add r2,r4,r2
- 4cecc: 1240022e bgeu r2,r9,4ced8 <__divdf3+0x4b8>
- 4ced0: 01000074 movhi r4,1
- 4ced4: 8121883a add r16,r16,r4
- 4ced8: 1008d43a srli r4,r2,16
- 4cedc: 1004943a slli r2,r2,16
- 4cee0: 39ffffcc andi r7,r7,65535
- 4cee4: 2409883a add r4,r4,r16
- 4cee8: 11c5883a add r2,r2,r7
- 4ceec: 4100bb36 bltu r8,r4,4d1dc <__divdf3+0x7bc>
- 4cef0: 4100d726 beq r8,r4,4d250 <__divdf3+0x830>
- 4cef4: 4109c83a sub r4,r8,r4
- 4cef8: a8a1c83a sub r16,r21,r2
- 4cefc: ac2b803a cmpltu r21,r21,r16
- 4cf00: 256bc83a sub r21,r4,r21
- 4cf04: b540d926 beq r22,r21,4d26c <__divdf3+0x84c>
- 4cf08: a00b883a mov r5,r20
- 4cf0c: a809883a mov r4,r21
- 4cf10: d8c00215 stw r3,8(sp)
- 4cf14: 004c93c0 call 4c93c <__udivsi3>
- 4cf18: 100b883a mov r5,r2
- 4cf1c: 9009883a mov r4,r18
- 4cf20: d8800515 stw r2,20(sp)
- 4cf24: 004c9f80 call 4c9f8 <__mulsi3>
- 4cf28: a809883a mov r4,r21
- 4cf2c: a00b883a mov r5,r20
- 4cf30: d8800415 stw r2,16(sp)
- 4cf34: 004c9a00 call 4c9a0 <__umodsi3>
- 4cf38: 1004943a slli r2,r2,16
- 4cf3c: 8008d43a srli r4,r16,16
- 4cf40: da000417 ldw r8,16(sp)
- 4cf44: d8c00217 ldw r3,8(sp)
- 4cf48: 2084b03a or r2,r4,r2
- 4cf4c: d9c00517 ldw r7,20(sp)
- 4cf50: 1200062e bgeu r2,r8,4cf6c <__divdf3+0x54c>
- 4cf54: 1585883a add r2,r2,r22
- 4cf58: 393fffc4 addi r4,r7,-1
- 4cf5c: 1580c536 bltu r2,r22,4d274 <__divdf3+0x854>
- 4cf60: 1200c42e bgeu r2,r8,4d274 <__divdf3+0x854>
- 4cf64: 39ffff84 addi r7,r7,-2
- 4cf68: 1585883a add r2,r2,r22
- 4cf6c: 122bc83a sub r21,r2,r8
- 4cf70: a00b883a mov r5,r20
- 4cf74: a809883a mov r4,r21
- 4cf78: d8c00215 stw r3,8(sp)
- 4cf7c: d9c00515 stw r7,20(sp)
- 4cf80: 004c93c0 call 4c93c <__udivsi3>
- 4cf84: 9009883a mov r4,r18
- 4cf88: 100b883a mov r5,r2
- 4cf8c: d8800415 stw r2,16(sp)
- 4cf90: 004c9f80 call 4c9f8 <__mulsi3>
- 4cf94: a809883a mov r4,r21
- 4cf98: a00b883a mov r5,r20
- 4cf9c: 1025883a mov r18,r2
- 4cfa0: 004c9a00 call 4c9a0 <__umodsi3>
- 4cfa4: 1004943a slli r2,r2,16
- 4cfa8: 813fffcc andi r4,r16,65535
- 4cfac: d8c00217 ldw r3,8(sp)
- 4cfb0: 20a0b03a or r16,r4,r2
- 4cfb4: d9c00517 ldw r7,20(sp)
- 4cfb8: da000417 ldw r8,16(sp)
- 4cfbc: 8480062e bgeu r16,r18,4cfd8 <__divdf3+0x5b8>
- 4cfc0: 85a1883a add r16,r16,r22
- 4cfc4: 40bfffc4 addi r2,r8,-1
- 4cfc8: 8580ac36 bltu r16,r22,4d27c <__divdf3+0x85c>
- 4cfcc: 8480ab2e bgeu r16,r18,4d27c <__divdf3+0x85c>
- 4cfd0: 423fff84 addi r8,r8,-2
- 4cfd4: 85a1883a add r16,r16,r22
- 4cfd8: 3804943a slli r2,r7,16
- 4cfdc: 84a1c83a sub r16,r16,r18
- 4cfe0: e009883a mov r4,fp
- 4cfe4: 1228b03a or r20,r2,r8
- 4cfe8: a1ffffcc andi r7,r20,65535
- 4cfec: a024d43a srli r18,r20,16
- 4cff0: 380b883a mov r5,r7
- 4cff4: d8c00215 stw r3,8(sp)
- 4cff8: d9c00515 stw r7,20(sp)
- 4cffc: 004c9f80 call 4c9f8 <__mulsi3>
- 4d000: 900b883a mov r5,r18
- 4d004: e009883a mov r4,fp
- 4d008: 102b883a mov r21,r2
- 4d00c: 004c9f80 call 4c9f8 <__mulsi3>
- 4d010: 900b883a mov r5,r18
- 4d014: b809883a mov r4,r23
- 4d018: 1039883a mov fp,r2
- 4d01c: 004c9f80 call 4c9f8 <__mulsi3>
- 4d020: d9c00517 ldw r7,20(sp)
- 4d024: b80b883a mov r5,r23
- 4d028: 1025883a mov r18,r2
- 4d02c: 3809883a mov r4,r7
- 4d030: 004c9f80 call 4c9f8 <__mulsi3>
- 4d034: a808d43a srli r4,r21,16
- 4d038: 1705883a add r2,r2,fp
- 4d03c: d8c00217 ldw r3,8(sp)
- 4d040: 2085883a add r2,r4,r2
- 4d044: 1700022e bgeu r2,fp,4d050 <__divdf3+0x630>
- 4d048: 01000074 movhi r4,1
- 4d04c: 9125883a add r18,r18,r4
- 4d050: 1008d43a srli r4,r2,16
- 4d054: 1004943a slli r2,r2,16
- 4d058: ad7fffcc andi r21,r21,65535
- 4d05c: 2489883a add r4,r4,r18
- 4d060: 1545883a add r2,r2,r21
- 4d064: 81003836 bltu r16,r4,4d148 <__divdf3+0x728>
- 4d068: 81003626 beq r16,r4,4d144 <__divdf3+0x724>
- 4d06c: a5000054 ori r20,r20,1
- 4d070: 1880ffc4 addi r2,r3,1023
- 4d074: 00bf2e0e bge zero,r2,4cd30 <__alt_data_end+0xfffdad30>
- 4d078: a10001cc andi r4,r20,7
- 4d07c: 20000726 beq r4,zero,4d09c <__divdf3+0x67c>
- 4d080: a10003cc andi r4,r20,15
- 4d084: 01400104 movi r5,4
- 4d088: 21400426 beq r4,r5,4d09c <__divdf3+0x67c>
- 4d08c: a149883a add r4,r20,r5
- 4d090: 2529803a cmpltu r20,r4,r20
- 4d094: 8d23883a add r17,r17,r20
- 4d098: 2029883a mov r20,r4
- 4d09c: 8900402c andhi r4,r17,256
- 4d0a0: 20000426 beq r4,zero,4d0b4 <__divdf3+0x694>
- 4d0a4: 18810004 addi r2,r3,1024
- 4d0a8: 00ffc034 movhi r3,65280
- 4d0ac: 18ffffc4 addi r3,r3,-1
- 4d0b0: 88e2703a and r17,r17,r3
- 4d0b4: 00c1ff84 movi r3,2046
- 4d0b8: 18beb416 blt r3,r2,4cb8c <__alt_data_end+0xfffdab8c>
- 4d0bc: a028d0fa srli r20,r20,3
- 4d0c0: 882a977a slli r21,r17,29
- 4d0c4: 8820927a slli r16,r17,9
- 4d0c8: 1081ffcc andi r2,r2,2047
- 4d0cc: ad2ab03a or r21,r21,r20
- 4d0d0: 8020d33a srli r16,r16,12
- 4d0d4: 9900004c andi r4,r19,1
- 4d0d8: 003eb006 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4d0dc: 8080022c andhi r2,r16,8
- 4d0e0: 10001226 beq r2,zero,4d12c <__divdf3+0x70c>
- 4d0e4: 8880022c andhi r2,r17,8
- 4d0e8: 1000101e bne r2,zero,4d12c <__divdf3+0x70c>
- 4d0ec: 00800434 movhi r2,16
- 4d0f0: 8c000234 orhi r16,r17,8
- 4d0f4: 10bfffc4 addi r2,r2,-1
- 4d0f8: b809883a mov r4,r23
- 4d0fc: 80a0703a and r16,r16,r2
- 4d100: a02b883a mov r21,r20
- 4d104: 003f0806 br 4cd28 <__alt_data_end+0xfffdad28>
- 4d108: 008000c4 movi r2,3
- 4d10c: 3880b126 beq r7,r2,4d3d4 <__divdf3+0x9b4>
- 4d110: 00800044 movi r2,1
- 4d114: 38805b1e bne r7,r2,4d284 <__divdf3+0x864>
- 4d118: e009883a mov r4,fp
- 4d11c: 0005883a mov r2,zero
- 4d120: 0021883a mov r16,zero
- 4d124: 002b883a mov r21,zero
- 4d128: 003e9c06 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4d12c: 00800434 movhi r2,16
- 4d130: 84000234 orhi r16,r16,8
- 4d134: 10bfffc4 addi r2,r2,-1
- 4d138: b009883a mov r4,r22
- 4d13c: 80a0703a and r16,r16,r2
- 4d140: 003ef906 br 4cd28 <__alt_data_end+0xfffdad28>
- 4d144: 103fca26 beq r2,zero,4d070 <__alt_data_end+0xfffdb070>
- 4d148: b421883a add r16,r22,r16
- 4d14c: a17fffc4 addi r5,r20,-1
- 4d150: 8580422e bgeu r16,r22,4d25c <__divdf3+0x83c>
- 4d154: 2829883a mov r20,r5
- 4d158: 813fc41e bne r16,r4,4d06c <__alt_data_end+0xfffdb06c>
- 4d15c: d9800017 ldw r6,0(sp)
- 4d160: 30bfc21e bne r6,r2,4d06c <__alt_data_end+0xfffdb06c>
- 4d164: 003fc206 br 4d070 <__alt_data_end+0xfffdb070>
- 4d168: 143ff604 addi r16,r2,-40
- 4d16c: 8c20983a sll r16,r17,r16
- 4d170: 002b883a mov r21,zero
- 4d174: 003eb406 br 4cc48 <__alt_data_end+0xfffdac48>
- 4d178: d9800215 stw r6,8(sp)
- 4d17c: d9c00515 stw r7,20(sp)
- 4d180: da000415 stw r8,16(sp)
- 4d184: 0041efc0 call 41efc <__clzsi2>
- 4d188: 10800804 addi r2,r2,32
- 4d18c: da000417 ldw r8,16(sp)
- 4d190: d9c00517 ldw r7,20(sp)
- 4d194: d9800217 ldw r6,8(sp)
- 4d198: 003ea106 br 4cc20 <__alt_data_end+0xfffdac20>
- 4d19c: 147ff604 addi r17,r2,-40
- 4d1a0: 3462983a sll r17,r6,r17
- 4d1a4: 0029883a mov r20,zero
- 4d1a8: 003ec906 br 4ccd0 <__alt_data_end+0xfffdacd0>
- 4d1ac: 3009883a mov r4,r6
- 4d1b0: d9400115 stw r5,4(sp)
- 4d1b4: d9800215 stw r6,8(sp)
- 4d1b8: da000415 stw r8,16(sp)
- 4d1bc: da400315 stw r9,12(sp)
- 4d1c0: 0041efc0 call 41efc <__clzsi2>
- 4d1c4: 10800804 addi r2,r2,32
- 4d1c8: da400317 ldw r9,12(sp)
- 4d1cc: da000417 ldw r8,16(sp)
- 4d1d0: d9800217 ldw r6,8(sp)
- 4d1d4: d9400117 ldw r5,4(sp)
- 4d1d8: 003eb306 br 4cca8 <__alt_data_end+0xfffdaca8>
- 4d1dc: d9800017 ldw r6,0(sp)
- 4d1e0: a9ab883a add r21,r21,r6
- 4d1e4: a98b803a cmpltu r5,r21,r6
- 4d1e8: 2d8b883a add r5,r5,r22
- 4d1ec: 2a11883a add r8,r5,r8
- 4d1f0: 897fffc4 addi r5,r17,-1
- 4d1f4: b2000c2e bgeu r22,r8,4d228 <__divdf3+0x808>
- 4d1f8: 41003f36 bltu r8,r4,4d2f8 <__divdf3+0x8d8>
- 4d1fc: 22006c26 beq r4,r8,4d3b0 <__divdf3+0x990>
- 4d200: 4109c83a sub r4,r8,r4
- 4d204: 2823883a mov r17,r5
- 4d208: 003f3b06 br 4cef8 <__alt_data_end+0xfffdaef8>
- 4d20c: ad3ed336 bltu r21,r20,4cd5c <__alt_data_end+0xfffdad5c>
- 4d210: a804d07a srli r2,r21,1
- 4d214: 802e97fa slli r23,r16,31
- 4d218: a82a97fa slli r21,r21,31
- 4d21c: 8020d07a srli r16,r16,1
- 4d220: b8aeb03a or r23,r23,r2
- 4d224: 003ed006 br 4cd68 <__alt_data_end+0xfffdad68>
- 4d228: b23ff51e bne r22,r8,4d200 <__alt_data_end+0xfffdb200>
- 4d22c: d9800017 ldw r6,0(sp)
- 4d230: a9bff12e bgeu r21,r6,4d1f8 <__alt_data_end+0xfffdb1f8>
- 4d234: b109c83a sub r4,r22,r4
- 4d238: 2823883a mov r17,r5
- 4d23c: 003f2e06 br 4cef8 <__alt_data_end+0xfffdaef8>
- 4d240: 2021883a mov r16,r4
- 4d244: 003eff06 br 4ce44 <__alt_data_end+0xfffdae44>
- 4d248: 2023883a mov r17,r4
- 4d24c: 003ee406 br 4cde0 <__alt_data_end+0xfffdade0>
- 4d250: a8bfe236 bltu r21,r2,4d1dc <__alt_data_end+0xfffdb1dc>
- 4d254: 0009883a mov r4,zero
- 4d258: 003f2706 br 4cef8 <__alt_data_end+0xfffdaef8>
- 4d25c: 81002d36 bltu r16,r4,4d314 <__divdf3+0x8f4>
- 4d260: 24005626 beq r4,r16,4d3bc <__divdf3+0x99c>
- 4d264: 2829883a mov r20,r5
- 4d268: 003f8006 br 4d06c <__alt_data_end+0xfffdb06c>
- 4d26c: 053fffc4 movi r20,-1
- 4d270: 003f7f06 br 4d070 <__alt_data_end+0xfffdb070>
- 4d274: 200f883a mov r7,r4
- 4d278: 003f3c06 br 4cf6c <__alt_data_end+0xfffdaf6c>
- 4d27c: 1011883a mov r8,r2
- 4d280: 003f5506 br 4cfd8 <__alt_data_end+0xfffdafd8>
- 4d284: e027883a mov r19,fp
- 4d288: 003f7906 br 4d070 <__alt_data_end+0xfffdb070>
- 4d28c: 010007c4 movi r4,31
- 4d290: 20c02816 blt r4,r3,4d334 <__divdf3+0x914>
- 4d294: 00800804 movi r2,32
- 4d298: 10c5c83a sub r2,r2,r3
- 4d29c: 888a983a sll r5,r17,r2
- 4d2a0: a0c8d83a srl r4,r20,r3
- 4d2a4: a084983a sll r2,r20,r2
- 4d2a8: 88e2d83a srl r17,r17,r3
- 4d2ac: 2906b03a or r3,r5,r4
- 4d2b0: 1004c03a cmpne r2,r2,zero
- 4d2b4: 1886b03a or r3,r3,r2
- 4d2b8: 188001cc andi r2,r3,7
- 4d2bc: 10000726 beq r2,zero,4d2dc <__divdf3+0x8bc>
- 4d2c0: 188003cc andi r2,r3,15
- 4d2c4: 01000104 movi r4,4
- 4d2c8: 11000426 beq r2,r4,4d2dc <__divdf3+0x8bc>
- 4d2cc: 1805883a mov r2,r3
- 4d2d0: 10c00104 addi r3,r2,4
- 4d2d4: 1885803a cmpltu r2,r3,r2
- 4d2d8: 88a3883a add r17,r17,r2
- 4d2dc: 8880202c andhi r2,r17,128
- 4d2e0: 10002926 beq r2,zero,4d388 <__divdf3+0x968>
- 4d2e4: 9900004c andi r4,r19,1
- 4d2e8: 00800044 movi r2,1
- 4d2ec: 0021883a mov r16,zero
- 4d2f0: 002b883a mov r21,zero
- 4d2f4: 003e2906 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4d2f8: d9800017 ldw r6,0(sp)
- 4d2fc: 8c7fff84 addi r17,r17,-2
- 4d300: a9ab883a add r21,r21,r6
- 4d304: a98b803a cmpltu r5,r21,r6
- 4d308: 2d8b883a add r5,r5,r22
- 4d30c: 2a11883a add r8,r5,r8
- 4d310: 003ef806 br 4cef4 <__alt_data_end+0xfffdaef4>
- 4d314: d9800017 ldw r6,0(sp)
- 4d318: 318f883a add r7,r6,r6
- 4d31c: 398b803a cmpltu r5,r7,r6
- 4d320: 2d8d883a add r6,r5,r22
- 4d324: 81a1883a add r16,r16,r6
- 4d328: a17fff84 addi r5,r20,-2
- 4d32c: d9c00015 stw r7,0(sp)
- 4d330: 003f8806 br 4d154 <__alt_data_end+0xfffdb154>
- 4d334: 013ff844 movi r4,-31
- 4d338: 2085c83a sub r2,r4,r2
- 4d33c: 8888d83a srl r4,r17,r2
- 4d340: 00800804 movi r2,32
- 4d344: 18802126 beq r3,r2,4d3cc <__divdf3+0x9ac>
- 4d348: 04001004 movi r16,64
- 4d34c: 80c7c83a sub r3,r16,r3
- 4d350: 88e0983a sll r16,r17,r3
- 4d354: 8504b03a or r2,r16,r20
- 4d358: 1004c03a cmpne r2,r2,zero
- 4d35c: 2084b03a or r2,r4,r2
- 4d360: 144001cc andi r17,r2,7
- 4d364: 88000d1e bne r17,zero,4d39c <__divdf3+0x97c>
- 4d368: 0021883a mov r16,zero
- 4d36c: 102ad0fa srli r21,r2,3
- 4d370: 9900004c andi r4,r19,1
- 4d374: 0005883a mov r2,zero
- 4d378: ac6ab03a or r21,r21,r17
- 4d37c: 003e0706 br 4cb9c <__alt_data_end+0xfffdab9c>
- 4d380: 1007883a mov r3,r2
- 4d384: 0023883a mov r17,zero
- 4d388: 8820927a slli r16,r17,9
- 4d38c: 1805883a mov r2,r3
- 4d390: 8822977a slli r17,r17,29
- 4d394: 8020d33a srli r16,r16,12
- 4d398: 003ff406 br 4d36c <__alt_data_end+0xfffdb36c>
- 4d39c: 10c003cc andi r3,r2,15
- 4d3a0: 01000104 movi r4,4
- 4d3a4: 193ff626 beq r3,r4,4d380 <__alt_data_end+0xfffdb380>
- 4d3a8: 0023883a mov r17,zero
- 4d3ac: 003fc806 br 4d2d0 <__alt_data_end+0xfffdb2d0>
- 4d3b0: a8bfd136 bltu r21,r2,4d2f8 <__alt_data_end+0xfffdb2f8>
- 4d3b4: 2823883a mov r17,r5
- 4d3b8: 003fa606 br 4d254 <__alt_data_end+0xfffdb254>
- 4d3bc: d9800017 ldw r6,0(sp)
- 4d3c0: 30bfd436 bltu r6,r2,4d314 <__alt_data_end+0xfffdb314>
- 4d3c4: 2829883a mov r20,r5
- 4d3c8: 003f6406 br 4d15c <__alt_data_end+0xfffdb15c>
- 4d3cc: 0021883a mov r16,zero
- 4d3d0: 003fe006 br 4d354 <__alt_data_end+0xfffdb354>
- 4d3d4: 00800434 movhi r2,16
- 4d3d8: 8c000234 orhi r16,r17,8
- 4d3dc: 10bfffc4 addi r2,r2,-1
- 4d3e0: e009883a mov r4,fp
- 4d3e4: 80a0703a and r16,r16,r2
- 4d3e8: a02b883a mov r21,r20
- 4d3ec: 003e4e06 br 4cd28 <__alt_data_end+0xfffdad28>
- 0004d3f0 <__eqdf2>:
- 4d3f0: 2804d53a srli r2,r5,20
- 4d3f4: 3806d53a srli r3,r7,20
- 4d3f8: 02000434 movhi r8,16
- 4d3fc: 423fffc4 addi r8,r8,-1
- 4d400: 1081ffcc andi r2,r2,2047
- 4d404: 0281ffc4 movi r10,2047
- 4d408: 2a12703a and r9,r5,r8
- 4d40c: 18c1ffcc andi r3,r3,2047
- 4d410: 3a10703a and r8,r7,r8
- 4d414: 280ad7fa srli r5,r5,31
- 4d418: 380ed7fa srli r7,r7,31
- 4d41c: 12801026 beq r2,r10,4d460 <__eqdf2+0x70>
- 4d420: 0281ffc4 movi r10,2047
- 4d424: 1a800a26 beq r3,r10,4d450 <__eqdf2+0x60>
- 4d428: 10c00226 beq r2,r3,4d434 <__eqdf2+0x44>
- 4d42c: 00800044 movi r2,1
- 4d430: f800283a ret
- 4d434: 4a3ffd1e bne r9,r8,4d42c <__alt_data_end+0xfffdb42c>
- 4d438: 21bffc1e bne r4,r6,4d42c <__alt_data_end+0xfffdb42c>
- 4d43c: 29c00c26 beq r5,r7,4d470 <__eqdf2+0x80>
- 4d440: 103ffa1e bne r2,zero,4d42c <__alt_data_end+0xfffdb42c>
- 4d444: 2244b03a or r2,r4,r9
- 4d448: 1004c03a cmpne r2,r2,zero
- 4d44c: f800283a ret
- 4d450: 3214b03a or r10,r6,r8
- 4d454: 503ff426 beq r10,zero,4d428 <__alt_data_end+0xfffdb428>
- 4d458: 00800044 movi r2,1
- 4d45c: f800283a ret
- 4d460: 2254b03a or r10,r4,r9
- 4d464: 503fee26 beq r10,zero,4d420 <__alt_data_end+0xfffdb420>
- 4d468: 00800044 movi r2,1
- 4d46c: f800283a ret
- 4d470: 0005883a mov r2,zero
- 4d474: f800283a ret
- 0004d478 <__gedf2>:
- 4d478: 2804d53a srli r2,r5,20
- 4d47c: 3806d53a srli r3,r7,20
- 4d480: 02000434 movhi r8,16
- 4d484: 423fffc4 addi r8,r8,-1
- 4d488: 1081ffcc andi r2,r2,2047
- 4d48c: 0241ffc4 movi r9,2047
- 4d490: 2a14703a and r10,r5,r8
- 4d494: 18c1ffcc andi r3,r3,2047
- 4d498: 3a10703a and r8,r7,r8
- 4d49c: 280ad7fa srli r5,r5,31
- 4d4a0: 380ed7fa srli r7,r7,31
- 4d4a4: 12401d26 beq r2,r9,4d51c <__gedf2+0xa4>
- 4d4a8: 0241ffc4 movi r9,2047
- 4d4ac: 1a401226 beq r3,r9,4d4f8 <__gedf2+0x80>
- 4d4b0: 1000081e bne r2,zero,4d4d4 <__gedf2+0x5c>
- 4d4b4: 2296b03a or r11,r4,r10
- 4d4b8: 5813003a cmpeq r9,r11,zero
- 4d4bc: 1800091e bne r3,zero,4d4e4 <__gedf2+0x6c>
- 4d4c0: 3218b03a or r12,r6,r8
- 4d4c4: 6000071e bne r12,zero,4d4e4 <__gedf2+0x6c>
- 4d4c8: 0005883a mov r2,zero
- 4d4cc: 5800101e bne r11,zero,4d510 <__gedf2+0x98>
- 4d4d0: f800283a ret
- 4d4d4: 18000c1e bne r3,zero,4d508 <__gedf2+0x90>
- 4d4d8: 3212b03a or r9,r6,r8
- 4d4dc: 48000c26 beq r9,zero,4d510 <__gedf2+0x98>
- 4d4e0: 0013883a mov r9,zero
- 4d4e4: 39c03fcc andi r7,r7,255
- 4d4e8: 48000826 beq r9,zero,4d50c <__gedf2+0x94>
- 4d4ec: 38000926 beq r7,zero,4d514 <__gedf2+0x9c>
- 4d4f0: 00800044 movi r2,1
- 4d4f4: f800283a ret
- 4d4f8: 3212b03a or r9,r6,r8
- 4d4fc: 483fec26 beq r9,zero,4d4b0 <__alt_data_end+0xfffdb4b0>
- 4d500: 00bfff84 movi r2,-2
- 4d504: f800283a ret
- 4d508: 39c03fcc andi r7,r7,255
- 4d50c: 29c00626 beq r5,r7,4d528 <__gedf2+0xb0>
- 4d510: 283ff726 beq r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0>
- 4d514: 00bfffc4 movi r2,-1
- 4d518: f800283a ret
- 4d51c: 2292b03a or r9,r4,r10
- 4d520: 483fe126 beq r9,zero,4d4a8 <__alt_data_end+0xfffdb4a8>
- 4d524: 003ff606 br 4d500 <__alt_data_end+0xfffdb500>
- 4d528: 18bff916 blt r3,r2,4d510 <__alt_data_end+0xfffdb510>
- 4d52c: 10c00316 blt r2,r3,4d53c <__gedf2+0xc4>
- 4d530: 42bff736 bltu r8,r10,4d510 <__alt_data_end+0xfffdb510>
- 4d534: 52000326 beq r10,r8,4d544 <__gedf2+0xcc>
- 4d538: 5200042e bgeu r10,r8,4d54c <__gedf2+0xd4>
- 4d53c: 283fec1e bne r5,zero,4d4f0 <__alt_data_end+0xfffdb4f0>
- 4d540: 003ff406 br 4d514 <__alt_data_end+0xfffdb514>
- 4d544: 313ff236 bltu r6,r4,4d510 <__alt_data_end+0xfffdb510>
- 4d548: 21bffc36 bltu r4,r6,4d53c <__alt_data_end+0xfffdb53c>
- 4d54c: 0005883a mov r2,zero
- 4d550: f800283a ret
- 0004d554 <__ledf2>:
- 4d554: 2804d53a srli r2,r5,20
- 4d558: 3810d53a srli r8,r7,20
- 4d55c: 00c00434 movhi r3,16
- 4d560: 18ffffc4 addi r3,r3,-1
- 4d564: 1081ffcc andi r2,r2,2047
- 4d568: 0241ffc4 movi r9,2047
- 4d56c: 28d4703a and r10,r5,r3
- 4d570: 4201ffcc andi r8,r8,2047
- 4d574: 38c6703a and r3,r7,r3
- 4d578: 280ad7fa srli r5,r5,31
- 4d57c: 380ed7fa srli r7,r7,31
- 4d580: 12401f26 beq r2,r9,4d600 <__ledf2+0xac>
- 4d584: 0241ffc4 movi r9,2047
- 4d588: 42401426 beq r8,r9,4d5dc <__ledf2+0x88>
- 4d58c: 1000091e bne r2,zero,4d5b4 <__ledf2+0x60>
- 4d590: 2296b03a or r11,r4,r10
- 4d594: 5813003a cmpeq r9,r11,zero
- 4d598: 29403fcc andi r5,r5,255
- 4d59c: 40000a1e bne r8,zero,4d5c8 <__ledf2+0x74>
- 4d5a0: 30d8b03a or r12,r6,r3
- 4d5a4: 6000081e bne r12,zero,4d5c8 <__ledf2+0x74>
- 4d5a8: 0005883a mov r2,zero
- 4d5ac: 5800111e bne r11,zero,4d5f4 <__ledf2+0xa0>
- 4d5b0: f800283a ret
- 4d5b4: 29403fcc andi r5,r5,255
- 4d5b8: 40000c1e bne r8,zero,4d5ec <__ledf2+0x98>
- 4d5bc: 30d2b03a or r9,r6,r3
- 4d5c0: 48000c26 beq r9,zero,4d5f4 <__ledf2+0xa0>
- 4d5c4: 0013883a mov r9,zero
- 4d5c8: 39c03fcc andi r7,r7,255
- 4d5cc: 48000826 beq r9,zero,4d5f0 <__ledf2+0x9c>
- 4d5d0: 38001126 beq r7,zero,4d618 <__ledf2+0xc4>
- 4d5d4: 00800044 movi r2,1
- 4d5d8: f800283a ret
- 4d5dc: 30d2b03a or r9,r6,r3
- 4d5e0: 483fea26 beq r9,zero,4d58c <__alt_data_end+0xfffdb58c>
- 4d5e4: 00800084 movi r2,2
- 4d5e8: f800283a ret
- 4d5ec: 39c03fcc andi r7,r7,255
- 4d5f0: 39400726 beq r7,r5,4d610 <__ledf2+0xbc>
- 4d5f4: 2800081e bne r5,zero,4d618 <__ledf2+0xc4>
- 4d5f8: 00800044 movi r2,1
- 4d5fc: f800283a ret
- 4d600: 2292b03a or r9,r4,r10
- 4d604: 483fdf26 beq r9,zero,4d584 <__alt_data_end+0xfffdb584>
- 4d608: 00800084 movi r2,2
- 4d60c: f800283a ret
- 4d610: 4080030e bge r8,r2,4d620 <__ledf2+0xcc>
- 4d614: 383fef26 beq r7,zero,4d5d4 <__alt_data_end+0xfffdb5d4>
- 4d618: 00bfffc4 movi r2,-1
- 4d61c: f800283a ret
- 4d620: 123feb16 blt r2,r8,4d5d0 <__alt_data_end+0xfffdb5d0>
- 4d624: 1abff336 bltu r3,r10,4d5f4 <__alt_data_end+0xfffdb5f4>
- 4d628: 50c00326 beq r10,r3,4d638 <__ledf2+0xe4>
- 4d62c: 50c0042e bgeu r10,r3,4d640 <__ledf2+0xec>
- 4d630: 283fe81e bne r5,zero,4d5d4 <__alt_data_end+0xfffdb5d4>
- 4d634: 003ff806 br 4d618 <__alt_data_end+0xfffdb618>
- 4d638: 313fee36 bltu r6,r4,4d5f4 <__alt_data_end+0xfffdb5f4>
- 4d63c: 21bffc36 bltu r4,r6,4d630 <__alt_data_end+0xfffdb630>
- 4d640: 0005883a mov r2,zero
- 4d644: f800283a ret
- 0004d648 <__muldf3>:
- 4d648: deffee04 addi sp,sp,-72
- 4d64c: dd000c15 stw r20,48(sp)
- 4d650: 2828d53a srli r20,r5,20
- 4d654: ddc00f15 stw r23,60(sp)
- 4d658: 282ed7fa srli r23,r5,31
- 4d65c: dc000815 stw r16,32(sp)
- 4d660: 04000434 movhi r16,16
- 4d664: dcc00b15 stw r19,44(sp)
- 4d668: 843fffc4 addi r16,r16,-1
- 4d66c: dfc01115 stw ra,68(sp)
- 4d670: df001015 stw fp,64(sp)
- 4d674: dd800e15 stw r22,56(sp)
- 4d678: dd400d15 stw r21,52(sp)
- 4d67c: dc800a15 stw r18,40(sp)
- 4d680: dc400915 stw r17,36(sp)
- 4d684: a501ffcc andi r20,r20,2047
- 4d688: 2c20703a and r16,r5,r16
- 4d68c: b827883a mov r19,r23
- 4d690: ba403fcc andi r9,r23,255
- 4d694: a0006026 beq r20,zero,4d818 <__muldf3+0x1d0>
- 4d698: 0081ffc4 movi r2,2047
- 4d69c: 202d883a mov r22,r4
- 4d6a0: a0803626 beq r20,r2,4d77c <__muldf3+0x134>
- 4d6a4: 84000434 orhi r16,r16,16
- 4d6a8: 200ad77a srli r5,r4,29
- 4d6ac: 800490fa slli r2,r16,3
- 4d6b0: 202c90fa slli r22,r4,3
- 4d6b4: a53f0044 addi r20,r20,-1023
- 4d6b8: 28a0b03a or r16,r5,r2
- 4d6bc: 002b883a mov r21,zero
- 4d6c0: 000b883a mov r5,zero
- 4d6c4: 3804d53a srli r2,r7,20
- 4d6c8: 3838d7fa srli fp,r7,31
- 4d6cc: 04400434 movhi r17,16
- 4d6d0: 8c7fffc4 addi r17,r17,-1
- 4d6d4: 1081ffcc andi r2,r2,2047
- 4d6d8: 3025883a mov r18,r6
- 4d6dc: 3c62703a and r17,r7,r17
- 4d6e0: e2803fcc andi r10,fp,255
- 4d6e4: 10006d26 beq r2,zero,4d89c <__muldf3+0x254>
- 4d6e8: 00c1ffc4 movi r3,2047
- 4d6ec: 10c06526 beq r2,r3,4d884 <__muldf3+0x23c>
- 4d6f0: 8c400434 orhi r17,r17,16
- 4d6f4: 300ed77a srli r7,r6,29
- 4d6f8: 880690fa slli r3,r17,3
- 4d6fc: 302490fa slli r18,r6,3
- 4d700: 10bf0044 addi r2,r2,-1023
- 4d704: 38e2b03a or r17,r7,r3
- 4d708: 000f883a mov r7,zero
- 4d70c: a087883a add r3,r20,r2
- 4d710: 010003c4 movi r4,15
- 4d714: 3d44b03a or r2,r7,r21
- 4d718: e5ccf03a xor r6,fp,r23
- 4d71c: 1a000044 addi r8,r3,1
- 4d720: 20809b36 bltu r4,r2,4d990 <__muldf3+0x348>
- 4d724: 100490ba slli r2,r2,2
- 4d728: 01000174 movhi r4,5
- 4d72c: 2135cf04 addi r4,r4,-10436
- 4d730: 1105883a add r2,r2,r4
- 4d734: 10800017 ldw r2,0(r2)
- 4d738: 1000683a jmp r2
- 4d73c: 0004d990 cmplti zero,zero,4966
- 4d740: 0004d79c xori zero,zero,4958
- 4d744: 0004d79c xori zero,zero,4958
- 4d748: 0004d798 cmpnei zero,zero,4958
- 4d74c: 0004d96c andhi zero,zero,4965
- 4d750: 0004d96c andhi zero,zero,4965
- 4d754: 0004d954 movui zero,4965
- 4d758: 0004d798 cmpnei zero,zero,4958
- 4d75c: 0004d96c andhi zero,zero,4965
- 4d760: 0004d954 movui zero,4965
- 4d764: 0004d96c andhi zero,zero,4965
- 4d768: 0004d798 cmpnei zero,zero,4958
- 4d76c: 0004d97c xorhi zero,zero,4965
- 4d770: 0004d97c xorhi zero,zero,4965
- 4d774: 0004d97c xorhi zero,zero,4965
- 4d778: 0004dcdc xori zero,zero,4979
- 4d77c: 2404b03a or r2,r4,r16
- 4d780: 1000711e bne r2,zero,4d948 <__muldf3+0x300>
- 4d784: 05400204 movi r21,8
- 4d788: 0021883a mov r16,zero
- 4d78c: 002d883a mov r22,zero
- 4d790: 01400084 movi r5,2
- 4d794: 003fcb06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
- 4d798: 500d883a mov r6,r10
- 4d79c: 00800084 movi r2,2
- 4d7a0: 38805926 beq r7,r2,4d908 <__muldf3+0x2c0>
- 4d7a4: 008000c4 movi r2,3
- 4d7a8: 3881bb26 beq r7,r2,4de98 <__muldf3+0x850>
- 4d7ac: 00800044 movi r2,1
- 4d7b0: 3881961e bne r7,r2,4de0c <__muldf3+0x7c4>
- 4d7b4: 3027883a mov r19,r6
- 4d7b8: 0005883a mov r2,zero
- 4d7bc: 0021883a mov r16,zero
- 4d7c0: 002d883a mov r22,zero
- 4d7c4: 1004953a slli r2,r2,20
- 4d7c8: 98c03fcc andi r3,r19,255
- 4d7cc: 04400434 movhi r17,16
- 4d7d0: 8c7fffc4 addi r17,r17,-1
- 4d7d4: 180697fa slli r3,r3,31
- 4d7d8: 8460703a and r16,r16,r17
- 4d7dc: 80a0b03a or r16,r16,r2
- 4d7e0: 80c6b03a or r3,r16,r3
- 4d7e4: b005883a mov r2,r22
- 4d7e8: dfc01117 ldw ra,68(sp)
- 4d7ec: df001017 ldw fp,64(sp)
- 4d7f0: ddc00f17 ldw r23,60(sp)
- 4d7f4: dd800e17 ldw r22,56(sp)
- 4d7f8: dd400d17 ldw r21,52(sp)
- 4d7fc: dd000c17 ldw r20,48(sp)
- 4d800: dcc00b17 ldw r19,44(sp)
- 4d804: dc800a17 ldw r18,40(sp)
- 4d808: dc400917 ldw r17,36(sp)
- 4d80c: dc000817 ldw r16,32(sp)
- 4d810: dec01204 addi sp,sp,72
- 4d814: f800283a ret
- 4d818: 2404b03a or r2,r4,r16
- 4d81c: 202b883a mov r21,r4
- 4d820: 10004426 beq r2,zero,4d934 <__muldf3+0x2ec>
- 4d824: 80015126 beq r16,zero,4dd6c <__muldf3+0x724>
- 4d828: 8009883a mov r4,r16
- 4d82c: d9800715 stw r6,28(sp)
- 4d830: d9c00215 stw r7,8(sp)
- 4d834: da400415 stw r9,16(sp)
- 4d838: 0041efc0 call 41efc <__clzsi2>
- 4d83c: d9800717 ldw r6,28(sp)
- 4d840: d9c00217 ldw r7,8(sp)
- 4d844: da400417 ldw r9,16(sp)
- 4d848: 113ffd44 addi r4,r2,-11
- 4d84c: 00c00704 movi r3,28
- 4d850: 19014216 blt r3,r4,4dd5c <__muldf3+0x714>
- 4d854: 00c00744 movi r3,29
- 4d858: 15bffe04 addi r22,r2,-8
- 4d85c: 1907c83a sub r3,r3,r4
- 4d860: 85a0983a sll r16,r16,r22
- 4d864: a8c6d83a srl r3,r21,r3
- 4d868: adac983a sll r22,r21,r22
- 4d86c: 1c20b03a or r16,r3,r16
- 4d870: 1080fcc4 addi r2,r2,1011
- 4d874: 00a9c83a sub r20,zero,r2
- 4d878: 002b883a mov r21,zero
- 4d87c: 000b883a mov r5,zero
- 4d880: 003f9006 br 4d6c4 <__alt_data_end+0xfffdb6c4>
- 4d884: 3446b03a or r3,r6,r17
- 4d888: 1800281e bne r3,zero,4d92c <__muldf3+0x2e4>
- 4d88c: 0023883a mov r17,zero
- 4d890: 0025883a mov r18,zero
- 4d894: 01c00084 movi r7,2
- 4d898: 003f9c06 br 4d70c <__alt_data_end+0xfffdb70c>
- 4d89c: 3446b03a or r3,r6,r17
- 4d8a0: 18001e26 beq r3,zero,4d91c <__muldf3+0x2d4>
- 4d8a4: 88012126 beq r17,zero,4dd2c <__muldf3+0x6e4>
- 4d8a8: 8809883a mov r4,r17
- 4d8ac: d9400215 stw r5,8(sp)
- 4d8b0: d9800715 stw r6,28(sp)
- 4d8b4: da400415 stw r9,16(sp)
- 4d8b8: da800315 stw r10,12(sp)
- 4d8bc: 0041efc0 call 41efc <__clzsi2>
- 4d8c0: d9400217 ldw r5,8(sp)
- 4d8c4: d9800717 ldw r6,28(sp)
- 4d8c8: da400417 ldw r9,16(sp)
- 4d8cc: da800317 ldw r10,12(sp)
- 4d8d0: 113ffd44 addi r4,r2,-11
- 4d8d4: 00c00704 movi r3,28
- 4d8d8: 19011016 blt r3,r4,4dd1c <__muldf3+0x6d4>
- 4d8dc: 00c00744 movi r3,29
- 4d8e0: 14bffe04 addi r18,r2,-8
- 4d8e4: 1907c83a sub r3,r3,r4
- 4d8e8: 8ca2983a sll r17,r17,r18
- 4d8ec: 30c6d83a srl r3,r6,r3
- 4d8f0: 34a4983a sll r18,r6,r18
- 4d8f4: 1c62b03a or r17,r3,r17
- 4d8f8: 1080fcc4 addi r2,r2,1011
- 4d8fc: 0085c83a sub r2,zero,r2
- 4d900: 000f883a mov r7,zero
- 4d904: 003f8106 br 4d70c <__alt_data_end+0xfffdb70c>
- 4d908: 3027883a mov r19,r6
- 4d90c: 0081ffc4 movi r2,2047
- 4d910: 0021883a mov r16,zero
- 4d914: 002d883a mov r22,zero
- 4d918: 003faa06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
- 4d91c: 0023883a mov r17,zero
- 4d920: 0025883a mov r18,zero
- 4d924: 01c00044 movi r7,1
- 4d928: 003f7806 br 4d70c <__alt_data_end+0xfffdb70c>
- 4d92c: 01c000c4 movi r7,3
- 4d930: 003f7606 br 4d70c <__alt_data_end+0xfffdb70c>
- 4d934: 05400104 movi r21,4
- 4d938: 0021883a mov r16,zero
- 4d93c: 002d883a mov r22,zero
- 4d940: 01400044 movi r5,1
- 4d944: 003f5f06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
- 4d948: 05400304 movi r21,12
- 4d94c: 014000c4 movi r5,3
- 4d950: 003f5c06 br 4d6c4 <__alt_data_end+0xfffdb6c4>
- 4d954: 04000434 movhi r16,16
- 4d958: 0027883a mov r19,zero
- 4d95c: 843fffc4 addi r16,r16,-1
- 4d960: 05bfffc4 movi r22,-1
- 4d964: 0081ffc4 movi r2,2047
- 4d968: 003f9606 br 4d7c4 <__alt_data_end+0xfffdb7c4>
- 4d96c: 8023883a mov r17,r16
- 4d970: b025883a mov r18,r22
- 4d974: 280f883a mov r7,r5
- 4d978: 003f8806 br 4d79c <__alt_data_end+0xfffdb79c>
- 4d97c: 8023883a mov r17,r16
- 4d980: b025883a mov r18,r22
- 4d984: 480d883a mov r6,r9
- 4d988: 280f883a mov r7,r5
- 4d98c: 003f8306 br 4d79c <__alt_data_end+0xfffdb79c>
- 4d990: b026d43a srli r19,r22,16
- 4d994: 902ed43a srli r23,r18,16
- 4d998: b5bfffcc andi r22,r22,65535
- 4d99c: 94bfffcc andi r18,r18,65535
- 4d9a0: b00b883a mov r5,r22
- 4d9a4: 9009883a mov r4,r18
- 4d9a8: d8c00515 stw r3,20(sp)
- 4d9ac: d9800715 stw r6,28(sp)
- 4d9b0: da000615 stw r8,24(sp)
- 4d9b4: 004c9f80 call 4c9f8 <__mulsi3>
- 4d9b8: 980b883a mov r5,r19
- 4d9bc: 9009883a mov r4,r18
- 4d9c0: 1029883a mov r20,r2
- 4d9c4: 004c9f80 call 4c9f8 <__mulsi3>
- 4d9c8: b80b883a mov r5,r23
- 4d9cc: 9809883a mov r4,r19
- 4d9d0: 102b883a mov r21,r2
- 4d9d4: 004c9f80 call 4c9f8 <__mulsi3>
- 4d9d8: b809883a mov r4,r23
- 4d9dc: b00b883a mov r5,r22
- 4d9e0: 1039883a mov fp,r2
- 4d9e4: 004c9f80 call 4c9f8 <__mulsi3>
- 4d9e8: a008d43a srli r4,r20,16
- 4d9ec: 1545883a add r2,r2,r21
- 4d9f0: d8c00517 ldw r3,20(sp)
- 4d9f4: 2085883a add r2,r4,r2
- 4d9f8: d9800717 ldw r6,28(sp)
- 4d9fc: da000617 ldw r8,24(sp)
- 4da00: 1540022e bgeu r2,r21,4da0c <__muldf3+0x3c4>
- 4da04: 01000074 movhi r4,1
- 4da08: e139883a add fp,fp,r4
- 4da0c: 100e943a slli r7,r2,16
- 4da10: 1004d43a srli r2,r2,16
- 4da14: 882ad43a srli r21,r17,16
- 4da18: a53fffcc andi r20,r20,65535
- 4da1c: 8c7fffcc andi r17,r17,65535
- 4da20: 3d29883a add r20,r7,r20
- 4da24: b00b883a mov r5,r22
- 4da28: 8809883a mov r4,r17
- 4da2c: d8c00515 stw r3,20(sp)
- 4da30: d9800715 stw r6,28(sp)
- 4da34: da000615 stw r8,24(sp)
- 4da38: dd000115 stw r20,4(sp)
- 4da3c: d8800015 stw r2,0(sp)
- 4da40: 004c9f80 call 4c9f8 <__mulsi3>
- 4da44: 980b883a mov r5,r19
- 4da48: 8809883a mov r4,r17
- 4da4c: d8800215 stw r2,8(sp)
- 4da50: 004c9f80 call 4c9f8 <__mulsi3>
- 4da54: 9809883a mov r4,r19
- 4da58: a80b883a mov r5,r21
- 4da5c: 1029883a mov r20,r2
- 4da60: 004c9f80 call 4c9f8 <__mulsi3>
- 4da64: b00b883a mov r5,r22
- 4da68: a809883a mov r4,r21
- 4da6c: d8800415 stw r2,16(sp)
- 4da70: 004c9f80 call 4c9f8 <__mulsi3>
- 4da74: d9c00217 ldw r7,8(sp)
- 4da78: 1505883a add r2,r2,r20
- 4da7c: d8c00517 ldw r3,20(sp)
- 4da80: 3826d43a srli r19,r7,16
- 4da84: d9800717 ldw r6,28(sp)
- 4da88: da000617 ldw r8,24(sp)
- 4da8c: 9885883a add r2,r19,r2
- 4da90: da400417 ldw r9,16(sp)
- 4da94: 1500022e bgeu r2,r20,4daa0 <__muldf3+0x458>
- 4da98: 01000074 movhi r4,1
- 4da9c: 4913883a add r9,r9,r4
- 4daa0: 1028d43a srli r20,r2,16
- 4daa4: 1004943a slli r2,r2,16
- 4daa8: 802cd43a srli r22,r16,16
- 4daac: 843fffcc andi r16,r16,65535
- 4dab0: 3cffffcc andi r19,r7,65535
- 4dab4: 9009883a mov r4,r18
- 4dab8: 800b883a mov r5,r16
- 4dabc: a269883a add r20,r20,r9
- 4dac0: d8c00515 stw r3,20(sp)
- 4dac4: d9800715 stw r6,28(sp)
- 4dac8: da000615 stw r8,24(sp)
- 4dacc: 14e7883a add r19,r2,r19
- 4dad0: 004c9f80 call 4c9f8 <__mulsi3>
- 4dad4: 9009883a mov r4,r18
- 4dad8: b00b883a mov r5,r22
- 4dadc: d8800315 stw r2,12(sp)
- 4dae0: 004c9f80 call 4c9f8 <__mulsi3>
- 4dae4: b809883a mov r4,r23
- 4dae8: b00b883a mov r5,r22
- 4daec: d8800215 stw r2,8(sp)
- 4daf0: 004c9f80 call 4c9f8 <__mulsi3>
- 4daf4: b80b883a mov r5,r23
- 4daf8: 8009883a mov r4,r16
- 4dafc: d8800415 stw r2,16(sp)
- 4db00: 004c9f80 call 4c9f8 <__mulsi3>
- 4db04: da800317 ldw r10,12(sp)
- 4db08: d9c00217 ldw r7,8(sp)
- 4db0c: d9000017 ldw r4,0(sp)
- 4db10: 502ed43a srli r23,r10,16
- 4db14: 11c5883a add r2,r2,r7
- 4db18: 24e5883a add r18,r4,r19
- 4db1c: b885883a add r2,r23,r2
- 4db20: d8c00517 ldw r3,20(sp)
- 4db24: d9800717 ldw r6,28(sp)
- 4db28: da000617 ldw r8,24(sp)
- 4db2c: da400417 ldw r9,16(sp)
- 4db30: 11c0022e bgeu r2,r7,4db3c <__muldf3+0x4f4>
- 4db34: 01000074 movhi r4,1
- 4db38: 4913883a add r9,r9,r4
- 4db3c: 100ed43a srli r7,r2,16
- 4db40: 1004943a slli r2,r2,16
- 4db44: 55ffffcc andi r23,r10,65535
- 4db48: 3a53883a add r9,r7,r9
- 4db4c: 8809883a mov r4,r17
- 4db50: 800b883a mov r5,r16
- 4db54: d8c00515 stw r3,20(sp)
- 4db58: d9800715 stw r6,28(sp)
- 4db5c: da000615 stw r8,24(sp)
- 4db60: da400415 stw r9,16(sp)
- 4db64: 15ef883a add r23,r2,r23
- 4db68: 004c9f80 call 4c9f8 <__mulsi3>
- 4db6c: 8809883a mov r4,r17
- 4db70: b00b883a mov r5,r22
- 4db74: d8800215 stw r2,8(sp)
- 4db78: 004c9f80 call 4c9f8 <__mulsi3>
- 4db7c: b00b883a mov r5,r22
- 4db80: a809883a mov r4,r21
- 4db84: d8800315 stw r2,12(sp)
- 4db88: 004c9f80 call 4c9f8 <__mulsi3>
- 4db8c: 8009883a mov r4,r16
- 4db90: a80b883a mov r5,r21
- 4db94: 1023883a mov r17,r2
- 4db98: 004c9f80 call 4c9f8 <__mulsi3>
- 4db9c: d9c00217 ldw r7,8(sp)
- 4dba0: da800317 ldw r10,12(sp)
- 4dba4: d8c00517 ldw r3,20(sp)
- 4dba8: 3808d43a srli r4,r7,16
- 4dbac: 1285883a add r2,r2,r10
- 4dbb0: d9800717 ldw r6,28(sp)
- 4dbb4: 2085883a add r2,r4,r2
- 4dbb8: da000617 ldw r8,24(sp)
- 4dbbc: da400417 ldw r9,16(sp)
- 4dbc0: 1280022e bgeu r2,r10,4dbcc <__muldf3+0x584>
- 4dbc4: 01000074 movhi r4,1
- 4dbc8: 8923883a add r17,r17,r4
- 4dbcc: 1008943a slli r4,r2,16
- 4dbd0: 39ffffcc andi r7,r7,65535
- 4dbd4: e4b9883a add fp,fp,r18
- 4dbd8: 21cf883a add r7,r4,r7
- 4dbdc: e4e7803a cmpltu r19,fp,r19
- 4dbe0: 3d0f883a add r7,r7,r20
- 4dbe4: bf39883a add fp,r23,fp
- 4dbe8: 99c9883a add r4,r19,r7
- 4dbec: e5ef803a cmpltu r23,fp,r23
- 4dbf0: 490b883a add r5,r9,r4
- 4dbf4: 1004d43a srli r2,r2,16
- 4dbf8: b965883a add r18,r23,r5
- 4dbfc: 24c9803a cmpltu r4,r4,r19
- 4dc00: 3d29803a cmpltu r20,r7,r20
- 4dc04: a128b03a or r20,r20,r4
- 4dc08: 95ef803a cmpltu r23,r18,r23
- 4dc0c: 2a53803a cmpltu r9,r5,r9
- 4dc10: a0a9883a add r20,r20,r2
- 4dc14: 4deeb03a or r23,r9,r23
- 4dc18: a5ef883a add r23,r20,r23
- 4dc1c: bc63883a add r17,r23,r17
- 4dc20: e004927a slli r2,fp,9
- 4dc24: d9000117 ldw r4,4(sp)
- 4dc28: 882e927a slli r23,r17,9
- 4dc2c: 9022d5fa srli r17,r18,23
- 4dc30: e038d5fa srli fp,fp,23
- 4dc34: 1104b03a or r2,r2,r4
- 4dc38: 9024927a slli r18,r18,9
- 4dc3c: 1004c03a cmpne r2,r2,zero
- 4dc40: bc62b03a or r17,r23,r17
- 4dc44: 1738b03a or fp,r2,fp
- 4dc48: 8880402c andhi r2,r17,256
- 4dc4c: e4a4b03a or r18,fp,r18
- 4dc50: 10000726 beq r2,zero,4dc70 <__muldf3+0x628>
- 4dc54: 9006d07a srli r3,r18,1
- 4dc58: 880497fa slli r2,r17,31
- 4dc5c: 9480004c andi r18,r18,1
- 4dc60: 8822d07a srli r17,r17,1
- 4dc64: 1ca4b03a or r18,r3,r18
- 4dc68: 14a4b03a or r18,r2,r18
- 4dc6c: 4007883a mov r3,r8
- 4dc70: 1880ffc4 addi r2,r3,1023
- 4dc74: 0080460e bge zero,r2,4dd90 <__muldf3+0x748>
- 4dc78: 910001cc andi r4,r18,7
- 4dc7c: 20000726 beq r4,zero,4dc9c <__muldf3+0x654>
- 4dc80: 910003cc andi r4,r18,15
- 4dc84: 01400104 movi r5,4
- 4dc88: 21400426 beq r4,r5,4dc9c <__muldf3+0x654>
- 4dc8c: 9149883a add r4,r18,r5
- 4dc90: 24a5803a cmpltu r18,r4,r18
- 4dc94: 8ca3883a add r17,r17,r18
- 4dc98: 2025883a mov r18,r4
- 4dc9c: 8900402c andhi r4,r17,256
- 4dca0: 20000426 beq r4,zero,4dcb4 <__muldf3+0x66c>
- 4dca4: 18810004 addi r2,r3,1024
- 4dca8: 00ffc034 movhi r3,65280
- 4dcac: 18ffffc4 addi r3,r3,-1
- 4dcb0: 88e2703a and r17,r17,r3
- 4dcb4: 00c1ff84 movi r3,2046
- 4dcb8: 18bf1316 blt r3,r2,4d908 <__alt_data_end+0xfffdb908>
- 4dcbc: 882c977a slli r22,r17,29
- 4dcc0: 9024d0fa srli r18,r18,3
- 4dcc4: 8822927a slli r17,r17,9
- 4dcc8: 1081ffcc andi r2,r2,2047
- 4dccc: b4acb03a or r22,r22,r18
- 4dcd0: 8820d33a srli r16,r17,12
- 4dcd4: 3027883a mov r19,r6
- 4dcd8: 003eba06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
- 4dcdc: 8080022c andhi r2,r16,8
- 4dce0: 10000926 beq r2,zero,4dd08 <__muldf3+0x6c0>
- 4dce4: 8880022c andhi r2,r17,8
- 4dce8: 1000071e bne r2,zero,4dd08 <__muldf3+0x6c0>
- 4dcec: 00800434 movhi r2,16
- 4dcf0: 8c000234 orhi r16,r17,8
- 4dcf4: 10bfffc4 addi r2,r2,-1
- 4dcf8: e027883a mov r19,fp
- 4dcfc: 80a0703a and r16,r16,r2
- 4dd00: 902d883a mov r22,r18
- 4dd04: 003f1706 br 4d964 <__alt_data_end+0xfffdb964>
- 4dd08: 00800434 movhi r2,16
- 4dd0c: 84000234 orhi r16,r16,8
- 4dd10: 10bfffc4 addi r2,r2,-1
- 4dd14: 80a0703a and r16,r16,r2
- 4dd18: 003f1206 br 4d964 <__alt_data_end+0xfffdb964>
- 4dd1c: 147ff604 addi r17,r2,-40
- 4dd20: 3462983a sll r17,r6,r17
- 4dd24: 0025883a mov r18,zero
- 4dd28: 003ef306 br 4d8f8 <__alt_data_end+0xfffdb8f8>
- 4dd2c: 3009883a mov r4,r6
- 4dd30: d9400215 stw r5,8(sp)
- 4dd34: d9800715 stw r6,28(sp)
- 4dd38: da400415 stw r9,16(sp)
- 4dd3c: da800315 stw r10,12(sp)
- 4dd40: 0041efc0 call 41efc <__clzsi2>
- 4dd44: 10800804 addi r2,r2,32
- 4dd48: da800317 ldw r10,12(sp)
- 4dd4c: da400417 ldw r9,16(sp)
- 4dd50: d9800717 ldw r6,28(sp)
- 4dd54: d9400217 ldw r5,8(sp)
- 4dd58: 003edd06 br 4d8d0 <__alt_data_end+0xfffdb8d0>
- 4dd5c: 143ff604 addi r16,r2,-40
- 4dd60: ac20983a sll r16,r21,r16
- 4dd64: 002d883a mov r22,zero
- 4dd68: 003ec106 br 4d870 <__alt_data_end+0xfffdb870>
- 4dd6c: d9800715 stw r6,28(sp)
- 4dd70: d9c00215 stw r7,8(sp)
- 4dd74: da400415 stw r9,16(sp)
- 4dd78: 0041efc0 call 41efc <__clzsi2>
- 4dd7c: 10800804 addi r2,r2,32
- 4dd80: da400417 ldw r9,16(sp)
- 4dd84: d9c00217 ldw r7,8(sp)
- 4dd88: d9800717 ldw r6,28(sp)
- 4dd8c: 003eae06 br 4d848 <__alt_data_end+0xfffdb848>
- 4dd90: 00c00044 movi r3,1
- 4dd94: 1887c83a sub r3,r3,r2
- 4dd98: 01000e04 movi r4,56
- 4dd9c: 20fe8516 blt r4,r3,4d7b4 <__alt_data_end+0xfffdb7b4>
- 4dda0: 010007c4 movi r4,31
- 4dda4: 20c01b16 blt r4,r3,4de14 <__muldf3+0x7cc>
- 4dda8: 00800804 movi r2,32
- 4ddac: 10c5c83a sub r2,r2,r3
- 4ddb0: 888a983a sll r5,r17,r2
- 4ddb4: 90c8d83a srl r4,r18,r3
- 4ddb8: 9084983a sll r2,r18,r2
- 4ddbc: 88e2d83a srl r17,r17,r3
- 4ddc0: 2906b03a or r3,r5,r4
- 4ddc4: 1004c03a cmpne r2,r2,zero
- 4ddc8: 1886b03a or r3,r3,r2
- 4ddcc: 188001cc andi r2,r3,7
- 4ddd0: 10000726 beq r2,zero,4ddf0 <__muldf3+0x7a8>
- 4ddd4: 188003cc andi r2,r3,15
- 4ddd8: 01000104 movi r4,4
- 4dddc: 11000426 beq r2,r4,4ddf0 <__muldf3+0x7a8>
- 4dde0: 1805883a mov r2,r3
- 4dde4: 10c00104 addi r3,r2,4
- 4dde8: 1885803a cmpltu r2,r3,r2
- 4ddec: 88a3883a add r17,r17,r2
- 4ddf0: 8880202c andhi r2,r17,128
- 4ddf4: 10001c26 beq r2,zero,4de68 <__muldf3+0x820>
- 4ddf8: 3027883a mov r19,r6
- 4ddfc: 00800044 movi r2,1
- 4de00: 0021883a mov r16,zero
- 4de04: 002d883a mov r22,zero
- 4de08: 003e6e06 br 4d7c4 <__alt_data_end+0xfffdb7c4>
- 4de0c: 4007883a mov r3,r8
- 4de10: 003f9706 br 4dc70 <__alt_data_end+0xfffdbc70>
- 4de14: 017ff844 movi r5,-31
- 4de18: 2885c83a sub r2,r5,r2
- 4de1c: 888ad83a srl r5,r17,r2
- 4de20: 00800804 movi r2,32
- 4de24: 18801a26 beq r3,r2,4de90 <__muldf3+0x848>
- 4de28: 01001004 movi r4,64
- 4de2c: 20c7c83a sub r3,r4,r3
- 4de30: 88e2983a sll r17,r17,r3
- 4de34: 8ca4b03a or r18,r17,r18
- 4de38: 9004c03a cmpne r2,r18,zero
- 4de3c: 2884b03a or r2,r5,r2
- 4de40: 144001cc andi r17,r2,7
- 4de44: 88000d1e bne r17,zero,4de7c <__muldf3+0x834>
- 4de48: 0021883a mov r16,zero
- 4de4c: 102cd0fa srli r22,r2,3
- 4de50: 3027883a mov r19,r6
- 4de54: 0005883a mov r2,zero
- 4de58: b46cb03a or r22,r22,r17
- 4de5c: 003e5906 br 4d7c4 <__alt_data_end+0xfffdb7c4>
- 4de60: 1007883a mov r3,r2
- 4de64: 0023883a mov r17,zero
- 4de68: 8820927a slli r16,r17,9
- 4de6c: 1805883a mov r2,r3
- 4de70: 8822977a slli r17,r17,29
- 4de74: 8020d33a srli r16,r16,12
- 4de78: 003ff406 br 4de4c <__alt_data_end+0xfffdbe4c>
- 4de7c: 10c003cc andi r3,r2,15
- 4de80: 01000104 movi r4,4
- 4de84: 193ff626 beq r3,r4,4de60 <__alt_data_end+0xfffdbe60>
- 4de88: 0023883a mov r17,zero
- 4de8c: 003fd506 br 4dde4 <__alt_data_end+0xfffdbde4>
- 4de90: 0023883a mov r17,zero
- 4de94: 003fe706 br 4de34 <__alt_data_end+0xfffdbe34>
- 4de98: 00800434 movhi r2,16
- 4de9c: 8c000234 orhi r16,r17,8
- 4dea0: 10bfffc4 addi r2,r2,-1
- 4dea4: 3027883a mov r19,r6
- 4dea8: 80a0703a and r16,r16,r2
- 4deac: 902d883a mov r22,r18
- 4deb0: 003eac06 br 4d964 <__alt_data_end+0xfffdb964>
- 0004deb4 <__subdf3>:
- 4deb4: 02000434 movhi r8,16
- 4deb8: 423fffc4 addi r8,r8,-1
- 4debc: defffb04 addi sp,sp,-20
- 4dec0: 2a14703a and r10,r5,r8
- 4dec4: 3812d53a srli r9,r7,20
- 4dec8: 3a10703a and r8,r7,r8
- 4decc: 2006d77a srli r3,r4,29
- 4ded0: 3004d77a srli r2,r6,29
- 4ded4: dc000015 stw r16,0(sp)
- 4ded8: 501490fa slli r10,r10,3
- 4dedc: 2820d53a srli r16,r5,20
- 4dee0: 401090fa slli r8,r8,3
- 4dee4: dc800215 stw r18,8(sp)
- 4dee8: dc400115 stw r17,4(sp)
- 4deec: dfc00415 stw ra,16(sp)
- 4def0: 202290fa slli r17,r4,3
- 4def4: dcc00315 stw r19,12(sp)
- 4def8: 4a41ffcc andi r9,r9,2047
- 4defc: 0101ffc4 movi r4,2047
- 4df00: 2824d7fa srli r18,r5,31
- 4df04: 8401ffcc andi r16,r16,2047
- 4df08: 50c6b03a or r3,r10,r3
- 4df0c: 380ed7fa srli r7,r7,31
- 4df10: 408ab03a or r5,r8,r2
- 4df14: 300c90fa slli r6,r6,3
- 4df18: 49009626 beq r9,r4,4e174 <__subdf3+0x2c0>
- 4df1c: 39c0005c xori r7,r7,1
- 4df20: 8245c83a sub r2,r16,r9
- 4df24: 3c807426 beq r7,r18,4e0f8 <__subdf3+0x244>
- 4df28: 0080af0e bge zero,r2,4e1e8 <__subdf3+0x334>
- 4df2c: 48002a1e bne r9,zero,4dfd8 <__subdf3+0x124>
- 4df30: 2988b03a or r4,r5,r6
- 4df34: 20009a1e bne r4,zero,4e1a0 <__subdf3+0x2ec>
- 4df38: 888001cc andi r2,r17,7
- 4df3c: 10000726 beq r2,zero,4df5c <__subdf3+0xa8>
- 4df40: 888003cc andi r2,r17,15
- 4df44: 01000104 movi r4,4
- 4df48: 11000426 beq r2,r4,4df5c <__subdf3+0xa8>
- 4df4c: 890b883a add r5,r17,r4
- 4df50: 2c63803a cmpltu r17,r5,r17
- 4df54: 1c47883a add r3,r3,r17
- 4df58: 2823883a mov r17,r5
- 4df5c: 1880202c andhi r2,r3,128
- 4df60: 10005926 beq r2,zero,4e0c8 <__subdf3+0x214>
- 4df64: 84000044 addi r16,r16,1
- 4df68: 0081ffc4 movi r2,2047
- 4df6c: 8080be26 beq r16,r2,4e268 <__subdf3+0x3b4>
- 4df70: 017fe034 movhi r5,65408
- 4df74: 297fffc4 addi r5,r5,-1
- 4df78: 1946703a and r3,r3,r5
- 4df7c: 1804977a slli r2,r3,29
- 4df80: 1806927a slli r3,r3,9
- 4df84: 8822d0fa srli r17,r17,3
- 4df88: 8401ffcc andi r16,r16,2047
- 4df8c: 180ad33a srli r5,r3,12
- 4df90: 9100004c andi r4,r18,1
- 4df94: 1444b03a or r2,r2,r17
- 4df98: 80c1ffcc andi r3,r16,2047
- 4df9c: 1820953a slli r16,r3,20
- 4dfa0: 20c03fcc andi r3,r4,255
- 4dfa4: 180897fa slli r4,r3,31
- 4dfa8: 00c00434 movhi r3,16
- 4dfac: 18ffffc4 addi r3,r3,-1
- 4dfb0: 28c6703a and r3,r5,r3
- 4dfb4: 1c06b03a or r3,r3,r16
- 4dfb8: 1906b03a or r3,r3,r4
- 4dfbc: dfc00417 ldw ra,16(sp)
- 4dfc0: dcc00317 ldw r19,12(sp)
- 4dfc4: dc800217 ldw r18,8(sp)
- 4dfc8: dc400117 ldw r17,4(sp)
- 4dfcc: dc000017 ldw r16,0(sp)
- 4dfd0: dec00504 addi sp,sp,20
- 4dfd4: f800283a ret
- 4dfd8: 0101ffc4 movi r4,2047
- 4dfdc: 813fd626 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38>
- 4dfe0: 29402034 orhi r5,r5,128
- 4dfe4: 01000e04 movi r4,56
- 4dfe8: 2080a316 blt r4,r2,4e278 <__subdf3+0x3c4>
- 4dfec: 010007c4 movi r4,31
- 4dff0: 2080c616 blt r4,r2,4e30c <__subdf3+0x458>
- 4dff4: 01000804 movi r4,32
- 4dff8: 2089c83a sub r4,r4,r2
- 4dffc: 2910983a sll r8,r5,r4
- 4e000: 308ed83a srl r7,r6,r2
- 4e004: 3108983a sll r4,r6,r4
- 4e008: 2884d83a srl r2,r5,r2
- 4e00c: 41ccb03a or r6,r8,r7
- 4e010: 2008c03a cmpne r4,r4,zero
- 4e014: 310cb03a or r6,r6,r4
- 4e018: 898dc83a sub r6,r17,r6
- 4e01c: 89a3803a cmpltu r17,r17,r6
- 4e020: 1887c83a sub r3,r3,r2
- 4e024: 1c47c83a sub r3,r3,r17
- 4e028: 3023883a mov r17,r6
- 4e02c: 1880202c andhi r2,r3,128
- 4e030: 10002326 beq r2,zero,4e0c0 <__subdf3+0x20c>
- 4e034: 04c02034 movhi r19,128
- 4e038: 9cffffc4 addi r19,r19,-1
- 4e03c: 1ce6703a and r19,r3,r19
- 4e040: 98007a26 beq r19,zero,4e22c <__subdf3+0x378>
- 4e044: 9809883a mov r4,r19
- 4e048: 0041efc0 call 41efc <__clzsi2>
- 4e04c: 113ffe04 addi r4,r2,-8
- 4e050: 00c007c4 movi r3,31
- 4e054: 19007b16 blt r3,r4,4e244 <__subdf3+0x390>
- 4e058: 00800804 movi r2,32
- 4e05c: 1105c83a sub r2,r2,r4
- 4e060: 8884d83a srl r2,r17,r2
- 4e064: 9906983a sll r3,r19,r4
- 4e068: 8922983a sll r17,r17,r4
- 4e06c: 10c4b03a or r2,r2,r3
- 4e070: 24007816 blt r4,r16,4e254 <__subdf3+0x3a0>
- 4e074: 2421c83a sub r16,r4,r16
- 4e078: 80c00044 addi r3,r16,1
- 4e07c: 010007c4 movi r4,31
- 4e080: 20c09516 blt r4,r3,4e2d8 <__subdf3+0x424>
- 4e084: 01400804 movi r5,32
- 4e088: 28cbc83a sub r5,r5,r3
- 4e08c: 88c8d83a srl r4,r17,r3
- 4e090: 8962983a sll r17,r17,r5
- 4e094: 114a983a sll r5,r2,r5
- 4e098: 10c6d83a srl r3,r2,r3
- 4e09c: 8804c03a cmpne r2,r17,zero
- 4e0a0: 290ab03a or r5,r5,r4
- 4e0a4: 28a2b03a or r17,r5,r2
- 4e0a8: 0021883a mov r16,zero
- 4e0ac: 003fa206 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e0b0: 2090b03a or r8,r4,r2
- 4e0b4: 40018e26 beq r8,zero,4e6f0 <__subdf3+0x83c>
- 4e0b8: 1007883a mov r3,r2
- 4e0bc: 2023883a mov r17,r4
- 4e0c0: 888001cc andi r2,r17,7
- 4e0c4: 103f9e1e bne r2,zero,4df40 <__alt_data_end+0xfffdbf40>
- 4e0c8: 1804977a slli r2,r3,29
- 4e0cc: 8822d0fa srli r17,r17,3
- 4e0d0: 1810d0fa srli r8,r3,3
- 4e0d4: 9100004c andi r4,r18,1
- 4e0d8: 1444b03a or r2,r2,r17
- 4e0dc: 00c1ffc4 movi r3,2047
- 4e0e0: 80c02826 beq r16,r3,4e184 <__subdf3+0x2d0>
- 4e0e4: 01400434 movhi r5,16
- 4e0e8: 297fffc4 addi r5,r5,-1
- 4e0ec: 80e0703a and r16,r16,r3
- 4e0f0: 414a703a and r5,r8,r5
- 4e0f4: 003fa806 br 4df98 <__alt_data_end+0xfffdbf98>
- 4e0f8: 0080630e bge zero,r2,4e288 <__subdf3+0x3d4>
- 4e0fc: 48003026 beq r9,zero,4e1c0 <__subdf3+0x30c>
- 4e100: 0101ffc4 movi r4,2047
- 4e104: 813f8c26 beq r16,r4,4df38 <__alt_data_end+0xfffdbf38>
- 4e108: 29402034 orhi r5,r5,128
- 4e10c: 01000e04 movi r4,56
- 4e110: 2080a90e bge r4,r2,4e3b8 <__subdf3+0x504>
- 4e114: 298cb03a or r6,r5,r6
- 4e118: 3012c03a cmpne r9,r6,zero
- 4e11c: 0005883a mov r2,zero
- 4e120: 4c53883a add r9,r9,r17
- 4e124: 4c63803a cmpltu r17,r9,r17
- 4e128: 10c7883a add r3,r2,r3
- 4e12c: 88c7883a add r3,r17,r3
- 4e130: 4823883a mov r17,r9
- 4e134: 1880202c andhi r2,r3,128
- 4e138: 1000d026 beq r2,zero,4e47c <__subdf3+0x5c8>
- 4e13c: 84000044 addi r16,r16,1
- 4e140: 0081ffc4 movi r2,2047
- 4e144: 8080fe26 beq r16,r2,4e540 <__subdf3+0x68c>
- 4e148: 00bfe034 movhi r2,65408
- 4e14c: 10bfffc4 addi r2,r2,-1
- 4e150: 1886703a and r3,r3,r2
- 4e154: 880ad07a srli r5,r17,1
- 4e158: 180497fa slli r2,r3,31
- 4e15c: 8900004c andi r4,r17,1
- 4e160: 2922b03a or r17,r5,r4
- 4e164: 1806d07a srli r3,r3,1
- 4e168: 1462b03a or r17,r2,r17
- 4e16c: 3825883a mov r18,r7
- 4e170: 003f7106 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e174: 2984b03a or r2,r5,r6
- 4e178: 103f6826 beq r2,zero,4df1c <__alt_data_end+0xfffdbf1c>
- 4e17c: 39c03fcc andi r7,r7,255
- 4e180: 003f6706 br 4df20 <__alt_data_end+0xfffdbf20>
- 4e184: 4086b03a or r3,r8,r2
- 4e188: 18015226 beq r3,zero,4e6d4 <__subdf3+0x820>
- 4e18c: 00c00434 movhi r3,16
- 4e190: 41400234 orhi r5,r8,8
- 4e194: 18ffffc4 addi r3,r3,-1
- 4e198: 28ca703a and r5,r5,r3
- 4e19c: 003f7e06 br 4df98 <__alt_data_end+0xfffdbf98>
- 4e1a0: 10bfffc4 addi r2,r2,-1
- 4e1a4: 1000491e bne r2,zero,4e2cc <__subdf3+0x418>
- 4e1a8: 898fc83a sub r7,r17,r6
- 4e1ac: 89e3803a cmpltu r17,r17,r7
- 4e1b0: 1947c83a sub r3,r3,r5
- 4e1b4: 1c47c83a sub r3,r3,r17
- 4e1b8: 3823883a mov r17,r7
- 4e1bc: 003f9b06 br 4e02c <__alt_data_end+0xfffdc02c>
- 4e1c0: 2988b03a or r4,r5,r6
- 4e1c4: 203f5c26 beq r4,zero,4df38 <__alt_data_end+0xfffdbf38>
- 4e1c8: 10bfffc4 addi r2,r2,-1
- 4e1cc: 1000931e bne r2,zero,4e41c <__subdf3+0x568>
- 4e1d0: 898d883a add r6,r17,r6
- 4e1d4: 3463803a cmpltu r17,r6,r17
- 4e1d8: 1947883a add r3,r3,r5
- 4e1dc: 88c7883a add r3,r17,r3
- 4e1e0: 3023883a mov r17,r6
- 4e1e4: 003fd306 br 4e134 <__alt_data_end+0xfffdc134>
- 4e1e8: 1000541e bne r2,zero,4e33c <__subdf3+0x488>
- 4e1ec: 80800044 addi r2,r16,1
- 4e1f0: 1081ffcc andi r2,r2,2047
- 4e1f4: 01000044 movi r4,1
- 4e1f8: 2080a20e bge r4,r2,4e484 <__subdf3+0x5d0>
- 4e1fc: 8989c83a sub r4,r17,r6
- 4e200: 8905803a cmpltu r2,r17,r4
- 4e204: 1967c83a sub r19,r3,r5
- 4e208: 98a7c83a sub r19,r19,r2
- 4e20c: 9880202c andhi r2,r19,128
- 4e210: 10006326 beq r2,zero,4e3a0 <__subdf3+0x4ec>
- 4e214: 3463c83a sub r17,r6,r17
- 4e218: 28c7c83a sub r3,r5,r3
- 4e21c: 344d803a cmpltu r6,r6,r17
- 4e220: 19a7c83a sub r19,r3,r6
- 4e224: 3825883a mov r18,r7
- 4e228: 983f861e bne r19,zero,4e044 <__alt_data_end+0xfffdc044>
- 4e22c: 8809883a mov r4,r17
- 4e230: 0041efc0 call 41efc <__clzsi2>
- 4e234: 10800804 addi r2,r2,32
- 4e238: 113ffe04 addi r4,r2,-8
- 4e23c: 00c007c4 movi r3,31
- 4e240: 193f850e bge r3,r4,4e058 <__alt_data_end+0xfffdc058>
- 4e244: 10bff604 addi r2,r2,-40
- 4e248: 8884983a sll r2,r17,r2
- 4e24c: 0023883a mov r17,zero
- 4e250: 243f880e bge r4,r16,4e074 <__alt_data_end+0xfffdc074>
- 4e254: 00ffe034 movhi r3,65408
- 4e258: 18ffffc4 addi r3,r3,-1
- 4e25c: 8121c83a sub r16,r16,r4
- 4e260: 10c6703a and r3,r2,r3
- 4e264: 003f3406 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e268: 9100004c andi r4,r18,1
- 4e26c: 000b883a mov r5,zero
- 4e270: 0005883a mov r2,zero
- 4e274: 003f4806 br 4df98 <__alt_data_end+0xfffdbf98>
- 4e278: 298cb03a or r6,r5,r6
- 4e27c: 300cc03a cmpne r6,r6,zero
- 4e280: 0005883a mov r2,zero
- 4e284: 003f6406 br 4e018 <__alt_data_end+0xfffdc018>
- 4e288: 10009a1e bne r2,zero,4e4f4 <__subdf3+0x640>
- 4e28c: 82400044 addi r9,r16,1
- 4e290: 4881ffcc andi r2,r9,2047
- 4e294: 02800044 movi r10,1
- 4e298: 5080670e bge r10,r2,4e438 <__subdf3+0x584>
- 4e29c: 0081ffc4 movi r2,2047
- 4e2a0: 4880af26 beq r9,r2,4e560 <__subdf3+0x6ac>
- 4e2a4: 898d883a add r6,r17,r6
- 4e2a8: 1945883a add r2,r3,r5
- 4e2ac: 3447803a cmpltu r3,r6,r17
- 4e2b0: 1887883a add r3,r3,r2
- 4e2b4: 182297fa slli r17,r3,31
- 4e2b8: 300cd07a srli r6,r6,1
- 4e2bc: 1806d07a srli r3,r3,1
- 4e2c0: 4821883a mov r16,r9
- 4e2c4: 89a2b03a or r17,r17,r6
- 4e2c8: 003f1b06 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e2cc: 0101ffc4 movi r4,2047
- 4e2d0: 813f441e bne r16,r4,4dfe4 <__alt_data_end+0xfffdbfe4>
- 4e2d4: 003f1806 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e2d8: 843ff844 addi r16,r16,-31
- 4e2dc: 01400804 movi r5,32
- 4e2e0: 1408d83a srl r4,r2,r16
- 4e2e4: 19405026 beq r3,r5,4e428 <__subdf3+0x574>
- 4e2e8: 01401004 movi r5,64
- 4e2ec: 28c7c83a sub r3,r5,r3
- 4e2f0: 10c4983a sll r2,r2,r3
- 4e2f4: 88a2b03a or r17,r17,r2
- 4e2f8: 8822c03a cmpne r17,r17,zero
- 4e2fc: 2462b03a or r17,r4,r17
- 4e300: 0007883a mov r3,zero
- 4e304: 0021883a mov r16,zero
- 4e308: 003f6d06 br 4e0c0 <__alt_data_end+0xfffdc0c0>
- 4e30c: 11fff804 addi r7,r2,-32
- 4e310: 01000804 movi r4,32
- 4e314: 29ced83a srl r7,r5,r7
- 4e318: 11004526 beq r2,r4,4e430 <__subdf3+0x57c>
- 4e31c: 01001004 movi r4,64
- 4e320: 2089c83a sub r4,r4,r2
- 4e324: 2904983a sll r2,r5,r4
- 4e328: 118cb03a or r6,r2,r6
- 4e32c: 300cc03a cmpne r6,r6,zero
- 4e330: 398cb03a or r6,r7,r6
- 4e334: 0005883a mov r2,zero
- 4e338: 003f3706 br 4e018 <__alt_data_end+0xfffdc018>
- 4e33c: 80002a26 beq r16,zero,4e3e8 <__subdf3+0x534>
- 4e340: 0101ffc4 movi r4,2047
- 4e344: 49006626 beq r9,r4,4e4e0 <__subdf3+0x62c>
- 4e348: 0085c83a sub r2,zero,r2
- 4e34c: 18c02034 orhi r3,r3,128
- 4e350: 01000e04 movi r4,56
- 4e354: 20807e16 blt r4,r2,4e550 <__subdf3+0x69c>
- 4e358: 010007c4 movi r4,31
- 4e35c: 2080e716 blt r4,r2,4e6fc <__subdf3+0x848>
- 4e360: 01000804 movi r4,32
- 4e364: 2089c83a sub r4,r4,r2
- 4e368: 1914983a sll r10,r3,r4
- 4e36c: 8890d83a srl r8,r17,r2
- 4e370: 8908983a sll r4,r17,r4
- 4e374: 1884d83a srl r2,r3,r2
- 4e378: 5222b03a or r17,r10,r8
- 4e37c: 2006c03a cmpne r3,r4,zero
- 4e380: 88e2b03a or r17,r17,r3
- 4e384: 3463c83a sub r17,r6,r17
- 4e388: 2885c83a sub r2,r5,r2
- 4e38c: 344d803a cmpltu r6,r6,r17
- 4e390: 1187c83a sub r3,r2,r6
- 4e394: 4821883a mov r16,r9
- 4e398: 3825883a mov r18,r7
- 4e39c: 003f2306 br 4e02c <__alt_data_end+0xfffdc02c>
- 4e3a0: 24d0b03a or r8,r4,r19
- 4e3a4: 40001b1e bne r8,zero,4e414 <__subdf3+0x560>
- 4e3a8: 0005883a mov r2,zero
- 4e3ac: 0009883a mov r4,zero
- 4e3b0: 0021883a mov r16,zero
- 4e3b4: 003f4906 br 4e0dc <__alt_data_end+0xfffdc0dc>
- 4e3b8: 010007c4 movi r4,31
- 4e3bc: 20803a16 blt r4,r2,4e4a8 <__subdf3+0x5f4>
- 4e3c0: 01000804 movi r4,32
- 4e3c4: 2089c83a sub r4,r4,r2
- 4e3c8: 2912983a sll r9,r5,r4
- 4e3cc: 3090d83a srl r8,r6,r2
- 4e3d0: 3108983a sll r4,r6,r4
- 4e3d4: 2884d83a srl r2,r5,r2
- 4e3d8: 4a12b03a or r9,r9,r8
- 4e3dc: 2008c03a cmpne r4,r4,zero
- 4e3e0: 4912b03a or r9,r9,r4
- 4e3e4: 003f4e06 br 4e120 <__alt_data_end+0xfffdc120>
- 4e3e8: 1c48b03a or r4,r3,r17
- 4e3ec: 20003c26 beq r4,zero,4e4e0 <__subdf3+0x62c>
- 4e3f0: 0084303a nor r2,zero,r2
- 4e3f4: 1000381e bne r2,zero,4e4d8 <__subdf3+0x624>
- 4e3f8: 3463c83a sub r17,r6,r17
- 4e3fc: 28c5c83a sub r2,r5,r3
- 4e400: 344d803a cmpltu r6,r6,r17
- 4e404: 1187c83a sub r3,r2,r6
- 4e408: 4821883a mov r16,r9
- 4e40c: 3825883a mov r18,r7
- 4e410: 003f0606 br 4e02c <__alt_data_end+0xfffdc02c>
- 4e414: 2023883a mov r17,r4
- 4e418: 003f0906 br 4e040 <__alt_data_end+0xfffdc040>
- 4e41c: 0101ffc4 movi r4,2047
- 4e420: 813f3a1e bne r16,r4,4e10c <__alt_data_end+0xfffdc10c>
- 4e424: 003ec406 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e428: 0005883a mov r2,zero
- 4e42c: 003fb106 br 4e2f4 <__alt_data_end+0xfffdc2f4>
- 4e430: 0005883a mov r2,zero
- 4e434: 003fbc06 br 4e328 <__alt_data_end+0xfffdc328>
- 4e438: 1c44b03a or r2,r3,r17
- 4e43c: 80008e1e bne r16,zero,4e678 <__subdf3+0x7c4>
- 4e440: 1000c826 beq r2,zero,4e764 <__subdf3+0x8b0>
- 4e444: 2984b03a or r2,r5,r6
- 4e448: 103ebb26 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38>
- 4e44c: 8989883a add r4,r17,r6
- 4e450: 1945883a add r2,r3,r5
- 4e454: 2447803a cmpltu r3,r4,r17
- 4e458: 1887883a add r3,r3,r2
- 4e45c: 1880202c andhi r2,r3,128
- 4e460: 2023883a mov r17,r4
- 4e464: 103f1626 beq r2,zero,4e0c0 <__alt_data_end+0xfffdc0c0>
- 4e468: 00bfe034 movhi r2,65408
- 4e46c: 10bfffc4 addi r2,r2,-1
- 4e470: 5021883a mov r16,r10
- 4e474: 1886703a and r3,r3,r2
- 4e478: 003eaf06 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e47c: 3825883a mov r18,r7
- 4e480: 003f0f06 br 4e0c0 <__alt_data_end+0xfffdc0c0>
- 4e484: 1c44b03a or r2,r3,r17
- 4e488: 8000251e bne r16,zero,4e520 <__subdf3+0x66c>
- 4e48c: 1000661e bne r2,zero,4e628 <__subdf3+0x774>
- 4e490: 2990b03a or r8,r5,r6
- 4e494: 40009626 beq r8,zero,4e6f0 <__subdf3+0x83c>
- 4e498: 2807883a mov r3,r5
- 4e49c: 3023883a mov r17,r6
- 4e4a0: 3825883a mov r18,r7
- 4e4a4: 003ea406 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e4a8: 127ff804 addi r9,r2,-32
- 4e4ac: 01000804 movi r4,32
- 4e4b0: 2a52d83a srl r9,r5,r9
- 4e4b4: 11008c26 beq r2,r4,4e6e8 <__subdf3+0x834>
- 4e4b8: 01001004 movi r4,64
- 4e4bc: 2085c83a sub r2,r4,r2
- 4e4c0: 2884983a sll r2,r5,r2
- 4e4c4: 118cb03a or r6,r2,r6
- 4e4c8: 300cc03a cmpne r6,r6,zero
- 4e4cc: 4992b03a or r9,r9,r6
- 4e4d0: 0005883a mov r2,zero
- 4e4d4: 003f1206 br 4e120 <__alt_data_end+0xfffdc120>
- 4e4d8: 0101ffc4 movi r4,2047
- 4e4dc: 493f9c1e bne r9,r4,4e350 <__alt_data_end+0xfffdc350>
- 4e4e0: 2807883a mov r3,r5
- 4e4e4: 3023883a mov r17,r6
- 4e4e8: 4821883a mov r16,r9
- 4e4ec: 3825883a mov r18,r7
- 4e4f0: 003e9106 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e4f4: 80001f1e bne r16,zero,4e574 <__subdf3+0x6c0>
- 4e4f8: 1c48b03a or r4,r3,r17
- 4e4fc: 20005a26 beq r4,zero,4e668 <__subdf3+0x7b4>
- 4e500: 0084303a nor r2,zero,r2
- 4e504: 1000561e bne r2,zero,4e660 <__subdf3+0x7ac>
- 4e508: 89a3883a add r17,r17,r6
- 4e50c: 1945883a add r2,r3,r5
- 4e510: 898d803a cmpltu r6,r17,r6
- 4e514: 3087883a add r3,r6,r2
- 4e518: 4821883a mov r16,r9
- 4e51c: 003f0506 br 4e134 <__alt_data_end+0xfffdc134>
- 4e520: 10002b1e bne r2,zero,4e5d0 <__subdf3+0x71c>
- 4e524: 2984b03a or r2,r5,r6
- 4e528: 10008026 beq r2,zero,4e72c <__subdf3+0x878>
- 4e52c: 2807883a mov r3,r5
- 4e530: 3023883a mov r17,r6
- 4e534: 3825883a mov r18,r7
- 4e538: 0401ffc4 movi r16,2047
- 4e53c: 003e7e06 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e540: 3809883a mov r4,r7
- 4e544: 0011883a mov r8,zero
- 4e548: 0005883a mov r2,zero
- 4e54c: 003ee306 br 4e0dc <__alt_data_end+0xfffdc0dc>
- 4e550: 1c62b03a or r17,r3,r17
- 4e554: 8822c03a cmpne r17,r17,zero
- 4e558: 0005883a mov r2,zero
- 4e55c: 003f8906 br 4e384 <__alt_data_end+0xfffdc384>
- 4e560: 3809883a mov r4,r7
- 4e564: 4821883a mov r16,r9
- 4e568: 0011883a mov r8,zero
- 4e56c: 0005883a mov r2,zero
- 4e570: 003eda06 br 4e0dc <__alt_data_end+0xfffdc0dc>
- 4e574: 0101ffc4 movi r4,2047
- 4e578: 49003b26 beq r9,r4,4e668 <__subdf3+0x7b4>
- 4e57c: 0085c83a sub r2,zero,r2
- 4e580: 18c02034 orhi r3,r3,128
- 4e584: 01000e04 movi r4,56
- 4e588: 20806e16 blt r4,r2,4e744 <__subdf3+0x890>
- 4e58c: 010007c4 movi r4,31
- 4e590: 20807716 blt r4,r2,4e770 <__subdf3+0x8bc>
- 4e594: 01000804 movi r4,32
- 4e598: 2089c83a sub r4,r4,r2
- 4e59c: 1914983a sll r10,r3,r4
- 4e5a0: 8890d83a srl r8,r17,r2
- 4e5a4: 8908983a sll r4,r17,r4
- 4e5a8: 1884d83a srl r2,r3,r2
- 4e5ac: 5222b03a or r17,r10,r8
- 4e5b0: 2006c03a cmpne r3,r4,zero
- 4e5b4: 88e2b03a or r17,r17,r3
- 4e5b8: 89a3883a add r17,r17,r6
- 4e5bc: 1145883a add r2,r2,r5
- 4e5c0: 898d803a cmpltu r6,r17,r6
- 4e5c4: 3087883a add r3,r6,r2
- 4e5c8: 4821883a mov r16,r9
- 4e5cc: 003ed906 br 4e134 <__alt_data_end+0xfffdc134>
- 4e5d0: 2984b03a or r2,r5,r6
- 4e5d4: 10004226 beq r2,zero,4e6e0 <__subdf3+0x82c>
- 4e5d8: 1808d0fa srli r4,r3,3
- 4e5dc: 8822d0fa srli r17,r17,3
- 4e5e0: 1806977a slli r3,r3,29
- 4e5e4: 2080022c andhi r2,r4,8
- 4e5e8: 1c62b03a or r17,r3,r17
- 4e5ec: 10000826 beq r2,zero,4e610 <__subdf3+0x75c>
- 4e5f0: 2812d0fa srli r9,r5,3
- 4e5f4: 4880022c andhi r2,r9,8
- 4e5f8: 1000051e bne r2,zero,4e610 <__subdf3+0x75c>
- 4e5fc: 300cd0fa srli r6,r6,3
- 4e600: 2804977a slli r2,r5,29
- 4e604: 4809883a mov r4,r9
- 4e608: 3825883a mov r18,r7
- 4e60c: 11a2b03a or r17,r2,r6
- 4e610: 8806d77a srli r3,r17,29
- 4e614: 200890fa slli r4,r4,3
- 4e618: 882290fa slli r17,r17,3
- 4e61c: 0401ffc4 movi r16,2047
- 4e620: 1906b03a or r3,r3,r4
- 4e624: 003e4406 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e628: 2984b03a or r2,r5,r6
- 4e62c: 103e4226 beq r2,zero,4df38 <__alt_data_end+0xfffdbf38>
- 4e630: 8989c83a sub r4,r17,r6
- 4e634: 8911803a cmpltu r8,r17,r4
- 4e638: 1945c83a sub r2,r3,r5
- 4e63c: 1205c83a sub r2,r2,r8
- 4e640: 1200202c andhi r8,r2,128
- 4e644: 403e9a26 beq r8,zero,4e0b0 <__alt_data_end+0xfffdc0b0>
- 4e648: 3463c83a sub r17,r6,r17
- 4e64c: 28c5c83a sub r2,r5,r3
- 4e650: 344d803a cmpltu r6,r6,r17
- 4e654: 1187c83a sub r3,r2,r6
- 4e658: 3825883a mov r18,r7
- 4e65c: 003e3606 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e660: 0101ffc4 movi r4,2047
- 4e664: 493fc71e bne r9,r4,4e584 <__alt_data_end+0xfffdc584>
- 4e668: 2807883a mov r3,r5
- 4e66c: 3023883a mov r17,r6
- 4e670: 4821883a mov r16,r9
- 4e674: 003e3006 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e678: 10003626 beq r2,zero,4e754 <__subdf3+0x8a0>
- 4e67c: 2984b03a or r2,r5,r6
- 4e680: 10001726 beq r2,zero,4e6e0 <__subdf3+0x82c>
- 4e684: 1808d0fa srli r4,r3,3
- 4e688: 8822d0fa srli r17,r17,3
- 4e68c: 1806977a slli r3,r3,29
- 4e690: 2080022c andhi r2,r4,8
- 4e694: 1c62b03a or r17,r3,r17
- 4e698: 10000726 beq r2,zero,4e6b8 <__subdf3+0x804>
- 4e69c: 2812d0fa srli r9,r5,3
- 4e6a0: 4880022c andhi r2,r9,8
- 4e6a4: 1000041e bne r2,zero,4e6b8 <__subdf3+0x804>
- 4e6a8: 300cd0fa srli r6,r6,3
- 4e6ac: 2804977a slli r2,r5,29
- 4e6b0: 4809883a mov r4,r9
- 4e6b4: 11a2b03a or r17,r2,r6
- 4e6b8: 8806d77a srli r3,r17,29
- 4e6bc: 200890fa slli r4,r4,3
- 4e6c0: 882290fa slli r17,r17,3
- 4e6c4: 3825883a mov r18,r7
- 4e6c8: 1906b03a or r3,r3,r4
- 4e6cc: 0401ffc4 movi r16,2047
- 4e6d0: 003e1906 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e6d4: 000b883a mov r5,zero
- 4e6d8: 0005883a mov r2,zero
- 4e6dc: 003e2e06 br 4df98 <__alt_data_end+0xfffdbf98>
- 4e6e0: 0401ffc4 movi r16,2047
- 4e6e4: 003e1406 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e6e8: 0005883a mov r2,zero
- 4e6ec: 003f7506 br 4e4c4 <__alt_data_end+0xfffdc4c4>
- 4e6f0: 0005883a mov r2,zero
- 4e6f4: 0009883a mov r4,zero
- 4e6f8: 003e7806 br 4e0dc <__alt_data_end+0xfffdc0dc>
- 4e6fc: 123ff804 addi r8,r2,-32
- 4e700: 01000804 movi r4,32
- 4e704: 1a10d83a srl r8,r3,r8
- 4e708: 11002526 beq r2,r4,4e7a0 <__subdf3+0x8ec>
- 4e70c: 01001004 movi r4,64
- 4e710: 2085c83a sub r2,r4,r2
- 4e714: 1884983a sll r2,r3,r2
- 4e718: 1444b03a or r2,r2,r17
- 4e71c: 1004c03a cmpne r2,r2,zero
- 4e720: 40a2b03a or r17,r8,r2
- 4e724: 0005883a mov r2,zero
- 4e728: 003f1606 br 4e384 <__alt_data_end+0xfffdc384>
- 4e72c: 02000434 movhi r8,16
- 4e730: 0009883a mov r4,zero
- 4e734: 423fffc4 addi r8,r8,-1
- 4e738: 00bfffc4 movi r2,-1
- 4e73c: 0401ffc4 movi r16,2047
- 4e740: 003e6606 br 4e0dc <__alt_data_end+0xfffdc0dc>
- 4e744: 1c62b03a or r17,r3,r17
- 4e748: 8822c03a cmpne r17,r17,zero
- 4e74c: 0005883a mov r2,zero
- 4e750: 003f9906 br 4e5b8 <__alt_data_end+0xfffdc5b8>
- 4e754: 2807883a mov r3,r5
- 4e758: 3023883a mov r17,r6
- 4e75c: 0401ffc4 movi r16,2047
- 4e760: 003df506 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e764: 2807883a mov r3,r5
- 4e768: 3023883a mov r17,r6
- 4e76c: 003df206 br 4df38 <__alt_data_end+0xfffdbf38>
- 4e770: 123ff804 addi r8,r2,-32
- 4e774: 01000804 movi r4,32
- 4e778: 1a10d83a srl r8,r3,r8
- 4e77c: 11000a26 beq r2,r4,4e7a8 <__subdf3+0x8f4>
- 4e780: 01001004 movi r4,64
- 4e784: 2085c83a sub r2,r4,r2
- 4e788: 1884983a sll r2,r3,r2
- 4e78c: 1444b03a or r2,r2,r17
- 4e790: 1004c03a cmpne r2,r2,zero
- 4e794: 40a2b03a or r17,r8,r2
- 4e798: 0005883a mov r2,zero
- 4e79c: 003f8606 br 4e5b8 <__alt_data_end+0xfffdc5b8>
- 4e7a0: 0005883a mov r2,zero
- 4e7a4: 003fdc06 br 4e718 <__alt_data_end+0xfffdc718>
- 4e7a8: 0005883a mov r2,zero
- 4e7ac: 003ff706 br 4e78c <__alt_data_end+0xfffdc78c>
- 0004e7b0 <__floatunsidf>:
- 4e7b0: defffe04 addi sp,sp,-8
- 4e7b4: dc000015 stw r16,0(sp)
- 4e7b8: dfc00115 stw ra,4(sp)
- 4e7bc: 2021883a mov r16,r4
- 4e7c0: 20002226 beq r4,zero,4e84c <__floatunsidf+0x9c>
- 4e7c4: 0041efc0 call 41efc <__clzsi2>
- 4e7c8: 01010784 movi r4,1054
- 4e7cc: 2089c83a sub r4,r4,r2
- 4e7d0: 01810cc4 movi r6,1075
- 4e7d4: 310dc83a sub r6,r6,r4
- 4e7d8: 00c007c4 movi r3,31
- 4e7dc: 1980120e bge r3,r6,4e828 <__floatunsidf+0x78>
- 4e7e0: 00c104c4 movi r3,1043
- 4e7e4: 1907c83a sub r3,r3,r4
- 4e7e8: 80ca983a sll r5,r16,r3
- 4e7ec: 00800434 movhi r2,16
- 4e7f0: 10bfffc4 addi r2,r2,-1
- 4e7f4: 2101ffcc andi r4,r4,2047
- 4e7f8: 0021883a mov r16,zero
- 4e7fc: 288a703a and r5,r5,r2
- 4e800: 2008953a slli r4,r4,20
- 4e804: 00c00434 movhi r3,16
- 4e808: 18ffffc4 addi r3,r3,-1
- 4e80c: 28c6703a and r3,r5,r3
- 4e810: 8005883a mov r2,r16
- 4e814: 1906b03a or r3,r3,r4
- 4e818: dfc00117 ldw ra,4(sp)
- 4e81c: dc000017 ldw r16,0(sp)
- 4e820: dec00204 addi sp,sp,8
- 4e824: f800283a ret
- 4e828: 00c002c4 movi r3,11
- 4e82c: 188bc83a sub r5,r3,r2
- 4e830: 814ad83a srl r5,r16,r5
- 4e834: 00c00434 movhi r3,16
- 4e838: 18ffffc4 addi r3,r3,-1
- 4e83c: 81a0983a sll r16,r16,r6
- 4e840: 2101ffcc andi r4,r4,2047
- 4e844: 28ca703a and r5,r5,r3
- 4e848: 003fed06 br 4e800 <__alt_data_end+0xfffdc800>
- 4e84c: 0009883a mov r4,zero
- 4e850: 000b883a mov r5,zero
- 4e854: 003fea06 br 4e800 <__alt_data_end+0xfffdc800>
- 0004e858 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4e858: defffe04 addi sp,sp,-8
- 4e85c: dfc00115 stw ra,4(sp)
- 4e860: df000015 stw fp,0(sp)
- 4e864: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4e868: d0a00b17 ldw r2,-32724(gp)
- 4e86c: 10000326 beq r2,zero,4e87c <alt_get_errno+0x24>
- 4e870: d0a00b17 ldw r2,-32724(gp)
- 4e874: 103ee83a callr r2
- 4e878: 00000106 br 4e880 <alt_get_errno+0x28>
- 4e87c: d0a72104 addi r2,gp,-25468
- }
- 4e880: e037883a mov sp,fp
- 4e884: dfc00117 ldw ra,4(sp)
- 4e888: df000017 ldw fp,0(sp)
- 4e88c: dec00204 addi sp,sp,8
- 4e890: f800283a ret
- 0004e894 <close>:
- *
- * ALT_CLOSE is mapped onto the close() system call in alt_syscall.h
- */
-
- int ALT_CLOSE (int fildes)
- {
- 4e894: defffb04 addi sp,sp,-20
- 4e898: dfc00415 stw ra,16(sp)
- 4e89c: df000315 stw fp,12(sp)
- 4e8a0: df000304 addi fp,sp,12
- 4e8a4: e13fff15 stw r4,-4(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (fildes < 0) ? NULL : &alt_fd_list[fildes];
- 4e8a8: e0bfff17 ldw r2,-4(fp)
- 4e8ac: 10000816 blt r2,zero,4e8d0 <close+0x3c>
- 4e8b0: 01400304 movi r5,12
- 4e8b4: e13fff17 ldw r4,-4(fp)
- 4e8b8: 004c9f80 call 4c9f8 <__mulsi3>
- 4e8bc: 1007883a mov r3,r2
- 4e8c0: 00800174 movhi r2,5
- 4e8c4: 108bca04 addi r2,r2,12072
- 4e8c8: 1885883a add r2,r3,r2
- 4e8cc: 00000106 br 4e8d4 <close+0x40>
- 4e8d0: 0005883a mov r2,zero
- 4e8d4: e0bffd15 stw r2,-12(fp)
- if (fd)
- 4e8d8: e0bffd17 ldw r2,-12(fp)
- 4e8dc: 10001926 beq r2,zero,4e944 <close+0xb0>
- /*
- * If the associated file system/device has a close function, call it so
- * that any necessary cleanup code can run.
- */
- rval = (fd->dev->close) ? fd->dev->close(fd) : 0;
- 4e8e0: e0bffd17 ldw r2,-12(fp)
- 4e8e4: 10800017 ldw r2,0(r2)
- 4e8e8: 10800417 ldw r2,16(r2)
- 4e8ec: 10000626 beq r2,zero,4e908 <close+0x74>
- 4e8f0: e0bffd17 ldw r2,-12(fp)
- 4e8f4: 10800017 ldw r2,0(r2)
- 4e8f8: 10800417 ldw r2,16(r2)
- 4e8fc: e13ffd17 ldw r4,-12(fp)
- 4e900: 103ee83a callr r2
- 4e904: 00000106 br 4e90c <close+0x78>
- 4e908: 0005883a mov r2,zero
- 4e90c: e0bffe15 stw r2,-8(fp)
- /* Free the file descriptor structure and return. */
- alt_release_fd (fildes);
- 4e910: e13fff17 ldw r4,-4(fp)
- 4e914: 004ef7c0 call 4ef7c <alt_release_fd>
- if (rval < 0)
- 4e918: e0bffe17 ldw r2,-8(fp)
- 4e91c: 1000070e bge r2,zero,4e93c <close+0xa8>
- {
- ALT_ERRNO = -rval;
- 4e920: 004e8580 call 4e858 <alt_get_errno>
- 4e924: 1007883a mov r3,r2
- 4e928: e0bffe17 ldw r2,-8(fp)
- 4e92c: 0085c83a sub r2,zero,r2
- 4e930: 18800015 stw r2,0(r3)
- return -1;
- 4e934: 00bfffc4 movi r2,-1
- 4e938: 00000706 br 4e958 <close+0xc4>
- }
- return 0;
- 4e93c: 0005883a mov r2,zero
- 4e940: 00000506 br 4e958 <close+0xc4>
- }
- else
- {
- ALT_ERRNO = EBADFD;
- 4e944: 004e8580 call 4e858 <alt_get_errno>
- 4e948: 1007883a mov r3,r2
- 4e94c: 00801444 movi r2,81
- 4e950: 18800015 stw r2,0(r3)
- return -1;
- 4e954: 00bfffc4 movi r2,-1
- }
- }
- 4e958: e037883a mov sp,fp
- 4e95c: dfc00117 ldw ra,4(sp)
- 4e960: df000017 ldw fp,0(sp)
- 4e964: dec00204 addi sp,sp,8
- 4e968: f800283a ret
- 0004e96c <alt_dev_null_write>:
- * by the alt_dev_null device. It simple discards all data passed to it, and
- * indicates that the data has been successfully transmitted.
- */
- static int alt_dev_null_write (alt_fd* fd, const char* ptr, int len)
- {
- 4e96c: defffc04 addi sp,sp,-16
- 4e970: df000315 stw fp,12(sp)
- 4e974: df000304 addi fp,sp,12
- 4e978: e13ffd15 stw r4,-12(fp)
- 4e97c: e17ffe15 stw r5,-8(fp)
- 4e980: e1bfff15 stw r6,-4(fp)
- return len;
- 4e984: e0bfff17 ldw r2,-4(fp)
- }
- 4e988: e037883a mov sp,fp
- 4e98c: df000017 ldw fp,0(sp)
- 4e990: dec00104 addi sp,sp,4
- 4e994: f800283a ret
- 0004e998 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4e998: defffe04 addi sp,sp,-8
- 4e99c: dfc00115 stw ra,4(sp)
- 4e9a0: df000015 stw fp,0(sp)
- 4e9a4: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4e9a8: d0a00b17 ldw r2,-32724(gp)
- 4e9ac: 10000326 beq r2,zero,4e9bc <alt_get_errno+0x24>
- 4e9b0: d0a00b17 ldw r2,-32724(gp)
- 4e9b4: 103ee83a callr r2
- 4e9b8: 00000106 br 4e9c0 <alt_get_errno+0x28>
- 4e9bc: d0a72104 addi r2,gp,-25468
- }
- 4e9c0: e037883a mov sp,fp
- 4e9c4: dfc00117 ldw ra,4(sp)
- 4e9c8: df000017 ldw fp,0(sp)
- 4e9cc: dec00204 addi sp,sp,8
- 4e9d0: f800283a ret
- 0004e9d4 <fstat>:
- }
- #else /* !ALT_USE_DIRECT_DRIVERS */
- int ALT_FSTAT (int file, struct stat *st)
- {
- 4e9d4: defffb04 addi sp,sp,-20
- 4e9d8: dfc00415 stw ra,16(sp)
- 4e9dc: df000315 stw fp,12(sp)
- 4e9e0: df000304 addi fp,sp,12
- 4e9e4: e13ffe15 stw r4,-8(fp)
- 4e9e8: e17fff15 stw r5,-4(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (file < 0) ? NULL : &alt_fd_list[file];
- 4e9ec: e0bffe17 ldw r2,-8(fp)
- 4e9f0: 10000816 blt r2,zero,4ea14 <fstat+0x40>
- 4e9f4: 01400304 movi r5,12
- 4e9f8: e13ffe17 ldw r4,-8(fp)
- 4e9fc: 004c9f80 call 4c9f8 <__mulsi3>
- 4ea00: 1007883a mov r3,r2
- 4ea04: 00800174 movhi r2,5
- 4ea08: 108bca04 addi r2,r2,12072
- 4ea0c: 1885883a add r2,r3,r2
- 4ea10: 00000106 br 4ea18 <fstat+0x44>
- 4ea14: 0005883a mov r2,zero
- 4ea18: e0bffd15 stw r2,-12(fp)
-
- if (fd)
- 4ea1c: e0bffd17 ldw r2,-12(fp)
- 4ea20: 10001026 beq r2,zero,4ea64 <fstat+0x90>
- {
- /* Call the drivers fstat() function to fill out the "st" structure. */
- if (fd->dev->fstat)
- 4ea24: e0bffd17 ldw r2,-12(fp)
- 4ea28: 10800017 ldw r2,0(r2)
- 4ea2c: 10800817 ldw r2,32(r2)
- 4ea30: 10000726 beq r2,zero,4ea50 <fstat+0x7c>
- {
- return fd->dev->fstat(fd, st);
- 4ea34: e0bffd17 ldw r2,-12(fp)
- 4ea38: 10800017 ldw r2,0(r2)
- 4ea3c: 10800817 ldw r2,32(r2)
- 4ea40: e17fff17 ldw r5,-4(fp)
- 4ea44: e13ffd17 ldw r4,-12(fp)
- 4ea48: 103ee83a callr r2
- 4ea4c: 00000a06 br 4ea78 <fstat+0xa4>
- * device.
- */
-
- else
- {
- st->st_mode = _IFCHR;
- 4ea50: e0bfff17 ldw r2,-4(fp)
- 4ea54: 00c80004 movi r3,8192
- 4ea58: 10c00115 stw r3,4(r2)
- return 0;
- 4ea5c: 0005883a mov r2,zero
- 4ea60: 00000506 br 4ea78 <fstat+0xa4>
- }
- }
- else
- {
- ALT_ERRNO = EBADFD;
- 4ea64: 004e9980 call 4e998 <alt_get_errno>
- 4ea68: 1007883a mov r3,r2
- 4ea6c: 00801444 movi r2,81
- 4ea70: 18800015 stw r2,0(r3)
- return -1;
- 4ea74: 00bfffc4 movi r2,-1
- }
- }
- 4ea78: e037883a mov sp,fp
- 4ea7c: dfc00117 ldw ra,4(sp)
- 4ea80: df000017 ldw fp,0(sp)
- 4ea84: dec00204 addi sp,sp,8
- 4ea88: f800283a ret
- 0004ea8c <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4ea8c: defffe04 addi sp,sp,-8
- 4ea90: dfc00115 stw ra,4(sp)
- 4ea94: df000015 stw fp,0(sp)
- 4ea98: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4ea9c: d0a00b17 ldw r2,-32724(gp)
- 4eaa0: 10000326 beq r2,zero,4eab0 <alt_get_errno+0x24>
- 4eaa4: d0a00b17 ldw r2,-32724(gp)
- 4eaa8: 103ee83a callr r2
- 4eaac: 00000106 br 4eab4 <alt_get_errno+0x28>
- 4eab0: d0a72104 addi r2,gp,-25468
- }
- 4eab4: e037883a mov sp,fp
- 4eab8: dfc00117 ldw ra,4(sp)
- 4eabc: df000017 ldw fp,0(sp)
- 4eac0: dec00204 addi sp,sp,8
- 4eac4: f800283a ret
- 0004eac8 <isatty>:
- *
- * ALT_ISATTY is mapped onto the isatty() system call in alt_syscall.h
- */
-
- int ALT_ISATTY (int file)
- {
- 4eac8: deffed04 addi sp,sp,-76
- 4eacc: dfc01215 stw ra,72(sp)
- 4ead0: df001115 stw fp,68(sp)
- 4ead4: df001104 addi fp,sp,68
- 4ead8: e13fff15 stw r4,-4(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (file < 0) ? NULL : &alt_fd_list[file];
- 4eadc: e0bfff17 ldw r2,-4(fp)
- 4eae0: 10000816 blt r2,zero,4eb04 <isatty+0x3c>
- 4eae4: 01400304 movi r5,12
- 4eae8: e13fff17 ldw r4,-4(fp)
- 4eaec: 004c9f80 call 4c9f8 <__mulsi3>
- 4eaf0: 1007883a mov r3,r2
- 4eaf4: 00800174 movhi r2,5
- 4eaf8: 108bca04 addi r2,r2,12072
- 4eafc: 1885883a add r2,r3,r2
- 4eb00: 00000106 br 4eb08 <isatty+0x40>
- 4eb04: 0005883a mov r2,zero
- 4eb08: e0bfef15 stw r2,-68(fp)
-
- if (fd)
- 4eb0c: e0bfef17 ldw r2,-68(fp)
- 4eb10: 10000e26 beq r2,zero,4eb4c <isatty+0x84>
- /*
- * If a device driver does not provide an fstat() function, then it is
- * treated as a terminal device by default.
- */
- if (!fd->dev->fstat)
- 4eb14: e0bfef17 ldw r2,-68(fp)
- 4eb18: 10800017 ldw r2,0(r2)
- 4eb1c: 10800817 ldw r2,32(r2)
- 4eb20: 1000021e bne r2,zero,4eb2c <isatty+0x64>
- {
- return 1;
- 4eb24: 00800044 movi r2,1
- 4eb28: 00000d06 br 4eb60 <isatty+0x98>
- * this is called so that the device can identify itself.
- */
- else
- {
- fstat (file, &stat);
- 4eb2c: e0bff004 addi r2,fp,-64
- 4eb30: 100b883a mov r5,r2
- 4eb34: e13fff17 ldw r4,-4(fp)
- 4eb38: 004e9d40 call 4e9d4 <fstat>
- return (stat.st_mode == _IFCHR) ? 1 : 0;
- 4eb3c: e0bff117 ldw r2,-60(fp)
- 4eb40: 10880020 cmpeqi r2,r2,8192
- 4eb44: 10803fcc andi r2,r2,255
- 4eb48: 00000506 br 4eb60 <isatty+0x98>
- }
- }
- else
- {
- ALT_ERRNO = EBADFD;
- 4eb4c: 004ea8c0 call 4ea8c <alt_get_errno>
- 4eb50: 1007883a mov r3,r2
- 4eb54: 00801444 movi r2,81
- 4eb58: 18800015 stw r2,0(r3)
- return 0;
- 4eb5c: 0005883a mov r2,zero
- }
- }
- 4eb60: e037883a mov sp,fp
- 4eb64: dfc00117 ldw ra,4(sp)
- 4eb68: df000017 ldw fp,0(sp)
- 4eb6c: dec00204 addi sp,sp,8
- 4eb70: f800283a ret
- 0004eb74 <alt_load_section>:
- */
- static void ALT_INLINE alt_load_section (alt_u32* from,
- alt_u32* to,
- alt_u32* end)
- {
- 4eb74: defffc04 addi sp,sp,-16
- 4eb78: df000315 stw fp,12(sp)
- 4eb7c: df000304 addi fp,sp,12
- 4eb80: e13ffd15 stw r4,-12(fp)
- 4eb84: e17ffe15 stw r5,-8(fp)
- 4eb88: e1bfff15 stw r6,-4(fp)
- if (to != from)
- 4eb8c: e0fffe17 ldw r3,-8(fp)
- 4eb90: e0bffd17 ldw r2,-12(fp)
- 4eb94: 18800c26 beq r3,r2,4ebc8 <alt_load_section+0x54>
- {
- while( to != end )
- 4eb98: 00000806 br 4ebbc <alt_load_section+0x48>
- {
- *to++ = *from++;
- 4eb9c: e0bffe17 ldw r2,-8(fp)
- 4eba0: 10c00104 addi r3,r2,4
- 4eba4: e0fffe15 stw r3,-8(fp)
- 4eba8: e0fffd17 ldw r3,-12(fp)
- 4ebac: 19000104 addi r4,r3,4
- 4ebb0: e13ffd15 stw r4,-12(fp)
- 4ebb4: 18c00017 ldw r3,0(r3)
- 4ebb8: 10c00015 stw r3,0(r2)
- alt_u32* to,
- alt_u32* end)
- {
- if (to != from)
- {
- while( to != end )
- 4ebbc: e0fffe17 ldw r3,-8(fp)
- 4ebc0: e0bfff17 ldw r2,-4(fp)
- 4ebc4: 18bff51e bne r3,r2,4eb9c <__alt_data_end+0xfffdcb9c>
- {
- *to++ = *from++;
- }
- }
- }
- 4ebc8: 0001883a nop
- 4ebcc: e037883a mov sp,fp
- 4ebd0: df000017 ldw fp,0(sp)
- 4ebd4: dec00104 addi sp,sp,4
- 4ebd8: f800283a ret
- 0004ebdc <alt_load>:
- * there is no bootloader, so this application is responsible for loading to
- * RAM any sections that are required.
- */
- void alt_load (void)
- {
- 4ebdc: defffe04 addi sp,sp,-8
- 4ebe0: dfc00115 stw ra,4(sp)
- 4ebe4: df000015 stw fp,0(sp)
- 4ebe8: d839883a mov fp,sp
- /*
- * Copy the .rwdata section.
- */
- alt_load_section (&__flash_rwdata_start,
- 4ebec: 01800174 movhi r6,5
- 4ebf0: 31909c04 addi r6,r6,17008
- 4ebf4: 01400174 movhi r5,5
- 4ebf8: 29499704 addi r5,r5,9820
- 4ebfc: 01000174 movhi r4,5
- 4ec00: 21109c04 addi r4,r4,17008
- 4ec04: 004eb740 call 4eb74 <alt_load_section>
- /*
- * Copy the exception handler.
- */
- alt_load_section (&__flash_exceptions_start,
- 4ec08: 01800134 movhi r6,4
- 4ec0c: 31808c04 addi r6,r6,560
- 4ec10: 01400134 movhi r5,4
- 4ec14: 29400804 addi r5,r5,32
- 4ec18: 01000134 movhi r4,4
- 4ec1c: 21000804 addi r4,r4,32
- 4ec20: 004eb740 call 4eb74 <alt_load_section>
- /*
- * Copy the .rodata section.
- */
- alt_load_section (&__flash_rodata_start,
- 4ec24: 01800174 movhi r6,5
- 4ec28: 31899704 addi r6,r6,9820
- 4ec2c: 01400174 movhi r5,5
- 4ec30: 29480e04 addi r5,r5,8248
- 4ec34: 01000174 movhi r4,5
- 4ec38: 21080e04 addi r4,r4,8248
- 4ec3c: 004eb740 call 4eb74 <alt_load_section>
-
- /*
- * Now ensure that the caches are in synch.
- */
-
- alt_dcache_flush_all();
- 4ec40: 0050df80 call 50df8 <alt_dcache_flush_all>
- alt_icache_flush_all();
- 4ec44: 0050fb80 call 50fb8 <alt_icache_flush_all>
- }
- 4ec48: 0001883a nop
- 4ec4c: e037883a mov sp,fp
- 4ec50: dfc00117 ldw ra,4(sp)
- 4ec54: df000017 ldw fp,0(sp)
- 4ec58: dec00204 addi sp,sp,8
- 4ec5c: f800283a ret
- 0004ec60 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4ec60: defffe04 addi sp,sp,-8
- 4ec64: dfc00115 stw ra,4(sp)
- 4ec68: df000015 stw fp,0(sp)
- 4ec6c: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4ec70: d0a00b17 ldw r2,-32724(gp)
- 4ec74: 10000326 beq r2,zero,4ec84 <alt_get_errno+0x24>
- 4ec78: d0a00b17 ldw r2,-32724(gp)
- 4ec7c: 103ee83a callr r2
- 4ec80: 00000106 br 4ec88 <alt_get_errno+0x28>
- 4ec84: d0a72104 addi r2,gp,-25468
- }
- 4ec88: e037883a mov sp,fp
- 4ec8c: dfc00117 ldw ra,4(sp)
- 4ec90: df000017 ldw fp,0(sp)
- 4ec94: dec00204 addi sp,sp,8
- 4ec98: f800283a ret
- 0004ec9c <lseek>:
- * ALT_LSEEK is mapped onto the lseek() system call in alt_syscall.h
- *
- */
- off_t ALT_LSEEK (int file, off_t ptr, int dir)
- {
- 4ec9c: defff904 addi sp,sp,-28
- 4eca0: dfc00615 stw ra,24(sp)
- 4eca4: df000515 stw fp,20(sp)
- 4eca8: df000504 addi fp,sp,20
- 4ecac: e13ffd15 stw r4,-12(fp)
- 4ecb0: e17ffe15 stw r5,-8(fp)
- 4ecb4: e1bfff15 stw r6,-4(fp)
- alt_fd* fd;
- off_t rc = 0;
- 4ecb8: e03ffb15 stw zero,-20(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (file < 0) ? NULL : &alt_fd_list[file];
- 4ecbc: e0bffd17 ldw r2,-12(fp)
- 4ecc0: 10000816 blt r2,zero,4ece4 <lseek+0x48>
- 4ecc4: 01400304 movi r5,12
- 4ecc8: e13ffd17 ldw r4,-12(fp)
- 4eccc: 004c9f80 call 4c9f8 <__mulsi3>
- 4ecd0: 1007883a mov r3,r2
- 4ecd4: 00800174 movhi r2,5
- 4ecd8: 108bca04 addi r2,r2,12072
- 4ecdc: 1885883a add r2,r3,r2
- 4ece0: 00000106 br 4ece8 <lseek+0x4c>
- 4ece4: 0005883a mov r2,zero
- 4ece8: e0bffc15 stw r2,-16(fp)
-
- if (fd)
- 4ecec: e0bffc17 ldw r2,-16(fp)
- 4ecf0: 10001026 beq r2,zero,4ed34 <lseek+0x98>
- /*
- * If the device driver provides an implementation of the lseek() function,
- * then call that to process the request.
- */
-
- if (fd->dev->lseek)
- 4ecf4: e0bffc17 ldw r2,-16(fp)
- 4ecf8: 10800017 ldw r2,0(r2)
- 4ecfc: 10800717 ldw r2,28(r2)
- 4ed00: 10000926 beq r2,zero,4ed28 <lseek+0x8c>
- {
- rc = fd->dev->lseek(fd, ptr, dir);
- 4ed04: e0bffc17 ldw r2,-16(fp)
- 4ed08: 10800017 ldw r2,0(r2)
- 4ed0c: 10800717 ldw r2,28(r2)
- 4ed10: e1bfff17 ldw r6,-4(fp)
- 4ed14: e17ffe17 ldw r5,-8(fp)
- 4ed18: e13ffc17 ldw r4,-16(fp)
- 4ed1c: 103ee83a callr r2
- 4ed20: e0bffb15 stw r2,-20(fp)
- 4ed24: 00000506 br 4ed3c <lseek+0xa0>
- * Otherwise return an error.
- */
- else
- {
- rc = -ENOTSUP;
- 4ed28: 00bfde84 movi r2,-134
- 4ed2c: e0bffb15 stw r2,-20(fp)
- 4ed30: 00000206 br 4ed3c <lseek+0xa0>
- }
- }
- else
- {
- rc = -EBADFD;
- 4ed34: 00bfebc4 movi r2,-81
- 4ed38: e0bffb15 stw r2,-20(fp)
- }
- if (rc < 0)
- 4ed3c: e0bffb17 ldw r2,-20(fp)
- 4ed40: 1000070e bge r2,zero,4ed60 <lseek+0xc4>
- {
- ALT_ERRNO = -rc;
- 4ed44: 004ec600 call 4ec60 <alt_get_errno>
- 4ed48: 1007883a mov r3,r2
- 4ed4c: e0bffb17 ldw r2,-20(fp)
- 4ed50: 0085c83a sub r2,zero,r2
- 4ed54: 18800015 stw r2,0(r3)
- rc = -1;
- 4ed58: 00bfffc4 movi r2,-1
- 4ed5c: e0bffb15 stw r2,-20(fp)
- }
- return rc;
- 4ed60: e0bffb17 ldw r2,-20(fp)
- }
- 4ed64: e037883a mov sp,fp
- 4ed68: dfc00117 ldw ra,4(sp)
- 4ed6c: df000017 ldw fp,0(sp)
- 4ed70: dec00204 addi sp,sp,8
- 4ed74: f800283a ret
- 0004ed78 <alt_main>:
- * devices/filesystems/components in the system; and call the entry point for
- * the users application, i.e. main().
- */
- void alt_main (void)
- {
- 4ed78: defffd04 addi sp,sp,-12
- 4ed7c: dfc00215 stw ra,8(sp)
- 4ed80: df000115 stw fp,4(sp)
- 4ed84: df000104 addi fp,sp,4
- #endif
- /* ALT LOG - please see HAL/sys/alt_log_printf.h for details */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Entering alt_main, calling alt_irq_init.\r\n");
- /* Initialize the interrupt controller. */
- alt_irq_init (NULL);
- 4ed88: 0009883a mov r4,zero
- 4ed8c: 004f2200 call 4f220 <alt_irq_init>
- /* Initialize the operating system */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Done alt_irq_init, calling alt_os_init.\r\n");
- ALT_OS_INIT();
- 4ed90: 0001883a nop
- ALT_LOG_PRINT_BOOT("[alt_main.c] Done OS Init, calling alt_sem_create.\r\n");
- ALT_SEM_CREATE (&alt_fd_list_lock, 1);
- /* Initialize the device drivers/software components. */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Calling alt_sys_init.\r\n");
- alt_sys_init();
- 4ed94: 004f2580 call 4f258 <alt_sys_init>
- * devices be present (not equal to /dev/null) and if direct drivers
- * aren't being used.
- */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Redirecting IO.\r\n");
- alt_io_redirect(ALT_STDOUT, ALT_STDIN, ALT_STDERR);
- 4ed98: 01800174 movhi r6,5
- 4ed9c: 3188eb04 addi r6,r6,9132
- 4eda0: 01400174 movhi r5,5
- 4eda4: 2948eb04 addi r5,r5,9132
- 4eda8: 01000174 movhi r4,5
- 4edac: 2108eb04 addi r4,r4,9132
- 4edb0: 005135c0 call 5135c <alt_io_redirect>
- /*
- * Call the C++ constructors
- */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Calling C++ constructors.\r\n");
- _do_ctors ();
- 4edb4: 0050ef80 call 50ef8 <_do_ctors>
- * redefined as _exit()). This is in the interest of reducing code footprint,
- * in that the atexit() overhead is removed when it's not needed.
- */
- ALT_LOG_PRINT_BOOT("[alt_main.c] Calling atexit.\r\n");
- atexit (_do_dtors);
- 4edb8: 01000174 movhi r4,5
- 4edbc: 2103d604 addi r4,r4,3928
- 4edc0: 0051ca40 call 51ca4 <atexit>
- ALT_LOG_PRINT_BOOT("[alt_main.c] Calling main.\r\n");
- #ifdef ALT_NO_EXIT
- main (alt_argc, alt_argv, alt_envp);
- #else
- result = main (alt_argc, alt_argv, alt_envp);
- 4edc4: d0a72217 ldw r2,-25464(gp)
- 4edc8: d0e72317 ldw r3,-25460(gp)
- 4edcc: d1272417 ldw r4,-25456(gp)
- 4edd0: 200d883a mov r6,r4
- 4edd4: 180b883a mov r5,r3
- 4edd8: 1009883a mov r4,r2
- 4eddc: 0040f980 call 40f98 <main>
- 4ede0: e0bfff15 stw r2,-4(fp)
- close(STDOUT_FILENO);
- 4ede4: 01000044 movi r4,1
- 4ede8: 004e8940 call 4e894 <close>
- exit (result);
- 4edec: e13fff17 ldw r4,-4(fp)
- 4edf0: 0051cb80 call 51cb8 <exit>
- 0004edf4 <__malloc_lock>:
- * configuration is single threaded, so there is nothing to do here. Note that
- * this requires that malloc is never called by an interrupt service routine.
- */
- void __malloc_lock ( struct _reent *_r )
- {
- 4edf4: defffe04 addi sp,sp,-8
- 4edf8: df000115 stw fp,4(sp)
- 4edfc: df000104 addi fp,sp,4
- 4ee00: e13fff15 stw r4,-4(fp)
- }
- 4ee04: 0001883a nop
- 4ee08: e037883a mov sp,fp
- 4ee0c: df000017 ldw fp,0(sp)
- 4ee10: dec00104 addi sp,sp,4
- 4ee14: f800283a ret
- 0004ee18 <__malloc_unlock>:
- /*
- *
- */
- void __malloc_unlock ( struct _reent *_r )
- {
- 4ee18: defffe04 addi sp,sp,-8
- 4ee1c: df000115 stw fp,4(sp)
- 4ee20: df000104 addi fp,sp,4
- 4ee24: e13fff15 stw r4,-4(fp)
- }
- 4ee28: 0001883a nop
- 4ee2c: e037883a mov sp,fp
- 4ee30: df000017 ldw fp,0(sp)
- 4ee34: dec00104 addi sp,sp,4
- 4ee38: f800283a ret
- 0004ee3c <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4ee3c: defffe04 addi sp,sp,-8
- 4ee40: dfc00115 stw ra,4(sp)
- 4ee44: df000015 stw fp,0(sp)
- 4ee48: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4ee4c: d0a00b17 ldw r2,-32724(gp)
- 4ee50: 10000326 beq r2,zero,4ee60 <alt_get_errno+0x24>
- 4ee54: d0a00b17 ldw r2,-32724(gp)
- 4ee58: 103ee83a callr r2
- 4ee5c: 00000106 br 4ee64 <alt_get_errno+0x28>
- 4ee60: d0a72104 addi r2,gp,-25468
- }
- 4ee64: e037883a mov sp,fp
- 4ee68: dfc00117 ldw ra,4(sp)
- 4ee6c: df000017 ldw fp,0(sp)
- 4ee70: dec00204 addi sp,sp,8
- 4ee74: f800283a ret
- 0004ee78 <read>:
- }
- #else /* !ALT_USE_DIRECT_DRIVERS */
- int ALT_READ (int file, void *ptr, size_t len)
- {
- 4ee78: defff904 addi sp,sp,-28
- 4ee7c: dfc00615 stw ra,24(sp)
- 4ee80: df000515 stw fp,20(sp)
- 4ee84: df000504 addi fp,sp,20
- 4ee88: e13ffd15 stw r4,-12(fp)
- 4ee8c: e17ffe15 stw r5,-8(fp)
- 4ee90: e1bfff15 stw r6,-4(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (file < 0) ? NULL : &alt_fd_list[file];
- 4ee94: e0bffd17 ldw r2,-12(fp)
- 4ee98: 10000816 blt r2,zero,4eebc <read+0x44>
- 4ee9c: 01400304 movi r5,12
- 4eea0: e13ffd17 ldw r4,-12(fp)
- 4eea4: 004c9f80 call 4c9f8 <__mulsi3>
- 4eea8: 1007883a mov r3,r2
- 4eeac: 00800174 movhi r2,5
- 4eeb0: 108bca04 addi r2,r2,12072
- 4eeb4: 1885883a add r2,r3,r2
- 4eeb8: 00000106 br 4eec0 <read+0x48>
- 4eebc: 0005883a mov r2,zero
- 4eec0: e0bffb15 stw r2,-20(fp)
-
- if (fd)
- 4eec4: e0bffb17 ldw r2,-20(fp)
- 4eec8: 10002226 beq r2,zero,4ef54 <read+0xdc>
- * If the file has not been opened with read access, or if the driver does
- * not provide an implementation of read(), generate an error. Otherwise
- * call the drivers read() function to process the request.
- */
- if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) &&
- 4eecc: e0bffb17 ldw r2,-20(fp)
- 4eed0: 10800217 ldw r2,8(r2)
- 4eed4: 108000cc andi r2,r2,3
- 4eed8: 10800060 cmpeqi r2,r2,1
- 4eedc: 1000181e bne r2,zero,4ef40 <read+0xc8>
- (fd->dev->read))
- 4eee0: e0bffb17 ldw r2,-20(fp)
- 4eee4: 10800017 ldw r2,0(r2)
- 4eee8: 10800517 ldw r2,20(r2)
- * If the file has not been opened with read access, or if the driver does
- * not provide an implementation of read(), generate an error. Otherwise
- * call the drivers read() function to process the request.
- */
- if (((fd->fd_flags & O_ACCMODE) != O_WRONLY) &&
- 4eeec: 10001426 beq r2,zero,4ef40 <read+0xc8>
- (fd->dev->read))
- {
- if ((rval = fd->dev->read(fd, ptr, len)) < 0)
- 4eef0: e0bffb17 ldw r2,-20(fp)
- 4eef4: 10800017 ldw r2,0(r2)
- 4eef8: 10800517 ldw r2,20(r2)
- 4eefc: e0ffff17 ldw r3,-4(fp)
- 4ef00: 180d883a mov r6,r3
- 4ef04: e17ffe17 ldw r5,-8(fp)
- 4ef08: e13ffb17 ldw r4,-20(fp)
- 4ef0c: 103ee83a callr r2
- 4ef10: e0bffc15 stw r2,-16(fp)
- 4ef14: e0bffc17 ldw r2,-16(fp)
- 4ef18: 1000070e bge r2,zero,4ef38 <read+0xc0>
- {
- ALT_ERRNO = -rval;
- 4ef1c: 004ee3c0 call 4ee3c <alt_get_errno>
- 4ef20: 1007883a mov r3,r2
- 4ef24: e0bffc17 ldw r2,-16(fp)
- 4ef28: 0085c83a sub r2,zero,r2
- 4ef2c: 18800015 stw r2,0(r3)
- return -1;
- 4ef30: 00bfffc4 movi r2,-1
- 4ef34: 00000c06 br 4ef68 <read+0xf0>
- }
- return rval;
- 4ef38: e0bffc17 ldw r2,-16(fp)
- 4ef3c: 00000a06 br 4ef68 <read+0xf0>
- }
- else
- {
- ALT_ERRNO = EACCES;
- 4ef40: 004ee3c0 call 4ee3c <alt_get_errno>
- 4ef44: 1007883a mov r3,r2
- 4ef48: 00800344 movi r2,13
- 4ef4c: 18800015 stw r2,0(r3)
- 4ef50: 00000406 br 4ef64 <read+0xec>
- }
- }
- else
- {
- ALT_ERRNO = EBADFD;
- 4ef54: 004ee3c0 call 4ee3c <alt_get_errno>
- 4ef58: 1007883a mov r3,r2
- 4ef5c: 00801444 movi r2,81
- 4ef60: 18800015 stw r2,0(r3)
- }
- return -1;
- 4ef64: 00bfffc4 movi r2,-1
- }
- 4ef68: e037883a mov sp,fp
- 4ef6c: dfc00117 ldw ra,4(sp)
- 4ef70: df000017 ldw fp,0(sp)
- 4ef74: dec00204 addi sp,sp,8
- 4ef78: f800283a ret
- 0004ef7c <alt_release_fd>:
- * File descriptors correcponding to standard in, standard out and standard
- * error cannont be released backed to the pool. They are always reserved.
- */
- void alt_release_fd (int fd)
- {
- 4ef7c: defffc04 addi sp,sp,-16
- 4ef80: dfc00315 stw ra,12(sp)
- 4ef84: df000215 stw fp,8(sp)
- 4ef88: dc000115 stw r16,4(sp)
- 4ef8c: df000204 addi fp,sp,8
- 4ef90: e13ffe15 stw r4,-8(fp)
- if (fd > 2)
- 4ef94: e0bffe17 ldw r2,-8(fp)
- 4ef98: 108000d0 cmplti r2,r2,3
- 4ef9c: 1000111e bne r2,zero,4efe4 <alt_release_fd+0x68>
- {
- alt_fd_list[fd].fd_flags = 0;
- 4efa0: 04000174 movhi r16,5
- 4efa4: 840bca04 addi r16,r16,12072
- 4efa8: e0bffe17 ldw r2,-8(fp)
- 4efac: 01400304 movi r5,12
- 4efb0: 1009883a mov r4,r2
- 4efb4: 004c9f80 call 4c9f8 <__mulsi3>
- 4efb8: 8085883a add r2,r16,r2
- 4efbc: 10800204 addi r2,r2,8
- 4efc0: 10000015 stw zero,0(r2)
- alt_fd_list[fd].dev = 0;
- 4efc4: 04000174 movhi r16,5
- 4efc8: 840bca04 addi r16,r16,12072
- 4efcc: e0bffe17 ldw r2,-8(fp)
- 4efd0: 01400304 movi r5,12
- 4efd4: 1009883a mov r4,r2
- 4efd8: 004c9f80 call 4c9f8 <__mulsi3>
- 4efdc: 8085883a add r2,r16,r2
- 4efe0: 10000015 stw zero,0(r2)
- }
- }
- 4efe4: 0001883a nop
- 4efe8: e6ffff04 addi sp,fp,-4
- 4efec: dfc00217 ldw ra,8(sp)
- 4eff0: df000117 ldw fp,4(sp)
- 4eff4: dc000017 ldw r16,0(sp)
- 4eff8: dec00304 addi sp,sp,12
- 4effc: f800283a ret
- 0004f000 <sbrk>:
- #endif
-
- caddr_t ALT_SBRK (int incr) __attribute__ ((no_instrument_function ));
- caddr_t ALT_SBRK (int incr)
- {
- 4f000: defff904 addi sp,sp,-28
- 4f004: df000615 stw fp,24(sp)
- 4f008: df000604 addi fp,sp,24
- 4f00c: e13fff15 stw r4,-4(fp)
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 4f010: 0005303a rdctl r2,status
- 4f014: e0bffe15 stw r2,-8(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 4f018: e0fffe17 ldw r3,-8(fp)
- 4f01c: 00bfff84 movi r2,-2
- 4f020: 1884703a and r2,r3,r2
- 4f024: 1001703a wrctl status,r2
-
- return context;
- 4f028: e0bffe17 ldw r2,-8(fp)
- alt_irq_context context;
- char *prev_heap_end;
- context = alt_irq_disable_all();
- 4f02c: e0bffb15 stw r2,-20(fp)
- /* Always return data aligned on a word boundary */
- heap_end = (char *)(((unsigned int)heap_end + 3) & ~3);
- 4f030: d0a00c17 ldw r2,-32720(gp)
- 4f034: 10c000c4 addi r3,r2,3
- 4f038: 00bfff04 movi r2,-4
- 4f03c: 1884703a and r2,r3,r2
- 4f040: d0a00c15 stw r2,-32720(gp)
- if (((heap_end + incr) - __alt_heap_start) > ALT_MAX_HEAP_BYTES) {
- alt_irq_enable_all(context);
- return (caddr_t)-1;
- }
- #else
- if ((heap_end + incr) > __alt_heap_limit) {
- 4f044: d0e00c17 ldw r3,-32720(gp)
- 4f048: e0bfff17 ldw r2,-4(fp)
- 4f04c: 1887883a add r3,r3,r2
- 4f050: 008001f4 movhi r2,7
- 4f054: 10880004 addi r2,r2,8192
- 4f058: 10c0062e bgeu r2,r3,4f074 <sbrk+0x74>
- 4f05c: e0bffb17 ldw r2,-20(fp)
- 4f060: e0bffa15 stw r2,-24(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 4f064: e0bffa17 ldw r2,-24(fp)
- 4f068: 1001703a wrctl status,r2
- alt_irq_enable_all(context);
- return (caddr_t)-1;
- 4f06c: 00bfffc4 movi r2,-1
- 4f070: 00000b06 br 4f0a0 <sbrk+0xa0>
- }
- #endif
- prev_heap_end = heap_end;
- 4f074: d0a00c17 ldw r2,-32720(gp)
- 4f078: e0bffd15 stw r2,-12(fp)
- heap_end += incr;
- 4f07c: d0e00c17 ldw r3,-32720(gp)
- 4f080: e0bfff17 ldw r2,-4(fp)
- 4f084: 1885883a add r2,r3,r2
- 4f088: d0a00c15 stw r2,-32720(gp)
- 4f08c: e0bffb17 ldw r2,-20(fp)
- 4f090: e0bffc15 stw r2,-16(fp)
- 4f094: e0bffc17 ldw r2,-16(fp)
- 4f098: 1001703a wrctl status,r2
- #endif
- alt_irq_enable_all(context);
- return (caddr_t) prev_heap_end;
- 4f09c: e0bffd17 ldw r2,-12(fp)
- }
- 4f0a0: e037883a mov sp,fp
- 4f0a4: df000017 ldw fp,0(sp)
- 4f0a8: dec00104 addi sp,sp,4
- 4f0ac: f800283a ret
- 0004f0b0 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 4f0b0: defffe04 addi sp,sp,-8
- 4f0b4: dfc00115 stw ra,4(sp)
- 4f0b8: df000015 stw fp,0(sp)
- 4f0bc: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 4f0c0: d0a00b17 ldw r2,-32724(gp)
- 4f0c4: 10000326 beq r2,zero,4f0d4 <alt_get_errno+0x24>
- 4f0c8: d0a00b17 ldw r2,-32724(gp)
- 4f0cc: 103ee83a callr r2
- 4f0d0: 00000106 br 4f0d8 <alt_get_errno+0x28>
- 4f0d4: d0a72104 addi r2,gp,-25468
- }
- 4f0d8: e037883a mov sp,fp
- 4f0dc: dfc00117 ldw ra,4(sp)
- 4f0e0: df000017 ldw fp,0(sp)
- 4f0e4: dec00204 addi sp,sp,8
- 4f0e8: f800283a ret
- 0004f0ec <write>:
- }
- #else /* !ALT_USE_DIRECT_DRIVERS */
- int ALT_WRITE (int file, const void *ptr, size_t len)
- {
- 4f0ec: defff904 addi sp,sp,-28
- 4f0f0: dfc00615 stw ra,24(sp)
- 4f0f4: df000515 stw fp,20(sp)
- 4f0f8: df000504 addi fp,sp,20
- 4f0fc: e13ffd15 stw r4,-12(fp)
- 4f100: e17ffe15 stw r5,-8(fp)
- 4f104: e1bfff15 stw r6,-4(fp)
- * A common error case is that when the file descriptor was created, the call
- * to open() failed resulting in a negative file descriptor. This is trapped
- * below so that we don't try and process an invalid file descriptor.
- */
- fd = (file < 0) ? NULL : &alt_fd_list[file];
- 4f108: e0bffd17 ldw r2,-12(fp)
- 4f10c: 10000816 blt r2,zero,4f130 <write+0x44>
- 4f110: 01400304 movi r5,12
- 4f114: e13ffd17 ldw r4,-12(fp)
- 4f118: 004c9f80 call 4c9f8 <__mulsi3>
- 4f11c: 1007883a mov r3,r2
- 4f120: 00800174 movhi r2,5
- 4f124: 108bca04 addi r2,r2,12072
- 4f128: 1885883a add r2,r3,r2
- 4f12c: 00000106 br 4f134 <write+0x48>
- 4f130: 0005883a mov r2,zero
- 4f134: e0bffb15 stw r2,-20(fp)
-
- if (fd)
- 4f138: e0bffb17 ldw r2,-20(fp)
- 4f13c: 10002126 beq r2,zero,4f1c4 <write+0xd8>
- * If the file has not been opened with write access, or if the driver does
- * not provide an implementation of write(), generate an error. Otherwise
- * call the drivers write() function to process the request.
- */
- if (((fd->fd_flags & O_ACCMODE) != O_RDONLY) && fd->dev->write)
- 4f140: e0bffb17 ldw r2,-20(fp)
- 4f144: 10800217 ldw r2,8(r2)
- 4f148: 108000cc andi r2,r2,3
- 4f14c: 10001826 beq r2,zero,4f1b0 <write+0xc4>
- 4f150: e0bffb17 ldw r2,-20(fp)
- 4f154: 10800017 ldw r2,0(r2)
- 4f158: 10800617 ldw r2,24(r2)
- 4f15c: 10001426 beq r2,zero,4f1b0 <write+0xc4>
- {
-
- /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
- ALT_LOG_WRITE_FUNCTION(ptr,len);
- if ((rval = fd->dev->write(fd, ptr, len)) < 0)
- 4f160: e0bffb17 ldw r2,-20(fp)
- 4f164: 10800017 ldw r2,0(r2)
- 4f168: 10800617 ldw r2,24(r2)
- 4f16c: e0ffff17 ldw r3,-4(fp)
- 4f170: 180d883a mov r6,r3
- 4f174: e17ffe17 ldw r5,-8(fp)
- 4f178: e13ffb17 ldw r4,-20(fp)
- 4f17c: 103ee83a callr r2
- 4f180: e0bffc15 stw r2,-16(fp)
- 4f184: e0bffc17 ldw r2,-16(fp)
- 4f188: 1000070e bge r2,zero,4f1a8 <write+0xbc>
- {
- ALT_ERRNO = -rval;
- 4f18c: 004f0b00 call 4f0b0 <alt_get_errno>
- 4f190: 1007883a mov r3,r2
- 4f194: e0bffc17 ldw r2,-16(fp)
- 4f198: 0085c83a sub r2,zero,r2
- 4f19c: 18800015 stw r2,0(r3)
- return -1;
- 4f1a0: 00bfffc4 movi r2,-1
- 4f1a4: 00000c06 br 4f1d8 <write+0xec>
- }
- return rval;
- 4f1a8: e0bffc17 ldw r2,-16(fp)
- 4f1ac: 00000a06 br 4f1d8 <write+0xec>
- }
- else
- {
- ALT_ERRNO = EACCES;
- 4f1b0: 004f0b00 call 4f0b0 <alt_get_errno>
- 4f1b4: 1007883a mov r3,r2
- 4f1b8: 00800344 movi r2,13
- 4f1bc: 18800015 stw r2,0(r3)
- 4f1c0: 00000406 br 4f1d4 <write+0xe8>
- }
- }
- else
- {
- ALT_ERRNO = EBADFD;
- 4f1c4: 004f0b00 call 4f0b0 <alt_get_errno>
- 4f1c8: 1007883a mov r3,r2
- 4f1cc: 00801444 movi r2,81
- 4f1d0: 18800015 stw r2,0(r3)
- }
- return -1;
- 4f1d4: 00bfffc4 movi r2,-1
- }
- 4f1d8: e037883a mov sp,fp
- 4f1dc: dfc00117 ldw ra,4(sp)
- 4f1e0: df000017 ldw fp,0(sp)
- 4f1e4: dec00204 addi sp,sp,8
- 4f1e8: f800283a ret
- 0004f1ec <alt_dev_reg>:
- */
- extern int alt_fs_reg (alt_dev* dev);
- static ALT_INLINE int alt_dev_reg (alt_dev* dev)
- {
- 4f1ec: defffd04 addi sp,sp,-12
- 4f1f0: dfc00215 stw ra,8(sp)
- 4f1f4: df000115 stw fp,4(sp)
- 4f1f8: df000104 addi fp,sp,4
- 4f1fc: e13fff15 stw r4,-4(fp)
- extern alt_llist alt_dev_list;
- return alt_dev_llist_insert ((alt_dev_llist*) dev, &alt_dev_list);
- 4f200: d1600804 addi r5,gp,-32736
- 4f204: e13fff17 ldw r4,-4(fp)
- 4f208: 0050e540 call 50e54 <alt_dev_llist_insert>
- }
- 4f20c: e037883a mov sp,fp
- 4f210: dfc00117 ldw ra,4(sp)
- 4f214: df000017 ldw fp,0(sp)
- 4f218: dec00204 addi sp,sp,8
- 4f21c: f800283a ret
- 0004f220 <alt_irq_init>:
- * The "base" parameter is ignored and only
- * present for backwards-compatibility.
- */
- void alt_irq_init ( const void* base )
- {
- 4f220: defffd04 addi sp,sp,-12
- 4f224: dfc00215 stw ra,8(sp)
- 4f228: df000115 stw fp,4(sp)
- 4f22c: df000104 addi fp,sp,4
- 4f230: e13fff15 stw r4,-4(fp)
- ALTERA_NIOS2_GEN2_IRQ_INIT ( NIOS2, nios2);
- 4f234: 00518300 call 51830 <altera_nios2_gen2_irq_init>
- * alt_irq_cpu_enable_interrupts() enables the CPU to start taking interrupts.
- */
- static ALT_INLINE void ALT_ALWAYS_INLINE
- alt_irq_cpu_enable_interrupts (void)
- {
- NIOS2_WRITE_STATUS(NIOS2_STATUS_PIE_MSK
- 4f238: 00800044 movi r2,1
- 4f23c: 1001703a wrctl status,r2
- alt_irq_cpu_enable_interrupts();
- }
- 4f240: 0001883a nop
- 4f244: e037883a mov sp,fp
- 4f248: dfc00117 ldw ra,4(sp)
- 4f24c: df000017 ldw fp,0(sp)
- 4f250: dec00204 addi sp,sp,8
- 4f254: f800283a ret
- 0004f258 <alt_sys_init>:
- * Initialize the non-interrupt controller devices.
- * Called after alt_irq_init().
- */
- void alt_sys_init( void )
- {
- 4f258: defffe04 addi sp,sp,-8
- 4f25c: dfc00115 stw ra,4(sp)
- 4f260: df000015 stw fp,0(sp)
- 4f264: d839883a mov fp,sp
- ALTERA_AVALON_JTAG_UART_INIT ( JTAG_UART, jtag_uart);
- 4f268: 000d883a mov r6,zero
- 4f26c: 000b883a mov r5,zero
- 4f270: 01000174 movhi r4,5
- 4f274: 210c3404 addi r4,r4,12496
- 4f278: 004f41c0 call 4f41c <altera_avalon_jtag_uart_init>
- 4f27c: 01000174 movhi r4,5
- 4f280: 210c2a04 addi r4,r4,12456
- 4f284: 004f1ec0 call 4f1ec <alt_dev_reg>
- ALTERA_AVALON_LCD_16207_INIT ( LCD_16207, lcd_16207);
- 4f288: 01000174 movhi r4,5
- 4f28c: 21104c04 addi r4,r4,16688
- 4f290: 0050b380 call 50b38 <altera_avalon_lcd_16207_init>
- 4f294: 01000174 movhi r4,5
- 4f298: 21104204 addi r4,r4,16648
- 4f29c: 004f1ec0 call 4f1ec <alt_dev_reg>
- }
- 4f2a0: 0001883a nop
- 4f2a4: e037883a mov sp,fp
- 4f2a8: dfc00117 ldw ra,4(sp)
- 4f2ac: df000017 ldw fp,0(sp)
- 4f2b0: dec00204 addi sp,sp,8
- 4f2b4: f800283a ret
- 0004f2b8 <altera_avalon_jtag_uart_read_fd>:
- *
- */
- int
- altera_avalon_jtag_uart_read_fd(alt_fd* fd, char* buffer, int space)
- {
- 4f2b8: defffa04 addi sp,sp,-24
- 4f2bc: dfc00515 stw ra,20(sp)
- 4f2c0: df000415 stw fp,16(sp)
- 4f2c4: df000404 addi fp,sp,16
- 4f2c8: e13ffd15 stw r4,-12(fp)
- 4f2cc: e17ffe15 stw r5,-8(fp)
- 4f2d0: e1bfff15 stw r6,-4(fp)
- altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
- 4f2d4: e0bffd17 ldw r2,-12(fp)
- 4f2d8: 10800017 ldw r2,0(r2)
- 4f2dc: e0bffc15 stw r2,-16(fp)
- return altera_avalon_jtag_uart_read(&dev->state, buffer, space,
- 4f2e0: e0bffc17 ldw r2,-16(fp)
- 4f2e4: 10c00a04 addi r3,r2,40
- 4f2e8: e0bffd17 ldw r2,-12(fp)
- 4f2ec: 10800217 ldw r2,8(r2)
- 4f2f0: 100f883a mov r7,r2
- 4f2f4: e1bfff17 ldw r6,-4(fp)
- 4f2f8: e17ffe17 ldw r5,-8(fp)
- 4f2fc: 1809883a mov r4,r3
- 4f300: 004f8e00 call 4f8e0 <altera_avalon_jtag_uart_read>
- fd->fd_flags);
- }
- 4f304: e037883a mov sp,fp
- 4f308: dfc00117 ldw ra,4(sp)
- 4f30c: df000017 ldw fp,0(sp)
- 4f310: dec00204 addi sp,sp,8
- 4f314: f800283a ret
- 0004f318 <altera_avalon_jtag_uart_write_fd>:
- int
- altera_avalon_jtag_uart_write_fd(alt_fd* fd, const char* buffer, int space)
- {
- 4f318: defffa04 addi sp,sp,-24
- 4f31c: dfc00515 stw ra,20(sp)
- 4f320: df000415 stw fp,16(sp)
- 4f324: df000404 addi fp,sp,16
- 4f328: e13ffd15 stw r4,-12(fp)
- 4f32c: e17ffe15 stw r5,-8(fp)
- 4f330: e1bfff15 stw r6,-4(fp)
- altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
- 4f334: e0bffd17 ldw r2,-12(fp)
- 4f338: 10800017 ldw r2,0(r2)
- 4f33c: e0bffc15 stw r2,-16(fp)
- return altera_avalon_jtag_uart_write(&dev->state, buffer, space,
- 4f340: e0bffc17 ldw r2,-16(fp)
- 4f344: 10c00a04 addi r3,r2,40
- 4f348: e0bffd17 ldw r2,-12(fp)
- 4f34c: 10800217 ldw r2,8(r2)
- 4f350: 100f883a mov r7,r2
- 4f354: e1bfff17 ldw r6,-4(fp)
- 4f358: e17ffe17 ldw r5,-8(fp)
- 4f35c: 1809883a mov r4,r3
- 4f360: 004fafc0 call 4fafc <altera_avalon_jtag_uart_write>
- fd->fd_flags);
- }
- 4f364: e037883a mov sp,fp
- 4f368: dfc00117 ldw ra,4(sp)
- 4f36c: df000017 ldw fp,0(sp)
- 4f370: dec00204 addi sp,sp,8
- 4f374: f800283a ret
- 0004f378 <altera_avalon_jtag_uart_close_fd>:
- #ifndef ALTERA_AVALON_JTAG_UART_SMALL
- int
- altera_avalon_jtag_uart_close_fd(alt_fd* fd)
- {
- 4f378: defffc04 addi sp,sp,-16
- 4f37c: dfc00315 stw ra,12(sp)
- 4f380: df000215 stw fp,8(sp)
- 4f384: df000204 addi fp,sp,8
- 4f388: e13fff15 stw r4,-4(fp)
- altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
- 4f38c: e0bfff17 ldw r2,-4(fp)
- 4f390: 10800017 ldw r2,0(r2)
- 4f394: e0bffe15 stw r2,-8(fp)
- return altera_avalon_jtag_uart_close(&dev->state, fd->fd_flags);
- 4f398: e0bffe17 ldw r2,-8(fp)
- 4f39c: 10c00a04 addi r3,r2,40
- 4f3a0: e0bfff17 ldw r2,-4(fp)
- 4f3a4: 10800217 ldw r2,8(r2)
- 4f3a8: 100b883a mov r5,r2
- 4f3ac: 1809883a mov r4,r3
- 4f3b0: 004f7880 call 4f788 <altera_avalon_jtag_uart_close>
- }
- 4f3b4: e037883a mov sp,fp
- 4f3b8: dfc00117 ldw ra,4(sp)
- 4f3bc: df000017 ldw fp,0(sp)
- 4f3c0: dec00204 addi sp,sp,8
- 4f3c4: f800283a ret
- 0004f3c8 <altera_avalon_jtag_uart_ioctl_fd>:
- int
- altera_avalon_jtag_uart_ioctl_fd(alt_fd* fd, int req, void* arg)
- {
- 4f3c8: defffa04 addi sp,sp,-24
- 4f3cc: dfc00515 stw ra,20(sp)
- 4f3d0: df000415 stw fp,16(sp)
- 4f3d4: df000404 addi fp,sp,16
- 4f3d8: e13ffd15 stw r4,-12(fp)
- 4f3dc: e17ffe15 stw r5,-8(fp)
- 4f3e0: e1bfff15 stw r6,-4(fp)
- altera_avalon_jtag_uart_dev* dev = (altera_avalon_jtag_uart_dev*) fd->dev;
- 4f3e4: e0bffd17 ldw r2,-12(fp)
- 4f3e8: 10800017 ldw r2,0(r2)
- 4f3ec: e0bffc15 stw r2,-16(fp)
- return altera_avalon_jtag_uart_ioctl(&dev->state, req, arg);
- 4f3f0: e0bffc17 ldw r2,-16(fp)
- 4f3f4: 10800a04 addi r2,r2,40
- 4f3f8: e1bfff17 ldw r6,-4(fp)
- 4f3fc: e17ffe17 ldw r5,-8(fp)
- 4f400: 1009883a mov r4,r2
- 4f404: 004f7f00 call 4f7f0 <altera_avalon_jtag_uart_ioctl>
- }
- 4f408: e037883a mov sp,fp
- 4f40c: dfc00117 ldw ra,4(sp)
- 4f410: df000017 ldw fp,0(sp)
- 4f414: dec00204 addi sp,sp,8
- 4f418: f800283a ret
- 0004f41c <altera_avalon_jtag_uart_init>:
- * Return 1 on sucessful IRQ register and 0 on failure.
- */
- void altera_avalon_jtag_uart_init(altera_avalon_jtag_uart_state* sp,
- int irq_controller_id, int irq)
- {
- 4f41c: defffa04 addi sp,sp,-24
- 4f420: dfc00515 stw ra,20(sp)
- 4f424: df000415 stw fp,16(sp)
- 4f428: df000404 addi fp,sp,16
- 4f42c: e13ffd15 stw r4,-12(fp)
- 4f430: e17ffe15 stw r5,-8(fp)
- 4f434: e1bfff15 stw r6,-4(fp)
- ALT_FLAG_CREATE(&sp->events, 0);
- ALT_SEM_CREATE(&sp->read_lock, 1);
- ALT_SEM_CREATE(&sp->write_lock, 1);
- /* enable read interrupts at the device */
- sp->irq_enable = ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
- 4f438: e0bffd17 ldw r2,-12(fp)
- 4f43c: 00c00044 movi r3,1
- 4f440: 10c00815 stw r3,32(r2)
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
- 4f444: e0bffd17 ldw r2,-12(fp)
- 4f448: 10800017 ldw r2,0(r2)
- 4f44c: 10800104 addi r2,r2,4
- 4f450: 1007883a mov r3,r2
- 4f454: e0bffd17 ldw r2,-12(fp)
- 4f458: 10800817 ldw r2,32(r2)
- 4f45c: 18800035 stwio r2,0(r3)
-
- /* register the interrupt handler */
- #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
- alt_ic_isr_register(irq_controller_id, irq, altera_avalon_jtag_uart_irq,
- 4f460: e0bffe17 ldw r2,-8(fp)
- 4f464: e0ffff17 ldw r3,-4(fp)
- 4f468: d8000015 stw zero,0(sp)
- 4f46c: e1fffd17 ldw r7,-12(fp)
- 4f470: 01800174 movhi r6,5
- 4f474: 31bd3704 addi r6,r6,-2852
- 4f478: 180b883a mov r5,r3
- 4f47c: 1009883a mov r4,r2
- 4f480: 0050fd80 call 50fd8 <alt_ic_isr_register>
- #else
- alt_irq_register(irq, sp, altera_avalon_jtag_uart_irq);
- #endif
- /* Register an alarm to go off every second to check for presence of host */
- sp->host_inactive = 0;
- 4f484: e0bffd17 ldw r2,-12(fp)
- 4f488: 10000915 stw zero,36(r2)
- if (alt_alarm_start(&sp->alarm, alt_ticks_per_second(),
- 4f48c: e0bffd17 ldw r2,-12(fp)
- 4f490: 10800204 addi r2,r2,8
- * Obtain the system clock rate in ticks/s.
- */
- static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_ticks_per_second (void)
- {
- return _alt_tick_rate;
- 4f494: d0e72617 ldw r3,-25448(gp)
- 4f498: e1fffd17 ldw r7,-12(fp)
- 4f49c: 01800174 movhi r6,5
- 4f4a0: 31bdba04 addi r6,r6,-2328
- 4f4a4: 180b883a mov r5,r3
- 4f4a8: 1009883a mov r4,r2
- 4f4ac: 0050ccc0 call 50ccc <alt_alarm_start>
- 4f4b0: 1000040e bge r2,zero,4f4c4 <altera_avalon_jtag_uart_init+0xa8>
- &altera_avalon_jtag_uart_timeout, sp) < 0)
- {
- /* If we can't set the alarm then record "don't know if host present"
- * and behave as though the host is present.
- */
- sp->timeout = INT_MAX;
- 4f4b4: e0fffd17 ldw r3,-12(fp)
- 4f4b8: 00a00034 movhi r2,32768
- 4f4bc: 10bfffc4 addi r2,r2,-1
- 4f4c0: 18800115 stw r2,4(r3)
- }
- /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
- ALT_LOG_JTAG_UART_ALARM_REGISTER(sp, sp->base);
- }
- 4f4c4: 0001883a nop
- 4f4c8: e037883a mov sp,fp
- 4f4cc: dfc00117 ldw ra,4(sp)
- 4f4d0: df000017 ldw fp,0(sp)
- 4f4d4: dec00204 addi sp,sp,8
- 4f4d8: f800283a ret
- 0004f4dc <altera_avalon_jtag_uart_irq>:
- #ifdef ALT_ENHANCED_INTERRUPT_API_PRESENT
- static void altera_avalon_jtag_uart_irq(void* context)
- #else
- static void altera_avalon_jtag_uart_irq(void* context, alt_u32 id)
- #endif
- {
- 4f4dc: defff804 addi sp,sp,-32
- 4f4e0: df000715 stw fp,28(sp)
- 4f4e4: df000704 addi fp,sp,28
- 4f4e8: e13fff15 stw r4,-4(fp)
- altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state*) context;
- 4f4ec: e0bfff17 ldw r2,-4(fp)
- 4f4f0: e0bffb15 stw r2,-20(fp)
- unsigned int base = sp->base;
- 4f4f4: e0bffb17 ldw r2,-20(fp)
- 4f4f8: 10800017 ldw r2,0(r2)
- 4f4fc: e0bffc15 stw r2,-16(fp)
- /* ALT_LOG - see altera_hal/HAL/inc/sys/alt_log_printf.h */
- ALT_LOG_JTAG_UART_ISR_FUNCTION(base, sp);
- for ( ; ; )
- {
- unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
- 4f500: e0bffc17 ldw r2,-16(fp)
- 4f504: 10800104 addi r2,r2,4
- 4f508: 10800037 ldwio r2,0(r2)
- 4f50c: e0bffd15 stw r2,-12(fp)
- /* Return once nothing more to do */
- if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0)
- 4f510: e0bffd17 ldw r2,-12(fp)
- 4f514: 1080c00c andi r2,r2,768
- 4f518: 10006d26 beq r2,zero,4f6d0 <altera_avalon_jtag_uart_irq+0x1f4>
- break;
- if (control & ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK)
- 4f51c: e0bffd17 ldw r2,-12(fp)
- 4f520: 1080400c andi r2,r2,256
- 4f524: 10003526 beq r2,zero,4f5fc <altera_avalon_jtag_uart_irq+0x120>
- {
- /* process a read irq. Start by assuming that there is data in the
- * receive FIFO (otherwise why would we have been interrupted?)
- */
- unsigned int data = 1 << ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_OFST;
- 4f528: 00800074 movhi r2,1
- 4f52c: e0bff915 stw r2,-28(fp)
- for ( ; ; )
- {
- /* Check whether there is space in the buffer. If not then we must not
- * read any characters from the buffer as they will be lost.
- */
- unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- 4f530: e0bffb17 ldw r2,-20(fp)
- 4f534: 10800a17 ldw r2,40(r2)
- 4f538: 10800044 addi r2,r2,1
- 4f53c: 1081ffcc andi r2,r2,2047
- 4f540: e0bffe15 stw r2,-8(fp)
- if (next == sp->rx_out)
- 4f544: e0bffb17 ldw r2,-20(fp)
- 4f548: 10c00b17 ldw r3,44(r2)
- 4f54c: e0bffe17 ldw r2,-8(fp)
- 4f550: 18801526 beq r3,r2,4f5a8 <altera_avalon_jtag_uart_irq+0xcc>
- break;
- /* Try to remove a character from the FIFO and find out whether there
- * are any more characters remaining.
- */
- data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base);
- 4f554: e0bffc17 ldw r2,-16(fp)
- 4f558: 10800037 ldwio r2,0(r2)
- 4f55c: e0bff915 stw r2,-28(fp)
-
- if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0)
- 4f560: e0bff917 ldw r2,-28(fp)
- 4f564: 10a0000c andi r2,r2,32768
- 4f568: 10001126 beq r2,zero,4f5b0 <altera_avalon_jtag_uart_irq+0xd4>
- break;
- sp->rx_buf[sp->rx_in] = (data & ALTERA_AVALON_JTAG_UART_DATA_DATA_MSK) >> ALTERA_AVALON_JTAG_UART_DATA_DATA_OFST;
- 4f56c: e0bffb17 ldw r2,-20(fp)
- 4f570: 10800a17 ldw r2,40(r2)
- 4f574: e0fff917 ldw r3,-28(fp)
- 4f578: 1809883a mov r4,r3
- 4f57c: e0fffb17 ldw r3,-20(fp)
- 4f580: 1885883a add r2,r3,r2
- 4f584: 10800e04 addi r2,r2,56
- 4f588: 11000005 stb r4,0(r2)
- sp->rx_in = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- 4f58c: e0bffb17 ldw r2,-20(fp)
- 4f590: 10800a17 ldw r2,40(r2)
- 4f594: 10800044 addi r2,r2,1
- 4f598: 10c1ffcc andi r3,r2,2047
- 4f59c: e0bffb17 ldw r2,-20(fp)
- 4f5a0: 10c00a15 stw r3,40(r2)
- /* Post an event to notify jtag_uart_read that a character has been read */
- ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET);
- }
- 4f5a4: 003fe206 br 4f530 <__alt_data_end+0xfffdd530>
- /* Check whether there is space in the buffer. If not then we must not
- * read any characters from the buffer as they will be lost.
- */
- unsigned int next = (sp->rx_in + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- if (next == sp->rx_out)
- break;
- 4f5a8: 0001883a nop
- 4f5ac: 00000106 br 4f5b4 <altera_avalon_jtag_uart_irq+0xd8>
- * are any more characters remaining.
- */
- data = IORD_ALTERA_AVALON_JTAG_UART_DATA(base);
-
- if ((data & ALTERA_AVALON_JTAG_UART_DATA_RVALID_MSK) == 0)
- break;
- 4f5b0: 0001883a nop
- /* Post an event to notify jtag_uart_read that a character has been read */
- ALT_FLAG_POST (sp->events, ALT_JTAG_UART_READ_RDY, OS_FLAG_SET);
- }
- if (data & ALTERA_AVALON_JTAG_UART_DATA_RAVAIL_MSK)
- 4f5b4: e0bff917 ldw r2,-28(fp)
- 4f5b8: 10bfffec andhi r2,r2,65535
- 4f5bc: 10000f26 beq r2,zero,4f5fc <altera_avalon_jtag_uart_irq+0x120>
- {
- /* If there is still data available here then the buffer is full
- * so turn off receive interrupts until some space becomes available.
- */
- sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
- 4f5c0: e0bffb17 ldw r2,-20(fp)
- 4f5c4: 10c00817 ldw r3,32(r2)
- 4f5c8: 00bfff84 movi r2,-2
- 4f5cc: 1886703a and r3,r3,r2
- 4f5d0: e0bffb17 ldw r2,-20(fp)
- 4f5d4: 10c00815 stw r3,32(r2)
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(base, sp->irq_enable);
- 4f5d8: e0bffc17 ldw r2,-16(fp)
- 4f5dc: 10800104 addi r2,r2,4
- 4f5e0: 1007883a mov r3,r2
- 4f5e4: e0bffb17 ldw r2,-20(fp)
- 4f5e8: 10800817 ldw r2,32(r2)
- 4f5ec: 18800035 stwio r2,0(r3)
-
- /* Dummy read to ensure IRQ is cleared prior to ISR completion */
- IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
- 4f5f0: e0bffc17 ldw r2,-16(fp)
- 4f5f4: 10800104 addi r2,r2,4
- 4f5f8: 10800037 ldwio r2,0(r2)
- }
- }
- if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)
- 4f5fc: e0bffd17 ldw r2,-12(fp)
- 4f600: 1080800c andi r2,r2,512
- 4f604: 103fbe26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500>
- {
- /* process a write irq */
- unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST;
- 4f608: e0bffd17 ldw r2,-12(fp)
- 4f60c: 1004d43a srli r2,r2,16
- 4f610: e0bffa15 stw r2,-24(fp)
- while (space > 0 && sp->tx_out != sp->tx_in)
- 4f614: 00001406 br 4f668 <altera_avalon_jtag_uart_irq+0x18c>
- {
- IOWR_ALTERA_AVALON_JTAG_UART_DATA(base, sp->tx_buf[sp->tx_out]);
- 4f618: e0bffc17 ldw r2,-16(fp)
- 4f61c: e0fffb17 ldw r3,-20(fp)
- 4f620: 18c00d17 ldw r3,52(r3)
- 4f624: e13ffb17 ldw r4,-20(fp)
- 4f628: 20c7883a add r3,r4,r3
- 4f62c: 18c20e04 addi r3,r3,2104
- 4f630: 18c00003 ldbu r3,0(r3)
- 4f634: 18c03fcc andi r3,r3,255
- 4f638: 18c0201c xori r3,r3,128
- 4f63c: 18ffe004 addi r3,r3,-128
- 4f640: 10c00035 stwio r3,0(r2)
- sp->tx_out = (sp->tx_out + 1) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- 4f644: e0bffb17 ldw r2,-20(fp)
- 4f648: 10800d17 ldw r2,52(r2)
- 4f64c: 10800044 addi r2,r2,1
- 4f650: 10c1ffcc andi r3,r2,2047
- 4f654: e0bffb17 ldw r2,-20(fp)
- 4f658: 10c00d15 stw r3,52(r2)
- /* Post an event to notify jtag_uart_write that a character has been written */
- ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET);
- space--;
- 4f65c: e0bffa17 ldw r2,-24(fp)
- 4f660: 10bfffc4 addi r2,r2,-1
- 4f664: e0bffa15 stw r2,-24(fp)
- if (control & ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)
- {
- /* process a write irq */
- unsigned int space = (control & ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_MSK) >> ALTERA_AVALON_JTAG_UART_CONTROL_WSPACE_OFST;
- while (space > 0 && sp->tx_out != sp->tx_in)
- 4f668: e0bffa17 ldw r2,-24(fp)
- 4f66c: 10000526 beq r2,zero,4f684 <altera_avalon_jtag_uart_irq+0x1a8>
- 4f670: e0bffb17 ldw r2,-20(fp)
- 4f674: 10c00d17 ldw r3,52(r2)
- 4f678: e0bffb17 ldw r2,-20(fp)
- 4f67c: 10800c17 ldw r2,48(r2)
- 4f680: 18bfe51e bne r3,r2,4f618 <__alt_data_end+0xfffdd618>
- ALT_FLAG_POST (sp->events, ALT_JTAG_UART_WRITE_RDY, OS_FLAG_SET);
- space--;
- }
- if (space > 0)
- 4f684: e0bffa17 ldw r2,-24(fp)
- 4f688: 103f9d26 beq r2,zero,4f500 <__alt_data_end+0xfffdd500>
- {
- /* If we don't have any more data available then turn off the TX interrupt */
- sp->irq_enable &= ~ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK;
- 4f68c: e0bffb17 ldw r2,-20(fp)
- 4f690: 10c00817 ldw r3,32(r2)
- 4f694: 00bfff44 movi r2,-3
- 4f698: 1886703a and r3,r3,r2
- 4f69c: e0bffb17 ldw r2,-20(fp)
- 4f6a0: 10c00815 stw r3,32(r2)
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
- 4f6a4: e0bffb17 ldw r2,-20(fp)
- 4f6a8: 10800017 ldw r2,0(r2)
- 4f6ac: 10800104 addi r2,r2,4
- 4f6b0: 1007883a mov r3,r2
- 4f6b4: e0bffb17 ldw r2,-20(fp)
- 4f6b8: 10800817 ldw r2,32(r2)
- 4f6bc: 18800035 stwio r2,0(r3)
-
- /* Dummy read to ensure IRQ is cleared prior to ISR completion */
- IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
- 4f6c0: e0bffc17 ldw r2,-16(fp)
- 4f6c4: 10800104 addi r2,r2,4
- 4f6c8: 10800037 ldwio r2,0(r2)
- }
- }
- }
- 4f6cc: 003f8c06 br 4f500 <__alt_data_end+0xfffdd500>
- {
- unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
- /* Return once nothing more to do */
- if ((control & (ALTERA_AVALON_JTAG_UART_CONTROL_RI_MSK | ALTERA_AVALON_JTAG_UART_CONTROL_WI_MSK)) == 0)
- break;
- 4f6d0: 0001883a nop
- /* Dummy read to ensure IRQ is cleared prior to ISR completion */
- IORD_ALTERA_AVALON_JTAG_UART_CONTROL(base);
- }
- }
- }
- }
- 4f6d4: 0001883a nop
- 4f6d8: e037883a mov sp,fp
- 4f6dc: df000017 ldw fp,0(sp)
- 4f6e0: dec00104 addi sp,sp,4
- 4f6e4: f800283a ret
- 0004f6e8 <altera_avalon_jtag_uart_timeout>:
- * Timeout routine is called every second
- */
- static alt_u32
- altera_avalon_jtag_uart_timeout(void* context)
- {
- 4f6e8: defff804 addi sp,sp,-32
- 4f6ec: df000715 stw fp,28(sp)
- 4f6f0: df000704 addi fp,sp,28
- 4f6f4: e13ffb15 stw r4,-20(fp)
- altera_avalon_jtag_uart_state* sp = (altera_avalon_jtag_uart_state *) context;
- 4f6f8: e0bffb17 ldw r2,-20(fp)
- 4f6fc: e0bff915 stw r2,-28(fp)
- unsigned int control = IORD_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base);
- 4f700: e0bff917 ldw r2,-28(fp)
- 4f704: 10800017 ldw r2,0(r2)
- 4f708: 10800104 addi r2,r2,4
- 4f70c: 10800037 ldwio r2,0(r2)
- 4f710: e0bffa15 stw r2,-24(fp)
- if (control & ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK)
- 4f714: e0bffa17 ldw r2,-24(fp)
- 4f718: 1081000c andi r2,r2,1024
- 4f71c: 10000b26 beq r2,zero,4f74c <altera_avalon_jtag_uart_timeout+0x64>
- {
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable | ALTERA_AVALON_JTAG_UART_CONTROL_AC_MSK);
- 4f720: e0bff917 ldw r2,-28(fp)
- 4f724: 10800017 ldw r2,0(r2)
- 4f728: 10800104 addi r2,r2,4
- 4f72c: 1007883a mov r3,r2
- 4f730: e0bff917 ldw r2,-28(fp)
- 4f734: 10800817 ldw r2,32(r2)
- 4f738: 10810014 ori r2,r2,1024
- 4f73c: 18800035 stwio r2,0(r3)
- sp->host_inactive = 0;
- 4f740: e0bff917 ldw r2,-28(fp)
- 4f744: 10000915 stw zero,36(r2)
- 4f748: 00000a06 br 4f774 <altera_avalon_jtag_uart_timeout+0x8c>
- }
- else if (sp->host_inactive < INT_MAX - 2) {
- 4f74c: e0bff917 ldw r2,-28(fp)
- 4f750: 10c00917 ldw r3,36(r2)
- 4f754: 00a00034 movhi r2,32768
- 4f758: 10bfff04 addi r2,r2,-4
- 4f75c: 10c00536 bltu r2,r3,4f774 <altera_avalon_jtag_uart_timeout+0x8c>
- sp->host_inactive++;
- 4f760: e0bff917 ldw r2,-28(fp)
- 4f764: 10800917 ldw r2,36(r2)
- 4f768: 10c00044 addi r3,r2,1
- 4f76c: e0bff917 ldw r2,-28(fp)
- 4f770: 10c00915 stw r3,36(r2)
- 4f774: d0a72617 ldw r2,-25448(gp)
- ALT_FLAG_POST (sp->events, ALT_JTAG_UART_TIMEOUT, OS_FLAG_SET);
- }
- }
- return alt_ticks_per_second();
- }
- 4f778: e037883a mov sp,fp
- 4f77c: df000017 ldw fp,0(sp)
- 4f780: dec00104 addi sp,sp,4
- 4f784: f800283a ret
- 0004f788 <altera_avalon_jtag_uart_close>:
- * The close routine is not implemented for the small driver; instead it will
- * map to null. This is because the small driver simply waits while characters
- * are transmitted; there is no interrupt-serviced buffer to empty
- */
- int altera_avalon_jtag_uart_close(altera_avalon_jtag_uart_state* sp, int flags)
- {
- 4f788: defffd04 addi sp,sp,-12
- 4f78c: df000215 stw fp,8(sp)
- 4f790: df000204 addi fp,sp,8
- 4f794: e13ffe15 stw r4,-8(fp)
- 4f798: e17fff15 stw r5,-4(fp)
- /*
- * Wait for all transmit data to be emptied by the JTAG UART ISR, or
- * for a host-inactivity timeout, in which case transmit data will be lost
- */
- while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) {
- 4f79c: 00000506 br 4f7b4 <altera_avalon_jtag_uart_close+0x2c>
- if (flags & O_NONBLOCK) {
- 4f7a0: e0bfff17 ldw r2,-4(fp)
- 4f7a4: 1090000c andi r2,r2,16384
- 4f7a8: 10000226 beq r2,zero,4f7b4 <altera_avalon_jtag_uart_close+0x2c>
- return -EWOULDBLOCK;
- 4f7ac: 00bffd44 movi r2,-11
- 4f7b0: 00000b06 br 4f7e0 <altera_avalon_jtag_uart_close+0x58>
- {
- /*
- * Wait for all transmit data to be emptied by the JTAG UART ISR, or
- * for a host-inactivity timeout, in which case transmit data will be lost
- */
- while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) {
- 4f7b4: e0bffe17 ldw r2,-8(fp)
- 4f7b8: 10c00d17 ldw r3,52(r2)
- 4f7bc: e0bffe17 ldw r2,-8(fp)
- 4f7c0: 10800c17 ldw r2,48(r2)
- 4f7c4: 18800526 beq r3,r2,4f7dc <altera_avalon_jtag_uart_close+0x54>
- 4f7c8: e0bffe17 ldw r2,-8(fp)
- 4f7cc: 10c00917 ldw r3,36(r2)
- 4f7d0: e0bffe17 ldw r2,-8(fp)
- 4f7d4: 10800117 ldw r2,4(r2)
- 4f7d8: 18bff136 bltu r3,r2,4f7a0 <__alt_data_end+0xfffdd7a0>
- if (flags & O_NONBLOCK) {
- return -EWOULDBLOCK;
- }
- }
- return 0;
- 4f7dc: 0005883a mov r2,zero
- }
- 4f7e0: e037883a mov sp,fp
- 4f7e4: df000017 ldw fp,0(sp)
- 4f7e8: dec00104 addi sp,sp,4
- 4f7ec: f800283a ret
- 0004f7f0 <altera_avalon_jtag_uart_ioctl>:
- /* ----------------------------------------------------------- */
- int
- altera_avalon_jtag_uart_ioctl(altera_avalon_jtag_uart_state* sp, int req,
- void* arg)
- {
- 4f7f0: defffa04 addi sp,sp,-24
- 4f7f4: df000515 stw fp,20(sp)
- 4f7f8: df000504 addi fp,sp,20
- 4f7fc: e13ffd15 stw r4,-12(fp)
- 4f800: e17ffe15 stw r5,-8(fp)
- 4f804: e1bfff15 stw r6,-4(fp)
- int rc = -ENOTTY;
- 4f808: 00bff9c4 movi r2,-25
- 4f80c: e0bffb15 stw r2,-20(fp)
- switch (req)
- 4f810: e0bffe17 ldw r2,-8(fp)
- 4f814: 10da8060 cmpeqi r3,r2,27137
- 4f818: 1800031e bne r3,zero,4f828 <altera_avalon_jtag_uart_ioctl+0x38>
- 4f81c: 109a80a0 cmpeqi r2,r2,27138
- 4f820: 1000181e bne r2,zero,4f884 <altera_avalon_jtag_uart_ioctl+0x94>
- rc = 0;
- }
- break;
- default:
- break;
- 4f824: 00002906 br 4f8cc <altera_avalon_jtag_uart_ioctl+0xdc>
- switch (req)
- {
- case TIOCSTIMEOUT:
- /* Set the time to wait until assuming host is not connected */
- if (sp->timeout != INT_MAX)
- 4f828: e0bffd17 ldw r2,-12(fp)
- 4f82c: 10c00117 ldw r3,4(r2)
- 4f830: 00a00034 movhi r2,32768
- 4f834: 10bfffc4 addi r2,r2,-1
- 4f838: 18802126 beq r3,r2,4f8c0 <altera_avalon_jtag_uart_ioctl+0xd0>
- {
- int timeout = *((int *)arg);
- 4f83c: e0bfff17 ldw r2,-4(fp)
- 4f840: 10800017 ldw r2,0(r2)
- 4f844: e0bffc15 stw r2,-16(fp)
- sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1;
- 4f848: e0bffc17 ldw r2,-16(fp)
- 4f84c: 10800090 cmplti r2,r2,2
- 4f850: 1000061e bne r2,zero,4f86c <altera_avalon_jtag_uart_ioctl+0x7c>
- 4f854: e0fffc17 ldw r3,-16(fp)
- 4f858: 00a00034 movhi r2,32768
- 4f85c: 10bfffc4 addi r2,r2,-1
- 4f860: 18800226 beq r3,r2,4f86c <altera_avalon_jtag_uart_ioctl+0x7c>
- 4f864: e0bffc17 ldw r2,-16(fp)
- 4f868: 00000206 br 4f874 <altera_avalon_jtag_uart_ioctl+0x84>
- 4f86c: 00a00034 movhi r2,32768
- 4f870: 10bfff84 addi r2,r2,-2
- 4f874: e0fffd17 ldw r3,-12(fp)
- 4f878: 18800115 stw r2,4(r3)
- rc = 0;
- 4f87c: e03ffb15 stw zero,-20(fp)
- }
- break;
- 4f880: 00000f06 br 4f8c0 <altera_avalon_jtag_uart_ioctl+0xd0>
- case TIOCGCONNECTED:
- /* Find out whether host is connected */
- if (sp->timeout != INT_MAX)
- 4f884: e0bffd17 ldw r2,-12(fp)
- 4f888: 10c00117 ldw r3,4(r2)
- 4f88c: 00a00034 movhi r2,32768
- 4f890: 10bfffc4 addi r2,r2,-1
- 4f894: 18800c26 beq r3,r2,4f8c8 <altera_avalon_jtag_uart_ioctl+0xd8>
- {
- *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0;
- 4f898: e0bffd17 ldw r2,-12(fp)
- 4f89c: 10c00917 ldw r3,36(r2)
- 4f8a0: e0bffd17 ldw r2,-12(fp)
- 4f8a4: 10800117 ldw r2,4(r2)
- 4f8a8: 1885803a cmpltu r2,r3,r2
- 4f8ac: 10c03fcc andi r3,r2,255
- 4f8b0: e0bfff17 ldw r2,-4(fp)
- 4f8b4: 10c00015 stw r3,0(r2)
- rc = 0;
- 4f8b8: e03ffb15 stw zero,-20(fp)
- }
- break;
- 4f8bc: 00000206 br 4f8c8 <altera_avalon_jtag_uart_ioctl+0xd8>
- {
- int timeout = *((int *)arg);
- sp->timeout = (timeout >= 2 && timeout < INT_MAX) ? timeout : INT_MAX - 1;
- rc = 0;
- }
- break;
- 4f8c0: 0001883a nop
- 4f8c4: 00000106 br 4f8cc <altera_avalon_jtag_uart_ioctl+0xdc>
- if (sp->timeout != INT_MAX)
- {
- *((int *)arg) = (sp->host_inactive < sp->timeout) ? 1 : 0;
- rc = 0;
- }
- break;
- 4f8c8: 0001883a nop
- default:
- break;
- }
- return rc;
- 4f8cc: e0bffb17 ldw r2,-20(fp)
- }
- 4f8d0: e037883a mov sp,fp
- 4f8d4: df000017 ldw fp,0(sp)
- 4f8d8: dec00104 addi sp,sp,4
- 4f8dc: f800283a ret
- 0004f8e0 <altera_avalon_jtag_uart_read>:
- /* ----------------------------------------------------------- */
- int
- altera_avalon_jtag_uart_read(altera_avalon_jtag_uart_state* sp,
- char * buffer, int space, int flags)
- {
- 4f8e0: defff304 addi sp,sp,-52
- 4f8e4: dfc00c15 stw ra,48(sp)
- 4f8e8: df000b15 stw fp,44(sp)
- 4f8ec: df000b04 addi fp,sp,44
- 4f8f0: e13ffc15 stw r4,-16(fp)
- 4f8f4: e17ffd15 stw r5,-12(fp)
- 4f8f8: e1bffe15 stw r6,-8(fp)
- 4f8fc: e1ffff15 stw r7,-4(fp)
- char * ptr = buffer;
- 4f900: e0bffd17 ldw r2,-12(fp)
- 4f904: e0bff515 stw r2,-44(fp)
- * When running in a multi threaded environment, obtain the "read_lock"
- * semaphore. This ensures that reading from the device is thread-safe.
- */
- ALT_SEM_PEND (sp->read_lock, 0);
- while (space > 0)
- 4f908: 00004706 br 4fa28 <altera_avalon_jtag_uart_read+0x148>
- unsigned int in, out;
- /* Read as much data as possible */
- do
- {
- in = sp->rx_in;
- 4f90c: e0bffc17 ldw r2,-16(fp)
- 4f910: 10800a17 ldw r2,40(r2)
- 4f914: e0bff715 stw r2,-36(fp)
- out = sp->rx_out;
- 4f918: e0bffc17 ldw r2,-16(fp)
- 4f91c: 10800b17 ldw r2,44(r2)
- 4f920: e0bff815 stw r2,-32(fp)
- if (in >= out)
- 4f924: e0fff717 ldw r3,-36(fp)
- 4f928: e0bff817 ldw r2,-32(fp)
- 4f92c: 18800536 bltu r3,r2,4f944 <altera_avalon_jtag_uart_read+0x64>
- n = in - out;
- 4f930: e0fff717 ldw r3,-36(fp)
- 4f934: e0bff817 ldw r2,-32(fp)
- 4f938: 1885c83a sub r2,r3,r2
- 4f93c: e0bff615 stw r2,-40(fp)
- 4f940: 00000406 br 4f954 <altera_avalon_jtag_uart_read+0x74>
- else
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out;
- 4f944: 00c20004 movi r3,2048
- 4f948: e0bff817 ldw r2,-32(fp)
- 4f94c: 1885c83a sub r2,r3,r2
- 4f950: e0bff615 stw r2,-40(fp)
- if (n == 0)
- 4f954: e0bff617 ldw r2,-40(fp)
- 4f958: 10001e26 beq r2,zero,4f9d4 <altera_avalon_jtag_uart_read+0xf4>
- break; /* No more data available */
- if (n > space)
- 4f95c: e0fffe17 ldw r3,-8(fp)
- 4f960: e0bff617 ldw r2,-40(fp)
- 4f964: 1880022e bgeu r3,r2,4f970 <altera_avalon_jtag_uart_read+0x90>
- n = space;
- 4f968: e0bffe17 ldw r2,-8(fp)
- 4f96c: e0bff615 stw r2,-40(fp)
- memcpy(ptr, sp->rx_buf + out, n);
- 4f970: e0bffc17 ldw r2,-16(fp)
- 4f974: 10c00e04 addi r3,r2,56
- 4f978: e0bff817 ldw r2,-32(fp)
- 4f97c: 1885883a add r2,r3,r2
- 4f980: e1bff617 ldw r6,-40(fp)
- 4f984: 100b883a mov r5,r2
- 4f988: e13ff517 ldw r4,-44(fp)
- 4f98c: 00476c00 call 476c0 <memcpy>
- ptr += n;
- 4f990: e0fff517 ldw r3,-44(fp)
- 4f994: e0bff617 ldw r2,-40(fp)
- 4f998: 1885883a add r2,r3,r2
- 4f99c: e0bff515 stw r2,-44(fp)
- space -= n;
- 4f9a0: e0fffe17 ldw r3,-8(fp)
- 4f9a4: e0bff617 ldw r2,-40(fp)
- 4f9a8: 1885c83a sub r2,r3,r2
- 4f9ac: e0bffe15 stw r2,-8(fp)
- sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- 4f9b0: e0fff817 ldw r3,-32(fp)
- 4f9b4: e0bff617 ldw r2,-40(fp)
- 4f9b8: 1885883a add r2,r3,r2
- 4f9bc: 10c1ffcc andi r3,r2,2047
- 4f9c0: e0bffc17 ldw r2,-16(fp)
- 4f9c4: 10c00b15 stw r3,44(r2)
- }
- while (space > 0);
- 4f9c8: e0bffe17 ldw r2,-8(fp)
- 4f9cc: 00bfcf16 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c>
- 4f9d0: 00000106 br 4f9d8 <altera_avalon_jtag_uart_read+0xf8>
- n = in - out;
- else
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - out;
- if (n == 0)
- break; /* No more data available */
- 4f9d4: 0001883a nop
- sp->rx_out = (out + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- }
- while (space > 0);
- /* If we read any data then return it */
- if (ptr != buffer)
- 4f9d8: e0fff517 ldw r3,-44(fp)
- 4f9dc: e0bffd17 ldw r2,-12(fp)
- 4f9e0: 1880141e bne r3,r2,4fa34 <altera_avalon_jtag_uart_read+0x154>
- break;
- /* If in non-blocking mode then return error */
- if (flags & O_NONBLOCK)
- 4f9e4: e0bfff17 ldw r2,-4(fp)
- 4f9e8: 1090000c andi r2,r2,16384
- 4f9ec: 1000131e bne r2,zero,4fa3c <altera_avalon_jtag_uart_read+0x15c>
- while (in == sp->rx_in && sp->host_inactive < sp->timeout)
- ;
- }
- #else
- /* No OS: Always spin */
- while (in == sp->rx_in && sp->host_inactive < sp->timeout)
- 4f9f0: 0001883a nop
- 4f9f4: e0bffc17 ldw r2,-16(fp)
- 4f9f8: 10c00a17 ldw r3,40(r2)
- 4f9fc: e0bff717 ldw r2,-36(fp)
- 4fa00: 1880051e bne r3,r2,4fa18 <altera_avalon_jtag_uart_read+0x138>
- 4fa04: e0bffc17 ldw r2,-16(fp)
- 4fa08: 10c00917 ldw r3,36(r2)
- 4fa0c: e0bffc17 ldw r2,-16(fp)
- 4fa10: 10800117 ldw r2,4(r2)
- 4fa14: 18bff736 bltu r3,r2,4f9f4 <__alt_data_end+0xfffdd9f4>
- ;
- #endif /* __ucosii__ */
- if (in == sp->rx_in)
- 4fa18: e0bffc17 ldw r2,-16(fp)
- 4fa1c: 10c00a17 ldw r3,40(r2)
- 4fa20: e0bff717 ldw r2,-36(fp)
- 4fa24: 18800726 beq r3,r2,4fa44 <altera_avalon_jtag_uart_read+0x164>
- * When running in a multi threaded environment, obtain the "read_lock"
- * semaphore. This ensures that reading from the device is thread-safe.
- */
- ALT_SEM_PEND (sp->read_lock, 0);
- while (space > 0)
- 4fa28: e0bffe17 ldw r2,-8(fp)
- 4fa2c: 00bfb716 blt zero,r2,4f90c <__alt_data_end+0xfffdd90c>
- 4fa30: 00000506 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
- }
- while (space > 0);
- /* If we read any data then return it */
- if (ptr != buffer)
- break;
- 4fa34: 0001883a nop
- 4fa38: 00000306 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
- /* If in non-blocking mode then return error */
- if (flags & O_NONBLOCK)
- break;
- 4fa3c: 0001883a nop
- 4fa40: 00000106 br 4fa48 <altera_avalon_jtag_uart_read+0x168>
- while (in == sp->rx_in && sp->host_inactive < sp->timeout)
- ;
- #endif /* __ucosii__ */
- if (in == sp->rx_in)
- break;
- 4fa44: 0001883a nop
- * semaphore so that other threads can access the buffer.
- */
- ALT_SEM_POST (sp->read_lock);
- if (ptr != buffer)
- 4fa48: e0fff517 ldw r3,-44(fp)
- 4fa4c: e0bffd17 ldw r2,-12(fp)
- 4fa50: 18801826 beq r3,r2,4fab4 <altera_avalon_jtag_uart_read+0x1d4>
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 4fa54: 0005303a rdctl r2,status
- 4fa58: e0bffb15 stw r2,-20(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 4fa5c: e0fffb17 ldw r3,-20(fp)
- 4fa60: 00bfff84 movi r2,-2
- 4fa64: 1884703a and r2,r3,r2
- 4fa68: 1001703a wrctl status,r2
-
- return context;
- 4fa6c: e0bffb17 ldw r2,-20(fp)
- {
- /* If we read any data then there is space in the buffer so enable interrupts */
- context = alt_irq_disable_all();
- 4fa70: e0bffa15 stw r2,-24(fp)
- sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_RE_MSK;
- 4fa74: e0bffc17 ldw r2,-16(fp)
- 4fa78: 10800817 ldw r2,32(r2)
- 4fa7c: 10c00054 ori r3,r2,1
- 4fa80: e0bffc17 ldw r2,-16(fp)
- 4fa84: 10c00815 stw r3,32(r2)
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
- 4fa88: e0bffc17 ldw r2,-16(fp)
- 4fa8c: 10800017 ldw r2,0(r2)
- 4fa90: 10800104 addi r2,r2,4
- 4fa94: 1007883a mov r3,r2
- 4fa98: e0bffc17 ldw r2,-16(fp)
- 4fa9c: 10800817 ldw r2,32(r2)
- 4faa0: 18800035 stwio r2,0(r3)
- 4faa4: e0bffa17 ldw r2,-24(fp)
- 4faa8: e0bff915 stw r2,-28(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 4faac: e0bff917 ldw r2,-28(fp)
- 4fab0: 1001703a wrctl status,r2
- alt_irq_enable_all(context);
- }
- if (ptr != buffer)
- 4fab4: e0fff517 ldw r3,-44(fp)
- 4fab8: e0bffd17 ldw r2,-12(fp)
- 4fabc: 18800426 beq r3,r2,4fad0 <altera_avalon_jtag_uart_read+0x1f0>
- return ptr - buffer;
- 4fac0: e0fff517 ldw r3,-44(fp)
- 4fac4: e0bffd17 ldw r2,-12(fp)
- 4fac8: 1885c83a sub r2,r3,r2
- 4facc: 00000606 br 4fae8 <altera_avalon_jtag_uart_read+0x208>
- else if (flags & O_NONBLOCK)
- 4fad0: e0bfff17 ldw r2,-4(fp)
- 4fad4: 1090000c andi r2,r2,16384
- 4fad8: 10000226 beq r2,zero,4fae4 <altera_avalon_jtag_uart_read+0x204>
- return -EWOULDBLOCK;
- 4fadc: 00bffd44 movi r2,-11
- 4fae0: 00000106 br 4fae8 <altera_avalon_jtag_uart_read+0x208>
- else
- return -EIO;
- 4fae4: 00bffec4 movi r2,-5
- }
- 4fae8: e037883a mov sp,fp
- 4faec: dfc00117 ldw ra,4(sp)
- 4faf0: df000017 ldw fp,0(sp)
- 4faf4: dec00204 addi sp,sp,8
- 4faf8: f800283a ret
- 0004fafc <altera_avalon_jtag_uart_write>:
- /* ----------------------------------------------------------- */
- int
- altera_avalon_jtag_uart_write(altera_avalon_jtag_uart_state* sp,
- const char * ptr, int count, int flags)
- {
- 4fafc: defff304 addi sp,sp,-52
- 4fb00: dfc00c15 stw ra,48(sp)
- 4fb04: df000b15 stw fp,44(sp)
- 4fb08: df000b04 addi fp,sp,44
- 4fb0c: e13ffc15 stw r4,-16(fp)
- 4fb10: e17ffd15 stw r5,-12(fp)
- 4fb14: e1bffe15 stw r6,-8(fp)
- 4fb18: e1ffff15 stw r7,-4(fp)
- /* Remove warning at optimisation level 03 by seting out to 0 */
- unsigned int in, out=0;
- 4fb1c: e03ff515 stw zero,-44(fp)
- unsigned int n;
- alt_irq_context context;
- const char * start = ptr;
- 4fb20: e0bffd17 ldw r2,-12(fp)
- 4fb24: e0bff715 stw r2,-36(fp)
- ALT_SEM_PEND (sp->write_lock, 0);
- do
- {
- /* Copy as much as we can into the transmit buffer */
- while (count > 0)
- 4fb28: 00003706 br 4fc08 <altera_avalon_jtag_uart_write+0x10c>
- {
- /* We need a stable value of the out pointer to calculate the space available */
- in = sp->tx_in;
- 4fb2c: e0bffc17 ldw r2,-16(fp)
- 4fb30: 10800c17 ldw r2,48(r2)
- 4fb34: e0bff915 stw r2,-28(fp)
- out = sp->tx_out;
- 4fb38: e0bffc17 ldw r2,-16(fp)
- 4fb3c: 10800d17 ldw r2,52(r2)
- 4fb40: e0bff515 stw r2,-44(fp)
- if (in < out)
- 4fb44: e0fff917 ldw r3,-28(fp)
- 4fb48: e0bff517 ldw r2,-44(fp)
- 4fb4c: 1880062e bgeu r3,r2,4fb68 <altera_avalon_jtag_uart_write+0x6c>
- n = out - 1 - in;
- 4fb50: e0fff517 ldw r3,-44(fp)
- 4fb54: e0bff917 ldw r2,-28(fp)
- 4fb58: 1885c83a sub r2,r3,r2
- 4fb5c: 10bfffc4 addi r2,r2,-1
- 4fb60: e0bff615 stw r2,-40(fp)
- 4fb64: 00000b06 br 4fb94 <altera_avalon_jtag_uart_write+0x98>
- else if (out > 0)
- 4fb68: e0bff517 ldw r2,-44(fp)
- 4fb6c: 10000526 beq r2,zero,4fb84 <altera_avalon_jtag_uart_write+0x88>
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in;
- 4fb70: 00c20004 movi r3,2048
- 4fb74: e0bff917 ldw r2,-28(fp)
- 4fb78: 1885c83a sub r2,r3,r2
- 4fb7c: e0bff615 stw r2,-40(fp)
- 4fb80: 00000406 br 4fb94 <altera_avalon_jtag_uart_write+0x98>
- else
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in;
- 4fb84: 00c1ffc4 movi r3,2047
- 4fb88: e0bff917 ldw r2,-28(fp)
- 4fb8c: 1885c83a sub r2,r3,r2
- 4fb90: e0bff615 stw r2,-40(fp)
- if (n == 0)
- 4fb94: e0bff617 ldw r2,-40(fp)
- 4fb98: 10001e26 beq r2,zero,4fc14 <altera_avalon_jtag_uart_write+0x118>
- break;
- if (n > count)
- 4fb9c: e0fffe17 ldw r3,-8(fp)
- 4fba0: e0bff617 ldw r2,-40(fp)
- 4fba4: 1880022e bgeu r3,r2,4fbb0 <altera_avalon_jtag_uart_write+0xb4>
- n = count;
- 4fba8: e0bffe17 ldw r2,-8(fp)
- 4fbac: e0bff615 stw r2,-40(fp)
- memcpy(sp->tx_buf + in, ptr, n);
- 4fbb0: e0bffc17 ldw r2,-16(fp)
- 4fbb4: 10c20e04 addi r3,r2,2104
- 4fbb8: e0bff917 ldw r2,-28(fp)
- 4fbbc: 1885883a add r2,r3,r2
- 4fbc0: e1bff617 ldw r6,-40(fp)
- 4fbc4: e17ffd17 ldw r5,-12(fp)
- 4fbc8: 1009883a mov r4,r2
- 4fbcc: 00476c00 call 476c0 <memcpy>
- ptr += n;
- 4fbd0: e0fffd17 ldw r3,-12(fp)
- 4fbd4: e0bff617 ldw r2,-40(fp)
- 4fbd8: 1885883a add r2,r3,r2
- 4fbdc: e0bffd15 stw r2,-12(fp)
- count -= n;
- 4fbe0: e0fffe17 ldw r3,-8(fp)
- 4fbe4: e0bff617 ldw r2,-40(fp)
- 4fbe8: 1885c83a sub r2,r3,r2
- 4fbec: e0bffe15 stw r2,-8(fp)
- sp->tx_in = (in + n) % ALTERA_AVALON_JTAG_UART_BUF_LEN;
- 4fbf0: e0fff917 ldw r3,-28(fp)
- 4fbf4: e0bff617 ldw r2,-40(fp)
- 4fbf8: 1885883a add r2,r3,r2
- 4fbfc: 10c1ffcc andi r3,r2,2047
- 4fc00: e0bffc17 ldw r2,-16(fp)
- 4fc04: 10c00c15 stw r3,48(r2)
- ALT_SEM_PEND (sp->write_lock, 0);
- do
- {
- /* Copy as much as we can into the transmit buffer */
- while (count > 0)
- 4fc08: e0bffe17 ldw r2,-8(fp)
- 4fc0c: 00bfc716 blt zero,r2,4fb2c <__alt_data_end+0xfffddb2c>
- 4fc10: 00000106 br 4fc18 <altera_avalon_jtag_uart_write+0x11c>
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - in;
- else
- n = ALTERA_AVALON_JTAG_UART_BUF_LEN - 1 - in;
- if (n == 0)
- break;
- 4fc14: 0001883a nop
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 4fc18: 0005303a rdctl r2,status
- 4fc1c: e0bffb15 stw r2,-20(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 4fc20: e0fffb17 ldw r3,-20(fp)
- 4fc24: 00bfff84 movi r2,-2
- 4fc28: 1884703a and r2,r3,r2
- 4fc2c: 1001703a wrctl status,r2
-
- return context;
- 4fc30: e0bffb17 ldw r2,-20(fp)
- * to enable interrupts if there is no space left in the FIFO
- *
- * For now kick the interrupt routine every time to make it transmit
- * the data
- */
- context = alt_irq_disable_all();
- 4fc34: e0bffa15 stw r2,-24(fp)
- sp->irq_enable |= ALTERA_AVALON_JTAG_UART_CONTROL_WE_MSK;
- 4fc38: e0bffc17 ldw r2,-16(fp)
- 4fc3c: 10800817 ldw r2,32(r2)
- 4fc40: 10c00094 ori r3,r2,2
- 4fc44: e0bffc17 ldw r2,-16(fp)
- 4fc48: 10c00815 stw r3,32(r2)
- IOWR_ALTERA_AVALON_JTAG_UART_CONTROL(sp->base, sp->irq_enable);
- 4fc4c: e0bffc17 ldw r2,-16(fp)
- 4fc50: 10800017 ldw r2,0(r2)
- 4fc54: 10800104 addi r2,r2,4
- 4fc58: 1007883a mov r3,r2
- 4fc5c: e0bffc17 ldw r2,-16(fp)
- 4fc60: 10800817 ldw r2,32(r2)
- 4fc64: 18800035 stwio r2,0(r3)
- 4fc68: e0bffa17 ldw r2,-24(fp)
- 4fc6c: e0bff815 stw r2,-32(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 4fc70: e0bff817 ldw r2,-32(fp)
- 4fc74: 1001703a wrctl status,r2
- /*
- * If there is any data left then either return now or block until
- * some has been sent
- */
- /* consider: test whether there is anything there while doing this and delay for at most 2s. */
- if (count > 0)
- 4fc78: e0bffe17 ldw r2,-8(fp)
- 4fc7c: 0080100e bge zero,r2,4fcc0 <altera_avalon_jtag_uart_write+0x1c4>
- {
- if (flags & O_NONBLOCK)
- 4fc80: e0bfff17 ldw r2,-4(fp)
- 4fc84: 1090000c andi r2,r2,16384
- 4fc88: 1000101e bne r2,zero,4fccc <altera_avalon_jtag_uart_write+0x1d0>
- /*
- * No OS present: Always wait for data to be removed from buffer. Once
- * the interrupt routine has removed some data then we will be able to
- * insert some more.
- */
- while (out == sp->tx_out && sp->host_inactive < sp->timeout)
- 4fc8c: 0001883a nop
- 4fc90: e0bffc17 ldw r2,-16(fp)
- 4fc94: 10c00d17 ldw r3,52(r2)
- 4fc98: e0bff517 ldw r2,-44(fp)
- 4fc9c: 1880051e bne r3,r2,4fcb4 <altera_avalon_jtag_uart_write+0x1b8>
- 4fca0: e0bffc17 ldw r2,-16(fp)
- 4fca4: 10c00917 ldw r3,36(r2)
- 4fca8: e0bffc17 ldw r2,-16(fp)
- 4fcac: 10800117 ldw r2,4(r2)
- 4fcb0: 18bff736 bltu r3,r2,4fc90 <__alt_data_end+0xfffddc90>
- ;
- #endif /* __ucosii__ */
- if (sp->host_inactive)
- 4fcb4: e0bffc17 ldw r2,-16(fp)
- 4fcb8: 10800917 ldw r2,36(r2)
- 4fcbc: 1000051e bne r2,zero,4fcd4 <altera_avalon_jtag_uart_write+0x1d8>
- break;
- }
- }
- while (count > 0);
- 4fcc0: e0bffe17 ldw r2,-8(fp)
- 4fcc4: 00bfd016 blt zero,r2,4fc08 <__alt_data_end+0xfffddc08>
- 4fcc8: 00000306 br 4fcd8 <altera_avalon_jtag_uart_write+0x1dc>
- */
- /* consider: test whether there is anything there while doing this and delay for at most 2s. */
- if (count > 0)
- {
- if (flags & O_NONBLOCK)
- break;
- 4fccc: 0001883a nop
- 4fcd0: 00000106 br 4fcd8 <altera_avalon_jtag_uart_write+0x1dc>
- while (out == sp->tx_out && sp->host_inactive < sp->timeout)
- ;
- #endif /* __ucosii__ */
- if (sp->host_inactive)
- break;
- 4fcd4: 0001883a nop
- * Now that access to the circular buffer is complete, release the write
- * semaphore so that other threads can access the buffer.
- */
- ALT_SEM_POST (sp->write_lock);
- if (ptr != start)
- 4fcd8: e0fffd17 ldw r3,-12(fp)
- 4fcdc: e0bff717 ldw r2,-36(fp)
- 4fce0: 18800426 beq r3,r2,4fcf4 <altera_avalon_jtag_uart_write+0x1f8>
- return ptr - start;
- 4fce4: e0fffd17 ldw r3,-12(fp)
- 4fce8: e0bff717 ldw r2,-36(fp)
- 4fcec: 1885c83a sub r2,r3,r2
- 4fcf0: 00000606 br 4fd0c <altera_avalon_jtag_uart_write+0x210>
- else if (flags & O_NONBLOCK)
- 4fcf4: e0bfff17 ldw r2,-4(fp)
- 4fcf8: 1090000c andi r2,r2,16384
- 4fcfc: 10000226 beq r2,zero,4fd08 <altera_avalon_jtag_uart_write+0x20c>
- return -EWOULDBLOCK;
- 4fd00: 00bffd44 movi r2,-11
- 4fd04: 00000106 br 4fd0c <altera_avalon_jtag_uart_write+0x210>
- sp->tx_out = sp->tx_in = 0;
- return ptr - start + count;
- }
- #endif
- else
- return -EIO; /* Host not connected */
- 4fd08: 00bffec4 movi r2,-5
- }
- 4fd0c: e037883a mov sp,fp
- 4fd10: dfc00117 ldw ra,4(sp)
- 4fd14: df000017 ldw fp,0(sp)
- 4fd18: dec00204 addi sp,sp,8
- 4fd1c: f800283a ret
- 0004fd20 <lcd_write_command>:
- /* --------------------------------------------------------------------- */
- static void lcd_write_command(altera_avalon_lcd_16207_state* sp,
- unsigned char command)
- {
- 4fd20: defffa04 addi sp,sp,-24
- 4fd24: dfc00515 stw ra,20(sp)
- 4fd28: df000415 stw fp,16(sp)
- 4fd2c: df000404 addi fp,sp,16
- 4fd30: e13ffe15 stw r4,-8(fp)
- 4fd34: 2805883a mov r2,r5
- 4fd38: e0bfff05 stb r2,-4(fp)
- unsigned int base = sp->base;
- 4fd3c: e0bffe17 ldw r2,-8(fp)
- 4fd40: 10800017 ldw r2,0(r2)
- 4fd44: e0bffd15 stw r2,-12(fp)
- /* We impose a timeout on the driver in case the LCD panel isn't connected.
- * The first time we call this function the timeout is approx 25ms
- * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems
- * with slower clocks, or debug builds, or slower memory will take longer.
- */
- int i = 1000000;
- 4fd48: 008003f4 movhi r2,15
- 4fd4c: 10909004 addi r2,r2,16960
- 4fd50: e0bffc15 stw r2,-16(fp)
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- 4fd54: e0bffe17 ldw r2,-8(fp)
- 4fd58: 10800803 ldbu r2,32(r2)
- 4fd5c: 10803fcc andi r2,r2,255
- 4fd60: 1080201c xori r2,r2,128
- 4fd64: 10bfe004 addi r2,r2,-128
- 4fd68: 1000151e bne r2,zero,4fdc0 <lcd_write_command+0xa0>
- return;
- /* Wait until LCD isn't busy. */
- while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
- 4fd6c: 00000906 br 4fd94 <lcd_write_command+0x74>
- if (--i == 0)
- 4fd70: e0bffc17 ldw r2,-16(fp)
- 4fd74: 10bfffc4 addi r2,r2,-1
- 4fd78: e0bffc15 stw r2,-16(fp)
- 4fd7c: e0bffc17 ldw r2,-16(fp)
- 4fd80: 1000041e bne r2,zero,4fd94 <lcd_write_command+0x74>
- {
- sp->broken = 1;
- 4fd84: e0bffe17 ldw r2,-8(fp)
- 4fd88: 00c00044 movi r3,1
- 4fd8c: 10c00805 stb r3,32(r2)
- return;
- 4fd90: 00000c06 br 4fdc4 <lcd_write_command+0xa4>
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- return;
- /* Wait until LCD isn't busy. */
- while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
- 4fd94: e0bffd17 ldw r2,-12(fp)
- 4fd98: 10800104 addi r2,r2,4
- 4fd9c: 10800037 ldwio r2,0(r2)
- 4fda0: 1080200c andi r2,r2,128
- 4fda4: 103ff21e bne r2,zero,4fd70 <__alt_data_end+0xfffddd70>
- }
- /* Despite what it says in the datasheet, the LCD isn't ready to accept
- * a write immediately after it returns BUSY=0. Wait for 100us more.
- */
- usleep(100);
- 4fda8: 01001904 movi r4,100
- 4fdac: 00518000 call 51800 <usleep>
- IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command);
- 4fdb0: e0bffd17 ldw r2,-12(fp)
- 4fdb4: e0ffff03 ldbu r3,-4(fp)
- 4fdb8: 10c00035 stwio r3,0(r2)
- 4fdbc: 00000106 br 4fdc4 <lcd_write_command+0xa4>
- */
- int i = 1000000;
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- return;
- 4fdc0: 0001883a nop
- * a write immediately after it returns BUSY=0. Wait for 100us more.
- */
- usleep(100);
- IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, command);
- }
- 4fdc4: e037883a mov sp,fp
- 4fdc8: dfc00117 ldw ra,4(sp)
- 4fdcc: df000017 ldw fp,0(sp)
- 4fdd0: dec00204 addi sp,sp,8
- 4fdd4: f800283a ret
- 0004fdd8 <lcd_write_data>:
- /* --------------------------------------------------------------------- */
- static void lcd_write_data(altera_avalon_lcd_16207_state* sp,
- unsigned char data)
- {
- 4fdd8: defffa04 addi sp,sp,-24
- 4fddc: dfc00515 stw ra,20(sp)
- 4fde0: df000415 stw fp,16(sp)
- 4fde4: df000404 addi fp,sp,16
- 4fde8: e13ffe15 stw r4,-8(fp)
- 4fdec: 2805883a mov r2,r5
- 4fdf0: e0bfff05 stb r2,-4(fp)
- unsigned int base = sp->base;
- 4fdf4: e0bffe17 ldw r2,-8(fp)
- 4fdf8: 10800017 ldw r2,0(r2)
- 4fdfc: e0bffd15 stw r2,-12(fp)
- /* We impose a timeout on the driver in case the LCD panel isn't connected.
- * The first time we call this function the timeout is approx 25ms
- * (assuming 5 cycles per loop and a 200MHz clock). Obviously systems
- * with slower clocks, or debug builds, or slower memory will take longer.
- */
- int i = 1000000;
- 4fe00: 008003f4 movhi r2,15
- 4fe04: 10909004 addi r2,r2,16960
- 4fe08: e0bffc15 stw r2,-16(fp)
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- 4fe0c: e0bffe17 ldw r2,-8(fp)
- 4fe10: 10800803 ldbu r2,32(r2)
- 4fe14: 10803fcc andi r2,r2,255
- 4fe18: 1080201c xori r2,r2,128
- 4fe1c: 10bfe004 addi r2,r2,-128
- 4fe20: 10001d1e bne r2,zero,4fe98 <lcd_write_data+0xc0>
- return;
- /* Wait until LCD isn't busy. */
- while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
- 4fe24: 00000906 br 4fe4c <lcd_write_data+0x74>
- if (--i == 0)
- 4fe28: e0bffc17 ldw r2,-16(fp)
- 4fe2c: 10bfffc4 addi r2,r2,-1
- 4fe30: e0bffc15 stw r2,-16(fp)
- 4fe34: e0bffc17 ldw r2,-16(fp)
- 4fe38: 1000041e bne r2,zero,4fe4c <lcd_write_data+0x74>
- {
- sp->broken = 1;
- 4fe3c: e0bffe17 ldw r2,-8(fp)
- 4fe40: 00c00044 movi r3,1
- 4fe44: 10c00805 stb r3,32(r2)
- return;
- 4fe48: 00001406 br 4fe9c <lcd_write_data+0xc4>
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- return;
- /* Wait until LCD isn't busy. */
- while (IORD_ALTERA_AVALON_LCD_16207_STATUS(base) & ALTERA_AVALON_LCD_16207_STATUS_BUSY_MSK)
- 4fe4c: e0bffd17 ldw r2,-12(fp)
- 4fe50: 10800104 addi r2,r2,4
- 4fe54: 10800037 ldwio r2,0(r2)
- 4fe58: 1080200c andi r2,r2,128
- 4fe5c: 103ff21e bne r2,zero,4fe28 <__alt_data_end+0xfffdde28>
- }
- /* Despite what it says in the datasheet, the LCD isn't ready to accept
- * a write immediately after it returns BUSY=0. Wait for 100us more.
- */
- usleep(100);
- 4fe60: 01001904 movi r4,100
- 4fe64: 00518000 call 51800 <usleep>
- IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data);
- 4fe68: e0bffd17 ldw r2,-12(fp)
- 4fe6c: 10800204 addi r2,r2,8
- 4fe70: 1007883a mov r3,r2
- 4fe74: e0bfff03 ldbu r2,-4(fp)
- 4fe78: 18800035 stwio r2,0(r3)
- sp->address++;
- 4fe7c: e0bffe17 ldw r2,-8(fp)
- 4fe80: 108008c3 ldbu r2,35(r2)
- 4fe84: 10800044 addi r2,r2,1
- 4fe88: 1007883a mov r3,r2
- 4fe8c: e0bffe17 ldw r2,-8(fp)
- 4fe90: 10c008c5 stb r3,35(r2)
- 4fe94: 00000106 br 4fe9c <lcd_write_data+0xc4>
- */
- int i = 1000000;
- /* Don't bother if the LCD panel didn't work before */
- if (sp->broken)
- return;
- 4fe98: 0001883a nop
- usleep(100);
- IOWR_ALTERA_AVALON_LCD_16207_DATA(base, data);
- sp->address++;
- }
- 4fe9c: e037883a mov sp,fp
- 4fea0: dfc00117 ldw ra,4(sp)
- 4fea4: df000017 ldw fp,0(sp)
- 4fea8: dec00204 addi sp,sp,8
- 4feac: f800283a ret
- 0004feb0 <lcd_clear_screen>:
- /* --------------------------------------------------------------------- */
- static void lcd_clear_screen(altera_avalon_lcd_16207_state* sp)
- {
- 4feb0: defffb04 addi sp,sp,-20
- 4feb4: dfc00415 stw ra,16(sp)
- 4feb8: df000315 stw fp,12(sp)
- 4febc: dc000215 stw r16,8(sp)
- 4fec0: df000304 addi fp,sp,12
- 4fec4: e13ffe15 stw r4,-8(fp)
- int y;
- lcd_write_command(sp, LCD_CMD_CLEAR);
- 4fec8: 01400044 movi r5,1
- 4fecc: e13ffe17 ldw r4,-8(fp)
- 4fed0: 004fd200 call 4fd20 <lcd_write_command>
- sp->x = 0;
- 4fed4: e0bffe17 ldw r2,-8(fp)
- 4fed8: 10000845 stb zero,33(r2)
- sp->y = 0;
- 4fedc: e0bffe17 ldw r2,-8(fp)
- 4fee0: 10000885 stb zero,34(r2)
- sp->address = 0;
- 4fee4: e0bffe17 ldw r2,-8(fp)
- 4fee8: 100008c5 stb zero,35(r2)
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 4feec: e03ffd15 stw zero,-12(fp)
- 4fef0: 00001f06 br 4ff70 <lcd_clear_screen+0xc0>
- {
- memset(sp->line[y].data, ' ', sizeof(sp->line[0].data));
- 4fef4: 014018c4 movi r5,99
- 4fef8: e13ffd17 ldw r4,-12(fp)
- 4fefc: 004c9f80 call 4c9f8 <__mulsi3>
- 4ff00: 10801004 addi r2,r2,64
- 4ff04: e0fffe17 ldw r3,-8(fp)
- 4ff08: 1885883a add r2,r3,r2
- 4ff0c: 01801444 movi r6,81
- 4ff10: 01400804 movi r5,32
- 4ff14: 1009883a mov r4,r2
- 4ff18: 00478080 call 47808 <memset>
- memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible));
- 4ff1c: 014018c4 movi r5,99
- 4ff20: e13ffd17 ldw r4,-12(fp)
- 4ff24: 004c9f80 call 4c9f8 <__mulsi3>
- 4ff28: 10800c04 addi r2,r2,48
- 4ff2c: e0fffe17 ldw r3,-8(fp)
- 4ff30: 1885883a add r2,r3,r2
- 4ff34: 01800404 movi r6,16
- 4ff38: 01400804 movi r5,32
- 4ff3c: 1009883a mov r4,r2
- 4ff40: 00478080 call 47808 <memset>
- sp->line[y].width = 0;
- 4ff44: e43ffe17 ldw r16,-8(fp)
- 4ff48: e0bffd17 ldw r2,-12(fp)
- 4ff4c: 014018c4 movi r5,99
- 4ff50: 1009883a mov r4,r2
- 4ff54: 004c9f80 call 4c9f8 <__mulsi3>
- 4ff58: 8085883a add r2,r16,r2
- 4ff5c: 10802444 addi r2,r2,145
- 4ff60: 10000005 stb zero,0(r2)
- sp->x = 0;
- sp->y = 0;
- sp->address = 0;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 4ff64: e0bffd17 ldw r2,-12(fp)
- 4ff68: 10800044 addi r2,r2,1
- 4ff6c: e0bffd15 stw r2,-12(fp)
- 4ff70: e0bffd17 ldw r2,-12(fp)
- 4ff74: 10800090 cmplti r2,r2,2
- 4ff78: 103fde1e bne r2,zero,4fef4 <__alt_data_end+0xfffddef4>
- {
- memset(sp->line[y].data, ' ', sizeof(sp->line[0].data));
- memset(sp->line[y].visible, ' ', sizeof(sp->line[0].visible));
- sp->line[y].width = 0;
- }
- }
- 4ff7c: 0001883a nop
- 4ff80: e6ffff04 addi sp,fp,-4
- 4ff84: dfc00217 ldw ra,8(sp)
- 4ff88: df000117 ldw fp,4(sp)
- 4ff8c: dc000017 ldw r16,0(sp)
- 4ff90: dec00304 addi sp,sp,12
- 4ff94: f800283a ret
- 0004ff98 <lcd_repaint_screen>:
- /* --------------------------------------------------------------------- */
- static void lcd_repaint_screen(altera_avalon_lcd_16207_state* sp)
- {
- 4ff98: defff504 addi sp,sp,-44
- 4ff9c: dfc00a15 stw ra,40(sp)
- 4ffa0: df000915 stw fp,36(sp)
- 4ffa4: dc400815 stw r17,32(sp)
- 4ffa8: dc000715 stw r16,28(sp)
- 4ffac: df000904 addi fp,sp,36
- 4ffb0: e13ffd15 stw r4,-12(fp)
- /* scrollpos controls how much the lines have scrolled round. The speed
- * each line scrolls at is controlled by its speed variable - while
- * scrolline lines will wrap at the position set by width
- */
- int scrollpos = sp->scrollpos;
- 4ffb4: e0bffd17 ldw r2,-12(fp)
- 4ffb8: 10800943 ldbu r2,37(r2)
- 4ffbc: 10803fcc andi r2,r2,255
- 4ffc0: e0bffa15 stw r2,-24(fp)
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 4ffc4: e03ff715 stw zero,-36(fp)
- 4ffc8: 00007206 br 50194 <lcd_repaint_screen+0x1fc>
- {
- int width = sp->line[y].width;
- 4ffcc: e43ffd17 ldw r16,-12(fp)
- 4ffd0: e0bff717 ldw r2,-36(fp)
- 4ffd4: 014018c4 movi r5,99
- 4ffd8: 1009883a mov r4,r2
- 4ffdc: 004c9f80 call 4c9f8 <__mulsi3>
- 4ffe0: 8085883a add r2,r16,r2
- 4ffe4: 10802444 addi r2,r2,145
- 4ffe8: 10800003 ldbu r2,0(r2)
- 4ffec: 10803fcc andi r2,r2,255
- 4fff0: 1080201c xori r2,r2,128
- 4fff4: 10bfe004 addi r2,r2,-128
- 4fff8: e0bffb15 stw r2,-20(fp)
- int offset = (scrollpos * sp->line[y].speed) >> 8;
- 4fffc: e43ffd17 ldw r16,-12(fp)
- 50000: e0bff717 ldw r2,-36(fp)
- 50004: 014018c4 movi r5,99
- 50008: 1009883a mov r4,r2
- 5000c: 004c9f80 call 4c9f8 <__mulsi3>
- 50010: 8085883a add r2,r16,r2
- 50014: 10802484 addi r2,r2,146
- 50018: 10800003 ldbu r2,0(r2)
- 5001c: 10803fcc andi r2,r2,255
- 50020: e17ffa17 ldw r5,-24(fp)
- 50024: 1009883a mov r4,r2
- 50028: 004c9f80 call 4c9f8 <__mulsi3>
- 5002c: 1005d23a srai r2,r2,8
- 50030: e0bff915 stw r2,-28(fp)
- if (offset >= width)
- 50034: e0fff917 ldw r3,-28(fp)
- 50038: e0bffb17 ldw r2,-20(fp)
- 5003c: 18800116 blt r3,r2,50044 <lcd_repaint_screen+0xac>
- offset = 0;
- 50040: e03ff915 stw zero,-28(fp)
- for (x = 0 ; x < ALT_LCD_WIDTH ; x++)
- 50044: e03ff815 stw zero,-32(fp)
- 50048: 00004c06 br 5017c <lcd_repaint_screen+0x1e4>
- {
- char c = sp->line[y].data[(x + offset) % width];
- 5004c: e0fff817 ldw r3,-32(fp)
- 50050: e0bff917 ldw r2,-28(fp)
- 50054: 1885883a add r2,r3,r2
- 50058: e17ffb17 ldw r5,-20(fp)
- 5005c: 1009883a mov r4,r2
- 50060: 004c8c80 call 4c8c8 <__modsi3>
- 50064: 1023883a mov r17,r2
- 50068: e43ffd17 ldw r16,-12(fp)
- 5006c: e0bff717 ldw r2,-36(fp)
- 50070: 014018c4 movi r5,99
- 50074: 1009883a mov r4,r2
- 50078: 004c9f80 call 4c9f8 <__mulsi3>
- 5007c: 8085883a add r2,r16,r2
- 50080: 1445883a add r2,r2,r17
- 50084: 10801004 addi r2,r2,64
- 50088: 10800003 ldbu r2,0(r2)
- 5008c: e0bffc05 stb r2,-16(fp)
- /* Writing data takes 40us, so don't do it unless required */
- if (sp->line[y].visible[x] != c)
- 50090: e43ffd17 ldw r16,-12(fp)
- 50094: e0bff717 ldw r2,-36(fp)
- 50098: 014018c4 movi r5,99
- 5009c: 1009883a mov r4,r2
- 500a0: 004c9f80 call 4c9f8 <__mulsi3>
- 500a4: 8087883a add r3,r16,r2
- 500a8: e0bff817 ldw r2,-32(fp)
- 500ac: 1885883a add r2,r3,r2
- 500b0: 10800c04 addi r2,r2,48
- 500b4: 10800003 ldbu r2,0(r2)
- 500b8: 10c03fcc andi r3,r2,255
- 500bc: 18c0201c xori r3,r3,128
- 500c0: 18ffe004 addi r3,r3,-128
- 500c4: e0bffc07 ldb r2,-16(fp)
- 500c8: 18802926 beq r3,r2,50170 <lcd_repaint_screen+0x1d8>
- {
- unsigned char address = x + colstart[y];
- 500cc: e0fff717 ldw r3,-36(fp)
- 500d0: d0a00d04 addi r2,gp,-32716
- 500d4: 1885883a add r2,r3,r2
- 500d8: 10800003 ldbu r2,0(r2)
- 500dc: 1007883a mov r3,r2
- 500e0: e0bff817 ldw r2,-32(fp)
- 500e4: 1885883a add r2,r3,r2
- 500e8: e0bffc45 stb r2,-15(fp)
- if (address != sp->address)
- 500ec: e0fffc43 ldbu r3,-15(fp)
- 500f0: e0bffd17 ldw r2,-12(fp)
- 500f4: 108008c3 ldbu r2,35(r2)
- 500f8: 10803fcc andi r2,r2,255
- 500fc: 1080201c xori r2,r2,128
- 50100: 10bfe004 addi r2,r2,-128
- 50104: 18800a26 beq r3,r2,50130 <lcd_repaint_screen+0x198>
- {
- lcd_write_command(sp, LCD_CMD_WRITE_DATA | address);
- 50108: e0fffc43 ldbu r3,-15(fp)
- 5010c: 00bfe004 movi r2,-128
- 50110: 1884b03a or r2,r3,r2
- 50114: 10803fcc andi r2,r2,255
- 50118: 100b883a mov r5,r2
- 5011c: e13ffd17 ldw r4,-12(fp)
- 50120: 004fd200 call 4fd20 <lcd_write_command>
- sp->address = address;
- 50124: e0fffc43 ldbu r3,-15(fp)
- 50128: e0bffd17 ldw r2,-12(fp)
- 5012c: 10c008c5 stb r3,35(r2)
- }
- lcd_write_data(sp, c);
- 50130: e0bffc03 ldbu r2,-16(fp)
- 50134: 10803fcc andi r2,r2,255
- 50138: 100b883a mov r5,r2
- 5013c: e13ffd17 ldw r4,-12(fp)
- 50140: 004fdd80 call 4fdd8 <lcd_write_data>
- sp->line[y].visible[x] = c;
- 50144: e43ffd17 ldw r16,-12(fp)
- 50148: e0bff717 ldw r2,-36(fp)
- 5014c: 014018c4 movi r5,99
- 50150: 1009883a mov r4,r2
- 50154: 004c9f80 call 4c9f8 <__mulsi3>
- 50158: 8087883a add r3,r16,r2
- 5015c: e0bff817 ldw r2,-32(fp)
- 50160: 1885883a add r2,r3,r2
- 50164: 10800c04 addi r2,r2,48
- 50168: e0fffc03 ldbu r3,-16(fp)
- 5016c: 10c00005 stb r3,0(r2)
- int width = sp->line[y].width;
- int offset = (scrollpos * sp->line[y].speed) >> 8;
- if (offset >= width)
- offset = 0;
- for (x = 0 ; x < ALT_LCD_WIDTH ; x++)
- 50170: e0bff817 ldw r2,-32(fp)
- 50174: 10800044 addi r2,r2,1
- 50178: e0bff815 stw r2,-32(fp)
- 5017c: e0bff817 ldw r2,-32(fp)
- 50180: 10800410 cmplti r2,r2,16
- 50184: 103fb11e bne r2,zero,5004c <__alt_data_end+0xfffde04c>
- * scrolline lines will wrap at the position set by width
- */
- int scrollpos = sp->scrollpos;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 50188: e0bff717 ldw r2,-36(fp)
- 5018c: 10800044 addi r2,r2,1
- 50190: e0bff715 stw r2,-36(fp)
- 50194: e0bff717 ldw r2,-36(fp)
- 50198: 10800090 cmplti r2,r2,2
- 5019c: 103f8b1e bne r2,zero,4ffcc <__alt_data_end+0xfffddfcc>
- lcd_write_data(sp, c);
- sp->line[y].visible[x] = c;
- }
- }
- }
- }
- 501a0: 0001883a nop
- 501a4: e6fffe04 addi sp,fp,-8
- 501a8: dfc00317 ldw ra,12(sp)
- 501ac: df000217 ldw fp,8(sp)
- 501b0: dc400117 ldw r17,4(sp)
- 501b4: dc000017 ldw r16,0(sp)
- 501b8: dec00404 addi sp,sp,16
- 501bc: f800283a ret
- 000501c0 <lcd_scroll_up>:
- /* --------------------------------------------------------------------- */
- static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp)
- {
- 501c0: defffb04 addi sp,sp,-20
- 501c4: dfc00415 stw ra,16(sp)
- 501c8: df000315 stw fp,12(sp)
- 501cc: dc000215 stw r16,8(sp)
- 501d0: df000304 addi fp,sp,12
- 501d4: e13ffe15 stw r4,-8(fp)
- int y;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 501d8: e03ffd15 stw zero,-12(fp)
- 501dc: 00002206 br 50268 <lcd_scroll_up+0xa8>
- {
- if (y < ALT_LCD_HEIGHT-1)
- 501e0: e0bffd17 ldw r2,-12(fp)
- 501e4: 00801316 blt zero,r2,50234 <lcd_scroll_up+0x74>
- memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH);
- 501e8: 014018c4 movi r5,99
- 501ec: e13ffd17 ldw r4,-12(fp)
- 501f0: 004c9f80 call 4c9f8 <__mulsi3>
- 501f4: 10801004 addi r2,r2,64
- 501f8: e0fffe17 ldw r3,-8(fp)
- 501fc: 18a1883a add r16,r3,r2
- 50200: e0bffd17 ldw r2,-12(fp)
- 50204: 10800044 addi r2,r2,1
- 50208: 014018c4 movi r5,99
- 5020c: 1009883a mov r4,r2
- 50210: 004c9f80 call 4c9f8 <__mulsi3>
- 50214: 10801004 addi r2,r2,64
- 50218: e0fffe17 ldw r3,-8(fp)
- 5021c: 1885883a add r2,r3,r2
- 50220: 01801404 movi r6,80
- 50224: 100b883a mov r5,r2
- 50228: 8009883a mov r4,r16
- 5022c: 00476c00 call 476c0 <memcpy>
- 50230: 00000a06 br 5025c <lcd_scroll_up+0x9c>
- else
- memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH);
- 50234: 014018c4 movi r5,99
- 50238: e13ffd17 ldw r4,-12(fp)
- 5023c: 004c9f80 call 4c9f8 <__mulsi3>
- 50240: 10801004 addi r2,r2,64
- 50244: e0fffe17 ldw r3,-8(fp)
- 50248: 1885883a add r2,r3,r2
- 5024c: 01801404 movi r6,80
- 50250: 01400804 movi r5,32
- 50254: 1009883a mov r4,r2
- 50258: 00478080 call 47808 <memset>
- static void lcd_scroll_up(altera_avalon_lcd_16207_state* sp)
- {
- int y;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 5025c: e0bffd17 ldw r2,-12(fp)
- 50260: 10800044 addi r2,r2,1
- 50264: e0bffd15 stw r2,-12(fp)
- 50268: e0bffd17 ldw r2,-12(fp)
- 5026c: 10800090 cmplti r2,r2,2
- 50270: 103fdb1e bne r2,zero,501e0 <__alt_data_end+0xfffde1e0>
- memcpy(sp->line[y].data, sp->line[y+1].data, ALT_LCD_VIRTUAL_WIDTH);
- else
- memset(sp->line[y].data, ' ', ALT_LCD_VIRTUAL_WIDTH);
- }
- sp->y--;
- 50274: e0bffe17 ldw r2,-8(fp)
- 50278: 10800883 ldbu r2,34(r2)
- 5027c: 10bfffc4 addi r2,r2,-1
- 50280: 1007883a mov r3,r2
- 50284: e0bffe17 ldw r2,-8(fp)
- 50288: 10c00885 stb r3,34(r2)
- }
- 5028c: 0001883a nop
- 50290: e6ffff04 addi sp,fp,-4
- 50294: dfc00217 ldw ra,8(sp)
- 50298: df000117 ldw fp,4(sp)
- 5029c: dc000017 ldw r16,0(sp)
- 502a0: dec00304 addi sp,sp,12
- 502a4: f800283a ret
- 000502a8 <lcd_handle_escape>:
- /* --------------------------------------------------------------------- */
- static void lcd_handle_escape(altera_avalon_lcd_16207_state* sp, char c)
- {
- 502a8: defff904 addi sp,sp,-28
- 502ac: dfc00615 stw ra,24(sp)
- 502b0: df000515 stw fp,20(sp)
- 502b4: df000504 addi fp,sp,20
- 502b8: e13ffe15 stw r4,-8(fp)
- 502bc: 2805883a mov r2,r5
- 502c0: e0bfff05 stb r2,-4(fp)
- int parm1 = 0, parm2 = 0;
- 502c4: e03ffb15 stw zero,-20(fp)
- 502c8: e03ffc15 stw zero,-16(fp)
- if (sp->escape[0] == '[')
- 502cc: e0bffe17 ldw r2,-8(fp)
- 502d0: 10800a03 ldbu r2,40(r2)
- 502d4: 10803fcc andi r2,r2,255
- 502d8: 1080201c xori r2,r2,128
- 502dc: 10bfe004 addi r2,r2,-128
- 502e0: 108016d8 cmpnei r2,r2,91
- 502e4: 1000451e bne r2,zero,503fc <lcd_handle_escape+0x154>
- {
- char * ptr = sp->escape+1;
- 502e8: e0bffe17 ldw r2,-8(fp)
- 502ec: 10800a04 addi r2,r2,40
- 502f0: 10800044 addi r2,r2,1
- 502f4: e0bffd15 stw r2,-12(fp)
- while (isdigit(*ptr))
- 502f8: 00000e06 br 50334 <lcd_handle_escape+0x8c>
- parm1 = (parm1 * 10) + (*ptr++ - '0');
- 502fc: 01400284 movi r5,10
- 50300: e13ffb17 ldw r4,-20(fp)
- 50304: 004c9f80 call 4c9f8 <__mulsi3>
- 50308: 1009883a mov r4,r2
- 5030c: e0bffd17 ldw r2,-12(fp)
- 50310: 10c00044 addi r3,r2,1
- 50314: e0fffd15 stw r3,-12(fp)
- 50318: 10800003 ldbu r2,0(r2)
- 5031c: 10803fcc andi r2,r2,255
- 50320: 1080201c xori r2,r2,128
- 50324: 10bfe004 addi r2,r2,-128
- 50328: 10bff404 addi r2,r2,-48
- 5032c: 2085883a add r2,r4,r2
- 50330: e0bffb15 stw r2,-20(fp)
- int parm1 = 0, parm2 = 0;
- if (sp->escape[0] == '[')
- {
- char * ptr = sp->escape+1;
- while (isdigit(*ptr))
- 50334: d0e01117 ldw r3,-32700(gp)
- 50338: e0bffd17 ldw r2,-12(fp)
- 5033c: 10800003 ldbu r2,0(r2)
- 50340: 10803fcc andi r2,r2,255
- 50344: 1080201c xori r2,r2,128
- 50348: 10bfe004 addi r2,r2,-128
- 5034c: 10800044 addi r2,r2,1
- 50350: 1885883a add r2,r3,r2
- 50354: 10800003 ldbu r2,0(r2)
- 50358: 10803fcc andi r2,r2,255
- 5035c: 1080010c andi r2,r2,4
- 50360: 103fe61e bne r2,zero,502fc <__alt_data_end+0xfffde2fc>
- parm1 = (parm1 * 10) + (*ptr++ - '0');
- if (*ptr == ';')
- 50364: e0bffd17 ldw r2,-12(fp)
- 50368: 10800003 ldbu r2,0(r2)
- 5036c: 10803fcc andi r2,r2,255
- 50370: 1080201c xori r2,r2,128
- 50374: 10bfe004 addi r2,r2,-128
- 50378: 10800ed8 cmpnei r2,r2,59
- 5037c: 1000211e bne r2,zero,50404 <lcd_handle_escape+0x15c>
- {
- ptr++;
- 50380: e0bffd17 ldw r2,-12(fp)
- 50384: 10800044 addi r2,r2,1
- 50388: e0bffd15 stw r2,-12(fp)
- while (isdigit(*ptr))
- 5038c: 00000e06 br 503c8 <lcd_handle_escape+0x120>
- parm2 = (parm2 * 10) + (*ptr++ - '0');
- 50390: 01400284 movi r5,10
- 50394: e13ffc17 ldw r4,-16(fp)
- 50398: 004c9f80 call 4c9f8 <__mulsi3>
- 5039c: 1009883a mov r4,r2
- 503a0: e0bffd17 ldw r2,-12(fp)
- 503a4: 10c00044 addi r3,r2,1
- 503a8: e0fffd15 stw r3,-12(fp)
- 503ac: 10800003 ldbu r2,0(r2)
- 503b0: 10803fcc andi r2,r2,255
- 503b4: 1080201c xori r2,r2,128
- 503b8: 10bfe004 addi r2,r2,-128
- 503bc: 10bff404 addi r2,r2,-48
- 503c0: 2085883a add r2,r4,r2
- 503c4: e0bffc15 stw r2,-16(fp)
- parm1 = (parm1 * 10) + (*ptr++ - '0');
- if (*ptr == ';')
- {
- ptr++;
- while (isdigit(*ptr))
- 503c8: d0e01117 ldw r3,-32700(gp)
- 503cc: e0bffd17 ldw r2,-12(fp)
- 503d0: 10800003 ldbu r2,0(r2)
- 503d4: 10803fcc andi r2,r2,255
- 503d8: 1080201c xori r2,r2,128
- 503dc: 10bfe004 addi r2,r2,-128
- 503e0: 10800044 addi r2,r2,1
- 503e4: 1885883a add r2,r3,r2
- 503e8: 10800003 ldbu r2,0(r2)
- 503ec: 10803fcc andi r2,r2,255
- 503f0: 1080010c andi r2,r2,4
- 503f4: 103fe61e bne r2,zero,50390 <__alt_data_end+0xfffde390>
- 503f8: 00000206 br 50404 <lcd_handle_escape+0x15c>
- parm2 = (parm2 * 10) + (*ptr++ - '0');
- }
- }
- else
- parm1 = -1;
- 503fc: 00bfffc4 movi r2,-1
- 50400: e0bffb15 stw r2,-20(fp)
- switch (c)
- 50404: e0bfff07 ldb r2,-4(fp)
- 50408: 10c012a0 cmpeqi r3,r2,74
- 5040c: 1800291e bne r3,zero,504b4 <lcd_handle_escape+0x20c>
- 50410: 10c012c8 cmpgei r3,r2,75
- 50414: 1800031e bne r3,zero,50424 <lcd_handle_escape+0x17c>
- 50418: 10801220 cmpeqi r2,r2,72
- 5041c: 1000061e bne r2,zero,50438 <lcd_handle_escape+0x190>
- if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
- memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
- }
- break;
- }
- }
- 50420: 00004c06 br 50554 <lcd_handle_escape+0x2ac>
- }
- }
- else
- parm1 = -1;
- switch (c)
- 50424: 10c012e0 cmpeqi r3,r2,75
- 50428: 1800281e bne r3,zero,504cc <lcd_handle_escape+0x224>
- 5042c: 108019a0 cmpeqi r2,r2,102
- 50430: 1000011e bne r2,zero,50438 <lcd_handle_escape+0x190>
- if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
- memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
- }
- break;
- }
- }
- 50434: 00004706 br 50554 <lcd_handle_escape+0x2ac>
- switch (c)
- {
- case 'H': /* ESC '[' <y> ';' <x> 'H' : Move cursor to location */
- case 'f': /* Same as above */
- if (parm2 > 0)
- 50438: e0bffc17 ldw r2,-16(fp)
- 5043c: 0080050e bge zero,r2,50454 <lcd_handle_escape+0x1ac>
- sp->x = parm2 - 1;
- 50440: e0bffc17 ldw r2,-16(fp)
- 50444: 10bfffc4 addi r2,r2,-1
- 50448: 1007883a mov r3,r2
- 5044c: e0bffe17 ldw r2,-8(fp)
- 50450: 10c00845 stb r3,33(r2)
- if (parm1 > 0)
- 50454: e0bffb17 ldw r2,-20(fp)
- 50458: 0080390e bge zero,r2,50540 <lcd_handle_escape+0x298>
- {
- sp->y = parm1 - 1;
- 5045c: e0bffb17 ldw r2,-20(fp)
- 50460: 10bfffc4 addi r2,r2,-1
- 50464: 1007883a mov r3,r2
- 50468: e0bffe17 ldw r2,-8(fp)
- 5046c: 10c00885 stb r3,34(r2)
- if (sp->y > ALT_LCD_HEIGHT * 2)
- 50470: e0bffe17 ldw r2,-8(fp)
- 50474: 10800883 ldbu r2,34(r2)
- 50478: 10803fcc andi r2,r2,255
- 5047c: 10800170 cmpltui r2,r2,5
- 50480: 1000061e bne r2,zero,5049c <lcd_handle_escape+0x1f4>
- sp->y = ALT_LCD_HEIGHT * 2;
- 50484: e0bffe17 ldw r2,-8(fp)
- 50488: 00c00104 movi r3,4
- 5048c: 10c00885 stb r3,34(r2)
- while (sp->y > ALT_LCD_HEIGHT)
- 50490: 00000206 br 5049c <lcd_handle_escape+0x1f4>
- lcd_scroll_up(sp);
- 50494: e13ffe17 ldw r4,-8(fp)
- 50498: 00501c00 call 501c0 <lcd_scroll_up>
- if (parm1 > 0)
- {
- sp->y = parm1 - 1;
- if (sp->y > ALT_LCD_HEIGHT * 2)
- sp->y = ALT_LCD_HEIGHT * 2;
- while (sp->y > ALT_LCD_HEIGHT)
- 5049c: e0bffe17 ldw r2,-8(fp)
- 504a0: 10800883 ldbu r2,34(r2)
- 504a4: 10803fcc andi r2,r2,255
- 504a8: 108000e8 cmpgeui r2,r2,3
- 504ac: 103ff91e bne r2,zero,50494 <__alt_data_end+0xfffde494>
- lcd_scroll_up(sp);
- }
- break;
- 504b0: 00002306 br 50540 <lcd_handle_escape+0x298>
- /* ESC J is clear to beginning of line [unimplemented]
- * ESC [ 0 J is clear to bottom of screen [unimplemented]
- * ESC [ 1 J is clear to beginning of screen [unimplemented]
- * ESC [ 2 J is clear screen
- */
- if (parm1 == 2)
- 504b4: e0bffb17 ldw r2,-20(fp)
- 504b8: 10800098 cmpnei r2,r2,2
- 504bc: 1000221e bne r2,zero,50548 <lcd_handle_escape+0x2a0>
- lcd_clear_screen(sp);
- 504c0: e13ffe17 ldw r4,-8(fp)
- 504c4: 004feb00 call 4feb0 <lcd_clear_screen>
- break;
- 504c8: 00001f06 br 50548 <lcd_handle_escape+0x2a0>
- /* ESC K is clear to end of line
- * ESC [ 0 K is clear to end of line
- * ESC [ 1 K is clear to beginning of line [unimplemented]
- * ESC [ 2 K is clear line [unimplemented]
- */
- if (parm1 < 1)
- 504cc: e0bffb17 ldw r2,-20(fp)
- 504d0: 00801f16 blt zero,r2,50550 <lcd_handle_escape+0x2a8>
- {
- if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
- 504d4: e0bffe17 ldw r2,-8(fp)
- 504d8: 10800843 ldbu r2,33(r2)
- 504dc: 10803fcc andi r2,r2,255
- 504e0: 10801428 cmpgeui r2,r2,80
- 504e4: 10001a1e bne r2,zero,50550 <lcd_handle_escape+0x2a8>
- memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
- 504e8: e0bffe17 ldw r2,-8(fp)
- 504ec: 10800883 ldbu r2,34(r2)
- 504f0: 10803fcc andi r2,r2,255
- 504f4: 014018c4 movi r5,99
- 504f8: 1009883a mov r4,r2
- 504fc: 004c9f80 call 4c9f8 <__mulsi3>
- 50500: 10801004 addi r2,r2,64
- 50504: e0fffe17 ldw r3,-8(fp)
- 50508: 1887883a add r3,r3,r2
- 5050c: e0bffe17 ldw r2,-8(fp)
- 50510: 10800843 ldbu r2,33(r2)
- 50514: 10803fcc andi r2,r2,255
- 50518: 1889883a add r4,r3,r2
- 5051c: e0bffe17 ldw r2,-8(fp)
- 50520: 10800843 ldbu r2,33(r2)
- 50524: 10803fcc andi r2,r2,255
- 50528: 00c01404 movi r3,80
- 5052c: 1885c83a sub r2,r3,r2
- 50530: 100d883a mov r6,r2
- 50534: 01400804 movi r5,32
- 50538: 00478080 call 47808 <memset>
- }
- break;
- 5053c: 00000406 br 50550 <lcd_handle_escape+0x2a8>
- if (sp->y > ALT_LCD_HEIGHT * 2)
- sp->y = ALT_LCD_HEIGHT * 2;
- while (sp->y > ALT_LCD_HEIGHT)
- lcd_scroll_up(sp);
- }
- break;
- 50540: 0001883a nop
- 50544: 00000306 br 50554 <lcd_handle_escape+0x2ac>
- * ESC [ 1 J is clear to beginning of screen [unimplemented]
- * ESC [ 2 J is clear screen
- */
- if (parm1 == 2)
- lcd_clear_screen(sp);
- break;
- 50548: 0001883a nop
- 5054c: 00000106 br 50554 <lcd_handle_escape+0x2ac>
- if (parm1 < 1)
- {
- if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
- memset(sp->line[sp->y].data + sp->x, ' ', ALT_LCD_VIRTUAL_WIDTH - sp->x);
- }
- break;
- 50550: 0001883a nop
- }
- }
- 50554: 0001883a nop
- 50558: e037883a mov sp,fp
- 5055c: dfc00117 ldw ra,4(sp)
- 50560: df000017 ldw fp,0(sp)
- 50564: dec00204 addi sp,sp,8
- 50568: f800283a ret
- 0005056c <altera_avalon_lcd_16207_write>:
- /* --------------------------------------------------------------------- */
- int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp,
- const char* ptr, int len, int flags)
- {
- 5056c: defff104 addi sp,sp,-60
- 50570: dfc00e15 stw ra,56(sp)
- 50574: df000d15 stw fp,52(sp)
- 50578: dc400c15 stw r17,48(sp)
- 5057c: dc000b15 stw r16,44(sp)
- 50580: df000d04 addi fp,sp,52
- 50584: e13ffa15 stw r4,-24(fp)
- 50588: e17ffb15 stw r5,-20(fp)
- 5058c: e1bffc15 stw r6,-16(fp)
- 50590: e1fffd15 stw r7,-12(fp)
- const char* end = ptr + len;
- 50594: e0bffc17 ldw r2,-16(fp)
- 50598: e0fffb17 ldw r3,-20(fp)
- 5059c: 1885883a add r2,r3,r2
- 505a0: e0bff615 stw r2,-40(fp)
- ALT_SEM_PEND (sp->write_lock, 0);
- /* Tell the routine which is called off the timer interrupt that the
- * foreground routines are active so it must not repaint the display. */
- sp->active = 1;
- 505a4: e0bffa17 ldw r2,-24(fp)
- 505a8: 00c00044 movi r3,1
- 505ac: 10c009c5 stb r3,39(r2)
- for ( ; ptr < end ; ptr++)
- 505b0: 00009b06 br 50820 <altera_avalon_lcd_16207_write+0x2b4>
- {
- char c = *ptr;
- 505b4: e0bffb17 ldw r2,-20(fp)
- 505b8: 10800003 ldbu r2,0(r2)
- 505bc: e0bff705 stb r2,-36(fp)
- if (sp->esccount >= 0)
- 505c0: e0bffa17 ldw r2,-24(fp)
- 505c4: 10800903 ldbu r2,36(r2)
- 505c8: 10803fcc andi r2,r2,255
- 505cc: 1080201c xori r2,r2,128
- 505d0: 10bfe004 addi r2,r2,-128
- 505d4: 10003716 blt r2,zero,506b4 <altera_avalon_lcd_16207_write+0x148>
- {
- unsigned int esccount = sp->esccount;
- 505d8: e0bffa17 ldw r2,-24(fp)
- 505dc: 10800903 ldbu r2,36(r2)
- 505e0: 10803fcc andi r2,r2,255
- 505e4: 1080201c xori r2,r2,128
- 505e8: 10bfe004 addi r2,r2,-128
- 505ec: e0bff815 stw r2,-32(fp)
- /* Single character escape sequences can end with any character
- * Multi character escape sequences start with '[' and contain
- * digits and semicolons before terminating
- */
- if ((esccount == 0 && c != '[') ||
- 505f0: e0bff817 ldw r2,-32(fp)
- 505f4: 1000031e bne r2,zero,50604 <altera_avalon_lcd_16207_write+0x98>
- 505f8: e0bff707 ldb r2,-36(fp)
- 505fc: 108016d8 cmpnei r2,r2,91
- 50600: 10000d1e bne r2,zero,50638 <altera_avalon_lcd_16207_write+0xcc>
- 50604: e0bff817 ldw r2,-32(fp)
- 50608: 10001826 beq r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
- (esccount > 0 && !isdigit(c) && c != ';'))
- 5060c: d0e01117 ldw r3,-32700(gp)
- 50610: e0bff707 ldb r2,-36(fp)
- 50614: 10800044 addi r2,r2,1
- 50618: 1885883a add r2,r3,r2
- 5061c: 10800003 ldbu r2,0(r2)
- 50620: 10803fcc andi r2,r2,255
- 50624: 1080010c andi r2,r2,4
- 50628: 1000101e bne r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
- 5062c: e0bff707 ldb r2,-36(fp)
- 50630: 10800ee0 cmpeqi r2,r2,59
- 50634: 10000d1e bne r2,zero,5066c <altera_avalon_lcd_16207_write+0x100>
- {
- sp->escape[esccount] = 0;
- 50638: e0fffa17 ldw r3,-24(fp)
- 5063c: e0bff817 ldw r2,-32(fp)
- 50640: 1885883a add r2,r3,r2
- 50644: 10800a04 addi r2,r2,40
- 50648: 10000005 stb zero,0(r2)
- lcd_handle_escape(sp, c);
- 5064c: e0bff707 ldb r2,-36(fp)
- 50650: 100b883a mov r5,r2
- 50654: e13ffa17 ldw r4,-24(fp)
- 50658: 00502a80 call 502a8 <lcd_handle_escape>
- sp->esccount = -1;
- 5065c: e0bffa17 ldw r2,-24(fp)
- 50660: 00ffffc4 movi r3,-1
- 50664: 10c00905 stb r3,36(r2)
- 50668: 00006a06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- else if (sp->esccount < sizeof(sp->escape)-1)
- 5066c: e0bffa17 ldw r2,-24(fp)
- 50670: 10800903 ldbu r2,36(r2)
- 50674: 10803fcc andi r2,r2,255
- 50678: 108001e8 cmpgeui r2,r2,7
- 5067c: 1000651e bne r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
- {
- sp->escape[esccount] = c;
- 50680: e0fffa17 ldw r3,-24(fp)
- 50684: e0bff817 ldw r2,-32(fp)
- 50688: 1885883a add r2,r3,r2
- 5068c: 10800a04 addi r2,r2,40
- 50690: e0fff703 ldbu r3,-36(fp)
- 50694: 10c00005 stb r3,0(r2)
- sp->esccount++;
- 50698: e0bffa17 ldw r2,-24(fp)
- 5069c: 10800903 ldbu r2,36(r2)
- 506a0: 10800044 addi r2,r2,1
- 506a4: 1007883a mov r3,r2
- 506a8: e0bffa17 ldw r2,-24(fp)
- 506ac: 10c00905 stb r3,36(r2)
- 506b0: 00005806 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- }
- else if (c == 27) /* ESC */
- 506b4: e0bff707 ldb r2,-36(fp)
- 506b8: 108006d8 cmpnei r2,r2,27
- 506bc: 1000031e bne r2,zero,506cc <altera_avalon_lcd_16207_write+0x160>
- {
- sp->esccount = 0;
- 506c0: e0bffa17 ldw r2,-24(fp)
- 506c4: 10000905 stb zero,36(r2)
- 506c8: 00005206 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- else if (c == '\r')
- 506cc: e0bff707 ldb r2,-36(fp)
- 506d0: 10800358 cmpnei r2,r2,13
- 506d4: 1000031e bne r2,zero,506e4 <altera_avalon_lcd_16207_write+0x178>
- {
- sp->x = 0;
- 506d8: e0bffa17 ldw r2,-24(fp)
- 506dc: 10000845 stb zero,33(r2)
- 506e0: 00004c06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- else if (c == '\n')
- 506e4: e0bff707 ldb r2,-36(fp)
- 506e8: 10800298 cmpnei r2,r2,10
- 506ec: 1000101e bne r2,zero,50730 <altera_avalon_lcd_16207_write+0x1c4>
- {
- sp->x = 0;
- 506f0: e0bffa17 ldw r2,-24(fp)
- 506f4: 10000845 stb zero,33(r2)
- sp->y++;
- 506f8: e0bffa17 ldw r2,-24(fp)
- 506fc: 10800883 ldbu r2,34(r2)
- 50700: 10800044 addi r2,r2,1
- 50704: 1007883a mov r3,r2
- 50708: e0bffa17 ldw r2,-24(fp)
- 5070c: 10c00885 stb r3,34(r2)
- /* Let the cursor sit at X=0, Y=HEIGHT without scrolling so the user
- * can print two lines of data without losing one.
- */
- if (sp->y > ALT_LCD_HEIGHT)
- 50710: e0bffa17 ldw r2,-24(fp)
- 50714: 10800883 ldbu r2,34(r2)
- 50718: 10803fcc andi r2,r2,255
- 5071c: 108000f0 cmpltui r2,r2,3
- 50720: 10003c1e bne r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
- lcd_scroll_up(sp);
- 50724: e13ffa17 ldw r4,-24(fp)
- 50728: 00501c00 call 501c0 <lcd_scroll_up>
- 5072c: 00003906 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- else if (c == '\b')
- 50730: e0bff707 ldb r2,-36(fp)
- 50734: 10800218 cmpnei r2,r2,8
- 50738: 10000b1e bne r2,zero,50768 <altera_avalon_lcd_16207_write+0x1fc>
- {
- if (sp->x > 0)
- 5073c: e0bffa17 ldw r2,-24(fp)
- 50740: 10800843 ldbu r2,33(r2)
- 50744: 10803fcc andi r2,r2,255
- 50748: 10003226 beq r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
- sp->x--;
- 5074c: e0bffa17 ldw r2,-24(fp)
- 50750: 10800843 ldbu r2,33(r2)
- 50754: 10bfffc4 addi r2,r2,-1
- 50758: 1007883a mov r3,r2
- 5075c: e0bffa17 ldw r2,-24(fp)
- 50760: 10c00845 stb r3,33(r2)
- 50764: 00002b06 br 50814 <altera_avalon_lcd_16207_write+0x2a8>
- }
- else if (isprint(c))
- 50768: d0e01117 ldw r3,-32700(gp)
- 5076c: e0bff707 ldb r2,-36(fp)
- 50770: 10800044 addi r2,r2,1
- 50774: 1885883a add r2,r3,r2
- 50778: 10800003 ldbu r2,0(r2)
- 5077c: 10803fcc andi r2,r2,255
- 50780: 1080201c xori r2,r2,128
- 50784: 10bfe004 addi r2,r2,-128
- 50788: 108025cc andi r2,r2,151
- 5078c: 10002126 beq r2,zero,50814 <altera_avalon_lcd_16207_write+0x2a8>
- {
- /* If we didn't scroll on the last linefeed then we might need to do
- * it now. */
- if (sp->y >= ALT_LCD_HEIGHT)
- 50790: e0bffa17 ldw r2,-24(fp)
- 50794: 10800883 ldbu r2,34(r2)
- 50798: 10803fcc andi r2,r2,255
- 5079c: 108000b0 cmpltui r2,r2,2
- 507a0: 1000021e bne r2,zero,507ac <altera_avalon_lcd_16207_write+0x240>
- lcd_scroll_up(sp);
- 507a4: e13ffa17 ldw r4,-24(fp)
- 507a8: 00501c00 call 501c0 <lcd_scroll_up>
- if (sp->x < ALT_LCD_VIRTUAL_WIDTH)
- 507ac: e0bffa17 ldw r2,-24(fp)
- 507b0: 10800843 ldbu r2,33(r2)
- 507b4: 10803fcc andi r2,r2,255
- 507b8: 10801428 cmpgeui r2,r2,80
- 507bc: 10000f1e bne r2,zero,507fc <altera_avalon_lcd_16207_write+0x290>
- sp->line[sp->y].data[sp->x] = c;
- 507c0: e0bffa17 ldw r2,-24(fp)
- 507c4: 10800883 ldbu r2,34(r2)
- 507c8: 10c03fcc andi r3,r2,255
- 507cc: e0bffa17 ldw r2,-24(fp)
- 507d0: 10800843 ldbu r2,33(r2)
- 507d4: 14003fcc andi r16,r2,255
- 507d8: e47ffa17 ldw r17,-24(fp)
- 507dc: 014018c4 movi r5,99
- 507e0: 1809883a mov r4,r3
- 507e4: 004c9f80 call 4c9f8 <__mulsi3>
- 507e8: 8885883a add r2,r17,r2
- 507ec: 1405883a add r2,r2,r16
- 507f0: 10801004 addi r2,r2,64
- 507f4: e0fff703 ldbu r3,-36(fp)
- 507f8: 10c00005 stb r3,0(r2)
- sp->x++;
- 507fc: e0bffa17 ldw r2,-24(fp)
- 50800: 10800843 ldbu r2,33(r2)
- 50804: 10800044 addi r2,r2,1
- 50808: 1007883a mov r3,r2
- 5080c: e0bffa17 ldw r2,-24(fp)
- 50810: 10c00845 stb r3,33(r2)
- /* Tell the routine which is called off the timer interrupt that the
- * foreground routines are active so it must not repaint the display. */
- sp->active = 1;
- for ( ; ptr < end ; ptr++)
- 50814: e0bffb17 ldw r2,-20(fp)
- 50818: 10800044 addi r2,r2,1
- 5081c: e0bffb15 stw r2,-20(fp)
- 50820: e0fffb17 ldw r3,-20(fp)
- 50824: e0bff617 ldw r2,-40(fp)
- 50828: 18bf6236 bltu r3,r2,505b4 <__alt_data_end+0xfffde5b4>
- sp->x++;
- }
- }
- /* Recalculate the scrolling parameters */
- widthmax = ALT_LCD_WIDTH;
- 5082c: 00800404 movi r2,16
- 50830: e0bff415 stw r2,-48(fp)
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 50834: e03ff315 stw zero,-52(fp)
- 50838: 00003d06 br 50930 <altera_avalon_lcd_16207_write+0x3c4>
- {
- int width;
- for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--)
- 5083c: 00801404 movi r2,80
- 50840: e0bff515 stw r2,-44(fp)
- 50844: 00001306 br 50894 <altera_avalon_lcd_16207_write+0x328>
- if (sp->line[y].data[width-1] != ' ')
- 50848: e0bff517 ldw r2,-44(fp)
- 5084c: 143fffc4 addi r16,r2,-1
- 50850: e47ffa17 ldw r17,-24(fp)
- 50854: e0bff317 ldw r2,-52(fp)
- 50858: 014018c4 movi r5,99
- 5085c: 1009883a mov r4,r2
- 50860: 004c9f80 call 4c9f8 <__mulsi3>
- 50864: 8885883a add r2,r17,r2
- 50868: 1405883a add r2,r2,r16
- 5086c: 10801004 addi r2,r2,64
- 50870: 10800003 ldbu r2,0(r2)
- 50874: 10803fcc andi r2,r2,255
- 50878: 1080201c xori r2,r2,128
- 5087c: 10bfe004 addi r2,r2,-128
- 50880: 10800820 cmpeqi r2,r2,32
- 50884: 10000626 beq r2,zero,508a0 <altera_avalon_lcd_16207_write+0x334>
- /* Recalculate the scrolling parameters */
- widthmax = ALT_LCD_WIDTH;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- {
- int width;
- for (width = ALT_LCD_VIRTUAL_WIDTH ; width > 0 ; width--)
- 50888: e0bff517 ldw r2,-44(fp)
- 5088c: 10bfffc4 addi r2,r2,-1
- 50890: e0bff515 stw r2,-44(fp)
- 50894: e0bff517 ldw r2,-44(fp)
- 50898: 00bfeb16 blt zero,r2,50848 <__alt_data_end+0xfffde848>
- 5089c: 00000106 br 508a4 <altera_avalon_lcd_16207_write+0x338>
- if (sp->line[y].data[width-1] != ' ')
- break;
- 508a0: 0001883a nop
- /* The minimum width is the size of the LCD panel. If the real width
- * is long enough to require scrolling then add an extra space so the
- * end of the message doesn't run into the beginning of it.
- */
- if (width <= ALT_LCD_WIDTH)
- 508a4: e0bff517 ldw r2,-44(fp)
- 508a8: 10800448 cmpgei r2,r2,17
- 508ac: 1000031e bne r2,zero,508bc <altera_avalon_lcd_16207_write+0x350>
- width = ALT_LCD_WIDTH;
- 508b0: 00800404 movi r2,16
- 508b4: e0bff515 stw r2,-44(fp)
- 508b8: 00000306 br 508c8 <altera_avalon_lcd_16207_write+0x35c>
- else
- width++;
- 508bc: e0bff517 ldw r2,-44(fp)
- 508c0: 10800044 addi r2,r2,1
- 508c4: e0bff515 stw r2,-44(fp)
- sp->line[y].width = width;
- 508c8: e0bff517 ldw r2,-44(fp)
- 508cc: 1023883a mov r17,r2
- 508d0: e43ffa17 ldw r16,-24(fp)
- 508d4: e0bff317 ldw r2,-52(fp)
- 508d8: 014018c4 movi r5,99
- 508dc: 1009883a mov r4,r2
- 508e0: 004c9f80 call 4c9f8 <__mulsi3>
- 508e4: 8085883a add r2,r16,r2
- 508e8: 10802444 addi r2,r2,145
- 508ec: 14400005 stb r17,0(r2)
- if (widthmax < width)
- 508f0: e0fff417 ldw r3,-48(fp)
- 508f4: e0bff517 ldw r2,-44(fp)
- 508f8: 1880020e bge r3,r2,50904 <altera_avalon_lcd_16207_write+0x398>
- widthmax = width;
- 508fc: e0bff517 ldw r2,-44(fp)
- 50900: e0bff415 stw r2,-48(fp)
- sp->line[y].speed = 0; /* By default lines don't scroll */
- 50904: e43ffa17 ldw r16,-24(fp)
- 50908: e0bff317 ldw r2,-52(fp)
- 5090c: 014018c4 movi r5,99
- 50910: 1009883a mov r4,r2
- 50914: 004c9f80 call 4c9f8 <__mulsi3>
- 50918: 8085883a add r2,r16,r2
- 5091c: 10802484 addi r2,r2,146
- 50920: 10000005 stb zero,0(r2)
- }
- }
- /* Recalculate the scrolling parameters */
- widthmax = ALT_LCD_WIDTH;
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 50924: e0bff317 ldw r2,-52(fp)
- 50928: 10800044 addi r2,r2,1
- 5092c: e0bff315 stw r2,-52(fp)
- 50930: e0bff317 ldw r2,-52(fp)
- 50934: 10800090 cmplti r2,r2,2
- 50938: 103fc01e bne r2,zero,5083c <__alt_data_end+0xfffde83c>
- if (widthmax < width)
- widthmax = width;
- sp->line[y].speed = 0; /* By default lines don't scroll */
- }
- if (widthmax <= ALT_LCD_WIDTH)
- 5093c: e0bff417 ldw r2,-48(fp)
- 50940: 10800448 cmpgei r2,r2,17
- 50944: 1000031e bne r2,zero,50954 <altera_avalon_lcd_16207_write+0x3e8>
- sp->scrollmax = 0;
- 50948: e0bffa17 ldw r2,-24(fp)
- 5094c: 10000985 stb zero,38(r2)
- 50950: 00003406 br 50a24 <altera_avalon_lcd_16207_write+0x4b8>
- else
- {
- widthmax *= 2;
- 50954: e0bff417 ldw r2,-48(fp)
- 50958: 1085883a add r2,r2,r2
- 5095c: e0bff415 stw r2,-48(fp)
- sp->scrollmax = widthmax;
- 50960: e0bff417 ldw r2,-48(fp)
- 50964: 1007883a mov r3,r2
- 50968: e0bffa17 ldw r2,-24(fp)
- 5096c: 10c00985 stb r3,38(r2)
- /* Now calculate how fast each of the other lines should go */
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 50970: e03ff315 stw zero,-52(fp)
- 50974: 00002806 br 50a18 <altera_avalon_lcd_16207_write+0x4ac>
- if (sp->line[y].width > ALT_LCD_WIDTH)
- 50978: e43ffa17 ldw r16,-24(fp)
- 5097c: e0bff317 ldw r2,-52(fp)
- 50980: 014018c4 movi r5,99
- 50984: 1009883a mov r4,r2
- 50988: 004c9f80 call 4c9f8 <__mulsi3>
- 5098c: 8085883a add r2,r16,r2
- 50990: 10802444 addi r2,r2,145
- 50994: 10800003 ldbu r2,0(r2)
- 50998: 10803fcc andi r2,r2,255
- 5099c: 1080201c xori r2,r2,128
- 509a0: 10bfe004 addi r2,r2,-128
- 509a4: 10800450 cmplti r2,r2,17
- 509a8: 1000181e bne r2,zero,50a0c <altera_avalon_lcd_16207_write+0x4a0>
- */
- #if 1
- /* This option makes all the lines scroll round at different speeds
- * which are chosen so that all the scrolls finish at the same time.
- */
- sp->line[y].speed = 256 * sp->line[y].width / widthmax;
- 509ac: e43ffa17 ldw r16,-24(fp)
- 509b0: e0bff317 ldw r2,-52(fp)
- 509b4: 014018c4 movi r5,99
- 509b8: 1009883a mov r4,r2
- 509bc: 004c9f80 call 4c9f8 <__mulsi3>
- 509c0: 8085883a add r2,r16,r2
- 509c4: 10802444 addi r2,r2,145
- 509c8: 10800003 ldbu r2,0(r2)
- 509cc: 10803fcc andi r2,r2,255
- 509d0: 1080201c xori r2,r2,128
- 509d4: 10bfe004 addi r2,r2,-128
- 509d8: 1004923a slli r2,r2,8
- 509dc: e17ff417 ldw r5,-48(fp)
- 509e0: 1009883a mov r4,r2
- 509e4: 004c8440 call 4c844 <__divsi3>
- 509e8: 1023883a mov r17,r2
- 509ec: e43ffa17 ldw r16,-24(fp)
- 509f0: e0bff317 ldw r2,-52(fp)
- 509f4: 014018c4 movi r5,99
- 509f8: 1009883a mov r4,r2
- 509fc: 004c9f80 call 4c9f8 <__mulsi3>
- 50a00: 8085883a add r2,r16,r2
- 50a04: 10802484 addi r2,r2,146
- 50a08: 14400005 stb r17,0(r2)
- {
- widthmax *= 2;
- sp->scrollmax = widthmax;
- /* Now calculate how fast each of the other lines should go */
- for (y = 0 ; y < ALT_LCD_HEIGHT ; y++)
- 50a0c: e0bff317 ldw r2,-52(fp)
- 50a10: 10800044 addi r2,r2,1
- 50a14: e0bff315 stw r2,-52(fp)
- 50a18: e0bff317 ldw r2,-52(fp)
- 50a1c: 10800090 cmplti r2,r2,2
- 50a20: 103fd51e bne r2,zero,50978 <__alt_data_end+0xfffde978>
- * (because active was set when the timer interrupt occurred). If there
- * has been a missed repaint then paint again. And again. etc.
- */
- for ( ; ; )
- {
- int old_scrollpos = sp->scrollpos;
- 50a24: e0bffa17 ldw r2,-24(fp)
- 50a28: 10800943 ldbu r2,37(r2)
- 50a2c: 10803fcc andi r2,r2,255
- 50a30: e0bff915 stw r2,-28(fp)
- lcd_repaint_screen(sp);
- 50a34: e13ffa17 ldw r4,-24(fp)
- 50a38: 004ff980 call 4ff98 <lcd_repaint_screen>
- /* Let the timer routines repaint the display again */
- sp->active = 0;
- 50a3c: e0bffa17 ldw r2,-24(fp)
- 50a40: 100009c5 stb zero,39(r2)
- /* Have the timer routines tried to scroll while we were painting?
- * If not then we can exit */
- if (sp->scrollpos == old_scrollpos)
- 50a44: e0bffa17 ldw r2,-24(fp)
- 50a48: 10800943 ldbu r2,37(r2)
- 50a4c: 10c03fcc andi r3,r2,255
- 50a50: e0bff917 ldw r2,-28(fp)
- 50a54: 18800426 beq r3,r2,50a68 <altera_avalon_lcd_16207_write+0x4fc>
- break;
- /* We need to repaint again since the display scrolled while we were
- * painting last time */
- sp->active = 1;
- 50a58: e0bffa17 ldw r2,-24(fp)
- 50a5c: 00c00044 movi r3,1
- 50a60: 10c009c5 stb r3,39(r2)
- }
- 50a64: 003fef06 br 50a24 <__alt_data_end+0xfffdea24>
- sp->active = 0;
- /* Have the timer routines tried to scroll while we were painting?
- * If not then we can exit */
- if (sp->scrollpos == old_scrollpos)
- break;
- 50a68: 0001883a nop
- * semaphore so that other threads can access the buffer.
- */
- ALT_SEM_POST (sp->write_lock);
- return len;
- 50a6c: e0bffc17 ldw r2,-16(fp)
- }
- 50a70: e6fffe04 addi sp,fp,-8
- 50a74: dfc00317 ldw ra,12(sp)
- 50a78: df000217 ldw fp,8(sp)
- 50a7c: dc400117 ldw r17,4(sp)
- 50a80: dc000017 ldw r16,0(sp)
- 50a84: dec00404 addi sp,sp,16
- 50a88: f800283a ret
- 00050a8c <alt_lcd_16207_timeout>:
- /*
- * Timeout routine is called every second
- */
- static alt_u32 alt_lcd_16207_timeout(void* context)
- {
- 50a8c: defffc04 addi sp,sp,-16
- 50a90: dfc00315 stw ra,12(sp)
- 50a94: df000215 stw fp,8(sp)
- 50a98: df000204 addi fp,sp,8
- 50a9c: e13fff15 stw r4,-4(fp)
- altera_avalon_lcd_16207_state* sp = (altera_avalon_lcd_16207_state*)context;
- 50aa0: e0bfff17 ldw r2,-4(fp)
- 50aa4: e0bffe15 stw r2,-8(fp)
- /* Update the scrolling position */
- if (sp->scrollpos + 1 >= sp->scrollmax)
- 50aa8: e0bffe17 ldw r2,-8(fp)
- 50aac: 10800943 ldbu r2,37(r2)
- 50ab0: 10803fcc andi r2,r2,255
- 50ab4: 10c00044 addi r3,r2,1
- 50ab8: e0bffe17 ldw r2,-8(fp)
- 50abc: 10800983 ldbu r2,38(r2)
- 50ac0: 10803fcc andi r2,r2,255
- 50ac4: 18800316 blt r3,r2,50ad4 <alt_lcd_16207_timeout+0x48>
- sp->scrollpos = 0;
- 50ac8: e0bffe17 ldw r2,-8(fp)
- 50acc: 10000945 stb zero,37(r2)
- 50ad0: 00000606 br 50aec <alt_lcd_16207_timeout+0x60>
- else
- sp->scrollpos = sp->scrollpos + 1;
- 50ad4: e0bffe17 ldw r2,-8(fp)
- 50ad8: 10800943 ldbu r2,37(r2)
- 50adc: 10800044 addi r2,r2,1
- 50ae0: 1007883a mov r3,r2
- 50ae4: e0bffe17 ldw r2,-8(fp)
- 50ae8: 10c00945 stb r3,37(r2)
- /* Repaint the panel unless the foreground will do it again soon */
- if (sp->scrollmax > 0 && !sp->active)
- 50aec: e0bffe17 ldw r2,-8(fp)
- 50af0: 10800983 ldbu r2,38(r2)
- 50af4: 10803fcc andi r2,r2,255
- 50af8: 10000826 beq r2,zero,50b1c <alt_lcd_16207_timeout+0x90>
- 50afc: e0bffe17 ldw r2,-8(fp)
- 50b00: 108009c3 ldbu r2,39(r2)
- 50b04: 10803fcc andi r2,r2,255
- 50b08: 1080201c xori r2,r2,128
- 50b0c: 10bfe004 addi r2,r2,-128
- 50b10: 1000021e bne r2,zero,50b1c <alt_lcd_16207_timeout+0x90>
- lcd_repaint_screen(sp);
- 50b14: e13ffe17 ldw r4,-8(fp)
- 50b18: 004ff980 call 4ff98 <lcd_repaint_screen>
- return sp->period;
- 50b1c: e0bffe17 ldw r2,-8(fp)
- 50b20: 10800717 ldw r2,28(r2)
- }
- 50b24: e037883a mov sp,fp
- 50b28: dfc00117 ldw ra,4(sp)
- 50b2c: df000017 ldw fp,0(sp)
- 50b30: dec00204 addi sp,sp,8
- 50b34: f800283a ret
- 00050b38 <altera_avalon_lcd_16207_init>:
- /*
- * Called at boot time to initialise the LCD driver
- */
- void altera_avalon_lcd_16207_init(altera_avalon_lcd_16207_state* sp)
- {
- 50b38: defffc04 addi sp,sp,-16
- 50b3c: dfc00315 stw ra,12(sp)
- 50b40: df000215 stw fp,8(sp)
- 50b44: df000204 addi fp,sp,8
- 50b48: e13fff15 stw r4,-4(fp)
- unsigned int base = sp->base;
- 50b4c: e0bfff17 ldw r2,-4(fp)
- 50b50: 10800017 ldw r2,0(r2)
- 50b54: e0bffe15 stw r2,-8(fp)
- /* Mark the device as functional */
- sp->broken = 0;
- 50b58: e0bfff17 ldw r2,-4(fp)
- 50b5c: 10000805 stb zero,32(r2)
- * the BUSY bit in the status register doesn't work until the display
- * has been reset three times.
- */
- /* Wait for 15 ms then reset */
- usleep(15000);
- 50b60: 010ea604 movi r4,15000
- 50b64: 00518000 call 51800 <usleep>
- IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
- 50b68: e0bffe17 ldw r2,-8(fp)
- 50b6c: 00c00c04 movi r3,48
- 50b70: 10c00035 stwio r3,0(r2)
- /* Wait for another 4.1ms and reset again */
- usleep(4100);
- 50b74: 01040104 movi r4,4100
- 50b78: 00518000 call 51800 <usleep>
- IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
- 50b7c: e0bffe17 ldw r2,-8(fp)
- 50b80: 00c00c04 movi r3,48
- 50b84: 10c00035 stwio r3,0(r2)
- /* Wait a further 1 ms and reset a third time */
- usleep(1000);
- 50b88: 0100fa04 movi r4,1000
- 50b8c: 00518000 call 51800 <usleep>
- IOWR_ALTERA_AVALON_LCD_16207_COMMAND(base, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT);
- 50b90: e0bffe17 ldw r2,-8(fp)
- 50b94: 00c00c04 movi r3,48
- 50b98: 10c00035 stwio r3,0(r2)
- /* Setup interface parameters: 8 bit bus, 2 rows, 5x7 font */
- lcd_write_command(sp, LCD_CMD_FUNCTION_SET | LCD_CMD_8BIT | LCD_CMD_TWO_LINE);
- 50b9c: 01400e04 movi r5,56
- 50ba0: e13fff17 ldw r4,-4(fp)
- 50ba4: 004fd200 call 4fd20 <lcd_write_command>
-
- /* Turn display off */
- lcd_write_command(sp, LCD_CMD_ONOFF);
- 50ba8: 01400204 movi r5,8
- 50bac: e13fff17 ldw r4,-4(fp)
- 50bb0: 004fd200 call 4fd20 <lcd_write_command>
- /* Clear display */
- lcd_clear_screen(sp);
- 50bb4: e13fff17 ldw r4,-4(fp)
- 50bb8: 004feb00 call 4feb0 <lcd_clear_screen>
-
- /* Set mode: increment after writing, don't shift display */
- lcd_write_command(sp, LCD_CMD_MODES | LCD_CMD_MODE_INC);
- 50bbc: 01400184 movi r5,6
- 50bc0: e13fff17 ldw r4,-4(fp)
- 50bc4: 004fd200 call 4fd20 <lcd_write_command>
- /* Turn display on */
- lcd_write_command(sp, LCD_CMD_ONOFF | LCD_CMD_ENABLE_DISP);
- 50bc8: 01400304 movi r5,12
- 50bcc: e13fff17 ldw r4,-4(fp)
- 50bd0: 004fd200 call 4fd20 <lcd_write_command>
- sp->esccount = -1;
- 50bd4: e0bfff17 ldw r2,-4(fp)
- 50bd8: 00ffffc4 movi r3,-1
- 50bdc: 10c00905 stb r3,36(r2)
- memset(sp->escape, 0, sizeof(sp->escape));
- 50be0: e0bfff17 ldw r2,-4(fp)
- 50be4: 10800a04 addi r2,r2,40
- 50be8: 01800204 movi r6,8
- 50bec: 000b883a mov r5,zero
- 50bf0: 1009883a mov r4,r2
- 50bf4: 00478080 call 47808 <memset>
- sp->scrollpos = 0;
- 50bf8: e0bfff17 ldw r2,-4(fp)
- 50bfc: 10000945 stb zero,37(r2)
- sp->scrollmax = 0;
- 50c00: e0bfff17 ldw r2,-4(fp)
- 50c04: 10000985 stb zero,38(r2)
- sp->active = 0;
- 50c08: e0bfff17 ldw r2,-4(fp)
- 50c0c: 100009c5 stb zero,39(r2)
- 50c10: d0a72617 ldw r2,-25448(gp)
- sp->period = alt_ticks_per_second() / 10; /* Call every 100ms */
- 50c14: 01400284 movi r5,10
- 50c18: 1009883a mov r4,r2
- 50c1c: 004c93c0 call 4c93c <__udivsi3>
- 50c20: 1007883a mov r3,r2
- 50c24: e0bfff17 ldw r2,-4(fp)
- 50c28: 10c00715 stw r3,28(r2)
- alt_alarm_start(&sp->alarm, sp->period, &alt_lcd_16207_timeout, sp);
- 50c2c: e0bfff17 ldw r2,-4(fp)
- 50c30: 10c00104 addi r3,r2,4
- 50c34: e0bfff17 ldw r2,-4(fp)
- 50c38: 10800717 ldw r2,28(r2)
- 50c3c: e1ffff17 ldw r7,-4(fp)
- 50c40: 01800174 movhi r6,5
- 50c44: 3182a304 addi r6,r6,2700
- 50c48: 100b883a mov r5,r2
- 50c4c: 1809883a mov r4,r3
- 50c50: 0050ccc0 call 50ccc <alt_alarm_start>
- }
- 50c54: 0001883a nop
- 50c58: e037883a mov sp,fp
- 50c5c: dfc00117 ldw ra,4(sp)
- 50c60: df000017 ldw fp,0(sp)
- 50c64: dec00204 addi sp,sp,8
- 50c68: f800283a ret
- 00050c6c <altera_avalon_lcd_16207_write_fd>:
- extern int altera_avalon_lcd_16207_write(altera_avalon_lcd_16207_state* sp,
- const char* ptr, int count, int flags);
- int
- altera_avalon_lcd_16207_write_fd(alt_fd* fd, const char* buffer, int space)
- {
- 50c6c: defffa04 addi sp,sp,-24
- 50c70: dfc00515 stw ra,20(sp)
- 50c74: df000415 stw fp,16(sp)
- 50c78: df000404 addi fp,sp,16
- 50c7c: e13ffd15 stw r4,-12(fp)
- 50c80: e17ffe15 stw r5,-8(fp)
- 50c84: e1bfff15 stw r6,-4(fp)
- altera_avalon_lcd_16207_dev* dev = (altera_avalon_lcd_16207_dev*) fd->dev;
- 50c88: e0bffd17 ldw r2,-12(fp)
- 50c8c: 10800017 ldw r2,0(r2)
- 50c90: e0bffc15 stw r2,-16(fp)
- return altera_avalon_lcd_16207_write(&dev->state, buffer, space,
- 50c94: e0bffc17 ldw r2,-16(fp)
- 50c98: 10c00a04 addi r3,r2,40
- 50c9c: e0bffd17 ldw r2,-12(fp)
- 50ca0: 10800217 ldw r2,8(r2)
- 50ca4: 100f883a mov r7,r2
- 50ca8: e1bfff17 ldw r6,-4(fp)
- 50cac: e17ffe17 ldw r5,-8(fp)
- 50cb0: 1809883a mov r4,r3
- 50cb4: 005056c0 call 5056c <altera_avalon_lcd_16207_write>
- fd->fd_flags);
- }
- 50cb8: e037883a mov sp,fp
- 50cbc: dfc00117 ldw ra,4(sp)
- 50cc0: df000017 ldw fp,0(sp)
- 50cc4: dec00204 addi sp,sp,8
- 50cc8: f800283a ret
- 00050ccc <alt_alarm_start>:
- */
- int alt_alarm_start (alt_alarm* alarm, alt_u32 nticks,
- alt_u32 (*callback) (void* context),
- void* context)
- {
- 50ccc: defff504 addi sp,sp,-44
- 50cd0: df000a15 stw fp,40(sp)
- 50cd4: df000a04 addi fp,sp,40
- 50cd8: e13ffc15 stw r4,-16(fp)
- 50cdc: e17ffd15 stw r5,-12(fp)
- 50ce0: e1bffe15 stw r6,-8(fp)
- 50ce4: e1ffff15 stw r7,-4(fp)
- alt_irq_context irq_context;
- alt_u32 current_nticks = 0;
- 50ce8: e03ff615 stw zero,-40(fp)
- 50cec: d0a72617 ldw r2,-25448(gp)
-
- if (alt_ticks_per_second ())
- 50cf0: 10003c26 beq r2,zero,50de4 <alt_alarm_start+0x118>
- {
- if (alarm)
- 50cf4: e0bffc17 ldw r2,-16(fp)
- 50cf8: 10003826 beq r2,zero,50ddc <alt_alarm_start+0x110>
- {
- alarm->callback = callback;
- 50cfc: e0bffc17 ldw r2,-16(fp)
- 50d00: e0fffe17 ldw r3,-8(fp)
- 50d04: 10c00315 stw r3,12(r2)
- alarm->context = context;
- 50d08: e0bffc17 ldw r2,-16(fp)
- 50d0c: e0ffff17 ldw r3,-4(fp)
- 50d10: 10c00515 stw r3,20(r2)
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 50d14: 0005303a rdctl r2,status
- 50d18: e0bff915 stw r2,-28(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 50d1c: e0fff917 ldw r3,-28(fp)
- 50d20: 00bfff84 movi r2,-2
- 50d24: 1884703a and r2,r3,r2
- 50d28: 1001703a wrctl status,r2
-
- return context;
- 50d2c: e0bff917 ldw r2,-28(fp)
-
- irq_context = alt_irq_disable_all ();
- 50d30: e0bff815 stw r2,-32(fp)
- * alt_nticks() returns the elapsed number of system clock ticks since reset.
- */
- static ALT_INLINE alt_u32 ALT_ALWAYS_INLINE alt_nticks (void)
- {
- return _alt_nticks;
- 50d34: d0a72717 ldw r2,-25444(gp)
-
- current_nticks = alt_nticks();
- 50d38: e0bff615 stw r2,-40(fp)
-
- alarm->time = nticks + current_nticks + 1;
- 50d3c: e0fffd17 ldw r3,-12(fp)
- 50d40: e0bff617 ldw r2,-40(fp)
- 50d44: 1885883a add r2,r3,r2
- 50d48: 10c00044 addi r3,r2,1
- 50d4c: e0bffc17 ldw r2,-16(fp)
- 50d50: 10c00215 stw r3,8(r2)
- /*
- * If the desired alarm time causes a roll-over, set the rollover
- * flag. This will prevent the subsequent tick event from causing
- * an alarm too early.
- */
- if(alarm->time < current_nticks)
- 50d54: e0bffc17 ldw r2,-16(fp)
- 50d58: 10c00217 ldw r3,8(r2)
- 50d5c: e0bff617 ldw r2,-40(fp)
- 50d60: 1880042e bgeu r3,r2,50d74 <alt_alarm_start+0xa8>
- {
- alarm->rollover = 1;
- 50d64: e0bffc17 ldw r2,-16(fp)
- 50d68: 00c00044 movi r3,1
- 50d6c: 10c00405 stb r3,16(r2)
- 50d70: 00000206 br 50d7c <alt_alarm_start+0xb0>
- }
- else
- {
- alarm->rollover = 0;
- 50d74: e0bffc17 ldw r2,-16(fp)
- 50d78: 10000405 stb zero,16(r2)
- }
-
- alt_llist_insert (&alt_alarm_list, &alarm->llist);
- 50d7c: e0bffc17 ldw r2,-16(fp)
- 50d80: d0e00f04 addi r3,gp,-32708
- 50d84: e0fffa15 stw r3,-24(fp)
- 50d88: e0bffb15 stw r2,-20(fp)
- */
- static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list,
- alt_llist* entry)
- {
- entry->previous = list;
- 50d8c: e0bffb17 ldw r2,-20(fp)
- 50d90: e0fffa17 ldw r3,-24(fp)
- 50d94: 10c00115 stw r3,4(r2)
- entry->next = list->next;
- 50d98: e0bffa17 ldw r2,-24(fp)
- 50d9c: 10c00017 ldw r3,0(r2)
- 50da0: e0bffb17 ldw r2,-20(fp)
- 50da4: 10c00015 stw r3,0(r2)
- list->next->previous = entry;
- 50da8: e0bffa17 ldw r2,-24(fp)
- 50dac: 10800017 ldw r2,0(r2)
- 50db0: e0fffb17 ldw r3,-20(fp)
- 50db4: 10c00115 stw r3,4(r2)
- list->next = entry;
- 50db8: e0bffa17 ldw r2,-24(fp)
- 50dbc: e0fffb17 ldw r3,-20(fp)
- 50dc0: 10c00015 stw r3,0(r2)
- 50dc4: e0bff817 ldw r2,-32(fp)
- 50dc8: e0bff715 stw r2,-36(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 50dcc: e0bff717 ldw r2,-36(fp)
- 50dd0: 1001703a wrctl status,r2
- alt_irq_enable_all (irq_context);
- return 0;
- 50dd4: 0005883a mov r2,zero
- 50dd8: 00000306 br 50de8 <alt_alarm_start+0x11c>
- }
- else
- {
- return -EINVAL;
- 50ddc: 00bffa84 movi r2,-22
- 50de0: 00000106 br 50de8 <alt_alarm_start+0x11c>
- }
- }
- else
- {
- return -ENOTSUP;
- 50de4: 00bfde84 movi r2,-134
- }
- }
- 50de8: e037883a mov sp,fp
- 50dec: df000017 ldw fp,0(sp)
- 50df0: dec00104 addi sp,sp,4
- 50df4: f800283a ret
- 00050df8 <alt_dcache_flush_all>:
- /*
- * alt_dcache_flush_all() is called to flush the entire data cache.
- */
- void alt_dcache_flush_all (void)
- {
- 50df8: deffff04 addi sp,sp,-4
- 50dfc: df000015 stw fp,0(sp)
- 50e00: d839883a mov fp,sp
- for (i = (char*) 0; i < (char*) NIOS2_DCACHE_SIZE; i+= NIOS2_DCACHE_LINE_SIZE)
- {
- __asm__ volatile ("flushd (%0)" :: "r" (i));
- }
- #endif /* NIOS2_DCACHE_SIZE > 0 */
- }
- 50e04: 0001883a nop
- 50e08: e037883a mov sp,fp
- 50e0c: df000017 ldw fp,0(sp)
- 50e10: dec00104 addi sp,sp,4
- 50e14: f800283a ret
- 00050e18 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 50e18: defffe04 addi sp,sp,-8
- 50e1c: dfc00115 stw ra,4(sp)
- 50e20: df000015 stw fp,0(sp)
- 50e24: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 50e28: d0a00b17 ldw r2,-32724(gp)
- 50e2c: 10000326 beq r2,zero,50e3c <alt_get_errno+0x24>
- 50e30: d0a00b17 ldw r2,-32724(gp)
- 50e34: 103ee83a callr r2
- 50e38: 00000106 br 50e40 <alt_get_errno+0x28>
- 50e3c: d0a72104 addi r2,gp,-25468
- }
- 50e40: e037883a mov sp,fp
- 50e44: dfc00117 ldw ra,4(sp)
- 50e48: df000017 ldw fp,0(sp)
- 50e4c: dec00204 addi sp,sp,8
- 50e50: f800283a ret
- 00050e54 <alt_dev_llist_insert>:
- /*
- *
- */
- int alt_dev_llist_insert (alt_dev_llist* dev, alt_llist* list)
- {
- 50e54: defffa04 addi sp,sp,-24
- 50e58: dfc00515 stw ra,20(sp)
- 50e5c: df000415 stw fp,16(sp)
- 50e60: df000404 addi fp,sp,16
- 50e64: e13ffe15 stw r4,-8(fp)
- 50e68: e17fff15 stw r5,-4(fp)
- /*
- * check that the device exists, and that it has a valid name.
- */
- if (!dev || !dev->name)
- 50e6c: e0bffe17 ldw r2,-8(fp)
- 50e70: 10000326 beq r2,zero,50e80 <alt_dev_llist_insert+0x2c>
- 50e74: e0bffe17 ldw r2,-8(fp)
- 50e78: 10800217 ldw r2,8(r2)
- 50e7c: 1000061e bne r2,zero,50e98 <alt_dev_llist_insert+0x44>
- {
- ALT_ERRNO = EINVAL;
- 50e80: 0050e180 call 50e18 <alt_get_errno>
- 50e84: 1007883a mov r3,r2
- 50e88: 00800584 movi r2,22
- 50e8c: 18800015 stw r2,0(r3)
- return -EINVAL;
- 50e90: 00bffa84 movi r2,-22
- 50e94: 00001306 br 50ee4 <alt_dev_llist_insert+0x90>
-
- /*
- * register the device.
- */
-
- alt_llist_insert(list, &dev->llist);
- 50e98: e0bffe17 ldw r2,-8(fp)
- 50e9c: e0ffff17 ldw r3,-4(fp)
- 50ea0: e0fffc15 stw r3,-16(fp)
- 50ea4: e0bffd15 stw r2,-12(fp)
- */
- static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_insert(alt_llist* list,
- alt_llist* entry)
- {
- entry->previous = list;
- 50ea8: e0bffd17 ldw r2,-12(fp)
- 50eac: e0fffc17 ldw r3,-16(fp)
- 50eb0: 10c00115 stw r3,4(r2)
- entry->next = list->next;
- 50eb4: e0bffc17 ldw r2,-16(fp)
- 50eb8: 10c00017 ldw r3,0(r2)
- 50ebc: e0bffd17 ldw r2,-12(fp)
- 50ec0: 10c00015 stw r3,0(r2)
- list->next->previous = entry;
- 50ec4: e0bffc17 ldw r2,-16(fp)
- 50ec8: 10800017 ldw r2,0(r2)
- 50ecc: e0fffd17 ldw r3,-12(fp)
- 50ed0: 10c00115 stw r3,4(r2)
- list->next = entry;
- 50ed4: e0bffc17 ldw r2,-16(fp)
- 50ed8: e0fffd17 ldw r3,-12(fp)
- 50edc: 10c00015 stw r3,0(r2)
- return 0;
- 50ee0: 0005883a mov r2,zero
- }
- 50ee4: e037883a mov sp,fp
- 50ee8: dfc00117 ldw ra,4(sp)
- 50eec: df000017 ldw fp,0(sp)
- 50ef0: dec00204 addi sp,sp,8
- 50ef4: f800283a ret
- 00050ef8 <_do_ctors>:
- /*
- * Run the C++ static constructors.
- */
- void _do_ctors(void)
- {
- 50ef8: defffd04 addi sp,sp,-12
- 50efc: dfc00215 stw ra,8(sp)
- 50f00: df000115 stw fp,4(sp)
- 50f04: df000104 addi fp,sp,4
- constructor* ctor;
- for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--)
- 50f08: 00800174 movhi r2,5
- 50f0c: 10880d04 addi r2,r2,8244
- 50f10: e0bfff15 stw r2,-4(fp)
- 50f14: 00000606 br 50f30 <_do_ctors+0x38>
- (*ctor) ();
- 50f18: e0bfff17 ldw r2,-4(fp)
- 50f1c: 10800017 ldw r2,0(r2)
- 50f20: 103ee83a callr r2
- void _do_ctors(void)
- {
- constructor* ctor;
- for (ctor = &__CTOR_END__[-1]; ctor >= __CTOR_LIST__; ctor--)
- 50f24: e0bfff17 ldw r2,-4(fp)
- 50f28: 10bfff04 addi r2,r2,-4
- 50f2c: e0bfff15 stw r2,-4(fp)
- 50f30: e0ffff17 ldw r3,-4(fp)
- 50f34: 00800174 movhi r2,5
- 50f38: 10880e04 addi r2,r2,8248
- 50f3c: 18bff62e bgeu r3,r2,50f18 <__alt_data_end+0xfffdef18>
- (*ctor) ();
- }
- 50f40: 0001883a nop
- 50f44: e037883a mov sp,fp
- 50f48: dfc00117 ldw ra,4(sp)
- 50f4c: df000017 ldw fp,0(sp)
- 50f50: dec00204 addi sp,sp,8
- 50f54: f800283a ret
- 00050f58 <_do_dtors>:
- /*
- * Run the C++ static destructors.
- */
- void _do_dtors(void)
- {
- 50f58: defffd04 addi sp,sp,-12
- 50f5c: dfc00215 stw ra,8(sp)
- 50f60: df000115 stw fp,4(sp)
- 50f64: df000104 addi fp,sp,4
- destructor* dtor;
- for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--)
- 50f68: 00800174 movhi r2,5
- 50f6c: 10880d04 addi r2,r2,8244
- 50f70: e0bfff15 stw r2,-4(fp)
- 50f74: 00000606 br 50f90 <_do_dtors+0x38>
- (*dtor) ();
- 50f78: e0bfff17 ldw r2,-4(fp)
- 50f7c: 10800017 ldw r2,0(r2)
- 50f80: 103ee83a callr r2
- void _do_dtors(void)
- {
- destructor* dtor;
- for (dtor = &__DTOR_END__[-1]; dtor >= __DTOR_LIST__; dtor--)
- 50f84: e0bfff17 ldw r2,-4(fp)
- 50f88: 10bfff04 addi r2,r2,-4
- 50f8c: e0bfff15 stw r2,-4(fp)
- 50f90: e0ffff17 ldw r3,-4(fp)
- 50f94: 00800174 movhi r2,5
- 50f98: 10880e04 addi r2,r2,8248
- 50f9c: 18bff62e bgeu r3,r2,50f78 <__alt_data_end+0xfffdef78>
- (*dtor) ();
- }
- 50fa0: 0001883a nop
- 50fa4: e037883a mov sp,fp
- 50fa8: dfc00117 ldw ra,4(sp)
- 50fac: df000017 ldw fp,0(sp)
- 50fb0: dec00204 addi sp,sp,8
- 50fb4: f800283a ret
- 00050fb8 <alt_icache_flush_all>:
- /*
- * alt_icache_flush_all() is called to flush the entire instruction cache.
- */
- void alt_icache_flush_all (void)
- {
- 50fb8: deffff04 addi sp,sp,-4
- 50fbc: df000015 stw fp,0(sp)
- 50fc0: d839883a mov fp,sp
- #if NIOS2_ICACHE_SIZE > 0
- alt_icache_flush (0, NIOS2_ICACHE_SIZE);
- #endif
- }
- 50fc4: 0001883a nop
- 50fc8: e037883a mov sp,fp
- 50fcc: df000017 ldw fp,0(sp)
- 50fd0: dec00104 addi sp,sp,4
- 50fd4: f800283a ret
- 00050fd8 <alt_ic_isr_register>:
- * @param irq IRQ number
- * @return 0 if successful, else error (-1)
- */
- int alt_ic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr,
- void *isr_context, void *flags)
- {
- 50fd8: defff904 addi sp,sp,-28
- 50fdc: dfc00615 stw ra,24(sp)
- 50fe0: df000515 stw fp,20(sp)
- 50fe4: df000504 addi fp,sp,20
- 50fe8: e13ffc15 stw r4,-16(fp)
- 50fec: e17ffd15 stw r5,-12(fp)
- 50ff0: e1bffe15 stw r6,-8(fp)
- 50ff4: e1ffff15 stw r7,-4(fp)
- return alt_iic_isr_register(ic_id, irq, isr, isr_context, flags);
- 50ff8: e0800217 ldw r2,8(fp)
- 50ffc: d8800015 stw r2,0(sp)
- 51000: e1ffff17 ldw r7,-4(fp)
- 51004: e1bffe17 ldw r6,-8(fp)
- 51008: e17ffd17 ldw r5,-12(fp)
- 5100c: e13ffc17 ldw r4,-16(fp)
- 51010: 00511880 call 51188 <alt_iic_isr_register>
- }
- 51014: e037883a mov sp,fp
- 51018: dfc00117 ldw ra,4(sp)
- 5101c: df000017 ldw fp,0(sp)
- 51020: dec00204 addi sp,sp,8
- 51024: f800283a ret
- 00051028 <alt_ic_irq_enable>:
- * @param ic_id Ignored.
- * @param irq IRQ number
- * @return 0 if successful, else error (-1)
- */
- int alt_ic_irq_enable (alt_u32 ic_id, alt_u32 irq)
- {
- 51028: defff904 addi sp,sp,-28
- 5102c: df000615 stw fp,24(sp)
- 51030: df000604 addi fp,sp,24
- 51034: e13ffe15 stw r4,-8(fp)
- 51038: e17fff15 stw r5,-4(fp)
- 5103c: e0bfff17 ldw r2,-4(fp)
- 51040: e0bffa15 stw r2,-24(fp)
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 51044: 0005303a rdctl r2,status
- 51048: e0bffb15 stw r2,-20(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 5104c: e0fffb17 ldw r3,-20(fp)
- 51050: 00bfff84 movi r2,-2
- 51054: 1884703a and r2,r3,r2
- 51058: 1001703a wrctl status,r2
-
- return context;
- 5105c: e0bffb17 ldw r2,-20(fp)
- static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_enable (alt_u32 id)
- {
- alt_irq_context status;
- extern volatile alt_u32 alt_irq_active;
- status = alt_irq_disable_all ();
- 51060: e0bffc15 stw r2,-16(fp)
- alt_irq_active |= (1 << id);
- 51064: 00c00044 movi r3,1
- 51068: e0bffa17 ldw r2,-24(fp)
- 5106c: 1884983a sll r2,r3,r2
- 51070: 1007883a mov r3,r2
- 51074: d0a72517 ldw r2,-25452(gp)
- 51078: 1884b03a or r2,r3,r2
- 5107c: d0a72515 stw r2,-25452(gp)
- NIOS2_WRITE_IENABLE (alt_irq_active);
- 51080: d0a72517 ldw r2,-25452(gp)
- 51084: 100170fa wrctl ienable,r2
- 51088: e0bffc17 ldw r2,-16(fp)
- 5108c: e0bffd15 stw r2,-12(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 51090: e0bffd17 ldw r2,-12(fp)
- 51094: 1001703a wrctl status,r2
- alt_irq_enable_all(status);
- return 0;
- 51098: 0005883a mov r2,zero
- return alt_irq_enable(irq);
- 5109c: 0001883a nop
- }
- 510a0: e037883a mov sp,fp
- 510a4: df000017 ldw fp,0(sp)
- 510a8: dec00104 addi sp,sp,4
- 510ac: f800283a ret
- 000510b0 <alt_ic_irq_disable>:
- * @param ic_id Ignored.
- * @param irq IRQ number
- * @return 0 if successful, else error (-1)
- */
- int alt_ic_irq_disable(alt_u32 ic_id, alt_u32 irq)
- {
- 510b0: defff904 addi sp,sp,-28
- 510b4: df000615 stw fp,24(sp)
- 510b8: df000604 addi fp,sp,24
- 510bc: e13ffe15 stw r4,-8(fp)
- 510c0: e17fff15 stw r5,-4(fp)
- 510c4: e0bfff17 ldw r2,-4(fp)
- 510c8: e0bffa15 stw r2,-24(fp)
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 510cc: 0005303a rdctl r2,status
- 510d0: e0bffb15 stw r2,-20(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 510d4: e0fffb17 ldw r3,-20(fp)
- 510d8: 00bfff84 movi r2,-2
- 510dc: 1884703a and r2,r3,r2
- 510e0: 1001703a wrctl status,r2
-
- return context;
- 510e4: e0bffb17 ldw r2,-20(fp)
- static ALT_INLINE int ALT_ALWAYS_INLINE alt_irq_disable (alt_u32 id)
- {
- alt_irq_context status;
- extern volatile alt_u32 alt_irq_active;
- status = alt_irq_disable_all ();
- 510e8: e0bffc15 stw r2,-16(fp)
- alt_irq_active &= ~(1 << id);
- 510ec: 00c00044 movi r3,1
- 510f0: e0bffa17 ldw r2,-24(fp)
- 510f4: 1884983a sll r2,r3,r2
- 510f8: 0084303a nor r2,zero,r2
- 510fc: 1007883a mov r3,r2
- 51100: d0a72517 ldw r2,-25452(gp)
- 51104: 1884703a and r2,r3,r2
- 51108: d0a72515 stw r2,-25452(gp)
- NIOS2_WRITE_IENABLE (alt_irq_active);
- 5110c: d0a72517 ldw r2,-25452(gp)
- 51110: 100170fa wrctl ienable,r2
- 51114: e0bffc17 ldw r2,-16(fp)
- 51118: e0bffd15 stw r2,-12(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 5111c: e0bffd17 ldw r2,-12(fp)
- 51120: 1001703a wrctl status,r2
- alt_irq_enable_all(status);
- return 0;
- 51124: 0005883a mov r2,zero
- return alt_irq_disable(irq);
- 51128: 0001883a nop
- }
- 5112c: e037883a mov sp,fp
- 51130: df000017 ldw fp,0(sp)
- 51134: dec00104 addi sp,sp,4
- 51138: f800283a ret
- 0005113c <alt_ic_irq_enabled>:
- * @param irq IRQ number
- * @return Zero if corresponding interrupt is disabled and
- * non-zero otherwise.
- */
- alt_u32 alt_ic_irq_enabled(alt_u32 ic_id, alt_u32 irq)
- {
- 5113c: defffc04 addi sp,sp,-16
- 51140: df000315 stw fp,12(sp)
- 51144: df000304 addi fp,sp,12
- 51148: e13ffe15 stw r4,-8(fp)
- 5114c: e17fff15 stw r5,-4(fp)
- alt_u32 irq_enabled;
- NIOS2_READ_IENABLE(irq_enabled);
- 51150: 000530fa rdctl r2,ienable
- 51154: e0bffd15 stw r2,-12(fp)
- return (irq_enabled & (1 << irq)) ? 1: 0;
- 51158: 00c00044 movi r3,1
- 5115c: e0bfff17 ldw r2,-4(fp)
- 51160: 1884983a sll r2,r3,r2
- 51164: 1007883a mov r3,r2
- 51168: e0bffd17 ldw r2,-12(fp)
- 5116c: 1884703a and r2,r3,r2
- 51170: 1004c03a cmpne r2,r2,zero
- 51174: 10803fcc andi r2,r2,255
- }
- 51178: e037883a mov sp,fp
- 5117c: df000017 ldw fp,0(sp)
- 51180: dec00104 addi sp,sp,4
- 51184: f800283a ret
- 00051188 <alt_iic_isr_register>:
- * @param flags
- * @return 0 if successful, else error (-1)
- */
- int alt_iic_isr_register(alt_u32 ic_id, alt_u32 irq, alt_isr_func isr,
- void *isr_context, void *flags)
- {
- 51188: defff504 addi sp,sp,-44
- 5118c: dfc00a15 stw ra,40(sp)
- 51190: df000915 stw fp,36(sp)
- 51194: df000904 addi fp,sp,36
- 51198: e13ffc15 stw r4,-16(fp)
- 5119c: e17ffd15 stw r5,-12(fp)
- 511a0: e1bffe15 stw r6,-8(fp)
- 511a4: e1ffff15 stw r7,-4(fp)
- int rc = -EINVAL;
- 511a8: 00bffa84 movi r2,-22
- 511ac: e0bff715 stw r2,-36(fp)
- int id = irq; /* IRQ interpreted as the interrupt ID. */
- 511b0: e0bffd17 ldw r2,-12(fp)
- 511b4: e0bff815 stw r2,-32(fp)
- alt_irq_context status;
- if (id < ALT_NIRQ)
- 511b8: e0bff817 ldw r2,-32(fp)
- 511bc: 10800808 cmpgei r2,r2,32
- 511c0: 1000271e bne r2,zero,51260 <alt_iic_isr_register+0xd8>
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 511c4: 0005303a rdctl r2,status
- 511c8: e0bffb15 stw r2,-20(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 511cc: e0fffb17 ldw r3,-20(fp)
- 511d0: 00bfff84 movi r2,-2
- 511d4: 1884703a and r2,r3,r2
- 511d8: 1001703a wrctl status,r2
-
- return context;
- 511dc: e0bffb17 ldw r2,-20(fp)
- * interrupts are disabled while the handler tables are updated to ensure
- * that an interrupt doesn't occur while the tables are in an inconsistant
- * state.
- */
- status = alt_irq_disable_all();
- 511e0: e0bffa15 stw r2,-24(fp)
- alt_irq[id].handler = isr;
- 511e4: 00800174 movhi r2,5
- 511e8: 1097c904 addi r2,r2,24356
- 511ec: e0fff817 ldw r3,-32(fp)
- 511f0: 180690fa slli r3,r3,3
- 511f4: 10c5883a add r2,r2,r3
- 511f8: e0fffe17 ldw r3,-8(fp)
- 511fc: 10c00015 stw r3,0(r2)
- alt_irq[id].context = isr_context;
- 51200: 00800174 movhi r2,5
- 51204: 1097c904 addi r2,r2,24356
- 51208: e0fff817 ldw r3,-32(fp)
- 5120c: 180690fa slli r3,r3,3
- 51210: 10c5883a add r2,r2,r3
- 51214: 10800104 addi r2,r2,4
- 51218: e0ffff17 ldw r3,-4(fp)
- 5121c: 10c00015 stw r3,0(r2)
- rc = (isr) ? alt_ic_irq_enable(ic_id, id) : alt_ic_irq_disable(ic_id, id);
- 51220: e0bffe17 ldw r2,-8(fp)
- 51224: 10000526 beq r2,zero,5123c <alt_iic_isr_register+0xb4>
- 51228: e0bff817 ldw r2,-32(fp)
- 5122c: 100b883a mov r5,r2
- 51230: e13ffc17 ldw r4,-16(fp)
- 51234: 00510280 call 51028 <alt_ic_irq_enable>
- 51238: 00000406 br 5124c <alt_iic_isr_register+0xc4>
- 5123c: e0bff817 ldw r2,-32(fp)
- 51240: 100b883a mov r5,r2
- 51244: e13ffc17 ldw r4,-16(fp)
- 51248: 00510b00 call 510b0 <alt_ic_irq_disable>
- 5124c: e0bff715 stw r2,-36(fp)
- 51250: e0bffa17 ldw r2,-24(fp)
- 51254: e0bff915 stw r2,-28(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 51258: e0bff917 ldw r2,-28(fp)
- 5125c: 1001703a wrctl status,r2
- alt_irq_enable_all(status);
- }
- return rc;
- 51260: e0bff717 ldw r2,-36(fp)
- }
- 51264: e037883a mov sp,fp
- 51268: dfc00117 ldw ra,4(sp)
- 5126c: df000017 ldw fp,0(sp)
- 51270: dec00204 addi sp,sp,8
- 51274: f800283a ret
- 00051278 <alt_open_fd>:
- * If the device can not be succesfully opened, then the input file descriptor
- * remains unchanged.
- */
- static void alt_open_fd(alt_fd* fd, const char* name, int flags, int mode)
- {
- 51278: defff804 addi sp,sp,-32
- 5127c: dfc00715 stw ra,28(sp)
- 51280: df000615 stw fp,24(sp)
- 51284: dc000515 stw r16,20(sp)
- 51288: df000604 addi fp,sp,24
- 5128c: e13ffb15 stw r4,-20(fp)
- 51290: e17ffc15 stw r5,-16(fp)
- 51294: e1bffd15 stw r6,-12(fp)
- 51298: e1fffe15 stw r7,-8(fp)
- int old;
- old = open (name, flags, mode);
- 5129c: e1bffe17 ldw r6,-8(fp)
- 512a0: e17ffd17 ldw r5,-12(fp)
- 512a4: e13ffc17 ldw r4,-16(fp)
- 512a8: 00515000 call 51500 <open>
- 512ac: e0bffa15 stw r2,-24(fp)
- if (old >= 0)
- 512b0: e0bffa17 ldw r2,-24(fp)
- 512b4: 10002216 blt r2,zero,51340 <alt_open_fd+0xc8>
- {
- fd->dev = alt_fd_list[old].dev;
- 512b8: 04000174 movhi r16,5
- 512bc: 840bca04 addi r16,r16,12072
- 512c0: e0bffa17 ldw r2,-24(fp)
- 512c4: 01400304 movi r5,12
- 512c8: 1009883a mov r4,r2
- 512cc: 004c9f80 call 4c9f8 <__mulsi3>
- 512d0: 8085883a add r2,r16,r2
- 512d4: 10c00017 ldw r3,0(r2)
- 512d8: e0bffb17 ldw r2,-20(fp)
- 512dc: 10c00015 stw r3,0(r2)
- fd->priv = alt_fd_list[old].priv;
- 512e0: 04000174 movhi r16,5
- 512e4: 840bca04 addi r16,r16,12072
- 512e8: e0bffa17 ldw r2,-24(fp)
- 512ec: 01400304 movi r5,12
- 512f0: 1009883a mov r4,r2
- 512f4: 004c9f80 call 4c9f8 <__mulsi3>
- 512f8: 8085883a add r2,r16,r2
- 512fc: 10800104 addi r2,r2,4
- 51300: 10c00017 ldw r3,0(r2)
- 51304: e0bffb17 ldw r2,-20(fp)
- 51308: 10c00115 stw r3,4(r2)
- fd->fd_flags = alt_fd_list[old].fd_flags;
- 5130c: 04000174 movhi r16,5
- 51310: 840bca04 addi r16,r16,12072
- 51314: e0bffa17 ldw r2,-24(fp)
- 51318: 01400304 movi r5,12
- 5131c: 1009883a mov r4,r2
- 51320: 004c9f80 call 4c9f8 <__mulsi3>
- 51324: 8085883a add r2,r16,r2
- 51328: 10800204 addi r2,r2,8
- 5132c: 10c00017 ldw r3,0(r2)
- 51330: e0bffb17 ldw r2,-20(fp)
- 51334: 10c00215 stw r3,8(r2)
- alt_release_fd (old);
- 51338: e13ffa17 ldw r4,-24(fp)
- 5133c: 004ef7c0 call 4ef7c <alt_release_fd>
- }
- }
- 51340: 0001883a nop
- 51344: e6ffff04 addi sp,fp,-4
- 51348: dfc00217 ldw ra,8(sp)
- 5134c: df000117 ldw fp,4(sp)
- 51350: dc000017 ldw r16,0(sp)
- 51354: dec00304 addi sp,sp,12
- 51358: f800283a ret
- 0005135c <alt_io_redirect>:
- */
-
- void alt_io_redirect(const char* stdout_dev,
- const char* stdin_dev,
- const char* stderr_dev)
- {
- 5135c: defffb04 addi sp,sp,-20
- 51360: dfc00415 stw ra,16(sp)
- 51364: df000315 stw fp,12(sp)
- 51368: df000304 addi fp,sp,12
- 5136c: e13ffd15 stw r4,-12(fp)
- 51370: e17ffe15 stw r5,-8(fp)
- 51374: e1bfff15 stw r6,-4(fp)
- /* Redirect the channels */
- alt_open_fd (&alt_fd_list[STDOUT_FILENO], stdout_dev, O_WRONLY, 0777);
- 51378: 01c07fc4 movi r7,511
- 5137c: 01800044 movi r6,1
- 51380: e17ffd17 ldw r5,-12(fp)
- 51384: 01000174 movhi r4,5
- 51388: 210bcd04 addi r4,r4,12084
- 5138c: 00512780 call 51278 <alt_open_fd>
- alt_open_fd (&alt_fd_list[STDIN_FILENO], stdin_dev, O_RDONLY, 0777);
- 51390: 01c07fc4 movi r7,511
- 51394: 000d883a mov r6,zero
- 51398: e17ffe17 ldw r5,-8(fp)
- 5139c: 01000174 movhi r4,5
- 513a0: 210bca04 addi r4,r4,12072
- 513a4: 00512780 call 51278 <alt_open_fd>
- alt_open_fd (&alt_fd_list[STDERR_FILENO], stderr_dev, O_WRONLY, 0777);
- 513a8: 01c07fc4 movi r7,511
- 513ac: 01800044 movi r6,1
- 513b0: e17fff17 ldw r5,-4(fp)
- 513b4: 01000174 movhi r4,5
- 513b8: 210bd004 addi r4,r4,12096
- 513bc: 00512780 call 51278 <alt_open_fd>
- }
- 513c0: 0001883a nop
- 513c4: e037883a mov sp,fp
- 513c8: dfc00117 ldw ra,4(sp)
- 513cc: df000017 ldw fp,0(sp)
- 513d0: dec00204 addi sp,sp,8
- 513d4: f800283a ret
- 000513d8 <alt_get_errno>:
- #undef errno
- extern int errno;
- static ALT_INLINE int* alt_get_errno(void)
- {
- 513d8: defffe04 addi sp,sp,-8
- 513dc: dfc00115 stw ra,4(sp)
- 513e0: df000015 stw fp,0(sp)
- 513e4: d839883a mov fp,sp
- return ((alt_errno) ? alt_errno() : &errno);
- 513e8: d0a00b17 ldw r2,-32724(gp)
- 513ec: 10000326 beq r2,zero,513fc <alt_get_errno+0x24>
- 513f0: d0a00b17 ldw r2,-32724(gp)
- 513f4: 103ee83a callr r2
- 513f8: 00000106 br 51400 <alt_get_errno+0x28>
- 513fc: d0a72104 addi r2,gp,-25468
- }
- 51400: e037883a mov sp,fp
- 51404: dfc00117 ldw ra,4(sp)
- 51408: df000017 ldw fp,0(sp)
- 5140c: dec00204 addi sp,sp,8
- 51410: f800283a ret
- 00051414 <alt_file_locked>:
- * performed for devices. Filesystems are required to handle the ioctl() call
- * themselves, and report the error from the filesystems open() function.
- */
- static int alt_file_locked (alt_fd* fd)
- {
- 51414: defffb04 addi sp,sp,-20
- 51418: dfc00415 stw ra,16(sp)
- 5141c: df000315 stw fp,12(sp)
- 51420: dc000215 stw r16,8(sp)
- 51424: df000304 addi fp,sp,12
- 51428: e13ffe15 stw r4,-8(fp)
- /*
- * Mark the file descriptor as belonging to a device.
- */
- fd->fd_flags |= ALT_FD_DEV;
- 5142c: e0bffe17 ldw r2,-8(fp)
- 51430: 10800217 ldw r2,8(r2)
- 51434: 10d00034 orhi r3,r2,16384
- 51438: e0bffe17 ldw r2,-8(fp)
- 5143c: 10c00215 stw r3,8(r2)
- /*
- * Loop through all current file descriptors searching for one that's locked
- * for exclusive access. If a match is found, generate an error.
- */
- for (i = 0; i <= alt_max_fd; i++)
- 51440: e03ffd15 stw zero,-12(fp)
- 51444: 00002306 br 514d4 <alt_file_locked+0xc0>
- {
- if ((alt_fd_list[i].dev == fd->dev) &&
- 51448: 04000174 movhi r16,5
- 5144c: 840bca04 addi r16,r16,12072
- 51450: e0bffd17 ldw r2,-12(fp)
- 51454: 01400304 movi r5,12
- 51458: 1009883a mov r4,r2
- 5145c: 004c9f80 call 4c9f8 <__mulsi3>
- 51460: 8085883a add r2,r16,r2
- 51464: 10c00017 ldw r3,0(r2)
- 51468: e0bffe17 ldw r2,-8(fp)
- 5146c: 10800017 ldw r2,0(r2)
- 51470: 1880151e bne r3,r2,514c8 <alt_file_locked+0xb4>
- (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
- 51474: 04000174 movhi r16,5
- 51478: 840bca04 addi r16,r16,12072
- 5147c: e0bffd17 ldw r2,-12(fp)
- 51480: 01400304 movi r5,12
- 51484: 1009883a mov r4,r2
- 51488: 004c9f80 call 4c9f8 <__mulsi3>
- 5148c: 8085883a add r2,r16,r2
- 51490: 10800204 addi r2,r2,8
- 51494: 10800017 ldw r2,0(r2)
- * for exclusive access. If a match is found, generate an error.
- */
- for (i = 0; i <= alt_max_fd; i++)
- {
- if ((alt_fd_list[i].dev == fd->dev) &&
- 51498: 10000b0e bge r2,zero,514c8 <alt_file_locked+0xb4>
- (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
- (&alt_fd_list[i] != fd))
- 5149c: 01400304 movi r5,12
- 514a0: e13ffd17 ldw r4,-12(fp)
- 514a4: 004c9f80 call 4c9f8 <__mulsi3>
- 514a8: 1007883a mov r3,r2
- 514ac: 00800174 movhi r2,5
- 514b0: 108bca04 addi r2,r2,12072
- 514b4: 1887883a add r3,r3,r2
- */
- for (i = 0; i <= alt_max_fd; i++)
- {
- if ((alt_fd_list[i].dev == fd->dev) &&
- (alt_fd_list[i].fd_flags & ALT_FD_EXCL) &&
- 514b8: e0bffe17 ldw r2,-8(fp)
- 514bc: 18800226 beq r3,r2,514c8 <alt_file_locked+0xb4>
- (&alt_fd_list[i] != fd))
- {
- return -EACCES;
- 514c0: 00bffcc4 movi r2,-13
- 514c4: 00000806 br 514e8 <alt_file_locked+0xd4>
- /*
- * Loop through all current file descriptors searching for one that's locked
- * for exclusive access. If a match is found, generate an error.
- */
- for (i = 0; i <= alt_max_fd; i++)
- 514c8: e0bffd17 ldw r2,-12(fp)
- 514cc: 10800044 addi r2,r2,1
- 514d0: e0bffd15 stw r2,-12(fp)
- 514d4: d0a00a17 ldw r2,-32728(gp)
- 514d8: 1007883a mov r3,r2
- 514dc: e0bffd17 ldw r2,-12(fp)
- 514e0: 18bfd92e bgeu r3,r2,51448 <__alt_data_end+0xfffdf448>
- }
- }
-
- /* The device is not locked */
-
- return 0;
- 514e4: 0005883a mov r2,zero
- }
- 514e8: e6ffff04 addi sp,fp,-4
- 514ec: dfc00217 ldw ra,8(sp)
- 514f0: df000117 ldw fp,4(sp)
- 514f4: dc000017 ldw r16,0(sp)
- 514f8: dec00304 addi sp,sp,12
- 514fc: f800283a ret
- 00051500 <open>:
- *
- * ALT_OPEN is mapped onto the open() system call in alt_syscall.h
- */
-
- int ALT_OPEN (const char* file, int flags, int mode)
- {
- 51500: defff604 addi sp,sp,-40
- 51504: dfc00915 stw ra,36(sp)
- 51508: df000815 stw fp,32(sp)
- 5150c: df000804 addi fp,sp,32
- 51510: e13ffd15 stw r4,-12(fp)
- 51514: e17ffe15 stw r5,-8(fp)
- 51518: e1bfff15 stw r6,-4(fp)
- alt_dev* dev;
- alt_fd* fd;
- int index = -1;
- 5151c: 00bfffc4 movi r2,-1
- 51520: e0bff915 stw r2,-28(fp)
- int status = -ENODEV;
- 51524: 00bffb44 movi r2,-19
- 51528: e0bffa15 stw r2,-24(fp)
- int isafs = 0;
- 5152c: e03ffb15 stw zero,-20(fp)
- /*
- * Check the device list, to see if a device with a matching name is
- * registered.
- */
-
- if (!(dev = alt_find_dev (file, &alt_dev_list)))
- 51530: d1600804 addi r5,gp,-32736
- 51534: e13ffd17 ldw r4,-12(fp)
- 51538: 00519ac0 call 519ac <alt_find_dev>
- 5153c: e0bff815 stw r2,-32(fp)
- 51540: e0bff817 ldw r2,-32(fp)
- 51544: 1000051e bne r2,zero,5155c <open+0x5c>
- {
- /* No matching device, so try the filesystem list */
- dev = alt_find_file (file);
- 51548: e13ffd17 ldw r4,-12(fp)
- 5154c: 0051a3c0 call 51a3c <alt_find_file>
- 51550: e0bff815 stw r2,-32(fp)
- isafs = 1;
- 51554: 00800044 movi r2,1
- 51558: e0bffb15 stw r2,-20(fp)
- /*
- * If a matching device or filesystem is found, allocate a file descriptor.
- */
- if (dev)
- 5155c: e0bff817 ldw r2,-32(fp)
- 51560: 10002b26 beq r2,zero,51610 <open+0x110>
- {
- if ((index = alt_get_fd (dev)) < 0)
- 51564: e13ff817 ldw r4,-32(fp)
- 51568: 0051b440 call 51b44 <alt_get_fd>
- 5156c: e0bff915 stw r2,-28(fp)
- 51570: e0bff917 ldw r2,-28(fp)
- 51574: 1000030e bge r2,zero,51584 <open+0x84>
- {
- status = index;
- 51578: e0bff917 ldw r2,-28(fp)
- 5157c: e0bffa15 stw r2,-24(fp)
- 51580: 00002506 br 51618 <open+0x118>
- }
- else
- {
- fd = &alt_fd_list[index];
- 51584: 01400304 movi r5,12
- 51588: e13ff917 ldw r4,-28(fp)
- 5158c: 004c9f80 call 4c9f8 <__mulsi3>
- 51590: 1007883a mov r3,r2
- 51594: 00800174 movhi r2,5
- 51598: 108bca04 addi r2,r2,12072
- 5159c: 1885883a add r2,r3,r2
- 515a0: e0bffc15 stw r2,-16(fp)
- fd->fd_flags = (flags & ~ALT_FD_FLAGS_MASK);
- 515a4: e0fffe17 ldw r3,-8(fp)
- 515a8: 00900034 movhi r2,16384
- 515ac: 10bfffc4 addi r2,r2,-1
- 515b0: 1886703a and r3,r3,r2
- 515b4: e0bffc17 ldw r2,-16(fp)
- 515b8: 10c00215 stw r3,8(r2)
-
- /* If this is a device, ensure it isn't already locked */
- if (isafs || ((status = alt_file_locked (fd)) >= 0))
- 515bc: e0bffb17 ldw r2,-20(fp)
- 515c0: 1000051e bne r2,zero,515d8 <open+0xd8>
- 515c4: e13ffc17 ldw r4,-16(fp)
- 515c8: 00514140 call 51414 <alt_file_locked>
- 515cc: e0bffa15 stw r2,-24(fp)
- 515d0: e0bffa17 ldw r2,-24(fp)
- 515d4: 10001016 blt r2,zero,51618 <open+0x118>
- /*
- * If the device or filesystem provides an open() callback function,
- * call it now to perform any device/filesystem specific operations.
- */
-
- status = (dev->open) ? dev->open(fd, file, flags, mode): 0;
- 515d8: e0bff817 ldw r2,-32(fp)
- 515dc: 10800317 ldw r2,12(r2)
- 515e0: 10000826 beq r2,zero,51604 <open+0x104>
- 515e4: e0bff817 ldw r2,-32(fp)
- 515e8: 10800317 ldw r2,12(r2)
- 515ec: e1ffff17 ldw r7,-4(fp)
- 515f0: e1bffe17 ldw r6,-8(fp)
- 515f4: e17ffd17 ldw r5,-12(fp)
- 515f8: e13ffc17 ldw r4,-16(fp)
- 515fc: 103ee83a callr r2
- 51600: 00000106 br 51608 <open+0x108>
- 51604: 0005883a mov r2,zero
- 51608: e0bffa15 stw r2,-24(fp)
- 5160c: 00000206 br 51618 <open+0x118>
- }
- }
- }
- else
- {
- status = -ENODEV;
- 51610: 00bffb44 movi r2,-19
- 51614: e0bffa15 stw r2,-24(fp)
- }
- /* Allocation failed, so clean up and return an error */
- if (status < 0)
- 51618: e0bffa17 ldw r2,-24(fp)
- 5161c: 1000090e bge r2,zero,51644 <open+0x144>
- {
- alt_release_fd (index);
- 51620: e13ff917 ldw r4,-28(fp)
- 51624: 004ef7c0 call 4ef7c <alt_release_fd>
- ALT_ERRNO = -status;
- 51628: 00513d80 call 513d8 <alt_get_errno>
- 5162c: 1007883a mov r3,r2
- 51630: e0bffa17 ldw r2,-24(fp)
- 51634: 0085c83a sub r2,zero,r2
- 51638: 18800015 stw r2,0(r3)
- return -1;
- 5163c: 00bfffc4 movi r2,-1
- 51640: 00000106 br 51648 <open+0x148>
- }
-
- /* return the reference upon success */
- return index;
- 51644: e0bff917 ldw r2,-28(fp)
- }
- 51648: e037883a mov sp,fp
- 5164c: dfc00117 ldw ra,4(sp)
- 51650: df000017 ldw fp,0(sp)
- 51654: dec00204 addi sp,sp,8
- 51658: f800283a ret
- 0005165c <alt_alarm_stop>:
- * alarms. Alternatively an alarm can unregister itself by returning zero when
- * the alarm executes.
- */
- void alt_alarm_stop (alt_alarm* alarm)
- {
- 5165c: defffa04 addi sp,sp,-24
- 51660: df000515 stw fp,20(sp)
- 51664: df000504 addi fp,sp,20
- 51668: e13fff15 stw r4,-4(fp)
- static ALT_INLINE alt_irq_context ALT_ALWAYS_INLINE
- alt_irq_disable_all (void)
- {
- alt_irq_context context;
- NIOS2_READ_STATUS (context);
- 5166c: 0005303a rdctl r2,status
- 51670: e0bffc15 stw r2,-16(fp)
- NIOS2_WRITE_STATUS (context & ~NIOS2_STATUS_PIE_MSK);
- 51674: e0fffc17 ldw r3,-16(fp)
- 51678: 00bfff84 movi r2,-2
- 5167c: 1884703a and r2,r3,r2
- 51680: 1001703a wrctl status,r2
-
- return context;
- 51684: e0bffc17 ldw r2,-16(fp)
- alt_irq_context irq_context;
- irq_context = alt_irq_disable_all();
- 51688: e0bffb15 stw r2,-20(fp)
- alt_llist_remove (&alarm->llist);
- 5168c: e0bfff17 ldw r2,-4(fp)
- 51690: e0bffd15 stw r2,-12(fp)
- * input argument is the element to remove.
- */
-
- static ALT_INLINE void ALT_ALWAYS_INLINE alt_llist_remove(alt_llist* entry)
- {
- entry->next->previous = entry->previous;
- 51694: e0bffd17 ldw r2,-12(fp)
- 51698: 10800017 ldw r2,0(r2)
- 5169c: e0fffd17 ldw r3,-12(fp)
- 516a0: 18c00117 ldw r3,4(r3)
- 516a4: 10c00115 stw r3,4(r2)
- entry->previous->next = entry->next;
- 516a8: e0bffd17 ldw r2,-12(fp)
- 516ac: 10800117 ldw r2,4(r2)
- 516b0: e0fffd17 ldw r3,-12(fp)
- 516b4: 18c00017 ldw r3,0(r3)
- 516b8: 10c00015 stw r3,0(r2)
- /*
- * Set the entry to point to itself, so that any further calls to
- * alt_llist_remove() are harmless.
- */
- entry->previous = entry;
- 516bc: e0bffd17 ldw r2,-12(fp)
- 516c0: e0fffd17 ldw r3,-12(fp)
- 516c4: 10c00115 stw r3,4(r2)
- entry->next = entry;
- 516c8: e0bffd17 ldw r2,-12(fp)
- 516cc: e0fffd17 ldw r3,-12(fp)
- 516d0: 10c00015 stw r3,0(r2)
- 516d4: e0bffb17 ldw r2,-20(fp)
- 516d8: e0bffe15 stw r2,-8(fp)
- status &= ~NIOS2_STATUS_PIE_MSK;
- status |= (context & NIOS2_STATUS_PIE_MSK);
-
- NIOS2_WRITE_STATUS (status);
- #else
- NIOS2_WRITE_STATUS (context);
- 516dc: e0bffe17 ldw r2,-8(fp)
- 516e0: 1001703a wrctl status,r2
- alt_irq_enable_all (irq_context);
- }
- 516e4: 0001883a nop
- 516e8: e037883a mov sp,fp
- 516ec: df000017 ldw fp,0(sp)
- 516f0: dec00104 addi sp,sp,4
- 516f4: f800283a ret
- 000516f8 <alt_tick>:
- *
- * alt_tick() is expected to run at interrupt level.
- */
- void alt_tick (void)
- {
- 516f8: defffb04 addi sp,sp,-20
- 516fc: dfc00415 stw ra,16(sp)
- 51700: df000315 stw fp,12(sp)
- 51704: df000304 addi fp,sp,12
- alt_alarm* next;
- alt_alarm* alarm = (alt_alarm*) alt_alarm_list.next;
- 51708: d0a00f17 ldw r2,-32708(gp)
- 5170c: e0bffd15 stw r2,-12(fp)
- alt_u32 next_callback;
- /* update the tick counter */
- _alt_nticks++;
- 51710: d0a72717 ldw r2,-25444(gp)
- 51714: 10800044 addi r2,r2,1
- 51718: d0a72715 stw r2,-25444(gp)
- /* process the registered callbacks */
- while (alarm != (alt_alarm*) &alt_alarm_list)
- 5171c: 00002e06 br 517d8 <alt_tick+0xe0>
- {
- next = (alt_alarm*) alarm->llist.next;
- 51720: e0bffd17 ldw r2,-12(fp)
- 51724: 10800017 ldw r2,0(r2)
- 51728: e0bffe15 stw r2,-8(fp)
- /*
- * Upon the tick-counter rolling over it is safe to clear the
- * roll-over flag; once the flag is cleared this (or subsequnt)
- * tick events are enabled to generate an alarm event.
- */
- if ((alarm->rollover) && (_alt_nticks == 0))
- 5172c: e0bffd17 ldw r2,-12(fp)
- 51730: 10800403 ldbu r2,16(r2)
- 51734: 10803fcc andi r2,r2,255
- 51738: 10000426 beq r2,zero,5174c <alt_tick+0x54>
- 5173c: d0a72717 ldw r2,-25444(gp)
- 51740: 1000021e bne r2,zero,5174c <alt_tick+0x54>
- {
- alarm->rollover = 0;
- 51744: e0bffd17 ldw r2,-12(fp)
- 51748: 10000405 stb zero,16(r2)
- }
-
- /* if the alarm period has expired, make the callback */
- if ((alarm->time <= _alt_nticks) && (alarm->rollover == 0))
- 5174c: e0bffd17 ldw r2,-12(fp)
- 51750: 10800217 ldw r2,8(r2)
- 51754: d0e72717 ldw r3,-25444(gp)
- 51758: 18801d36 bltu r3,r2,517d0 <alt_tick+0xd8>
- 5175c: e0bffd17 ldw r2,-12(fp)
- 51760: 10800403 ldbu r2,16(r2)
- 51764: 10803fcc andi r2,r2,255
- 51768: 1000191e bne r2,zero,517d0 <alt_tick+0xd8>
- {
- next_callback = alarm->callback (alarm->context);
- 5176c: e0bffd17 ldw r2,-12(fp)
- 51770: 10800317 ldw r2,12(r2)
- 51774: e0fffd17 ldw r3,-12(fp)
- 51778: 18c00517 ldw r3,20(r3)
- 5177c: 1809883a mov r4,r3
- 51780: 103ee83a callr r2
- 51784: e0bfff15 stw r2,-4(fp)
- /* deactivate the alarm if the return value is zero */
- if (next_callback == 0)
- 51788: e0bfff17 ldw r2,-4(fp)
- 5178c: 1000031e bne r2,zero,5179c <alt_tick+0xa4>
- {
- alt_alarm_stop (alarm);
- 51790: e13ffd17 ldw r4,-12(fp)
- 51794: 005165c0 call 5165c <alt_alarm_stop>
- 51798: 00000d06 br 517d0 <alt_tick+0xd8>
- }
- else
- {
- alarm->time += next_callback;
- 5179c: e0bffd17 ldw r2,-12(fp)
- 517a0: 10c00217 ldw r3,8(r2)
- 517a4: e0bfff17 ldw r2,-4(fp)
- 517a8: 1887883a add r3,r3,r2
- 517ac: e0bffd17 ldw r2,-12(fp)
- 517b0: 10c00215 stw r3,8(r2)
- /*
- * If the desired alarm time causes a roll-over, set the rollover
- * flag. This will prevent the subsequent tick event from causing
- * an alarm too early.
- */
- if(alarm->time < _alt_nticks)
- 517b4: e0bffd17 ldw r2,-12(fp)
- 517b8: 10c00217 ldw r3,8(r2)
- 517bc: d0a72717 ldw r2,-25444(gp)
- 517c0: 1880032e bgeu r3,r2,517d0 <alt_tick+0xd8>
- {
- alarm->rollover = 1;
- 517c4: e0bffd17 ldw r2,-12(fp)
- 517c8: 00c00044 movi r3,1
- 517cc: 10c00405 stb r3,16(r2)
- }
- }
- }
- alarm = next;
- 517d0: e0bffe17 ldw r2,-8(fp)
- 517d4: e0bffd15 stw r2,-12(fp)
- _alt_nticks++;
- /* process the registered callbacks */
- while (alarm != (alt_alarm*) &alt_alarm_list)
- 517d8: e0fffd17 ldw r3,-12(fp)
- 517dc: d0a00f04 addi r2,gp,-32708
- 517e0: 18bfcf1e bne r3,r2,51720 <__alt_data_end+0xfffdf720>
- /*
- * Update the operating system specific timer facilities.
- */
- ALT_OS_TIME_TICK();
- 517e4: 0001883a nop
- }
- 517e8: 0001883a nop
- 517ec: e037883a mov sp,fp
- 517f0: dfc00117 ldw ra,4(sp)
- 517f4: df000017 ldw fp,0(sp)
- 517f8: dec00204 addi sp,sp,8
- 517fc: f800283a ret
- 00051800 <usleep>:
- #if defined (__GNUC__) && __GNUC__ >= 4
- int ALT_USLEEP (useconds_t us)
- #else
- unsigned int ALT_USLEEP (unsigned int us)
- #endif
- {
- 51800: defffd04 addi sp,sp,-12
- 51804: dfc00215 stw ra,8(sp)
- 51808: df000115 stw fp,4(sp)
- 5180c: df000104 addi fp,sp,4
- 51810: e13fff15 stw r4,-4(fp)
- return alt_busy_sleep(us);
- 51814: e13fff17 ldw r4,-4(fp)
- 51818: 00518540 call 51854 <alt_busy_sleep>
- }
- 5181c: e037883a mov sp,fp
- 51820: dfc00117 ldw ra,4(sp)
- 51824: df000017 ldw fp,0(sp)
- 51828: dec00204 addi sp,sp,8
- 5182c: f800283a ret
- 00051830 <altera_nios2_gen2_irq_init>:
- /*
- * To initialize the internal interrupt controller, just clear the IENABLE
- * register so that all possible IRQs are disabled.
- */
- void altera_nios2_gen2_irq_init(void)
- {
- 51830: deffff04 addi sp,sp,-4
- 51834: df000015 stw fp,0(sp)
- 51838: d839883a mov fp,sp
- NIOS2_WRITE_IENABLE(0);
- 5183c: 000170fa wrctl ienable,zero
- }
- 51840: 0001883a nop
- 51844: e037883a mov sp,fp
- 51848: df000017 ldw fp,0(sp)
- 5184c: dec00104 addi sp,sp,4
- 51850: f800283a ret
- 00051854 <alt_busy_sleep>:
- #include "alt_types.h"
- #include "priv/alt_busy_sleep.h"
- unsigned int alt_busy_sleep (unsigned int us)
- {
- 51854: defffa04 addi sp,sp,-24
- 51858: dfc00515 stw ra,20(sp)
- 5185c: df000415 stw fp,16(sp)
- 51860: df000404 addi fp,sp,16
- 51864: e13fff15 stw r4,-4(fp)
- int big_loops;
- alt_u32 cycles_per_loop;
-
- if (!strcmp(NIOS2_CPU_IMPLEMENTATION,"tiny"))
- {
- cycles_per_loop = 9;
- 51868: 00800244 movi r2,9
- 5186c: e0bffd15 stw r2,-12(fp)
- cycles_per_loop = 3;
- }
-
- big_loops = us / (INT_MAX/
- (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
- 51870: 014003f4 movhi r5,15
- 51874: 29509004 addi r5,r5,16960
- 51878: e13ffd17 ldw r4,-12(fp)
- 5187c: 004c9f80 call 4c9f8 <__mulsi3>
- 51880: 100b883a mov r5,r2
- 51884: 0100bef4 movhi r4,763
- 51888: 213c2004 addi r4,r4,-3968
- 5188c: 004c93c0 call 4c93c <__udivsi3>
- {
- cycles_per_loop = 3;
- }
-
- big_loops = us / (INT_MAX/
- 51890: 100b883a mov r5,r2
- 51894: 01200034 movhi r4,32768
- 51898: 213fffc4 addi r4,r4,-1
- 5189c: 004c93c0 call 4c93c <__udivsi3>
- 518a0: 100b883a mov r5,r2
- 518a4: e13fff17 ldw r4,-4(fp)
- 518a8: 004c93c0 call 4c93c <__udivsi3>
- 518ac: e0bffe15 stw r2,-8(fp)
- (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
- if (big_loops)
- 518b0: e0bffe17 ldw r2,-8(fp)
- 518b4: 10002a26 beq r2,zero,51960 <alt_busy_sleep+0x10c>
- {
- for(i=0;i<big_loops;i++)
- 518b8: e03ffc15 stw zero,-16(fp)
- 518bc: 00001706 br 5191c <alt_busy_sleep+0xc8>
- /*
- * Do NOT Try to single step the asm statement below
- * (single step will never return)
- * Step out of this function or set a breakpoint after the asm statements
- */
- __asm__ volatile (
- 518c0: 00a00034 movhi r2,32768
- 518c4: 10bfffc4 addi r2,r2,-1
- 518c8: 10bfffc4 addi r2,r2,-1
- 518cc: 103ffe1e bne r2,zero,518c8 <__alt_data_end+0xfffdf8c8>
- "\n\t.pushsection .debug_alt_sim_info"
- "\n\t.int 4, 0, 0b, 1b"
- "\n\t.popsection"
- :: "r" (INT_MAX));
- us -= (INT_MAX/(ALT_CPU_FREQ/
- (cycles_per_loop * 1000000)));
- 518d0: 014003f4 movhi r5,15
- 518d4: 29509004 addi r5,r5,16960
- 518d8: e13ffd17 ldw r4,-12(fp)
- 518dc: 004c9f80 call 4c9f8 <__mulsi3>
- "\n1:"
- "\n\t.pushsection .debug_alt_sim_info"
- "\n\t.int 4, 0, 0b, 1b"
- "\n\t.popsection"
- :: "r" (INT_MAX));
- us -= (INT_MAX/(ALT_CPU_FREQ/
- 518e0: 100b883a mov r5,r2
- 518e4: 0100bef4 movhi r4,763
- 518e8: 213c2004 addi r4,r4,-3968
- 518ec: 004c93c0 call 4c93c <__udivsi3>
- 518f0: 100b883a mov r5,r2
- 518f4: 01200034 movhi r4,32768
- 518f8: 213fffc4 addi r4,r4,-1
- 518fc: 004c93c0 call 4c93c <__udivsi3>
- 51900: 1007883a mov r3,r2
- 51904: e0bfff17 ldw r2,-4(fp)
- 51908: 10c5c83a sub r2,r2,r3
- 5190c: e0bfff15 stw r2,-4(fp)
- big_loops = us / (INT_MAX/
- (ALT_CPU_FREQ/(cycles_per_loop * 1000000)));
- if (big_loops)
- {
- for(i=0;i<big_loops;i++)
- 51910: e0bffc17 ldw r2,-16(fp)
- 51914: 10800044 addi r2,r2,1
- 51918: e0bffc15 stw r2,-16(fp)
- 5191c: e0fffc17 ldw r3,-16(fp)
- 51920: e0bffe17 ldw r2,-8(fp)
- 51924: 18bfe616 blt r3,r2,518c0 <__alt_data_end+0xfffdf8c0>
- "\n\tbne %0,zero,0b"
- "\n1:"
- "\n\t.pushsection .debug_alt_sim_info"
- "\n\t.int 4, 0, 0b, 1b"
- "\n\t.popsection"
- :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
- 51928: 014003f4 movhi r5,15
- 5192c: 29509004 addi r5,r5,16960
- 51930: e13ffd17 ldw r4,-12(fp)
- 51934: 004c9f80 call 4c9f8 <__mulsi3>
- 51938: 100b883a mov r5,r2
- 5193c: 0100bef4 movhi r4,763
- 51940: 213c2004 addi r4,r4,-3968
- 51944: 004c93c0 call 4c93c <__udivsi3>
- 51948: e17fff17 ldw r5,-4(fp)
- 5194c: 1009883a mov r4,r2
- 51950: 004c9f80 call 4c9f8 <__mulsi3>
- /*
- * Do NOT Try to single step the asm statement below
- * (single step will never return)
- * Step out of this function or set a breakpoint after the asm statements
- */
- __asm__ volatile (
- 51954: 10bfffc4 addi r2,r2,-1
- 51958: 103ffe1e bne r2,zero,51954 <__alt_data_end+0xfffdf954>
- 5195c: 00000d06 br 51994 <alt_busy_sleep+0x140>
- "\n\tbgt %0,zero,0b"
- "\n1:"
- "\n\t.pushsection .debug_alt_sim_info"
- "\n\t.int 4, 0, 0b, 1b"
- "\n\t.popsection"
- :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
- 51960: 014003f4 movhi r5,15
- 51964: 29509004 addi r5,r5,16960
- 51968: e13ffd17 ldw r4,-12(fp)
- 5196c: 004c9f80 call 4c9f8 <__mulsi3>
- 51970: 100b883a mov r5,r2
- 51974: 0100bef4 movhi r4,763
- 51978: 213c2004 addi r4,r4,-3968
- 5197c: 004c93c0 call 4c93c <__udivsi3>
- 51980: e17fff17 ldw r5,-4(fp)
- 51984: 1009883a mov r4,r2
- 51988: 004c9f80 call 4c9f8 <__mulsi3>
- /*
- * Do NOT Try to single step the asm statement below
- * (single step will never return)
- * Step out of this function or set a breakpoint after the asm statements
- */
- __asm__ volatile (
- 5198c: 10bfffc4 addi r2,r2,-1
- 51990: 00bffe16 blt zero,r2,5198c <__alt_data_end+0xfffdf98c>
- "\n\t.int 4, 0, 0b, 1b"
- "\n\t.popsection"
- :: "r" (us*(ALT_CPU_FREQ/(cycles_per_loop * 1000000))));
- }
- #endif /* #ifndef ALT_SIM_OPTIMIZE */
- return 0;
- 51994: 0005883a mov r2,zero
- }
- 51998: e037883a mov sp,fp
- 5199c: dfc00117 ldw ra,4(sp)
- 519a0: df000017 ldw fp,0(sp)
- 519a4: dec00204 addi sp,sp,8
- 519a8: f800283a ret
- 000519ac <alt_find_dev>:
- * "name" must be an exact match for the devices registered name for a match to
- * be found.
- */
-
- alt_dev* alt_find_dev(const char* name, alt_llist* llist)
- {
- 519ac: defffa04 addi sp,sp,-24
- 519b0: dfc00515 stw ra,20(sp)
- 519b4: df000415 stw fp,16(sp)
- 519b8: df000404 addi fp,sp,16
- 519bc: e13ffe15 stw r4,-8(fp)
- 519c0: e17fff15 stw r5,-4(fp)
- alt_dev* next = (alt_dev*) llist->next;
- 519c4: e0bfff17 ldw r2,-4(fp)
- 519c8: 10800017 ldw r2,0(r2)
- 519cc: e0bffc15 stw r2,-16(fp)
- alt_32 len;
- len = strlen(name) + 1;
- 519d0: e13ffe17 ldw r4,-8(fp)
- 519d4: 00490200 call 49020 <strlen>
- 519d8: 10800044 addi r2,r2,1
- 519dc: e0bffd15 stw r2,-12(fp)
- /*
- * Check each list entry in turn, until a match is found, or we reach the
- * end of the list (i.e. next winds up pointing back to the list head).
- */
- while (next != (alt_dev*) llist)
- 519e0: 00000d06 br 51a18 <alt_find_dev+0x6c>
- /*
- * memcmp() is used here rather than strcmp() in order to reduce the size
- * of the executable.
- */
- if (!memcmp (next->name, name, len))
- 519e4: e0bffc17 ldw r2,-16(fp)
- 519e8: 10800217 ldw r2,8(r2)
- 519ec: e0fffd17 ldw r3,-12(fp)
- 519f0: 180d883a mov r6,r3
- 519f4: e17ffe17 ldw r5,-8(fp)
- 519f8: 1009883a mov r4,r2
- 519fc: 0051cf00 call 51cf0 <memcmp>
- 51a00: 1000021e bne r2,zero,51a0c <alt_find_dev+0x60>
- {
- /* match found */
- return next;
- 51a04: e0bffc17 ldw r2,-16(fp)
- 51a08: 00000706 br 51a28 <alt_find_dev+0x7c>
- }
- next = (alt_dev*) next->llist.next;
- 51a0c: e0bffc17 ldw r2,-16(fp)
- 51a10: 10800017 ldw r2,0(r2)
- 51a14: e0bffc15 stw r2,-16(fp)
- /*
- * Check each list entry in turn, until a match is found, or we reach the
- * end of the list (i.e. next winds up pointing back to the list head).
- */
- while (next != (alt_dev*) llist)
- 51a18: e0fffc17 ldw r3,-16(fp)
- 51a1c: e0bfff17 ldw r2,-4(fp)
- 51a20: 18bff01e bne r3,r2,519e4 <__alt_data_end+0xfffdf9e4>
- next = (alt_dev*) next->llist.next;
- }
-
- /* No match found */
-
- return NULL;
- 51a24: 0005883a mov r2,zero
- }
- 51a28: e037883a mov sp,fp
- 51a2c: dfc00117 ldw ra,4(sp)
- 51a30: df000017 ldw fp,0(sp)
- 51a34: dec00204 addi sp,sp,8
- 51a38: f800283a ret
- 00051a3c <alt_find_file>:
- * either '/' or '\0' is the prefix of the filename. For example the filename:
- * "/myfilesystem/junk.txt" would match: "/myfilesystem", but not: "/myfile".
- */
-
- alt_dev* alt_find_file (const char* name)
- {
- 51a3c: defffb04 addi sp,sp,-20
- 51a40: dfc00415 stw ra,16(sp)
- 51a44: df000315 stw fp,12(sp)
- 51a48: df000304 addi fp,sp,12
- 51a4c: e13fff15 stw r4,-4(fp)
- alt_dev* next = (alt_dev*) alt_fs_list.next;
- 51a50: d0a00617 ldw r2,-32744(gp)
- 51a54: e0bffd15 stw r2,-12(fp)
- /*
- * Check each list entry in turn, until a match is found, or we reach the
- * end of the list (i.e. next winds up pointing back to the list head).
- */
-
- while (next != (alt_dev*) &alt_fs_list)
- 51a58: 00003106 br 51b20 <alt_find_file+0xe4>
- {
- len = strlen(next->name);
- 51a5c: e0bffd17 ldw r2,-12(fp)
- 51a60: 10800217 ldw r2,8(r2)
- 51a64: 1009883a mov r4,r2
- 51a68: 00490200 call 49020 <strlen>
- 51a6c: e0bffe15 stw r2,-8(fp)
-
- if (next->name[len-1] == '/')
- 51a70: e0bffd17 ldw r2,-12(fp)
- 51a74: 10c00217 ldw r3,8(r2)
- 51a78: e0bffe17 ldw r2,-8(fp)
- 51a7c: 10bfffc4 addi r2,r2,-1
- 51a80: 1885883a add r2,r3,r2
- 51a84: 10800003 ldbu r2,0(r2)
- 51a88: 10803fcc andi r2,r2,255
- 51a8c: 1080201c xori r2,r2,128
- 51a90: 10bfe004 addi r2,r2,-128
- 51a94: 10800bd8 cmpnei r2,r2,47
- 51a98: 1000031e bne r2,zero,51aa8 <alt_find_file+0x6c>
- {
- len -= 1;
- 51a9c: e0bffe17 ldw r2,-8(fp)
- 51aa0: 10bfffc4 addi r2,r2,-1
- 51aa4: e0bffe15 stw r2,-8(fp)
- }
- if (((name[len] == '/') || (name[len] == '\0')) &&
- 51aa8: e0bffe17 ldw r2,-8(fp)
- 51aac: e0ffff17 ldw r3,-4(fp)
- 51ab0: 1885883a add r2,r3,r2
- 51ab4: 10800003 ldbu r2,0(r2)
- 51ab8: 10803fcc andi r2,r2,255
- 51abc: 1080201c xori r2,r2,128
- 51ac0: 10bfe004 addi r2,r2,-128
- 51ac4: 10800be0 cmpeqi r2,r2,47
- 51ac8: 1000081e bne r2,zero,51aec <alt_find_file+0xb0>
- 51acc: e0bffe17 ldw r2,-8(fp)
- 51ad0: e0ffff17 ldw r3,-4(fp)
- 51ad4: 1885883a add r2,r3,r2
- 51ad8: 10800003 ldbu r2,0(r2)
- 51adc: 10803fcc andi r2,r2,255
- 51ae0: 1080201c xori r2,r2,128
- 51ae4: 10bfe004 addi r2,r2,-128
- 51ae8: 10000a1e bne r2,zero,51b14 <alt_find_file+0xd8>
- !memcmp (next->name, name, len))
- 51aec: e0bffd17 ldw r2,-12(fp)
- 51af0: 10800217 ldw r2,8(r2)
- 51af4: e0fffe17 ldw r3,-8(fp)
- 51af8: 180d883a mov r6,r3
- 51afc: e17fff17 ldw r5,-4(fp)
- 51b00: 1009883a mov r4,r2
- 51b04: 0051cf00 call 51cf0 <memcmp>
- if (next->name[len-1] == '/')
- {
- len -= 1;
- }
- if (((name[len] == '/') || (name[len] == '\0')) &&
- 51b08: 1000021e bne r2,zero,51b14 <alt_find_file+0xd8>
- !memcmp (next->name, name, len))
- {
- /* match found */
- return next;
- 51b0c: e0bffd17 ldw r2,-12(fp)
- 51b10: 00000706 br 51b30 <alt_find_file+0xf4>
- }
- next = (alt_dev*) next->llist.next;
- 51b14: e0bffd17 ldw r2,-12(fp)
- 51b18: 10800017 ldw r2,0(r2)
- 51b1c: e0bffd15 stw r2,-12(fp)
- /*
- * Check each list entry in turn, until a match is found, or we reach the
- * end of the list (i.e. next winds up pointing back to the list head).
- */
-
- while (next != (alt_dev*) &alt_fs_list)
- 51b20: e0fffd17 ldw r3,-12(fp)
- 51b24: d0a00604 addi r2,gp,-32744
- 51b28: 18bfcc1e bne r3,r2,51a5c <__alt_data_end+0xfffdfa5c>
- next = (alt_dev*) next->llist.next;
- }
-
- /* No match found */
-
- return NULL;
- 51b2c: 0005883a mov r2,zero
- }
- 51b30: e037883a mov sp,fp
- 51b34: dfc00117 ldw ra,4(sp)
- 51b38: df000017 ldw fp,0(sp)
- 51b3c: dec00204 addi sp,sp,8
- 51b40: f800283a ret
- 00051b44 <alt_get_fd>:
- * the offset of the file descriptor within the file descriptor array). A
- * negative value indicates failure.
- */
- int alt_get_fd (alt_dev* dev)
- {
- 51b44: defffa04 addi sp,sp,-24
- 51b48: dfc00515 stw ra,20(sp)
- 51b4c: df000415 stw fp,16(sp)
- 51b50: dc000315 stw r16,12(sp)
- 51b54: df000404 addi fp,sp,16
- 51b58: e13ffe15 stw r4,-8(fp)
- alt_32 i;
- int rc = -EMFILE;
- 51b5c: 00bffa04 movi r2,-24
- 51b60: e0bffd15 stw r2,-12(fp)
- * indicates the highest file descriptor ever allocated. This is used to
- * improve efficency when searching the file descriptor list, and
- * therefore reduce contention on the alt_fd_list_lock semaphore.
- */
- for (i = 0; i < ALT_MAX_FD; i++)
- 51b64: e03ffc15 stw zero,-16(fp)
- 51b68: 00001d06 br 51be0 <alt_get_fd+0x9c>
- {
- if (!alt_fd_list[i].dev)
- 51b6c: 04000174 movhi r16,5
- 51b70: 840bca04 addi r16,r16,12072
- 51b74: e0bffc17 ldw r2,-16(fp)
- 51b78: 01400304 movi r5,12
- 51b7c: 1009883a mov r4,r2
- 51b80: 004c9f80 call 4c9f8 <__mulsi3>
- 51b84: 8085883a add r2,r16,r2
- 51b88: 10800017 ldw r2,0(r2)
- 51b8c: 1000111e bne r2,zero,51bd4 <alt_get_fd+0x90>
- {
- alt_fd_list[i].dev = dev;
- 51b90: 04000174 movhi r16,5
- 51b94: 840bca04 addi r16,r16,12072
- 51b98: e0bffc17 ldw r2,-16(fp)
- 51b9c: 01400304 movi r5,12
- 51ba0: 1009883a mov r4,r2
- 51ba4: 004c9f80 call 4c9f8 <__mulsi3>
- 51ba8: 8085883a add r2,r16,r2
- 51bac: e0fffe17 ldw r3,-8(fp)
- 51bb0: 10c00015 stw r3,0(r2)
- if (i > alt_max_fd)
- 51bb4: d0e00a17 ldw r3,-32728(gp)
- 51bb8: e0bffc17 ldw r2,-16(fp)
- 51bbc: 1880020e bge r3,r2,51bc8 <alt_get_fd+0x84>
- {
- alt_max_fd = i;
- 51bc0: e0bffc17 ldw r2,-16(fp)
- 51bc4: d0a00a15 stw r2,-32728(gp)
- }
- rc = i;
- 51bc8: e0bffc17 ldw r2,-16(fp)
- 51bcc: e0bffd15 stw r2,-12(fp)
- goto alt_get_fd_exit;
- 51bd0: 00000606 br 51bec <alt_get_fd+0xa8>
- * indicates the highest file descriptor ever allocated. This is used to
- * improve efficency when searching the file descriptor list, and
- * therefore reduce contention on the alt_fd_list_lock semaphore.
- */
- for (i = 0; i < ALT_MAX_FD; i++)
- 51bd4: e0bffc17 ldw r2,-16(fp)
- 51bd8: 10800044 addi r2,r2,1
- 51bdc: e0bffc15 stw r2,-16(fp)
- 51be0: e0bffc17 ldw r2,-16(fp)
- 51be4: 10800810 cmplti r2,r2,32
- 51be8: 103fe01e bne r2,zero,51b6c <__alt_data_end+0xfffdfb6c>
- * file descriptor pool.
- */
- ALT_SEM_POST(alt_fd_list_lock);
- return rc;
- 51bec: e0bffd17 ldw r2,-12(fp)
- }
- 51bf0: e6ffff04 addi sp,fp,-4
- 51bf4: dfc00217 ldw ra,8(sp)
- 51bf8: df000117 ldw fp,4(sp)
- 51bfc: dc000017 ldw r16,0(sp)
- 51c00: dec00304 addi sp,sp,12
- 51c04: f800283a ret
- 00051c08 <alt_exception_cause_generated_bad_addr>:
- * Return: 1: BADADDR (bad_addr argument to handler) is valid
- * 0: BADADDR is not valid
- */
- int
- alt_exception_cause_generated_bad_addr(alt_exception_cause cause)
- {
- 51c08: defffe04 addi sp,sp,-8
- 51c0c: df000115 stw fp,4(sp)
- 51c10: df000104 addi fp,sp,4
- 51c14: e13fff15 stw r4,-4(fp)
- switch (cause) {
- 51c18: e0bfff17 ldw r2,-4(fp)
- 51c1c: 10bffe84 addi r2,r2,-6
- 51c20: 10c00428 cmpgeui r3,r2,16
- 51c24: 18001a1e bne r3,zero,51c90 <alt_exception_cause_generated_bad_addr+0x88>
- 51c28: 100690ba slli r3,r2,2
- 51c2c: 00800174 movhi r2,5
- 51c30: 10871004 addi r2,r2,7232
- 51c34: 1885883a add r2,r3,r2
- 51c38: 10800017 ldw r2,0(r2)
- 51c3c: 1000683a jmp r2
- 51c40: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c44: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c48: 00051c90 cmplti zero,zero,5234
- 51c4c: 00051c90 cmplti zero,zero,5234
- 51c50: 00051c90 cmplti zero,zero,5234
- 51c54: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c58: 00051c88 cmpgei zero,zero,5234
- 51c5c: 00051c90 cmplti zero,zero,5234
- 51c60: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c64: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c68: 00051c90 cmplti zero,zero,5234
- 51c6c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- 51c70: 00051c88 cmpgei zero,zero,5234
- 51c74: 00051c90 cmplti zero,zero,5234
- 51c78: 00051c90 cmplti zero,zero,5234
- 51c7c: 00051c80 call 51c8 <__alt_mem_onchip_memory2-0x3ae38>
- case NIOS2_EXCEPTION_MISALIGNED_TARGET_PC:
- case NIOS2_EXCEPTION_TLB_READ_PERM_VIOLATION:
- case NIOS2_EXCEPTION_TLB_WRITE_PERM_VIOLATION:
- case NIOS2_EXCEPTION_MPU_DATA_REGION_VIOLATION:
- case NIOS2_EXCEPTION_ECC_DATA_ERR:
- return 1;
- 51c80: 00800044 movi r2,1
- 51c84: 00000306 br 51c94 <alt_exception_cause_generated_bad_addr+0x8c>
- case NIOS2_EXCEPTION_TLB_MISS:
- case NIOS2_EXCEPTION_ECC_TLB_ERR:
- return 0;
- 51c88: 0005883a mov r2,zero
- 51c8c: 00000106 br 51c94 <alt_exception_cause_generated_bad_addr+0x8c>
- default:
- return 0;
- 51c90: 0005883a mov r2,zero
- }
- }
- 51c94: e037883a mov sp,fp
- 51c98: df000017 ldw fp,0(sp)
- 51c9c: dec00104 addi sp,sp,4
- 51ca0: f800283a ret
- 00051ca4 <atexit>:
- 51ca4: 200b883a mov r5,r4
- 51ca8: 000f883a mov r7,zero
- 51cac: 000d883a mov r6,zero
- 51cb0: 0009883a mov r4,zero
- 51cb4: 0051d6c1 jmpi 51d6c <__register_exitproc>
- 00051cb8 <exit>:
- 51cb8: defffe04 addi sp,sp,-8
- 51cbc: 000b883a mov r5,zero
- 51cc0: dc000015 stw r16,0(sp)
- 51cc4: dfc00115 stw ra,4(sp)
- 51cc8: 2021883a mov r16,r4
- 51ccc: 0051e840 call 51e84 <__call_exitprocs>
- 51cd0: 00800174 movhi r2,5
- 51cd4: 10908a04 addi r2,r2,16936
- 51cd8: 11000017 ldw r4,0(r2)
- 51cdc: 20800f17 ldw r2,60(r4)
- 51ce0: 10000126 beq r2,zero,51ce8 <exit+0x30>
- 51ce4: 103ee83a callr r2
- 51ce8: 8009883a mov r4,r16
- 51cec: 00520040 call 52004 <_exit>
- 00051cf0 <memcmp>:
- 51cf0: 01c000c4 movi r7,3
- 51cf4: 3980192e bgeu r7,r6,51d5c <memcmp+0x6c>
- 51cf8: 2144b03a or r2,r4,r5
- 51cfc: 11c4703a and r2,r2,r7
- 51d00: 10000f26 beq r2,zero,51d40 <memcmp+0x50>
- 51d04: 20800003 ldbu r2,0(r4)
- 51d08: 28c00003 ldbu r3,0(r5)
- 51d0c: 10c0151e bne r2,r3,51d64 <memcmp+0x74>
- 51d10: 31bfff84 addi r6,r6,-2
- 51d14: 01ffffc4 movi r7,-1
- 51d18: 00000406 br 51d2c <memcmp+0x3c>
- 51d1c: 20800003 ldbu r2,0(r4)
- 51d20: 28c00003 ldbu r3,0(r5)
- 51d24: 31bfffc4 addi r6,r6,-1
- 51d28: 10c00e1e bne r2,r3,51d64 <memcmp+0x74>
- 51d2c: 21000044 addi r4,r4,1
- 51d30: 29400044 addi r5,r5,1
- 51d34: 31fff91e bne r6,r7,51d1c <__alt_data_end+0xfffdfd1c>
- 51d38: 0005883a mov r2,zero
- 51d3c: f800283a ret
- 51d40: 20c00017 ldw r3,0(r4)
- 51d44: 28800017 ldw r2,0(r5)
- 51d48: 18bfee1e bne r3,r2,51d04 <__alt_data_end+0xfffdfd04>
- 51d4c: 31bfff04 addi r6,r6,-4
- 51d50: 21000104 addi r4,r4,4
- 51d54: 29400104 addi r5,r5,4
- 51d58: 39bff936 bltu r7,r6,51d40 <__alt_data_end+0xfffdfd40>
- 51d5c: 303fe91e bne r6,zero,51d04 <__alt_data_end+0xfffdfd04>
- 51d60: 003ff506 br 51d38 <__alt_data_end+0xfffdfd38>
- 51d64: 10c5c83a sub r2,r2,r3
- 51d68: f800283a ret
- 00051d6c <__register_exitproc>:
- 51d6c: defffa04 addi sp,sp,-24
- 51d70: dc000315 stw r16,12(sp)
- 51d74: 04000174 movhi r16,5
- 51d78: 84108a04 addi r16,r16,16936
- 51d7c: 80c00017 ldw r3,0(r16)
- 51d80: dc400415 stw r17,16(sp)
- 51d84: dfc00515 stw ra,20(sp)
- 51d88: 18805217 ldw r2,328(r3)
- 51d8c: 2023883a mov r17,r4
- 51d90: 10003726 beq r2,zero,51e70 <__register_exitproc+0x104>
- 51d94: 10c00117 ldw r3,4(r2)
- 51d98: 010007c4 movi r4,31
- 51d9c: 20c00e16 blt r4,r3,51dd8 <__register_exitproc+0x6c>
- 51da0: 1a000044 addi r8,r3,1
- 51da4: 8800221e bne r17,zero,51e30 <__register_exitproc+0xc4>
- 51da8: 18c00084 addi r3,r3,2
- 51dac: 18c7883a add r3,r3,r3
- 51db0: 18c7883a add r3,r3,r3
- 51db4: 12000115 stw r8,4(r2)
- 51db8: 10c7883a add r3,r2,r3
- 51dbc: 19400015 stw r5,0(r3)
- 51dc0: 0005883a mov r2,zero
- 51dc4: dfc00517 ldw ra,20(sp)
- 51dc8: dc400417 ldw r17,16(sp)
- 51dcc: dc000317 ldw r16,12(sp)
- 51dd0: dec00604 addi sp,sp,24
- 51dd4: f800283a ret
- 51dd8: 00800034 movhi r2,0
- 51ddc: 10800004 addi r2,r2,0
- 51de0: 10002626 beq r2,zero,51e7c <__register_exitproc+0x110>
- 51de4: 01006404 movi r4,400
- 51de8: d9400015 stw r5,0(sp)
- 51dec: d9800115 stw r6,4(sp)
- 51df0: d9c00215 stw r7,8(sp)
- 51df4: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000>
- 51df8: d9400017 ldw r5,0(sp)
- 51dfc: d9800117 ldw r6,4(sp)
- 51e00: d9c00217 ldw r7,8(sp)
- 51e04: 10001d26 beq r2,zero,51e7c <__register_exitproc+0x110>
- 51e08: 81000017 ldw r4,0(r16)
- 51e0c: 10000115 stw zero,4(r2)
- 51e10: 02000044 movi r8,1
- 51e14: 22405217 ldw r9,328(r4)
- 51e18: 0007883a mov r3,zero
- 51e1c: 12400015 stw r9,0(r2)
- 51e20: 20805215 stw r2,328(r4)
- 51e24: 10006215 stw zero,392(r2)
- 51e28: 10006315 stw zero,396(r2)
- 51e2c: 883fde26 beq r17,zero,51da8 <__alt_data_end+0xfffdfda8>
- 51e30: 18c9883a add r4,r3,r3
- 51e34: 2109883a add r4,r4,r4
- 51e38: 1109883a add r4,r2,r4
- 51e3c: 21802215 stw r6,136(r4)
- 51e40: 01800044 movi r6,1
- 51e44: 12406217 ldw r9,392(r2)
- 51e48: 30cc983a sll r6,r6,r3
- 51e4c: 4992b03a or r9,r9,r6
- 51e50: 12406215 stw r9,392(r2)
- 51e54: 21c04215 stw r7,264(r4)
- 51e58: 01000084 movi r4,2
- 51e5c: 893fd21e bne r17,r4,51da8 <__alt_data_end+0xfffdfda8>
- 51e60: 11006317 ldw r4,396(r2)
- 51e64: 218cb03a or r6,r4,r6
- 51e68: 11806315 stw r6,396(r2)
- 51e6c: 003fce06 br 51da8 <__alt_data_end+0xfffdfda8>
- 51e70: 18805304 addi r2,r3,332
- 51e74: 18805215 stw r2,328(r3)
- 51e78: 003fc606 br 51d94 <__alt_data_end+0xfffdfd94>
- 51e7c: 00bfffc4 movi r2,-1
- 51e80: 003fd006 br 51dc4 <__alt_data_end+0xfffdfdc4>
- 00051e84 <__call_exitprocs>:
- 51e84: defff504 addi sp,sp,-44
- 51e88: df000915 stw fp,36(sp)
- 51e8c: dd400615 stw r21,24(sp)
- 51e90: dc800315 stw r18,12(sp)
- 51e94: dfc00a15 stw ra,40(sp)
- 51e98: ddc00815 stw r23,32(sp)
- 51e9c: dd800715 stw r22,28(sp)
- 51ea0: dd000515 stw r20,20(sp)
- 51ea4: dcc00415 stw r19,16(sp)
- 51ea8: dc400215 stw r17,8(sp)
- 51eac: dc000115 stw r16,4(sp)
- 51eb0: d9000015 stw r4,0(sp)
- 51eb4: 2839883a mov fp,r5
- 51eb8: 04800044 movi r18,1
- 51ebc: 057fffc4 movi r21,-1
- 51ec0: 00800174 movhi r2,5
- 51ec4: 10908a04 addi r2,r2,16936
- 51ec8: 12000017 ldw r8,0(r2)
- 51ecc: 45005217 ldw r20,328(r8)
- 51ed0: 44c05204 addi r19,r8,328
- 51ed4: a0001c26 beq r20,zero,51f48 <__call_exitprocs+0xc4>
- 51ed8: a0800117 ldw r2,4(r20)
- 51edc: 15ffffc4 addi r23,r2,-1
- 51ee0: b8000d16 blt r23,zero,51f18 <__call_exitprocs+0x94>
- 51ee4: 14000044 addi r16,r2,1
- 51ee8: 8421883a add r16,r16,r16
- 51eec: 8421883a add r16,r16,r16
- 51ef0: 84402004 addi r17,r16,128
- 51ef4: a463883a add r17,r20,r17
- 51ef8: a421883a add r16,r20,r16
- 51efc: e0001e26 beq fp,zero,51f78 <__call_exitprocs+0xf4>
- 51f00: 80804017 ldw r2,256(r16)
- 51f04: e0801c26 beq fp,r2,51f78 <__call_exitprocs+0xf4>
- 51f08: bdffffc4 addi r23,r23,-1
- 51f0c: 843fff04 addi r16,r16,-4
- 51f10: 8c7fff04 addi r17,r17,-4
- 51f14: bd7ff91e bne r23,r21,51efc <__alt_data_end+0xfffdfefc>
- 51f18: 00800034 movhi r2,0
- 51f1c: 10800004 addi r2,r2,0
- 51f20: 10000926 beq r2,zero,51f48 <__call_exitprocs+0xc4>
- 51f24: a0800117 ldw r2,4(r20)
- 51f28: 1000301e bne r2,zero,51fec <__call_exitprocs+0x168>
- 51f2c: a0800017 ldw r2,0(r20)
- 51f30: 10003226 beq r2,zero,51ffc <__call_exitprocs+0x178>
- 51f34: a009883a mov r4,r20
- 51f38: 98800015 stw r2,0(r19)
- 51f3c: 00000000 call 0 <__alt_mem_onchip_memory2-0x40000>
- 51f40: 9d000017 ldw r20,0(r19)
- 51f44: a03fe41e bne r20,zero,51ed8 <__alt_data_end+0xfffdfed8>
- 51f48: dfc00a17 ldw ra,40(sp)
- 51f4c: df000917 ldw fp,36(sp)
- 51f50: ddc00817 ldw r23,32(sp)
- 51f54: dd800717 ldw r22,28(sp)
- 51f58: dd400617 ldw r21,24(sp)
- 51f5c: dd000517 ldw r20,20(sp)
- 51f60: dcc00417 ldw r19,16(sp)
- 51f64: dc800317 ldw r18,12(sp)
- 51f68: dc400217 ldw r17,8(sp)
- 51f6c: dc000117 ldw r16,4(sp)
- 51f70: dec00b04 addi sp,sp,44
- 51f74: f800283a ret
- 51f78: a0800117 ldw r2,4(r20)
- 51f7c: 80c00017 ldw r3,0(r16)
- 51f80: 10bfffc4 addi r2,r2,-1
- 51f84: 15c01426 beq r2,r23,51fd8 <__call_exitprocs+0x154>
- 51f88: 80000015 stw zero,0(r16)
- 51f8c: 183fde26 beq r3,zero,51f08 <__alt_data_end+0xfffdff08>
- 51f90: 95c8983a sll r4,r18,r23
- 51f94: a0806217 ldw r2,392(r20)
- 51f98: a5800117 ldw r22,4(r20)
- 51f9c: 2084703a and r2,r4,r2
- 51fa0: 10000b26 beq r2,zero,51fd0 <__call_exitprocs+0x14c>
- 51fa4: a0806317 ldw r2,396(r20)
- 51fa8: 2088703a and r4,r4,r2
- 51fac: 20000c1e bne r4,zero,51fe0 <__call_exitprocs+0x15c>
- 51fb0: 89400017 ldw r5,0(r17)
- 51fb4: d9000017 ldw r4,0(sp)
- 51fb8: 183ee83a callr r3
- 51fbc: a0800117 ldw r2,4(r20)
- 51fc0: 15bfbf1e bne r2,r22,51ec0 <__alt_data_end+0xfffdfec0>
- 51fc4: 98800017 ldw r2,0(r19)
- 51fc8: 153fcf26 beq r2,r20,51f08 <__alt_data_end+0xfffdff08>
- 51fcc: 003fbc06 br 51ec0 <__alt_data_end+0xfffdfec0>
- 51fd0: 183ee83a callr r3
- 51fd4: 003ff906 br 51fbc <__alt_data_end+0xfffdffbc>
- 51fd8: a5c00115 stw r23,4(r20)
- 51fdc: 003feb06 br 51f8c <__alt_data_end+0xfffdff8c>
- 51fe0: 89000017 ldw r4,0(r17)
- 51fe4: 183ee83a callr r3
- 51fe8: 003ff406 br 51fbc <__alt_data_end+0xfffdffbc>
- 51fec: a0800017 ldw r2,0(r20)
- 51ff0: a027883a mov r19,r20
- 51ff4: 1029883a mov r20,r2
- 51ff8: 003fb606 br 51ed4 <__alt_data_end+0xfffdfed4>
- 51ffc: 0005883a mov r2,zero
- 52000: 003ffb06 br 51ff0 <__alt_data_end+0xfffdfff0>
- 00052004 <_exit>:
- *
- * ALT_EXIT is mapped onto the _exit() system call in alt_syscall.h
- */
- void ALT_EXIT (int exit_code)
- {
- 52004: defffd04 addi sp,sp,-12
- 52008: df000215 stw fp,8(sp)
- 5200c: df000204 addi fp,sp,8
- 52010: e13fff15 stw r4,-4(fp)
- ALT_LOG_PRINT_BOOT("[alt_exit.c] Entering _exit() function.\r\n");
- ALT_LOG_PRINT_BOOT("[alt_exit.c] Exit code from main was %d.\r\n",exit_code);
- /* Stop all other threads */
- ALT_LOG_PRINT_BOOT("[alt_exit.c] Calling ALT_OS_STOP().\r\n");
- ALT_OS_STOP();
- 52014: 0001883a nop
- 52018: e0bfff17 ldw r2,-4(fp)
- 5201c: e0bffe15 stw r2,-8(fp)
- /*
- * Routine called on exit.
- */
- static ALT_INLINE ALT_ALWAYS_INLINE void alt_sim_halt(int exit_code)
- {
- register int r2 asm ("r2") = exit_code;
- 52020: e0bffe17 ldw r2,-8(fp)
- __asm__ volatile ("\n0:\n\taddi %0,%0, -1\n\tbgt %0,zero,0b" : : "r" (ALT_CPU_FREQ/100) ); /* Delay for >30ms */
- __asm__ volatile ("break 2" : : "r"(r2), "r"(r3) ALT_GMON_DATA );
- #else /* !DEBUG_STUB */
- if (r2) {
- 52024: 10000226 beq r2,zero,52030 <_exit+0x2c>
- ALT_SIM_FAIL();
- 52028: 002af070 cmpltui zero,zero,43969
- 5202c: 00000106 br 52034 <_exit+0x30>
- } else {
- ALT_SIM_PASS();
- 52030: 002af0b0 cmpltui zero,zero,43970
- ALT_SIM_HALT(exit_code);
- /* spin forever, since there's no where to go back to */
- ALT_LOG_PRINT_BOOT("[alt_exit.c] Spinning forever.\r\n");
- while (1);
- 52034: 003fff06 br 52034 <__alt_data_end+0xfffe0034>
|