HomePhabricator

[PowerPC] Fix issue with lowering byval parameters.

Authored by stefanp on Sep 22 2021, 9:44 AM.

Description

[PowerPC] Fix issue with lowering byval parameters.

Lowering of byval parameters with sizes that are not represented by a single
store require multiple stores to properly address the correct size of the
parameter.

Sizes that cannot be done with a single store are 3 bytes, 5 bytes, 6 bytes,
7 bytes. It is not correct to simply perform an 8 byte store and for these
elements because then the store would be larger than the element and alias
analysis would assume that this is undefined behaivour and return NoAlias
for them.

This patch adds the correct stores so that the size of the store is not larger
than the size of the element.

Reviewed By: nemanjai, #powerpc

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

Details

Committed
stefanpOct 6 2021, 11:19 AM
Reviewer
Restricted Project
Differential Revision
D108795: [PowerPC] Fix issue with lowering byval parameters.
Parents
rG4be7f4896098: [libc++] Implement P1391 for string_view
Branches
Unknown
Tags
Unknown