
Marking local functions: prvListTasksWithinSingleList.part.0 vTaskSwitchContext.part.0 xTaskResumeAll.part.0 xTaskIncrementTick.part.0 eTaskGetState.part.0 prvAddCurrentTaskToDelayedList.part.0 prvInitialiseNewTask.isra.0 prvResetNextTaskUnblockTime.part.0 prvTaskIsTaskSuspended.part.0 prvAddCurrentTaskToDelayedList prvWriteNameToBuffer prvResetNextTaskUnblockTime prvDeleteTCB prvTaskCheckFreeStackSpace prvListTasksWithinSingleList prvCheckTasksWaitingTermination prvInitialiseTaskLists prvSearchForNameWithinSingleList prvTaskIsTaskSuspended prvAddNewTaskToReadyList


Marking externally visible functions: ulTaskGenericNotifyValueClear xTaskGenericNotifyStateClear vTaskGenericNotifyGiveFromISR xTaskGenericNotifyFromISR xTaskGenericNotify xTaskGenericNotifyWait ulTaskGenericNotifyTake pvTaskIncrementMutexHeldCount uxTaskResetEventItemValue vTaskList vTaskPriorityDisinheritAfterTimeout xTaskPriorityDisinherit xTaskPriorityInherit xTaskGetSchedulerState xTaskGetCurrentTaskHandle uxTaskGetStackHighWaterMark vTaskGetInfo vTaskSetTaskNumber uxTaskGetTaskNumber vTaskMissedYield xTaskCheckForTimeOut vTaskInternalSetTimeOutState vTaskSetTimeOutState vTaskRemoveFromUnorderedEventList xTaskRemoveFromEventList vTaskPlaceOnEventListRestricted vTaskPlaceOnUnorderedEventList vTaskPlaceOnEventList vTaskSwitchContext xTaskIncrementTick xTaskAbortDelay xTaskCatchUpTicks uxTaskGetSystemState xTaskGetHandle pcTaskGetName uxTaskGetNumberOfTasks xTaskGetTickCountFromISR xTaskGetTickCount xTaskResumeAll vTaskSuspendAll vTaskEndScheduler vTaskStartScheduler xTaskResumeFromISR vTaskResume vTaskSuspend vTaskPrioritySet uxTaskPriorityGetFromISR uxTaskPriorityGet eTaskGetState vTaskDelay xTaskDelayUntil vTaskDelete xTaskCreate


Marking externally visible variables: uxTopUsedPriority pxCurrentTCB

Clearing variable flags:

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:

CSWTCH.225/163 (CSWTCH.225) @06373798
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: vTaskList/84 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
prvListTasksWithinSingleList.part.0/158 (prvListTasksWithinSingleList.part.0) @06174b60
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:118111600 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: prvListTasksWithinSingleList/73 (118111600 (estimated locally),0.50 per call) 
  Calls: vTaskGetInfo/72 (1073741824 (estimated locally),9.09 per call) 
vTaskSwitchContext.part.0/146 (vTaskSwitchContext.part.0) @062d02a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:107374 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: vTaskSwitchContext/57 (107374 (estimated locally),0.24 per call) 
  Calls: 
xTaskResumeAll.part.0/137 (xTaskResumeAll.part.0) @062d0620
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: uxSchedulerSuspended/28 (read)uxSchedulerSuspended/28 (write)uxSchedulerSuspended/28 (read)uxCurrentNumberOfTasks/17 (read)xPendingReadyList/13 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)xPendingReadyList/13 (read)xPendedTicks/21 (read)xYieldPending/22 (write)xPendedTicks/21 (write)xYieldPending/22 (read)
  Referring: 
  Availability: local
  Function flags: count:472446400 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: xTaskResumeAll/46 (52886 (estimated locally),0.33 per call) 
  Calls: vPortEnterCritical/100 (472446400 (estimated locally),1.00 per call) prvResetNextTaskUnblockTime/77 (63154273 (estimated locally),0.13 per call) xTaskIncrementTick/56 (536870915 (estimated locally),1.14 per call) vPortExitCritical/101 (472446401 (estimated locally),1.00 per call) 
xTaskIncrementTick.part.0/135 (xTaskIncrementTick.part.0) @062d0540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: xTickCount/18 (read)xTickCount/18 (write)pxDelayedTaskList/11 (read)pxDelayedTaskList/11 (read)pxOverflowDelayedTaskList/12 (read)pxDelayedTaskList/11 (write)pxOverflowDelayedTaskList/12 (write)xNumOfOverflows/23 (read)xNumOfOverflows/23 (write)xNextTaskUnblockTime/25 (read)pxDelayedTaskList/11 (read)xNextTaskUnblockTime/25 (write)pxDelayedTaskList/11 (read)xNextTaskUnblockTime/25 (write)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxReadyTasksLists/8 (read)xYieldPending/22 (read)
  Referring: 
  Availability: local
  Function flags: count:320519 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: xTaskIncrementTick/56 (320520 (estimated locally),0.50 per call) 
  Calls: prvResetNextTaskUnblockTime/77 (52886 (estimated locally),0.17 per call) 
eTaskGetState.part.0/122 (eTaskGetState.part.0) @061749a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:566398813 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: eTaskGetState/35 (11759 (estimated locally),0.03 per call) 
  Calls: 
prvAddCurrentTaskToDelayedList.part.0/119 (prvAddCurrentTaskToDelayedList.part.0) @05ee7540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: xSuspendedTaskList/16 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)xSuspendedTaskList/16 (addr)xSuspendedTaskList/16 (read)xSuspendedTaskList/16 (write)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: prvAddCurrentTaskToDelayedList/94 (182536110 (estimated locally),0.17 per call) 
  Calls: 
prvInitialiseNewTask.isra.0/118 (prvInitialiseNewTask.isra.0) @05ee72a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:160260 (estimated locally) body local optimize_size
  Called by: xTaskCreate/29 (306987179 (estimated locally),0.29 per call) 
  Calls: pxPortInitialiseStack/99 (52886 (estimated locally),0.33 per call) memset/97 (52886 (estimated locally),0.33 per call) memset/97 (52886 (estimated locally),0.33 per call) vListInitialiseItem/98 (52886 (estimated locally),0.33 per call) vListInitialiseItem/98 (52886 (estimated locally),0.33 per call) memset/97 (160260 (estimated locally),1.00 per call) 
prvResetNextTaskUnblockTime.part.0/115 (prvResetNextTaskUnblockTime.part.0) @05edfe00
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: pxDelayedTaskList/11 (read)xNextTaskUnblockTime/25 (write)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: prvResetNextTaskUnblockTime/77 (536870912 (estimated locally),0.50 per call) 
  Calls: 
prvTaskIsTaskSuspended.part.0/114 (prvTaskIsTaskSuspended.part.0) @05e152a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: xPendingReadyList/13 (addr)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) first_run:1 body local split_part optimize_size
  Called by: prvTaskIsTaskSuspended/40 (75162 (estimated locally),0.21 per call) 
  Calls: 
strcpy/112 (strcpy) @06102000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: prvWriteNameToBuffer/83 (118111600 (estimated locally),1.00 per call) 
  Calls: 
sprintf/111 (sprintf) @060e1ee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskList/84 (955630226 (estimated locally),4.33 per call) 
  Calls: 
strlen/110 (strlen) @0608e9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskList/84 (955630226 (estimated locally),4.33 per call) xTaskGetHandle/52 (160260 (estimated locally),1.00 per call) prvWriteNameToBuffer/83 (118111600 (estimated locally),1.00 per call) 
  Calls: 
vPortEndScheduler/109 (vPortEndScheduler) @0608e000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskEndScheduler/44 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
xPortStartScheduler/108 (xPortStartScheduler) @05a5ac40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskStartScheduler/43 (80139 (estimated locally),0.20 per call) 
  Calls: 
xTimerCreateTimerTask/107 (xTimerCreateTimerTask) @05a5ab60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskStartScheduler/43 (80139 (estimated locally),0.20 per call) 
  Calls: 
vPortValidateInterruptPriority/106 (vPortValidateInterruptPriority) @05a43e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskGenericNotifyGiveFromISR/91 (52886 (estimated locally),0.23 per call) xTaskGenericNotifyFromISR/90 (52886 (estimated locally),0.23 per call) xTaskGetTickCountFromISR/48 (1073741824 (estimated locally),1.00 per call) xTaskResumeFromISR/42 (123389 (estimated locally),0.53 per call) uxTaskPriorityGetFromISR/37 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
vListInsert/105 (vListInsert) @05a437e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskPlaceOnEventList/58 (123389 (estimated locally),0.53 per call) prvAddCurrentTaskToDelayedList/94 (445602856 (estimated locally),0.41 per call) prvAddCurrentTaskToDelayedList/94 (445602856 (estimated locally),0.41 per call) 
  Calls: 
vListInsertEnd/104 (vListInsertEnd) @05a430e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskSuspend/39 (1431653 (estimated locally),1.00 per call) xTaskResumeFromISR/42 (20359 (estimated locally),0.09 per call) vTaskDelete/32 (429496 (estimated locally),0.30 per call) 
  Calls: 
uxListRemove/103 (uxListRemove) @05a43000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskPriorityDisinheritAfterTimeout/82 (2940 (estimated locally),0.01 per call) xTaskPriorityDisinherit/81 (5011 (estimated locally),0.02 per call) xTaskPriorityInherit/80 (65503620 (estimated locally),0.06 per call) vTaskSuspend/39 (765505 (estimated locally),0.53 per call) vTaskSuspend/39 (1431653 (estimated locally),1.00 per call) xTaskAbortDelay/55 (13354 (estimated locally),0.06 per call) xTaskAbortDelay/55 (24974 (estimated locally),0.11 per call) xTaskResumeFromISR/42 (41335 (estimated locally),0.18 per call) vTaskResume/41 (44208 (estimated locally),0.12 per call) vTaskPrioritySet/38 (6084 (estimated locally),0.04 per call) vTaskDelete/32 (765505 (estimated locally),0.53 per call) vTaskDelete/32 (1431653 (estimated locally),1.00 per call) prvAddCurrentTaskToDelayedList/94 (1073741823 (estimated locally),1.00 per call) prvCheckTasksWaitingTermination/71 (955630223 (estimated locally),8.09 per call) 
  Calls: 
vListInitialise/102 (vListInitialise) @0606eee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: prvInitialiseTaskLists/70 (178992762 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (178992762 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (178992762 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (178992762 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (178992762 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (894749063 (estimated locally),5.00 per call) 
  Calls: 
vPortExitCritical/101 (vPortExitCritical) @0606ed20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ulTaskGenericNotifyValueClear/93 (1073741824 (estimated locally),1.00 per call) xTaskGenericNotifyStateClear/92 (107374 (estimated locally),0.50 per call) xTaskGenericNotify/89 (33803 (estimated locally),0.16 per call) xTaskGenericNotifyWait/88 (52886 (estimated locally),0.33 per call) xTaskGenericNotifyWait/88 (52886 (estimated locally),0.33 per call) ulTaskGenericNotifyTake/87 (52886 (estimated locally),0.33 per call) ulTaskGenericNotifyTake/87 (52886 (estimated locally),0.33 per call) xTaskCheckForTimeOut/65 (123389 (estimated locally),0.37 per call) vTaskSetTimeOutState/63 (123389 (estimated locally),0.53 per call) vTaskSuspend/39 (472446 (estimated locally),0.33 per call) vTaskSuspend/39 (1431653 (estimated locally),1.00 per call) xTaskAbortDelay/55 (24974 (estimated locally),0.11 per call) xTaskResumeAll.part.0/137 (472446401 (estimated locally),1.00 per call) vTaskResume/41 (133963 (estimated locally),0.37 per call) vTaskPrioritySet/38 (52886 (estimated locally),0.33 per call) uxTaskPriorityGet/36 (1073741824 (estimated locally),1.00 per call) eTaskGetState/35 (133963 (estimated locally),0.37 per call) vTaskDelete/32 (1431653 (estimated locally),1.00 per call) prvCheckTasksWaitingTermination/71 (955630223 (estimated locally),8.09 per call) prvAddNewTaskToReadyList/31 (1073741823 (estimated locally),1.00 per call) 
  Calls: 
vPortEnterCritical/100 (vPortEnterCritical) @0606eb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: ulTaskGenericNotifyValueClear/93 (1073741824 (estimated locally),1.00 per call) xTaskGenericNotifyStateClear/92 (107374 (estimated locally),0.50 per call) xTaskGenericNotify/89 (57413 (estimated locally),0.27 per call) xTaskGenericNotifyWait/88 (52886 (estimated locally),0.33 per call) xTaskGenericNotifyWait/88 (52886 (estimated locally),0.33 per call) ulTaskGenericNotifyTake/87 (52886 (estimated locally),0.33 per call) ulTaskGenericNotifyTake/87 (52886 (estimated locally),0.33 per call) xTaskCheckForTimeOut/65 (123389 (estimated locally),0.37 per call) vTaskSetTimeOutState/63 (123389 (estimated locally),0.53 per call) vTaskSuspend/39 (472446 (estimated locally),0.33 per call) vTaskSuspend/39 (1431653 (estimated locally),1.00 per call) xTaskAbortDelay/55 (24974 (estimated locally),0.11 per call) xTaskResumeAll.part.0/137 (472446400 (estimated locally),1.00 per call) vTaskResume/41 (133963 (estimated locally),0.37 per call) vTaskPrioritySet/38 (52886 (estimated locally),0.33 per call) uxTaskPriorityGet/36 (1073741824 (estimated locally),1.00 per call) eTaskGetState/35 (133963 (estimated locally),0.37 per call) vTaskDelete/32 (1431653 (estimated locally),1.00 per call) prvCheckTasksWaitingTermination/71 (955630223 (estimated locally),8.09 per call) prvAddNewTaskToReadyList/31 (1073741821 (estimated locally),1.00 per call) 
  Calls: 
pxPortInitialiseStack/99 (pxPortInitialiseStack) @0606e8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: prvInitialiseNewTask.isra.0/118 (52886 (estimated locally),0.33 per call) 
  Calls: 
vListInitialiseItem/98 (vListInitialiseItem) @0606e7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: prvInitialiseNewTask.isra.0/118 (52886 (estimated locally),0.33 per call) prvInitialiseNewTask.isra.0/118 (52886 (estimated locally),0.33 per call) 
  Calls: 
memset/97 (memset) @0606e700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: prvInitialiseNewTask.isra.0/118 (52886 (estimated locally),0.33 per call) prvInitialiseNewTask.isra.0/118 (52886 (estimated locally),0.33 per call) prvInitialiseNewTask.isra.0/118 (160260 (estimated locally),1.00 per call) 
  Calls: 
vPortFree/96 (vPortFree) @0606e540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskList/84 (118111601 (estimated locally),0.53 per call) xTaskCreate/29 (100070816 (estimated locally),0.09 per call) prvDeleteTCB/76 (1073741824 (estimated locally),1.00 per call) prvDeleteTCB/76 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
pvPortMalloc/95 (pvPortMalloc) @0606e460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: vTaskList/84 (220893212 (estimated locally),1.00 per call) xTaskCreate/29 (574129754 (estimated locally),0.53 per call) xTaskCreate/29 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
prvAddCurrentTaskToDelayedList/94 (prvAddCurrentTaskToDelayedList) @0606e000
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: xTickCount/18 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxOverflowDelayedTaskList/12 (read)pxCurrentTCB/7 (read)pxDelayedTaskList/11 (read)pxCurrentTCB/7 (read)xNextTaskUnblockTime/25 (read)xNextTaskUnblockTime/25 (write)
  Referring: 
  Availability: local
  Function flags: count:1073741823 (estimated locally) body local optimize_size
  Called by: xTaskGenericNotifyWait/88 (11519 (estimated locally),0.07 per call) ulTaskGenericNotifyTake/87 (8726 (estimated locally),0.05 per call) vTaskPlaceOnEventListRestricted/60 (250539 (estimated locally),0.70 per call) vTaskPlaceOnUnorderedEventList/59 (52886 (estimated locally),0.23 per call) vTaskPlaceOnEventList/58 (123389 (estimated locally),0.53 per call) vTaskDelay/34 (52886 (estimated locally),0.17 per call) xTaskDelayUntil/33 (17717 (estimated locally),0.06 per call) 
  Calls: vListInsert/105 (445602856 (estimated locally),0.41 per call) vListInsert/105 (445602856 (estimated locally),0.41 per call) prvAddCurrentTaskToDelayedList.part.0/119 (182536110 (estimated locally),0.17 per call) uxListRemove/103 (1073741823 (estimated locally),1.00 per call) 
ulTaskGenericNotifyValueClear/93 (ulTaskGenericNotifyValueClear) @06034540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (1073741824 (estimated locally),1.00 per call) vPortEnterCritical/100 (1073741824 (estimated locally),1.00 per call) 
xTaskGenericNotifyStateClear/92 (xTaskGenericNotifyStateClear) @06034d20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:214748 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (107374 (estimated locally),0.50 per call) vPortEnterCritical/100 (107374 (estimated locally),0.50 per call) 
vTaskGenericNotifyGiveFromISR/91 (vTaskGenericNotifyGiveFromISR) @060348c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)xPendingReadyList/13 (read)xPendingReadyList/13 (addr)xPendingReadyList/13 (read)xPendingReadyList/13 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:228942 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortValidateInterruptPriority/106 (52886 (estimated locally),0.23 per call) 
xTaskGenericNotifyFromISR/90 (xTaskGenericNotifyFromISR) @06034460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xTickCount/18 (read)uxSchedulerSuspended/28 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)xPendingReadyList/13 (read)xPendingReadyList/13 (addr)xPendingReadyList/13 (read)xPendingReadyList/13 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:228942 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortValidateInterruptPriority/106 (52886 (estimated locally),0.23 per call) 
xTaskGenericNotify/89 (xTaskGenericNotify) @06026e00
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xTickCount/18 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:214748 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (33803 (estimated locally),0.16 per call) vPortEnterCritical/100 (57413 (estimated locally),0.27 per call) 
xTaskGenericNotifyWait/88 (xTaskGenericNotifyWait) @06026d20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (52886 (estimated locally),0.33 per call) vPortEnterCritical/100 (52886 (estimated locally),0.33 per call) vPortExitCritical/101 (52886 (estimated locally),0.33 per call) prvAddCurrentTaskToDelayedList/94 (11519 (estimated locally),0.07 per call) vPortEnterCritical/100 (52886 (estimated locally),0.33 per call) 
ulTaskGenericNotifyTake/87 (ulTaskGenericNotifyTake) @060268c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (52886 (estimated locally),0.33 per call) vPortEnterCritical/100 (52886 (estimated locally),0.33 per call) vPortExitCritical/101 (52886 (estimated locally),0.33 per call) prvAddCurrentTaskToDelayedList/94 (8726 (estimated locally),0.05 per call) vPortEnterCritical/100 (52886 (estimated locally),0.33 per call) 
pvTaskIncrementMutexHeldCount/86 (pvTaskIncrementMutexHeldCount) @06026460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
uxTaskResetEventItemValue/85 (uxTaskResetEventItemValue) @060261c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
vTaskList/84 (vTaskList) @06011c40
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxCurrentNumberOfTasks/17 (read)uxCurrentNumberOfTasks/17 (read)CSWTCH.225/163 (read)
  Referring: 
  Availability: available
  Function flags: count:220893212 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortFree/96 (118111601 (estimated locally),0.53 per call) strlen/110 (955630226 (estimated locally),4.33 per call) sprintf/111 (955630226 (estimated locally),4.33 per call) prvWriteNameToBuffer/83 (955630226 (estimated locally),4.33 per call) uxTaskGetSystemState/53 (118111600 (estimated locally),0.53 per call) pvPortMalloc/95 (220893212 (estimated locally),1.00 per call) 
prvWriteNameToBuffer/83 (prvWriteNameToBuffer) @06011540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:118111600 (estimated locally) body local optimize_size
  Called by: vTaskList/84 (955630226 (estimated locally),4.33 per call) 
  Calls: strlen/110 (118111600 (estimated locally),1.00 per call) strcpy/112 (118111600 (estimated locally),1.00 per call) 
vTaskPriorityDisinheritAfterTimeout/82 (vTaskPriorityDisinheritAfterTimeout) @06011000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxReadyTasksLists/8 (addr)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)
  Referring: 
  Availability: available
  Function flags: count:306783 (estimated locally) body optimize_size
  Called by: 
  Calls: uxListRemove/103 (2940 (estimated locally),0.01 per call) 
xTaskPriorityDisinherit/81 (xTaskPriorityDisinherit) @06011b60
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)
  Referring: 
  Availability: available
  Function flags: count:219131 (estimated locally) body optimize_size
  Called by: 
  Calls: uxListRemove/103 (5011 (estimated locally),0.02 per call) 
xTaskPriorityInherit/80 (xTaskPriorityInherit) @06011700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxReadyTasksLists/8 (addr)pxCurrentTCB/7 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: uxListRemove/103 (65503620 (estimated locally),0.06 per call) 
xTaskGetSchedulerState/79 (xTaskGetSchedulerState) @06011460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xSchedulerRunning/20 (read)uxSchedulerSuspended/28 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
xTaskGetCurrentTaskHandle/78 (xTaskGetCurrentTaskHandle) @060111c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
prvResetNextTaskUnblockTime/77 (prvResetNextTaskUnblockTime) @05fffc40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: pxDelayedTaskList/11 (read)xNextTaskUnblockTime/25 (write)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: vTaskSuspend/39 (472446 (estimated locally),0.33 per call) xTaskResumeAll.part.0/137 (63154273 (estimated locally),0.13 per call) xTaskIncrementTick.part.0/135 (52886 (estimated locally),0.17 per call) vTaskDelete/32 (1002157 (estimated locally),0.70 per call) 
  Calls: prvResetNextTaskUnblockTime.part.0/115 (536870912 (estimated locally),0.50 per call) 
prvDeleteTCB/76 (prvDeleteTCB) @05fff380
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: vTaskDelete/32 (1002157 (estimated locally),0.70 per call) prvCheckTasksWaitingTermination/71 (955630223 (estimated locally),8.09 per call) 
  Calls: vPortFree/96 (1073741824 (estimated locally),1.00 per call) vPortFree/96 (1073741824 (estimated locally),1.00 per call) 
uxTaskGetStackHighWaterMark/75 (uxTaskGetStackHighWaterMark) @05fffee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: prvTaskCheckFreeStackSpace/74 (1073741824 (estimated locally),1.00 per call) 
prvTaskCheckFreeStackSpace/74 (prvTaskCheckFreeStackSpace) @05fffb60
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:118111600 (estimated locally) body local optimize_size
  Called by: uxTaskGetStackHighWaterMark/75 (1073741824 (estimated locally),1.00 per call) vTaskGetInfo/72 (354334802 (estimated locally),0.33 per call) 
  Calls: 
prvListTasksWithinSingleList/73 (prvListTasksWithinSingleList) @05fff8c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:236223200 (estimated locally) body local optimize_size
  Called by: uxTaskGetSystemState/53 (214748365 (estimated locally),0.50 per call) uxTaskGetSystemState/53 (214748365 (estimated locally),0.50 per call) uxTaskGetSystemState/53 (214748365 (estimated locally),0.50 per call) uxTaskGetSystemState/53 (214748365 (estimated locally),0.50 per call) uxTaskGetSystemState/53 (1073741824 (estimated locally),2.50 per call) 
  Calls: prvListTasksWithinSingleList.part.0/158 (118111600 (estimated locally),0.50 per call) 
vTaskGetInfo/72 (vTaskGetInfo) @05fff620
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741823 (estimated locally) body optimize_size
  Called by: prvListTasksWithinSingleList.part.0/158 (1073741824 (estimated locally),9.09 per call) 
  Calls: prvTaskCheckFreeStackSpace/74 (354334802 (estimated locally),0.33 per call) eTaskGetState/35 (217325345 (estimated locally),0.20 per call) xTaskResumeAll/46 (121337087 (estimated locally),0.11 per call) vTaskSuspendAll/45 (121337087 (estimated locally),0.11 per call) 
prvCheckTasksWaitingTermination/71 (prvCheckTasksWaitingTermination) @05fff2a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: xTasksWaitingTermination/14 (read)uxCurrentNumberOfTasks/17 (read)uxCurrentNumberOfTasks/17 (write)uxDeletedTasksWaitingCleanUp/15 (read)uxDeletedTasksWaitingCleanUp/15 (write)uxDeletedTasksWaitingCleanUp/15 (read)
  Referring: 
  Availability: local
  Function flags: count:118111600 (estimated locally) body local optimize_size
  Called by: prvIdleTask/69 (1073741824 (estimated locally),16949.09 per call) 
  Calls: prvDeleteTCB/76 (955630223 (estimated locally),8.09 per call) vPortExitCritical/101 (955630223 (estimated locally),8.09 per call) uxListRemove/103 (955630223 (estimated locally),8.09 per call) vPortEnterCritical/100 (955630223 (estimated locally),8.09 per call) 
prvInitialiseTaskLists/70 (prvInitialiseTaskLists) @05ffbee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: pxReadyTasksLists/8 (addr)xDelayedTaskList1/9 (addr)xDelayedTaskList2/10 (addr)xPendingReadyList/13 (addr)xTasksWaitingTermination/14 (addr)xSuspendedTaskList/16 (addr)pxDelayedTaskList/11 (write)xDelayedTaskList1/9 (addr)pxOverflowDelayedTaskList/12 (write)xDelayedTaskList2/10 (addr)
  Referring: 
  Availability: local
  Function flags: count:178992762 (estimated locally) body local optimize_size
  Called by: prvAddNewTaskToReadyList/31 (65197603 (estimated locally),0.06 per call) 
  Calls: vListInitialise/102 (178992762 (estimated locally),1.00 per call) vListInitialise/102 (178992762 (estimated locally),1.00 per call) vListInitialise/102 (178992762 (estimated locally),1.00 per call) vListInitialise/102 (178992762 (estimated locally),1.00 per call) vListInitialise/102 (178992762 (estimated locally),1.00 per call) vListInitialise/102 (894749063 (estimated locally),5.00 per call) 
prvIdleTask/69 (prvIdleTask) @05ffb9a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  Address is taken.
  References: pxReadyTasksLists/8 (read)
  Referring: vTaskStartScheduler/43 (addr)
  Availability: available
  Function flags: count:63351 (estimated locally) body executed_once optimize_size
  Called by: 
  Calls: prvCheckTasksWaitingTermination/71 (1073741824 (estimated locally),16949.09 per call) 
vTaskSetTaskNumber/68 (vTaskSetTaskNumber) @05ffbe00
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
uxTaskGetTaskNumber/67 (uxTaskGetTaskNumber) @05ffbb60
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
vTaskMissedYield/66 (vTaskMissedYield) @05ffb8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
xTaskCheckForTimeOut/65 (xTaskCheckForTimeOut) @05ffb620
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xTickCount/18 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)xNumOfOverflows/23 (read)
  Referring: 
  Availability: available
  Function flags: count:329661 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (123389 (estimated locally),0.37 per call) vTaskInternalSetTimeOutState/64 (9003 (estimated locally),0.03 per call) vPortEnterCritical/100 (123389 (estimated locally),0.37 per call) 
vTaskInternalSetTimeOutState/64 (vTaskInternalSetTimeOutState) @05ffb1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xNumOfOverflows/23 (read)xTickCount/18 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: xTaskCheckForTimeOut/65 (9003 (estimated locally),0.03 per call) 
  Calls: 
vTaskSetTimeOutState/63 (vTaskSetTimeOutState) @05fb5b60
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xNumOfOverflows/23 (read)xTickCount/18 (read)
  Referring: 
  Availability: available
  Function flags: count:230763 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (123389 (estimated locally),0.53 per call) vPortEnterCritical/100 (123389 (estimated locally),0.53 per call) 
vTaskRemoveFromUnorderedEventList/62 (vTaskRemoveFromUnorderedEventList) @05fb5ee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:214748 (estimated locally) body optimize_size
  Called by: 
  Calls: 
xTaskRemoveFromEventList/61 (xTaskRemoveFromEventList) @05fb5a80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)xPendingReadyList/13 (read)xPendingReadyList/13 (addr)xPendingReadyList/13 (read)xPendingReadyList/13 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:357913 (estimated locally) body optimize_size
  Called by: 
  Calls: 
vTaskPlaceOnEventListRestricted/60 (vTaskPlaceOnEventListRestricted) @05fb5620
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:357913 (estimated locally) body optimize_size
  Called by: 
  Calls: prvAddCurrentTaskToDelayedList/94 (250539 (estimated locally),0.70 per call) 
vTaskPlaceOnUnorderedEventList/59 (vTaskPlaceOnUnorderedEventList) @05fb52a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:228942 (estimated locally) body optimize_size
  Called by: 
  Calls: prvAddCurrentTaskToDelayedList/94 (52886 (estimated locally),0.23 per call) 
vTaskPlaceOnEventList/58 (vTaskPlaceOnEventList) @05f46a80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:230763 (estimated locally) body optimize_size
  Called by: 
  Calls: prvAddCurrentTaskToDelayedList/94 (123389 (estimated locally),0.53 per call) vListInsert/105 (123389 (estimated locally),0.53 per call) 
vTaskSwitchContext/57 (vTaskSwitchContext) @05f46e00
  Type: function definition analyzed
  Visibility: force_output externally_visible public
  References: uxSchedulerSuspended/28 (read)xYieldPending/22 (write)xYieldPending/22 (write)uxTopReadyPriority/19 (read)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (write)pxReadyTasksLists/8 (read)pxCurrentTCB/7 (write)uxTopReadyPriority/19 (write)
  Referring: 
  Availability: available
  Function flags: count:441995 (estimated locally) body optimize_size
  Called by: vTaskSuspend/39 (104969 (estimated locally),0.07 per call) 
  Calls: vTaskSwitchContext.part.0/146 (107374 (estimated locally),0.24 per call) 
xTaskIncrementTick/56 (xTaskIncrementTick) @05f469a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)xPendedTicks/21 (read)xPendedTicks/21 (write)
  Referring: 
  Availability: available
  Function flags: count:641039 (estimated locally) body optimize_size
  Called by: xTaskResumeAll.part.0/137 (536870915 (estimated locally),1.14 per call) 
  Calls: xTaskIncrementTick.part.0/135 (320520 (estimated locally),0.50 per call) 
xTaskAbortDelay/55 (xTaskAbortDelay) @05f46380
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)xYieldPending/22 (write)
  Referring: 
  Availability: available
  Function flags: count:230763 (estimated locally) body optimize_size
  Called by: 
  Calls: xTaskResumeAll/46 (123389 (estimated locally),0.53 per call) vPortExitCritical/101 (24974 (estimated locally),0.11 per call) uxListRemove/103 (13354 (estimated locally),0.06 per call) vPortEnterCritical/100 (24974 (estimated locally),0.11 per call) uxListRemove/103 (24974 (estimated locally),0.11 per call) eTaskGetState/35 (123389 (estimated locally),0.53 per call) vTaskSuspendAll/45 (123389 (estimated locally),0.53 per call) 
xTaskCatchUpTicks/54 (xTaskCatchUpTicks) @05f46000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)xPendedTicks/21 (read)xPendedTicks/21 (write)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: 
  Calls: xTaskResumeAll/46 (52886 (estimated locally),0.33 per call) vTaskSuspendAll/45 (52886 (estimated locally),0.33 per call) 
