Adds a memref count prefix to every line output by the view tool to make it easier to use the -skip_refs and -sim_refs options, including for visualizing errors reported by the trace_invariants tool.
Tested manually. Here is an example showing a thread change and a multi-line disassembly with the same prefix for both lines:
$ clients/bin64/drcachesim -indir drmemtrace.threadsig.*.dir -simulator_type view -sim_refs 25 -skip_refs 3016012
3016013: T327766 0x00007fe61d582a4a b8 38 00 00 00 mov $0x00000038, %eax
3016014: T327766 0x00007fe61d582a4f 0f 05 syscall
------------------------------------------------------------
3016015: T327767 <marker: timestamp 13280020226777973>
3016016: T327767 <marker: tid 327767 on core 8>
3016017: T327767 0x00007fe61d582a51 48 85 c0 test %rax, %rax
3016018: T327767 0x00007fe61d582a54 7c 13 jl $0x00007fe61d582a69
3016019: T327767 0x00007fe61d582a56 74 01 jz $0x00007fe61d582a59
3016020: T327767 0x00007fe61d582a59 31 ed xor %ebp, %ebp
3016021: T327767 0x00007fe61d582a5b 58 pop %rax
3016022: T327767 read 8 byte(s) @ 0x7fe61d483ef0
3016023: T327767 0x00007fe61d582a5c 5f pop %rdi
3016024: T327767 read 8 byte(s) @ 0x7fe61d483ef8
3016025: T327767 0x00007fe61d582a5d ff d0 call %rax
3016026: T327767 write 8 byte(s) @ 0x7fe61d483ef8
3016027: T327767 0x00007fe61d9bddd0 41 54 push %r12
3016028: T327767 write 8 byte(s) @ 0x7fe61d483ef0
3016029: T327767 0x00007fe61d9bddd2 48 8d 97 b8 06 00 00 lea 0x000006b8(%rdi), %rdx
3016030: T327767 0x00007fe61d9bddd9 55 push %rbp
3016031: T327767 write 8 byte(s) @ 0x7fe61d483ee8
3016032: T327767 0x00007fe61d9bddda 53 push %rbx
3016033: T327767 write 8 byte(s) @ 0x7fe61d483ee0
3016034: T327767 0x00007fe61d9bdddb 48 89 fb mov %rdi, %rbx
3016035: T327767 0x00007fe61d9bddde 48 83 c4 80 add $0x80, %rsp
3016036: T327767 0x00007fe61d9bdde2 64 48 8b 04 25 28 00 mov %fs:0x28, %rax
3016036: T327767 00 00
3016037: T327767 read 8 byte(s) @ 0x7fe61d484668
Issue: #5076 (closed)