123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055 |
- Symbol table:
- prvInsertTimerInActiveList.part.0/57 (prvInsertTimerInActiveList.part.0) @05e55a80
- Type: function definition analyzed
- Visibility: prevailing_def_ironly artificial
- References: pxOverflowTimerList/7 (read)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size
- Called by: prvInsertTimerInActiveList/26 (177167400 (estimated locally),0.16 per call)
- Calls: vListInsert/44 (1073741824 (estimated locally),1.00 per call)
- xQueueGenericSendFromISR/56 (xQueueGenericSendFromISR) @05f5cc40
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: xTimerPendFunctionCallFromISR/33 (1073741824 (estimated locally),1.00 per call) xTimerGenericCommand/13 (87689 (estimated locally),0.25 per call)
- Calls:
- xQueueGenericSend/55 (xQueueGenericSend) @05f5cb60
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: xTimerPendFunctionCall/34 (123389 (estimated locally),0.53 per call) xTimerGenericCommand/13 (57875 (estimated locally),0.16 per call) xTimerGenericCommand/13 (29814 (estimated locally),0.08 per call)
- Calls:
- xTaskGetSchedulerState/54 (xTaskGetSchedulerState) @05f5ca80
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: xTimerGenericCommand/13 (87689 (estimated locally),0.25 per call)
- Calls:
- vListInitialiseItem/53 (vListInitialiseItem) @05f5c8c0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvInitialiseNewTimer/12 (52886 (estimated locally),0.33 per call)
- Calls:
- pvPortMalloc/52 (pvPortMalloc) @05f5c700
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: xTimerCreate/11 (1073741824 (estimated locally),1.00 per call)
- Calls:
- vPortExitCritical/51 (vPortExitCritical) @05f5c460
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: vTimerSetTimerID/32 (123389 (estimated locally),0.53 per call) pvTimerGetTimerID/31 (123389 (estimated locally),0.53 per call) xTimerIsTimerActive/30 (123389 (estimated locally),0.53 per call) uxTimerGetReloadMode/17 (123389 (estimated locally),0.53 per call) vTimerSetReloadMode/16 (123389 (estimated locally),0.53 per call) prvCheckForValidListAndQueue/29 (1073741824 (estimated locally),1.00 per call)
- Calls:
- vQueueAddToRegistry/50 (vQueueAddToRegistry) @05f5c380
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvCheckForValidListAndQueue/29 (100070816 (estimated locally),0.09 per call)
- Calls:
- xQueueGenericCreate/49 (xQueueGenericCreate) @05f5c2a0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvCheckForValidListAndQueue/29 (187153200 (estimated locally),0.17 per call)
- Calls:
- vListInitialise/48 (vListInitialise) @05f5c0e0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvCheckForValidListAndQueue/29 (187153200 (estimated locally),0.17 per call) prvCheckForValidListAndQueue/29 (187153200 (estimated locally),0.17 per call)
- Calls:
- vPortEnterCritical/47 (vPortEnterCritical) @05f5c000
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: vTimerSetTimerID/32 (123389 (estimated locally),0.53 per call) pvTimerGetTimerID/31 (123389 (estimated locally),0.53 per call) xTimerIsTimerActive/30 (123389 (estimated locally),0.53 per call) uxTimerGetReloadMode/17 (123389 (estimated locally),0.53 per call) vTimerSetReloadMode/16 (123389 (estimated locally),0.53 per call) prvCheckForValidListAndQueue/29 (1073741824 (estimated locally),1.00 per call)
- Calls:
- xQueueReceive/46 (xQueueReceive) @05f36e00
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessReceivedCommands/27 (187807075 (estimated locally),17.99 per call)
- Calls:
- vPortFree/45 (vPortFree) @05f36d20
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessReceivedCommands/27 (644244 (estimated locally),0.06 per call)
- Calls:
- vListInsert/44 (vListInsert) @05f369a0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvInsertTimerInActiveList/26 (357019157 (estimated locally),0.33 per call) prvInsertTimerInActiveList.part.0/57 (1073741824 (estimated locally),1.00 per call)
- Calls:
- uxListRemove/43 (uxListRemove) @05f36700
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessReceivedCommands/27 (5219353 (estimated locally),0.50 per call) prvProcessExpiredTimer/21 (1073741824 (estimated locally),1.00 per call)
- Calls:
- xLastTime.6551/42 (xLastTime) @05f4c120
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvSampleTimeNow/25 (read)prvSampleTimeNow/25 (write)
- Availability: available
- Varpool flags: initialized
- xTaskGetTickCount/41 (xTaskGetTickCount) @05f36380
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvSampleTimeNow/25 (1073741824 (estimated locally),1.00 per call)
- Calls:
- vQueueWaitForMessageRestricted/40 (vQueueWaitForMessageRestricted) @05f361c0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessTimerOrBlockTask/23 (600704864 (estimated locally),0.56 per call)
- Calls:
- xTaskResumeAll/39 (xTaskResumeAll) @05f360e0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessTimerOrBlockTask/23 (354334802 (estimated locally),0.33 per call) prvProcessTimerOrBlockTask/23 (600704864 (estimated locally),0.56 per call) prvProcessTimerOrBlockTask/23 (118702158 (estimated locally),0.11 per call)
- Calls:
- vTaskSuspendAll/38 (vTaskSuspendAll) @05f36000
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: prvProcessTimerOrBlockTask/23 (1073741823 (estimated locally),1.00 per call)
- Calls:
- xTaskCreate/37 (xTaskCreate) @05f2aee0
- Type: function
- Visibility: external public
- References:
- Referring:
- Availability: not_available
- Function flags: optimize_size
- Called by: xTimerCreateTimerTask/10 (78363 (estimated locally),0.53 per call)
- Calls:
- vTimerSetTimerNumber/36 (vTimerSetTimerNumber) @05f2aa80
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:1073741824 (estimated locally) body optimize_size
- Called by:
- Calls:
- uxTimerGetTimerNumber/35 (uxTimerGetTimerNumber) @05f2a7e0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:1073741824 (estimated locally) body optimize_size
- Called by:
- Calls:
- xTimerPendFunctionCall/34 (xTimerPendFunctionCall) @05f2a540
- Type: function definition analyzed
- Visibility: externally_visible public
- References: xTimerQueue/8 (read)
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: xQueueGenericSend/55 (123389 (estimated locally),0.53 per call)
- xTimerPendFunctionCallFromISR/33 (xTimerPendFunctionCallFromISR) @05f2a0e0
- Type: function definition analyzed
- Visibility: externally_visible public
- References: xTimerQueue/8 (read)
- Referring:
- Availability: available
- Function flags: count:1073741824 (estimated locally) body optimize_size
- Called by:
- Calls: xQueueGenericSendFromISR/56 (1073741824 (estimated locally),1.00 per call)
- vTimerSetTimerID/32 (vTimerSetTimerID) @05f268c0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: vPortExitCritical/51 (123389 (estimated locally),0.53 per call) vPortEnterCritical/47 (123389 (estimated locally),0.53 per call)
- pvTimerGetTimerID/31 (pvTimerGetTimerID) @05f26ee0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: vPortExitCritical/51 (123389 (estimated locally),0.53 per call) vPortEnterCritical/47 (123389 (estimated locally),0.53 per call)
- xTimerIsTimerActive/30 (xTimerIsTimerActive) @05f26b60
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: vPortExitCritical/51 (123389 (estimated locally),0.53 per call) vPortEnterCritical/47 (123389 (estimated locally),0.53 per call)
- prvCheckForValidListAndQueue/29 (prvCheckForValidListAndQueue) @05f267e0
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: xTimerQueue/8 (read)xActiveTimerList1/4 (addr)xActiveTimerList2/5 (addr)pxCurrentTimerList/6 (write)xActiveTimerList1/4 (addr)pxOverflowTimerList/7 (write)xActiveTimerList2/5 (addr)xTimerQueue/8 (write)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) body local optimize_size
- Called by: xTimerCreateTimerTask/10 (146556 (estimated locally),1.00 per call) prvInitialiseNewTimer/12 (52886 (estimated locally),0.33 per call)
- Calls: vPortExitCritical/51 (1073741824 (estimated locally),1.00 per call) vQueueAddToRegistry/50 (100070816 (estimated locally),0.09 per call) xQueueGenericCreate/49 (187153200 (estimated locally),0.17 per call) vListInitialise/48 (187153200 (estimated locally),0.17 per call) vListInitialise/48 (187153200 (estimated locally),0.17 per call) vPortEnterCritical/47 (1073741824 (estimated locally),1.00 per call)
- prvSwitchTimerLists/28 (prvSwitchTimerLists) @05f26460
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: pxCurrentTimerList/6 (read)pxOverflowTimerList/7 (read)pxCurrentTimerList/6 (write)pxOverflowTimerList/7 (write)
- Referring:
- Availability: local
- Function flags: count:118111600 (estimated locally) body local optimize_size
- Called by: prvSampleTimeNow/25 (354334802 (estimated locally),0.33 per call)
- Calls: prvProcessExpiredTimer/21 (955630223 (estimated locally),8.09 per call)
- prvProcessReceivedCommands/27 (prvProcessReceivedCommands) @05f260e0
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: xTimerQueue/8 (read)
- Referring:
- Availability: local
- Function flags: count:10436763 (estimated locally) body local optimize_size
- Called by: prvTimerTask/22 (1073741824 (estimated locally),10000.02 per call)
- Calls: xQueueReceive/46 (187807075 (estimated locally),17.99 per call) vPortFree/45 (644244 (estimated locally),0.06 per call) prvInsertTimerInActiveList/26 (1844881 (estimated locally),0.18 per call) prvReloadTimer/20 (322122 (estimated locally),0.03 per call) prvInsertTimerInActiveList/26 (1952255 (estimated locally),0.19 per call) prvSampleTimeNow/25 (9761273 (estimated locally),0.94 per call) uxListRemove/43 (5219353 (estimated locally),0.50 per call)
- Indirect call(976127 (estimated locally),0.09 per call)
- Indirect call(72765851 (estimated locally),6.97 per call)
- prvInsertTimerInActiveList/26 (prvInsertTimerInActiveList) @05f1a7e0
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: pxCurrentTimerList/6 (read)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) body local optimize_size
- Called by: prvProcessReceivedCommands/27 (1844881 (estimated locally),0.18 per call) prvProcessReceivedCommands/27 (1952255 (estimated locally),0.19 per call) prvReloadTimer/20 (1073741824 (estimated locally),9.09 per call)
- Calls: vListInsert/44 (357019157 (estimated locally),0.33 per call) prvInsertTimerInActiveList.part.0/57 (177167400 (estimated locally),0.16 per call)
- prvSampleTimeNow/25 (prvSampleTimeNow) @05f1ad20
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: xLastTime.6551/42 (read)xLastTime.6551/42 (write)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) body local optimize_size
- Called by: prvProcessReceivedCommands/27 (9761273 (estimated locally),0.94 per call) prvProcessTimerOrBlockTask/23 (1073741823 (estimated locally),1.00 per call)
- Calls: prvSwitchTimerLists/28 (354334802 (estimated locally),0.33 per call) xTaskGetTickCount/41 (1073741824 (estimated locally),1.00 per call)
- prvGetNextExpireTime/24 (prvGetNextExpireTime) @05f1aa80
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: pxCurrentTimerList/6 (read)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) body local optimize_size
- Called by: prvTimerTask/22 (1073741824 (estimated locally),10000.02 per call)
- Calls:
- prvProcessTimerOrBlockTask/23 (prvProcessTimerOrBlockTask) @05f1a700
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: pxOverflowTimerList/7 (read)xTimerQueue/8 (read)
- Referring:
- Availability: local
- Function flags: count:1073741823 (estimated locally) body local optimize_size
- Called by: prvTimerTask/22 (1073741824 (estimated locally),10000.02 per call)
- Calls: xTaskResumeAll/39 (354334802 (estimated locally),0.33 per call) xTaskResumeAll/39 (600704864 (estimated locally),0.56 per call) vQueueWaitForMessageRestricted/40 (600704864 (estimated locally),0.56 per call) prvProcessExpiredTimer/21 (118702158 (estimated locally),0.11 per call) xTaskResumeAll/39 (118702158 (estimated locally),0.11 per call) prvSampleTimeNow/25 (1073741823 (estimated locally),1.00 per call) vTaskSuspendAll/38 (1073741823 (estimated locally),1.00 per call)
- prvTimerTask/22 (prvTimerTask) @05f1a2a0
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- Address is taken.
- References:
- Referring: xTimerCreateTimerTask/10 (addr)
- Availability: available
- Function flags: count:107374 (estimated locally) body executed_once optimize_size
- Called by:
- Calls: prvProcessReceivedCommands/27 (1073741824 (estimated locally),10000.02 per call) prvProcessTimerOrBlockTask/23 (1073741824 (estimated locally),10000.02 per call) prvGetNextExpireTime/24 (1073741824 (estimated locally),10000.02 per call)
- prvProcessExpiredTimer/21 (prvProcessExpiredTimer) @05f1a000
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References: pxCurrentTimerList/6 (read)
- Referring:
- Availability: local
- Function flags: count:1073741824 (estimated locally) body local optimize_size
- Called by: prvProcessTimerOrBlockTask/23 (118702158 (estimated locally),0.11 per call) prvSwitchTimerLists/28 (955630223 (estimated locally),8.09 per call)
- Calls: prvReloadTimer/20 (354334802 (estimated locally),0.33 per call) uxListRemove/43 (1073741824 (estimated locally),1.00 per call)
- Indirect call(1073741824 (estimated locally),1.00 per call)
- prvReloadTimer/20 (prvReloadTimer) @05ec0540
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring:
- Availability: local
- Function flags: count:118111600 (estimated locally) body local optimize_size
- Called by: prvProcessReceivedCommands/27 (322122 (estimated locally),0.03 per call) prvProcessExpiredTimer/21 (354334802 (estimated locally),0.33 per call)
- Calls: prvInsertTimerInActiveList/26 (1073741824 (estimated locally),9.09 per call)
- Indirect call(955630223 (estimated locally),8.09 per call) of param:0 loaded from aggregate passed by reference at offset 256 (vptr maybe changed)
- pcTimerGetName/19 (pcTimerGetName) @05ec0ee0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:357913 (estimated locally) body optimize_size
- Called by:
- Calls:
- xTimerGetExpiryTime/18 (xTimerGetExpiryTime) @05ec0b60
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:357913 (estimated locally) body optimize_size
- Called by:
- Calls:
- uxTimerGetReloadMode/17 (uxTimerGetReloadMode) @05ec07e0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: vPortExitCritical/51 (123389 (estimated locally),0.53 per call) vPortEnterCritical/47 (123389 (estimated locally),0.53 per call)
- vTimerSetReloadMode/16 (vTimerSetReloadMode) @05ec0460
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:230763 (estimated locally) body optimize_size
- Called by:
- Calls: vPortExitCritical/51 (123389 (estimated locally),0.53 per call) vPortEnterCritical/47 (123389 (estimated locally),0.53 per call)
- xTimerGetPeriod/15 (xTimerGetPeriod) @05ec00e0
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:357913 (estimated locally) body optimize_size
- Called by:
- Calls:
- xTimerGetTimerDaemonTaskHandle/14 (xTimerGetTimerDaemonTaskHandle) @05f157e0
- Type: function definition analyzed
- Visibility: externally_visible public
- References: xTimerTaskHandle/9 (read)
- Referring:
- Availability: available
- Function flags: count:357913 (estimated locally) body optimize_size
- Called by:
- Calls:
- xTimerGenericCommand/13 (xTimerGenericCommand) @05f151c0
- Type: function definition analyzed
- Visibility: externally_visible public
- References: xTimerQueue/8 (read)xTimerQueue/8 (read)xTimerQueue/8 (read)
- Referring:
- Availability: available
- Function flags: count:357913 (estimated locally) body optimize_size
- Called by:
- Calls: xQueueGenericSendFromISR/56 (87689 (estimated locally),0.25 per call) xQueueGenericSend/55 (57875 (estimated locally),0.16 per call) xQueueGenericSend/55 (29814 (estimated locally),0.08 per call) xTaskGetSchedulerState/54 (87689 (estimated locally),0.25 per call)
- prvInitialiseNewTimer/12 (prvInitialiseNewTimer) @05f15a80
- Type: function definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring:
- Availability: local
- Function flags: count:160260 (estimated locally) body local optimize_size
- Called by: xTimerCreate/11 (574129754 (estimated locally),0.53 per call)
- Calls: vListInitialiseItem/53 (52886 (estimated locally),0.33 per call) prvCheckForValidListAndQueue/29 (52886 (estimated locally),0.33 per call)
- xTimerCreate/11 (xTimerCreate) @05f15700
- Type: function definition analyzed
- Visibility: externally_visible public
- References:
- Referring:
- Availability: available
- Function flags: count:1073741824 (estimated locally) body optimize_size
- Called by:
- Calls: prvInitialiseNewTimer/12 (574129754 (estimated locally),0.53 per call) pvPortMalloc/52 (1073741824 (estimated locally),1.00 per call)
- xTimerCreateTimerTask/10 (xTimerCreateTimerTask) @05f15460
- Type: function definition analyzed
- Visibility: externally_visible public
- References: xTimerQueue/8 (read)prvTimerTask/22 (addr)xTimerTaskHandle/9 (addr)
- Referring:
- Availability: available
- Function flags: count:146556 (estimated locally) body optimize_size
- Called by:
- Calls: xTaskCreate/37 (78363 (estimated locally),0.53 per call) prvCheckForValidListAndQueue/29 (146556 (estimated locally),1.00 per call)
- xTimerTaskHandle/9 (xTimerTaskHandle) @05f0f678
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: xTimerCreateTimerTask/10 (addr)xTimerGetTimerDaemonTaskHandle/14 (read)
- Availability: available
- Varpool flags: initialized
- xTimerQueue/8 (xTimerQueue) @05f0f5e8
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvProcessReceivedCommands/27 (read)xTimerGenericCommand/13 (read)xTimerPendFunctionCallFromISR/33 (read)prvCheckForValidListAndQueue/29 (write)xTimerCreateTimerTask/10 (read)prvCheckForValidListAndQueue/29 (read)prvProcessTimerOrBlockTask/23 (read)xTimerGenericCommand/13 (read)xTimerGenericCommand/13 (read)xTimerPendFunctionCall/34 (read)
- Availability: available
- Varpool flags: initialized
- pxOverflowTimerList/7 (pxOverflowTimerList) @05f0f558
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvInsertTimerInActiveList.part.0/57 (read)prvSwitchTimerLists/28 (write)prvProcessTimerOrBlockTask/23 (read)prvSwitchTimerLists/28 (read)prvCheckForValidListAndQueue/29 (write)
- Availability: available
- Varpool flags:
- pxCurrentTimerList/6 (pxCurrentTimerList) @05f0f4c8
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvSwitchTimerLists/28 (write)prvProcessExpiredTimer/21 (read)prvInsertTimerInActiveList/26 (read)prvGetNextExpireTime/24 (read)prvSwitchTimerLists/28 (read)prvCheckForValidListAndQueue/29 (write)
- Availability: available
- Varpool flags:
- xActiveTimerList2/5 (xActiveTimerList2) @05f0f438
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvCheckForValidListAndQueue/29 (addr)prvCheckForValidListAndQueue/29 (addr)
- Availability: available
- Varpool flags:
- xActiveTimerList1/4 (xActiveTimerList1) @05f0f3a8
- Type: variable definition analyzed
- Visibility: prevailing_def_ironly
- References:
- Referring: prvCheckForValidListAndQueue/29 (addr)prvCheckForValidListAndQueue/29 (addr)
- Availability: available
- Varpool flags:
- prvInsertTimerInActiveList.part.0 (struct Timer_t * const pxTimer)
- {
- BaseType_t xProcessTimerNow;
- const TickType_t xNextExpiryTime;
- const TickType_t xTimeNow;
- const TickType_t xCommandTime;
- struct List_t * pxOverflowTimerList.14_1;
- struct ListItem_t * _3;
- <bb 4> [local count: 1073741824]:
- # DEBUG D#6 s=> xNextExpiryTime
- # DEBUG xNextExpiryTime => D#6
- # DEBUG D#5 s=> xTimeNow
- # DEBUG xTimeNow => D#5
- # DEBUG D#4 s=> xCommandTime
- # DEBUG xCommandTime => D#4
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- pxOverflowTimerList.14_1 = pxOverflowTimerList;
- _3 = &pxTimer_2(D)->xTimerListItem;
- vListInsert (pxOverflowTimerList.14_1, _3);
- <bb 3> [local count: 1073741824]:
- # xProcessTimerNow_4 = PHI <0(2)>
- # DEBUG xProcessTimerNow => xProcessTimerNow_4
- # DEBUG BEGIN_STMT
- return xProcessTimerNow_4;
- }
- vTimerSetTimerNumber (struct tmrTimerControl * xTimer, UBaseType_t uxTimerNumber)
- {
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- MEM[(struct Timer_t *)xTimer_2(D)].uxTimerNumber = uxTimerNumber_3(D);
- return;
- }
- uxTimerGetTimerNumber (struct tmrTimerControl * xTimer)
- {
- UBaseType_t _3;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- _3 = MEM[(struct Timer_t *)xTimer_2(D)].uxTimerNumber;
- return _3;
- }
- xTimerPendFunctionCall (void (*PendedFunction_t) (void *, uint32_t) xFunctionToPend, void * pvParameter1, uint32_t ulParameter2, TickType_t xTicksToWait)
- {
- uint32_t ulNewBASEPRI;
- BaseType_t xReturn;
- struct DaemonTaskMessage_t xMessage;
- struct QueueDefinition * xTimerQueue.26_1;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xTimerQueue.26_1 = xTimerQueue;
- if (xTimerQueue.26_1 == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_14 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_14
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xMessage.xMessageID = -1;
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.pxCallbackFunction = xFunctionToPend_4(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.pvParameter1 = pvParameter1_6(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.ulParameter2 = ulParameter2_8(D);
- # DEBUG BEGIN_STMT
- xReturn_12 = xQueueGenericSend (xTimerQueue.26_1, &xMessage, xTicksToWait_10(D), 0);
- # DEBUG xReturn => xReturn_12
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xMessage ={v} {CLOBBER};
- return xReturn_12;
- }
- xTimerPendFunctionCallFromISR (void (*PendedFunction_t) (void *, uint32_t) xFunctionToPend, void * pvParameter1, uint32_t ulParameter2, BaseType_t * pxHigherPriorityTaskWoken)
- {
- BaseType_t xReturn;
- struct DaemonTaskMessage_t xMessage;
- struct QueueDefinition * xTimerQueue.25_1;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xMessage.xMessageID = -2;
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.pxCallbackFunction = xFunctionToPend_4(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.pvParameter1 = pvParameter1_6(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xCallbackParameters.ulParameter2 = ulParameter2_8(D);
- # DEBUG BEGIN_STMT
- xTimerQueue.25_1 = xTimerQueue;
- xReturn_12 = xQueueGenericSendFromISR (xTimerQueue.25_1, &xMessage, pxHigherPriorityTaskWoken_10(D), 0);
- # DEBUG xReturn => xReturn_12
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xMessage ={v} {CLOBBER};
- return xReturn_12;
- }
- vTimerSetTimerID (struct tmrTimerControl * xTimer, void * pvNewID)
- {
- uint32_t ulNewBASEPRI;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_1(D)
- # DEBUG BEGIN_STMT
- if (xTimer_1(D) == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_7 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_7
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- MEM[(struct Timer_t *)xTimer_1(D)].pvTimerID = pvNewID_4(D);
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- return;
- }
- pvTimerGetTimerID (struct tmrTimerControl * const xTimer)
- {
- uint32_t ulNewBASEPRI;
- void * pvReturn;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_1(D)
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- if (xTimer_1(D) == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_6 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_6
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- pvReturn_4 = MEM[(struct Timer_t *)xTimer_1(D)].pvTimerID;
- # DEBUG pvReturn => pvReturn_4
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- # DEBUG BEGIN_STMT
- return pvReturn_4;
- }
- xTimerIsTimerActive (struct tmrTimerControl * xTimer)
- {
- uint32_t ulNewBASEPRI;
- unsigned char _1;
- long int _2;
- unsigned char _4;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_3(D)
- # DEBUG BEGIN_STMT
- if (xTimer_3(D) == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_8 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_8
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- _1 = MEM[(struct Timer_t *)xTimer_3(D)].ucStatus;
- _4 = _1 & 1;
- _2 = (long int) _4;
- # DEBUG xReturn => _2
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- # DEBUG BEGIN_STMT
- return _2;
- }
- prvCheckForValidListAndQueue ()
- {
- struct QueueDefinition * xTimerQueue.17_1;
- struct QueueDefinition * _2;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- xTimerQueue.17_1 = xTimerQueue;
- if (xTimerQueue.17_1 == 0B)
- goto <bb 3>; [17.43%]
- else
- goto <bb 5>; [82.57%]
- <bb 3> [local count: 187153200]:
- # DEBUG BEGIN_STMT
- vListInitialise (&xActiveTimerList1);
- # DEBUG BEGIN_STMT
- vListInitialise (&xActiveTimerList2);
- # DEBUG BEGIN_STMT
- pxCurrentTimerList = &xActiveTimerList1;
- # DEBUG BEGIN_STMT
- pxOverflowTimerList = &xActiveTimerList2;
- # DEBUG BEGIN_STMT
- _2 = xQueueGenericCreate (10, 16, 0);
- xTimerQueue = _2;
- # DEBUG BEGIN_STMT
- if (_2 != 0B)
- goto <bb 4>; [53.47%]
- else
- goto <bb 5>; [46.53%]
- <bb 4> [local count: 100070816]:
- # DEBUG BEGIN_STMT
- vQueueAddToRegistry (_2, "TmrQ");
- <bb 5> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- return;
- }
- prvSwitchTimerLists ()
- {
- TickType_t xNextExpireTime;
- struct xLIST_ITEM * _1;
- struct List_t * pxCurrentTimerList.11_2;
- long unsigned int _3;
- struct List_t * pxOverflowTimerList.12_4;
- struct List_t * pxCurrentTimerList.11_7;
- <bb 2> [local count: 118111600]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- goto <bb 4>; [100.00%]
- <bb 3> [local count: 955630223]:
- # DEBUG BEGIN_STMT
- _1 = pxCurrentTimerList.11_2->xListEnd.pxNext;
- xNextExpireTime_10 = _1->xItemValue;
- # DEBUG xNextExpireTime => xNextExpireTime_10
- # DEBUG BEGIN_STMT
- prvProcessExpiredTimer (xNextExpireTime_10, 4294967295);
- <bb 4> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- pxCurrentTimerList.11_2 = pxCurrentTimerList;
- _3 ={v} pxCurrentTimerList.11_2->uxNumberOfItems;
- if (_3 != 0)
- goto <bb 3>; [89.00%]
- else
- goto <bb 5>; [11.00%]
- <bb 5> [local count: 118111601]:
- # pxCurrentTimerList.11_7 = PHI <pxCurrentTimerList.11_2(4)>
- # DEBUG BEGIN_STMT
- # DEBUG pxTemp => pxCurrentTimerList.11_7
- # DEBUG BEGIN_STMT
- pxOverflowTimerList.12_4 = pxOverflowTimerList;
- pxCurrentTimerList = pxOverflowTimerList.12_4;
- # DEBUG BEGIN_STMT
- pxOverflowTimerList = pxCurrentTimerList.11_7;
- return;
- }
- prvProcessReceivedCommands ()
- {
- uint32_t ulNewBASEPRI;
- TickType_t xTimeNow;
- BaseType_t xTimerListsWereSwitched;
- struct Timer_t * pxTimer;
- struct DaemonTaskMessage_t xMessage;
- long int _1;
- void (*<T68e>) (void *, uint32_t) _2;
- void * _3;
- long unsigned int _4;
- long int _5;
- struct xLIST * _6;
- struct ListItem_t * _7;
- long int _8;
- unsigned char _9;
- unsigned char _10;
- long unsigned int _11;
- long unsigned int _12;
- long unsigned int _13;
- long int _15;
- unsigned char _16;
- long unsigned int _17;
- long unsigned int _18;
- long unsigned int _19;
- unsigned char _21;
- void (*<T689>) (struct tmrTimerControl *) _22;
- unsigned char _23;
- unsigned char _24;
- unsigned char _25;
- unsigned char _26;
- long unsigned int _27;
- long unsigned int _30;
- unsigned char _31;
- unsigned char _33;
- struct QueueDefinition * xTimerQueue.16_34;
- long int _35;
- unsigned char _63;
- unsigned char _65;
- <bb 2> [local count: 10436763]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- goto <bb 23>; [100.00%]
- <bb 3> [local count: 177477686]:
- # DEBUG BEGIN_STMT
- _1 = xMessage.xMessageID;
- if (_1 < 0)
- goto <bb 4>; [41.00%]
- else
- goto <bb 5>; [59.00%]
- <bb 4> [local count: 72765851]:
- # DEBUG BEGIN_STMT
- # DEBUG pxCallback => &xMessage.u.xCallbackParameters
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _2 = MEM[(const struct CallbackParameters_t *)&xMessage + 4B].pxCallbackFunction;
- _3 = MEM[(const struct CallbackParameters_t *)&xMessage + 4B].pvParameter1;
- _4 = MEM[(const struct CallbackParameters_t *)&xMessage + 4B].ulParameter2;
- _2 (_3, _4);
- <bb 5> [local count: 177477686]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _5 = xMessage.xMessageID;
- if (_5 >= 0)
- goto <bb 6>; [5.50%]
- else
- goto <bb 29>; [94.50%]
- <bb 29> [local count: 167716413]:
- goto <bb 25>; [100.00%]
- <bb 6> [local count: 9761273]:
- # DEBUG BEGIN_STMT
- pxTimer_47 = xMessage.u.xTimerParameters.pxTimer;
- # DEBUG pxTimer => pxTimer_47
- # DEBUG BEGIN_STMT
- _6 = pxTimer_47->xTimerListItem.pvContainer;
- if (_6 != 0B)
- goto <bb 7>; [53.47%]
- else
- goto <bb 8>; [46.53%]
- <bb 7> [local count: 5219353]:
- # DEBUG BEGIN_STMT
- _7 = &pxTimer_47->xTimerListItem;
- uxListRemove (_7);
- <bb 8> [local count: 9761273]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xTimeNow_50 = prvSampleTimeNow (&xTimerListsWereSwitched);
- # DEBUG xTimeNow => xTimeNow_50
- # DEBUG BEGIN_STMT
- _8 = xMessage.xMessageID;
- switch (_8) <default: <L41> [20.00%], case 1 ... 2: <L11> [20.00%], case 3: <L21> [20.00%], case 4: <L23> [20.00%], case 5: <L28> [20.00%], case 6 ... 7: <L11> [20.00%], case 8: <L21> [20.00%], case 9: <L23> [20.00%]>
- <bb 28> [local count: 1952255]:
- <L41>:
- goto <bb 24>; [100.00%]
- <bb 9> [local count: 1952255]:
- # pxTimer_14 = PHI <pxTimer_47(8)>
- # xTimeNow_46 = PHI <xTimeNow_50(8)>
- <L11>:
- # DEBUG BEGIN_STMT
- _9 = pxTimer_14->ucStatus;
- _10 = _9 | 1;
- pxTimer_14->ucStatus = _10;
- # DEBUG BEGIN_STMT
- _11 = xMessage.u.xTimerParameters.xMessageValue;
- _12 = pxTimer_14->xTimerPeriodInTicks;
- _13 = _11 + _12;
- _15 = prvInsertTimerInActiveList (pxTimer_14, _13, xTimeNow_46, _11);
- if (_15 != 0)
- goto <bb 10>; [50.00%]
- else
- goto <bb 22>; [50.00%]
- <bb 10> [local count: 976127]:
- # DEBUG BEGIN_STMT
- _16 = pxTimer_14->ucStatus;
- _65 = _16 & 4;
- if (_65 != 0)
- goto <bb 11>; [33.00%]
- else
- goto <bb 12>; [67.00%]
- <bb 11> [local count: 322122]:
- # DEBUG BEGIN_STMT
- _17 = xMessage.u.xTimerParameters.xMessageValue;
- _18 = pxTimer_14->xTimerPeriodInTicks;
- _19 = _17 + _18;
- prvReloadTimer (pxTimer_14, _19, xTimeNow_46);
- goto <bb 13>; [100.00%]
- <bb 12> [local count: 654005]:
- # DEBUG BEGIN_STMT
- _21 = _16 & 254;
- pxTimer_14->ucStatus = _21;
- <bb 13> [local count: 976127]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _22 = pxTimer_14->pxCallbackFunction;
- _22 (pxTimer_14);
- goto <bb 22>; [100.00%]
- <bb 14> [local count: 1952255]:
- # pxTimer_20 = PHI <pxTimer_47(8)>
- <L21>:
- # DEBUG BEGIN_STMT
- _23 = pxTimer_20->ucStatus;
- _24 = _23 & 254;
- pxTimer_20->ucStatus = _24;
- # DEBUG BEGIN_STMT
- goto <bb 22>; [100.00%]
- <bb 15> [local count: 1952255]:
- # pxTimer_44 = PHI <pxTimer_47(8)>
- # xTimeNow_67 = PHI <xTimeNow_50(8)>
- <L23>:
- # DEBUG BEGIN_STMT
- _25 = pxTimer_44->ucStatus;
- _26 = _25 | 1;
- pxTimer_44->ucStatus = _26;
- # DEBUG BEGIN_STMT
- _27 = xMessage.u.xTimerParameters.xMessageValue;
- pxTimer_44->xTimerPeriodInTicks = _27;
- # DEBUG BEGIN_STMT
- if (_27 == 0)
- goto <bb 16>; [5.50%]
- else
- goto <bb 18>; [94.50%]
- <bb 16> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_64 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_64
- <bb 17> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 27> [local count: 1073741824]:
- goto <bb 17>; [100.00%]
- <bb 18> [local count: 1844881]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _30 = _27 + xTimeNow_67;
- prvInsertTimerInActiveList (pxTimer_44, _30, xTimeNow_67, xTimeNow_67);
- # DEBUG BEGIN_STMT
- goto <bb 22>; [100.00%]
- <bb 19> [local count: 1952255]:
- # pxTimer_56 = PHI <pxTimer_47(8)>
- <L28>:
- # DEBUG BEGIN_STMT
- _31 = pxTimer_56->ucStatus;
- _63 = _31 & 2;
- if (_63 == 0)
- goto <bb 20>; [33.00%]
- else
- goto <bb 21>; [67.00%]
- <bb 20> [local count: 644244]:
- # DEBUG BEGIN_STMT
- vPortFree (pxTimer_56);
- goto <bb 22>; [100.00%]
- <bb 21> [local count: 1308011]:
- # DEBUG BEGIN_STMT
- _33 = _31 & 254;
- pxTimer_56->ucStatus = _33;
- <bb 22> [local count: 7701644]:
- <bb 23> [local count: 18138407]:
- <bb 24> [local count: 20090662]:
- <L38>:
- <bb 25> [local count: 187807075]:
- # DEBUG BEGIN_STMT
- xTimerQueue.16_34 = xTimerQueue;
- _35 = xQueueReceive (xTimerQueue.16_34, &xMessage, 0);
- if (_35 != 0)
- goto <bb 3>; [94.50%]
- else
- goto <bb 26>; [5.50%]
- <bb 26> [local count: 10329389]:
- xMessage ={v} {CLOBBER};
- xTimerListsWereSwitched ={v} {CLOBBER};
- return;
- }
- prvInsertTimerInActiveList (struct Timer_t * const pxTimer, const TickType_t xNextExpiryTime, const TickType_t xTimeNow, const TickType_t xCommandTime)
- {
- BaseType_t xProcessTimerNow;
- long unsigned int _1;
- long unsigned int _2;
- struct List_t * pxCurrentTimerList.15_3;
- struct ListItem_t * _4;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG xProcessTimerNow => 0
- # DEBUG BEGIN_STMT
- pxTimer_8(D)->xTimerListItem.xItemValue = xNextExpiryTime_9(D);
- # DEBUG BEGIN_STMT
- pxTimer_8(D)->xTimerListItem.pvOwner = pxTimer_8(D);
- # DEBUG BEGIN_STMT
- if (xNextExpiryTime_9(D) <= xTimeNow_12(D))
- goto <bb 3>; [50.00%]
- else
- goto <bb 5>; [50.00%]
- <bb 3> [local count: 536870913]:
- # DEBUG BEGIN_STMT
- _1 = xTimeNow_12(D) - xCommandTime_13(D);
- _2 = pxTimer_8(D)->xTimerPeriodInTicks;
- if (_1 >= _2)
- goto <bb 8>; [67.00%]
- else
- goto <bb 4>; [33.00%]
- <bb 4> [local count: 177167400]:
- # DEBUG D#1 => xNextExpiryTime_9(D)
- # DEBUG D#2 => xTimeNow_12(D)
- # DEBUG D#3 => xCommandTime_13(D)
- xProcessTimerNow_16 = prvInsertTimerInActiveList.part.0 (pxTimer_8(D));
- goto <bb 8>; [100.00%]
- <bb 5> [local count: 536870913]:
- # DEBUG BEGIN_STMT
- if (xTimeNow_12(D) < xCommandTime_13(D))
- goto <bb 6>; [67.00%]
- else
- goto <bb 7>; [33.00%]
- <bb 6> [local count: 359703511]:
- if (xNextExpiryTime_9(D) >= xCommandTime_13(D))
- goto <bb 8>; [50.00%]
- else
- goto <bb 7>; [50.00%]
- <bb 7> [local count: 357019157]:
- # DEBUG BEGIN_STMT
- pxCurrentTimerList.15_3 = pxCurrentTimerList;
- _4 = &pxTimer_8(D)->xTimerListItem;
- vListInsert (pxCurrentTimerList.15_3, _4);
- <bb 8> [local count: 1073741824]:
- # xProcessTimerNow_5 = PHI <xProcessTimerNow_16(4), 1(6), 0(7), 1(3)>
- # DEBUG xProcessTimerNow => xProcessTimerNow_5
- # DEBUG BEGIN_STMT
- return xProcessTimerNow_5;
- }
- prvSampleTimeNow (BaseType_t * const pxTimerListsWereSwitched)
- {
- static TickType_t xLastTime = 0;
- TickType_t xTimeNow;
- long unsigned int xLastTime.9_1;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xTimeNow_5 = xTaskGetTickCount ();
- # DEBUG xTimeNow => xTimeNow_5
- # DEBUG BEGIN_STMT
- xLastTime.9_1 = xLastTime;
- if (xLastTime.9_1 > xTimeNow_5)
- goto <bb 3>; [33.00%]
- else
- goto <bb 4>; [67.00%]
- <bb 3> [local count: 354334802]:
- # DEBUG BEGIN_STMT
- prvSwitchTimerLists ();
- # DEBUG BEGIN_STMT
- *pxTimerListsWereSwitched_6(D) = 1;
- goto <bb 5>; [100.00%]
- <bb 4> [local count: 719407023]:
- # DEBUG BEGIN_STMT
- *pxTimerListsWereSwitched_6(D) = 0;
- <bb 5> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- xLastTime = xTimeNow_5;
- # DEBUG BEGIN_STMT
- return xTimeNow_5;
- }
- prvGetNextExpireTime (BaseType_t * const pxListWasEmpty)
- {
- TickType_t xNextExpireTime;
- struct List_t * pxCurrentTimerList.3_1;
- long unsigned int _2;
- struct xLIST_ITEM * _3;
- long int iftmp.2_5;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- pxCurrentTimerList.3_1 = pxCurrentTimerList;
- _2 ={v} pxCurrentTimerList.3_1->uxNumberOfItems;
- if (_2 == 0)
- goto <bb 4>; [50.00%]
- else
- goto <bb 3>; [50.00%]
- <bb 3> [local count: 536870913]:
- <bb 4> [local count: 1073741824]:
- # iftmp.2_5 = PHI <1(2), 0(3)>
- *pxListWasEmpty_7(D) = iftmp.2_5;
- # DEBUG BEGIN_STMT
- if (iftmp.2_5 == 0)
- goto <bb 5>; [50.00%]
- else
- goto <bb 6>; [50.00%]
- <bb 5> [local count: 536870913]:
- # DEBUG BEGIN_STMT
- _3 = pxCurrentTimerList.3_1->xListEnd.pxNext;
- xNextExpireTime_9 = _3->xItemValue;
- # DEBUG xNextExpireTime => xNextExpireTime_9
- <bb 6> [local count: 1073741824]:
- # xNextExpireTime_4 = PHI <xNextExpireTime_9(5), 0(4)>
- # DEBUG xNextExpireTime => xNextExpireTime_4
- # DEBUG BEGIN_STMT
- return xNextExpireTime_4;
- }
- prvProcessTimerOrBlockTask (const TickType_t xNextExpireTime, BaseType_t xListWasEmpty)
- {
- BaseType_t xTimerListsWereSwitched;
- TickType_t xTimeNow;
- long int xTimerListsWereSwitched.5_1;
- struct List_t * pxOverflowTimerList.7_2;
- long unsigned int _3;
- struct QueueDefinition * xTimerQueue.8_4;
- long unsigned int _5;
- long int _6;
- <bb 2> [local count: 1073741823]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vTaskSuspendAll ();
- # DEBUG BEGIN_STMT
- xTimeNow_12 = prvSampleTimeNow (&xTimerListsWereSwitched);
- # DEBUG xTimeNow => xTimeNow_12
- # DEBUG BEGIN_STMT
- xTimerListsWereSwitched.5_1 = xTimerListsWereSwitched;
- if (xTimerListsWereSwitched.5_1 == 0)
- goto <bb 3>; [67.00%]
- else
- goto <bb 12>; [33.00%]
- <bb 3> [local count: 719407022]:
- # DEBUG BEGIN_STMT
- if (xListWasEmpty_14(D) == 0)
- goto <bb 4>; [50.00%]
- else
- goto <bb 6>; [50.00%]
- <bb 4> [local count: 359703511]:
- if (xTimeNow_12 >= xNextExpireTime_15(D))
- goto <bb 5>; [33.00%]
- else
- goto <bb 6>; [67.00%]
- <bb 5> [local count: 118702158]:
- # DEBUG BEGIN_STMT
- xTaskResumeAll ();
- # DEBUG BEGIN_STMT
- prvProcessExpiredTimer (xNextExpireTime_15(D), xTimeNow_12);
- goto <bb 13>; [100.00%]
- <bb 6> [local count: 600704864]:
- # DEBUG BEGIN_STMT
- if (xListWasEmpty_14(D) != 0)
- goto <bb 7>; [50.00%]
- else
- goto <bb 10>; [50.00%]
- <bb 7> [local count: 300352432]:
- # DEBUG BEGIN_STMT
- pxOverflowTimerList.7_2 = pxOverflowTimerList;
- _3 ={v} pxOverflowTimerList.7_2->uxNumberOfItems;
- if (_3 == 0)
- goto <bb 10>; [50.00%]
- else
- goto <bb 8>; [50.00%]
- <bb 8> [local count: 150176216]:
- <bb 10> [local count: 600704864]:
- # xListWasEmpty_7 = PHI <xListWasEmpty_14(D)(6), 0(8), 1(7)>
- # DEBUG xListWasEmpty => xListWasEmpty_7
- # DEBUG BEGIN_STMT
- xTimerQueue.8_4 = xTimerQueue;
- _5 = xNextExpireTime_15(D) - xTimeNow_12;
- vQueueWaitForMessageRestricted (xTimerQueue.8_4, _5, xListWasEmpty_7);
- # DEBUG BEGIN_STMT
- _6 = xTaskResumeAll ();
- if (_6 == 0)
- goto <bb 11>; [50.00%]
- else
- goto <bb 13>; [50.00%]
- <bb 11> [local count: 300352432]:
- # DEBUG BEGIN_STMT
- MEM[(volatile uint32_t *)3758157060B] ={v} 268435456;
- # DEBUG BEGIN_STMT
- __asm__ __volatile__("dsb" : : : "memory");
- # DEBUG BEGIN_STMT
- __asm__ __volatile__("isb");
- # DEBUG BEGIN_STMT
- goto <bb 13>; [100.00%]
- <bb 12> [local count: 354334802]:
- # DEBUG BEGIN_STMT
- xTaskResumeAll ();
- <bb 13> [local count: 1073741824]:
- xTimerListsWereSwitched ={v} {CLOBBER};
- return;
- }
- prvTimerTask (void * pvParameters)
- {
- BaseType_t xListWasEmpty;
- TickType_t xNextExpireTime;
- long int xListWasEmpty.1_1;
- <bb 2> [local count: 107374]:
- <bb 3> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xNextExpireTime_5 = prvGetNextExpireTime (&xListWasEmpty);
- # DEBUG xNextExpireTime => xNextExpireTime_5
- # DEBUG BEGIN_STMT
- xListWasEmpty.1_1 = xListWasEmpty;
- prvProcessTimerOrBlockTask (xNextExpireTime_5, xListWasEmpty.1_1);
- # DEBUG BEGIN_STMT
- prvProcessReceivedCommands ();
- # DEBUG BEGIN_STMT
- <bb 4> [local count: 1073741824]:
- goto <bb 3>; [100.00%]
- }
- prvProcessExpiredTimer (const TickType_t xNextExpireTime, const TickType_t xTimeNow)
- {
- struct Timer_t * const pxTimer;
- struct List_t * pxCurrentTimerList.13_1;
- struct xLIST_ITEM * _2;
- struct ListItem_t * _3;
- unsigned char _4;
- unsigned char _5;
- void (*<T689>) (struct tmrTimerControl *) _6;
- unsigned char _16;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- pxCurrentTimerList.13_1 = pxCurrentTimerList;
- _2 = pxCurrentTimerList.13_1->xListEnd.pxNext;
- pxTimer_9 = _2->pvOwner;
- # DEBUG pxTimer => pxTimer_9
- # DEBUG BEGIN_STMT
- _3 = &pxTimer_9->xTimerListItem;
- uxListRemove (_3);
- # DEBUG BEGIN_STMT
- _4 = pxTimer_9->ucStatus;
- _16 = _4 & 4;
- if (_16 != 0)
- goto <bb 3>; [33.00%]
- else
- goto <bb 4>; [67.00%]
- <bb 3> [local count: 354334802]:
- # DEBUG BEGIN_STMT
- prvReloadTimer (pxTimer_9, xNextExpireTime_12(D), xTimeNow_13(D));
- goto <bb 5>; [100.00%]
- <bb 4> [local count: 719407023]:
- # DEBUG BEGIN_STMT
- _5 = _4 & 254;
- pxTimer_9->ucStatus = _5;
- <bb 5> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _6 = pxTimer_9->pxCallbackFunction;
- _6 (pxTimer_9);
- return;
- }
- prvReloadTimer (struct Timer_t * const pxTimer, TickType_t xExpiredTime, const TickType_t xTimeNow)
- {
- long unsigned int _1;
- void (*<T689>) (struct tmrTimerControl *) _2;
- long unsigned int _3;
- long unsigned int _4;
- long int _5;
- <bb 2> [local count: 118111600]:
- # DEBUG BEGIN_STMT
- goto <bb 4>; [100.00%]
- <bb 3> [local count: 955630223]:
- # DEBUG BEGIN_STMT
- _1 = pxTimer_10(D)->xTimerPeriodInTicks;
- xExpiredTime_13 = _1 + xExpiredTime_6;
- # DEBUG xExpiredTime => xExpiredTime_13
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _2 = pxTimer_10(D)->pxCallbackFunction;
- _2 (pxTimer_10(D));
- <bb 4> [local count: 1073741824]:
- # xExpiredTime_6 = PHI <xExpiredTime_8(D)(2), xExpiredTime_13(3)>
- # DEBUG xExpiredTime => xExpiredTime_6
- # DEBUG BEGIN_STMT
- _3 = pxTimer_10(D)->xTimerPeriodInTicks;
- _4 = _3 + xExpiredTime_6;
- _5 = prvInsertTimerInActiveList (pxTimer_10(D), _4, xTimeNow_11(D), xExpiredTime_6);
- if (_5 != 0)
- goto <bb 3>; [89.00%]
- else
- goto <bb 5>; [11.00%]
- <bb 5> [local count: 118111601]:
- return;
- }
- pcTimerGetName (struct tmrTimerControl * xTimer)
- {
- uint32_t ulNewBASEPRI;
- const char * _3;
- <bb 2> [local count: 357913]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_1(D)
- # DEBUG BEGIN_STMT
- if (xTimer_1(D) == 0B)
- goto <bb 3>; [30.00%]
- else
- goto <bb 5>; [70.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_4 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_4
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 250539]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _3 = MEM[(struct Timer_t *)xTimer_1(D)].pcTimerName;
- return _3;
- }
- xTimerGetExpiryTime (struct tmrTimerControl * xTimer)
- {
- uint32_t ulNewBASEPRI;
- TickType_t xReturn;
- <bb 2> [local count: 357913]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_1(D)
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- if (xTimer_1(D) == 0B)
- goto <bb 3>; [30.00%]
- else
- goto <bb 5>; [70.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_4 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_4
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 250539]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xReturn_3 = MEM[(struct Timer_t *)xTimer_1(D)].xTimerListItem.xItemValue;
- # DEBUG xReturn => xReturn_3
- # DEBUG BEGIN_STMT
- return xReturn_3;
- }
- uxTimerGetReloadMode (struct tmrTimerControl * xTimer)
- {
- uint32_t ulNewBASEPRI;
- UBaseType_t uxReturn;
- unsigned char _1;
- unsigned char _4;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_3(D)
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- if (xTimer_3(D) == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_8 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_8
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 8> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- _1 = MEM[(struct Timer_t *)xTimer_3(D)].ucStatus;
- _4 = _1 & 4;
- if (_4 == 0)
- goto <bb 7>; [50.00%]
- else
- goto <bb 6>; [50.00%]
- <bb 6> [local count: 61694]:
- # DEBUG BEGIN_STMT
- # DEBUG uxReturn => 1
- <bb 7> [local count: 123389]:
- # uxReturn_2 = PHI <0(5), 1(6)>
- # DEBUG uxReturn => uxReturn_2
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- # DEBUG BEGIN_STMT
- return uxReturn_2;
- }
- vTimerSetReloadMode (struct tmrTimerControl * xTimer, const UBaseType_t uxAutoReload)
- {
- uint32_t ulNewBASEPRI;
- unsigned char _1;
- unsigned char _2;
- unsigned char _3;
- unsigned char _4;
- <bb 2> [local count: 230763]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_6(D)
- # DEBUG BEGIN_STMT
- if (xTimer_6(D) == 0B)
- goto <bb 3>; [46.53%]
- else
- goto <bb 5>; [53.47%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_13 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_13
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 9> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 123389]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- vPortEnterCritical ();
- # DEBUG BEGIN_STMT
- if (uxAutoReload_9(D) != 0)
- goto <bb 6>; [50.00%]
- else
- goto <bb 7>; [50.00%]
- <bb 6> [local count: 61694]:
- # DEBUG BEGIN_STMT
- _1 = MEM[(struct Timer_t *)xTimer_6(D)].ucStatus;
- _2 = _1 | 4;
- MEM[(struct Timer_t *)xTimer_6(D)].ucStatus = _2;
- goto <bb 8>; [100.00%]
- <bb 7> [local count: 61694]:
- # DEBUG BEGIN_STMT
- _3 = MEM[(struct Timer_t *)xTimer_6(D)].ucStatus;
- _4 = _3 & 251;
- MEM[(struct Timer_t *)xTimer_6(D)].ucStatus = _4;
- <bb 8> [local count: 123389]:
- # DEBUG BEGIN_STMT
- vPortExitCritical ();
- return;
- }
- xTimerGetPeriod (struct tmrTimerControl * xTimer)
- {
- uint32_t ulNewBASEPRI;
- TickType_t _3;
- <bb 2> [local count: 357913]:
- # DEBUG BEGIN_STMT
- # DEBUG pxTimer => xTimer_1(D)
- # DEBUG BEGIN_STMT
- if (xTimer_1(D) == 0B)
- goto <bb 3>; [30.00%]
- else
- goto <bb 5>; [70.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_4 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_4
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 250539]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- _3 = MEM[(struct Timer_t *)xTimer_1(D)].xTimerPeriodInTicks;
- return _3;
- }
- xTimerGetTimerDaemonTaskHandle ()
- {
- uint32_t ulNewBASEPRI;
- struct tskTaskControlBlock * xTimerTaskHandle.24_1;
- <bb 2> [local count: 357913]:
- # DEBUG BEGIN_STMT
- xTimerTaskHandle.24_1 = xTimerTaskHandle;
- if (xTimerTaskHandle.24_1 == 0B)
- goto <bb 3>; [30.00%]
- else
- goto <bb 5>; [70.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_3 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_3
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 6> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 250539]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- return xTimerTaskHandle.24_1;
- }
- xTimerGenericCommand (struct tmrTimerControl * xTimer, const BaseType_t xCommandID, const TickType_t xOptionalValue, BaseType_t * const pxHigherPriorityTaskWoken, const TickType_t xTicksToWait)
- {
- uint32_t ulNewBASEPRI;
- struct DaemonTaskMessage_t xMessage;
- BaseType_t xReturn;
- struct QueueDefinition * xTimerQueue.20_1;
- long int _2;
- struct QueueDefinition * xTimerQueue.21_3;
- struct QueueDefinition * xTimerQueue.22_4;
- <bb 2> [local count: 357913]:
- # DEBUG BEGIN_STMT
- # DEBUG xReturn => 0
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- if (xTimer_7(D) == 0B)
- goto <bb 3>; [30.00%]
- else
- goto <bb 5>; [70.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_24 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_24
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 12> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 250539]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xTimerQueue.20_1 = xTimerQueue;
- if (xTimerQueue.20_1 != 0B)
- goto <bb 6>; [70.00%]
- else
- goto <bb 11>; [30.00%]
- <bb 6> [local count: 175378]:
- # DEBUG BEGIN_STMT
- xMessage.xMessageID = xCommandID_9(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xTimerParameters.xMessageValue = xOptionalValue_11(D);
- # DEBUG BEGIN_STMT
- xMessage.u.xTimerParameters.pxTimer = xTimer_7(D);
- # DEBUG BEGIN_STMT
- if (xCommandID_9(D) <= 5)
- goto <bb 7>; [50.00%]
- else
- goto <bb 10>; [50.00%]
- <bb 7> [local count: 87689]:
- # DEBUG BEGIN_STMT
- _2 = xTaskGetSchedulerState ();
- if (_2 == 2)
- goto <bb 8>; [34.00%]
- else
- goto <bb 9>; [66.00%]
- <bb 8> [local count: 29814]:
- # DEBUG BEGIN_STMT
- xTimerQueue.21_3 = xTimerQueue;
- xReturn_22 = xQueueGenericSend (xTimerQueue.21_3, &xMessage, xTicksToWait_20(D), 0);
- # DEBUG xReturn => xReturn_22
- goto <bb 11>; [100.00%]
- <bb 9> [local count: 57875]:
- # DEBUG BEGIN_STMT
- xTimerQueue.22_4 = xTimerQueue;
- xReturn_19 = xQueueGenericSend (xTimerQueue.22_4, &xMessage, 0, 0);
- # DEBUG xReturn => xReturn_19
- goto <bb 11>; [100.00%]
- <bb 10> [local count: 87689]:
- # DEBUG BEGIN_STMT
- xReturn_16 = xQueueGenericSendFromISR (xTimerQueue.20_1, &xMessage, pxHigherPriorityTaskWoken_14(D), 0);
- # DEBUG xReturn => xReturn_16
- <bb 11> [local count: 250539]:
- # xReturn_5 = PHI <0(5), xReturn_16(10), xReturn_19(9), xReturn_22(8)>
- # DEBUG xReturn => xReturn_5
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- xMessage ={v} {CLOBBER};
- return xReturn_5;
- }
- prvInitialiseNewTimer (const char * const pcTimerName, const TickType_t xTimerPeriodInTicks, const UBaseType_t uxAutoReload, void * const pvTimerID, void (*TimerCallbackFunction_t) (struct tmrTimerControl *) pxCallbackFunction, struct Timer_t * pxNewTimer)
- {
- uint32_t ulNewBASEPRI;
- struct ListItem_t * _1;
- unsigned char _2;
- unsigned char _3;
- <bb 2> [local count: 160260]:
- # DEBUG BEGIN_STMT
- if (xTimerPeriodInTicks_5(D) == 0)
- goto <bb 3>; [67.00%]
- else
- goto <bb 5>; [33.00%]
- <bb 3> [local count: 107374]:
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_19 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_19
- <bb 4> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 8> [local count: 1073741824]:
- goto <bb 4>; [100.00%]
- <bb 5> [local count: 52886]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- prvCheckForValidListAndQueue ();
- # DEBUG BEGIN_STMT
- pxNewTimer_8(D)->pcTimerName = pcTimerName_9(D);
- # DEBUG BEGIN_STMT
- pxNewTimer_8(D)->xTimerPeriodInTicks = xTimerPeriodInTicks_5(D);
- # DEBUG BEGIN_STMT
- pxNewTimer_8(D)->pvTimerID = pvTimerID_12(D);
- # DEBUG BEGIN_STMT
- pxNewTimer_8(D)->pxCallbackFunction = pxCallbackFunction_14(D);
- # DEBUG BEGIN_STMT
- _1 = &pxNewTimer_8(D)->xTimerListItem;
- vListInitialiseItem (_1);
- # DEBUG BEGIN_STMT
- if (uxAutoReload_17(D) != 0)
- goto <bb 6>; [50.00%]
- else
- goto <bb 7>; [50.00%]
- <bb 6> [local count: 26443]:
- # DEBUG BEGIN_STMT
- _2 = pxNewTimer_8(D)->ucStatus;
- _3 = _2 | 4;
- pxNewTimer_8(D)->ucStatus = _3;
- <bb 7> [local count: 52886]:
- # DEBUG BEGIN_STMT
- return;
- }
- xTimerCreate (const char * const pcTimerName, const TickType_t xTimerPeriodInTicks, const UBaseType_t uxAutoReload, void * const pvTimerID, void (*TimerCallbackFunction_t) (struct tmrTimerControl *) pxCallbackFunction)
- {
- struct Timer_t * pxNewTimer;
- <bb 2> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- pxNewTimer_4 = pvPortMalloc (44);
- # DEBUG pxNewTimer => pxNewTimer_4
- # DEBUG BEGIN_STMT
- if (pxNewTimer_4 != 0B)
- goto <bb 3>; [53.47%]
- else
- goto <bb 4>; [46.53%]
- <bb 3> [local count: 574129754]:
- # DEBUG BEGIN_STMT
- pxNewTimer_4->ucStatus = 0;
- # DEBUG BEGIN_STMT
- prvInitialiseNewTimer (pcTimerName_6(D), xTimerPeriodInTicks_7(D), uxAutoReload_8(D), pvTimerID_9(D), pxCallbackFunction_10(D), pxNewTimer_4);
- <bb 4> [local count: 1073741824]:
- # DEBUG BEGIN_STMT
- return pxNewTimer_4;
- }
- xTimerCreateTimerTask ()
- {
- uint32_t ulNewBASEPRI;
- BaseType_t xReturn;
- struct QueueDefinition * xTimerQueue.0_1;
- <bb 2> [local count: 146556]:
- # DEBUG BEGIN_STMT
- # DEBUG xReturn => 0
- # DEBUG BEGIN_STMT
- prvCheckForValidListAndQueue ();
- # DEBUG BEGIN_STMT
- xTimerQueue.0_1 = xTimerQueue;
- if (xTimerQueue.0_1 != 0B)
- goto <bb 4>; [53.47%]
- else
- goto <bb 5>; [46.53%]
- <bb 4> [local count: 78363]:
- # DEBUG BEGIN_STMT
- xReturn_5 = xTaskCreate (prvTimerTask, "Tmr Svc", 180, 0B, 2, &xTimerTaskHandle);
- # DEBUG xReturn => xReturn_5
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- if (xReturn_5 == 0)
- goto <bb 5>; [50.00%]
- else
- goto <bb 7>; [50.00%]
- <bb 5> [local count: 107374]:
- # DEBUG xReturn => NULL
- # DEBUG BEGIN_STMT
- # DEBUG INLINE_ENTRY vPortRaiseBASEPRI
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- __asm__ __volatile__(" mov %0, %1
- msr basepri, %0
- isb
- dsb
- " : "=r" ulNewBASEPRI_7 : "i" 16 : "memory");
- # DEBUG ulNewBASEPRI => ulNewBASEPRI_7
- <bb 6> [local count: 1073741824]:
- # DEBUG ulNewBASEPRI => NULL
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- <bb 8> [local count: 1073741824]:
- goto <bb 6>; [100.00%]
- <bb 7> [local count: 39182]:
- # DEBUG BEGIN_STMT
- # DEBUG BEGIN_STMT
- return xReturn_5;
- }
|