• Abhinav Anil Sharma's avatar
    i#5675 record filter: Add cache_filter and type_filter. (#5742) · 11bf6784
    Abhinav Anil Sharma authored
    Adds cache_filter that allows filtering data and/or instr trace_entry_ts in a stored offline trace by passing the addresses through a cache. Uses the existing drcachesim cache simulator to implement this.
    
    Adds a did_last_access_hit() public API in a sub-class of cache_stats_t to get the status of the last processed access. This is used in cache_filter to determine whether the current trace_entry_t should be output or not.
    
    Adds type_filter that allows filtering trace entries by their type, including markers by their type.
    
    Adds the ability to stop filtering when a certain timestamp is reached. At this point, a new marker TRACE_MARKER_TYPE_FILTER_ENDPOINT is added to help tools figure out the warmup region in the trace. Adds a new get_last_timestamp() public API to memtrace_stream_t to enable this.
    
    Adds a test that verifies cache and type filter operation.
    
    Adds command line options to the record_filter_launcher executable to allow using the cache and type filters.
    
    Issue: #5675
    11bf6784