IPA function summary for EcuM_CheckWakeup/3 inlinable
  global time:     13.000000
  self size:       5
  global size:     5
  min size:       4
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    EcuM_ValidateWakeupEvent/2 function not considered for inlining
      loop depth: 0 freq:1.00 size: 2 time: 11callee size: 1 stack: 0

IPA function summary for EcuM_ValidateWakeupEvent/2 inlinable
  global time:     2.000000
  self size:       3
  global size:     3
  min size:       0
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:

IPA function summary for EcuM_SetWakeupEvent/1 inlinable
  global time:     3.000000
  self size:       4
  global size:     4
  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)
  calls:


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

Deciding on inlining of small functions.  Starting with size 0.
Enqueueing calls in EcuM_CheckWakeup/3.
Enqueueing calls in EcuM_ValidateWakeupEvent/2.
Enqueueing calls in EcuM_SetWakeupEvent/1.

Considering EcuM_ValidateWakeupEvent/2 with 3 size
 to be inlined into EcuM_CheckWakeup/3 in unknown:0
 Estimated badness is -inf, frequency 1.00.

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:

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

Why inlining failed?
IPA function summary for EcuM_CheckWakeup/3 inlinable
  global time:     2.000000
  self size:       5
  global size:     3
  min size:       4
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    EcuM_ValidateWakeupEvent/4 inlined
      loop depth: 0 freq:1.00 size: 2 time: 11callee size: 1 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0

IPA function summary for EcuM_ValidateWakeupEvent/2 inlinable
  global time:     2.000000
  self size:       3
  global size:     3
  min size:       0
  self stack:      0
  global stack:    0
  estimated growth:-2
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:

IPA function summary for EcuM_SetWakeupEvent/1 inlinable
  global time:     3.000000
  self size:       4
  global size:     4
  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)
  calls:

Symbol table:

EcuM_ValidateWakeupEvent/4 (EcuM_ValidateWakeupEvent) @05e512a0
  Type: function definition analyzed
  Visibility: public
  next sharing asm name: 2
  References: 
  Referring: 
  Function EcuM_ValidateWakeupEvent/4 is inline copy in EcuM_CheckWakeup/3
  Clone of EcuM_ValidateWakeupEvent/2
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local icf_merged optimize_size
  Called by: EcuM_CheckWakeup/3 (inlined) (1073741824 (estimated locally),1.00 per call) 
  Calls: 
EcuM_CheckWakeup/3 (EcuM_CheckWakeup) @05e49700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body icf_merged optimize_size
  Called by: 
  Calls: EcuM_ValidateWakeupEvent/4 (inlined) (1073741824 (estimated locally),1.00 per call) 
EcuM_ValidateWakeupEvent/2 (EcuM_ValidateWakeupEvent) @05e49460
  Type: function definition analyzed
  Visibility: externally_visible public
  previous sharing asm name: 4
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body icf_merged optimize_size
  Called by: 
  Calls: 
EcuM_SetWakeupEvent/1 (EcuM_SetWakeupEvent) @05e491c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: EcuMLastWakeupEvent/0 (write)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
EcuMLastWakeupEvent/0 (EcuMLastWakeupEvent) @05e47480
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: EcuM_SetWakeupEvent/1 (write)
  Availability: available
  Varpool flags:

;; Function EcuM_SetWakeupEvent (EcuM_SetWakeupEvent, funcdef_no=0, decl_uid=5411, cgraph_uid=1, symbol_order=1)

EcuM_SetWakeupEvent (EcuM_WakeupSourceType events)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  EcuMLastWakeupEvent = events_2(D);
  return;

}



;; Function EcuM_ValidateWakeupEvent (EcuM_ValidateWakeupEvent, funcdef_no=1, decl_uid=5413, cgraph_uid=2, symbol_order=2)


Saving body of EcuM_ValidateWakeupEvent for later reuse
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1

Symbols to be put in SSA form
{ D.5440 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 4
Number of blocks to update: 3 ( 75%)


EcuM_ValidateWakeupEvent (EcuM_WakeupSourceType events)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}



;; Function EcuM_CheckWakeup (EcuM_CheckWakeup, funcdef_no=4, decl_uid=5415, cgraph_uid=3, symbol_order=3)

Merging blocks 2 and 4
Removing basic block 5
Merging blocks 2 and 3
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2
;; 2 succs { 1 }
EcuM_CheckWakeup (EcuM_WakeupSourceType wakeupSource)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG events => wakeupSource_1(D)
  # DEBUG BEGIN_STMT
  # DEBUG events => NULL
  return;

}


