embedded dataflow tracking code?


I'm sorry if I chose wrong place for my question.
I would like to load debugger, attach to working process, and at some
breakpoint, instead of numerical values in the CPU registers, I would
like to see genesis of each value like "result of f(arg1, arg2,arg3)
called at point X" or "result of comparison of values X and Y" and so on.
Probably, compiler backend could embed some dataflow tracking code
between basic blocks and store information about all variables flow in
some separate data segment..
Are there any known attempts or projects or...?

- --
My PGP public key: http://yurichev.com/dennis.yurichev.asc