[all-commits] [llvm/llvm-project] c21866: [PowerPC][AIX] Implement by-val caller arguments i...

Sean Fertile via All-commits all-commits at lists.llvm.org
Wed Mar 18 07:58:17 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c21866476e144377102ed358455dc105b4977764
      https://github.com/llvm/llvm-project/commit/c21866476e144377102ed358455dc105b4977764
  Author: Chris Bowler <cebowleratibm at gmail.com>
  Date:   2020-03-18 (Wed, 18 Mar 2020)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    R llvm/test/CodeGen/PowerPC/aix-byval-param.ll
    A llvm/test/CodeGen/PowerPC/aix-cc-byval-limitation1.ll
    A llvm/test/CodeGen/PowerPC/aix-cc-byval-limitation2.ll
    A llvm/test/CodeGen/PowerPC/aix-cc-byval-limitation3.ll
    A llvm/test/CodeGen/PowerPC/aix-cc-byval.ll
    A llvm/test/CodeGen/PowerPC/aix64-cc-byval.ll

  Log Message:
  -----------
  [PowerPC][AIX] Implement by-val caller arguments in a single register.

This is the first of a series of patches that adds caller support for
by-value arguments. This patch add support for arguments that are passed in a
single GPR.

There are 3 limitation cases:
-The by-value argument is larger than a single register.
-There are no remaining GPRs even though the by-value argument would
otherwise fit in a single GPR.
-The by-value argument requires alignment greater than register width.

Future patches will be required to add support for these cases as well
as for the callee handling (in LowerFormalArguments_AIX) that
corresponds to this work.

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




More information about the All-commits mailing list