[LLVMdev] Win64 bugs

Peter Shugalev peter at shugalev.com
Fri Jul 31 13:00:39 PDT 2009

Stefanus Du Toit wrote:
> On 30-Jul-09, at 8:54 PM, Eli Friedman wrote:
>> On Thu, Jul 30, 2009 at 5:32 PM, Peter Shugalev<peter at shugalev.com>  
>> wrote:
>>> Though the most problematic stuff is the lack of 'shadow zone'  
>>> support
>>> in Win64 ABI. Or maybe I haven't figured out how to turn this on. In
>>> Win64 any function can treat 32 bytes of stack (RSP+08h..RSP+28h just
>>> after the call instruction) as scratch data. VC++ compiler stores
>>> arguments passed in registers there. In debug builds this doesn't get
>>> optimized away.
>> Wow, that's really strange... I'm pretty sure that simply isn't  
>> implemented.
> Anton K has a patch for this that we have been using successfully  
> internally but he is still working out issues with regards to certain  
> parameter types, in particular MMX/SSE params, that I believe he was  
> going to fix before committing it. I'm sure he'll weigh into this  
> discussion.

Working patch even if incomplete would be great. I'll be out of
discussion for a week or so but since this is a "stopper" bug for me I'd
appreciate posting work in progress here.

More information about the llvm-dev mailing list