HomePhabricator

Under normal circumstances, when a frame pointer is not required, we reserve…

Authored by Evan Cheng <evan.cheng@apple.com> on Apr 30 2007, 5:52 PM.

Description

Under normal circumstances, when a frame pointer is not required, we reserve argument space for call sites in the function immediately on entry to the current function. This eliminates the need for add/sub sp brackets around call sites. However, this is not always a good idea. If the "call frame" is large and the target load / store instructions have small immediate field to encode sp offset, this can cause poor codegen. In the worst case, this can make it impossible to scavenge a register if the reserved spill slot is pushed too far apart from sp / fp.

llvm-svn: 36607

Event Timeline

Evan Cheng <evan.cheng@apple.com> committed rG77c545e6b856: Under normal circumstances, when a frame pointer is not required, we reserve… (authored by Evan Cheng <evan.cheng@apple.com>).Apr 30 2007, 5:52 PM