[PATCH] D93659: [AIX][XCOFF] emit vector info of traceback table.

Jason Liu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 9 12:00:57 PDT 2021


jasonliu added inline comments.


================
Comment at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:860
   /// function. This checks that no machine operands exist for the register or
-  /// any of its aliases. The register is also considered used when it is set
-  /// in the UsedPhysRegMask.
-  bool isPhysRegUsed(MCRegister PhysReg) const;
+  /// any of its aliases. If SkipTestUsedPhysRegMask is false, the register is
+  /// considered used when it is set in the UsedPhysRegMask.
----------------



================
Comment at: llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h:135
+  /// ParamTypes - Store all the paramters type.
+  SmallVector<ParamType, 32> ParamtersType;
 
----------------
DiggerLin wrote:
> DiggerLin wrote:
> > jasonliu wrote:
> > > Does this store the parameter types when the parameter is on stack? Right now, it doesn't look like so. And this sounds like we are trying to store all paramters including the one on stack.
> > > Could we add a test case for testing parameters on stack?
> > we do not store the  parameter types when the parameter is on stack.
> in the llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable.ll , there are some parameter are stored on stack.
Consider this test case: 
```
int foo(int a, int b, int c, float d, int e, int f, int g, int h, int i,  float j, int k) {
  return k;
}
```
The print out I get is: 
```
.vbyte  4, 0x10400000                   # Parameter type = i, i, i, f, i, i, i, i, f
```
However, I'm expecting this if it supports parameter saved on stack correctly:
 # Parameter type = i, i, i, f, i, i, i, i, **i, ** f, **i**

Notice the two `i` are missing around the last `f`.


================
Comment at: llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-vectorinfo.ll:104
+; COMMON-NEXT:  .vbyte  4, 0xb0000000                   # Vector Parameter type = vi, vf, vc
+; COMMON-NEXT:  .vbyte  2, 0
+
----------------
Could we add a comment here for this padding as well? 


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D93659/new/

https://reviews.llvm.org/D93659



More information about the llvm-commits mailing list