Adds tracking of the dynamic (pre-filtered) instruction count for each thread. Stores the count in a marker at thread exit (storing prior to each miss entry might be useful but in experiments it adds too much overhead to include without a clear mandate and possibly under an off-by-default runtime option).
Adds a check to the filter tests confirming that the instruction count marker is present at thread exit for filtered traces. This is done by invoked test_mode for these traces. To simplify testing for online and offline, the trace type marker is added to online traces.
Adds a new tool.drcachesim.filter-asm test which ensures the instr count is the precise count expected for that fully-deterministic tiny static binary.
A larger-than-static-asm application was manually tested, confirming the need for the rep string expansion special case in the code to limit to 1 instruction for that block.
Fixes #4857 (closed)