Some plugins (most of Valgrind tools, gprof and gcov, for example)
rely
on the original binary to display info in the view, such as line
numbers
and function names. This means we would have to whether save a
snapshot
of the profiled binary along with profile results or get all the info
we
need from the binary and save it.

That's a valid concern.

gprof and gcov plugin just verify if the binary file is newer than
profiling file, and emit a warning in this case.

According to my users, it's enough.
(Users will save themself the binary file if needed).