Re: [RFC PATCH v1] perf tests: Test annotate with data type profiling and rust

From: Dmitry Dolgov

Date: Sun Feb 01 2026 - 05:34:10 EST


> On Fri, Jan 30, 2026 at 09:44:47AM +0100, Dmitry Dolgov wrote:
> > I'm not managing to reproduce your results, can you please elaborate
> > some more?
>
> That's most unexpected for me, the test output I see looks like this:
>
> : 54 for _ in 1..count {
> 0.00 : 5423b8: mov %ecx,0x7c(%rsp)
> 0.00 : 5423bc: mov %eax,0x80(%rsp)
> 0.00 : 5423c3: lea 0x7c(%rsp),%rdi
> 12.28 : 5423c8: call 541f00 <core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next>
> 0.00 : 5423cd: mov %eax,0x20(%rsp)
> 10.21 : 5423d1: jmp 5423d3 <test_rs+0xb3>
> 0.00 : 5423d3: mov 0x20(%rsp),%eax
> 0.00 : 5423d7: mov %eax,%eax
> 0.00 : 5423d9: test $0x1,%rax
> 0.29 : 5423df: je 5423f6 <test_rs+0xd6>
> : 65 b.data1 += 1;
> 13.69 : 5423e1: mov 0x48(%rsp),%rax # data-type: struct Buf +0x18 (data1)
> 0.00 : 5423e6: add $0x1,%rax
> 0.00 : 5423ea: mov %rax,0x18(%rsp) # data-type: u64 +0
> 0.00 : 5423ef: setb %al
> 11.17 : 5423f2: jb 54243a <test_rs+0x11a>
> 0.00 : 5423f4: jmp 542426 <test_rs+0x106>
> 0.00 : 5423f6: lea 0x30(%rsp),%rdi
> : 73 }
>
> Where '# data-type: struct Buf' is as far as I understand a manifestation of
> data type profiling succeeding. But my environment has slightly different
> version of rust -- I need to figure out what's going on here, thanks.

I've being testing this in the same way, but without any rust code --
just on a simple datasym workload. Surprisingly, it seems that
'data-type: buf' marks are disappearing even in this case starting from:

c31040085914f1188720073baa43d1483693c0a3 (perf dwarf-regs: Clean up x86
dwarf_regnum code)

I'm not sure yet why this is happening, but don't see anything in the
commit mentioning that -- since there are no code-with-type tests yet,
maybe an unexpected side effect?