[llvm-commits] [llvm] r109035 - in /llvm/trunk/lib/Target/X86: X86ISelLowering.cpp X86InstrInfo.cpp

Anton Korobeynikov anton at korobeynikov.info
Wed Jul 21 14:16:02 PDT 2010

>>> xmm6-15 are marked as clobbered by call instructions on win64 even though they aren't.
>> They in fact are. Consider reading e.g.
>> http://msdn.microsoft.com/en-us/library/9z1stfyw.aspx
> Your link says they're callee-save, not call-clobbered.
Hrm. Sorry, I should drink more coffee. Where they are marked as call-clobbered?

> How so?  The previous code is obviously incorrect, and leads to code like the following being generated on win64 today;
> movaps rsi, (stack)
Right. It was broken in r105344. In any case - your change is
incorrect :) The problem just moves to prologue / epilogue expansion
You can find the full description of the problem at
Unfortunately, I didnt't find the time since that time to make a generic fix....

With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University

More information about the llvm-commits mailing list