summaryrefslogtreecommitdiff
path: root/extra/stack_analyzer/example_annotation.yaml
blob: 084fabc2d1d3293ff9e055ad064fa4b143d1ce74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# Size of extra stack frame needed by exception context switch.
exception_frame_size: 64

# Add some missing calls.
add:
  # console_task also calls command_display_accel_info and command_accel_init.
  console_task:
  - command_display_accel_info
  - command_accel_init

  # Function name can be followed by [source code path] to indicate where is it
  # declared (there may be several functions with the same name).
  motion_lid_calc[common/motion_lid.c]:
  - get_range[driver/accel_kionix.c]

  # The full signature (function name[path:line number]) can be used to
  # eliminate the indirect call (see README.md).
  tcpm_transmit[driver/tcpm/tcpm.h:142]:
  - anx74xx_tcpm_transmit

# Remove some call paths.
remove:
# Remove all callsites pointing to panic_assert_fail.
- panic_assert_fail
- panic
- [software_panic]
# Remove some invalid paths.
- [pd_send_request_msg, set_state, pd_power_supply_reset]
- [__tx_char, __tx_char]
- [set_state, set_state, set_state]

# Remove two invalid paths with the common prefix.
- [pd_execute_hard_reset, set_state, [charge_manager_update_dualrole, pd_dfp_exit_mode]]
# It is equivalent to the following two lines,
# - [pd_execute_hard_reset, set_state, charge_manager_update_dualrole]
# - [pd_execute_hard_reset, set_state, pd_dfp_exit_mode]

# Remove four invalid paths with the common segment.
- [[pd_send_request_msg, pd_request_vconn_swap], set_state, [usb_mux_set, pd_power_supply_reset]]
# It is equivalent to the following four lines,
# - [pd_send_request_msg, set_state, usb_mux_set]
# - [pd_send_request_msg, set_state, pd_power_supply_reset]
# - [pd_request_vconn_swap, set_state, usb_mux_set]
# - [pd_request_vconn_swap, set_state, pd_power_supply_reset]