aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/ModuloSchedule.cpp
diff options
context:
space:
mode:
authormconst <mconst@gmail.com>2025-01-24 20:03:57 -0800
committerGitHub <noreply@github.com>2025-01-25 12:03:57 +0800
commit1f26ac10ca1bef40a80be8f81a6f109713bc586f (patch)
tree3e7195f104b4ce30131146ea4ecba4cc800fa547 /llvm/lib/CodeGen/ModuloSchedule.cpp
parent8a6b44bf4cfe5df3db687a6b9519e99dbce8cf54 (diff)
downloadllvm-1f26ac10ca1bef40a80be8f81a6f109713bc586f.zip
llvm-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.gz
llvm-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.bz2
[X86] Better handling of impossibly large stack frames (#124217)
If you try to create a stack frame of 4 GiB or larger with a 32-bit stack pointer, we currently emit invalid instructions like `mov eax, 5000000000` (unless you specify `-fstack-clash-protection`, in which case we emit a trap instead). The trap seems nicer, so let's do that in all cases. This avoids emitting invalid instructions, and also fixes the "can't have 32-bit 16GB stack frame" assertion in `X86FrameLowering::emitSPUpdate()` (which used to be triggerable by user code, but is now correct). This was originally part of #124041. @phoebewang
Diffstat (limited to 'llvm/lib/CodeGen/ModuloSchedule.cpp')
0 files changed, 0 insertions, 0 deletions