[llvm-commits] Bug in "call __chkstak" on 64 bit OS
NAKAMURA Takumi
geek4civic at gmail.com
Sun Feb 19 05:04:50 PST 2012
2012/2/19 Yatsina, Marina <marina.yatsina at intel.com>:
> The assemble instruction created for this is:
>
> call <imm32>
>
> Where imm32 is the address of __chkstk. On 64 bit OS the address can 64 bits
> and <imm32> is not big enough to contain the full address.
>
> The solution for 64 bits is to save the address to r11 and call r11:
>
> mov r11, <imm64>
>
> call r11
Why is it unconditional, not enhancing memory model modes?
For usual executable (PE+ w/o relocation), 2GB of .text would be enough.
And, ... why didn't you touch other callq?
...Takumi
More information about the llvm-commits
mailing list