Analysis of path exclusions at the assembly level
7th Int'l Workshop on Worst-Case Execution Time (WCET) Analysis Ingmar Stein, Florian Martin ingmar@absint.com
Analysis of path exclusions at the assembly level 7th Int'l - - PowerPoint PPT Presentation
Analysis of path exclusions at the assembly level 7th Int'l Workshop on Worst-Case Execution Time (WCET) Analysis Ingmar Stein, Florian Martin ingmar@absint.com The Goal A Jump conditions B C are equivalent 10 100 D E F 200 110
7th Int'l Workshop on Worst-Case Execution Time (WCET) Analysis Ingmar Stein, Florian Martin ingmar@absint.com
A B C D E F G 10 100 100 10
200 110
Jump conditions are equivalent
do_something_expensive(); /* ... */ if (flag) do_something_cheap(); else do_something_expensive();
machine code
library (Omega)
constraints which exclude the infeasible paths
add r5, r3, r4 cmpi cr0, 0, r5, 0 bc 0xd, cr0, 0x2c.t
A B C D A B C D
non-linear linear
bc cmpi 0xd 0x2c.t add r3 r4
transformation of scientific programs” by William Pugh and the Omega Project Team
numbers
small problems
bc cmpi 0xd 0x2c.t add r3 r4
> + r3 r4
FLOW EACH ProgramPoint1 / ProgramPoint2 IS MIN min MAX max
A B A.f A.t B.f B.t
without flow constraints with flow constraints Synthetic example 3054 cycles 2290 cycles WBBC 2964 cycles 2961 cycles FCGU 1247 cycles 1221 cycles
for other things besides flow constraints