Files
OpenCellular/extra/stack_analyzer/example_annotation.yaml
Che-yu Wu af32f8918e extra/stack_analyzer: Eliminate annotated indirect calls.
Indirect calls can be eliminated by adding corresponding annotations.

BUG=chromium:648840
BRANCH=none
TEST=extra/stack_analyzer/stack_analyzer_unittest.py
     make BOARD=elm && extra/stack_analyzer/stack_analyzer.py \
         --objdump=arm-none-eabi-objdump \
         --addr2line=arm-none-eabi-addr2line \
         --export_taskinfo=./build/elm/util/export_taskinfo.so \
         --section=RW \
         --annotation=./extra/stack_analyzer/example_annotation.yaml \
         ./build/elm/RW/ec.RW.elf
     make BOARD=elm SECTION=RW \
         ANNOTATION=./extra/stack_analyzer/example_annotation.yaml \
         analyzestack

Change-Id: I18c317f9c6478b5b431ee04d882453791df27891
Signed-off-by: Che-yu Wu <cheyuw@google.com>
Reviewed-on: https://chromium-review.googlesource.com/631082
Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
2017-08-29 04:45:51 -07:00

24 lines
727 B
YAML

# 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