On Thu, Oct 4, 2012 at 1:52 PM, Kyle Auble randomidman48@yahoo.com wrote:
I'm just wondering is assembly definitely needed? This is just based on some googling and skimming through StackOverflow, but it sounds like you can still use va_list on amd64. It just takes some tweaking: http://stackoverflow.com/questions/8047362
Thanks for the reply. Maarten also replied via chat.
For the first function, I might be able to get rid of assembly. It's complicated by the fact that Visual C uses a different varargs implementation. I did try using __ms_va_list to get gcc to behave like Visual C here, but failed. Maarten suggested I try __ms_va_list again, if that works, I can collapse the first two functions together into a single C function, which would be great.
He also pointed out that I might be abusing DWORD for pointers.
I'll have a look at his suggestions and send him a new draft for private review. - Dan