[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-05-05 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA abandoned this revision. ZarkoCA added a comment. This work is included in https://reviews.llvm.org/D79035. Abandoning this revision. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-05-04 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 261837. ZarkoCA edited the summary of this revision. ZarkoCA added a comment. Rebased patch to include latest changes in trunk. Removed that it depended on https://reviews.llvm.org/D73290 in the summary, as that patch has been landed. Repository: rG

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-16 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 258110. ZarkoCA added a comment. Added a TODO to remove the error for `msvr4-struct-return` on AIX when we verify it works as expected. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-15 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked an inline comment as done. ZarkoCA added inline comments. Comment at: clang/test/CodeGen/ppc32-struct-return.c:53 + +// AIX-SVR4: fatal error: error in backend: -msvr4-struct-return not supported on AIX + jasonliu wrote: > jasonliu wrote: > >

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-14 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/test/CodeGen/ppc32-struct-return.c:53 + +// AIX-SVR4: fatal error: error in backend: -msvr4-struct-return not supported on AIX + sfertile wrote: > jasonliu wrote: > > If certain front end option is not

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-14 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/test/CodeGen/ppc32-struct-return.c:53 + +// AIX-SVR4: fatal error: error in backend: -msvr4-struct-return not supported on AIX + jasonliu wrote: > sfertile wrote: > > jasonliu wrote: > > > If certain front end

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-14 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added inline comments. Comment at: clang/test/CodeGen/ppc32-struct-return.c:53 + +// AIX-SVR4: fatal error: error in backend: -msvr4-struct-return not supported on AIX + jasonliu wrote: > If certain front end option is not supported on certain target,

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-13 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/test/CodeGen/ppc32-struct-return.c:53 + +// AIX-SVR4: fatal error: error in backend: -msvr4-struct-return not supported on AIX + If certain front end option is not supported on certain target, I think it makes

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-13 Thread Sean Fertile via Phabricator via cfe-commits
sfertile accepted this revision. sfertile added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 256398. ZarkoCA edited the summary of this revision. ZarkoCA added a comment. Addressed comments -added error for -msvr4-struct-return on AIX and modified appropriate test case -changed code structure as per comment -renamed test file Repository: rG LLVM

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added a comment. A couple minor comments, but patch is almost ready otherwise. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4249 uint64_t Size; // -msvr4-struct-return puts small aggregates in GPR3 and GPR4. Pedantic nit: Can we emit a fatal

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 256351. ZarkoCA marked 2 inline comments as done. ZarkoCA added a comment. Rebased on https://reviews.llvm.org/D73290 and this patch now depends on it. Removed PPCAIX32TargetCodegenClass from previous diff. Corrected behaviour

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 8 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 + +class PPCAIX32TargetCodeGenInfo : public TargetCodeGenInfo { +public: Xiangling_L wrote: > sfertile wrote: > > Xiangling_L wrote: > > >

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Xiangling Liao via Phabricator via cfe-commits
Xiangling_L added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 + +class PPCAIX32TargetCodeGenInfo : public TargetCodeGenInfo { +public: sfertile wrote: > Xiangling_L wrote: > > I have a question here. AIX32 falls into PPC32 target, so why

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-09 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 + +class PPCAIX32TargetCodeGenInfo : public TargetCodeGenInfo { +public: Xiangling_L wrote: > I have a question here. AIX32 falls into PPC32 target, so why we don't > inherit from

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-06 Thread Xiangling Liao via Phabricator via cfe-commits
Xiangling_L added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 + +class PPCAIX32TargetCodeGenInfo : public TargetCodeGenInfo { +public: I have a question here. AIX32 falls into PPC32 target, so why we don't inherit from

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-06 Thread Xiangling Liao via Phabricator via cfe-commits
Xiangling_L added inline comments. Comment at: clang/test/CodeGen/aix-vararg.c:15 + + // 32BIT: define void @aix_varg(i32 %a, ...) #0 { + // 32BIT-NEXT: entry: `#0`, `#1`[the last three lines] are redundant, could you clean them up? Repository: rG

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-06 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 255323. ZarkoCA added a comment. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360 Files: clang/lib/Basic/Targets/PPC.h clang/lib/CodeGen/TargetInfo.cpp

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-01 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 254214. ZarkoCA marked an inline comment as done. ZarkoCA added a comment. Set isSoftFloat to return false for AIX. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360 Files: clang/lib/Basic/Targets/PPC.h

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-01 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 4 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:10019 + return SetCGInfo( + new PPCAIX32TargetCodeGenInfo(Types, CodeGenOpts.FloatABI == "soft")); return SetCGInfo(

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-04-01 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:10019 + return SetCGInfo( + new PPCAIX32TargetCodeGenInfo(Types, CodeGenOpts.FloatABI == "soft")); return SetCGInfo( ZarkoCA wrote: > jasonliu wrote: > > Does AIX

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-30 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 253776. ZarkoCA added a comment. Fixed test cases to use builtins again, set no soft float abi for AIX. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360 Files:

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-30 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 4 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:10019 + return SetCGInfo( + new PPCAIX32TargetCodeGenInfo(Types, CodeGenOpts.FloatABI == "soft")); return SetCGInfo(

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-30 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:10019 + return SetCGInfo( + new PPCAIX32TargetCodeGenInfo(Types, CodeGenOpts.FloatABI == "soft")); return SetCGInfo( Does AIX have soft Float? If not, do we want to

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-27 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 2 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 -CharUnits PPC32_SVR4_ABIInfo::getParamTypeAlignment(QualType Ty) const { +CharUnits PowerPC32ABIInfo::getParamTypeAlignment(QualType Ty) const { //

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-27 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 253127. ZarkoCA added a comment. Created PPCAIX32TargetCodeGenInfo class so that initDwarfEHRegSizeTable now returns true on AIX and added a test. Fixed formatting. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-26 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 -CharUnits PPC32_SVR4_ABIInfo::getParamTypeAlignment(QualType Ty) const { +CharUnits PowerPC32ABIInfo::getParamTypeAlignment(QualType Ty) const { // Complex types are passed just like their

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-24 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 -CharUnits PPC32_SVR4_ABIInfo::getParamTypeAlignment(QualType Ty) const { +CharUnits PowerPC32ABIInfo::getParamTypeAlignment(QualType Ty) const { // Complex types are passed just like their

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-24 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4205 -CharUnits PPC32_SVR4_ABIInfo::getParamTypeAlignment(QualType Ty) const { +CharUnits PowerPC32ABIInfo::getParamTypeAlignment(QualType Ty) const { // Complex types are passed just like their

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-24 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 6 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4175 namespace { /// PPC32_SVR4_ABIInfo - The 32-bit PowerPC ELF (SVR4) ABI information. class PPC32_SVR4_ABIInfo : public DefaultABIInfo {

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-24 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 252325. ZarkoCA marked 2 inline comments as done. ZarkoCA added a comment. Renamed PPC32_SVR4ABIInfo class to PPC32ABIInfo. Fixed test case to use builtins. Changed comment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-23 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4175 namespace { /// PPC32_SVR4_ABIInfo - The 32-bit PowerPC ELF (SVR4) ABI information. class PPC32_SVR4_ABIInfo : public DefaultABIInfo { ZarkoCA wrote: > sfertile wrote: > > This

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-19 Thread Hubert Tong via Phabricator via cfe-commits
hubert.reinterpretcast added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4176 +/// PPC32_SVR4_ABIInfo - The 32-bit PowerPC ABI information, used by PowerPC ELF +/// (SVR4), Darwin and AIX. class PPC32_SVR4_ABIInfo : public DefaultABIInfo { I

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-19 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA marked 8 inline comments as done. ZarkoCA added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4175 namespace { /// PPC32_SVR4_ABIInfo - The 32-bit PowerPC ELF (SVR4) ABI information. class PPC32_SVR4_ABIInfo : public DefaultABIInfo {

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-19 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA updated this revision to Diff 251407. ZarkoCA marked 3 inline comments as done. ZarkoCA added a comment. Changed comments per suggestions. Added `va_copy` in test case. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76360/new/ https://reviews.llvm.org/D76360 Files:

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-18 Thread Jason Liu via Phabricator via cfe-commits
jasonliu added inline comments. Comment at: clang/test/CodeGen/aix-vararg.c:10 + va_arg(arg, int); + va_end(arg); +} As part of a "va_..." family, do we also want to test va_copy? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-18 Thread Hubert Tong via Phabricator via cfe-commits
hubert.reinterpretcast added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:4232 QualType Ty) const { - if (getTarget().getTriple().isOSDarwin()) { + // TODO: Add AIX ABI Info. Currently we are relying on

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-18 Thread Sean Fertile via Phabricator via cfe-commits
sfertile added inline comments. Comment at: clang/lib/Basic/Targets/PPC.h:373 +// This is the ELF definition, and is overridden by the Darwin and AIX +// sub-target. return TargetInfo::PowerABIBuiltinVaList; Minor nit: `target` --> `targets`.

[PATCH] D76360: [PPC][AIX] Emit correct Vaarg for 32BIT-AIX in clang

2020-03-18 Thread Zarko Todorovski via Phabricator via cfe-commits
ZarkoCA created this revision. Herald added subscribers: cfe-commits, kbarton, nemanjai. Herald added a project: clang. ZarkoCA added reviewers: jasonliu, sfertile, cebowleratibm. Herald added a subscriber: wuzish. This patch contains only the FE changes previously found in