uxTaskGetSystemState/53 (uxTaskGetSystemState) @05f3b7e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxCurrentNumberOfTasks/17 (read)pxReadyTasksLists/8 (addr)pxDelayedTaskList/11 (read)pxOverflowDelayedTaskList/12 (read)xTasksWaitingTermination/14 (addr)xSuspendedTaskList/16 (addr)
  Referring: 
  Availability: available
  Function flags: count:429496728 (estimated locally) body optimize_size
  Called by: vTaskList/84 (118111600 (estimated locally),0.53 per call) 
  Calls: xTaskResumeAll/46 (429496729 (estimated locally),1.00 per call) prvListTasksWithinSingleList/73 (214748365 (estimated locally),0.50 per call) prvListTasksWithinSingleList/73 (214748365 (estimated locally),0.50 per call) prvListTasksWithinSingleList/73 (214748365 (estimated locally),0.50 per call) prvListTasksWithinSingleList/73 (214748365 (estimated locally),0.50 per call) prvListTasksWithinSingleList/73 (1073741824 (estimated locally),2.50 per call) vTaskSuspendAll/45 (429496728 (estimated locally),1.00 per call) 
xTaskGetHandle/52 (xTaskGetHandle) @05f3b2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxReadyTasksLists/8 (addr)pxDelayedTaskList/11 (read)pxOverflowDelayedTaskList/12 (read)xSuspendedTaskList/16 (addr)xTasksWaitingTermination/14 (addr)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: 
  Calls: xTaskResumeAll/46 (52886 (estimated locally),0.33 per call) prvSearchForNameWithinSingleList/51 (9218 (estimated locally),0.06 per call) prvSearchForNameWithinSingleList/51 (9218 (estimated locally),0.06 per call) prvSearchForNameWithinSingleList/51 (9218 (estimated locally),0.06 per call) prvSearchForNameWithinSingleList/51 (9218 (estimated locally),0.06 per call) prvSearchForNameWithinSingleList/51 (216745 (estimated locally),1.35 per call) vTaskSuspendAll/45 (52886 (estimated locally),0.33 per call) strlen/110 (160260 (estimated locally),1.00 per call) 
prvSearchForNameWithinSingleList/51 (prvSearchForNameWithinSingleList) @05f3be00
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:25274560 (estimated locally) body local optimize_size
  Called by: xTaskGetHandle/52 (9218 (estimated locally),0.06 per call) xTaskGetHandle/52 (9218 (estimated locally),0.06 per call) xTaskGetHandle/52 (9218 (estimated locally),0.06 per call) xTaskGetHandle/52 (9218 (estimated locally),0.06 per call) xTaskGetHandle/52 (216745 (estimated locally),1.35 per call) 
  Calls: 
pcTaskGetName/50 (pcTaskGetName) @05f3bb60
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:357913 (estimated locally) body optimize_size
  Called by: 
  Calls: 
uxTaskGetNumberOfTasks/49 (uxTaskGetNumberOfTasks) @05f3b700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxCurrentNumberOfTasks/17 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
xTaskGetTickCountFromISR/48 (xTaskGetTickCountFromISR) @05f3b460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xTickCount/18 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortValidateInterruptPriority/106 (1073741824 (estimated locally),1.00 per call) 
xTaskGetTickCount/47 (xTaskGetTickCount) @05f3b1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xTickCount/18 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
xTaskResumeAll/46 (xTaskResumeAll) @05f28e00
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: uxTaskGetSystemState/53 (429496729 (estimated locally),1.00 per call) vTaskGetInfo/72 (121337087 (estimated locally),0.11 per call) xTaskAbortDelay/55 (123389 (estimated locally),0.53 per call) xTaskCatchUpTicks/54 (52886 (estimated locally),0.33 per call) xTaskGetHandle/52 (52886 (estimated locally),0.33 per call) vTaskDelay/34 (52886 (estimated locally),0.17 per call) xTaskDelayUntil/33 (35433 (estimated locally),0.12 per call) 
  Calls: xTaskResumeAll.part.0/137 (52886 (estimated locally),0.33 per call) 
vTaskSuspendAll/45 (vTaskSuspendAll) @05f28d20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)uxSchedulerSuspended/28 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: uxTaskGetSystemState/53 (429496728 (estimated locally),1.00 per call) vTaskGetInfo/72 (121337087 (estimated locally),0.11 per call) xTaskAbortDelay/55 (123389 (estimated locally),0.53 per call) xTaskCatchUpTicks/54 (52886 (estimated locally),0.33 per call) xTaskGetHandle/52 (52886 (estimated locally),0.33 per call) vTaskDelay/34 (52886 (estimated locally),0.17 per call) xTaskDelayUntil/33 (35433 (estimated locally),0.12 per call) 
  Calls: 
vTaskEndScheduler/44 (vTaskEndScheduler) @05f28a80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: xSchedulerRunning/20 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortEndScheduler/109 (1073741824 (estimated locally),1.00 per call) 
vTaskStartScheduler/43 (vTaskStartScheduler) @05f287e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: prvIdleTask/69 (addr)xIdleTaskHandle/26 (addr)xNextTaskUnblockTime/25 (write)xSchedulerRunning/20 (write)xTickCount/18 (write)uxTopUsedPriority/27 (read)
  Referring: 
  Availability: available
  Function flags: count:395945 (estimated locally) body optimize_size
  Called by: 
  Calls: xPortStartScheduler/108 (80139 (estimated locally),0.20 per call) xTimerCreateTimerTask/107 (80139 (estimated locally),0.20 per call) xTaskCreate/29 (395945 (estimated locally),1.00 per call) 
xTaskResumeFromISR/42 (xTaskResumeFromISR) @05f28540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)pxCurrentTCB/7 (read)xYieldPending/22 (write)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)xPendingReadyList/13 (addr)
  Referring: 
  Availability: available
  Function flags: count:230763 (estimated locally) body optimize_size
  Called by: 
  Calls: vListInsertEnd/104 (20359 (estimated locally),0.09 per call) uxListRemove/103 (41335 (estimated locally),0.18 per call) prvTaskIsTaskSuspended/40 (123389 (estimated locally),0.53 per call) vPortValidateInterruptPriority/106 (123389 (estimated locally),0.53 per call) 
vTaskResume/41 (vTaskResume) @05f281c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:357913 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (133963 (estimated locally),0.37 per call) uxListRemove/103 (44208 (estimated locally),0.12 per call) prvTaskIsTaskSuspended/40 (133963 (estimated locally),0.37 per call) vPortEnterCritical/100 (133963 (estimated locally),0.37 per call) 
prvTaskIsTaskSuspended/40 (prvTaskIsTaskSuspended) @05f1a9a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: xSuspendedTaskList/16 (addr)
  Referring: 
  Availability: local
  Function flags: count:357913 (estimated locally) body local optimize_size
  Called by: xTaskResumeFromISR/42 (123389 (estimated locally),0.53 per call) vTaskResume/41 (133963 (estimated locally),0.37 per call) 
  Calls: prvTaskIsTaskSuspended.part.0/114 (75162 (estimated locally),0.21 per call) 
vTaskSuspend/39 (vTaskSuspend) @05f1ae00
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)xSuspendedTaskList/16 (addr)xSchedulerRunning/20 (read)pxCurrentTCB/7 (read)xSchedulerRunning/20 (read)uxSchedulerSuspended/28 (read)xSuspendedTaskList/16 (read)uxCurrentNumberOfTasks/17 (read)pxCurrentTCB/7 (write)
  Referring: 
  Availability: available
  Function flags: count:1431653 (estimated locally) body optimize_size
  Called by: 
  Calls: vTaskSwitchContext/57 (104969 (estimated locally),0.07 per call) vPortExitCritical/101 (472446 (estimated locally),0.33 per call) prvResetNextTaskUnblockTime/77 (472446 (estimated locally),0.33 per call) vPortEnterCritical/100 (472446 (estimated locally),0.33 per call) vPortExitCritical/101 (1431653 (estimated locally),1.00 per call) vListInsertEnd/104 (1431653 (estimated locally),1.00 per call) uxListRemove/103 (765505 (estimated locally),0.53 per call) uxListRemove/103 (1431653 (estimated locally),1.00 per call) vPortEnterCritical/100 (1431653 (estimated locally),1.00 per call) 
vTaskPrioritySet/38 (vTaskPrioritySet) @05f1a8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (read)pxReadyTasksLists/8 (addr)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)
  Referring: 
  Availability: available
  Function flags: count:160260 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (52886 (estimated locally),0.33 per call) uxListRemove/103 (6084 (estimated locally),0.04 per call) vPortEnterCritical/100 (52886 (estimated locally),0.33 per call) 
uxTaskPriorityGetFromISR/37 (uxTaskPriorityGetFromISR) @05f1a380
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortValidateInterruptPriority/106 (1073741824 (estimated locally),1.00 per call) 
uxTaskPriorityGet/36 (uxTaskPriorityGet) @05f1a000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (1073741824 (estimated locally),1.00 per call) vPortEnterCritical/100 (1073741824 (estimated locally),1.00 per call) 
eTaskGetState/35 (eTaskGetState) @05f052a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)pxDelayedTaskList/11 (read)pxOverflowDelayedTaskList/12 (read)xSuspendedTaskList/16 (addr)xTasksWaitingTermination/14 (addr)
  Referring: 
  Availability: available
  Function flags: count:357913 (estimated locally) body optimize_size
  Called by: vTaskGetInfo/72 (217325345 (estimated locally),0.20 per call) xTaskAbortDelay/55 (123389 (estimated locally),0.53 per call) 
  Calls: eTaskGetState.part.0/122 (11759 (estimated locally),0.03 per call) vPortExitCritical/101 (133963 (estimated locally),0.37 per call) vPortEnterCritical/100 (133963 (estimated locally),0.37 per call) 
vTaskDelay/34 (vTaskDelay) @05f05c40
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)
  Referring: 
  Availability: available
  Function flags: count:320519 (estimated locally) body optimize_size
  Called by: 
  Calls: xTaskResumeAll/46 (52886 (estimated locally),0.17 per call) prvAddCurrentTaskToDelayedList/94 (52886 (estimated locally),0.17 per call) vTaskSuspendAll/45 (52886 (estimated locally),0.17 per call) 
xTaskDelayUntil/33 (xTaskDelayUntil) @05f057e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uxSchedulerSuspended/28 (read)xTickCount/18 (read)
  Referring: 
  Availability: available
  Function flags: count:306783 (estimated locally) body optimize_size
  Called by: 
  Calls: xTaskResumeAll/46 (35433 (estimated locally),0.12 per call) prvAddCurrentTaskToDelayedList/94 (17717 (estimated locally),0.06 per call) vTaskSuspendAll/45 (35433 (estimated locally),0.12 per call) 
vTaskDelete/32 (vTaskDelete) @05f051c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: pxCurrentTCB/7 (read)uxTaskNumber/24 (read)uxTaskNumber/24 (write)pxCurrentTCB/7 (read)xTasksWaitingTermination/14 (addr)uxDeletedTasksWaitingCleanUp/15 (read)uxDeletedTasksWaitingCleanUp/15 (write)uxCurrentNumberOfTasks/17 (read)uxCurrentNumberOfTasks/17 (write)xSchedulerRunning/20 (read)pxCurrentTCB/7 (read)uxSchedulerSuspended/28 (read)
  Referring: 
  Availability: available
  Function flags: count:1431653 (estimated locally) body optimize_size
  Called by: 
  Calls: vPortExitCritical/101 (1431653 (estimated locally),1.00 per call) prvResetNextTaskUnblockTime/77 (1002157 (estimated locally),0.70 per call) prvDeleteTCB/76 (1002157 (estimated locally),0.70 per call) vListInsertEnd/104 (429496 (estimated locally),0.30 per call) uxListRemove/103 (765505 (estimated locally),0.53 per call) uxListRemove/103 (1431653 (estimated locally),1.00 per call) vPortEnterCritical/100 (1431653 (estimated locally),1.00 per call) 
prvAddNewTaskToReadyList/31 (prvAddNewTaskToReadyList) @05ef3540
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: uxCurrentNumberOfTasks/17 (read)uxCurrentNumberOfTasks/17 (write)pxCurrentTCB/7 (read)pxCurrentTCB/7 (write)uxCurrentNumberOfTasks/17 (read)xSchedulerRunning/20 (read)pxCurrentTCB/7 (read)pxCurrentTCB/7 (write)uxTaskNumber/24 (read)uxTaskNumber/24 (write)uxTopReadyPriority/19 (read)uxTopReadyPriority/19 (write)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (addr)pxReadyTasksLists/8 (read)pxReadyTasksLists/8 (write)xSchedulerRunning/20 (read)pxCurrentTCB/7 (read)
  Referring: 
  Availability: local
  Function flags: count:1073741821 (estimated locally) body local optimize_size
  Called by: xTaskCreate/29 (306987179 (estimated locally),0.29 per call) 
  Calls: vPortExitCritical/101 (1073741823 (estimated locally),1.00 per call) prvInitialiseTaskLists/70 (65197603 (estimated locally),0.06 per call) vPortEnterCritical/100 (1073741821 (estimated locally),1.00 per call) 
xTaskCreate/29 (xTaskCreate) @05ef3700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: vTaskStartScheduler/43 (395945 (estimated locally),1.00 per call) 
  Calls: prvAddNewTaskToReadyList/31 (306987179 (estimated locally),0.29 per call) prvInitialiseNewTask.isra.0/118 (306987179 (estimated locally),0.29 per call) vPortFree/96 (100070816 (estimated locally),0.09 per call) pvPortMalloc/95 (574129754 (estimated locally),0.53 per call) pvPortMalloc/95 (1073741824 (estimated locally),1.00 per call) 
uxSchedulerSuspended/28 (uxSchedulerSuspended) @05eed5a0
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskGetSchedulerState/79 (read)xTaskIncrementTick/56 (read)xTaskResumeAll/46 (read)xTaskCatchUpTicks/54 (read)xTaskGenericNotifyFromISR/90 (read)vTaskRemoveFromUnorderedEventList/62 (read)vTaskDelete/32 (read)vTaskPlaceOnUnorderedEventList/59 (read)xTaskRemoveFromEventList/61 (read)vTaskSuspendAll/45 (read)vTaskSuspendAll/45 (write)xTaskDelayUntil/33 (read)xTaskResumeFromISR/42 (read)vTaskDelay/34 (read)vTaskSwitchContext/57 (read)vTaskSuspend/39 (read)xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (write)vTaskGenericNotifyGiveFromISR/91 (read)
  Availability: available
  Varpool flags: initialized
uxTopUsedPriority/27 (uxTopUsedPriority) @05eed510
  Type: variable definition analyzed
  Visibility: force_output externally_visible public
  References: 
  Referring: vTaskStartScheduler/43 (read)
  Availability: available
  Varpool flags: initialized read-only
xIdleTaskHandle/26 (xIdleTaskHandle) @05eed480
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: vTaskStartScheduler/43 (addr)
  Availability: available
  Varpool flags: initialized
xNextTaskUnblockTime/25 (xNextTaskUnblockTime) @05eed3f0
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: prvResetNextTaskUnblockTime.part.0/115 (write)prvAddCurrentTaskToDelayedList/94 (write)prvAddCurrentTaskToDelayedList/94 (read)vTaskStartScheduler/43 (write)prvResetNextTaskUnblockTime/77 (write)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (write)xTaskIncrementTick.part.0/135 (write)
  Availability: available
  Varpool flags: initialized
uxTaskNumber/24 (uxTaskNumber) @05eed360
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: prvAddNewTaskToReadyList/31 (write)prvAddNewTaskToReadyList/31 (read)vTaskDelete/32 (read)vTaskDelete/32 (write)
  Availability: available
  Varpool flags: initialized
xNumOfOverflows/23 (xNumOfOverflows) @05eed318
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskIncrementTick.part.0/135 (write)vTaskSetTimeOutState/63 (read)vTaskInternalSetTimeOutState/64 (read)xTaskIncrementTick.part.0/135 (read)xTaskCheckForTimeOut/65 (read)
  Availability: available
  Varpool flags: initialized
xYieldPending/22 (xYieldPending) @05eed2d0
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: vTaskMissedYield/66 (write)xTaskRemoveFromEventList/61 (write)vTaskRemoveFromUnorderedEventList/62 (write)xTaskResumeFromISR/42 (write)xTaskIncrementTick.part.0/135 (read)xTaskGenericNotifyFromISR/90 (write)xTaskResumeAll.part.0/137 (write)xTaskResumeAll.part.0/137 (read)xTaskAbortDelay/55 (write)vTaskSwitchContext/57 (write)xTaskResumeAll.part.0/137 (write)vTaskSwitchContext/57 (write)vTaskGenericNotifyGiveFromISR/91 (write)
  Availability: available
  Varpool flags: initialized
xPendedTicks/21 (xPendedTicks) @05eed240
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (write)xTaskIncrementTick/56 (read)xTaskIncrementTick/56 (write)xTaskCatchUpTicks/54 (read)xTaskCatchUpTicks/54 (write)
  Availability: available
  Varpool flags: initialized
xSchedulerRunning/20 (xSchedulerRunning) @05eed1b0
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: vTaskDelete/32 (read)vTaskEndScheduler/44 (write)vTaskSuspend/39 (read)prvAddNewTaskToReadyList/31 (read)vTaskStartScheduler/43 (write)prvAddNewTaskToReadyList/31 (read)vTaskSuspend/39 (read)xTaskGetSchedulerState/79 (read)
  Availability: available
  Varpool flags: initialized
uxTopReadyPriority/19 (uxTopReadyPriority) @05eed120
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskGenericNotify/89 (read)xTaskGenericNotify/89 (write)xTaskGenericNotifyFromISR/90 (read)xTaskGenericNotifyFromISR/90 (write)prvAddNewTaskToReadyList/31 (read)prvAddNewTaskToReadyList/31 (write)vTaskPrioritySet/38 (read)vTaskPrioritySet/38 (write)xTaskResumeFromISR/42 (read)xTaskResumeFromISR/42 (write)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (write)vTaskResume/41 (read)vTaskResume/41 (write)xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (write)xTaskAbortDelay/55 (read)xTaskAbortDelay/55 (write)vTaskSwitchContext/57 (read)vTaskSwitchContext/57 (write)xTaskRemoveFromEventList/61 (read)xTaskRemoveFromEventList/61 (write)vTaskRemoveFromUnorderedEventList/62 (read)vTaskRemoveFromUnorderedEventList/62 (write)xTaskPriorityInherit/80 (read)xTaskPriorityInherit/80 (write)xTaskPriorityDisinherit/81 (read)xTaskPriorityDisinherit/81 (write)vTaskPriorityDisinheritAfterTimeout/82 (read)vTaskPriorityDisinheritAfterTimeout/82 (write)vTaskGenericNotifyGiveFromISR/91 (read)vTaskGenericNotifyGiveFromISR/91 (write)
  Availability: available
  Varpool flags: initialized
xTickCount/18 (xTickCount) @05eed0d8
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskGetTickCountFromISR/48 (read)xTaskCheckForTimeOut/65 (read)xTaskGenericNotify/89 (read)prvAddCurrentTaskToDelayedList/94 (read)vTaskStartScheduler/43 (write)vTaskInternalSetTimeOutState/64 (read)xTaskGetTickCount/47 (read)xTaskIncrementTick.part.0/135 (write)xTaskDelayUntil/33 (read)vTaskSetTimeOutState/63 (read)xTaskIncrementTick.part.0/135 (read)xTaskGenericNotifyFromISR/90 (read)
  Availability: available
  Varpool flags: initialized
uxCurrentNumberOfTasks/17 (uxCurrentNumberOfTasks) @05eed090
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskResumeAll.part.0/137 (read)prvCheckTasksWaitingTermination/71 (read)vTaskSuspend/39 (read)prvAddNewTaskToReadyList/31 (write)prvAddNewTaskToReadyList/31 (read)uxTaskGetNumberOfTasks/49 (read)vTaskDelete/32 (read)uxTaskGetSystemState/53 (read)vTaskDelete/32 (write)prvCheckTasksWaitingTermination/71 (write)prvAddNewTaskToReadyList/31 (read)vTaskList/84 (read)vTaskList/84 (read)
  Availability: available
  Varpool flags: initialized
xSuspendedTaskList/16 (xSuspendedTaskList) @05ee9f78
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: vTaskSuspend/39 (read)eTaskGetState/35 (addr)xTaskGetHandle/52 (addr)prvAddCurrentTaskToDelayedList.part.0/119 (write)prvTaskIsTaskSuspended/40 (addr)prvInitialiseTaskLists/70 (addr)prvAddCurrentTaskToDelayedList.part.0/119 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)prvAddCurrentTaskToDelayedList.part.0/119 (addr)vTaskSuspend/39 (addr)uxTaskGetSystemState/53 (addr)
  Availability: available
  Varpool flags:
uxDeletedTasksWaitingCleanUp/15 (uxDeletedTasksWaitingCleanUp) @05ee9ee8
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: prvCheckTasksWaitingTermination/71 (write)prvCheckTasksWaitingTermination/71 (read)prvCheckTasksWaitingTermination/71 (read)vTaskDelete/32 (read)vTaskDelete/32 (write)
  Availability: available
  Varpool flags: initialized
xTasksWaitingTermination/14 (xTasksWaitingTermination) @05ee9e58
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: eTaskGetState/35 (addr)prvInitialiseTaskLists/70 (addr)prvCheckTasksWaitingTermination/71 (read)xTaskGetHandle/52 (addr)vTaskDelete/32 (addr)uxTaskGetSystemState/53 (addr)
  Availability: available
  Varpool flags:
xPendingReadyList/13 (xPendingReadyList) @05ee9dc8
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: xTaskGenericNotifyFromISR/90 (write)xTaskRemoveFromEventList/61 (write)prvTaskIsTaskSuspended.part.0/114 (addr)xTaskRemoveFromEventList/61 (read)prvInitialiseTaskLists/70 (addr)xTaskRemoveFromEventList/61 (read)xTaskRemoveFromEventList/61 (addr)xTaskGenericNotifyFromISR/90 (read)xTaskResumeFromISR/42 (addr)xTaskGenericNotifyFromISR/90 (read)xTaskGenericNotifyFromISR/90 (addr)xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (read)vTaskGenericNotifyGiveFromISR/91 (read)vTaskGenericNotifyGiveFromISR/91 (addr)vTaskGenericNotifyGiveFromISR/91 (read)vTaskGenericNotifyGiveFromISR/91 (write)
  Availability: available
  Varpool flags:
pxOverflowDelayedTaskList/12 (pxOverflowDelayedTaskList) @05ee9d38
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: prvAddCurrentTaskToDelayedList/94 (read)xTaskGetHandle/52 (read)prvInitialiseTaskLists/70 (write)eTaskGetState/35 (read)xTaskIncrementTick.part.0/135 (write)xTaskIncrementTick.part.0/135 (read)uxTaskGetSystemState/53 (read)
  Availability: available
  Varpool flags:
pxDelayedTaskList/11 (pxDelayedTaskList) @05ee9cf0
  Type: variable definition analyzed
  Visibility: force_output prevailing_def_ironly
  References: 
  Referring: xTaskGetHandle/52 (read)prvResetNextTaskUnblockTime.part.0/115 (read)prvAddCurrentTaskToDelayedList/94 (read)prvResetNextTaskUnblockTime/77 (read)prvInitialiseTaskLists/70 (write)eTaskGetState/35 (read)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (write)xTaskIncrementTick.part.0/135 (read)uxTaskGetSystemState/53 (read)
  Availability: available
  Varpool flags:
xDelayedTaskList2/10 (xDelayedTaskList2) @05ee9ca8
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: prvInitialiseTaskLists/70 (addr)prvInitialiseTaskLists/70 (addr)
  Availability: available
  Varpool flags:
xDelayedTaskList1/9 (xDelayedTaskList1) @05ee9c18
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: prvInitialiseTaskLists/70 (addr)prvInitialiseTaskLists/70 (addr)
  Availability: available
  Varpool flags:
pxReadyTasksLists/8 (pxReadyTasksLists) @05ee9b88
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: xTaskGenericNotify/89 (read)xTaskGenericNotify/89 (addr)xTaskGenericNotify/89 (read)xTaskGenericNotifyFromISR/90 (write)xTaskGenericNotify/89 (write)vTaskPriorityDisinheritAfterTimeout/82 (write)xTaskGenericNotifyFromISR/90 (read)xTaskGenericNotifyFromISR/90 (addr)xTaskGenericNotifyFromISR/90 (read)prvAddNewTaskToReadyList/31 (write)prvAddNewTaskToReadyList/31 (read)prvAddNewTaskToReadyList/31 (addr)prvAddNewTaskToReadyList/31 (read)prvIdleTask/69 (read)vTaskPrioritySet/38 (read)vTaskPrioritySet/38 (addr)vTaskPrioritySet/38 (read)vTaskPrioritySet/38 (write)prvInitialiseTaskLists/70 (addr)xTaskResumeFromISR/42 (read)xTaskResumeFromISR/42 (addr)xTaskResumeFromISR/42 (read)xTaskResumeFromISR/42 (write)xTaskIncrementTick.part.0/135 (read)xTaskRemoveFromEventList/61 (write)xTaskIncrementTick.part.0/135 (addr)xTaskIncrementTick.part.0/135 (read)xTaskIncrementTick.part.0/135 (write)xTaskResumeAll.part.0/137 (write)xTaskPriorityInherit/80 (addr)vTaskResume/41 (read)vTaskResume/41 (addr)vTaskResume/41 (read)vTaskResume/41 (write)xTaskResumeAll.part.0/137 (read)xTaskGetHandle/52 (addr)xTaskResumeAll.part.0/137 (read)xTaskResumeAll.part.0/137 (addr)xTaskAbortDelay/55 (read)xTaskAbortDelay/55 (write)vTaskSwitchContext/57 (write)vTaskSwitchContext/57 (addr)vTaskSwitchContext/57 (write)vTaskSwitchContext/57 (read)vTaskPrioritySet/38 (addr)xTaskRemoveFromEventList/61 (read)xTaskRemoveFromEventList/61 (addr)xTaskRemoveFromEventList/61 (read)vTaskRemoveFromUnorderedEventList/62 (write)vTaskRemoveFromUnorderedEventList/62 (read)vTaskRemoveFromUnorderedEventList/62 (addr)vTaskRemoveFromUnorderedEventList/62 (read)uxTaskGetSystemState/53 (addr)vTaskSwitchContext/57 (read)xTaskPriorityInherit/80 (read)xTaskPriorityInherit/80 (addr)xTaskPriorityInherit/80 (read)xTaskPriorityInherit/80 (write)xTaskPriorityDisinherit/81 (read)xTaskPriorityDisinherit/81 (addr)xTaskPriorityDisinherit/81 (read)xTaskPriorityDisinherit/81 (write)vTaskPriorityDisinheritAfterTimeout/82 (read)vTaskPriorityDisinheritAfterTimeout/82 (addr)vTaskPriorityDisinheritAfterTimeout/82 (read)xTaskIncrementTick.part.0/135 (read)xTaskAbortDelay/55 (read)xTaskAbortDelay/55 (addr)vTaskSwitchContext/57 (read)vTaskPriorityDisinheritAfterTimeout/82 (addr)vTaskGenericNotifyGiveFromISR/91 (read)vTaskGenericNotifyGiveFromISR/91 (addr)vTaskGenericNotifyGiveFromISR/91 (read)vTaskGenericNotifyGiveFromISR/91 (write)
  Availability: available
  Varpool flags:
pxCurrentTCB/7 (pxCurrentTCB) @05ee9b40
  Type: variable definition analyzed
  Visibility: force_output externally_visible public
  References: 
  Referring: ulTaskGenericNotifyTake/87 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotify/89 (read)xTaskGenericNotifyFromISR/90 (read)vTaskGenericNotifyGiveFromISR/91 (read)prvAddNewTaskToReadyList/31 (read)prvAddNewTaskToReadyList/31 (write)prvAddNewTaskToReadyList/31 (read)xTaskPriorityInherit/80 (read)xTaskPriorityInherit/80 (read)pvTaskIncrementMutexHeldCount/86 (read)pvTaskIncrementMutexHeldCount/86 (read)pvTaskIncrementMutexHeldCount/86 (read)ulTaskGenericNotifyTake/87 (read)ulTaskGenericNotifyTake/87 (read)ulTaskGenericNotifyTake/87 (read)ulTaskGenericNotifyTake/87 (read)xTaskGenericNotifyStateClear/92 (read)prvAddCurrentTaskToDelayedList/94 (read)vTaskDelete/32 (read)eTaskGetState/35 (read)prvAddNewTaskToReadyList/31 (write)prvAddCurrentTaskToDelayedList/94 (read)prvAddCurrentTaskToDelayedList/94 (read)uxTaskPriorityGet/36 (read)vTaskDelete/32 (read)vTaskResume/41 (read)xTaskAbortDelay/55 (read)vTaskDelete/32 (read)uxTaskPriorityGetFromISR/37 (read)vTaskPrioritySet/38 (read)pcTaskGetName/50 (read)vTaskResume/41 (read)xTaskIncrementTick.part.0/135 (read)vTaskPrioritySet/38 (read)xTaskResumeFromISR/42 (read)xTaskResumeAll.part.0/137 (read)vTaskSwitchContext/57 (write)ulTaskGenericNotifyTake/87 (read)prvAddNewTaskToReadyList/31 (read)prvAddCurrentTaskToDelayedList/94 (read)vTaskPrioritySet/38 (read)xTaskIncrementTick.part.0/135 (read)vTaskSuspend/39 (write)prvAddCurrentTaskToDelayedList/94 (read)vTaskPrioritySet/38 (read)vTaskSuspend/39 (read)vTaskSuspend/39 (read)vTaskPlaceOnEventList/58 (read)vTaskPlaceOnUnorderedEventList/59 (read)vTaskPlaceOnEventListRestricted/60 (read)vTaskPlaceOnUnorderedEventList/59 (read)xTaskRemoveFromEventList/61 (read)vTaskPlaceOnEventListRestricted/60 (read)vTaskRemoveFromUnorderedEventList/62 (read)xTaskCheckForTimeOut/65 (read)vTaskGetInfo/72 (read)vTaskPlaceOnUnorderedEventList/59 (read)vTaskPlaceOnUnorderedEventList/59 (read)vTaskPlaceOnUnorderedEventList/59 (read)xTaskCheckForTimeOut/65 (read)uxTaskGetStackHighWaterMark/75 (read)xTaskGetCurrentTaskHandle/78 (read)xTaskPriorityInherit/80 (read)vTaskPlaceOnEventListRestricted/60 (read)vTaskGetInfo/72 (read)xTaskPriorityDisinherit/81 (read)xTaskPriorityInherit/80 (read)xTaskPriorityInherit/80 (read)vTaskPriorityDisinheritAfterTimeout/82 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)vTaskPlaceOnEventListRestricted/60 (read)vTaskPlaceOnEventListRestricted/60 (read)uxTaskResetEventItemValue/85 (read)uxTaskResetEventItemValue/85 (read)uxTaskResetEventItemValue/85 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)vTaskPlaceOnUnorderedEventList/59 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)prvAddCurrentTaskToDelayedList.part.0/119 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotifyWait/88 (read)xTaskGenericNotifyWait/88 (read)ulTaskGenericNotifyValueClear/93 (read)
  Availability: available
  Varpool flags: initialized
