[llvm-dev] llc generating code that writes below the stack pointer on darwin/x86-64
Jonas Maebe via llvm-dev
llvm-dev at lists.llvm.org
Sun Nov 13 12:20:31 PST 2016
On 13/11/16 18:48, Stephen Checkoway wrote:
>
>> On Nov 13, 2016, at 11:12, Jonas Maebe via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>>
>> This code use a negative stack offset, which is forbidden on x86-64 (there's no red zone). This happens with llc from llvm 3.7, 3.8 and 3.9.
>
> Doesn't Darwin use the System V ABI [1]? As I understand it, there's a 128-byte red zone on x86-64.
You're right, sorry. I got a crash in this routine, saw the negative
stack offset, quickly searched to check whether there was a red zone,
and from a summary of a found page assumed there wasn't, but the quoted
section was about the Win64 ABI.
I'll have to look further to determine what caused the actual crash.
Thanks,
Jonas
More information about the llvm-dev
mailing list