Hi, all

  I am wondering if there is any possibility that gcc can
generate annotations like control flow, or register usage
into the executable. The idea comes from the paper below,

  Techniques to improve dynamic binary optimization
  http://www-users.cs.umn.edu/~adas/adas-thesis-embed.pdf

The paper lists annotations that may benefit a binary translator
on chapter 5. What a binary translator does is like QEMU.

  Take basic block (bb) register usage as an example. It's
good to a binary translator to know that a basic block
register usage information. Say, bb A whose binary address
starts from 0x100 to 0x120 does NOT use R1, then the binary
translator can use R1 for free.

  I know there is a data structure for basic block. But in
order to let a binary translator use the basic block register
usage information, each basic block must be associated with
its corresponding binary (virtual) address.

  If it is possible to generating such information, which
part of gcc should I look into first?

  Thanks!

Regards,
chenwj

-- 
Wei-Ren Chen (陳韋任)
Computer Systems Lab, Institute of Information Science,
Academia Sinica, Taiwan (R.O.C.)
Tel:886-2-2788-3799 #1667

Reply via email to