prvListTasksWithinSingleList.part.0 (struct TaskStatus_t * pxTaskStatusArray, struct List_t * pxList, eTaskState eState)
{
  struct TCB_t * pxNextTCB;
  struct TCB_t * pxFirstTCB;
  UBaseType_t uxTask;
  struct List_t * const pxConstList;
  struct List_t * const pxConstList;
  struct ListItem_t * _2;
  struct xLIST_ITEM * _3;
  struct MiniListItem_t * _4;
  struct xLIST_ITEM * _5;
  struct ListItem_t * _6;
  struct ListItem_t * _8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct ListItem_t * _11;
  long unsigned int _14;
  struct TaskStatus_t * _16;

  <bb 10> [local count: 118111600]:

  <bb 2> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  # DEBUG pxConstList => pxList_1(D)
  # DEBUG BEGIN_STMT
  _2 = pxList_1(D)->pxIndex;
  _3 = _2->pxNext;
  pxList_1(D)->pxIndex = _3;
  # DEBUG BEGIN_STMT
  _4 = &pxList_1(D)->xListEnd;
  if (_3 == _4)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 35433480]:
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct ListItem_t *)_3].pxNext;
  pxList_1(D)->pxIndex = _5;

  <bb 4> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _6 = pxList_1(D)->pxIndex;
  pxFirstTCB_7 = _6->pvOwner;
  # DEBUG pxFirstTCB => pxFirstTCB_7

  <bb 5> [local count: 1073741824]:
  # uxTask_13 = PHI <0(4), uxTask_18(8)>
  # DEBUG uxTask => uxTask_13
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG pxConstList => pxList_1(D)
  # DEBUG BEGIN_STMT
  _8 = pxList_1(D)->pxIndex;
  _9 = _8->pxNext;
  pxList_1(D)->pxIndex = _9;
  # DEBUG BEGIN_STMT
  if (_4 == _9)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 322122547]:
  # DEBUG BEGIN_STMT
  _10 = MEM[(struct ListItem_t *)_9].pxNext;
  pxList_1(D)->pxIndex = _10;

  <bb 7> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _11 = pxList_1(D)->pxIndex;
  pxNextTCB_12 = _11->pvOwner;
  # DEBUG pxNextTCB => pxNextTCB_12
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 = uxTask_13 * 36;
  _16 = pxTaskStatusArray_15(D) + _14;
  vTaskGetInfo (pxNextTCB_12, _16, 1, eState_17(D));
  # DEBUG BEGIN_STMT
  uxTask_18 = uxTask_13 + 1;
  # DEBUG uxTask => uxTask_18
  # DEBUG BEGIN_STMT
  if (pxFirstTCB_7 != pxNextTCB_12)
    goto <bb 8>; [89.00%]
  else
    goto <bb 9>; [11.00%]

  <bb 8> [local count: 955630223]:
  goto <bb 5>; [100.00%]

  <bb 9> [local count: 118111601]:
  # uxTask_19 = PHI <uxTask_18(7)>
  # DEBUG uxTask => uxTask_19
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return uxTask_19;

}


__attribute__((used))
vTaskSwitchContext.part.0 ()
{
  UBaseType_t uxTopPriority;
  struct List_t * const pxConstList;
  uint32_t ulNewBASEPRI;

  <bb 5> [local count: 107374]:

  <bb 2> [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_1 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_1

  <bb 3> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  goto <bb 3>; [100.00%]

}


xTaskResumeAll.part.0 ()
{
  struct TCB_t * pxTCB;
  BaseType_t xAlreadyYielded;
  struct List_t * const pxList;
  struct List_t * const pxList;
  struct ListItem_t * const pxIndex;
  TickType_t xPendedCounts;
  uint32_t ulNewBASEPRI;
  long unsigned int uxSchedulerSuspended.63_1;
  long unsigned int _2;
  long unsigned int uxSchedulerSuspended.64_3;
  long unsigned int uxCurrentNumberOfTasks.65_4;
  struct xLIST_ITEM * _5;
  struct xLIST_ITEM * _8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct ListItem_t * _11;
  struct ListItem_t * _12;
  long unsigned int _13;
  long unsigned int _14;
  struct xLIST_ITEM * _16;
  struct xLIST_ITEM * _17;
  struct ListItem_t * _18;
  struct ListItem_t * _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;
  long unsigned int uxTopReadyPriority.66_23;
  struct xLIST_ITEM * _25;
  struct xLIST_ITEM * _26;
  struct List_t * _27;
  long unsigned int _28;
  long unsigned int _29;
  struct TCB_t * pxCurrentTCB.67_30;
  long unsigned int _31;
  long unsigned int _32;
  long int _35;
  long int xYieldPending.68_38;

  <bb 27> [local count: 472446400]:

  <bb 2> [local count: 472446400]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.63_1 ={v} uxSchedulerSuspended;
  _2 = uxSchedulerSuspended.63_1 + 4294967295;
  uxSchedulerSuspended ={v} _2;
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.64_3 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.64_3 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 3> [local count: 236223200]:
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.65_4 ={v} uxCurrentNumberOfTasks;
  if (uxCurrentNumberOfTasks.65_4 != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 4> [local count: 118111600]:
  goto <bb 14>; [100.00%]

  <bb 5> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  _5 = xPendingReadyList.xListEnd.pxNext;
  pxTCB_6 = _5->pvOwner;
  # DEBUG pxTCB => pxTCB_6
  # DEBUG BEGIN_STMT
  pxList_7 = pxTCB_6->xEventListItem.pvContainer;
  # DEBUG pxList => pxList_7
  # DEBUG BEGIN_STMT
  _8 = pxTCB_6->xEventListItem.pxNext;
  _9 = pxTCB_6->xEventListItem.pxPrevious;
  _8->pxPrevious = _9;
  # DEBUG BEGIN_STMT
  _10 = pxTCB_6->xEventListItem.pxPrevious;
  _10->pxNext = _8;
  # DEBUG BEGIN_STMT
  _11 = pxList_7->pxIndex;
  _12 = &pxTCB_6->xEventListItem;
  if (_11 == _12)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 286689066]:
  # DEBUG BEGIN_STMT
  pxList_7->pxIndex = _9;

  <bb 7> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  pxTCB_6->xEventListItem.pvContainer = 0B;
  # DEBUG BEGIN_STMT
  _13 ={v} pxList_7->uxNumberOfItems;
  _14 = _13 + 4294967295;
  pxList_7->uxNumberOfItems ={v} _14;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("" :  :  : "memory");
  # DEBUG BEGIN_STMT
  pxList_15 = pxTCB_6->xStateListItem.pvContainer;
  # DEBUG pxList => pxList_15
  # DEBUG BEGIN_STMT
  _16 = pxTCB_6->xStateListItem.pxNext;
  _17 = pxTCB_6->xStateListItem.pxPrevious;
  _16->pxPrevious = _17;
  # DEBUG BEGIN_STMT
  _17->pxNext = _16;
  # DEBUG BEGIN_STMT
  _18 = pxList_15->pxIndex;
  _19 = &pxTCB_6->xStateListItem;
  if (_18 == _19)
    goto <bb 8>; [30.00%]
  else
    goto <bb 9>; [70.00%]

  <bb 8> [local count: 286689066]:
  # DEBUG BEGIN_STMT
  pxList_15->pxIndex = _17;

  <bb 9> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _20 ={v} pxList_15->uxNumberOfItems;
  _21 = _20 + 4294967295;
  pxList_15->uxNumberOfItems ={v} _21;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _22 = pxTCB_6->uxPriority;
  uxTopReadyPriority.66_23 ={v} uxTopReadyPriority;
  if (_22 > uxTopReadyPriority.66_23)
    goto <bb 10>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 10> [local count: 477815111]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _22;

  <bb 11> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_24 = pxReadyTasksLists[_22].pxIndex;
  # DEBUG pxIndex => pxIndex_24
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxTCB_6->xStateListItem.pxNext = pxIndex_24;
  # DEBUG BEGIN_STMT
  _25 = pxIndex_24->pxPrevious;
  pxTCB_6->xStateListItem.pxPrevious = _25;
  # DEBUG BEGIN_STMT
  _26 = pxIndex_24->pxPrevious;
  _26->pxNext = _19;
  # DEBUG BEGIN_STMT
  pxIndex_24->pxPrevious = _19;
  # DEBUG BEGIN_STMT
  _27 = &pxReadyTasksLists[_22];
  pxTCB_6->xStateListItem.pvContainer = _27;
  # DEBUG BEGIN_STMT
  _28 ={v} pxReadyTasksLists[_22].uxNumberOfItems;
  _29 = _28 + 1;
  pxReadyTasksLists[_22].uxNumberOfItems ={v} _29;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.67_30 ={v} pxCurrentTCB;
  _31 = pxCurrentTCB.67_30->uxPriority;
  if (_22 >= _31)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 477815111]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 13> [local count: 955630223]:
  # pxTCB_40 = PHI <pxTCB_6(11), pxTCB_6(12)>

  <bb 14> [local count: 1073741824]:
  # pxTCB_41 = PHI <0B(4), pxTCB_40(13)>
  # DEBUG pxTCB => pxTCB_41
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _32 ={v} xPendingReadyList.uxNumberOfItems;
  if (_32 != 0)
    goto <bb 5>; [89.00%]
  else
    goto <bb 15>; [11.00%]

  <bb 15> [local count: 118111601]:
  # pxTCB_33 = PHI <pxTCB_41(14)>
  # DEBUG BEGIN_STMT
  if (pxTCB_33 != 0B)
    goto <bb 16>; [53.47%]
  else
    goto <bb 17>; [46.53%]

  <bb 16> [local count: 63154273]:
  # DEBUG BEGIN_STMT
  prvResetNextTaskUnblockTime ();

  <bb 17> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  xPendedCounts_34 ={v} xPendedTicks;
  # DEBUG xPendedCounts => xPendedCounts_34
  # DEBUG BEGIN_STMT
  if (xPendedCounts_34 != 0)
    goto <bb 18>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 18> [local count: 59055800]:

  <bb 19> [local count: 536870915]:
  # xPendedCounts_36 = PHI <xPendedCounts_34(18), xPendedCounts_37(22)>
  # DEBUG xPendedCounts => xPendedCounts_36
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _35 = xTaskIncrementTick ();
  if (_35 != 0)
    goto <bb 20>; [50.00%]
  else
    goto <bb 21>; [50.00%]

  <bb 20> [local count: 268435457]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 21> [local count: 536870915]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xPendedCounts_37 = xPendedCounts_36 + 4294967295;
  # DEBUG xPendedCounts => xPendedCounts_37
  # DEBUG BEGIN_STMT
  if (xPendedCounts_37 != 0)
    goto <bb 22>; [89.00%]
  else
    goto <bb 23>; [11.00%]

  <bb 22> [local count: 477815113]:
  goto <bb 19>; [100.00%]

  <bb 23> [local count: 59055801]:
  # DEBUG BEGIN_STMT
  xPendedTicks ={v} 0;

  <bb 24> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xYieldPending.68_38 ={v} xYieldPending;
  if (xYieldPending.68_38 != 0)
    goto <bb 25>; [50.00%]
  else
    goto <bb 26>; [50.00%]

  <bb 25> [local count: 59055800]:
  # DEBUG BEGIN_STMT
  # DEBUG xAlreadyYielded => 1
  # 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

  <bb 26> [local count: 472446401]:
  # xAlreadyYielded_39 = PHI <0(2), 0(3), 0(24), 1(25)>
  # DEBUG xAlreadyYielded => xAlreadyYielded_39
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return xAlreadyYielded_39;

}


xTaskIncrementTick.part.0 ()
{
  struct TCB_t * pxTCB;
  TickType_t xItemValue;
  BaseType_t xSwitchRequired;
  const TickType_t xConstTickCount;
  struct List_t * pxTemp;
  struct List_t * const pxList;
  struct List_t * const pxList;
  struct ListItem_t * const pxIndex;
  uint32_t ulNewBASEPRI;
  long unsigned int xTickCount.80_1;
  struct List_t * pxDelayedTaskList.81_3;
  long unsigned int _4;
  struct List_t * pxOverflowDelayedTaskList.82_7;
  long int xNumOfOverflows.83_8;
  long int _9;
  long unsigned int xNextTaskUnblockTime.84_10;
  struct List_t * pxDelayedTaskList.85_11;
  long unsigned int _12;
  struct List_t * pxDelayedTaskList.86_13;
  struct xLIST_ITEM * _14;
  struct xLIST_ITEM * _19;
  struct xLIST_ITEM * _20;
  struct ListItem_t * _21;
  struct ListItem_t * _22;
  long unsigned int _23;
  long unsigned int _24;
  struct xLIST * _25;
  struct xLIST_ITEM * _26;
  struct xLIST_ITEM * _27;
  struct xLIST_ITEM * _28;
  struct ListItem_t * _29;
  struct ListItem_t * _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  long unsigned int uxTopReadyPriority.87_34;
  struct xLIST_ITEM * _36;
  struct xLIST_ITEM * _37;
  struct List_t * _38;
  long unsigned int _39;
  long unsigned int _40;
  struct TCB_t * pxCurrentTCB.88_41;
  long unsigned int _42;
  struct TCB_t * pxCurrentTCB.89_43;
  long unsigned int _44;
  long unsigned int _45;
  long int xYieldPending.90_46;

  <bb 30> [local count: 320519]:

  <bb 2> [local count: 320519]:
  # DEBUG BEGIN_STMT
  xTickCount.80_1 ={v} xTickCount;
  xConstTickCount_2 = xTickCount.80_1 + 1;
  # DEBUG xConstTickCount => xConstTickCount_2
  # DEBUG BEGIN_STMT
  xTickCount ={v} xConstTickCount_2;
  # DEBUG BEGIN_STMT
  if (xConstTickCount_2 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 3> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.81_3 ={v} pxDelayedTaskList;
  _4 ={v} pxDelayedTaskList.81_3->uxNumberOfItems;
  if (_4 != 0)
    goto <bb 4>; [67.00%]
  else
    goto <bb 7>; [33.00%]

  <bb 4> [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_5 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_5

  <bb 5> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 6> [local count: 1073741824]:
  goto <bb 5>; [100.00%]

  <bb 7> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxTemp_6 ={v} pxDelayedTaskList;
  # DEBUG pxTemp => pxTemp_6
  # DEBUG BEGIN_STMT
  pxOverflowDelayedTaskList.82_7 ={v} pxOverflowDelayedTaskList;
  pxDelayedTaskList ={v} pxOverflowDelayedTaskList.82_7;
  # DEBUG BEGIN_STMT
  pxOverflowDelayedTaskList ={v} pxTemp_6;
  # DEBUG BEGIN_STMT
  xNumOfOverflows.83_8 ={v} xNumOfOverflows;
  _9 = xNumOfOverflows.83_8 + 1;
  xNumOfOverflows ={v} _9;
  # DEBUG BEGIN_STMT
  prvResetNextTaskUnblockTime ();
  # DEBUG BEGIN_STMT

  <bb 8> [local count: 213145]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime.84_10 ={v} xNextTaskUnblockTime;
  if (xConstTickCount_2 >= xNextTaskUnblockTime.84_10)
    goto <bb 9>; [50.00%]
  else
    goto <bb 25>; [50.00%]

  <bb 9> [local count: 106573]:
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 889667]:
  # xSwitchRequired_48 = PHI <xSwitchRequired_49(23), 1(24)>

  <bb 11> [local count: 996239]:
  # xSwitchRequired_49 = PHI <0(9), xSwitchRequired_48(10)>
  # DEBUG xSwitchRequired => xSwitchRequired_49
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.85_11 ={v} pxDelayedTaskList;
  _12 ={v} pxDelayedTaskList.85_11->uxNumberOfItems;
  if (_12 == 0)
    goto <bb 12>; [5.50%]
  else
    goto <bb 13>; [94.50%]

  <bb 12> [local count: 54793]:
  # xSwitchRequired_50 = PHI <xSwitchRequired_49(11)>
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime ={v} 4294967295;
  # DEBUG BEGIN_STMT
  goto <bb 25>; [100.00%]

  <bb 13> [local count: 941446]:
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.86_13 ={v} pxDelayedTaskList;
  _14 = pxDelayedTaskList.86_13->xListEnd.pxNext;
  pxTCB_15 = _14->pvOwner;
  # DEBUG pxTCB => pxTCB_15
  # DEBUG BEGIN_STMT
  xItemValue_16 = pxTCB_15->xStateListItem.xItemValue;
  # DEBUG xItemValue => xItemValue_16
  # DEBUG BEGIN_STMT
  if (xConstTickCount_2 < xItemValue_16)
    goto <bb 14>; [5.50%]
  else
    goto <bb 15>; [94.50%]

  <bb 14> [local count: 51780]:
  # xSwitchRequired_51 = PHI <xSwitchRequired_49(13)>
  # xItemValue_17 = PHI <xItemValue_16(13)>
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime ={v} xItemValue_17;
  # DEBUG BEGIN_STMT
  goto <bb 25>; [100.00%]

  <bb 15> [local count: 889667]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxList_18 = pxTCB_15->xStateListItem.pvContainer;
  # DEBUG pxList => pxList_18
  # DEBUG BEGIN_STMT
  _19 = pxTCB_15->xStateListItem.pxNext;
  _20 = pxTCB_15->xStateListItem.pxPrevious;
  _19->pxPrevious = _20;
  # DEBUG BEGIN_STMT
  _20->pxNext = _19;
  # DEBUG BEGIN_STMT
  _21 = pxList_18->pxIndex;
  _22 = &pxTCB_15->xStateListItem;
  if (_21 == _22)
    goto <bb 16>; [30.00%]
  else
    goto <bb 17>; [70.00%]

  <bb 16> [local count: 266900]:
  # DEBUG BEGIN_STMT
  pxList_18->pxIndex = _20;

  <bb 17> [local count: 889667]:
  # DEBUG BEGIN_STMT
  pxTCB_15->xStateListItem.pvContainer = 0B;
  # DEBUG BEGIN_STMT
  _23 ={v} pxList_18->uxNumberOfItems;
  _24 = _23 + 4294967295;
  pxList_18->uxNumberOfItems ={v} _24;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _25 = pxTCB_15->xEventListItem.pvContainer;
  if (_25 != 0B)
    goto <bb 18>; [70.00%]
  else
    goto <bb 21>; [30.00%]

  <bb 18> [local count: 622767]:
  # DEBUG BEGIN_STMT
  # DEBUG pxList => _25
  # DEBUG BEGIN_STMT
  _26 = pxTCB_15->xEventListItem.pxNext;
  _27 = pxTCB_15->xEventListItem.pxPrevious;
  _26->pxPrevious = _27;
  # DEBUG BEGIN_STMT
  _28 = pxTCB_15->xEventListItem.pxPrevious;
  _28->pxNext = _26;
  # DEBUG BEGIN_STMT
  _29 = MEM[(struct List_t *)_25].pxIndex;
  _30 = &pxTCB_15->xEventListItem;
  if (_29 == _30)
    goto <bb 19>; [30.00%]
  else
    goto <bb 20>; [70.00%]

  <bb 19> [local count: 186830]:
  # DEBUG BEGIN_STMT
  MEM[(struct List_t *)_25].pxIndex = _28;

  <bb 20> [local count: 622767]:
  # DEBUG BEGIN_STMT
  pxTCB_15->xEventListItem.pvContainer = 0B;
  # DEBUG BEGIN_STMT
  _31 ={v} MEM[(struct List_t *)_25].uxNumberOfItems;
  _32 = _31 + 4294967295;
  MEM[(struct List_t *)_25].uxNumberOfItems ={v} _32;
  # DEBUG BEGIN_STMT

  <bb 21> [local count: 889667]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _33 = pxTCB_15->uxPriority;
  uxTopReadyPriority.87_34 ={v} uxTopReadyPriority;
  if (_33 > uxTopReadyPriority.87_34)
    goto <bb 22>; [50.00%]
  else
    goto <bb 23>; [50.00%]

  <bb 22> [local count: 444833]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _33;

  <bb 23> [local count: 889667]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_35 = pxReadyTasksLists[_33].pxIndex;
  # DEBUG pxIndex => pxIndex_35
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxTCB_15->xStateListItem.pxNext = pxIndex_35;
  # DEBUG BEGIN_STMT
  _36 = pxIndex_35->pxPrevious;
  pxTCB_15->xStateListItem.pxPrevious = _36;
  # DEBUG BEGIN_STMT
  _37 = pxIndex_35->pxPrevious;
  _37->pxNext = _22;
  # DEBUG BEGIN_STMT
  pxIndex_35->pxPrevious = _22;
  # DEBUG BEGIN_STMT
  _38 = &pxReadyTasksLists[_33];
  pxTCB_15->xStateListItem.pvContainer = _38;
  # DEBUG BEGIN_STMT
  _39 ={v} pxReadyTasksLists[_33].uxNumberOfItems;
  _40 = _39 + 1;
  pxReadyTasksLists[_33].uxNumberOfItems ={v} _40;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.88_41 ={v} pxCurrentTCB;
  _42 = pxCurrentTCB.88_41->uxPriority;
  if (_33 >= _42)
    goto <bb 24>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 24> [local count: 444833]:
  # DEBUG BEGIN_STMT
  # DEBUG xSwitchRequired => 1
  goto <bb 10>; [100.00%]

  <bb 25> [local count: 213145]:
  # xSwitchRequired_52 = PHI <0(8), xSwitchRequired_50(12), xSwitchRequired_51(14)>
  # DEBUG xSwitchRequired => xSwitchRequired_52
  # DEBUG BEGIN_STMT
  pxCurrentTCB.89_43 ={v} pxCurrentTCB;
  _44 = pxCurrentTCB.89_43->uxPriority;
  _45 ={v} pxReadyTasksLists[_44].uxNumberOfItems;
  if (_45 > 1)
    goto <bb 26>; [59.00%]
  else
    goto <bb 27>; [41.00%]

  <bb 26> [local count: 125756]:
  # DEBUG BEGIN_STMT
  # DEBUG xSwitchRequired => 1

  <bb 27> [local count: 213145]:
  # xSwitchRequired_53 = PHI <xSwitchRequired_52(25), 1(26)>
  # DEBUG xSwitchRequired => xSwitchRequired_53
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xYieldPending.90_46 ={v} xYieldPending;
  if (xYieldPending.90_46 != 0)
    goto <bb 28>; [50.00%]
  else
    goto <bb 29>; [50.00%]

  <bb 28> [local count: 106573]:
  # DEBUG BEGIN_STMT
  # DEBUG xSwitchRequired => 1

  <bb 29> [local count: 213145]:
  # xSwitchRequired_47 = PHI <xSwitchRequired_53(27), 1(28)>
  # DEBUG xSwitchRequired => xSwitchRequired_47
  # DEBUG BEGIN_STMT
  return xSwitchRequired_47;

}


eTaskGetState.part.0 (struct tskTaskControlBlock * xTask)
{
  eTaskState eReturn;
  const struct List_t * pxStateList;
  const struct List_t * pxDelayedList;
  const struct List_t * pxOverflowedDelayedList;
  const struct TCB_t * const pxTCB;
  BaseType_t x;
  uint32_t ulNewBASEPRI;
  unsigned char _2;

  <bb 6> [local count: 566398813]:
  goto <bb 4>; [100.00%]

  <bb 2> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _2 ={v} MEM[(const struct TCB_t *)xTask_1(D)].ucNotifyState[0];
  if (_2 == 1)
    goto <bb 5>; [5.50%]
  else
    goto <bb 3>; [94.50%]

  <bb 3> [local count: 507343012]:

  <bb 4> [local count: 1073741824]:
  # x_3 = PHI <1(3), 0(6)>
  # DEBUG eReturn => NULL
  # DEBUG x => x_3
  # DEBUG BEGIN_STMT
  if (x_3 == 0)
    goto <bb 2>; [50.00%]
  else
    goto <bb 5>; [50.00%]

  <bb 5> [local count: 566398813]:
  # eReturn_4 = PHI <2(2), 3(4)>
  # DEBUG eReturn => eReturn_4
  # DEBUG BEGIN_STMT
  return eReturn_4;

}


prvAddCurrentTaskToDelayedList.part.0 ()
{
  TickType_t xTimeToWake;
  const TickType_t xConstTickCount;
  struct ListItem_t * const pxIndex;
  TickType_t xTicksToWait;
  const BaseType_t xCanBlockIndefinitely;
  struct TCB_t * pxCurrentTCB.25_2;
  struct TCB_t * pxCurrentTCB.26_3;
  struct xLIST_ITEM * _4;
  struct TCB_t * pxCurrentTCB.27_5;
  struct xLIST_ITEM * _6;
  struct ListItem_t * _7;
  struct TCB_t * pxCurrentTCB.28_8;
  struct ListItem_t * _9;
  struct TCB_t * pxCurrentTCB.29_10;
  long unsigned int _11;
  long unsigned int _12;

  <bb 4> [local count: 1073741824]:
  # DEBUG D#5 s=> xTicksToWait
  # DEBUG xTicksToWait => D#5
  # DEBUG D#4 s=> xCanBlockIndefinitely
  # DEBUG xCanBlockIndefinitely => D#4

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  pxIndex_1 = xSuspendedTaskList.pxIndex;
  # DEBUG pxIndex => pxIndex_1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.25_2 ={v} pxCurrentTCB;
  pxCurrentTCB.25_2->xStateListItem.pxNext = pxIndex_1;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.26_3 ={v} pxCurrentTCB;
  _4 = pxIndex_1->pxPrevious;
  pxCurrentTCB.26_3->xStateListItem.pxPrevious = _4;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.27_5 ={v} pxCurrentTCB;
  _6 = pxIndex_1->pxPrevious;
  _7 = &pxCurrentTCB.27_5->xStateListItem;
  _6->pxNext = _7;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.28_8 ={v} pxCurrentTCB;
  _9 = &pxCurrentTCB.28_8->xStateListItem;
  pxIndex_1->pxPrevious = _9;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.29_10 ={v} pxCurrentTCB;
  pxCurrentTCB.29_10->xStateListItem.pvContainer = &xSuspendedTaskList;
  # DEBUG BEGIN_STMT
  _11 ={v} xSuspendedTaskList.uxNumberOfItems;
  _12 = _11 + 1;
  xSuspendedTaskList.uxNumberOfItems ={v} _12;
  # DEBUG BEGIN_STMT

  <bb 3> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


prvInitialiseNewTask.isra.0 (void (*TaskFunction_t) (void *) pxTaskCode, const char * const pcName, const uint32_t ulStackDepth, void * const pvParameters, UBaseType_t uxPriority, struct tskTaskControlBlock * * const pxCreatedTask, struct TCB_t * pxNewTCB)
{
  StackType_t * pxTopOfStack;
  UBaseType_t x;
  uint32_t ulNewBASEPRI;
  StackType_t * _2;
  unsigned int _4;
  StackType_t * _5;
  sizetype _6;
  sizetype _7;
  long unsigned int pxTopOfStack.0_9;
  long unsigned int _10;
  const char * _14;
  char _15;
  char _16;
  struct ListItem_t * _20;
  struct ListItem_t * _21;
  long unsigned int _22;
  volatile uint32_t * _23;
  volatile uint8_t * _24;
  StackType_t * _27;

  <bb 16> [local count: 160260]:
  # DEBUG xRegions s=> xRegions

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = pxNewTCB_1(D)->pxStack;
  _4 = ulStackDepth_3(D) * 4;
  memset (_2, 165, _4);
  # DEBUG BEGIN_STMT
  _5 = pxNewTCB_1(D)->pxStack;
  _6 = ulStackDepth_3(D) + 1073741823;
  _7 = _6 * 4;
  pxTopOfStack_8 = _5 + _7;
  # DEBUG pxTopOfStack => pxTopOfStack_8
  # DEBUG BEGIN_STMT
  pxTopOfStack.0_9 = (long unsigned int) pxTopOfStack_8;
  _10 = pxTopOfStack.0_9 & 4294967288;
  pxTopOfStack_11 = (StackType_t *) _10;
  # DEBUG pxTopOfStack => pxTopOfStack_11
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (pcName_12(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 8>; [30.00%]

  <bb 3> [local count: 112182]:
  goto <bb 6>; [100.00%]

  <bb 4> [local count: 723805]:
  # DEBUG BEGIN_STMT
  _14 = pcName_12(D) + x_13;
  _15 = *_14;
  pxNewTCB_1(D)->pcTaskName[x_13] = _15;
  # DEBUG BEGIN_STMT
  _16 = *_14;
  if (_16 == 0)
    goto <bb 7>; [5.50%]
  else
    goto <bb 5>; [94.50%]

  <bb 5> [local count: 683996]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  x_17 = x_13 + 1;
  # DEBUG x => x_17

  <bb 6> [local count: 796177]:
  # x_13 = PHI <0(3), x_17(5)>
  # DEBUG x => x_13
  # DEBUG BEGIN_STMT
  if (x_13 != 10)
    goto <bb 4>; [90.91%]
  else
    goto <bb 7>; [9.09%]

  <bb 7> [local count: 112182]:
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->pcTaskName[9] = 0;
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 48078]:
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->pcTaskName[0] = 0;

  <bb 9> [local count: 160260]:
  # DEBUG BEGIN_STMT
  if (uxPriority_18(D) > 4)
    goto <bb 10>; [67.00%]
  else
    goto <bb 13>; [33.00%]

  <bb 10> [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 11> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 12> [local count: 1073741824]:
  goto <bb 11>; [100.00%]

  <bb 13> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxPriority => uxPriority_18(D)
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->uxPriority = uxPriority_18(D);
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->uxBasePriority = uxPriority_18(D);
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->uxMutexesHeld = 0;
  # DEBUG BEGIN_STMT
  _20 = &pxNewTCB_1(D)->xStateListItem;
  vListInitialiseItem (_20);
  # DEBUG BEGIN_STMT
  _21 = &pxNewTCB_1(D)->xEventListItem;
  vListInitialiseItem (_21);
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->xStateListItem.pvOwner = pxNewTCB_1(D);
  # DEBUG BEGIN_STMT
  _22 = 5 - uxPriority_18(D);
  pxNewTCB_1(D)->xEventListItem.xItemValue = _22;
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->xEventListItem.pvOwner = pxNewTCB_1(D);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _23 = &pxNewTCB_1(D)->ulNotifiedValue[0];
  memset (_23, 0, 4);
  # DEBUG BEGIN_STMT
  _24 = &pxNewTCB_1(D)->ucNotifyState[0];
  memset (_24, 0, 1);
  # DEBUG BEGIN_STMT
  pxNewTCB_1(D)->ucDelayAborted = 0;
  # DEBUG BEGIN_STMT
  _27 = pxPortInitialiseStack (pxTopOfStack_11, pxTaskCode_25(D), pvParameters_26(D));
  pxNewTCB_1(D)->pxTopOfStack = _27;
  # DEBUG BEGIN_STMT
  if (pxCreatedTask_28(D) != 0B)
    goto <bb 14>; [70.00%]
  else
    goto <bb 15>; [30.00%]

  <bb 14> [local count: 37020]:
  # DEBUG BEGIN_STMT
  *pxCreatedTask_28(D) = pxNewTCB_1(D);

  <bb 15> [local count: 52886]:
  # DEBUG BEGIN_STMT
  return;

}


prvResetNextTaskUnblockTime.part.0 ()
{
  struct List_t * pxDelayedTaskList.21_1;
  struct xLIST_ITEM * _2;
  long unsigned int _3;

  <bb 4> [local count: 1073741824]:

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.21_1 ={v} pxDelayedTaskList;
  _2 = pxDelayedTaskList.21_1->xListEnd.pxNext;
  _3 = _2->xItemValue;
  xNextTaskUnblockTime ={v} _3;

  <bb 3> [local count: 1073741824]:
  return;

}


prvTaskIsTaskSuspended.part.0 (struct tskTaskControlBlock * const xTask)
{
  BaseType_t xReturn;
  const struct TCB_t * const pxTCB;
  uint32_t ulNewBASEPRI;
  struct xLIST * _2;

  <bb 6> [local count: 1073741824]:

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _2 = MEM[(const struct TCB_t *)xTask_1(D)].xEventListItem.pvContainer;
  if (_2 != &xPendingReadyList)
    goto <bb 3>; [70.00%]
  else
    goto <bb 5>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  if (_2 == 0B)
    goto <bb 4>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 4> [local count: 225485783]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 5> [local count: 1073741824]:
  # xReturn_3 = PHI <0(2), 0(3), 1(4)>
  # DEBUG xReturn => xReturn_3
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xReturn_3;

}


prvAddCurrentTaskToDelayedList (TickType_t xTicksToWait, const BaseType_t xCanBlockIndefinitely)
{
  const TickType_t xConstTickCount;
  TickType_t xTimeToWake;
  struct TCB_t * pxCurrentTCB.23_1;
  struct TCB_t * pxCurrentTCB.24_2;
  struct ListItem_t * _3;
  struct TCB_t * pxCurrentTCB.30_5;
  struct List_t * pxOverflowDelayedTaskList.31_6;
  struct TCB_t * pxCurrentTCB.32_7;
  struct ListItem_t * _8;
  struct List_t * pxDelayedTaskList.33_9;
  struct TCB_t * pxCurrentTCB.34_10;
  struct ListItem_t * _11;
  long unsigned int xNextTaskUnblockTime.35_12;

  <bb 2> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xConstTickCount_14 ={v} xTickCount;
  # DEBUG xConstTickCount => xConstTickCount_14
  # DEBUG BEGIN_STMT
  pxCurrentTCB.23_1 ={v} pxCurrentTCB;
  pxCurrentTCB.23_1->ucDelayAborted = 0;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.24_2 ={v} pxCurrentTCB;
  _3 = &pxCurrentTCB.24_2->xStateListItem;
  uxListRemove (_3);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTicksToWait_17(D) == 4294967295)
    goto <bb 3>; [34.00%]
  else
    goto <bb 5>; [66.00%]

  <bb 3> [local count: 365072220]:
  if (xCanBlockIndefinitely_18(D) != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 5>; [50.00%]

  <bb 4> [local count: 182536110]:
  # DEBUG D#2 => xTicksToWait_17(D)
  # DEBUG D#3 => xCanBlockIndefinitely_18(D)
  prvAddCurrentTaskToDelayedList.part.0 ();
  goto <bb 9>; [100.00%]

  <bb 5> [local count: 891205713]:
  # DEBUG BEGIN_STMT
  xTimeToWake_19 = xConstTickCount_14 + xTicksToWait_17(D);
  # DEBUG xTimeToWake => xTimeToWake_19
  # DEBUG BEGIN_STMT
  pxCurrentTCB.30_5 ={v} pxCurrentTCB;
  pxCurrentTCB.30_5->xStateListItem.xItemValue = xTimeToWake_19;
  # DEBUG BEGIN_STMT
  if (xConstTickCount_14 > xTimeToWake_19)
    goto <bb 6>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 6> [local count: 445602856]:
  # DEBUG BEGIN_STMT
  pxOverflowDelayedTaskList.31_6 ={v} pxOverflowDelayedTaskList;
  pxCurrentTCB.32_7 ={v} pxCurrentTCB;
  _8 = &pxCurrentTCB.32_7->xStateListItem;
  vListInsert (pxOverflowDelayedTaskList.31_6, _8);
  goto <bb 9>; [100.00%]

  <bb 7> [local count: 445602856]:
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.33_9 ={v} pxDelayedTaskList;
  pxCurrentTCB.34_10 ={v} pxCurrentTCB;
  _11 = &pxCurrentTCB.34_10->xStateListItem;
  vListInsert (pxDelayedTaskList.33_9, _11);
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime.35_12 ={v} xNextTaskUnblockTime;
  if (xNextTaskUnblockTime.35_12 > xTimeToWake_19)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 8> [local count: 222801428]:
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime ={v} xTimeToWake_19;

  <bb 9> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


ulTaskGenericNotifyValueClear (struct tskTaskControlBlock * xTask, UBaseType_t uxIndexToClear, uint32_t ulBitsToClear)
{
  uint32_t ulReturn;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  struct TCB_t * iftmp.164_4;
  struct TCB_t * iftmp.164_7;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_5(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 322122547]:
  iftmp.164_7 ={v} pxCurrentTCB;

  <bb 4> [local count: 1073741824]:
  # iftmp.164_4 = PHI <iftmp.164_7(3), xTask_5(D)(2)>
  # DEBUG pxTCB => iftmp.164_4
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  ulReturn_10 ={v} iftmp.164_4->ulNotifiedValue[uxIndexToClear_9(D)];
  # DEBUG ulReturn => ulReturn_10
  # DEBUG BEGIN_STMT
  _1 ={v} iftmp.164_4->ulNotifiedValue[uxIndexToClear_9(D)];
  _2 = ~ulBitsToClear_11(D);
  _3 = _1 & _2;
  iftmp.164_4->ulNotifiedValue[uxIndexToClear_9(D)] ={v} _3;
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return ulReturn_10;

}


xTaskGenericNotifyStateClear (struct tskTaskControlBlock * xTask, UBaseType_t uxIndexToClear)
{
  uint32_t ulNewBASEPRI;
  BaseType_t xReturn;
  unsigned char _1;
  struct TCB_t * iftmp.163_3;
  struct TCB_t * iftmp.163_8;

  <bb 2> [local count: 214748]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToClear_5(D) != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 5>; [50.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_12 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_12

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_6(D) == 0B)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 32212]:
  iftmp.163_8 ={v} pxCurrentTCB;

  <bb 7> [local count: 107374]:
  # iftmp.163_3 = PHI <iftmp.163_8(6), xTask_6(D)(5)>
  # DEBUG pxTCB => iftmp.163_3
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  _1 ={v} iftmp.163_3->ucNotifyState[0];
  if (_1 == 2)
    goto <bb 8>; [34.00%]
  else
    goto <bb 9>; [66.00%]

  <bb 8> [local count: 36507]:
  # DEBUG BEGIN_STMT
  iftmp.163_3->ucNotifyState[0] ={v} 0;
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 9> [local count: 107374]:
  # xReturn_2 = PHI <1(8), 0(7)>
  # DEBUG xReturn => xReturn_2
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return xReturn_2;

}


vTaskGenericNotifyGiveFromISR (struct tskTaskControlBlock * xTaskToNotify, UBaseType_t uxIndexToNotify, BaseType_t * pxHigherPriorityTaskWoken)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulOriginalBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct ListItem_t * const pxIndex;
  struct List_t * const pxList;
  uint8_t ucOriginalNotifyState;
  long unsigned int _1;
  long unsigned int _2;
  struct xLIST * _3;
  long unsigned int uxSchedulerSuspended.160_4;
  struct xLIST_ITEM * _5;
  struct xLIST_ITEM * _6;
  struct xLIST_ITEM * _7;
  struct ListItem_t * _8;
  struct ListItem_t * _9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int uxTopReadyPriority.161_13;
  struct xLIST_ITEM * _14;
  struct xLIST_ITEM * _15;
  struct List_t * _16;
  long unsigned int _17;
  long unsigned int _18;
  struct xLIST_ITEM * _19;
  struct xLIST_ITEM * _20;
  struct ListItem_t * _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  struct TCB_t * pxCurrentTCB.162_25;
  long unsigned int _26;

  <bb 2> [local count: 228942]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTaskToNotify_32(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 68683]:
  # 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_62 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_62

  <bb 4> [local count: 686828460]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 24> [local count: 686828460]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToNotify_33(D) != 0)
    goto <bb 6>; [67.00%]
  else
    goto <bb 8>; [33.00%]

  <bb 6> [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_63 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_63

  <bb 7> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 25> [local count: 1073741824]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortValidateInterruptPriority ();
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTaskToNotify_32(D)
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY ulPortRaiseBASEPRI
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	mrs %0, basepri											
	mov %1, %2												
	msr basepri, %1											
	isb														
	dsb														
" : "=r" ulOriginalBASEPRI_64, "=r" ulNewBASEPRI_65 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_65
  # DEBUG ulOriginalBASEPRI => ulOriginalBASEPRI_64
  # DEBUG BEGIN_STMT
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG ulOriginalBASEPRI => NULL
  # DEBUG uxSavedInterruptStatus => ulOriginalBASEPRI_64
  # DEBUG BEGIN_STMT
  ucOriginalNotifyState_36 ={v} MEM[(struct TCB_t *)xTaskToNotify_32(D)].ucNotifyState[0];
  # DEBUG ucOriginalNotifyState => ucOriginalNotifyState_36
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].ucNotifyState[0] ={v} 2;
  # DEBUG BEGIN_STMT
  _1 ={v} MEM[(struct TCB_t *)xTaskToNotify_32(D)].ulNotifiedValue[0];
  _2 = _1 + 1;
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].ulNotifiedValue[0] ={v} _2;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (ucOriginalNotifyState_36 == 1)
    goto <bb 9>; [34.00%]
  else
    goto <bb 23>; [66.00%]

  <bb 9> [local count: 17981]:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].xEventListItem.pvContainer;
  if (_3 != 0B)
    goto <bb 10>; [70.00%]
  else
    goto <bb 12>; [30.00%]

  <bb 10> [local count: 12587]:
  # 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_66 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_66

  <bb 11> [local count: 125868183]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 26> [local count: 125868183]:
  goto <bb 11>; [100.00%]

  <bb 12> [local count: 5394]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.160_4 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.160_4 == 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 13> [local count: 2697]:
  # DEBUG BEGIN_STMT
  pxList_46 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pvContainer;
  # DEBUG pxList => pxList_46
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pxNext;
  _6 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pxPrevious;
  _5->pxPrevious = _6;
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pxPrevious;
  _7->pxNext = _5;
  # DEBUG BEGIN_STMT
  _8 = pxList_46->pxIndex;
  _9 = &MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem;
  if (_8 == _9)
    goto <bb 14>; [30.00%]
  else
    goto <bb 15>; [70.00%]

  <bb 14> [local count: 809]:
  # DEBUG BEGIN_STMT
  pxList_46->pxIndex = _7;

  <bb 15> [local count: 2697]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _10 ={v} pxList_46->uxNumberOfItems;
  _11 = _10 + 4294967295;
  pxList_46->uxNumberOfItems ={v} _11;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].uxPriority;
  uxTopReadyPriority.161_13 ={v} uxTopReadyPriority;
  if (_12 > uxTopReadyPriority.161_13)
    goto <bb 16>; [50.00%]
  else
    goto <bb 17>; [50.00%]

  <bb 16> [local count: 1349]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _12;

  <bb 17> [local count: 2697]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_52 = pxReadyTasksLists[_12].pxIndex;
  # DEBUG pxIndex => pxIndex_52
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pxNext = pxIndex_52;
  # DEBUG BEGIN_STMT
  _14 = pxIndex_52->pxPrevious;
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pxPrevious = _14;
  # DEBUG BEGIN_STMT
  _15 = pxIndex_52->pxPrevious;
  _15->pxNext = _9;
  # DEBUG BEGIN_STMT
  pxIndex_52->pxPrevious = _9;
  # DEBUG BEGIN_STMT
  _16 = &pxReadyTasksLists[_12];
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xStateListItem.pvContainer = _16;
  # DEBUG BEGIN_STMT
  _17 ={v} pxReadyTasksLists[_12].uxNumberOfItems;
  _18 = _17 + 1;
  pxReadyTasksLists[_12].uxNumberOfItems ={v} _18;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 18> [local count: 2697]:
  # DEBUG BEGIN_STMT
  pxIndex_39 = xPendingReadyList.pxIndex;
  # DEBUG pxIndex => pxIndex_39
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xEventListItem.pxNext = pxIndex_39;
  # DEBUG BEGIN_STMT
  _19 = pxIndex_39->pxPrevious;
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xEventListItem.pxPrevious = _19;
  # DEBUG BEGIN_STMT
  _20 = pxIndex_39->pxPrevious;
  _21 = &MEM[(struct TCB_t *)xTaskToNotify_32(D)].xEventListItem;
  _20->pxNext = _21;
  # DEBUG BEGIN_STMT
  pxIndex_39->pxPrevious = _21;
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_32(D)].xEventListItem.pvContainer = &xPendingReadyList;
  # DEBUG BEGIN_STMT
  _22 ={v} xPendingReadyList.uxNumberOfItems;
  _23 = _22 + 1;
  xPendingReadyList.uxNumberOfItems ={v} _23;

  <bb 19> [local count: 5394]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _24 = MEM[(struct TCB_t *)xTaskToNotify_32(D)].uxPriority;
  pxCurrentTCB.162_25 ={v} pxCurrentTCB;
  _26 = pxCurrentTCB.162_25->uxPriority;
  if (_24 > _26)
    goto <bb 20>; [50.00%]
  else
    goto <bb 23>; [50.00%]

  <bb 20> [local count: 2697]:
  # DEBUG BEGIN_STMT
  if (pxHigherPriorityTaskWoken_59(D) != 0B)
    goto <bb 21>; [70.00%]
  else
    goto <bb 22>; [30.00%]

  <bb 21> [local count: 1888]:
  # DEBUG BEGIN_STMT
  *pxHigherPriorityTaskWoken_59(D) = 1;

  <bb 22> [local count: 2697]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 23> [local count: 40299]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ulNewMaskValue => ulOriginalBASEPRI_64
  # DEBUG INLINE_ENTRY vPortSetBASEPRI
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	msr basepri, %0	" :  : "r" ulOriginalBASEPRI_64 : "memory");
  # DEBUG ulNewMaskValue => NULL
  return;

}


