Page MenuHomePhabricator

quinnp (Quinn Pham)
User

Projects

User does not belong to any projects.

User Details

User Since
May 13 2021, 11:10 AM (97 w, 22 h)

Recent Activity

Aug 16 2022

quinnp added a comment to D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux.

Hi @MaskRay, could you please take a look at @nemanjai's suggestion?

...
So I would prefer that we handle this in the CMake files if @MaskRay doesn't object.

Aug 16 2022, 11:07 AM · Restricted Project, Restricted Project

Jul 27 2022

quinnp committed rGb6cc5ddc9478: [libLTO] Set data-sections by default in libLTO. (authored by quinnp).
[libLTO] Set data-sections by default in libLTO.
Jul 27 2022, 7:40 AM · Restricted Project, Restricted Project, Restricted Project
quinnp closed D129401: [libLTO] Set data-sections by default in libLTO..
Jul 27 2022, 7:39 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Adding lit config to mark tests as unsupported for non PPC targets.

Jul 27 2022, 7:37 AM · Restricted Project, Restricted Project, Restricted Project
quinnp reopened D129401: [libLTO] Set data-sections by default in libLTO..
Jul 27 2022, 7:36 AM · Restricted Project, Restricted Project, Restricted Project
quinnp added a reverting change for rGf565444b486d: [libLTO] Set data-sections by default in libLTO.: rG70ec8cd024f3: Revert "[libLTO] Set data-sections by default in libLTO.".
Jul 27 2022, 6:47 AM · Restricted Project, Restricted Project, Restricted Project
quinnp committed rG70ec8cd024f3: Revert "[libLTO] Set data-sections by default in libLTO." (authored by quinnp).
Revert "[libLTO] Set data-sections by default in libLTO."
Jul 27 2022, 6:47 AM · Restricted Project, Restricted Project, Restricted Project
quinnp added a reverting change for D129401: [libLTO] Set data-sections by default in libLTO.: rG70ec8cd024f3: Revert "[libLTO] Set data-sections by default in libLTO.".
Jul 27 2022, 6:47 AM · Restricted Project, Restricted Project, Restricted Project
quinnp committed rGf565444b486d: [libLTO] Set data-sections by default in libLTO. (authored by quinnp).
[libLTO] Set data-sections by default in libLTO.
Jul 27 2022, 6:35 AM · Restricted Project, Restricted Project, Restricted Project
quinnp closed D129401: [libLTO] Set data-sections by default in libLTO..
Jul 27 2022, 6:34 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Addressing review comments: fixing test cases and improving test case clarity.

Jul 27 2022, 5:52 AM · Restricted Project, Restricted Project, Restricted Project

Jul 25 2022

quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Adressing review comments. Moving tests into function-sections.c, using %s instead of creating a new file with touch, and modifying some CHECK lines to simplify checks.

Jul 25 2022, 7:38 AM · Restricted Project, Restricted Project, Restricted Project
quinnp added inline comments to D129401: [libLTO] Set data-sections by default in libLTO..
Jul 25 2022, 7:35 AM · Restricted Project, Restricted Project, Restricted Project

Jul 21 2022

quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Adressed review comments.

  • Modified how llvm-lto test-cases check the llvm-objdump -t output.
  • Renamed gold-lto-sections.c to forwarding-sections-liblto.c and modified the test to use the RUN lines from forwarding-sections-liblto.c with the target specified using --target=.
Jul 21 2022, 12:08 PM · Restricted Project, Restricted Project, Restricted Project

Jul 20 2022

quinnp added a comment to D129401: [libLTO] Set data-sections by default in libLTO..

Mostly looks good, with a nit in the test and some suggestion to the summary.

If this is for the legacy LTO interface, please state so. lld/*/LTO.cpp sets c.Options.DataSections = true; to enable data sections by default.

Hey @MaskRay, I'm not sure what is considered the legacy LTO interface, but this change is to make the libLTO codegen match the behaviour of LTO used through lld and gold plugin. Both lld and gold plugin turn on data-sections for LTO by default:

  • as you mentioned lld/*/LTO.cpp sets c.Options.DataSections = true; by default.
  • and llvm/tools/gold/gold-plugin.cpp sets Conf.Options.DataSections = SplitSections; provided that the user did not explicitly set/unset data-sections where SplitSections is true unless gold plugin is doing a relocatable link.

