Add support for the Win32 hook prologue (try 3)

Ross Ridge rridge@csclub.uwaterloo.ca
Fri Sep 11 15:05:00 GMT 2009


Stefan Dösinger writes:
>On a partly related topic, I think the Win64 ABI requires that the first
>function is two bytes long, and there at least 6 bytes of slack before
>the function. Does gcc implement that?

As far as I can tell the Win64 ABI doesn't have either of these
requirements.  Microsoft's compiler certainly doesn't guarantee that
functions begin with two byte instructions, and the "x64 Software
Conventions" document gives examples of prologues with larger initial
instructions:

	http://msdn.microsoft.com/en-us/library/tawsa7cb(VS.80).aspx

Mind you, last I checked, GCC didn't actually follow the ABI requirements
for prologues and epilogues given in the link above, but that only breaks
ABI unwinding.

					Ross Ridge



More information about the Gcc mailing list