xTaskGenericNotifyFromISR (struct tskTaskControlBlock * xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t * pulPreviousNotificationValue, BaseType_t * pxHigherPriorityTaskWoken)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulOriginalBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct ListItem_t * const pxIndex;
  struct List_t * const pxList;
  BaseType_t xReturn;
  uint8_t ucOriginalNotifyState;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int xTickCount.156_6;
  struct xLIST * _7;
  long unsigned int uxSchedulerSuspended.157_8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct xLIST_ITEM * _11;
  struct ListItem_t * _12;
  struct ListItem_t * _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int uxTopReadyPriority.158_17;
  struct xLIST_ITEM * _18;
  struct xLIST_ITEM * _19;
  struct List_t * _20;
  long unsigned int _21;
  long unsigned int _22;
  struct xLIST_ITEM * _23;
  struct xLIST_ITEM * _24;
  struct ListItem_t * _25;
  long unsigned int _26;
  long unsigned int _27;
  long unsigned int _28;
  struct TCB_t * pxCurrentTCB.159_29;
  long unsigned int _30;

  <bb 2> [local count: 228942]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTaskToNotify_39(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 68683]:
  # 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_76 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_76

  <bb 4> [local count: 686828460]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 35> [local count: 686828460]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToNotify_40(D) != 0)
    goto <bb 6>; [67.00%]
  else
    goto <bb 8>; [33.00%]

  <bb 6> [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_77 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_77

  <bb 7> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 36> [local count: 1073741824]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortValidateInterruptPriority ();
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTaskToNotify_39(D)
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY ulPortRaiseBASEPRI
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	mrs %0, basepri											
	mov %1, %2												
	msr basepri, %1											
	isb														
	dsb														
" : "=r" ulOriginalBASEPRI_78, "=r" ulNewBASEPRI_79 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_79
  # DEBUG ulOriginalBASEPRI => ulOriginalBASEPRI_78
  # DEBUG BEGIN_STMT
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG ulOriginalBASEPRI => NULL
  # DEBUG uxSavedInterruptStatus => ulOriginalBASEPRI_78
  # DEBUG BEGIN_STMT
  if (pulPreviousNotificationValue_43(D) != 0B)
    goto <bb 9>; [70.00%]
  else
    goto <bb 10>; [30.00%]

  <bb 9> [local count: 37020]:
  # DEBUG BEGIN_STMT
  _1 ={v} MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0];
  *pulPreviousNotificationValue_43(D) = _1;

  <bb 10> [local count: 52886]:
  # DEBUG BEGIN_STMT
  ucOriginalNotifyState_45 ={v} MEM[(struct TCB_t *)xTaskToNotify_39(D)].ucNotifyState[0];
  # DEBUG ucOriginalNotifyState => ucOriginalNotifyState_45
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].ucNotifyState[0] ={v} 2;
  # DEBUG BEGIN_STMT
  switch (eAction_47(D)) <default: <L16> [16.67%], case 0: <L39> [16.67%], case 1: <L8> [16.67%], case 2: <L9> [16.67%], case 3: <L10> [16.67%], case 4: <L11> [16.67%]>

  <bb 11> [local count: 8816]:
<L8>:
  # DEBUG BEGIN_STMT
  _2 ={v} MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0];
  _3 = _2 | ulValue_48(D);
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0] ={v} _3;
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 12> [local count: 8816]:
<L9>:
  # DEBUG BEGIN_STMT
  _4 ={v} MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0];
  _5 = _4 + 1;
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0] ={v} _5;
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 13> [local count: 8816]:
<L10>:
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0] ={v} ulValue_48(D);
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 14> [local count: 8816]:
<L11>:
  # DEBUG BEGIN_STMT
  if (ucOriginalNotifyState_45 != 2)
    goto <bb 15>; [66.00%]
  else
    goto <bb 19>; [34.00%]

  <bb 15> [local count: 5819]:
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].ulNotifiedValue[0] ={v} ulValue_48(D);
  goto <bb 19>; [100.00%]

  <bb 16> [local count: 8816]:
<L16>:
  # DEBUG BEGIN_STMT
  xTickCount.156_6 ={v} xTickCount;
  if (xTickCount.156_6 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 19>; [50.00%]

  <bb 17> [local count: 4408]:
  # 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_80 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_80

  <bb 18> [local count: 44080307]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 37> [local count: 44080307]:
  goto <bb 18>; [100.00%]

  <bb 19> [local count: 48488]:
  # xReturn_31 = PHI <1(11), 1(12), 1(13), 0(14), 1(10), 1(16), 1(15)>
<L39>:
  # DEBUG xReturn => xReturn_31
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (ucOriginalNotifyState_45 == 1)
    goto <bb 20>; [34.00%]
  else
    goto <bb 34>; [66.00%]

  <bb 20> [local count: 16486]:
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].xEventListItem.pvContainer;
  if (_7 != 0B)
    goto <bb 21>; [70.00%]
  else
    goto <bb 23>; [30.00%]

  <bb 21> [local count: 11540]:
  # 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_81 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_81

  <bb 22> [local count: 115402244]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 38> [local count: 115402244]:
  goto <bb 22>; [100.00%]

  <bb 23> [local count: 4946]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.157_8 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.157_8 == 0)
    goto <bb 24>; [50.00%]
  else
    goto <bb 29>; [50.00%]

  <bb 24> [local count: 2473]:
  # DEBUG BEGIN_STMT
  pxList_60 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pvContainer;
  # DEBUG pxList => pxList_60
  # DEBUG BEGIN_STMT
  _9 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pxNext;
  _10 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pxPrevious;
  _9->pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _11 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pxPrevious;
  _11->pxNext = _9;
  # DEBUG BEGIN_STMT
  _12 = pxList_60->pxIndex;
  _13 = &MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem;
  if (_12 == _13)
    goto <bb 25>; [30.00%]
  else
    goto <bb 26>; [70.00%]

  <bb 25> [local count: 742]:
  # DEBUG BEGIN_STMT
  pxList_60->pxIndex = _11;

  <bb 26> [local count: 2473]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 ={v} pxList_60->uxNumberOfItems;
  _15 = _14 + 4294967295;
  pxList_60->uxNumberOfItems ={v} _15;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _16 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].uxPriority;
  uxTopReadyPriority.158_17 ={v} uxTopReadyPriority;
  if (_16 > uxTopReadyPriority.158_17)
    goto <bb 27>; [50.00%]
  else
    goto <bb 28>; [50.00%]

  <bb 27> [local count: 1236]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _16;

  <bb 28> [local count: 2473]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_66 = pxReadyTasksLists[_16].pxIndex;
  # DEBUG pxIndex => pxIndex_66
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pxNext = pxIndex_66;
  # DEBUG BEGIN_STMT
  _18 = pxIndex_66->pxPrevious;
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pxPrevious = _18;
  # DEBUG BEGIN_STMT
  _19 = pxIndex_66->pxPrevious;
  _19->pxNext = _13;
  # DEBUG BEGIN_STMT
  pxIndex_66->pxPrevious = _13;
  # DEBUG BEGIN_STMT
  _20 = &pxReadyTasksLists[_16];
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xStateListItem.pvContainer = _20;
  # DEBUG BEGIN_STMT
  _21 ={v} pxReadyTasksLists[_16].uxNumberOfItems;
  _22 = _21 + 1;
  pxReadyTasksLists[_16].uxNumberOfItems ={v} _22;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 30>; [100.00%]

  <bb 29> [local count: 2473]:
  # DEBUG BEGIN_STMT
  pxIndex_53 = xPendingReadyList.pxIndex;
  # DEBUG pxIndex => pxIndex_53
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xEventListItem.pxNext = pxIndex_53;
  # DEBUG BEGIN_STMT
  _23 = pxIndex_53->pxPrevious;
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xEventListItem.pxPrevious = _23;
  # DEBUG BEGIN_STMT
  _24 = pxIndex_53->pxPrevious;
  _25 = &MEM[(struct TCB_t *)xTaskToNotify_39(D)].xEventListItem;
  _24->pxNext = _25;
  # DEBUG BEGIN_STMT
  pxIndex_53->pxPrevious = _25;
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_39(D)].xEventListItem.pvContainer = &xPendingReadyList;
  # DEBUG BEGIN_STMT
  _26 ={v} xPendingReadyList.uxNumberOfItems;
  _27 = _26 + 1;
  xPendingReadyList.uxNumberOfItems ={v} _27;

  <bb 30> [local count: 4946]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _28 = MEM[(struct TCB_t *)xTaskToNotify_39(D)].uxPriority;
  pxCurrentTCB.159_29 ={v} pxCurrentTCB;
  _30 = pxCurrentTCB.159_29->uxPriority;
  if (_28 > _30)
    goto <bb 31>; [50.00%]
  else
    goto <bb 34>; [50.00%]

  <bb 31> [local count: 2473]:
  # DEBUG BEGIN_STMT
  if (pxHigherPriorityTaskWoken_73(D) != 0B)
    goto <bb 32>; [70.00%]
  else
    goto <bb 33>; [30.00%]

  <bb 32> [local count: 1731]:
  # DEBUG BEGIN_STMT
  *pxHigherPriorityTaskWoken_73(D) = 1;

  <bb 33> [local count: 2473]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 34> [local count: 36948]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ulNewMaskValue => ulOriginalBASEPRI_78
  # DEBUG INLINE_ENTRY vPortSetBASEPRI
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	msr basepri, %0	" :  : "r" ulOriginalBASEPRI_78 : "memory");
  # DEBUG ulNewMaskValue => NULL
  # DEBUG BEGIN_STMT
  return xReturn_31;

}


xTaskGenericNotify (struct tskTaskControlBlock * xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t * pulPreviousNotificationValue)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct List_t * const pxList;
  uint8_t ucOriginalNotifyState;
  BaseType_t xReturn;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int xTickCount.153_6;
  struct xLIST_ITEM * _7;
  struct xLIST_ITEM * _8;
  struct xLIST_ITEM * _9;
  struct ListItem_t * _10;
  struct ListItem_t * _11;
  long unsigned int _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int uxTopReadyPriority.154_15;
  struct xLIST_ITEM * _16;
  struct xLIST_ITEM * _17;
  struct List_t * _18;
  long unsigned int _19;
  long unsigned int _20;
  struct xLIST * _21;
  struct TCB_t * pxCurrentTCB.155_22;
  long unsigned int _23;

  <bb 2> [local count: 214748]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToNotify_30(D) != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 5>; [50.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_61 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_61

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 30> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTaskToNotify_31(D) == 0B)
    goto <bb 6>; [46.53%]
  else
    goto <bb 8>; [53.47%]

  <bb 6> [local count: 49961]:
  # 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_62 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_62

  <bb 7> [local count: 499612071]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 31> [local count: 499612071]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 57413]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTaskToNotify_31(D)
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  if (pulPreviousNotificationValue_34(D) != 0B)
    goto <bb 9>; [70.00%]
  else
    goto <bb 10>; [30.00%]

  <bb 9> [local count: 40189]:
  # DEBUG BEGIN_STMT
  _1 ={v} MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0];
  *pulPreviousNotificationValue_34(D) = _1;

  <bb 10> [local count: 57413]:
  # DEBUG BEGIN_STMT
  ucOriginalNotifyState_36 ={v} MEM[(struct TCB_t *)xTaskToNotify_31(D)].ucNotifyState[0];
  # DEBUG ucOriginalNotifyState => ucOriginalNotifyState_36
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].ucNotifyState[0] ={v} 2;
  # DEBUG BEGIN_STMT
  switch (eAction_38(D)) <default: <L16> [16.67%], case 0: <L35> [16.67%], case 1: <L8> [16.67%], case 2: <L9> [16.67%], case 3: <L10> [16.67%], case 4: <L11> [16.67%]>

  <bb 11> [local count: 9571]:
<L8>:
  # DEBUG BEGIN_STMT
  _2 ={v} MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0];
  _3 = _2 | ulValue_39(D);
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0] ={v} _3;
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 12> [local count: 9571]:
<L9>:
  # DEBUG BEGIN_STMT
  _4 ={v} MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0];
  _5 = _4 + 1;
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0] ={v} _5;
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 13> [local count: 9571]:
<L10>:
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0] ={v} ulValue_39(D);
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 14> [local count: 9571]:
<L11>:
  # DEBUG BEGIN_STMT
  if (ucOriginalNotifyState_36 != 2)
    goto <bb 15>; [66.00%]
  else
    goto <bb 19>; [34.00%]

  <bb 15> [local count: 6317]:
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].ulNotifiedValue[0] ={v} ulValue_39(D);
  goto <bb 19>; [100.00%]

  <bb 16> [local count: 9571]:
<L16>:
  # DEBUG BEGIN_STMT
  xTickCount.153_6 ={v} xTickCount;
  if (xTickCount.153_6 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 19>; [50.00%]

  <bb 17> [local count: 4785]:
  # 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_63 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_63

  <bb 18> [local count: 47853715]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 32> [local count: 47853715]:
  goto <bb 18>; [100.00%]

  <bb 19> [local count: 52639]:
  # xReturn_24 = PHI <1(11), 1(12), 1(13), 0(14), 1(10), 1(16), 1(15)>
<L35>:
  # DEBUG xReturn => xReturn_24
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (ucOriginalNotifyState_36 == 1)
    goto <bb 20>; [51.12%]
  else
    goto <bb 29>; [48.88%]

  <bb 20> [local count: 26909]:
  # DEBUG BEGIN_STMT
  pxList_44 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pvContainer;
  # DEBUG pxList => pxList_44
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pxNext;
  _8 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pxPrevious;
  _7->pxPrevious = _8;
  # DEBUG BEGIN_STMT
  _9 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pxPrevious;
  _9->pxNext = _7;
  # DEBUG BEGIN_STMT
  _10 = pxList_44->pxIndex;
  _11 = &MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem;
  if (_10 == _11)
    goto <bb 21>; [30.00%]
  else
    goto <bb 22>; [70.00%]

  <bb 21> [local count: 8073]:
  # DEBUG BEGIN_STMT
  pxList_44->pxIndex = _9;

  <bb 22> [local count: 26909]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 ={v} pxList_44->uxNumberOfItems;
  _13 = _12 + 4294967295;
  pxList_44->uxNumberOfItems ={v} _13;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].uxPriority;
  uxTopReadyPriority.154_15 ={v} uxTopReadyPriority;
  if (_14 > uxTopReadyPriority.154_15)
    goto <bb 23>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 23> [local count: 13455]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _14;

  <bb 24> [local count: 26909]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_50 = pxReadyTasksLists[_14].pxIndex;
  # DEBUG pxIndex => pxIndex_50
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pxNext = pxIndex_50;
  # DEBUG BEGIN_STMT
  _16 = pxIndex_50->pxPrevious;
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pxPrevious = _16;
  # DEBUG BEGIN_STMT
  _17 = pxIndex_50->pxPrevious;
  _17->pxNext = _11;
  # DEBUG BEGIN_STMT
  pxIndex_50->pxPrevious = _11;
  # DEBUG BEGIN_STMT
  _18 = &pxReadyTasksLists[_14];
  MEM[(struct TCB_t *)xTaskToNotify_31(D)].xStateListItem.pvContainer = _18;
  # DEBUG BEGIN_STMT
  _19 ={v} pxReadyTasksLists[_14].uxNumberOfItems;
  _20 = _19 + 1;
  pxReadyTasksLists[_14].uxNumberOfItems ={v} _20;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _21 = MEM[(struct TCB_t *)xTaskToNotify_31(D)].xEventListItem.pvContainer;
  if (_21 != 0B)
    goto <bb 25>; [70.00%]
  else
    goto <bb 27>; [30.00%]

  <bb 25> [local count: 18836]:
  # 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 26> [local count: 188363707]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 33> [local count: 188363706]:
  goto <bb 26>; [100.00%]

  <bb 27> [local count: 8073]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.155_22 ={v} pxCurrentTCB;
  _23 = pxCurrentTCB.155_22->uxPriority;
  if (_14 > _23)
    goto <bb 28>; [50.00%]
  else
    goto <bb 29>; [50.00%]

  <bb 28> [local count: 4036]:
  # 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

  <bb 29> [local count: 33803]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return xReturn_24;

}


xTaskGenericNotifyWait (UBaseType_t uxIndexToWait, uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t * pulNotificationValue, TickType_t xTicksToWait)
{
  uint32_t ulNewBASEPRI;
  BaseType_t xReturn;
  struct TCB_t * pxCurrentTCB.146_1;
  unsigned char _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  struct TCB_t * pxCurrentTCB.148_6;
  struct TCB_t * pxCurrentTCB.149_7;
  long unsigned int _8;
  struct TCB_t * pxCurrentTCB.150_9;
  unsigned char _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _13;
  struct TCB_t * pxCurrentTCB.152_14;
  struct TCB_t * pxCurrentTCB.147_22;
  struct TCB_t * pxCurrentTCB.151_35;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToWait_19(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_40 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_40

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  pxCurrentTCB.146_1 ={v} pxCurrentTCB;
  _2 ={v} pxCurrentTCB.146_1->ucNotifyState[0];
  if (_2 != 2)
    goto <bb 6>; [66.00%]
  else
    goto <bb 8>; [34.00%]

  <bb 6> [local count: 34905]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.147_22 ={v} pxCurrentTCB;
  _3 ={v} pxCurrentTCB.147_22->ulNotifiedValue[0];
  _4 = ~ulBitsToClearOnEntry_23(D);
  _5 = _3 & _4;
  pxCurrentTCB.147_22->ulNotifiedValue[0] ={v} _5;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.148_6 ={v} pxCurrentTCB;
  pxCurrentTCB.148_6->ucNotifyState[0] ={v} 1;
  # DEBUG BEGIN_STMT
  if (xTicksToWait_26(D) != 0)
    goto <bb 7>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 7> [local count: 11519]:
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToWait_26(D), 1);
  # DEBUG BEGIN_STMT
  # 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

  <bb 8> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (pulNotificationValue_33(D) != 0B)
    goto <bb 9>; [70.00%]
  else
    goto <bb 10>; [30.00%]

  <bb 9> [local count: 37020]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.149_7 ={v} pxCurrentTCB;
  _8 ={v} pxCurrentTCB.149_7->ulNotifiedValue[0];
  *pulNotificationValue_33(D) = _8;

  <bb 10> [local count: 52886]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.150_9 ={v} pxCurrentTCB;
  _10 ={v} pxCurrentTCB.150_9->ucNotifyState[0];
  if (_10 != 2)
    goto <bb 12>; [66.00%]
  else
    goto <bb 11>; [34.00%]

  <bb 11> [local count: 17981]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.151_35 ={v} pxCurrentTCB;
  _11 ={v} pxCurrentTCB.151_35->ulNotifiedValue[0];
  _12 = ~ulBitsToClearOnExit_36(D);
  _13 = _11 & _12;
  pxCurrentTCB.151_35->ulNotifiedValue[0] ={v} _13;
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 12> [local count: 52886]:
  # xReturn_15 = PHI <0(10), 1(11)>
  # DEBUG xReturn => xReturn_15
  # DEBUG BEGIN_STMT
  pxCurrentTCB.152_14 ={v} pxCurrentTCB;
  pxCurrentTCB.152_14->ucNotifyState[0] ={v} 0;
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return xReturn_15;

}