There is a legacy LTO interface (see llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h) and a resolution-based interface.
Change libLTO in "This patch changes libLTO to set data-sections by default." to legacy LTO.

This patch also fixes the forwarding of the clang options -fno-data-sections and -fno-function-sections to libLTO

This sentence can keep using libLTO or LLVMLTO (the library is LLVMLTO per llvm/lib/LTO/CMakeLists.txt)

Jul 20 2022, 12:09 PM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Addressing review comments. Changing test cases to use llvm-objdump -t instead of obj2yaml.

Jul 20 2022, 11:57 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the summary of D129401: [libLTO] Set data-sections by default in libLTO..
Jul 20 2022, 11:55 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the summary of D129401: [libLTO] Set data-sections by default in libLTO..
Jul 20 2022, 7:04 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Addressing review comments. Fixing the forwarding for -fno-function-sectons and removing the ObjectFormatType check.

Jul 20 2022, 7:01 AM · Restricted Project, Restricted Project, Restricted Project
quinnp retitled D129401: [libLTO] Set data-sections by default in libLTO. from [libLTO] Set data-sections by default in libLTO for ELF and XCOFF. to [libLTO] Set data-sections by default in libLTO..
Jul 20 2022, 7:00 AM · Restricted Project, Restricted Project, Restricted Project

Jul 19 2022

quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Modifying a test to fix check lines.

Jul 19 2022, 9:08 AM · Restricted Project, Restricted Project, Restricted Project
quinnp added a comment to D129401: [libLTO] Set data-sections by default in libLTO..

