IPA function summary for NVIC_SetPriority/3 inlinable
  global time:     4.000000
  self size:       5
  global size:     5
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:1.000000, time:1.000000,  nonconst if:(op1 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_DisableIRQ/2 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:3.000000, time:3.000000,  nonconst if:(op0 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_EnableIRQ/1 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:3.000000, time:3.000000,  nonconst if:(op0 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_SetPriorityGrouping/0 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:4.000000, time:4.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:


Flattening functions:
Overall time estimate: 22.000000 weighted by profile: 0.000000

Deciding on inlining of small functions.  Starting with size 0.
Enqueueing calls in NVIC_SetPriority/3.
Enqueueing calls in NVIC_DisableIRQ/2.
Enqueueing calls in NVIC_EnableIRQ/1.
Enqueueing calls in NVIC_SetPriorityGrouping/0.

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:

Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 22.000000 weighted by profile: 0.000000

Why inlining failed?
IPA function summary for NVIC_SetPriority/3 inlinable
  global time:     4.000000
  self size:       5
  global size:     5
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:1.000000, time:1.000000,  nonconst if:(op1 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_DisableIRQ/2 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:3.000000, time:3.000000,  nonconst if:(op0 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_EnableIRQ/1 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:1.000000, time:1.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:3.000000, time:3.000000,  nonconst if:(op0 changed)
  array index:(op0 changed)
  calls:

IPA function summary for NVIC_SetPriorityGrouping/0 inlinable
  global time:     6.000000
  self size:       7
  global size:     7
  min size:       0
  self stack:      0
  global stack:    0
    size:4.000000, time:4.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:

Symbol table:

NVIC_SetPriority/3 (NVIC_SetPriority) @06ccfee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
NVIC_DisableIRQ/2 (NVIC_DisableIRQ) @06ccfc40
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
NVIC_EnableIRQ/1 (NVIC_EnableIRQ) @06ccf9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
NVIC_SetPriorityGrouping/0 (NVIC_SetPriorityGrouping) @06ccf700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 

;; Function NVIC_SetPriorityGrouping (NVIC_SetPriorityGrouping, funcdef_no=0, decl_uid=4046, cgraph_uid=1, symbol_order=0)

NVIC_SetPriorityGrouping (uint32 PriorityGroup)
{
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 ={v} MEM[(struct S32_SCB_Type *)3758153728B].AIRCR;
  _2 = _1 & 4294965503;
  _3 = _2 | PriorityGroup_5(D);
  MEM[(struct S32_SCB_Type *)3758153728B].AIRCR ={v} _3;
  return;

}



;; Function NVIC_EnableIRQ (NVIC_EnableIRQ, funcdef_no=1, decl_uid=4048, cgraph_uid=2, symbol_order=1)

NVIC_EnableIRQ (uint8 IRQn)
{
  long unsigned int _1;
  unsigned char _2;
  unsigned char _3;
  long unsigned int _4;
  long unsigned int _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _2 = IRQn_6(D) & 31;
  _1 = (long unsigned int) _2;
  _3 = IRQn_6(D) >> 5;
  _4 = (long unsigned int) _3;
  _5 = 1 << _1;
  MEM[(struct S32_NVIC_Type *)3758153728B].ISER[_4] ={v} _5;
  return;

}



;; Function NVIC_DisableIRQ (NVIC_DisableIRQ, funcdef_no=2, decl_uid=4050, cgraph_uid=3, symbol_order=2)

NVIC_DisableIRQ (uint8 IRQn)
{
  long unsigned int _1;
  unsigned char _2;
  unsigned char _3;
  long unsigned int _4;
  long unsigned int _5;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _2 = IRQn_6(D) & 31;
  _1 = (long unsigned int) _2;
  _3 = IRQn_6(D) >> 5;
  _4 = (long unsigned int) _3;
  _5 = 1 << _1;
  MEM[(struct S32_NVIC_Type *)3758153728B].ICER[_4] ={v} _5;
  return;

}



;; Function NVIC_SetPriority (NVIC_SetPriority, funcdef_no=3, decl_uid=4053, cgraph_uid=4, symbol_order=3)

NVIC_SetPriority (uint8 IRQn, uint8 priority)
{
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  unsigned char _4;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG shift => 4
  # DEBUG BEGIN_STMT
  _1 = (long unsigned int) priority_5(D);
  _2 = _1 << 4;
  _3 = (long unsigned int) IRQn_6(D);
  _4 = (unsigned char) _2;
  MEM[(struct S32_NVIC_Type *)3758153728B].IP[_3] ={v} _4;
  return;

}


