This is an archive of the discontinued LLVM Phabricator instance.

[ARM][CodeGen] Fixing stack alignment of HFA arguments on AArch32 PCS
AbandonedPublic

Authored by pratlucas on Mar 10 2020, 4:00 AM.

Details

Summary

Properly complying with AArch32 PCS on the handling of over-aligned HFA
arguments when those are placed on the stack. AAPCS specifies that the
stacked argument address should be adjusted upwards until correctly
aligned for the argument before copying it to memory.

This patch fixes the alignment of these arguments by makign use of the
stack alignment propagated through the alignstack IR argument
attribute during the calling convention lowering for ARM targets.

Diff Detail