Re: Question about modifying gcc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Redirected to gcc-help.

dreese@xxxxxxxxxxxxxxxxxx wrote:
> Could you please direct me to someone who would be willing and able to answer a few questions about some of the internal workings of the gcc compiler. 
> 
> I am attempting to modify the compiler to instrument function calls and returns. The end result that i am trying to achieve is to send the address of every called function to a memory mapped file prior to the call and after the call send an immediate value to that same file. The target architecture is x86.
> 
> Here is an example in pseudo assembly of what i want to accomplish.
> 
> 
> regular                          modified
> instruction                      instruction
> instruction                      instruction
>                                     mov $function-name, (eax)
> call function-name          call function-name
>                                     move $0x1000, (eax)
> instruction                      instruction
> instruction                      instruction
> 
> where eax is the address of the memory mapped file.
> 
> 
> The purpose of this is to collect information about calls and returns in order to build call graphs and operating tendencies of software systems. 
> 
> So far i have had little success.
> 
> I have been trying to change the machine description as well as the target description macros and function in order to get the desired functionality. I have been able to insert instruction into the compiled code, via output_asm_insn(), but not in the correct place. 

Have a look at the docs for the gcc option `-finstrument-functions'.

Andrew.

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux