Static analysis requires the full knowledge of the overall program structure. The structure of a program can be represented by a Control Flow Graph (CFG) where vertices are basic blocks (BB) and edges represent the control flow between the BB. To construct a full CFG, all the BB as well as all of their possible targets addresses must be found. In this paper, we present a method to resolve dynamic branches, that identifies the target addresses of BB created due to the switch-cases and calls on function pointers. We also implemented a slicing method to speed up the overall analysis which makes our approach applicable on large and realistic real-time programs.
@InProceedings{sun_et_al:OASIcs.WCET.2016.8, author = {Sun, Wei-Tsun and Cass\'{e}, Hugues}, title = {{Dynamic Branch Resolution Based on Combined Static Analyses}}, booktitle = {16th International Workshop on Worst-Case Execution Time Analysis (WCET 2016)}, pages = {8:1--8:10}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-95977-025-5}, ISSN = {2190-6807}, year = {2016}, volume = {55}, editor = {Schoeberl, Martin}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.WCET.2016.8}, URN = {urn:nbn:de:0030-drops-69014}, doi = {10.4230/OASIcs.WCET.2016.8}, annote = {Keywords: WCET, static analysis, dynamic branch, assembly, machine language} }
Feedback for Dagstuhl Publishing