Conditional branches connect the values of program variables with the execution paths and thus with the execution times, including the worst-case execution time (WCET). Flow analysis aims to discover this connection and represent it as loop bounds and other path constraints. Usually, a specific analysis of the dependencies between branch conditions and assignments to variables creates some representation of the feasible paths, for example as IPET execution-count constraints, from which a WCET bound is calculated. This paper explores another approach that uses a more direct connection between variable values and execution time. The execution time is modeled as a program variable. An analysis of the dependencies between variables, including the execution-time variable, gives a WCET bound that excludes many infeasible paths. Examples show that the approach often works, in principle. It remains to be seen if it is scalable to real programs.
@InProceedings{holsti:OASIcs.WCET.2008.1660, author = {Holsti, Niklas}, title = {{Computing time as a program variable: a way around infeasible paths}}, booktitle = {8th International Workshop on Worst-Case Execution Time Analysis (WCET'08)}, pages = {1--11}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-939897-10-1}, ISSN = {2190-6807}, year = {2008}, volume = {8}, editor = {Kirner, Raimund}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.WCET.2008.1660}, URN = {urn:nbn:de:0030-drops-16608}, doi = {10.4230/OASIcs.WCET.2008.1660}, annote = {Keywords: WCET, flow analysis, infeasible paths, dependency analysis} }
Feedback for Dagstuhl Publishing