ulTaskGenericNotifyTake (UBaseType_t uxIndexToWait, BaseType_t xClearCountOnExit, TickType_t xTicksToWait)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulReturn;
  struct TCB_t * pxCurrentTCB.140_1;
  long unsigned int _2;
  struct TCB_t * pxCurrentTCB.141_3;
  struct TCB_t * pxCurrentTCB.142_4;
  struct TCB_t * pxCurrentTCB.143_5;
  struct TCB_t * pxCurrentTCB.144_6;
  long unsigned int _7;
  struct TCB_t * pxCurrentTCB.145_8;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (uxIndexToWait_11(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_28 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_28

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  pxCurrentTCB.140_1 ={v} pxCurrentTCB;
  _2 ={v} pxCurrentTCB.140_1->ulNotifiedValue[0];
  if (_2 == 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 6> [local count: 26443]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.141_3 ={v} pxCurrentTCB;
  pxCurrentTCB.141_3->ucNotifyState[0] ={v} 1;
  # DEBUG BEGIN_STMT
  if (xTicksToWait_15(D) != 0)
    goto <bb 7>; [33.00%]
  else
    goto <bb 8>; [67.00%]

  <bb 7> [local count: 8726]:
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToWait_15(D), 1);
  # DEBUG BEGIN_STMT
  # 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

  <bb 8> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.142_4 ={v} pxCurrentTCB;
  ulReturn_22 ={v} pxCurrentTCB.142_4->ulNotifiedValue[0];
  # DEBUG ulReturn => ulReturn_22
  # DEBUG BEGIN_STMT
  if (ulReturn_22 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 9> [local count: 26443]:
  # DEBUG BEGIN_STMT
  if (xClearCountOnExit_23(D) != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 10> [local count: 13221]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.143_5 ={v} pxCurrentTCB;
  pxCurrentTCB.143_5->ulNotifiedValue[0] ={v} 0;
  goto <bb 12>; [100.00%]

  <bb 11> [local count: 13221]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.144_6 ={v} pxCurrentTCB;
  _7 = ulReturn_22 + 4294967295;
  pxCurrentTCB.144_6->ulNotifiedValue[0] ={v} _7;

  <bb 12> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.145_8 ={v} pxCurrentTCB;
  pxCurrentTCB.145_8->ucNotifyState[0] ={v} 0;
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return ulReturn_22;

}


pvTaskIncrementMutexHeldCount ()
{
  struct TCB_t * pxCurrentTCB.138_1;
  struct TCB_t * pxCurrentTCB.139_2;
  long unsigned int _3;
  long unsigned int _4;
  struct tskTaskControlBlock * _8;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.138_1 ={v} pxCurrentTCB;
  if (pxCurrentTCB.138_1 != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 4>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.139_2 ={v} pxCurrentTCB;
  _3 = pxCurrentTCB.139_2->uxMutexesHeld;
  _4 = _3 + 1;
  pxCurrentTCB.139_2->uxMutexesHeld = _4;

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _8 ={v} pxCurrentTCB;
  return _8;

}


uxTaskResetEventItemValue ()
{
  TickType_t uxReturn;
  struct TCB_t * pxCurrentTCB.135_1;
  struct TCB_t * pxCurrentTCB.136_2;
  long unsigned int _3;
  struct TCB_t * pxCurrentTCB.137_4;
  long unsigned int _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.135_1 ={v} pxCurrentTCB;
  uxReturn_7 = pxCurrentTCB.135_1->xEventListItem.xItemValue;
  # DEBUG uxReturn => uxReturn_7
  # DEBUG BEGIN_STMT
  pxCurrentTCB.136_2 ={v} pxCurrentTCB;
  _3 = pxCurrentTCB.136_2->uxPriority;
  pxCurrentTCB.137_4 ={v} pxCurrentTCB;
  _5 = 5 - _3;
  pxCurrentTCB.137_4->xEventListItem.xItemValue = _5;
  # DEBUG BEGIN_STMT
  return uxReturn_7;

}


vTaskList (char * pcWriteBuffer)
{
  char cStatus;
  UBaseType_t x;
  UBaseType_t uxArraySize;
  struct TaskStatus_t * pxTaskStatusArray;
  long unsigned int uxCurrentNumberOfTasks.134_1;
  long unsigned int _2;
  long unsigned int _3;
  struct TaskStatus_t * _4;
  <unnamed type> _5;
  unsigned int _6;
  const char * _8;
  int _9;
  long unsigned int _11;
  short unsigned int _12;
  unsigned int _13;
  long unsigned int _14;
  unsigned int _15;

  <bb 2> [local count: 220893212]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *pcWriteBuffer_22(D) = 0;
  # DEBUG BEGIN_STMT
  uxArraySize_24 ={v} uxCurrentNumberOfTasks;
  # DEBUG uxArraySize => uxArraySize_24
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.134_1 ={v} uxCurrentNumberOfTasks;
  _2 = uxCurrentNumberOfTasks.134_1 * 36;
  pxTaskStatusArray_26 = pvPortMalloc (_2);
  # DEBUG pxTaskStatusArray => pxTaskStatusArray_26
  # DEBUG BEGIN_STMT
  if (pxTaskStatusArray_26 != 0B)
    goto <bb 3>; [53.47%]
  else
    goto <bb 10>; [46.53%]

  <bb 3> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  uxArraySize_28 = uxTaskGetSystemState (pxTaskStatusArray_26, uxArraySize_24, 0B);
  # DEBUG uxArraySize => uxArraySize_28
  # DEBUG BEGIN_STMT
  # DEBUG x => 0
  goto <bb 8>; [100.00%]

  <bb 4> [local count: 955630226]:
  # DEBUG BEGIN_STMT
  _3 = x_17 * 36;
  _4 = pxTaskStatusArray_26 + _3;
  _5 = _4->eCurrentState;
  _6 = _5;
  if (_6 <= 4)
    goto <bb 6>; [50.00%]
  else
    goto <bb 5>; [50.00%]

  <bb 5> [local count: 477815113]:
<L15>:
  cStatus_10 = 0;
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 477815113]:
<L16>:
  cStatus_7 = CSWTCH.225[_6];

  <bb 7> [local count: 955630226]:
  # cStatus_18 = PHI <cStatus_7(6), cStatus_10(5)>
<L17>:
<L14>:
  # DEBUG cStatus => cStatus_18
  # DEBUG BEGIN_STMT
  _8 = _4->pcTaskName;
  pcWriteBuffer_31 = prvWriteNameToBuffer (pcWriteBuffer_16, _8);
  # DEBUG pcWriteBuffer => pcWriteBuffer_31
  # DEBUG BEGIN_STMT
  _9 = (int) cStatus_18;
  _11 = _4->uxCurrentPriority;
  _12 = _4->usStackHighWaterMark;
  _13 = (unsigned int) _12;
  _14 = _4->xTaskNumber;
  sprintf (pcWriteBuffer_31, "\t%c\t%u\t%u\t%u\r\n", _9, _11, _13, _14);
  # DEBUG BEGIN_STMT
  _15 = strlen (pcWriteBuffer_31);
  pcWriteBuffer_33 = pcWriteBuffer_31 + _15;
  # DEBUG pcWriteBuffer => pcWriteBuffer_33
  # DEBUG BEGIN_STMT
  x_34 = x_17 + 1;
  # DEBUG x => x_34

  <bb 8> [local count: 1073741824]:
  # pcWriteBuffer_16 = PHI <pcWriteBuffer_22(D)(3), pcWriteBuffer_33(7)>
  # x_17 = PHI <0(3), x_34(7)>
  # DEBUG x => x_17
  # DEBUG pcWriteBuffer => pcWriteBuffer_16
  # DEBUG BEGIN_STMT
  if (x_17 < uxArraySize_28)
    goto <bb 4>; [89.00%]
  else
    goto <bb 9>; [11.00%]

  <bb 9> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  vPortFree (pxTaskStatusArray_26);

  <bb 10> [local count: 220893212]:
  # DEBUG BEGIN_STMT
  return;

}


prvWriteNameToBuffer (char * pcBuffer, const char * pcTaskName)
{
  size_t x;
  char * _1;
  char * _2;

  <bb 2> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  strcpy (pcBuffer_6(D), pcTaskName_7(D));
  # DEBUG BEGIN_STMT
  x_9 = strlen (pcBuffer_6(D));
  # DEBUG x => x_9
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  _1 = pcBuffer_6(D) + x_3;
  *_1 = 32;
  # DEBUG BEGIN_STMT
  x_13 = x_3 + 1;
  # DEBUG x => x_13

  <bb 4> [local count: 1073741824]:
  # x_3 = PHI <x_9(2), x_13(3)>
  # DEBUG x => x_3
  # DEBUG BEGIN_STMT
  if (x_3 <= 8)
    goto <bb 3>; [89.00%]
  else
    goto <bb 5>; [11.00%]

  <bb 5> [local count: 118111601]:
  # x_11 = PHI <x_3(4)>
  # DEBUG BEGIN_STMT
  _2 = pcBuffer_6(D) + x_11;
  *_2 = 0;
  # DEBUG BEGIN_STMT
  return _2;

}


vTaskPriorityDisinheritAfterTimeout (struct tskTaskControlBlock * const pxMutexHolder, UBaseType_t uxHighestPriorityWaitingTask)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  UBaseType_t uxPriorityToUse;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  struct TCB_t * pxCurrentTCB.132_4;
  long unsigned int _5;
  signed int _6;
  long unsigned int _7;
  struct xLIST * _8;
  struct List_t * _9;
  struct ListItem_t * _10;
  long unsigned int _12;
  long unsigned int uxTopReadyPriority.133_13;
  struct xLIST_ITEM * _14;
  struct xLIST_ITEM * _15;
  struct List_t * _16;
  long unsigned int _17;
  long unsigned int _18;

  <bb 2> [local count: 306783]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => pxMutexHolder_22(D)
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxOnlyOneMutexHeld => 1
  # DEBUG BEGIN_STMT
  if (pxMutexHolder_22(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 17>; [30.00%]

  <bb 3> [local count: 214748]:
  # DEBUG BEGIN_STMT
  _1 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].uxMutexesHeld;
  if (_1 == 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 4> [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_36 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_36

  <bb 5> [local count: 1073741823]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 18> [local count: 1073741824]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].uxBasePriority;
  uxPriorityToUse_11 = MAX_EXPR <_2, uxHighestPriorityWaitingTask_24(D)>;
  # DEBUG uxPriorityToUse => uxPriorityToUse_11
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].uxPriority;
  if (_3 != uxPriorityToUse_11)
    goto <bb 7>; [66.00%]
  else
    goto <bb 17>; [34.00%]

  <bb 7> [local count: 70867]:
  # DEBUG BEGIN_STMT
  if (_1 == 1)
    goto <bb 8>; [34.00%]
  else
    goto <bb 17>; [66.00%]

  <bb 8> [local count: 24095]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.132_4 ={v} pxCurrentTCB;
  if (pxCurrentTCB.132_4 == pxMutexHolder_22(D))
    goto <bb 9>; [30.00%]
  else
    goto <bb 11>; [70.00%]

  <bb 9> [local count: 7228]:
  # 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_37 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_37

  <bb 10> [local count: 72284299]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 19> [local count: 72284299]:
  goto <bb 10>; [100.00%]

  <bb 11> [local count: 16866]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxPriorityUsedOnEntry => _3
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)pxMutexHolder_22(D)].uxPriority = uxPriorityToUse_11;
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].xEventListItem.xItemValue;
  _6 = (signed int) _5;
  if (_6 >= 0)
    goto <bb 12>; [59.00%]
  else
    goto <bb 13>; [41.00%]

  <bb 12> [local count: 9951]:
  # DEBUG BEGIN_STMT
  _7 = 5 - uxPriorityToUse_11;
  MEM[(struct TCB_t *)pxMutexHolder_22(D)].xEventListItem.xItemValue = _7;

  <bb 13> [local count: 16866]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _8 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].xStateListItem.pvContainer;
  _9 = &pxReadyTasksLists[_3];
  if (_8 == _9)
    goto <bb 14>; [17.43%]
  else
    goto <bb 17>; [82.57%]

  <bb 14> [local count: 2940]:
  # DEBUG BEGIN_STMT
  _10 = &MEM[(struct TCB_t *)pxMutexHolder_22(D)].xStateListItem;
  uxListRemove (_10);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 = MEM[(struct TCB_t *)pxMutexHolder_22(D)].uxPriority;
  uxTopReadyPriority.133_13 ={v} uxTopReadyPriority;
  if (_12 > uxTopReadyPriority.133_13)
    goto <bb 15>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 15> [local count: 1470]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _12;

  <bb 16> [local count: 2940]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_29 = pxReadyTasksLists[_12].pxIndex;
  # DEBUG pxIndex => pxIndex_29
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)pxMutexHolder_22(D)].xStateListItem.pxNext = pxIndex_29;
  # DEBUG BEGIN_STMT
  _14 = pxIndex_29->pxPrevious;
  MEM[(struct TCB_t *)pxMutexHolder_22(D)].xStateListItem.pxPrevious = _14;
  # DEBUG BEGIN_STMT
  _15 = pxIndex_29->pxPrevious;
  _15->pxNext = _10;
  # DEBUG BEGIN_STMT
  pxIndex_29->pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _16 = &pxReadyTasksLists[_12];
  MEM[(struct TCB_t *)pxMutexHolder_22(D)].xStateListItem.pvContainer = _16;
  # DEBUG BEGIN_STMT
  _17 ={v} pxReadyTasksLists[_12].uxNumberOfItems;
  _18 = _17 + 1;
  pxReadyTasksLists[_12].uxNumberOfItems ={v} _18;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 192180]:
  # DEBUG BEGIN_STMT
  return;

}


xTaskPriorityDisinherit (struct tskTaskControlBlock * const pxMutexHolder)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  BaseType_t xReturn;
  struct TCB_t * pxCurrentTCB.130_1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  struct ListItem_t * _6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int uxTopReadyPriority.131_9;
  struct xLIST_ITEM * _10;
  struct xLIST_ITEM * _11;
  struct List_t * _12;
  long unsigned int _13;
  long unsigned int _14;

  <bb 2> [local count: 219131]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => pxMutexHolder_18(D)
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 0
  # DEBUG BEGIN_STMT
  if (pxMutexHolder_18(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 14>; [30.00%]

  <bb 3> [local count: 153391]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.130_1 ={v} pxCurrentTCB;
  if (pxCurrentTCB.130_1 != pxMutexHolder_18(D))
    goto <bb 4>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 4> [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_32 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_32

  <bb 5> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 15> [local count: 1073741824]:
  goto <bb 5>; [100.00%]

  <bb 6> [local count: 46017]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxMutexesHeld;
  if (_2 == 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 7> [local count: 23009]:
  # 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_33 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_33

  <bb 8> [local count: 230087534]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 16> [local count: 230087534]:
  goto <bb 8>; [100.00%]

  <bb 9> [local count: 23009]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = _2 + 4294967295;
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxMutexesHeld = _3;
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxPriority;
  _5 = MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxBasePriority;
  if (_4 != _5)
    goto <bb 10>; [66.00%]
  else
    goto <bb 14>; [34.00%]

  <bb 10> [local count: 15186]:
  # DEBUG BEGIN_STMT
  if (_3 == 0)
    goto <bb 11>; [33.00%]
  else
    goto <bb 14>; [67.00%]

  <bb 11> [local count: 5011]:
  # DEBUG BEGIN_STMT
  _6 = &MEM[(struct TCB_t *)pxMutexHolder_18(D)].xStateListItem;
  uxListRemove (_6);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxBasePriority;
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].uxPriority = _7;
  # DEBUG BEGIN_STMT
  _8 = 5 - _7;
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].xEventListItem.xItemValue = _8;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTopReadyPriority.131_9 ={v} uxTopReadyPriority;
  if (_7 > uxTopReadyPriority.131_9)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 2506]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _7;

  <bb 13> [local count: 5011]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_25 = pxReadyTasksLists[_7].pxIndex;
  # DEBUG pxIndex => pxIndex_25
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].xStateListItem.pxNext = pxIndex_25;
  # DEBUG BEGIN_STMT
  _10 = pxIndex_25->pxPrevious;
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].xStateListItem.pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _11 = pxIndex_25->pxPrevious;
  _11->pxNext = _6;
  # DEBUG BEGIN_STMT
  pxIndex_25->pxPrevious = _6;
  # DEBUG BEGIN_STMT
  _12 = &pxReadyTasksLists[_7];
  MEM[(struct TCB_t *)pxMutexHolder_18(D)].xStateListItem.pvContainer = _12;
  # DEBUG BEGIN_STMT
  _13 ={v} pxReadyTasksLists[_7].uxNumberOfItems;
  _14 = _13 + 1;
  pxReadyTasksLists[_7].uxNumberOfItems ={v} _14;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 14> [local count: 88748]:
  # xReturn_15 = PHI <0(2), 1(13), 0(9), 0(10)>
  # DEBUG xReturn => xReturn_15
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xReturn_15;

}


xTaskPriorityInherit (struct tskTaskControlBlock * const pxMutexHolder)
{
  struct ListItem_t * const pxIndex;
  BaseType_t xReturn;
  long unsigned int _1;
  struct TCB_t * pxCurrentTCB.124_2;
  long unsigned int _3;
  long unsigned int _4;
  signed int _5;
  struct TCB_t * pxCurrentTCB.125_6;
  long unsigned int _7;
  long unsigned int _8;
  struct xLIST * _9;
  struct List_t * _10;
  struct ListItem_t * _11;
  struct TCB_t * pxCurrentTCB.126_12;
  long unsigned int _13;
  long unsigned int uxTopReadyPriority.127_14;
  struct xLIST_ITEM * _15;
  struct xLIST_ITEM * _16;
  struct List_t * _17;
  long unsigned int _18;
  long unsigned int _19;
  struct TCB_t * pxCurrentTCB.128_20;
  long unsigned int _21;
  long unsigned int _22;
  struct TCB_t * pxCurrentTCB.129_23;
  long unsigned int _24;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG pxMutexHolderTCB => pxMutexHolder_29(D)
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 0
  # DEBUG BEGIN_STMT
  if (pxMutexHolder_29(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 13>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  _1 = MEM[(struct TCB_t *)pxMutexHolder_29(D)].uxPriority;
  pxCurrentTCB.124_2 ={v} pxCurrentTCB;
  _3 = pxCurrentTCB.124_2->uxPriority;
  if (_1 < _3)
    goto <bb 4>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 4> [local count: 375809639]:
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct TCB_t *)pxMutexHolder_29(D)].xEventListItem.xItemValue;
  _5 = (signed int) _4;
  if (_5 >= 0)
    goto <bb 5>; [59.00%]
  else
    goto <bb 6>; [41.00%]

  <bb 5> [local count: 221727687]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.125_6 ={v} pxCurrentTCB;
  _7 = pxCurrentTCB.125_6->uxPriority;
  _8 = 5 - _7;
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].xEventListItem.xItemValue = _8;

  <bb 6> [local count: 375809639]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _9 = MEM[(struct TCB_t *)pxMutexHolder_29(D)].xStateListItem.pvContainer;
  _10 = &pxReadyTasksLists[_1];
  if (_9 == _10)
    goto <bb 7>; [17.43%]
  else
    goto <bb 10>; [82.57%]

  <bb 7> [local count: 65503620]:
  # DEBUG BEGIN_STMT
  _11 = &MEM[(struct TCB_t *)pxMutexHolder_29(D)].xStateListItem;
  uxListRemove (_11);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.126_12 ={v} pxCurrentTCB;
  _13 = pxCurrentTCB.126_12->uxPriority;
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].uxPriority = _13;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTopReadyPriority.127_14 ={v} uxTopReadyPriority;
  if (_13 > uxTopReadyPriority.127_14)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 8> [local count: 32751810]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _13;

  <bb 9> [local count: 65503620]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_36 = pxReadyTasksLists[_13].pxIndex;
  # DEBUG pxIndex => pxIndex_36
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].xStateListItem.pxNext = pxIndex_36;
  # DEBUG BEGIN_STMT
  _15 = pxIndex_36->pxPrevious;
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].xStateListItem.pxPrevious = _15;
  # DEBUG BEGIN_STMT
  _16 = pxIndex_36->pxPrevious;
  _16->pxNext = _11;
  # DEBUG BEGIN_STMT
  pxIndex_36->pxPrevious = _11;
  # DEBUG BEGIN_STMT
  _17 = &pxReadyTasksLists[_13];
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].xStateListItem.pvContainer = _17;
  # DEBUG BEGIN_STMT
  _18 ={v} pxReadyTasksLists[_13].uxNumberOfItems;
  _19 = _18 + 1;
  pxReadyTasksLists[_13].uxNumberOfItems ={v} _19;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 13>; [100.00%]

  <bb 10> [local count: 310306019]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.128_20 ={v} pxCurrentTCB;
  _21 = pxCurrentTCB.128_20->uxPriority;
  MEM[(struct TCB_t *)pxMutexHolder_29(D)].uxPriority = _21;
  goto <bb 13>; [100.00%]

  <bb 11> [local count: 375809639]:
  # DEBUG BEGIN_STMT
  _22 = MEM[(struct TCB_t *)pxMutexHolder_29(D)].uxBasePriority;
  pxCurrentTCB.129_23 ={v} pxCurrentTCB;
  _24 = pxCurrentTCB.129_23->uxPriority;
  if (_22 < _24)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 187904819]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 13> [local count: 1073741824]:
  # xReturn_25 = PHI <0(2), 0(11), 1(10), 1(12), 1(9)>
  # DEBUG xReturn => xReturn_25
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xReturn_25;

}


xTaskGetSchedulerState ()
{
  BaseType_t xReturn;
  long int xSchedulerRunning.122_1;
  long unsigned int uxSchedulerSuspended.123_2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xSchedulerRunning.122_1 ={v} xSchedulerRunning;
  if (xSchedulerRunning.122_1 == 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 3>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.123_2 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.123_2 == 0)
    goto <bb 5>; [35.00%]
  else
    goto <bb 4>; [65.00%]

  <bb 4> [local count: 348966093]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 0

  <bb 5> [local count: 1073741824]:
  # xReturn_3 = PHI <1(2), 2(3), 0(4)>
  # DEBUG xReturn => xReturn_3
  # DEBUG BEGIN_STMT
  return xReturn_3;

}


xTaskGetCurrentTaskHandle ()
{
  struct tskTaskControlBlock * xReturn;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xReturn_2 ={v} pxCurrentTCB;
  # DEBUG xReturn => xReturn_2
  # DEBUG BEGIN_STMT
  return xReturn_2;

}


prvResetNextTaskUnblockTime ()
{
  struct List_t * pxDelayedTaskList.20_1;
  long unsigned int _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.20_1 ={v} pxDelayedTaskList;
  _2 ={v} pxDelayedTaskList.20_1->uxNumberOfItems;
  if (_2 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime ={v} 4294967295;
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 536870912]:
  prvResetNextTaskUnblockTime.part.0 ();

  <bb 5> [local count: 1073741824]:
  return;

}


prvDeleteTCB (struct TCB_t * pxTCB)
{
  StackType_t * _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = pxTCB_3(D)->pxStack;
  vPortFree (_1);
  # DEBUG BEGIN_STMT
  vPortFree (pxTCB_3(D));
  return;

}


uxTaskGetStackHighWaterMark (struct tskTaskControlBlock * xTask)
{
  UBaseType_t uxReturn;
  uint8_t * pucEndOfStack;
  short unsigned int _1;
  struct TCB_t * iftmp.121_2;
  struct TCB_t * iftmp.121_5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_3(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 322122547]:
  iftmp.121_5 ={v} pxCurrentTCB;

  <bb 4> [local count: 1073741824]:
  # iftmp.121_2 = PHI <iftmp.121_5(3), xTask_3(D)(2)>
  # DEBUG pxTCB => iftmp.121_2
  # DEBUG BEGIN_STMT
  pucEndOfStack_6 = iftmp.121_2->pxStack;
  # DEBUG pucEndOfStack => pucEndOfStack_6
  # DEBUG BEGIN_STMT
  _1 = prvTaskCheckFreeStackSpace (pucEndOfStack_6);
  uxReturn_7 = (UBaseType_t) _1;
  # DEBUG uxReturn => uxReturn_7
  # DEBUG BEGIN_STMT
  return uxReturn_7;

}


prvTaskCheckFreeStackSpace (const uint8_t * pucStackByte)
{
  uint32_t ulCount;
  unsigned char _1;
  uint16_t _8;

  <bb 2> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  # DEBUG ulCount => 0
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  pucStackByte_9 = pucStackByte_2 + 1;
  # DEBUG pucStackByte => pucStackByte_9
  # DEBUG BEGIN_STMT
  ulCount_10 = ulCount_3 + 1;
  # DEBUG ulCount => ulCount_10

  <bb 4> [local count: 1073741824]:
  # pucStackByte_2 = PHI <pucStackByte_5(D)(2), pucStackByte_9(3)>
  # ulCount_3 = PHI <0(2), ulCount_10(3)>
  # DEBUG ulCount => ulCount_3
  # DEBUG pucStackByte => pucStackByte_2
  # DEBUG BEGIN_STMT
  _1 = *pucStackByte_2;
  if (_1 == 165)
    goto <bb 3>; [89.00%]
  else
    goto <bb 5>; [11.00%]

  <bb 5> [local count: 118111601]:
  # ulCount_4 = PHI <ulCount_3(4)>
  # DEBUG BEGIN_STMT
  ulCount_7 = ulCount_4 >> 2;
  # DEBUG ulCount => ulCount_7
  # DEBUG BEGIN_STMT
  _8 = (uint16_t) ulCount_7;
  return _8;

}


prvListTasksWithinSingleList (struct TaskStatus_t * pxTaskStatusArray, struct List_t * pxList, eTaskState eState)
{
  UBaseType_t uxTask;
  long unsigned int _1;

  <bb 2> [local count: 236223200]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxTask => 0
  # DEBUG BEGIN_STMT
  _1 ={v} pxList_7(D)->uxNumberOfItems;
  if (_1 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 118111600]:
  uxTask_2 = prvListTasksWithinSingleList.part.0 (pxTaskStatusArray_8(D), pxList_7(D), eState_9(D));

  <bb 4> [local count: 236223201]:
  # uxTask_5 = PHI <0(2), uxTask_2(3)>
  # DEBUG uxTask => uxTask_5
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return uxTask_5;

}


vTaskGetInfo (struct tskTaskControlBlock * xTask, struct TaskStatus_t * pxTaskStatus, BaseType_t xGetFreeStackSpace, eTaskState eState)
{
  char * _1;
  long unsigned int _2;
  StackType_t * _3;
  long unsigned int _4;
  long unsigned int _5;
  struct TCB_t * pxCurrentTCB.120_6;
  struct xLIST * _7;
  <unnamed type> _8;
  StackType_t * _9;
  short unsigned int _10;
  struct TCB_t * iftmp.119_11;
  struct TCB_t * iftmp.119_17;

  <bb 2> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_15(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 322122547]:
  iftmp.119_17 ={v} pxCurrentTCB;

  <bb 4> [local count: 1073741823]:
  # iftmp.119_11 = PHI <iftmp.119_17(3), xTask_15(D)(2)>
  # DEBUG pxTCB => iftmp.119_11
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->xHandle = iftmp.119_11;
  # DEBUG BEGIN_STMT
  _1 = &iftmp.119_11->pcTaskName[0];
  pxTaskStatus_18(D)->pcTaskName = _1;
  # DEBUG BEGIN_STMT
  _2 = iftmp.119_11->uxPriority;
  pxTaskStatus_18(D)->uxCurrentPriority = _2;
  # DEBUG BEGIN_STMT
  _3 = iftmp.119_11->pxStack;
  pxTaskStatus_18(D)->pxStackBase = _3;
  # DEBUG BEGIN_STMT
  _4 = iftmp.119_11->uxTCBNumber;
  pxTaskStatus_18(D)->xTaskNumber = _4;
  # DEBUG BEGIN_STMT
  _5 = iftmp.119_11->uxBasePriority;
  pxTaskStatus_18(D)->uxBasePriority = _5;
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->ulRunTimeCounter = 0;
  # DEBUG BEGIN_STMT
  if (eState_26(D) != 5)
    goto <bb 5>; [79.76%]
  else
    goto <bb 11>; [20.24%]

  <bb 5> [local count: 856416478]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.120_6 ={v} pxCurrentTCB;
  if (pxCurrentTCB.120_6 == iftmp.119_11)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 256924943]:
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->eCurrentState = 0;
  goto <bb 12>; [100.00%]

  <bb 7> [local count: 599491536]:
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->eCurrentState = eState_26(D);
  # DEBUG BEGIN_STMT
  if (eState_26(D) == 3)
    goto <bb 8>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 8> [local count: 121337087]:
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  _7 = iftmp.119_11->xEventListItem.pvContainer;
  if (_7 != 0B)
    goto <bb 9>; [70.00%]
  else
    goto <bb 10>; [30.00%]

  <bb 9> [local count: 84935961]:
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->eCurrentState = 2;

  <bb 10> [local count: 121337087]:
  # DEBUG BEGIN_STMT
  xTaskResumeAll ();
  goto <bb 12>; [100.00%]

  <bb 11> [local count: 217325345]:
  # DEBUG BEGIN_STMT
  _8 = eTaskGetState (iftmp.119_11);
  pxTaskStatus_18(D)->eCurrentState = _8;

  <bb 12> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  if (xGetFreeStackSpace_34(D) != 0)
    goto <bb 13>; [33.00%]
  else
    goto <bb 14>; [67.00%]

  <bb 13> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  _9 = iftmp.119_11->pxStack;
  _10 = prvTaskCheckFreeStackSpace (_9);
  pxTaskStatus_18(D)->usStackHighWaterMark = _10;
  goto <bb 15>; [100.00%]

  <bb 14> [local count: 719407024]:
  # DEBUG BEGIN_STMT
  pxTaskStatus_18(D)->usStackHighWaterMark = 0;

  <bb 15> [local count: 1073741824]:
  return;

}


