ADM/GW/Release_FLASH/RTD/src/IntCtrl_Ip.c.016i.visibility
2024-08-08 10:00:15 +09:00

786 lines
19 KiB
Plaintext

Marking local functions: IntCtrl_Ip_SetTargetCoresPrivileged IntCtrl_Ip_GetActivePrivileged IntCtrl_Ip_GetPendingPrivileged IntCtrl_Ip_SetPendingPrivileged IntCtrl_Ip_ClearPendingPrivileged IntCtrl_Ip_GetPriorityPrivileged IntCtrl_Ip_SetPriorityPrivileged IntCtrl_Ip_DisableIrqPrivileged IntCtrl_Ip_EnableIrqPrivileged IntCtrl_Ip_InstallHandlerPrivileged DevAssert
Marking externally visible functions: IntCtrl_Ip_SetTargetCores IntCtrl_Ip_GetActive IntCtrl_Ip_GetPending IntCtrl_Ip_SetPending IntCtrl_Ip_ClearPending IntCtrl_Ip_GetPriority IntCtrl_Ip_SetPriority IntCtrl_Ip_DisableIrq IntCtrl_Ip_EnableIrq IntCtrl_Ip_InstallHandler IntCtrl_Ip_ConfigIrqRouting IntCtrl_Ip_Init
Marking externally visible variables:
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:
__INT_SRAM_START/23 (__INT_SRAM_START) @07aac708
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: external public
References:
Referring: IntCtrl_Ip_InstallHandlerPrivileged/1 (addr)
Availability: not_available
Varpool flags:
IntCtrl_Ip_SetTargetCores/22 (IntCtrl_Ip_SetTargetCores) @07aa8a80
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by: IntCtrl_Ip_ConfigIrqRouting/12
Calls: IntCtrl_Ip_SetTargetCoresPrivileged/10
IntCtrl_Ip_GetActive/21 (IntCtrl_Ip_GetActive) @07aa87e0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_GetActivePrivileged/9
IntCtrl_Ip_GetPending/20 (IntCtrl_Ip_GetPending) @07aa8540
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_GetPendingPrivileged/8
IntCtrl_Ip_SetPending/19 (IntCtrl_Ip_SetPending) @07aa82a0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_SetPendingPrivileged/7
IntCtrl_Ip_ClearPending/18 (IntCtrl_Ip_ClearPending) @07aa8000
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_ClearPendingPrivileged/6
IntCtrl_Ip_GetPriority/17 (IntCtrl_Ip_GetPriority) @076b7a80
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_GetPriorityPrivileged/5
IntCtrl_Ip_SetPriority/16 (IntCtrl_Ip_SetPriority) @076b7460
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by: IntCtrl_Ip_Init/11
Calls: IntCtrl_Ip_SetPriorityPrivileged/4
IntCtrl_Ip_DisableIrq/15 (IntCtrl_Ip_DisableIrq) @076b7ee0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by: IntCtrl_Ip_Init/11
Calls: IntCtrl_Ip_DisableIrqPrivileged/3
IntCtrl_Ip_EnableIrq/14 (IntCtrl_Ip_EnableIrq) @076b7c40
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by: IntCtrl_Ip_Init/11
Calls: IntCtrl_Ip_EnableIrqPrivileged/2
IntCtrl_Ip_InstallHandler/13 (IntCtrl_Ip_InstallHandler) @076b79a0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by: IntCtrl_Ip_ConfigIrqRouting/12
Calls: IntCtrl_Ip_InstallHandlerPrivileged/1
IntCtrl_Ip_ConfigIrqRouting/12 (IntCtrl_Ip_ConfigIrqRouting) @076b7620
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_InstallHandler/13 IntCtrl_Ip_SetTargetCores/22 DevAssert/0 DevAssert/0
IntCtrl_Ip_Init/11 (IntCtrl_Ip_Init) @076b7380
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: IntCtrl_Ip_DisableIrq/15 IntCtrl_Ip_EnableIrq/14 IntCtrl_Ip_SetPriority/16 DevAssert/0 DevAssert/0
IntCtrl_Ip_SetTargetCoresPrivileged/10 (IntCtrl_Ip_SetTargetCoresPrivileged) @076b70e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_SetTargetCores/22
Calls: DevAssert/0 DevAssert/0 DevAssert/0
IntCtrl_Ip_GetActivePrivileged/9 (IntCtrl_Ip_GetActivePrivileged) @07a64b60
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_GetActive/21
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_GetPendingPrivileged/8 (IntCtrl_Ip_GetPendingPrivileged) @07a64620
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_GetPending/20
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_SetPendingPrivileged/7 (IntCtrl_Ip_SetPendingPrivileged) @07a640e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_SetPending/19
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_ClearPendingPrivileged/6 (IntCtrl_Ip_ClearPendingPrivileged) @07a64d20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_ClearPending/18
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_GetPriorityPrivileged/5 (IntCtrl_Ip_GetPriorityPrivileged) @07a64a80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_GetPriority/17
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_SetPriorityPrivileged/4 (IntCtrl_Ip_SetPriorityPrivileged) @07a647e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_SetPriority/16
Calls: DevAssert/0 DevAssert/0 DevAssert/0
IntCtrl_Ip_DisableIrqPrivileged/3 (IntCtrl_Ip_DisableIrqPrivileged) @07a64540
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_DisableIrq/15
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_EnableIrqPrivileged/2 (IntCtrl_Ip_EnableIrqPrivileged) @07a642a0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_EnableIrq/14
Calls: DevAssert/0 DevAssert/0
IntCtrl_Ip_InstallHandlerPrivileged/1 (IntCtrl_Ip_InstallHandlerPrivileged) @07a64000
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: __INT_SRAM_START/23 (addr)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_InstallHandler/13
Calls: DevAssert/0 DevAssert/0 DevAssert/0
DevAssert/0 (DevAssert) @07a48a80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: body local optimize_size
Called by: IntCtrl_Ip_SetTargetCoresPrivileged/10 IntCtrl_Ip_SetTargetCoresPrivileged/10 IntCtrl_Ip_SetTargetCoresPrivileged/10 IntCtrl_Ip_GetActivePrivileged/9 IntCtrl_Ip_GetActivePrivileged/9 IntCtrl_Ip_GetPendingPrivileged/8 IntCtrl_Ip_GetPendingPrivileged/8 IntCtrl_Ip_SetPendingPrivileged/7 IntCtrl_Ip_SetPendingPrivileged/7 IntCtrl_Ip_ClearPendingPrivileged/6 IntCtrl_Ip_ClearPendingPrivileged/6 IntCtrl_Ip_GetPriorityPrivileged/5 IntCtrl_Ip_GetPriorityPrivileged/5 IntCtrl_Ip_SetPriorityPrivileged/4 IntCtrl_Ip_SetPriorityPrivileged/4 IntCtrl_Ip_SetPriorityPrivileged/4 IntCtrl_Ip_DisableIrqPrivileged/3 IntCtrl_Ip_DisableIrqPrivileged/3 IntCtrl_Ip_EnableIrqPrivileged/2 IntCtrl_Ip_EnableIrqPrivileged/2 IntCtrl_Ip_InstallHandlerPrivileged/1 IntCtrl_Ip_InstallHandlerPrivileged/1 IntCtrl_Ip_InstallHandlerPrivileged/1 IntCtrl_Ip_ConfigIrqRouting/12 IntCtrl_Ip_ConfigIrqRouting/12 IntCtrl_Ip_Init/11 IntCtrl_Ip_Init/11
Calls:
IntCtrl_Ip_SetTargetCores (IRQn_Type eIrqNumber, uint8 u8TargetCores)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_SetTargetCoresPrivileged (eIrqNumber, u8TargetCores);
return;
}
IntCtrl_Ip_GetActive (IRQn_Type eIrqNumber)
{
boolean D.7737;
<bb 2> :
# DEBUG BEGIN_STMT
D.7737 = IntCtrl_Ip_GetActivePrivileged (eIrqNumber);
return D.7737;
}
IntCtrl_Ip_GetPending (IRQn_Type eIrqNumber)
{
boolean D.7733;
<bb 2> :
# DEBUG BEGIN_STMT
D.7733 = IntCtrl_Ip_GetPendingPrivileged (eIrqNumber);
return D.7733;
}
IntCtrl_Ip_SetPending (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_SetPendingPrivileged (eIrqNumber);
return;
}
IntCtrl_Ip_ClearPending (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_ClearPendingPrivileged (eIrqNumber);
return;
}
IntCtrl_Ip_GetPriority (IRQn_Type eIrqNumber)
{
uint8 D.7729;
<bb 2> :
# DEBUG BEGIN_STMT
D.7729 = IntCtrl_Ip_GetPriorityPrivileged (eIrqNumber);
return D.7729;
}
IntCtrl_Ip_SetPriority (IRQn_Type eIrqNumber, uint8 u8Priority)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_SetPriorityPrivileged (eIrqNumber, u8Priority);
return;
}
IntCtrl_Ip_DisableIrq (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_DisableIrqPrivileged (eIrqNumber);
return;
}
IntCtrl_Ip_EnableIrq (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_EnableIrqPrivileged (eIrqNumber);
return;
}
IntCtrl_Ip_InstallHandler (IRQn_Type eIrqNumber, void (*IntCtrl_Ip_IrqHandlerType) (void) pfNewHandler, void (*IntCtrl_Ip_IrqHandlerType) (void) * const pfOldHandler)
{
<bb 2> :
# DEBUG BEGIN_STMT
IntCtrl_Ip_InstallHandlerPrivileged (eIrqNumber, pfNewHandler, pfOldHandler);
return;
}
IntCtrl_Ip_ConfigIrqRouting (const struct IntCtrl_Ip_GlobalRouteConfigType * routeConfig)
{
uint32 irqIdx;
IntCtrl_Ip_StatusType D.7725;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = routeConfig != 0B;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = routeConfig->u32ConfigIrqCount;
_3 = _2 <= 206;
DevAssert (_3);
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
irqIdx = 0;
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_4 = routeConfig->aIrqConfig;
_5 = irqIdx * 8;
_6 = _4 + _5;
_7 = _6->eIrqNumber;
_8 = routeConfig->aIrqConfig;
_9 = irqIdx * 8;
_10 = _8 + _9;
_11 = _10->u8TargetCores;
IntCtrl_Ip_SetTargetCores (_7, _11);
# DEBUG BEGIN_STMT
_12 = routeConfig->aIrqConfig;
_13 = irqIdx * 8;
_14 = _12 + _13;
_15 = _14->eIrqNumber;
_16 = routeConfig->aIrqConfig;
_17 = irqIdx * 8;
_18 = _16 + _17;
_19 = _18->pfHandler;
IntCtrl_Ip_InstallHandler (_15, _19, 0B);
# DEBUG BEGIN_STMT
irqIdx = irqIdx + 1;
<bb 4> :
# DEBUG BEGIN_STMT
_20 = routeConfig->u32ConfigIrqCount;
if (irqIdx < _20)
goto <bb 3>; [INV]
else
goto <bb 5>; [INV]
<bb 5> :
# DEBUG BEGIN_STMT
D.7725 = 0;
return D.7725;
}
IntCtrl_Ip_Init (const struct IntCtrl_Ip_CtrlConfigType * pIntCtrlCtrlConfig)
{
uint32 irqIdx;
IntCtrl_Ip_StatusType D.7720;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = pIntCtrlCtrlConfig != 0B;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = pIntCtrlCtrlConfig->u32ConfigIrqCount;
_3 = _2 <= 206;
DevAssert (_3);
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
irqIdx = 0;
goto <bb 7>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_4 = pIntCtrlCtrlConfig->aIrqConfig;
_5 = irqIdx * 4;
_6 = _4 + _5;
_7 = _6->eIrqNumber;
_8 = pIntCtrlCtrlConfig->aIrqConfig;
_9 = irqIdx * 4;
_10 = _8 + _9;
_11 = _10->u8IrqPriority;
IntCtrl_Ip_SetPriority (_7, _11);
# DEBUG BEGIN_STMT
_12 = pIntCtrlCtrlConfig->aIrqConfig;
_13 = irqIdx * 4;
_14 = _12 + _13;
_15 = _14->bIrqEnabled;
if (_15 != 0)
goto <bb 4>; [INV]
else
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_16 = pIntCtrlCtrlConfig->aIrqConfig;
_17 = irqIdx * 4;
_18 = _16 + _17;
_19 = _18->eIrqNumber;
IntCtrl_Ip_EnableIrq (_19);
goto <bb 6>; [INV]
<bb 5> :
# DEBUG BEGIN_STMT
_20 = pIntCtrlCtrlConfig->aIrqConfig;
_21 = irqIdx * 4;
_22 = _20 + _21;
_23 = _22->eIrqNumber;
IntCtrl_Ip_DisableIrq (_23);
<bb 6> :
# DEBUG BEGIN_STMT
irqIdx = irqIdx + 1;
<bb 7> :
# DEBUG BEGIN_STMT
_24 = pIntCtrlCtrlConfig->u32ConfigIrqCount;
if (irqIdx < _24)
goto <bb 3>; [INV]
else
goto <bb 8>; [INV]
<bb 8> :
# DEBUG BEGIN_STMT
D.7720 = 0;
return D.7720;
}
IntCtrl_Ip_SetTargetCoresPrivileged (IRQn_Type eIrqNumber, uint8 u8TargetCores)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
_3 = 1076232192B;
_4 = (int) eIrqNumber;
_5 = _3->IRSPRC[_4];
_6 = (signed short) _5;
_7 = _6 >= 0;
DevAssert (_7);
# DEBUG BEGIN_STMT
_8 = 1076232192B;
_9 = (int) eIrqNumber;
_10 = (short unsigned int) u8TargetCores;
_8->IRSPRC[_9] = _10;
return;
}
IntCtrl_Ip_GetActivePrivileged (IRQn_Type eIrqNumber)
{
boolean D.7739;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
_3 = 3758153728B;
_4 = (long unsigned int) eIrqNumber;
_5 = _4 >> 5;
_6 = _3->IABR[_5];
eIrqNumber.8_7 = (unsigned short) eIrqNumber;
_8 = (long unsigned int) eIrqNumber.8_7;
_9 = _8 & 31;
_10 = _6 >> _9;
_11 = _10 & 1;
D.7739 = _11 != 0;
return D.7739;
}
IntCtrl_Ip_GetPendingPrivileged (IRQn_Type eIrqNumber)
{
boolean D.7735;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
_3 = 3758153728B;
_4 = (long unsigned int) eIrqNumber;
_5 = _4 >> 5;
_6 = _3->ISPR[_5];
eIrqNumber.7_7 = (unsigned short) eIrqNumber;
_8 = (long unsigned int) eIrqNumber.7_7;
_9 = _8 & 31;
_10 = _6 >> _9;
_11 = _10 & 1;
D.7735 = _11 != 0;
return D.7735;
}
IntCtrl_Ip_SetPendingPrivileged (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
eIrqNumber.6_3 = (unsigned short) eIrqNumber;
_4 = (long unsigned int) eIrqNumber.6_3;
_5 = _4 & 31;
_6 = 3758153728B;
_7 = (long unsigned int) eIrqNumber;
_8 = _7 >> 5;
_9 = 1 << _5;
_6->ISPR[_8] = _9;
return;
}
IntCtrl_Ip_ClearPendingPrivileged (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
eIrqNumber.5_3 = (unsigned short) eIrqNumber;
_4 = (long unsigned int) eIrqNumber.5_3;
_5 = _4 & 31;
_6 = 3758153728B;
_7 = (long unsigned int) eIrqNumber;
_8 = _7 >> 5;
_9 = 1 << _5;
_6->ICPR[_8] = _9;
return;
}
IntCtrl_Ip_GetPriorityPrivileged (IRQn_Type eIrqNumber)
{
uint8 shift;
uint8 priority;
uint8 D.7731;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
shift = 4;
# DEBUG BEGIN_STMT
_3 = 3758153728B;
_4 = (long unsigned int) eIrqNumber;
_5 = _3->IP[_4];
_6 = (int) _5;
_7 = (int) shift;
_8 = _6 >> _7;
priority = (uint8) _8;
# DEBUG BEGIN_STMT
D.7731 = priority;
return D.7731;
}
IntCtrl_Ip_SetPriorityPrivileged (IRQn_Type eIrqNumber, uint8 u8Priority)
{
uint8 shift;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
_3 = u8Priority <= 15;
DevAssert (_3);
# DEBUG BEGIN_STMT
shift = 4;
# DEBUG BEGIN_STMT
_4 = (long unsigned int) u8Priority;
_5 = (int) shift;
_6 = _4 << _5;
_7 = 3758153728B;
_8 = (long unsigned int) eIrqNumber;
_9 = (unsigned char) _6;
_7->IP[_8] = _9;
return;
}
IntCtrl_Ip_DisableIrqPrivileged (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
eIrqNumber.4_3 = (unsigned short) eIrqNumber;
_4 = (long unsigned int) eIrqNumber.4_3;
_5 = _4 & 31;
_6 = 3758153728B;
_7 = (long unsigned int) eIrqNumber;
_8 = _7 >> 5;
_9 = 1 << _5;
_6->ICER[_8] = _9;
return;
}
IntCtrl_Ip_EnableIrqPrivileged (IRQn_Type eIrqNumber)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = eIrqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = eIrqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
eIrqNumber.3_3 = (unsigned short) eIrqNumber;
_4 = (long unsigned int) eIrqNumber.3_3;
_5 = _4 & 31;
_6 = 3758153728B;
_7 = (long unsigned int) eIrqNumber;
_8 = _7 >> 5;
_9 = 1 << _5;
_6->ISER[_8] = _9;
return;
}
IntCtrl_Ip_InstallHandlerPrivileged (IRQn_Type eIrqNumber, void (*IntCtrl_Ip_IrqHandlerType) (void) pfNewHandler, void (*IntCtrl_Ip_IrqHandlerType) (void) * const pfOldHandler)
{
uint32 * pVectorRam;
sint32 dev_irqNumber;
<bb 2> :
# DEBUG BEGIN_STMT
dev_irqNumber = (sint32) eIrqNumber;
# DEBUG BEGIN_STMT
_1 = dev_irqNumber >= 0;
DevAssert (_1);
# DEBUG BEGIN_STMT
_2 = dev_irqNumber <= 207;
DevAssert (_2);
# DEBUG BEGIN_STMT
_3 = 3758153728B;
_4 = _3->VTOR;
__INT_SRAM_START.1_5 = (long unsigned int) &__INT_SRAM_START;
_6 = _4 >= __INT_SRAM_START.1_5;
DevAssert (_6);
# DEBUG BEGIN_STMT
_7 = 3758153728B;
_8 = _7->VTOR;
pVectorRam = (uint32 *) _8;
# DEBUG BEGIN_STMT
if (pfOldHandler != 0B)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_9 = (sizetype) eIrqNumber;
_10 = _9 + 16;
_11 = _10 * 4;
_12 = pVectorRam + _11;
_13 = *_12;
_14 = (void (*<T5b7>) (void)) _13;
*pfOldHandler = _14;
<bb 4> :
# DEBUG BEGIN_STMT
_15 = (sizetype) eIrqNumber;
_16 = _15 + 16;
_17 = _16 * 4;
_18 = pVectorRam + _17;
pfNewHandler.2_19 = (long unsigned int) pfNewHandler;
*_18 = pfNewHandler.2_19;
# DEBUG BEGIN_STMT
_20 = 3758153728B;
_20->ICIALLU = 0;
# DEBUG BEGIN_STMT
__asm__ __volatile__("dsb");
# DEBUG BEGIN_STMT
__asm__ __volatile__("isb");
return;
}
DevAssert (volatile boolean x)
{
<bb 2> :
# DEBUG BEGIN_STMT
x.0_1 = x;
if (x.0_1 != 0)
goto <bb 4>; [INV]
else
goto <bb 3>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
goto <bb 3>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
return;
}