| ##=== TEST.poolalloc.report - Report description for poolalloc -*- perl -*-===## |
| # |
| # This file defines a report to be generated for the pool allocator tests. |
| # |
| ##===----------------------------------------------------------------------===## |
| |
| # Sort by program name |
| $SortCol = 0; |
| |
| sub Ratio { |
| my ($Cols, $Col) = @_; |
| if ($Cols->[$Col-1] ne "*" and $Cols->[$Col-2] ne "*" and |
| $Cols->[$Col-1] != "0") { |
| return sprintf "%3.2f%%", ((100.0*$Cols->[$Col-2])/$Cols->[$Col-1] - 100.0); |
| } else { |
| return "n/a"; |
| } |
| } |
| |
| # These are the columns for the report. The first entry is the header for the |
| # column, the second is the regex to use to match the value. Empty list create |
| # seperators, and closures may be put in for custom processing. |
| ( |
| # Name |
| ["Name:" , '\'([^\']+)\' Program'], |
| [], |
| # Times |
| ["Normal<br>ExeTime" , 'CBE-RUN-TIME-NORMAL: real[\t ]+0m([0-9.]+)'], |
| ["PoolAlloc<br>ExeTime", 'CBE-RUN-TIME-POOLALLOC: real[\t ]+0m([0-9.]+)'], |
| ["% Speedup", \&Ratio], # Normal / PA |
| ["NumPools", '([0-9]+).*Number of pools allocated'], |
| ["NumCloned", '([0-9]+).*Number of functions cloned'], |
| ["NumArgs", '([0-9]+).*Number of function arguments added'], |
| ["NumPRElide", '([0-9]+).*Number of poolfree.s elided'], |
| [] |
| ); |
| |