HomePhabricator

[Win64] Ensure all stack frames are 8 byte aligned

Authored by rnk on Jan 25 2021, 10:26 AM.

Description

[Win64] Ensure all stack frames are 8 byte aligned

The unwind info format requires that all adjustments are 8 byte aligned,
and the bottom three bits are masked out. Most Win64 calling conventions
have 32 bytes of shadow stack space for spilling parameters, and I
believe that constructing these fixed stack objects had the side effect
of ensuring an alignment of 8. However, the Intel regcall convention
does not have this shadow space, so when using that convention, it was
possible to make a 4 byte stack frame, which was impossible to describe
with unwind info.

Fixes pr48867

Details

Committed
rnkJan 25 2021, 10:39 AM
Parents
rGc8fc5c0385db: [mlir][Affine] Add support for multi-store producer fusion
Branches
Unknown
Tags
Unknown