prvCheckTasksWaitingTermination ()
{
  struct TCB_t * pxTCB;
  struct xLIST_ITEM * _1;
  struct ListItem_t * _2;
  long unsigned int uxCurrentNumberOfTasks.58_3;
  long unsigned int _4;
  long unsigned int uxDeletedTasksWaitingCleanUp.59_5;
  long unsigned int _6;
  long unsigned int uxDeletedTasksWaitingCleanUp.60_7;

  <bb 2> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 955630223]:
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  _1 = xTasksWaitingTermination.xListEnd.pxNext;
  pxTCB_11 = _1->pvOwner;
  # DEBUG pxTCB => pxTCB_11
  # DEBUG BEGIN_STMT
  _2 = &pxTCB_11->xStateListItem;
  uxListRemove (_2);
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.58_3 ={v} uxCurrentNumberOfTasks;
  _4 = uxCurrentNumberOfTasks.58_3 + 4294967295;
  uxCurrentNumberOfTasks ={v} _4;
  # DEBUG BEGIN_STMT
  uxDeletedTasksWaitingCleanUp.59_5 ={v} uxDeletedTasksWaitingCleanUp;
  _6 = uxDeletedTasksWaitingCleanUp.59_5 + 4294967295;
  uxDeletedTasksWaitingCleanUp ={v} _6;
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  prvDeleteTCB (pxTCB_11);

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  uxDeletedTasksWaitingCleanUp.60_7 ={v} uxDeletedTasksWaitingCleanUp;
  if (uxDeletedTasksWaitingCleanUp.60_7 != 0)
    goto <bb 3>; [89.00%]
  else
    goto <bb 5>; [11.00%]

  <bb 5> [local count: 118111601]:
  return;

}


prvInitialiseTaskLists ()
{
  UBaseType_t uxPriority;
  struct List_t * _1;

  <bb 2> [local count: 178992762]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxPriority => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 894749063]:
  # DEBUG BEGIN_STMT
  _1 = &pxReadyTasksLists[uxPriority_2];
  vListInitialise (_1);
  # DEBUG BEGIN_STMT
  uxPriority_13 = uxPriority_2 + 1;
  # DEBUG uxPriority => uxPriority_13

  <bb 4> [local count: 1073741824]:
  # uxPriority_2 = PHI <0(2), uxPriority_13(3)>
  # DEBUG uxPriority => uxPriority_2
  # DEBUG BEGIN_STMT
  if (uxPriority_2 != 5)
    goto <bb 3>; [83.33%]
  else
    goto <bb 5>; [16.67%]

  <bb 5> [local count: 178992762]:
  # DEBUG BEGIN_STMT
  vListInitialise (&xDelayedTaskList1);
  # DEBUG BEGIN_STMT
  vListInitialise (&xDelayedTaskList2);
  # DEBUG BEGIN_STMT
  vListInitialise (&xPendingReadyList);
  # DEBUG BEGIN_STMT
  vListInitialise (&xTasksWaitingTermination);
  # DEBUG BEGIN_STMT
  vListInitialise (&xSuspendedTaskList);
  # DEBUG BEGIN_STMT
  pxDelayedTaskList ={v} &xDelayedTaskList1;
  # DEBUG BEGIN_STMT
  pxOverflowDelayedTaskList ={v} &xDelayedTaskList2;
  return;

}


prvIdleTask (void * pvParameters)
{
  long unsigned int _1;

  <bb 2> [local count: 63351]:

  <bb 3> [local count: 633507677]:

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  prvCheckTasksWaitingTermination ();
  # DEBUG BEGIN_STMT
  _1 ={v} pxReadyTasksLists[0].uxNumberOfItems;
  if (_1 > 1)
    goto <bb 5>; [59.00%]
  else
    goto <bb 6>; [41.00%]

  <bb 6> [local count: 440234148]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 633507677]:
  # 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 3>; [100.00%]

}


vTaskSetTaskNumber (struct tskTaskControlBlock * xTask, const UBaseType_t uxHandle)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_2(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 4>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTask_2(D)
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTask_2(D)].uxTaskNumber = uxHandle_4(D);

  <bb 4> [local count: 1073741824]:
  return;

}


uxTaskGetTaskNumber (struct tskTaskControlBlock * xTask)
{
  UBaseType_t uxReturn;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_2(D) != 0B)
    goto <bb 3>; [70.00%]
  else
    goto <bb 4>; [30.00%]

  <bb 3> [local count: 751619278]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTask_2(D)
  # DEBUG BEGIN_STMT
  uxReturn_4 = MEM[(const struct TCB_t *)xTask_2(D)].uxTaskNumber;
  # DEBUG uxReturn => uxReturn_4

  <bb 4> [local count: 1073741824]:
  # uxReturn_1 = PHI <uxReturn_4(3), 0(2)>
  # DEBUG uxReturn => uxReturn_1
  # DEBUG BEGIN_STMT
  return uxReturn_1;

}


vTaskMissedYield ()
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;
  return;

}


xTaskCheckForTimeOut (struct TimeOut_t * const pxTimeOut, TickType_t * const pxTicksToWait)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  const TickType_t xElapsedTime;
  const TickType_t xConstTickCount;
  BaseType_t xReturn;
  long unsigned int _1;
  struct TCB_t * pxCurrentTCB.116_2;
  unsigned char _3;
  struct TCB_t * pxCurrentTCB.117_4;
  long unsigned int _5;
  long int _6;
  long int xNumOfOverflows.118_7;
  long unsigned int _8;
  long unsigned int _17;

  <bb 2> [local count: 329661]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (pxTimeOut_11(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 98898]:
  # 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: 988985746]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 18> [local count: 988985746]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 230763]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (pxTicksToWait_12(D) == 0B)
    goto <bb 6>; [46.53%]
  else
    goto <bb 8>; [53.47%]

  <bb 6> [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_25 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_25

  <bb 7> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 19> [local count: 1073741824]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 123389]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  xConstTickCount_15 ={v} xTickCount;
  # DEBUG xConstTickCount => xConstTickCount_15
  # DEBUG BEGIN_STMT
  _1 = pxTimeOut_11(D)->xTimeOnEntering;
  xElapsedTime_16 = xConstTickCount_15 - _1;
  # DEBUG xElapsedTime => xElapsedTime_16
  # DEBUG BEGIN_STMT
  pxCurrentTCB.116_2 ={v} pxCurrentTCB;
  _3 = pxCurrentTCB.116_2->ucDelayAborted;
  if (_3 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 61694]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.117_4 ={v} pxCurrentTCB;
  pxCurrentTCB.117_4->ucDelayAborted = 0;
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  goto <bb 17>; [100.00%]

  <bb 10> [local count: 61694]:
  # DEBUG BEGIN_STMT
  _5 = *pxTicksToWait_12(D);
  if (_5 == 4294967295)
    goto <bb 17>; [34.00%]
  else
    goto <bb 11>; [66.00%]

  <bb 11> [local count: 40718]:
  # DEBUG BEGIN_STMT
  _6 = pxTimeOut_11(D)->xOverflowCount;
  xNumOfOverflows.118_7 ={v} xNumOfOverflows;
  if (_6 != xNumOfOverflows.118_7)
    goto <bb 12>; [66.00%]
  else
    goto <bb 14>; [34.00%]

  <bb 12> [local count: 26874]:
  if (_1 <= xConstTickCount_15)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 13437]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  # DEBUG BEGIN_STMT
  *pxTicksToWait_12(D) = 0;
  goto <bb 17>; [100.00%]

  <bb 14> [local count: 27281]:
  # DEBUG BEGIN_STMT
  if (_5 > xElapsedTime_16)
    goto <bb 15>; [33.00%]
  else
    goto <bb 16>; [67.00%]

  <bb 15> [local count: 9003]:
  # DEBUG BEGIN_STMT
  _17 = _1 - xConstTickCount_15;
  _8 = _5 + _17;
  *pxTicksToWait_12(D) = _8;
  # DEBUG BEGIN_STMT
  vTaskInternalSetTimeOutState (pxTimeOut_11(D));
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 0
  goto <bb 17>; [100.00%]

  <bb 16> [local count: 18278]:
  # DEBUG BEGIN_STMT
  *pxTicksToWait_12(D) = 0;
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 17> [local count: 123389]:
  # xReturn_9 = PHI <1(9), 0(10), 1(13), 0(15), 1(16)>
  # DEBUG xReturn => xReturn_9
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return xReturn_9;

}


vTaskInternalSetTimeOutState (struct TimeOut_t * const pxTimeOut)
{
  long int xNumOfOverflows.114_1;
  long unsigned int xTickCount.115_2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  xNumOfOverflows.114_1 ={v} xNumOfOverflows;
  pxTimeOut_4(D)->xOverflowCount = xNumOfOverflows.114_1;
  # DEBUG BEGIN_STMT
  xTickCount.115_2 ={v} xTickCount;
  pxTimeOut_4(D)->xTimeOnEntering = xTickCount.115_2;
  return;

}


vTaskSetTimeOutState (struct TimeOut_t * const pxTimeOut)
{
  uint32_t ulNewBASEPRI;
  long int xNumOfOverflows.112_1;
  long unsigned int xTickCount.113_2;

  <bb 2> [local count: 230763]:
  # DEBUG BEGIN_STMT
  if (pxTimeOut_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_9 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_9

  <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
  xNumOfOverflows.112_1 ={v} xNumOfOverflows;
  pxTimeOut_3(D)->xOverflowCount = xNumOfOverflows.112_1;
  # DEBUG BEGIN_STMT
  xTickCount.113_2 ={v} xTickCount;
  pxTimeOut_3(D)->xTimeOnEntering = xTickCount.113_2;
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  return;

}


vTaskRemoveFromUnorderedEventList (struct ListItem_t * pxEventListItem, const TickType_t xItemValue)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct List_t * const pxList;
  struct List_t * const pxList;
  struct TCB_t * pxUnblockedTCB;
  long unsigned int uxSchedulerSuspended.109_1;
  long unsigned int _2;
  struct xLIST_ITEM * _3;
  struct xLIST_ITEM * _4;
  struct xLIST_ITEM * _5;
  struct ListItem_t * _6;
  long unsigned int _7;
  long unsigned int _8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct xLIST_ITEM * _11;
  struct ListItem_t * _12;
  struct ListItem_t * _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int uxTopReadyPriority.110_17;
  struct xLIST_ITEM * _18;
  struct xLIST_ITEM * _19;
  struct List_t * _20;
  long unsigned int _21;
  long unsigned int _22;
  struct TCB_t * pxCurrentTCB.111_23;
  long unsigned int _24;

  <bb 2> [local count: 214748]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.109_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.109_1 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 5>; [50.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_54 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_54

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = xItemValue_30(D) | 2147483648;
  pxEventListItem_31(D)->xItemValue = _2;
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_33 = pxEventListItem_31(D)->pvOwner;
  # DEBUG pxUnblockedTCB => pxUnblockedTCB_33
  # DEBUG BEGIN_STMT
  if (pxUnblockedTCB_33 == 0B)
    goto <bb 6>; [30.00%]
  else
    goto <bb 8>; [70.00%]

  <bb 6> [local count: 32212]:
  # 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_55 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_55

  <bb 7> [local count: 322122547]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 18> [local count: 322122547]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 75162]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxList_34 = pxEventListItem_31(D)->pvContainer;
  # DEBUG pxList => pxList_34
  # DEBUG BEGIN_STMT
  _3 = pxEventListItem_31(D)->pxNext;
  _4 = pxEventListItem_31(D)->pxPrevious;
  _3->pxPrevious = _4;
  # DEBUG BEGIN_STMT
  _5 = pxEventListItem_31(D)->pxPrevious;
  _5->pxNext = _3;
  # DEBUG BEGIN_STMT
  _6 = pxList_34->pxIndex;
  if (_6 == pxEventListItem_31(D))
    goto <bb 9>; [30.00%]
  else
    goto <bb 10>; [70.00%]

  <bb 9> [local count: 22549]:
  # DEBUG BEGIN_STMT
  pxList_34->pxIndex = _5;

  <bb 10> [local count: 75162]:
  # DEBUG BEGIN_STMT
  pxEventListItem_31(D)->pvContainer = 0B;
  # DEBUG BEGIN_STMT
  _7 ={v} pxList_34->uxNumberOfItems;
  _8 = _7 + 4294967295;
  pxList_34->uxNumberOfItems ={v} _8;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxList_40 = pxUnblockedTCB_33->xStateListItem.pvContainer;
  # DEBUG pxList => pxList_40
  # DEBUG BEGIN_STMT
  _9 = pxUnblockedTCB_33->xStateListItem.pxNext;
  _10 = pxUnblockedTCB_33->xStateListItem.pxPrevious;
  _9->pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _11 = pxUnblockedTCB_33->xStateListItem.pxPrevious;
  _11->pxNext = _9;
  # DEBUG BEGIN_STMT
  _12 = pxList_40->pxIndex;
  _13 = &pxUnblockedTCB_33->xStateListItem;
  if (_12 == _13)
    goto <bb 11>; [30.00%]
  else
    goto <bb 12>; [70.00%]

  <bb 11> [local count: 22549]:
  # DEBUG BEGIN_STMT
  pxList_40->pxIndex = _11;

  <bb 12> [local count: 75162]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 ={v} pxList_40->uxNumberOfItems;
  _15 = _14 + 4294967295;
  pxList_40->uxNumberOfItems ={v} _15;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _16 = pxUnblockedTCB_33->uxPriority;
  uxTopReadyPriority.110_17 ={v} uxTopReadyPriority;
  if (_16 > uxTopReadyPriority.110_17)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 37581]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _16;

  <bb 14> [local count: 75162]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_46 = pxReadyTasksLists[_16].pxIndex;
  # DEBUG pxIndex => pxIndex_46
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_33->xStateListItem.pxNext = pxIndex_46;
  # DEBUG BEGIN_STMT
  _18 = pxIndex_46->pxPrevious;
  pxUnblockedTCB_33->xStateListItem.pxPrevious = _18;
  # DEBUG BEGIN_STMT
  _19 = pxIndex_46->pxPrevious;
  _19->pxNext = _13;
  # DEBUG BEGIN_STMT
  pxIndex_46->pxPrevious = _13;
  # DEBUG BEGIN_STMT
  _20 = &pxReadyTasksLists[_16];
  pxUnblockedTCB_33->xStateListItem.pvContainer = _20;
  # DEBUG BEGIN_STMT
  _21 ={v} pxReadyTasksLists[_16].uxNumberOfItems;
  _22 = _21 + 1;
  pxReadyTasksLists[_16].uxNumberOfItems ={v} _22;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.111_23 ={v} pxCurrentTCB;
  _24 = pxCurrentTCB.111_23->uxPriority;
  if (_16 > _24)
    goto <bb 15>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 15> [local count: 37581]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 16> [local count: 75162]:
  return;

}


xTaskRemoveFromEventList (const struct List_t * const pxEventList)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct ListItem_t * const pxIndex;
  struct List_t * const pxList;
  struct List_t * const pxList;
  BaseType_t xReturn;
  struct TCB_t * pxUnblockedTCB;
  struct xLIST_ITEM * _1;
  struct xLIST_ITEM * _2;
  struct xLIST_ITEM * _3;
  struct ListItem_t * _4;
  struct ListItem_t * _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int uxSchedulerSuspended.106_8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct xLIST_ITEM * _11;
  struct ListItem_t * _12;
  struct ListItem_t * _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int uxTopReadyPriority.107_17;
  struct xLIST_ITEM * _18;
  struct xLIST_ITEM * _19;
  struct List_t * _20;
  long unsigned int _21;
  long unsigned int _22;
  struct xLIST_ITEM * _23;
  struct xLIST_ITEM * _24;
  long unsigned int _25;
  long unsigned int _26;
  long unsigned int _27;
  struct TCB_t * pxCurrentTCB.108_28;
  long unsigned int _29;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = pxEventList_37(D)->xListEnd.pxNext;
  pxUnblockedTCB_38 = _1->pvOwner;
  # DEBUG pxUnblockedTCB => pxUnblockedTCB_38
  # DEBUG BEGIN_STMT
  if (pxUnblockedTCB_38 == 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_66 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_66

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxList_39 = pxUnblockedTCB_38->xEventListItem.pvContainer;
  # DEBUG pxList => pxList_39
  # DEBUG BEGIN_STMT
  _2 = pxUnblockedTCB_38->xEventListItem.pxNext;
  _3 = pxUnblockedTCB_38->xEventListItem.pxPrevious;
  _2->pxPrevious = _3;
  # DEBUG BEGIN_STMT
  _3->pxNext = _2;
  # DEBUG BEGIN_STMT
  _4 = pxList_39->pxIndex;
  _5 = &pxUnblockedTCB_38->xEventListItem;
  if (_4 == _5)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 75162]:
  # DEBUG BEGIN_STMT
  pxList_39->pxIndex = _3;

  <bb 7> [local count: 250539]:
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_38->xEventListItem.pvContainer = 0B;
  # DEBUG BEGIN_STMT
  _6 ={v} pxList_39->uxNumberOfItems;
  _7 = _6 + 4294967295;
  pxList_39->uxNumberOfItems ={v} _7;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.106_8 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.106_8 == 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 8> [local count: 125270]:
  # DEBUG BEGIN_STMT
  pxList_52 = pxUnblockedTCB_38->xStateListItem.pvContainer;
  # DEBUG pxList => pxList_52
  # DEBUG BEGIN_STMT
  _9 = pxUnblockedTCB_38->xStateListItem.pxNext;
  _10 = pxUnblockedTCB_38->xStateListItem.pxPrevious;
  _9->pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _11 = pxUnblockedTCB_38->xStateListItem.pxPrevious;
  _11->pxNext = _9;
  # DEBUG BEGIN_STMT
  _12 = pxList_52->pxIndex;
  _13 = &pxUnblockedTCB_38->xStateListItem;
  if (_12 == _13)
    goto <bb 9>; [30.00%]
  else
    goto <bb 10>; [70.00%]

  <bb 9> [local count: 37581]:
  # DEBUG BEGIN_STMT
  pxList_52->pxIndex = _11;

  <bb 10> [local count: 125270]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 ={v} pxList_52->uxNumberOfItems;
  _15 = _14 + 4294967295;
  pxList_52->uxNumberOfItems ={v} _15;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _16 = pxUnblockedTCB_38->uxPriority;
  uxTopReadyPriority.107_17 ={v} uxTopReadyPriority;
  if (_16 > uxTopReadyPriority.107_17)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 62635]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _16;

  <bb 12> [local count: 125270]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_58 = pxReadyTasksLists[_16].pxIndex;
  # DEBUG pxIndex => pxIndex_58
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_38->xStateListItem.pxNext = pxIndex_58;
  # DEBUG BEGIN_STMT
  _18 = pxIndex_58->pxPrevious;
  pxUnblockedTCB_38->xStateListItem.pxPrevious = _18;
  # DEBUG BEGIN_STMT
  _19 = pxIndex_58->pxPrevious;
  _19->pxNext = _13;
  # DEBUG BEGIN_STMT
  pxIndex_58->pxPrevious = _13;
  # DEBUG BEGIN_STMT
  _20 = &pxReadyTasksLists[_16];
  pxUnblockedTCB_38->xStateListItem.pvContainer = _20;
  # DEBUG BEGIN_STMT
  _21 ={v} pxReadyTasksLists[_16].uxNumberOfItems;
  _22 = _21 + 1;
  pxReadyTasksLists[_16].uxNumberOfItems ={v} _22;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 14>; [100.00%]

  <bb 13> [local count: 125270]:
  # DEBUG BEGIN_STMT
  pxIndex_45 = xPendingReadyList.pxIndex;
  # DEBUG pxIndex => pxIndex_45
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_38->xEventListItem.pxNext = pxIndex_45;
  # DEBUG BEGIN_STMT
  _23 = pxIndex_45->pxPrevious;
  pxUnblockedTCB_38->xEventListItem.pxPrevious = _23;
  # DEBUG BEGIN_STMT
  _24 = pxIndex_45->pxPrevious;
  _24->pxNext = _5;
  # DEBUG BEGIN_STMT
  pxIndex_45->pxPrevious = _5;
  # DEBUG BEGIN_STMT
  pxUnblockedTCB_38->xEventListItem.pvContainer = &xPendingReadyList;
  # DEBUG BEGIN_STMT
  _25 ={v} xPendingReadyList.uxNumberOfItems;
  _26 = _25 + 1;
  xPendingReadyList.uxNumberOfItems ={v} _26;

  <bb 14> [local count: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _27 = pxUnblockedTCB_38->uxPriority;
  pxCurrentTCB.108_28 ={v} pxCurrentTCB;
  _29 = pxCurrentTCB.108_28->uxPriority;
  if (_27 > _29)
    goto <bb 15>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 15> [local count: 125270]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 16> [local count: 250539]:
  # xReturn_30 = PHI <1(15), 0(14)>
  # DEBUG xReturn => xReturn_30
  # DEBUG BEGIN_STMT
  return xReturn_30;

}


vTaskPlaceOnEventListRestricted (struct List_t * const pxEventList, TickType_t xTicksToWait, const BaseType_t xWaitIndefinitely)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct TCB_t * pxCurrentTCB.101_1;
  struct TCB_t * pxCurrentTCB.102_2;
  struct xLIST_ITEM * _3;
  struct TCB_t * pxCurrentTCB.103_4;
  struct xLIST_ITEM * _5;
  struct ListItem_t * _6;
  struct TCB_t * pxCurrentTCB.104_7;
  struct ListItem_t * _8;
  struct TCB_t * pxCurrentTCB.105_9;
  long unsigned int _10;
  long unsigned int _11;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  if (pxEventList_13(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_25 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_25

  <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: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_15 = pxEventList_13(D)->pxIndex;
  # DEBUG pxIndex => pxIndex_15
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.101_1 ={v} pxCurrentTCB;
  pxCurrentTCB.101_1->xEventListItem.pxNext = pxIndex_15;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.102_2 ={v} pxCurrentTCB;
  _3 = pxIndex_15->pxPrevious;
  pxCurrentTCB.102_2->xEventListItem.pxPrevious = _3;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.103_4 ={v} pxCurrentTCB;
  _5 = pxIndex_15->pxPrevious;
  _6 = &pxCurrentTCB.103_4->xEventListItem;
  _5->pxNext = _6;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.104_7 ={v} pxCurrentTCB;
  _8 = &pxCurrentTCB.104_7->xEventListItem;
  pxIndex_15->pxPrevious = _8;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.105_9 ={v} pxCurrentTCB;
  pxCurrentTCB.105_9->xEventListItem.pvContainer = pxEventList_13(D);
  # DEBUG BEGIN_STMT
  _10 ={v} pxEventList_13(D)->uxNumberOfItems;
  _11 = _10 + 1;
  pxEventList_13(D)->uxNumberOfItems ={v} _11;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xWaitIndefinitely_22(D) != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 6> [local count: 125270]:
  # DEBUG BEGIN_STMT
  # DEBUG xTicksToWait => 4294967295

  <bb 7> [local count: 250539]:
  # xTicksToWait_12 = PHI <xTicksToWait_23(D)(5), 4294967295(6)>
  # DEBUG xTicksToWait => xTicksToWait_12
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToWait_12, xWaitIndefinitely_22(D));
  return;

}


vTaskPlaceOnUnorderedEventList (struct List_t * pxEventList, const TickType_t xItemValue, const TickType_t xTicksToWait)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  long unsigned int uxSchedulerSuspended.94_1;
  struct TCB_t * pxCurrentTCB.95_2;
  long unsigned int _3;
  struct TCB_t * pxCurrentTCB.96_4;
  struct TCB_t * pxCurrentTCB.97_5;
  struct xLIST_ITEM * _6;
  struct TCB_t * pxCurrentTCB.98_7;
  struct xLIST_ITEM * _8;
  struct ListItem_t * _9;
  struct TCB_t * pxCurrentTCB.99_10;
  struct ListItem_t * _11;
  struct TCB_t * pxCurrentTCB.100_12;
  long unsigned int _13;
  long unsigned int _14;

  <bb 2> [local count: 228942]:
  # DEBUG BEGIN_STMT
  if (pxEventList_15(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 68683]:
  # 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_28 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_28

  <bb 4> [local count: 686828460]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 9> [local count: 686828460]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.94_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.94_1 == 0)
    goto <bb 6>; [67.00%]
  else
    goto <bb 8>; [33.00%]

  <bb 6> [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_29 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_29

  <bb 7> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 1073741824]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.95_2 ={v} pxCurrentTCB;
  _3 = xItemValue_17(D) | 2147483648;
  pxCurrentTCB.95_2->xEventListItem.xItemValue = _3;
  # DEBUG BEGIN_STMT
  pxIndex_19 = pxEventList_15(D)->pxIndex;
  # DEBUG pxIndex => pxIndex_19
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.96_4 ={v} pxCurrentTCB;
  pxCurrentTCB.96_4->xEventListItem.pxNext = pxIndex_19;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.97_5 ={v} pxCurrentTCB;
  _6 = pxIndex_19->pxPrevious;
  pxCurrentTCB.97_5->xEventListItem.pxPrevious = _6;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.98_7 ={v} pxCurrentTCB;
  _8 = pxIndex_19->pxPrevious;
  _9 = &pxCurrentTCB.98_7->xEventListItem;
  _8->pxNext = _9;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.99_10 ={v} pxCurrentTCB;
  _11 = &pxCurrentTCB.99_10->xEventListItem;
  pxIndex_19->pxPrevious = _11;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.100_12 ={v} pxCurrentTCB;
  pxCurrentTCB.100_12->xEventListItem.pvContainer = pxEventList_15(D);
  # DEBUG BEGIN_STMT
  _13 ={v} pxEventList_15(D)->uxNumberOfItems;
  _14 = _13 + 1;
  pxEventList_15(D)->uxNumberOfItems ={v} _14;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToWait_26(D), 1);
  return;

}


vTaskPlaceOnEventList (struct List_t * const pxEventList, const TickType_t xTicksToWait)
{
  uint32_t ulNewBASEPRI;
  struct TCB_t * pxCurrentTCB.93_1;
  struct ListItem_t * _2;

  <bb 2> [local count: 230763]:
  # DEBUG BEGIN_STMT
  if (pxEventList_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
  pxCurrentTCB.93_1 ={v} pxCurrentTCB;
  _2 = &pxCurrentTCB.93_1->xEventListItem;
  vListInsert (pxEventList_3(D), _2);
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToWait_6(D), 1);
  return;

}


__attribute__((used))
vTaskSwitchContext ()
{
  UBaseType_t uxTopPriority;
  long unsigned int uxSchedulerSuspended.92_1;
  long unsigned int _2;
  struct ListItem_t * _3;
  struct xLIST_ITEM * _4;
  struct MiniListItem_t * _6;
  struct xLIST_ITEM * _8;
  struct ListItem_t * _9;
  void * _10;

  <bb 2> [local count: 441995]:
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.92_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.92_1 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 220997]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;
  goto <bb 12>; [100.00%]

  <bb 4> [local count: 220997]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTopPriority_15 ={v} uxTopReadyPriority;
  # DEBUG uxTopPriority => uxTopPriority_15
  # DEBUG BEGIN_STMT
  goto <bb 8>; [100.00%]

  <bb 5> [local count: 1952255]:
  # DEBUG BEGIN_STMT
  if (uxTopPriority_11 == 0)
    goto <bb 6>; [5.50%]
  else
    goto <bb 7>; [94.50%]

  <bb 6> [local count: 107374]:
  vTaskSwitchContext.part.0 ();

  <bb 7> [local count: 1844881]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTopPriority_21 = uxTopPriority_11 + 4294967295;
  # DEBUG uxTopPriority => uxTopPriority_21

  <bb 8> [local count: 2065878]:
  # uxTopPriority_11 = PHI <uxTopPriority_15(4), uxTopPriority_21(7)>
  # DEBUG uxTopPriority => uxTopPriority_11
  # DEBUG BEGIN_STMT
  _2 ={v} pxReadyTasksLists[uxTopPriority_11].uxNumberOfItems;
  if (_2 == 0)
    goto <bb 5>; [94.50%]
  else
    goto <bb 9>; [5.50%]

  <bb 9> [local count: 113623]:
  # uxTopPriority_5 = PHI <uxTopPriority_11(8)>
  # DEBUG BEGIN_STMT
  # DEBUG D#6 => &pxReadyTasksLists[uxTopPriority_5]
  # DEBUG pxConstList => D#6
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct List_t *)&pxReadyTasksLists][uxTopPriority_5].pxIndex;
  _4 = _3->pxNext;
  MEM[(struct List_t *)&pxReadyTasksLists][uxTopPriority_5].pxIndex = _4;
  # DEBUG BEGIN_STMT
  _6 = &MEM[(struct List_t *)&pxReadyTasksLists][uxTopPriority_5].xListEnd;
  if (_4 == _6)
    goto <bb 10>; [30.00%]
  else
    goto <bb 11>; [70.00%]

  <bb 10> [local count: 34087]:
  # DEBUG BEGIN_STMT
  _8 = MEM[(struct ListItem_t *)_4].pxNext;
  MEM[(struct List_t *)&pxReadyTasksLists][uxTopPriority_5].pxIndex = _8;

  <bb 11> [local count: 113623]:
  # DEBUG BEGIN_STMT
  _9 = MEM[(struct List_t *)&pxReadyTasksLists][uxTopPriority_5].pxIndex;
  _10 = _9->pvOwner;
  pxCurrentTCB ={v} _10;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} uxTopPriority_5;

  <bb 12> [local count: 334621]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return;

}


xTaskIncrementTick ()
{
  BaseType_t xSwitchRequired;
  long unsigned int uxSchedulerSuspended.79_1;
  long unsigned int xPendedTicks.91_5;
  long unsigned int _6;

  <bb 2> [local count: 641039]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xSwitchRequired => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.79_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.79_1 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 320520]:
  xSwitchRequired_2 = xTaskIncrementTick.part.0 ();
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 320519]:
  # DEBUG BEGIN_STMT
  xPendedTicks.91_5 ={v} xPendedTicks;
  _6 = xPendedTicks.91_5 + 1;
  xPendedTicks ={v} _6;

  <bb 5> [local count: 533665]:
  # xSwitchRequired_7 = PHI <xSwitchRequired_2(3), 0(4)>
  # DEBUG xSwitchRequired => xSwitchRequired_7
  # DEBUG BEGIN_STMT
  return xSwitchRequired_7;

}


xTaskAbortDelay (struct tskTaskControlBlock * xTask)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  BaseType_t xReturn;
  <unnamed type> _1;
  struct ListItem_t * _2;
  struct xLIST * _3;
  struct ListItem_t * _4;
  long unsigned int _5;
  long unsigned int uxTopReadyPriority.77_6;
  struct xLIST_ITEM * _7;
  struct xLIST_ITEM * _8;
  struct List_t * _9;
  long unsigned int _10;
  long unsigned int _11;
  struct TCB_t * pxCurrentTCB.78_12;
  long unsigned int _13;

  <bb 2> [local count: 230763]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTask_18(D)
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTask_18(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_37 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_37

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 123389]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  _1 = eTaskGetState (xTask_18(D));
  if (_1 == 2)
    goto <bb 6>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 6> [local count: 24974]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1
  # DEBUG BEGIN_STMT
  _2 = &MEM[(struct TCB_t *)xTask_18(D)].xStateListItem;
  uxListRemove (_2);
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct TCB_t *)xTask_18(D)].xEventListItem.pvContainer;
  if (_3 != 0B)
    goto <bb 7>; [53.47%]
  else
    goto <bb 8>; [46.53%]

  <bb 7> [local count: 13354]:
  # DEBUG BEGIN_STMT
  _4 = &MEM[(struct TCB_t *)xTask_18(D)].xEventListItem;
  uxListRemove (_4);
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTask_18(D)].ucDelayAborted = 1;

  <bb 8> [local count: 24974]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct TCB_t *)xTask_18(D)].uxPriority;
  uxTopReadyPriority.77_6 ={v} uxTopReadyPriority;
  if (_5 > uxTopReadyPriority.77_6)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 12487]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _5;

  <bb 10> [local count: 24974]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_28 = pxReadyTasksLists[_5].pxIndex;
  # DEBUG pxIndex => pxIndex_28
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTask_18(D)].xStateListItem.pxNext = pxIndex_28;
  # DEBUG BEGIN_STMT
  _7 = pxIndex_28->pxPrevious;
  MEM[(struct TCB_t *)xTask_18(D)].xStateListItem.pxPrevious = _7;
  # DEBUG BEGIN_STMT
  _8 = pxIndex_28->pxPrevious;
  _8->pxNext = _2;
  # DEBUG BEGIN_STMT
  pxIndex_28->pxPrevious = _2;
  # DEBUG BEGIN_STMT
  _9 = &pxReadyTasksLists[_5];
  MEM[(struct TCB_t *)xTask_18(D)].xStateListItem.pvContainer = _9;
  # DEBUG BEGIN_STMT
  _10 ={v} pxReadyTasksLists[_5].uxNumberOfItems;
  _11 = _10 + 1;
  pxReadyTasksLists[_5].uxNumberOfItems ={v} _11;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.78_12 ={v} pxCurrentTCB;
  _13 = pxCurrentTCB.78_12->uxPriority;
  if (_5 > _13)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 12487]:
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 12> [local count: 123389]:
  # xReturn_14 = PHI <1(11), 0(5), 1(10)>
  # DEBUG xReturn => xReturn_14
  # DEBUG BEGIN_STMT
  xTaskResumeAll ();
  # DEBUG BEGIN_STMT
  return xReturn_14;

}


xTaskCatchUpTicks (TickType_t xTicksToCatchUp)
{
  uint32_t ulNewBASEPRI;
  BaseType_t xYieldOccurred;
  long unsigned int uxSchedulerSuspended.75_1;
  long unsigned int xPendedTicks.76_2;
  long unsigned int _3;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.75_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.75_1 != 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_10 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_10

  <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: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  xPendedTicks.76_2 ={v} xPendedTicks;
  _3 = xPendedTicks.76_2 + xTicksToCatchUp_6(D);
  xPendedTicks ={v} _3;
  # DEBUG BEGIN_STMT
  xYieldOccurred_9 = xTaskResumeAll ();
  # DEBUG xYieldOccurred => xYieldOccurred_9
  # DEBUG BEGIN_STMT
  return xYieldOccurred_9;

}


uxTaskGetSystemState (struct TaskStatus_t * const pxTaskStatusArray, const UBaseType_t uxArraySize, uint32_t * const pulTotalRunTime)
{
  UBaseType_t uxQueue;
  UBaseType_t uxTask;
  long unsigned int uxCurrentNumberOfTasks.72_1;
  long unsigned int _2;
  struct TaskStatus_t * _3;
  struct List_t * _4;
  long unsigned int _5;
  struct TaskStatus_t * _6;
  struct List_t * pxDelayedTaskList.73_7;
  long unsigned int _8;
  struct TaskStatus_t * _9;
  struct List_t * pxOverflowDelayedTaskList.74_10;
  long unsigned int _11;
  struct TaskStatus_t * _12;
  long unsigned int _13;
  struct TaskStatus_t * _14;
  long unsigned int _27;
  long unsigned int _30;
  long unsigned int _33;
  long unsigned int _36;
  long unsigned int _39;

  <bb 2> [local count: 429496728]:
  # DEBUG BEGIN_STMT
  # DEBUG uxTask => 0
  # DEBUG uxQueue => 5
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.72_1 ={v} uxCurrentNumberOfTasks;
  if (uxCurrentNumberOfTasks.72_1 <= uxArraySize_23(D))
    goto <bb 7>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 7> [local count: 214748364]:

  <bb 3> [local count: 1073741824]:
  # uxTask_15 = PHI <0(7), uxTask_28(8)>
  # uxQueue_17 = PHI <5(7), uxQueue_24(8)>
  # DEBUG uxQueue => uxQueue_17
  # DEBUG uxTask => uxTask_15
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxQueue_24 = uxQueue_17 + 4294967295;
  # DEBUG uxQueue => uxQueue_24
  # DEBUG BEGIN_STMT
  _2 = uxTask_15 * 36;
  _3 = pxTaskStatusArray_25(D) + _2;
  _4 = &pxReadyTasksLists[uxQueue_24];
  _27 = prvListTasksWithinSingleList (_3, _4, 1);
  uxTask_28 = uxTask_15 + _27;
  # DEBUG uxTask => uxTask_28
  # DEBUG BEGIN_STMT
  if (uxQueue_24 != 0)
    goto <bb 8>; [80.00%]
  else
    goto <bb 4>; [20.00%]

  <bb 8> [local count: 858993459]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 214748365]:
  # uxTask_20 = PHI <uxTask_28(3)>
  # DEBUG BEGIN_STMT
  _5 = uxTask_20 * 36;
  _6 = pxTaskStatusArray_25(D) + _5;
  pxDelayedTaskList.73_7 ={v} pxDelayedTaskList;
  _30 = prvListTasksWithinSingleList (_6, pxDelayedTaskList.73_7, 2);
  uxTask_31 = uxTask_20 + _30;
  # DEBUG uxTask => uxTask_31
  # DEBUG BEGIN_STMT
  _8 = uxTask_31 * 36;
  _9 = pxTaskStatusArray_25(D) + _8;
  pxOverflowDelayedTaskList.74_10 ={v} pxOverflowDelayedTaskList;
  _33 = prvListTasksWithinSingleList (_9, pxOverflowDelayedTaskList.74_10, 2);
  uxTask_34 = uxTask_31 + _33;
  # DEBUG uxTask => uxTask_34
  # DEBUG BEGIN_STMT
  _11 = uxTask_34 * 36;
  _12 = pxTaskStatusArray_25(D) + _11;
  _36 = prvListTasksWithinSingleList (_12, &xTasksWaitingTermination, 4);
  uxTask_37 = uxTask_34 + _36;
  # DEBUG uxTask => uxTask_37
  # DEBUG BEGIN_STMT
  _13 = uxTask_37 * 36;
  _14 = pxTaskStatusArray_25(D) + _13;
  _39 = prvListTasksWithinSingleList (_14, &xSuspendedTaskList, 3);
  uxTask_40 = uxTask_37 + _39;
  # DEBUG uxTask => uxTask_40
  # DEBUG BEGIN_STMT
  if (pulTotalRunTime_41(D) != 0B)
    goto <bb 5>; [70.00%]
  else
    goto <bb 6>; [30.00%]

  <bb 5> [local count: 150323855]:
  # DEBUG BEGIN_STMT
  *pulTotalRunTime_41(D) = 0;

  <bb 6> [local count: 429496729]:
  # uxTask_16 = PHI <0(2), uxTask_40(5), uxTask_40(4)>
  # DEBUG uxTask => uxTask_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xTaskResumeAll ();
  # DEBUG BEGIN_STMT
  return uxTask_16;

}


xTaskGetHandle (const char * pcNameToQuery)
{
  uint32_t ulNewBASEPRI;
  struct TCB_t * pxTCB;
  UBaseType_t uxQueue;
  unsigned int _1;
  struct List_t * _2;
  struct List_t * pxDelayedTaskList.70_3;
  struct List_t * pxOverflowDelayedTaskList.71_4;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG uxQueue => 5
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = strlen (pcNameToQuery_17(D));
  if (_1 > 9)
    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_31 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_31

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 17> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();

  <bb 6> [local count: 216745]:
  # uxQueue_5 = PHI <5(5), uxQueue_19(18)>
  # DEBUG uxQueue => uxQueue_5
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxQueue_19 = uxQueue_5 + 4294967295;
  # DEBUG uxQueue => uxQueue_19
  # DEBUG BEGIN_STMT
  _2 = &pxReadyTasksLists[uxQueue_19];
  pxTCB_21 = prvSearchForNameWithinSingleList (_2, pcNameToQuery_17(D));
  # DEBUG pxTCB => pxTCB_21
  # DEBUG BEGIN_STMT
  if (pxTCB_21 != 0B)
    goto <bb 8>; [5.50%]
  else
    goto <bb 7>; [94.50%]

  <bb 7> [local count: 204824]:
  # DEBUG BEGIN_STMT
  if (uxQueue_19 != 0)
    goto <bb 18>; [80.00%]
  else
    goto <bb 8>; [20.00%]

  <bb 18> [local count: 163859]:
  goto <bb 6>; [100.00%]

  <bb 8> [local count: 52886]:
  # pxTCB_15 = PHI <pxTCB_21(6), 0B(7)>
  # DEBUG BEGIN_STMT
  if (pxTCB_15 == 0B)
    goto <bb 9>; [17.43%]
  else
    goto <bb 10>; [82.57%]

  <bb 9> [local count: 9218]:
  # DEBUG BEGIN_STMT
  pxDelayedTaskList.70_3 ={v} pxDelayedTaskList;
  pxTCB_23 = prvSearchForNameWithinSingleList (pxDelayedTaskList.70_3, pcNameToQuery_17(D));
  # DEBUG pxTCB => pxTCB_23

  <bb 10> [local count: 52886]:
  # pxTCB_6 = PHI <pxTCB_15(8), pxTCB_23(9)>
  # DEBUG pxTCB => pxTCB_6
  # DEBUG BEGIN_STMT
  if (pxTCB_6 == 0B)
    goto <bb 11>; [17.43%]
  else
    goto <bb 12>; [82.57%]

  <bb 11> [local count: 9218]:
  # DEBUG BEGIN_STMT
  pxOverflowDelayedTaskList.71_4 ={v} pxOverflowDelayedTaskList;
  pxTCB_25 = prvSearchForNameWithinSingleList (pxOverflowDelayedTaskList.71_4, pcNameToQuery_17(D));
  # DEBUG pxTCB => pxTCB_25

  <bb 12> [local count: 52886]:
  # pxTCB_7 = PHI <pxTCB_6(10), pxTCB_25(11)>
  # DEBUG pxTCB => pxTCB_7
  # DEBUG BEGIN_STMT
  if (pxTCB_7 == 0B)
    goto <bb 13>; [17.43%]
  else
    goto <bb 14>; [82.57%]

  <bb 13> [local count: 9218]:
  # DEBUG BEGIN_STMT
  pxTCB_27 = prvSearchForNameWithinSingleList (&xSuspendedTaskList, pcNameToQuery_17(D));
  # DEBUG pxTCB => pxTCB_27

  <bb 14> [local count: 52886]:
  # pxTCB_8 = PHI <pxTCB_7(12), pxTCB_27(13)>
  # DEBUG pxTCB => pxTCB_8
  # DEBUG BEGIN_STMT
  if (pxTCB_8 == 0B)
    goto <bb 15>; [17.43%]
  else
    goto <bb 16>; [82.57%]

  <bb 15> [local count: 9218]:
  # DEBUG BEGIN_STMT
  pxTCB_29 = prvSearchForNameWithinSingleList (&xTasksWaitingTermination, pcNameToQuery_17(D));
  # DEBUG pxTCB => pxTCB_29

  <bb 16> [local count: 52886]:
  # pxTCB_9 = PHI <pxTCB_8(14), pxTCB_29(15)>
  # DEBUG pxTCB => pxTCB_9
  # DEBUG BEGIN_STMT
  xTaskResumeAll ();
  # DEBUG BEGIN_STMT
  return pxTCB_9;

}


prvSearchForNameWithinSingleList (struct List_t * pxList, const char * pcNameToQuery)
{
  char cNextChar;
  UBaseType_t x;
  struct TCB_t * pxReturn;
  struct TCB_t * pxFirstTCB;
  struct TCB_t * pxNextTCB;
  long unsigned int _1;
  struct ListItem_t * _2;
  struct xLIST_ITEM * _3;
  struct MiniListItem_t * _4;
  struct xLIST_ITEM * _5;
  struct ListItem_t * _6;
  struct ListItem_t * _7;
  struct xLIST_ITEM * _8;
  struct xLIST_ITEM * _9;
  struct ListItem_t * _10;
  const char * _11;
  char _12;

  <bb 2> [local count: 25274560]:
  # DEBUG BEGIN_STMT
  # DEBUG pxReturn => 0B
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 ={v} pxList_23(D)->uxNumberOfItems;
  if (_1 != 0)
    goto <bb 3>; [71.00%]
  else
    goto <bb 15>; [29.00%]

  <bb 3> [local count: 17944938]:
  # DEBUG BEGIN_STMT
  # DEBUG pxConstList => pxList_23(D)
  # DEBUG BEGIN_STMT
  _2 = pxList_23(D)->pxIndex;
  _3 = _2->pxNext;
  pxList_23(D)->pxIndex = _3;
  # DEBUG BEGIN_STMT
  _4 = &pxList_23(D)->xListEnd;
  if (_3 == _4)
    goto <bb 4>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 4> [local count: 5383481]:
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct ListItem_t *)_3].pxNext;
  pxList_23(D)->pxIndex = _5;

  <bb 5> [local count: 17944938]:
  # DEBUG BEGIN_STMT
  _6 = pxList_23(D)->pxIndex;
  pxFirstTCB_26 = _6->pvOwner;
  # DEBUG pxFirstTCB => pxFirstTCB_26

  <bb 6> [local count: 167748888]:
  # pxReturn_13 = PHI <0B(5), 0B(16)>
  # DEBUG pxReturn => pxReturn_13
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG pxConstList => pxList_23(D)
  # DEBUG BEGIN_STMT
  _7 = pxList_23(D)->pxIndex;
  _8 = _7->pxNext;
  pxList_23(D)->pxIndex = _8;
  # DEBUG BEGIN_STMT
  if (_4 == _8)
    goto <bb 7>; [30.00%]
  else
    goto <bb 8>; [70.00%]

  <bb 7> [local count: 50324666]:
  # DEBUG BEGIN_STMT
  _9 = MEM[(struct ListItem_t *)_8].pxNext;
  pxList_23(D)->pxIndex = _9;

  <bb 8> [local count: 167748888]:
  # DEBUG BEGIN_STMT
  _10 = pxList_23(D)->pxIndex;
  pxNextTCB_29 = _10->pvOwner;
  # DEBUG pxNextTCB => pxNextTCB_29
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xBreakLoop => 0
  # DEBUG BEGIN_STMT
  # DEBUG x => 0
  goto <bb 12>; [100.00%]

  <bb 9> [local count: 976138693]:
  # DEBUG BEGIN_STMT
  cNextChar_30 = pxNextTCB_29->pcTaskName[x_17];
  # DEBUG cNextChar => cNextChar_30
  # DEBUG BEGIN_STMT
  _11 = pcNameToQuery_31(D) + x_17;
  _12 = *_11;
  if (_12 != cNextChar_30)
    goto <bb 13>; [3.66%]
  else
    goto <bb 10>; [96.34%]

  <bb 10> [local count: 940412017]:
  # DEBUG BEGIN_STMT
  if (cNextChar_30 == 0)
    goto <bb 13>; [3.66%]
  else
    goto <bb 11>; [96.34%]

  <bb 11> [local count: 905992937]:
  # DEBUG xBreakLoop => 0
  # DEBUG pxReturn => pxReturn_14
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  x_32 = x_17 + 1;
  # DEBUG x => x_32

  <bb 12> [local count: 1073741824]:
  # pxReturn_14 = PHI <pxReturn_13(8), pxReturn_14(11)>
  # x_17 = PHI <0(8), x_32(11)>
  # DEBUG xBreakLoop => 0
  # DEBUG x => x_17
  # DEBUG pxReturn => pxReturn_14
  # DEBUG BEGIN_STMT
  if (x_17 != 10)
    goto <bb 9>; [90.91%]
  else
    goto <bb 13>; [9.09%]

  <bb 13> [local count: 167748888]:
  # pxReturn_15 = PHI <pxNextTCB_29(10), pxReturn_14(12), pxReturn_14(9)>
  # DEBUG xBreakLoop => NULL
  # DEBUG pxReturn => pxReturn_15
  # DEBUG BEGIN_STMT
  if (pxReturn_15 != 0B)
    goto <bb 15>; [5.50%]
  else
    goto <bb 14>; [94.50%]

  <bb 14> [local count: 158522699]:
  # DEBUG BEGIN_STMT
  if (pxFirstTCB_26 != pxNextTCB_29)
    goto <bb 16>; [94.50%]
  else
    goto <bb 15>; [5.50%]

  <bb 16> [local count: 149803950]:
  goto <bb 6>; [100.00%]

  <bb 15> [local count: 25274560]:
  # pxReturn_16 = PHI <0B(2), 0B(14), pxReturn_15(13)>
  # DEBUG pxReturn => pxReturn_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return pxReturn_16;

}


pcTaskGetName (struct tskTaskControlBlock * xTaskToQuery)
{
  uint32_t ulNewBASEPRI;
  struct TCB_t * iftmp.69_1;
  struct TCB_t * iftmp.69_4;
  char * _5;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTaskToQuery_2(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 107374]:
  iftmp.69_4 ={v} pxCurrentTCB;

  <bb 4> [local count: 357913]:
  # iftmp.69_1 = PHI <iftmp.69_4(3), xTaskToQuery_2(D)(2)>
  # DEBUG pxTCB => iftmp.69_1
  # DEBUG BEGIN_STMT
  if (iftmp.69_1 == 0B)
    goto <bb 5>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 5> [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 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: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = &iftmp.69_1->pcTaskName[0];
  return _5;

}


uxTaskGetNumberOfTasks ()
{
  UBaseType_t _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _2 ={v} uxCurrentNumberOfTasks;
  return _2;

}


xTaskGetTickCountFromISR ()
{
  TickType_t xReturn;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortValidateInterruptPriority ();
  # DEBUG BEGIN_STMT
  # DEBUG uxSavedInterruptStatus => 0
  # DEBUG BEGIN_STMT
  xReturn_3 ={v} xTickCount;
  # DEBUG xReturn => xReturn_3
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xReturn_3;

}


xTaskGetTickCount ()
{
  TickType_t xTicks;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xTicks_2 ={v} xTickCount;
  # DEBUG xTicks => xTicks_2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xTicks_2;

}


xTaskResumeAll ()
{
  BaseType_t D.8425;
  uint32_t ulNewBASEPRI;
  long unsigned int uxSchedulerSuspended.62_1;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => 0B
  # DEBUG BEGIN_STMT
  # DEBUG xAlreadyYielded => 0
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.62_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.62_1 == 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_5 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_5

  <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: 52886]:
  _2 = xTaskResumeAll.part.0 ();
  return _2;

}


vTaskSuspendAll ()
{
  long unsigned int uxSchedulerSuspended.61_1;
  long unsigned int _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.61_1 ={v} uxSchedulerSuspended;
  _2 = uxSchedulerSuspended.61_1 + 1;
  uxSchedulerSuspended ={v} _2;
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("" :  :  : "memory");
  return;

}


vTaskEndScheduler ()
{
  uint32_t ulNewBASEPRI;

  <bb 2> [local count: 1073741824]:
  # 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 => NULL
  # DEBUG BEGIN_STMT
  xSchedulerRunning ={v} 0;
  # DEBUG BEGIN_STMT
  vPortEndScheduler ();
  return;

}


vTaskStartScheduler ()
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  BaseType_t xReturn;
  long unsigned int vol.57_13;

  <bb 2> [local count: 395945]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xReturn_6 = xTaskCreate (prvIdleTask, "IDLE", 90, 0B, 0, &xIdleTaskHandle);
  # DEBUG xReturn => xReturn_6
  # DEBUG BEGIN_STMT
  if (xReturn_6 == 1)
    goto <bb 3>; [20.24%]
  else
    goto <bb 4>; [79.76%]

  <bb 3> [local count: 80139]:
  # DEBUG BEGIN_STMT
  xReturn_8 = xTimerCreateTimerTask ();
  # DEBUG xReturn => xReturn_8

  <bb 4> [local count: 395945]:
  # xReturn_1 = PHI <xReturn_6(2), xReturn_8(3)>
  # DEBUG xReturn => xReturn_1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xReturn_1 == 1)
    goto <bb 5>; [20.24%]
  else
    goto <bb 6>; [79.76%]

  <bb 5> [local count: 80139]:
  # 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 => NULL
  # DEBUG BEGIN_STMT
  xNextTaskUnblockTime ={v} 4294967295;
  # DEBUG BEGIN_STMT
  xSchedulerRunning ={v} 1;
  # DEBUG BEGIN_STMT
  xTickCount ={v} 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xPortStartScheduler ();
  goto <bb 9>; [100.00%]

  <bb 6> [local count: 315806]:
  # DEBUG BEGIN_STMT
  if (xReturn_1 == -1)
    goto <bb 7>; [34.00%]
  else
    goto <bb 9>; [66.00%]

  <bb 7> [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_15 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_15

  <bb 8> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 1073741824]:
  goto <bb 8>; [100.00%]

  <bb 9> [local count: 288571]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vol.57_13 ={v} uxTopUsedPriority;
  return;

}


xTaskResumeFromISR (struct tskTaskControlBlock * xTaskToResume)
{
  uint32_t ulOriginalBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  BaseType_t xYieldRequired;
  long int _1;
  long unsigned int uxSchedulerSuspended.54_2;
  long unsigned int _3;
  struct TCB_t * pxCurrentTCB.55_4;
  long unsigned int _5;
  struct ListItem_t * _6;
  long unsigned int _7;
  long unsigned int uxTopReadyPriority.56_8;
  struct xLIST_ITEM * _9;
  struct xLIST_ITEM * _10;
  struct List_t * _11;
  long unsigned int _12;
  long unsigned int _13;
  struct ListItem_t * _14;

  <bb 2> [local count: 230763]:
  # DEBUG BEGIN_STMT
  # DEBUG xYieldRequired => 0
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTaskToResume_20(D)
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTaskToResume_20(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_35 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_35

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 14> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 123389]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortValidateInterruptPriority ();
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY ulPortRaiseBASEPRI
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	mrs %0, basepri											
	mov %1, %2												
	msr basepri, %1											
	isb														
	dsb														
" : "=r" ulOriginalBASEPRI_36, "=r" ulNewBASEPRI_37 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_37
  # DEBUG ulOriginalBASEPRI => ulOriginalBASEPRI_36
  # DEBUG BEGIN_STMT
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG ulOriginalBASEPRI => NULL
  # DEBUG uxSavedInterruptStatus => ulOriginalBASEPRI_36
  # DEBUG BEGIN_STMT
  _1 = prvTaskIsTaskSuspended (xTaskToResume_20(D));
  if (_1 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 6> [local count: 61694]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.54_2 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.54_2 == 0)
    goto <bb 7>; [67.00%]
  else
    goto <bb 12>; [33.00%]

  <bb 7> [local count: 41335]:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct TCB_t *)xTaskToResume_20(D)].uxPriority;
  pxCurrentTCB.55_4 ={v} pxCurrentTCB;
  _5 = pxCurrentTCB.55_4->uxPriority;
  if (_3 >= _5)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 8> [local count: 20668]:
  # DEBUG BEGIN_STMT
  # DEBUG xYieldRequired => 1
  # DEBUG BEGIN_STMT
  xYieldPending ={v} 1;

  <bb 9> [local count: 41335]:
  # xYieldRequired_15 = PHI <0(7), 1(8)>
  # DEBUG xYieldRequired => xYieldRequired_15
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _6 = &MEM[(struct TCB_t *)xTaskToResume_20(D)].xStateListItem;
  uxListRemove (_6);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct TCB_t *)xTaskToResume_20(D)].uxPriority;
  uxTopReadyPriority.56_8 ={v} uxTopReadyPriority;
  if (_7 > uxTopReadyPriority.56_8)
    goto <bb 10>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 10> [local count: 20668]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _7;

  <bb 11> [local count: 41335]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_28 = pxReadyTasksLists[_7].pxIndex;
  # DEBUG pxIndex => pxIndex_28
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToResume_20(D)].xStateListItem.pxNext = pxIndex_28;
  # DEBUG BEGIN_STMT
  _9 = pxIndex_28->pxPrevious;
  MEM[(struct TCB_t *)xTaskToResume_20(D)].xStateListItem.pxPrevious = _9;
  # DEBUG BEGIN_STMT
  _10 = pxIndex_28->pxPrevious;
  _10->pxNext = _6;
  # DEBUG BEGIN_STMT
  pxIndex_28->pxPrevious = _6;
  # DEBUG BEGIN_STMT
  _11 = &pxReadyTasksLists[_7];
  MEM[(struct TCB_t *)xTaskToResume_20(D)].xStateListItem.pvContainer = _11;
  # DEBUG BEGIN_STMT
  _12 ={v} pxReadyTasksLists[_7].uxNumberOfItems;
  _13 = _12 + 1;
  pxReadyTasksLists[_7].uxNumberOfItems ={v} _13;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 13>; [100.00%]

  <bb 12> [local count: 20359]:
  # DEBUG BEGIN_STMT
  _14 = &MEM[(struct TCB_t *)xTaskToResume_20(D)].xEventListItem;
  vListInsertEnd (&xPendingReadyList, _14);

  <bb 13> [local count: 123389]:
  # xYieldRequired_16 = PHI <0(5), 0(12), xYieldRequired_15(11)>
  # DEBUG xYieldRequired => xYieldRequired_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ulNewMaskValue => ulOriginalBASEPRI_36
  # DEBUG INLINE_ENTRY vPortSetBASEPRI
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	msr basepri, %0	" :  : "r" ulOriginalBASEPRI_36 : "memory");
  # DEBUG ulNewMaskValue => NULL
  # DEBUG BEGIN_STMT
  return xYieldRequired_16;

}


vTaskResume (struct tskTaskControlBlock * xTaskToResume)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  struct TCB_t * pxCurrentTCB.51_1;
  long int _2;
  struct ListItem_t * _3;
  long unsigned int _4;
  long unsigned int uxTopReadyPriority.52_5;
  struct xLIST_ITEM * _6;
  struct xLIST_ITEM * _7;
  struct List_t * _8;
  long unsigned int _9;
  long unsigned int _10;
  struct TCB_t * pxCurrentTCB.53_11;
  long unsigned int _12;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTaskToResume_16(D)
  # DEBUG BEGIN_STMT
  if (xTaskToResume_16(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_33 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_33

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 13> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.51_1 ={v} pxCurrentTCB;
  if (pxCurrentTCB.51_1 != xTaskToResume_16(D))
    goto <bb 6>; [53.47%]
  else
    goto <bb 12>; [46.53%]

  <bb 6> [local count: 133963]:
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  _2 = prvTaskIsTaskSuspended (xTaskToResume_16(D));
  if (_2 != 0)
    goto <bb 7>; [33.00%]
  else
    goto <bb 11>; [67.00%]

  <bb 7> [local count: 44208]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = &MEM[(struct TCB_t *)xTaskToResume_16(D)].xStateListItem;
  uxListRemove (_3);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct TCB_t *)xTaskToResume_16(D)].uxPriority;
  uxTopReadyPriority.52_5 ={v} uxTopReadyPriority;
  if (_4 > uxTopReadyPriority.52_5)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 8> [local count: 22104]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _4;

  <bb 9> [local count: 44208]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_22 = pxReadyTasksLists[_4].pxIndex;
  # DEBUG pxIndex => pxIndex_22
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(struct TCB_t *)xTaskToResume_16(D)].xStateListItem.pxNext = pxIndex_22;
  # DEBUG BEGIN_STMT
  _6 = pxIndex_22->pxPrevious;
  MEM[(struct TCB_t *)xTaskToResume_16(D)].xStateListItem.pxPrevious = _6;
  # DEBUG BEGIN_STMT
  _7 = pxIndex_22->pxPrevious;
  _7->pxNext = _3;
  # DEBUG BEGIN_STMT
  pxIndex_22->pxPrevious = _3;
  # DEBUG BEGIN_STMT
  _8 = &pxReadyTasksLists[_4];
  MEM[(struct TCB_t *)xTaskToResume_16(D)].xStateListItem.pvContainer = _8;
  # DEBUG BEGIN_STMT
  _9 ={v} pxReadyTasksLists[_4].uxNumberOfItems;
  _10 = _9 + 1;
  pxReadyTasksLists[_4].uxNumberOfItems ={v} _10;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.53_11 ={v} pxCurrentTCB;
  _12 = pxCurrentTCB.53_11->uxPriority;
  if (_4 >= _12)
    goto <bb 10>; [50.00%]
  else
    goto <bb 11>; [50.00%]

  <bb 10> [local count: 22104]:
  # 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

  <bb 11> [local count: 133963]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();

  <bb 12> [local count: 250539]:
  # DEBUG BEGIN_STMT
  return;

}


