HomePhabricator

[AIX] Implement caller arguments passed in stack memory.

Authored by cebowleratibm on Feb 6 2020, 8:19 AM.

Description

[AIX] Implement caller arguments passed in stack memory.

This patch implements the caller side of placing function call arguments
in stack memory. This removes the current limitation where LLVM on AIX
will report fatal error when arguments can't be contained in registers.

There is a particular oddity that a float argument that passes in a
register and also in stack memory requires that the caller initialize
both. From what AIX "ABI" documentation I have it's not clear that this
needs to be done, however, it is necessary for compatibility with the
AIX XL compiler so I think it's best to implement it the same way.

Note a later patch will follow to address the callee side.

Differential Revision: https://reviews.llvm.org/D73209

Details

Committed
sfertileFeb 6 2020, 9:07 AM
Differential Revision
D73209: [AIX] Implement caller arguments passed in stack memory
Parents
rGb68b8be8e2b9: [mlir-tblgen] Stop leaking PredNodes
Branches
Unknown
Tags
Unknown