¿Existe una característica del compilador para inyectar una entrada de función personalizada y un código de salida?

Actualmente estoy codificando en Windows con VS2005 (pero no me importaría saber si hay opciones para otros compiladores y plataformas. Estoy más interesado en OSX como plataforma alternativa). Tengo un programa C (no C ++) y me gustaría para hacer lo siguiente ...

Dada una función, digamos ...

int MyFunction(int myparam)
{
   // Entry point.
   ...
   // Exit point.
   return 1;
}

Me gustaría poner un fragmento de código en el punto de entrada y en el punto de salida. PERO, prefiero no tener que modificar los cientos de funciones que ya están disponibles. ¿Hay alguna forma de definir la entrada de función y el código de salida que el compilador inyectará para todas mis funciones sin tener que modificarlas todas?

La mayoría de las soluciones que encontré o probé requerirán que edite cada función, lo cual es mucho trabajo. Me imagino que alguien más debe haber golpeado algo como esto y haberlo resuelto. No puedo ser único en esta petición que sospecho.

Respuestas a la pregunta(4)

Su respuesta a la pregunta