prvTaskIsTaskSuspended (struct tskTaskControlBlock * const xTask)
{
  uint32_t ulNewBASEPRI;
  BaseType_t xReturn;
  struct xLIST * _1;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 0
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTask_5(D)
  # DEBUG BEGIN_STMT
  if (xTask_5(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_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: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = MEM[(const struct TCB_t *)xTask_5(D)].xStateListItem.pvContainer;
  if (_1 == &xSuspendedTaskList)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 75162]:
  xReturn_2 = prvTaskIsTaskSuspended.part.0 (xTask_5(D));

  <bb 7> [local count: 250539]:
  # xReturn_3 = PHI <0(5), xReturn_2(6)>
  # DEBUG xReturn => xReturn_3
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xReturn_3;

}


vTaskSuspend (struct tskTaskControlBlock * xTaskToSuspend)
{
  uint32_t ulNewBASEPRI;
  BaseType_t x;
  struct ListItem_t * _1;
  struct xLIST * _2;
  struct ListItem_t * _3;
  unsigned char _4;
  long int xSchedulerRunning.46_5;
  struct TCB_t * pxCurrentTCB.47_6;
  long int xSchedulerRunning.48_7;
  long unsigned int uxSchedulerSuspended.49_8;
  long unsigned int _9;
  long unsigned int uxCurrentNumberOfTasks.50_10;
  struct TCB_t * iftmp.45_12;
  struct TCB_t * iftmp.45_21;

  <bb 2> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  if (xTaskToSuspend_20(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 429496]:
  iftmp.45_21 ={v} pxCurrentTCB;

  <bb 4> [local count: 1431653]:
  # iftmp.45_12 = PHI <iftmp.45_21(3), xTaskToSuspend_20(D)(2)>
  # DEBUG pxTCB => iftmp.45_12
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = &iftmp.45_12->xStateListItem;
  uxListRemove (_1);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = iftmp.45_12->xEventListItem.pvContainer;
  if (_2 != 0B)
    goto <bb 5>; [53.47%]
  else
    goto <bb 6>; [46.53%]

  <bb 5> [local count: 765505]:
  # DEBUG BEGIN_STMT
  _3 = &iftmp.45_12->xEventListItem;
  uxListRemove (_3);

  <bb 6> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vListInsertEnd (&xSuspendedTaskList, _1);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG x => 0
  goto <bb 9>; [100.00%]

  <bb 7> [local count: 24598407]:
  # DEBUG BEGIN_STMT
  _4 ={v} iftmp.45_12->ucNotifyState[0];
  if (_4 == 1)
    goto <bb 8>; [67.00%]
  else
    goto <bb 24>; [33.00%]

  <bb 24> [local count: 8117474]:
  goto <bb 10>; [100.00%]

  <bb 8> [local count: 16480933]:
  # DEBUG BEGIN_STMT
  iftmp.45_12->ucNotifyState[0] ={v} 0;

  <bb 9> [local count: 17912586]:
  # x_14 = PHI <0(6), 1(8)>

  <bb 10> [local count: 26030061]:
  # x_11 = PHI <x_14(9), 1(24)>
  # DEBUG x => x_11
  # DEBUG BEGIN_STMT
  if (x_11 == 0)
    goto <bb 7>; [94.50%]
  else
    goto <bb 11>; [5.50%]

  <bb 11> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  xSchedulerRunning.46_5 ={v} xSchedulerRunning;
  if (xSchedulerRunning.46_5 != 0)
    goto <bb 12>; [33.00%]
  else
    goto <bb 13>; [67.00%]

  <bb 12> [local count: 472446]:
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  prvResetNextTaskUnblockTime ();
  # DEBUG BEGIN_STMT
  vPortExitCritical ();

  <bb 13> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.47_6 ={v} pxCurrentTCB;
  if (pxCurrentTCB.47_6 == iftmp.45_12)
    goto <bb 14>; [30.00%]
  else
    goto <bb 22>; [70.00%]

  <bb 14> [local count: 429496]:
  # DEBUG BEGIN_STMT
  xSchedulerRunning.48_7 ={v} xSchedulerRunning;
  if (xSchedulerRunning.48_7 != 0)
    goto <bb 15>; [50.00%]
  else
    goto <bb 19>; [50.00%]

  <bb 15> [local count: 214748]:
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.49_8 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.49_8 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <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_36 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_36

  <bb 17> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 23> [local count: 1073741824]:
  goto <bb 17>; [100.00%]

  <bb 18> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # 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 22>; [100.00%]

  <bb 19> [local count: 214748]:
  # DEBUG BEGIN_STMT
  _9 ={v} xSuspendedTaskList.uxNumberOfItems;
  uxCurrentNumberOfTasks.50_10 ={v} uxCurrentNumberOfTasks;
  if (_9 == uxCurrentNumberOfTasks.50_10)
    goto <bb 20>; [51.12%]
  else
    goto <bb 21>; [48.88%]

  <bb 20> [local count: 109779]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB ={v} 0B;
  goto <bb 22>; [100.00%]

  <bb 21> [local count: 104969]:
  # DEBUG BEGIN_STMT
  vTaskSwitchContext ();

  <bb 22> [local count: 1324279]:
  # DEBUG BEGIN_STMT
  return;

}


vTaskPrioritySet (struct tskTaskControlBlock * xTask, UBaseType_t uxNewPriority)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * const pxIndex;
  BaseType_t xYieldRequired;
  UBaseType_t uxPriorityUsedOnEntry;
  UBaseType_t uxCurrentBasePriority;
  struct TCB_t * pxCurrentTCB.41_1;
  struct TCB_t * pxCurrentTCB.42_2;
  long unsigned int _3;
  struct TCB_t * pxCurrentTCB.43_4;
  long unsigned int _5;
  signed int _6;
  long unsigned int _7;
  struct xLIST * _8;
  struct List_t * _9;
  struct ListItem_t * _10;
  long unsigned int _11;
  long unsigned int uxTopReadyPriority.44_12;
  struct xLIST_ITEM * _13;
  struct xLIST_ITEM * _14;
  struct List_t * _15;
  long unsigned int _16;
  long unsigned int _17;
  struct TCB_t * iftmp.40_19;
  struct TCB_t * iftmp.40_29;

  <bb 2> [local count: 160260]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xYieldRequired => 0
  # DEBUG BEGIN_STMT
  if (uxNewPriority_25(D) > 4)
    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_48 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_48

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 25> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG uxNewPriority => uxNewPriority_25(D)
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  if (xTask_28(D) == 0B)
    goto <bb 6>; [30.00%]
  else
    goto <bb 7>; [70.00%]

  <bb 6> [local count: 15866]:
  iftmp.40_29 ={v} pxCurrentTCB;

  <bb 7> [local count: 52886]:
  # iftmp.40_19 = PHI <iftmp.40_29(6), xTask_28(D)(5)>
  # DEBUG pxTCB => iftmp.40_19
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxCurrentBasePriority_30 = iftmp.40_19->uxBasePriority;
  # DEBUG uxCurrentBasePriority => uxCurrentBasePriority_30
  # DEBUG BEGIN_STMT
  if (uxNewPriority_25(D) != uxCurrentBasePriority_30)
    goto <bb 8>; [66.00%]
  else
    goto <bb 24>; [34.00%]

  <bb 8> [local count: 34905]:
  # DEBUG BEGIN_STMT
  if (uxNewPriority_25(D) > uxCurrentBasePriority_30)
    goto <bb 9>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 9> [local count: 17452]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.41_1 ={v} pxCurrentTCB;
  if (pxCurrentTCB.41_1 != iftmp.40_19)
    goto <bb 10>; [70.00%]
  else
    goto <bb 14>; [30.00%]

  <bb 10> [local count: 12217]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.42_2 ={v} pxCurrentTCB;
  _3 = pxCurrentTCB.42_2->uxPriority;
  if (_3 <= uxNewPriority_25(D))
    goto <bb 11>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 11> [local count: 6108]:
  # DEBUG BEGIN_STMT
  # DEBUG xYieldRequired => 1
  goto <bb 14>; [100.00%]

  <bb 12> [local count: 17452]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.43_4 ={v} pxCurrentTCB;
  if (pxCurrentTCB.43_4 == iftmp.40_19)
    goto <bb 13>; [30.00%]
  else
    goto <bb 14>; [70.00%]

  <bb 13> [local count: 5236]:
  # DEBUG BEGIN_STMT
  # DEBUG xYieldRequired => 1

  <bb 14> [local count: 34905]:
  # xYieldRequired_18 = PHI <1(11), 0(12), 1(13), 0(9), 0(10)>
  # DEBUG xYieldRequired => xYieldRequired_18
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxPriorityUsedOnEntry_31 = iftmp.40_19->uxPriority;
  # DEBUG uxPriorityUsedOnEntry => uxPriorityUsedOnEntry_31
  # DEBUG BEGIN_STMT
  if (uxCurrentBasePriority_30 == uxPriorityUsedOnEntry_31)
    goto <bb 15>; [34.00%]
  else
    goto <bb 16>; [66.00%]

  <bb 15> [local count: 11868]:
  # DEBUG BEGIN_STMT
  iftmp.40_19->uxPriority = uxNewPriority_25(D);

  <bb 16> [local count: 34905]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  iftmp.40_19->uxBasePriority = uxNewPriority_25(D);
  # DEBUG BEGIN_STMT
  _5 = iftmp.40_19->xEventListItem.xItemValue;
  _6 = (signed int) _5;
  if (_6 >= 0)
    goto <bb 17>; [59.00%]
  else
    goto <bb 18>; [41.00%]

  <bb 17> [local count: 20594]:
  # DEBUG BEGIN_STMT
  _7 = 5 - uxNewPriority_25(D);
  iftmp.40_19->xEventListItem.xItemValue = _7;

  <bb 18> [local count: 34905]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _8 = iftmp.40_19->xStateListItem.pvContainer;
  _9 = &pxReadyTasksLists[uxPriorityUsedOnEntry_31];
  if (_8 == _9)
    goto <bb 19>; [17.43%]
  else
    goto <bb 22>; [82.57%]

  <bb 19> [local count: 6084]:
  # DEBUG BEGIN_STMT
  _10 = &iftmp.40_19->xStateListItem;
  uxListRemove (_10);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _11 = iftmp.40_19->uxPriority;
  uxTopReadyPriority.44_12 ={v} uxTopReadyPriority;
  if (_11 > uxTopReadyPriority.44_12)
    goto <bb 20>; [50.00%]
  else
    goto <bb 21>; [50.00%]

  <bb 20> [local count: 3042]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _11;

  <bb 21> [local count: 6084]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_37 = pxReadyTasksLists[_11].pxIndex;
  # DEBUG pxIndex => pxIndex_37
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  iftmp.40_19->xStateListItem.pxNext = pxIndex_37;
  # DEBUG BEGIN_STMT
  _13 = pxIndex_37->pxPrevious;
  iftmp.40_19->xStateListItem.pxPrevious = _13;
  # DEBUG BEGIN_STMT
  _14 = pxIndex_37->pxPrevious;
  _14->pxNext = _10;
  # DEBUG BEGIN_STMT
  pxIndex_37->pxPrevious = _10;
  # DEBUG BEGIN_STMT
  _15 = &pxReadyTasksLists[_11];
  iftmp.40_19->xStateListItem.pvContainer = _15;
  # DEBUG BEGIN_STMT
  _16 ={v} pxReadyTasksLists[_11].uxNumberOfItems;
  _17 = _16 + 1;
  pxReadyTasksLists[_11].uxNumberOfItems ={v} _17;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 22> [local count: 34905]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xYieldRequired_18 != 0)
    goto <bb 23>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 23> [local count: 17452]:
  # 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

  <bb 24> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  return;

}


uxTaskPriorityGetFromISR (struct tskTaskControlBlock * const xTask)
{
  uint32_t ulOriginalBASEPRI;
  uint32_t ulNewBASEPRI;
  UBaseType_t uxReturn;
  const struct TCB_t * iftmp.39_1;
  const struct TCB_t * iftmp.39_5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortValidateInterruptPriority ();
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY ulPortRaiseBASEPRI
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	mrs %0, basepri											
	mov %1, %2												
	msr basepri, %1											
	isb														
	dsb														
" : "=r" ulOriginalBASEPRI_7, "=r" ulNewBASEPRI_8 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_8
  # DEBUG ulOriginalBASEPRI => ulOriginalBASEPRI_7
  # DEBUG BEGIN_STMT
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG ulOriginalBASEPRI => NULL
  # DEBUG uxSavedInterruptState => ulOriginalBASEPRI_7
  # DEBUG BEGIN_STMT
  if (xTask_4(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 322122547]:
  iftmp.39_5 ={v} pxCurrentTCB;

  <bb 4> [local count: 1073741824]:
  # iftmp.39_1 = PHI <iftmp.39_5(3), xTask_4(D)(2)>
  # DEBUG pxTCB => iftmp.39_1
  # DEBUG BEGIN_STMT
  uxReturn_6 = iftmp.39_1->uxPriority;
  # DEBUG uxReturn => uxReturn_6
  # DEBUG BEGIN_STMT
  # DEBUG ulNewMaskValue => ulOriginalBASEPRI_7
  # DEBUG INLINE_ENTRY vPortSetBASEPRI
  # DEBUG BEGIN_STMT
  __asm__ __volatile__("	msr basepri, %0	" :  : "r" ulOriginalBASEPRI_7 : "memory");
  # DEBUG ulNewMaskValue => NULL
  # DEBUG BEGIN_STMT
  return uxReturn_6;

}


uxTaskPriorityGet (struct tskTaskControlBlock * const xTask)
{
  UBaseType_t uxReturn;
  const struct TCB_t * iftmp.38_1;
  const struct TCB_t * iftmp.38_5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  if (xTask_4(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 322122547]:
  iftmp.38_5 ={v} pxCurrentTCB;

  <bb 4> [local count: 1073741824]:
  # iftmp.38_1 = PHI <iftmp.38_5(3), xTask_4(D)(2)>
  # DEBUG pxTCB => iftmp.38_1
  # DEBUG BEGIN_STMT
  uxReturn_6 = iftmp.38_1->uxPriority;
  # DEBUG uxReturn => uxReturn_6
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  return uxReturn_6;

}


eTaskGetState (struct tskTaskControlBlock * xTask)
{
  uint32_t ulNewBASEPRI;
  BaseType_t x;
  const struct List_t * pxOverflowedDelayedList;
  const struct List_t * pxDelayedList;
  const struct List_t * pxStateList;
  eTaskState eReturn;
  struct TCB_t * pxCurrentTCB.37_1;
  struct xLIST * _2;

  <bb 2> [local count: 357913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG pxTCB => xTask_5(D)
  # DEBUG BEGIN_STMT
  if (xTask_5(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_15 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_15

  <bb 4> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 15> [local count: 1073741824]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 250539]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxCurrentTCB.37_1 ={v} pxCurrentTCB;
  if (pxCurrentTCB.37_1 == xTask_5(D))
    goto <bb 14>; [46.53%]
  else
    goto <bb 6>; [53.47%]

  <bb 6> [local count: 133963]:
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  pxStateList_9 = MEM[(const struct TCB_t *)xTask_5(D)].xStateListItem.pvContainer;
  # DEBUG pxStateList => pxStateList_9
  # DEBUG BEGIN_STMT
  pxDelayedList_10 ={v} pxDelayedTaskList;
  # DEBUG pxDelayedList => pxDelayedList_10
  # DEBUG BEGIN_STMT
  pxOverflowedDelayedList_11 ={v} pxOverflowDelayedTaskList;
  # DEBUG pxOverflowedDelayedList => pxOverflowedDelayedList_11
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  if (pxStateList_9 == pxDelayedList_10)
    goto <bb 14>; [18.75%]
  else
    goto <bb 7>; [81.25%]

  <bb 7> [local count: 108845]:
  if (pxStateList_9 == pxOverflowedDelayedList_11)
    goto <bb 14>; [18.75%]
  else
    goto <bb 8>; [81.25%]

  <bb 8> [local count: 88437]:
  # DEBUG BEGIN_STMT
  if (pxStateList_9 == &xSuspendedTaskList)
    goto <bb 9>; [30.00%]
  else
    goto <bb 11>; [70.00%]

  <bb 9> [local count: 26531]:
  # DEBUG BEGIN_STMT
  _2 = MEM[(const struct TCB_t *)xTask_5(D)].xEventListItem.pvContainer;
  if (_2 == 0B)
    goto <bb 10>; [44.32%]
  else
    goto <bb 14>; [55.68%]

  <bb 10> [local count: 11759]:
  # x_4 = PHI <0(9)>
  eReturn_13 = eTaskGetState.part.0 (xTask_5(D));
  goto <bb 14>; [100.00%]

  <bb 11> [local count: 61906]:
  # DEBUG BEGIN_STMT
  if (pxStateList_9 == &xTasksWaitingTermination)
    goto <bb 14>; [18.75%]
  else
    goto <bb 12>; [81.25%]

  <bb 12> [local count: 50298]:
  if (pxStateList_9 == 0B)
    goto <bb 14>; [18.75%]
  else
    goto <bb 13>; [81.25%]

  <bb 13> [local count: 40867]:
  # DEBUG BEGIN_STMT
  # DEBUG eReturn => 1

  <bb 14> [local count: 250539]:
  # eReturn_3 = PHI <0(5), 2(7), 2(9), 4(12), 1(13), 4(11), eReturn_13(10), 2(6)>
  # DEBUG eReturn => eReturn_3
  # DEBUG BEGIN_STMT
  return eReturn_3;

}


vTaskDelay (const TickType_t xTicksToDelay)
{
  uint32_t ulNewBASEPRI;
  BaseType_t xAlreadyYielded;
  long unsigned int uxSchedulerSuspended.36_1;

  <bb 2> [local count: 320519]:
  # DEBUG BEGIN_STMT
  # DEBUG xAlreadyYielded => 0
  # DEBUG BEGIN_STMT
  if (xTicksToDelay_3(D) != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 4> [local count: 160260]:
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.36_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.36_1 != 0)
    goto <bb 5>; [67.00%]
  else
    goto <bb 7>; [33.00%]

  <bb 5> [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 6> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 1073741824]:
  goto <bb 6>; [100.00%]

  <bb 7> [local count: 52886]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  prvAddCurrentTaskToDelayedList (xTicksToDelay_3(D), 0);
  # DEBUG BEGIN_STMT
  xAlreadyYielded_8 = xTaskResumeAll ();
  # DEBUG xAlreadyYielded => xAlreadyYielded_8
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xAlreadyYielded_8 == 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 8> [local count: 186703]:
  # DEBUG xAlreadyYielded => NULL
  # 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

  <bb 9> [local count: 213145]:
  # DEBUG BEGIN_STMT
  return;

}


xTaskDelayUntil (TickType_t * const pxPreviousWakeTime, const TickType_t xTimeIncrement)
{
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  uint32_t ulNewBASEPRI;
  const TickType_t xConstTickCount;
  BaseType_t xShouldDelay;
  BaseType_t xAlreadyYielded;
  TickType_t xTimeToWake;
  long unsigned int uxSchedulerSuspended.22_1;
  long unsigned int _2;
  long unsigned int _3;

  <bb 2> [local count: 306783]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG xShouldDelay => 0
  # DEBUG BEGIN_STMT
  if (pxPreviousWakeTime_7(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 92035]:
  # 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_21 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_21

  <bb 4> [local count: 920350133]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 25> [local count: 920350133]:
  goto <bb 4>; [100.00%]

  <bb 5> [local count: 214748]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (xTimeIncrement_8(D) == 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 6> [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_22 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_22

  <bb 7> [local count: 1073741823]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 26> [local count: 1073741824]:
  goto <bb 7>; [100.00%]

  <bb 8> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.22_1 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.22_1 != 0)
    goto <bb 9>; [67.00%]
  else
    goto <bb 11>; [33.00%]

  <bb 9> [local count: 71941]:
  # 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_23 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_23

  <bb 10> [local count: 719407021]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 27> [local count: 719407021]:
  goto <bb 10>; [100.00%]

  <bb 11> [local count: 35433]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vTaskSuspendAll ();
  # DEBUG BEGIN_STMT
  xConstTickCount_11 ={v} xTickCount;
  # DEBUG xConstTickCount => xConstTickCount_11
  # DEBUG BEGIN_STMT
  _2 = *pxPreviousWakeTime_7(D);
  xTimeToWake_12 = _2 + xTimeIncrement_8(D);
  # DEBUG xTimeToWake => xTimeToWake_12
  # DEBUG BEGIN_STMT
  if (_2 > xConstTickCount_11)
    goto <bb 12>; [50.00%]
  else
    goto <bb 17>; [50.00%]

  <bb 12> [local count: 17717]:
  # DEBUG BEGIN_STMT
  if (_2 > xTimeToWake_12)
    goto <bb 14>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 13> [local count: 8858]:
  # DEBUG xShouldDelay => 0
  # DEBUG BEGIN_STMT
  *pxPreviousWakeTime_7(D) = xTimeToWake_12;
  # DEBUG BEGIN_STMT
  goto <bb 22>; [100.00%]

  <bb 14> [local count: 8858]:
  if (xConstTickCount_11 < xTimeToWake_12)
    goto <bb 16>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 15> [local count: 4429]:
  # DEBUG xShouldDelay => 0
  # DEBUG BEGIN_STMT
  *pxPreviousWakeTime_7(D) = xTimeToWake_12;
  # DEBUG BEGIN_STMT
  goto <bb 22>; [100.00%]

  <bb 16> [local count: 4429]:
  # DEBUG BEGIN_STMT
  # DEBUG xShouldDelay => 1
  # DEBUG BEGIN_STMT
  *pxPreviousWakeTime_7(D) = xTimeToWake_12;
  # DEBUG BEGIN_STMT
  goto <bb 21>; [100.00%]

  <bb 17> [local count: 17717]:
  # DEBUG BEGIN_STMT
  if (_2 > xTimeToWake_12)
    goto <bb 19>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 18> [local count: 8858]:
  if (xConstTickCount_11 < xTimeToWake_12)
    goto <bb 19>; [50.00%]
  else
    goto <bb 20>; [50.00%]

  <bb 19> [local count: 13288]:
  # DEBUG BEGIN_STMT
  # DEBUG xShouldDelay => 1
  # DEBUG BEGIN_STMT
  *pxPreviousWakeTime_7(D) = xTimeToWake_12;
  # DEBUG BEGIN_STMT
  goto <bb 21>; [100.00%]

  <bb 20> [local count: 4429]:
  # DEBUG xShouldDelay => 0
  # DEBUG BEGIN_STMT
  *pxPreviousWakeTime_7(D) = xTimeToWake_12;
  # DEBUG BEGIN_STMT
  goto <bb 22>; [100.00%]

  <bb 21> [local count: 17717]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = xTimeToWake_12 - xConstTickCount_11;
  prvAddCurrentTaskToDelayedList (_3, 0);

  <bb 22> [local count: 35433]:
  # xShouldDelay_29 = PHI <0(20), 1(21), 0(15), 0(13)>
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  xAlreadyYielded_16 = xTaskResumeAll ();
  # DEBUG xAlreadyYielded => xAlreadyYielded_16
  # DEBUG BEGIN_STMT
  if (xAlreadyYielded_16 == 0)
    goto <bb 23>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 23> [local count: 17717]:
  # 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

  <bb 24> [local count: 35433]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return xShouldDelay_29;

}


vTaskDelete (struct tskTaskControlBlock * xTaskToDelete)
{
  uint32_t ulNewBASEPRI;
  struct ListItem_t * _1;
  struct xLIST * _2;
  struct ListItem_t * _3;
  long unsigned int uxTaskNumber.13_4;
  long unsigned int _5;
  struct TCB_t * pxCurrentTCB.14_6;
  long unsigned int uxDeletedTasksWaitingCleanUp.15_7;
  long unsigned int _8;
  long unsigned int uxCurrentNumberOfTasks.16_9;
  long unsigned int _10;
  long int xSchedulerRunning.17_11;
  struct TCB_t * pxCurrentTCB.18_12;
  long unsigned int uxSchedulerSuspended.19_13;
  struct TCB_t * iftmp.12_14;
  struct TCB_t * iftmp.12_21;

  <bb 2> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  if (xTaskToDelete_20(D) == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 4>; [70.00%]

  <bb 3> [local count: 429496]:
  iftmp.12_21 ={v} pxCurrentTCB;

  <bb 4> [local count: 1431653]:
  # iftmp.12_14 = PHI <iftmp.12_21(3), xTaskToDelete_20(D)(2)>
  # DEBUG pxTCB => iftmp.12_14
  # DEBUG BEGIN_STMT
  _1 = &iftmp.12_14->xStateListItem;
  uxListRemove (_1);
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = iftmp.12_14->xEventListItem.pvContainer;
  if (_2 != 0B)
    goto <bb 5>; [53.47%]
  else
    goto <bb 6>; [46.53%]

  <bb 5> [local count: 765505]:
  # DEBUG BEGIN_STMT
  _3 = &iftmp.12_14->xEventListItem;
  uxListRemove (_3);

  <bb 6> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTaskNumber.13_4 = uxTaskNumber;
  _5 = uxTaskNumber.13_4 + 1;
  uxTaskNumber = _5;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.14_6 ={v} pxCurrentTCB;
  if (pxCurrentTCB.14_6 == iftmp.12_14)
    goto <bb 7>; [30.00%]
  else
    goto <bb 8>; [70.00%]

  <bb 7> [local count: 429496]:
  # DEBUG BEGIN_STMT
  vListInsertEnd (&xTasksWaitingTermination, _1);
  # DEBUG BEGIN_STMT
  uxDeletedTasksWaitingCleanUp.15_7 ={v} uxDeletedTasksWaitingCleanUp;
  _8 = uxDeletedTasksWaitingCleanUp.15_7 + 1;
  uxDeletedTasksWaitingCleanUp ={v} _8;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 1002157]:
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.16_9 ={v} uxCurrentNumberOfTasks;
  _10 = uxCurrentNumberOfTasks.16_9 + 4294967295;
  uxCurrentNumberOfTasks ={v} _10;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  prvDeleteTCB (iftmp.12_14);
  # DEBUG BEGIN_STMT
  prvResetNextTaskUnblockTime ();

  <bb 9> [local count: 1431653]:
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  xSchedulerRunning.17_11 ={v} xSchedulerRunning;
  if (xSchedulerRunning.17_11 != 0)
    goto <bb 10>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 10> [local count: 715827]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.18_12 ={v} pxCurrentTCB;
  if (pxCurrentTCB.18_12 == iftmp.12_14)
    goto <bb 11>; [30.00%]
  else
    goto <bb 15>; [70.00%]

  <bb 11> [local count: 214748]:
  # DEBUG BEGIN_STMT
  uxSchedulerSuspended.19_13 ={v} uxSchedulerSuspended;
  if (uxSchedulerSuspended.19_13 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 12> [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_34 : "i" 16 : "memory");
  # DEBUG ulNewBASEPRI => ulNewBASEPRI_34

  <bb 13> [local count: 1073741824]:
  # DEBUG ulNewBASEPRI => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT

  <bb 16> [local count: 1073741824]:
  goto <bb 13>; [100.00%]

  <bb 14> [local count: 107374]:
  # DEBUG BEGIN_STMT
  # 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

  <bb 15> [local count: 1324279]:
  # DEBUG BEGIN_STMT
  return;

}


prvAddNewTaskToReadyList (struct TCB_t * pxNewTCB)
{
  struct ListItem_t * const pxIndex;
  long unsigned int uxCurrentNumberOfTasks.2_1;
  long unsigned int _2;
  struct TCB_t * pxCurrentTCB.3_3;
  long unsigned int uxCurrentNumberOfTasks.4_4;
  long int xSchedulerRunning.5_5;
  struct TCB_t * pxCurrentTCB.6_6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int uxTaskNumber.7_9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int uxTopReadyPriority.9_12;
  struct xLIST_ITEM * _13;
  struct xLIST_ITEM * _14;
  struct ListItem_t * _15;
  struct List_t * _16;
  long unsigned int _17;
  long unsigned int _18;
  long int xSchedulerRunning.10_19;
  struct TCB_t * pxCurrentTCB.11_20;
  long unsigned int _21;
  long unsigned int _22;

  <bb 2> [local count: 1073741821]:
  # DEBUG BEGIN_STMT
  vPortEnterCritical ();
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.2_1 ={v} uxCurrentNumberOfTasks;
  _2 = uxCurrentNumberOfTasks.2_1 + 1;
  uxCurrentNumberOfTasks ={v} _2;
  # DEBUG BEGIN_STMT
  pxCurrentTCB.3_3 ={v} pxCurrentTCB;
  if (pxCurrentTCB.3_3 == 0B)
    goto <bb 3>; [30.00%]
  else
    goto <bb 5>; [70.00%]

  <bb 3> [local count: 322122546]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB ={v} pxNewTCB_29(D);
  # DEBUG BEGIN_STMT
  uxCurrentNumberOfTasks.4_4 ={v} uxCurrentNumberOfTasks;
  if (uxCurrentNumberOfTasks.4_4 == 1)
    goto <bb 4>; [20.24%]
  else
    goto <bb 8>; [79.76%]

  <bb 4> [local count: 65197603]:
  # DEBUG BEGIN_STMT
  prvInitialiseTaskLists ();
  goto <bb 8>; [100.00%]

  <bb 5> [local count: 751619275]:
  # DEBUG BEGIN_STMT
  xSchedulerRunning.5_5 ={v} xSchedulerRunning;
  if (xSchedulerRunning.5_5 == 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 6> [local count: 375809637]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.6_6 ={v} pxCurrentTCB;
  _7 = pxCurrentTCB.6_6->uxPriority;
  _8 = pxNewTCB_29(D)->uxPriority;
  if (_7 <= _8)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 187904819]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB ={v} pxNewTCB_29(D);

  <bb 8> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  uxTaskNumber.7_9 = uxTaskNumber;
  _10 = uxTaskNumber.7_9 + 1;
  uxTaskNumber = _10;
  # DEBUG BEGIN_STMT
  pxNewTCB_29(D)->uxTCBNumber = _10;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _11 = pxNewTCB_29(D)->uxPriority;
  uxTopReadyPriority.9_12 ={v} uxTopReadyPriority;
  if (_11 > uxTopReadyPriority.9_12)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 536870911]:
  # DEBUG BEGIN_STMT
  uxTopReadyPriority ={v} _11;

  <bb 10> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxIndex_36 = pxReadyTasksLists[_11].pxIndex;
  # DEBUG pxIndex => pxIndex_36
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  pxNewTCB_29(D)->xStateListItem.pxNext = pxIndex_36;
  # DEBUG BEGIN_STMT
  _13 = pxIndex_36->pxPrevious;
  pxNewTCB_29(D)->xStateListItem.pxPrevious = _13;
  # DEBUG BEGIN_STMT
  _14 = pxIndex_36->pxPrevious;
  _15 = &pxNewTCB_29(D)->xStateListItem;
  _14->pxNext = _15;
  # DEBUG BEGIN_STMT
  pxIndex_36->pxPrevious = _15;
  # DEBUG BEGIN_STMT
  _16 = &pxReadyTasksLists[_11];
  pxNewTCB_29(D)->xStateListItem.pvContainer = _16;
  # DEBUG BEGIN_STMT
  _17 ={v} pxReadyTasksLists[_11].uxNumberOfItems;
  _18 = _17 + 1;
  pxReadyTasksLists[_11].uxNumberOfItems ={v} _18;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  vPortExitCritical ();
  # DEBUG BEGIN_STMT
  xSchedulerRunning.10_19 ={v} xSchedulerRunning;
  if (xSchedulerRunning.10_19 != 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 11> [local count: 536870911]:
  # DEBUG BEGIN_STMT
  pxCurrentTCB.11_20 ={v} pxCurrentTCB;
  _21 = pxCurrentTCB.11_20->uxPriority;
  _22 = pxNewTCB_29(D)->uxPriority;
  if (_21 < _22)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 268435456]:
  # 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

  <bb 13> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


xTaskCreate (void (*TaskFunction_t) (void *) pxTaskCode, const char * const pcName, const uint16_t usStackDepth, void * const pvParameters, UBaseType_t uxPriority, struct tskTaskControlBlock * * const pxCreatedTask)
{
  StackType_t * pxStack;
  BaseType_t xReturn;
  struct TCB_t * pxNewTCB;
  unsigned int _1;
  unsigned int _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (unsigned int) usStackDepth_6(D);
  _2 = _1 * 4;
  pxStack_9 = pvPortMalloc (_2);
  # DEBUG pxStack => pxStack_9
  # DEBUG BEGIN_STMT
  if (pxStack_9 != 0B)
    goto <bb 4>; [53.47%]
  else
    goto <bb 9>; [46.53%]

  <bb 4> [local count: 574129754]:
  # DEBUG BEGIN_STMT
  pxNewTCB_11 = pvPortMalloc (88);
  # DEBUG pxNewTCB => pxNewTCB_11
  # DEBUG BEGIN_STMT
  if (pxNewTCB_11 != 0B)
    goto <bb 5>; [82.57%]
  else
    goto <bb 6>; [17.43%]

  <bb 5> [local count: 474058937]:
  # DEBUG BEGIN_STMT
  pxNewTCB_11->pxStack = pxStack_9;
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 100070816]:
  # DEBUG BEGIN_STMT
  vPortFree (pxStack_9);

  <bb 7> [local count: 574129754]:
  # DEBUG pxNewTCB => pxNewTCB_11
  # DEBUG BEGIN_STMT
  if (pxNewTCB_11 != 0B)
    goto <bb 8>; [53.47%]
  else
    goto <bb 9>; [46.53%]

  <bb 8> [local count: 306987179]:
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => 0B
  prvInitialiseNewTask.isra.0 (pxTaskCode_14(D), pcName_15(D), _1, pvParameters_16(D), uxPriority_17(D), pxCreatedTask_18(D), pxNewTCB_11);
  # DEBUG BEGIN_STMT
  prvAddNewTaskToReadyList (pxNewTCB_11);
  # DEBUG BEGIN_STMT
  # DEBUG xReturn => 1

  <bb 9> [local count: 1073741824]:
  # xReturn_3 = PHI <1(8), -1(7), -1(2)>
  # DEBUG pxNewTCB => NULL
  # DEBUG xReturn => xReturn_3
  # DEBUG BEGIN_STMT
  return xReturn_3;

}