If this is for the legacy LTO interface, please state so. lld/*/LTO.cpp sets c.Options.DataSections = true; to enable data sections by default.

Jul 19 2022, 9:05 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Fixing test case.

Jul 19 2022, 9:02 AM · Restricted Project, Restricted Project, Restricted Project
quinnp added a comment to D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux.

This is not right as using ld.lld as the default linker isn't the majority case. If you want to change the default for your distribution, set -DCLANG_DEFAULT_LINKER=lld.
(Alternatively, you can have a ld symlink pointing to lld.)

Jul 19 2022, 6:38 AM · Restricted Project, Restricted Project

Jul 18 2022

quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Addressing review comment.

Jul 18 2022, 2:49 PM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Updating patch to forward -data-sections=1 to libLTO/gold instead of just -data-sections when -fdata-sections is explicitly specified in clang. This is to be more explicit since -data-sections=0 is now being forwared when -fno-data-sections is explicitly specified.

Jul 18 2022, 2:35 PM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the diff for D129401: [libLTO] Set data-sections by default in libLTO..

Updating patch with a clang change to properly forward -data-sections=0 to libLTO/gold when -fno-data-sections is explicitly specified.

Jul 18 2022, 2:27 PM · Restricted Project, Restricted Project, Restricted Project
quinnp added a comment to D129401: [libLTO] Set data-sections by default in libLTO..

I've realized that getExplicitDataSections() interacts with ...

Yes, that seems to be the case that clang forwards the -data-sections option to libLTO/gold only when it's ON. It might be that at that time teh default was assumed to be OFF in libLTO/gold.
Users can still disable it by passing the option manually (i.e. -plugin-opt=-data-sections=0).
The forwarding logic in clang shud be fixed at some point.

Jul 18 2022, 9:12 AM · Restricted Project, Restricted Project, Restricted Project

Jul 15 2022

quinnp added a comment to D129401: [libLTO] Set data-sections by default in libLTO..

I've realized that getExplicitDataSections() interacts with the clang options -fdata-sections and -fno-data-sections differently than the llc versions of these options, --data-sections=true and --data-sections=false. In particular,

  • when --data-sections=true is specified with llvm-lto, getExplicitDataSections() returns 1
  • when --data-sections=false is specified with llvm-lto, getExplicitDataSections() returns 0
  • when no data-sections options are specified with llvm-lto, getExplicitDataSections() returns None.
  • when -fdata-sections is specified with clang, getExplicitDataSections() returns 1
  • when -fno-data-sections is specified with clang, getExplicitDataSections() returns None.
  • when no data-sections options are specified with clang, getExplicitDataSections() returns None.
Jul 15 2022, 8:50 AM · Restricted Project, Restricted Project, Restricted Project
quinnp updated the summary of D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux.
Jul 15 2022, 7:17 AM · Restricted Project, Restricted Project
quinnp updated the summary of D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux.
Jul 15 2022, 7:16 AM · Restricted Project, Restricted Project
quinnp added reviewers for D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux: nemanjai, kamaub, lei, Restricted Project.
Jul 15 2022, 7:12 AM · Restricted Project, Restricted Project
quinnp requested review of D129855: [clang][PowerPC] Set lld as clang's default linker for PowerPC Linux.
Jul 15 2022, 7:11 AM · Restricted Project, Restricted Project

Jul 11 2022

quinnp added inline comments to D129401: [libLTO] Set data-sections by default in libLTO..
Jul 11 2022, 7:55 AM · Restricted Project, Restricted Project, Restricted Project

Jul 8 2022

quinnp added reviewers for D129401: [libLTO] Set data-sections by default in libLTO.: hubert.reinterpretcast, w2yehia, lei, nemanjai, pcc.
Jul 8 2022, 3:01 PM · Restricted Project, Restricted Project, Restricted Project
quinnp requested review of D129401: [libLTO] Set data-sections by default in libLTO..
Jul 8 2022, 3:00 PM · Restricted Project, Restricted Project, Restricted Project

Jun 28 2022

quinnp accepted D128288: [PowerPC] Fix signatures for vec_replace_unaligned builtin.

LGTM. Thanks!

Jun 28 2022, 11:30 AM · Restricted Project, Restricted Project

Jun 17 2022

quinnp committed rGdeb7655209a7: [PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not… (authored by quinnp).
[PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not…
Jun 17 2022, 8:14 AM · Restricted Project, Restricted Project
quinnp closed D128062: [PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not swappable..
Jun 17 2022, 8:14 AM · Restricted Project, Restricted Project
quinnp added reviewers for D128062: [PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not swappable.: Restricted Project, nemanjai, lei, stefanp.
Jun 17 2022, 7:48 AM · Restricted Project, Restricted Project
quinnp requested review of D128062: [PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not swappable..
Jun 17 2022, 7:47 AM · Restricted Project, Restricted Project

Jun 15 2022

quinnp committed rG335e8bf1008f: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads… (authored by quinnp).
[PowerPC] emit VSX instructions instead of VMX instructions for vector loads…
Jun 15 2022, 10:06 AM · Restricted Project, Restricted Project
quinnp closed D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.
Jun 15 2022, 10:06 AM · Restricted Project, Restricted Project
quinnp updated the summary of D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.
Jun 15 2022, 7:13 AM · Restricted Project, Restricted Project
quinnp updated the diff for D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.

Adding a comments to the early exits in expandVSXLoadForLE and expandVSXStoreForLE.

Jun 15 2022, 7:12 AM · Restricted Project, Restricted Project
quinnp updated the diff for D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.

Updating patch to delay SVX load and store combine until after legalization.

Jun 15 2022, 6:21 AM · Restricted Project, Restricted Project

Jun 13 2022

quinnp updated the summary of D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.
Jun 13 2022, 11:57 AM · Restricted Project, Restricted Project
quinnp updated the summary of D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.
Jun 13 2022, 11:55 AM · Restricted Project, Restricted Project
quinnp accepted D127439: [PowerPC] Fix combine step for shufflevector..

LGTM as well aside from Zarko's comment.

Jun 13 2022, 10:13 AM · Restricted Project, Restricted Project
quinnp committed rG35aaf548237a: [clang][driver] fix to correctly set devtoolset on RHEL (authored by quinnp).
[clang][driver] fix to correctly set devtoolset on RHEL
Jun 13 2022, 7:13 AM · Restricted Project, Restricted Project
quinnp closed D127310: [clang][driver] fix to correctly set devtoolset on RHEL.
Jun 13 2022, 7:12 AM · Restricted Project, Restricted Project

Jun 10 2022

quinnp updated the diff for D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.

Rebasing with main.

Jun 10 2022, 10:11 AM · Restricted Project, Restricted Project
quinnp added a comment to D127310: [clang][driver] fix to correctly set devtoolset on RHEL.

I did not remove that on purpose, so adding it back makes sense to me.

I've updated the patch to remove the path without the /root/usr suffix and exclusively add the path with the root/usr suffix.

Jun 10 2022, 7:42 AM · Restricted Project, Restricted Project
quinnp updated the diff for D127310: [clang][driver] fix to correctly set devtoolset on RHEL.

Addressing review comments. Removing path without /root/usr suffix and changing unit test to match.

Jun 10 2022, 7:38 AM · Restricted Project, Restricted Project

Jun 9 2022

quinnp added a comment to rG51b557adc131: Add an error message to the default SIGPIPE handler.

Hi, this patch broke one of the PowerPC bots (https://lab.llvm.org/buildbot/#/builders/121). unix03-sigpipe-exit.test is failing. Here is the first build with this patch: https://lab.llvm.org/buildbot/#/builders/121/builds/20219

Jun 9 2022, 10:29 AM · Restricted Project, Restricted Project

Jun 8 2022

quinnp added a comment to D127310: [clang][driver] fix to correctly set devtoolset on RHEL.

Thank you @nemanjai! I've updated the patch based on your suggestion and tested it for both the existing testcase and the RHEL buildbot failure.

Jun 8 2022, 10:20 AM · Restricted Project, Restricted Project
quinnp updated the diff for D127310: [clang][driver] fix to correctly set devtoolset on RHEL.

Addressing review comments.

Jun 8 2022, 10:19 AM · Restricted Project, Restricted Project
quinnp added reviewers for D127310: [clang][driver] fix to correctly set devtoolset on RHEL: nemanjai, MaskRay, tbaeder, tstellar, phosek.
Jun 8 2022, 8:08 AM · Restricted Project, Restricted Project
quinnp requested review of D127310: [clang][driver] fix to correctly set devtoolset on RHEL.
Jun 8 2022, 8:06 AM · Restricted Project, Restricted Project
quinnp added reviewers for D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores: nemanjai, lei, Restricted Project.
Jun 8 2022, 7:58 AM · Restricted Project, Restricted Project
quinnp requested review of D127309: [PowerPC] emit VSX instructions instead of VMX instructions for vector loads and stores.
Jun 8 2022, 7:57 AM · Restricted Project, Restricted Project

May 5 2022

quinnp accepted D113514: [LLVM][sancov] Inclusive language: Add -ignorelist option.

Other than my comment, LGTM

May 5 2022, 6:44 AM · Restricted Project, Restricted Project
quinnp added inline comments to D113514: [LLVM][sancov] Inclusive language: Add -ignorelist option.
May 5 2022, 6:43 AM · Restricted Project, Restricted Project

Apr 25 2022

quinnp committed rG09e75d3f0996: [libcxx][NFC] Inclusive language: remove use of sanity check (authored by quinnp).
[libcxx][NFC] Inclusive language: remove use of sanity check
Apr 25 2022, 2:54 PM · Restricted Project, Restricted Project
quinnp closed D124391: [libcxx][NFC] Inclusive language: remove use of sanity check.
Apr 25 2022, 2:54 PM · Restricted Project, Restricted Project
quinnp committed rGb3e8e43789d2: [compiler-rt][NFC] Inclusive language: remove use of sanity check/test (authored by quinnp).
[compiler-rt][NFC] Inclusive language: remove use of sanity check/test
Apr 25 2022, 2:13 PM · Restricted Project, Restricted Project
quinnp closed D124390: [compiler-rt][NFC] Inclusive language: remove use of sanity check/test.
Apr 25 2022, 2:13 PM · Restricted Project, Restricted Project
quinnp committed rG0386213352ec: [clang][NFC] Inclusive language: remove use of Whitelist in clang/lib/Analysis/ (authored by quinnp).
[clang][NFC] Inclusive language: remove use of Whitelist in clang/lib/Analysis/
Apr 25 2022, 1:26 PM · Restricted Project, Restricted Project
quinnp closed D124389: [clang][NFC] Inclusive language: remove use of Whitelist in clang/lib/Analysis/.
Apr 25 2022, 1:26 PM · Restricted Project, Restricted Project
quinnp added reviewers for D124391: [libcxx][NFC] Inclusive language: remove use of sanity check: ldionne, ZarkoCA.
Apr 25 2022, 7:59 AM · Restricted Project, Restricted Project
quinnp requested review of D124391: [libcxx][NFC] Inclusive language: remove use of sanity check.
Apr 25 2022, 7:59 AM · Restricted Project, Restricted Project
quinnp added reviewers for D124390: [compiler-rt][NFC] Inclusive language: remove use of sanity check/test: dvyukov, ZarkoCA.
Apr 25 2022, 7:50 AM · Restricted Project, Restricted Project
quinnp requested review of D124390: [compiler-rt][NFC] Inclusive language: remove use of sanity check/test.
Apr 25 2022, 7:49 AM · Restricted Project, Restricted Project
quinnp added reviewers for D124389: [clang][NFC] Inclusive language: remove use of Whitelist in clang/lib/Analysis/: george.karpenkov, aaron.ballman, ZarkoCA.
Apr 25 2022, 7:40 AM · Restricted Project, Restricted Project
quinnp requested review of D124389: [clang][NFC] Inclusive language: remove use of Whitelist in clang/lib/Analysis/.
Apr 25 2022, 7:38 AM · Restricted Project, Restricted Project

Apr 13 2022

quinnp committed rG7d7022fb0ce4: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once (authored by quinnp).
[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once
Apr 13 2022, 2:32 PM · Restricted Project, Restricted Project
quinnp closed D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Apr 13 2022, 2:32 PM · Restricted Project, Restricted Project

Apr 12 2022

quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Fixing failing tests added in this patch.

Apr 12 2022, 1:12 PM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Small change for consistency.

Apr 12 2022, 12:17 PM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Small change for consistency. llvm::Value -> Value

Apr 12 2022, 11:56 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Updating patch with a fix for emitting builtin arguments in an unspecified order.

Apr 12 2022, 11:53 AM · Restricted Project, Restricted Project
quinnp reopened D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Re-opening the revision so that I can update it with a fix.

Apr 12 2022, 11:53 AM · Restricted Project, Restricted Project

Apr 7 2022

quinnp added a comment to D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Looks like this breaks tests on windows: http://45.33.8.238/win/55893/step_7.txt

Please take a look and revert for now if it takes a while to fix.

Apr 7 2022, 2:49 PM · Restricted Project, Restricted Project
quinnp added a reverting change for rG2aae5b1fac38: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once: rGfef56f79ac8c: Revert "[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once".
Apr 7 2022, 2:47 PM · Restricted Project, Restricted Project
quinnp committed rGfef56f79ac8c: Revert "[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once" (authored by quinnp).
Revert "[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once"
Apr 7 2022, 2:47 PM · Restricted Project, Restricted Project
quinnp added a reverting change for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once: rGfef56f79ac8c: Revert "[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once".
Apr 7 2022, 2:46 PM · Restricted Project, Restricted Project
quinnp committed rG2aae5b1fac38: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once (authored by quinnp).
[PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once
Apr 7 2022, 2:00 PM · Restricted Project, Restricted Project
quinnp closed D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Apr 7 2022, 2:00 PM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Fixing a set of builtins added by the rebase with main.

Apr 7 2022, 11:38 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Rebasing with main.

Apr 7 2022, 10:51 AM · Restricted Project, Restricted Project
quinnp added inline comments to D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Apr 7 2022, 10:37 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Fixing some testcases that broke due to re-ordering IR in my last update.

Apr 7 2022, 10:36 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Adressing review comments. Added a testcase which fails prior to this patch due to the arguments being emmited multiple times. Refactored some calls to EmitScalarExpr() to be more consistent.

Apr 7 2022, 10:21 AM · Restricted Project, Restricted Project

Mar 30 2022

quinnp added inline comments to D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Mar 30 2022, 6:27 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Moving testcases that require code generation from clang/test/Sema/ppc-pair-mma-types.c to clang/test/CodeGen/PowerPC/ppc-mma-types.c and clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c. This is because some of these tests use the line Ops.push_back(EmitArrayToPointerDecay(E->getArg(i)).getPointer()); which I initially removed from EmitPPCbuiltinExpr. I have added this back in the switch statement where it is needed.

Mar 30 2022, 6:22 AM · Restricted Project, Restricted Project

Mar 28 2022

quinnp added inline comments to D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Mar 28 2022, 1:03 PM · Restricted Project, Restricted Project

Mar 21 2022

quinnp accepted D121430: [PowerPC] Fix lowering of byval parameters for sizes greater than 8 bytes..

LGTM

Mar 21 2022, 7:31 AM · Restricted Project, Restricted Project
quinnp updated the diff for D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Fixing a failing test case.

Mar 21 2022, 6:54 AM · Restricted Project, Restricted Project

Mar 15 2022

quinnp updated the summary of D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Mar 15 2022, 7:47 AM · Restricted Project, Restricted Project
quinnp updated the summary of D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.
Mar 15 2022, 7:45 AM · Restricted Project, Restricted Project