Page MenuHomePhabricator

tingwang (Ting Wang)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 9 2022, 5:09 PM (63 w, 4 d)

Recent Activity

Fri, Mar 24

tingwang updated the diff for D146610: [DAGCombiner][SelectionDAG] Apply CombineStoreAndExtract on constant values.

Updates:
(1) Do not combine when store node generates additional value(s).
(2) Add getCombineStoreAndExtractIdx() to directly query the index, and do not need to loop through all elements.
(3) If the constant value to be stored is referenced by node other than current Store and the vector node, do not combine.
(4) Do not combine if the constant value is -1U.
(5) Add check to make sure the to-be-extracted vector type is legal.

Fri, Mar 24, 12:45 AM · Restricted Project, Restricted Project

Wed, Mar 22

tingwang planned changes to D146610: [DAGCombiner][SelectionDAG] Apply CombineStoreAndExtract on constant values.

Saw error in bootstrap.

Wed, Mar 22, 1:27 AM · Restricted Project, Restricted Project
tingwang added a comment to D146610: [DAGCombiner][SelectionDAG] Apply CombineStoreAndExtract on constant values.

Some test case to sanity check constants are stored as expected:

Wed, Mar 22, 12:28 AM · Restricted Project, Restricted Project
tingwang requested review of D146610: [DAGCombiner][SelectionDAG] Apply CombineStoreAndExtract on constant values.
Wed, Mar 22, 12:13 AM · Restricted Project, Restricted Project

Tue, Mar 21

tingwang committed rGf64dc9bc6ea0: [PowerPC][NFC] add const-nonsplat-array-init.ll (authored by tingwang).
[PowerPC][NFC] add const-nonsplat-array-init.ll
Tue, Mar 21, 9:33 PM · Restricted Project, Restricted Project
tingwang closed D146500: [PowerPC][NFC] add const-nonsplat-array-init.ll.
Tue, Mar 21, 9:32 PM · Restricted Project, Restricted Project
tingwang requested review of D146602: [PowerPC] Enable canCombineStoreAndExtract target hook.
Tue, Mar 21, 8:30 PM · Restricted Project, Restricted Project

Mon, Mar 20

tingwang requested review of D146500: [PowerPC][NFC] add const-nonsplat-array-init.ll.
Mon, Mar 20, 11:39 PM · Restricted Project, Restricted Project

Thu, Mar 16

tingwang updated the diff for D125095: [Clang][AIX] Add .ref in frontend for AIX XCOFF to support `-bcdtors:csect` linker option.

As verifier change and baseline test cases have been moved into https://reviews.llvm.org/D145767, update this patch.

Thu, Mar 16, 1:19 AM · Restricted Project, Restricted Project, Restricted Project
tingwang updated the diff for D145767: [Verifier][NFC] Refactor check for associated metadata to allow multiple operands on AIX.

Add empty case in Verifier/associated-metadata-aix-xcoff.ll

Thu, Mar 16, 12:03 AM · Restricted Project, Restricted Project, Restricted Project

Tue, Mar 14

tingwang added inline comments to D145767: [Verifier][NFC] Refactor check for associated metadata to allow multiple operands on AIX.
Tue, Mar 14, 11:12 PM · Restricted Project, Restricted Project, Restricted Project
tingwang updated the diff for D145767: [Verifier][NFC] Refactor check for associated metadata to allow multiple operands on AIX.

Address comments:
(1) Duplicated associated test cases to make copies for AIX XCOFF, and added multiple operands and null operand as legal cases.
(2) Updated verifier logic to check for AIX target.
(3) Moved XFAIL check to specific lines.

Tue, Mar 14, 11:08 PM · Restricted Project, Restricted Project, Restricted Project

Mon, Mar 13

tingwang updated the diff for D145767: [Verifier][NFC] Refactor check for associated metadata to allow multiple operands on AIX.

Address comments:
(1) Add test case to show how associated metadata will be used on AIX (currently not supported, marked with XFAIL).
(2) Add langref changes to explain.

Mon, Mar 13, 11:34 PM · Restricted Project, Restricted Project, Restricted Project
tingwang added a comment to D144467: [IPSCCP] Don't require noundef for !range annotation.

I saw following case failed due to this commit with IPSCCPPass opt -passes="ipsccp"

Mon, Mar 13, 1:43 AM · Restricted Project, Restricted Project

Fri, Mar 10

tingwang added a comment to D122198: [PowerPC] Add .ref in backend for AIX XCOFF to support `-bcdtors:csect` linker option.

I'm not familiar with a lot of this code, but I don't see any obvious errors.

Fri, Mar 10, 6:16 PM · Restricted Project, Restricted Project

Thu, Mar 9

tingwang updated the diff for D122198: [PowerPC] Add .ref in backend for AIX XCOFF to support `-bcdtors:csect` linker option.

Rebase.

Thu, Mar 9, 11:33 PM · Restricted Project, Restricted Project
tingwang updated the diff for D125095: [Clang][AIX] Add .ref in frontend for AIX XCOFF to support `-bcdtors:csect` linker option.

Rebase and update patch
(1) Update verifier check on associated metadata to allow multiple operands for AIX.
(2) Update test cases to use opaque pointer.

Thu, Mar 9, 11:05 PM · Restricted Project, Restricted Project, Restricted Project
tingwang requested review of D145767: [Verifier][NFC] Refactor check for associated metadata to allow multiple operands on AIX.
Thu, Mar 9, 10:03 PM · Restricted Project, Restricted Project, Restricted Project
tingwang added a comment to D125095: [Clang][AIX] Add .ref in frontend for AIX XCOFF to support `-bcdtors:csect` linker option.

Currently this patch does not work due to limit set on associated metadata operand count (forced to be single operand).

commit 87f2e9448e82bbed4ac59bb61bea03256aa5f4de
Author: Matt Arsenault <Matthew.Arsenault@amd.com>
Date:   Mon Jan 9 12:17:38 2023 -0500
Thu, Mar 9, 5:59 PM · Restricted Project, Restricted Project, Restricted Project
tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Sorry, I had unsubmitted comments. Not sure if they still apply.

Thu, Mar 9, 5:27 PM · Restricted Project, Restricted Project

Wed, Mar 8

tingwang planned changes to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Attempt to push the logic into DAGCombiner::mergeConsecutiveStores()...

Wed, Mar 8, 9:05 PM · Restricted Project, Restricted Project

Thu, Mar 2

tingwang committed rGbd4562976cfd: [PowerPC][NFC] cleanup isEligibleForTCO (authored by tingwang).
[PowerPC][NFC] cleanup isEligibleForTCO
Thu, Mar 2, 8:05 PM · Restricted Project, Restricted Project
tingwang closed D145028: [PowerPC][NFC] cleanup isEligibleForTCO.
Thu, Mar 2, 8:04 PM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Update StoreSizeInBits check to skip on PowerOf2 bit size less than 8.

Thu, Mar 2, 5:14 PM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

(1) Update element type ElemTy which now matches the type expected by both STFIWX and STXSIX PPCISD nodes.
(2) Add missing match pattern for PPCstxsix.

Thu, Mar 2, 12:39 AM · Restricted Project, Restricted Project

Wed, Mar 1

tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

(1) Format code to following coding style guidance.
(2) Fix SplatValue check.
(3) Remaining redundant instructions like mtfprd will be fixed in separate patches.

Wed, Mar 1, 6:10 AM · Restricted Project, Restricted Project

Tue, Feb 28

tingwang requested review of D145028: [PowerPC][NFC] cleanup isEligibleForTCO.
Tue, Feb 28, 9:49 PM · Restricted Project, Restricted Project

Feb 28 2023

tingwang committed rG65f68812d399: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions (authored by tingwang).
[PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions
Feb 28 2023, 7:30 PM · Restricted Project, Restricted Project
tingwang closed D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Feb 28 2023, 7:29 PM · Restricted Project, Restricted Project
tingwang updated the summary of D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Feb 28 2023, 7:28 PM · Restricted Project, Restricted Project
tingwang added inline comments to D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Feb 28 2023, 5:35 PM · Restricted Project, Restricted Project
tingwang planned changes to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Plan to continue improve the patch...

Feb 28 2023, 4:08 AM · Restricted Project, Restricted Project

Feb 27 2023

tingwang added inline comments to D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Feb 27 2023, 3:04 AM · Restricted Project, Restricted Project
tingwang updated the diff for D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.

Update according to comments:
(1) Removed IsByValArg check which is redundant.
(2) Removed one test case scenario which is redundant.

Feb 27 2023, 3:00 AM · Restricted Project, Restricted Project

Feb 21 2023

tingwang committed rG00ed95c3a222: [PowerPC][NFC] add const-splat-array-init.ll (authored by tingwang).
[PowerPC][NFC] add const-splat-array-init.ll
Feb 21 2023, 5:25 PM · Restricted Project, Restricted Project
tingwang closed D144235: [PowerPC][NFC] add const-splat-array-init.ll.
Feb 21 2023, 5:24 PM · Restricted Project, Restricted Project
tingwang committed rGd567e06946b7: [PowerPC][NFC] refactor eligible check for tail call optimization (authored by tingwang).
[PowerPC][NFC] refactor eligible check for tail call optimization
Feb 21 2023, 3:16 AM · Restricted Project, Restricted Project
tingwang closed D141673: [PowerPC][NFC] refactor eligible check for tail call optimization.
Feb 21 2023, 3:15 AM · Restricted Project, Restricted Project

Feb 19 2023

tingwang updated the diff for D141673: [PowerPC][NFC] refactor eligible check for tail call optimization.

Continue NIT: maybe remove the first else makes more sense...

Feb 19 2023, 8:25 PM · Restricted Project, Restricted Project
tingwang updated the diff for D141673: [PowerPC][NFC] refactor eligible check for tail call optimization.

Address comment and removed the second else.

Feb 19 2023, 6:28 PM · Restricted Project, Restricted Project
tingwang updated the diff for D141673: [PowerPC][NFC] refactor eligible check for tail call optimization.

Address comments.

Feb 19 2023, 5:58 PM · Restricted Project, Restricted Project
tingwang retitled D141673: [PowerPC][NFC] refactor eligible check for tail call optimization from [PowerPC] refactor eligible check for tail call optimization to [PowerPC][NFC] refactor eligible check for tail call optimization.
Feb 19 2023, 4:08 PM · Restricted Project, Restricted Project

Feb 16 2023

tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Redo the implementation, and now both memset and constant splat array initialization get changed.

Feb 16 2023, 11:12 PM · Restricted Project, Restricted Project
tingwang retitled D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store from [SelectionDAG][PowerPC] Memset reuse vector element for tail store to [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Feb 16 2023, 11:06 PM · Restricted Project, Restricted Project
tingwang updated the diff for D144235: [PowerPC][NFC] add const-splat-array-init.ll.

Add one more case.

Feb 16 2023, 10:51 PM · Restricted Project, Restricted Project
tingwang requested review of D144235: [PowerPC][NFC] add const-splat-array-init.ll.
Feb 16 2023, 5:06 PM · Restricted Project, Restricted Project
tingwang committed rG52a774fd4c18: [PowerPC] remove XXSWAPD after load from CP which is a splat value (authored by tingwang).
[PowerPC] remove XXSWAPD after load from CP which is a splat value
Feb 16 2023, 4:22 PM · Restricted Project, Restricted Project
tingwang closed D139491: [PowerPC] remove XXSWAPD after load from CP which is a splat value.
Feb 16 2023, 4:22 PM · Restricted Project, Restricted Project

Feb 7 2023

tingwang planned changes to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

I will try to get similar results by DAG combine. Thanks to Nemanja and Kai's insight!

Feb 7 2023, 10:25 PM · Restricted Project, Restricted Project

Feb 6 2023

tingwang added inline comments to D138551: [PowerPC] Mask constant operands in bit permutation calculation.
Feb 6 2023, 10:50 PM · Restricted Project, Restricted Project

Feb 5 2023

tingwang retitled D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE from [PowerPC] add a peephole to remove redundant swap instructions after vector splats on P8 to [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.
Feb 5 2023, 6:02 PM · Restricted Project, Restricted Project
tingwang added a comment to D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.

Why do we need this?

  1. For LE, why doesn't the swap removal pass remove the swaps rather than relying on this peephole?
  2. For AIX, why do we have swaps? We certainly don't swap values we store by default on big endian, so the description of this doesn't explain it at all.
Feb 5 2023, 5:46 PM · Restricted Project, Restricted Project

Feb 2 2023

tingwang committed rG1d8f13ae4538: [PowerPC] add a peephole to remove redundant swap instructions after vector… (authored by tingwang).
[PowerPC] add a peephole to remove redundant swap instructions after vector…
Feb 2 2023, 5:53 PM · Restricted Project, Restricted Project
tingwang closed D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.
Feb 2 2023, 5:53 PM · Restricted Project, Restricted Project

Jan 30 2023

tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Rebase && Gentle ping.

Jan 30 2023, 5:38 PM · Restricted Project, Restricted Project

Jan 16 2023

tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Gentle ping.

Jan 16 2023, 3:47 PM · Restricted Project, Restricted Project

Jan 13 2023

tingwang added a comment to D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.

hmm, another issue cause by inconsistent logic for the tail call check between the IR coro-split pass and the instruction selection pass. Should we make them be consistent to avoid more issues?
For example, can we refactor IsEligibleForTailCallOptimization_64SVR4 and IsEligibleForTailCallOptimization() and call them in the TTI function supportsTailCallFor? I see there is a SelectionDAG &DAG parameter for these two functions, but the DAG is used to get the Caller Function, I think it should be easy to change the SelectionDAG to a Function parameter?

And for mayBeEmittedAsTailCall(), maybe we should also add another patch to extend it for non 64BitELFABI targets?

Jan 13 2023, 6:03 AM · Restricted Project, Restricted Project
tingwang added inline comments to D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Jan 13 2023, 5:40 AM · Restricted Project, Restricted Project
tingwang updated the diff for D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.

(1) Use new API to do the check.
(2) Remove assert requirement.
(3) Fixed test case: CHECK-PCREL should not be tailcall.

Jan 13 2023, 5:39 AM · Restricted Project, Restricted Project
tingwang requested review of D141673: [PowerPC][NFC] refactor eligible check for tail call optimization.
Jan 13 2023, 3:07 AM · Restricted Project, Restricted Project

Jan 12 2023

tingwang planned changes to D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.

As suggested by Zheng, I'm looking for a solution that reuse existing functions in PPCISelLowering.

Jan 12 2023, 5:30 PM · Restricted Project, Restricted Project

Jan 8 2023

tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Gentle ping.

Jan 8 2023, 10:37 PM · Restricted Project, Restricted Project
tingwang planned changes to D140683: [PowerPC] enable Policy.ShouldTrackLaneMasks.

Plan to enable 256bit vector ld/st codegen, and then add the motivation case.

Jan 8 2023, 4:43 PM · Restricted Project, Restricted Project

Jan 5 2023

tingwang updated the diff for D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.

Refresh and Ping.

Jan 5 2023, 2:54 AM · Restricted Project, Restricted Project

Jan 3 2023

tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Update patch as following test case pattern changed:
llvm/test/CodeGen/ARM/memset-align.ll

Jan 3 2023, 5:14 PM · Restricted Project, Restricted Project

Dec 26 2022

tingwang requested review of D140683: [PowerPC] enable Policy.ShouldTrackLaneMasks.
Dec 26 2022, 11:03 PM · Restricted Project, Restricted Project
tingwang abandoned D140682: [PowerPC][NFC] add test case for ShouldTrackLaneMasks.
Dec 26 2022, 10:57 PM · Restricted Project, Restricted Project
tingwang planned changes to D140682: [PowerPC][NFC] add test case for ShouldTrackLaneMasks.
Dec 26 2022, 10:49 PM · Restricted Project, Restricted Project
tingwang requested review of D140682: [PowerPC][NFC] add test case for ShouldTrackLaneMasks.
Dec 26 2022, 9:13 PM · Restricted Project, Restricted Project

Dec 19 2022

tingwang requested review of D140369: [PowerPC] update PPCTTIImpl::supportsTailCallFor() check conditions.
Dec 19 2022, 8:44 PM · Restricted Project, Restricted Project

Dec 14 2022

tingwang added inline comments to D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.
Dec 14 2022, 12:12 AM · Restricted Project, Restricted Project

Dec 13 2022

tingwang added inline comments to D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.
Dec 13 2022, 7:02 PM · Restricted Project, Restricted Project
tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Gentle ping.

Dec 13 2022, 4:38 PM · Restricted Project, Restricted Project

Dec 12 2022

tingwang committed rGe6d925bc4bb5: [PowerPC][NFC] Add test case for memset tail store (authored by tingwang).
[PowerPC][NFC] Add test case for memset tail store
Dec 12 2022, 5:08 PM · Restricted Project, Restricted Project
tingwang closed D138881: [PowerPC][NFC] Add test case for memset tail store.
Dec 12 2022, 5:07 PM · Restricted Project, Restricted Project

Dec 8 2022

tingwang requested review of D139691: [PowerPC] add a peephole to remove redundant swap instructions created by expandVSXStoreForLE.
Dec 8 2022, 10:42 PM · Restricted Project, Restricted Project

Dec 7 2022

tingwang updated the diff for D139491: [PowerPC] remove XXSWAPD after load from CP which is a splat value.

Address comment.

Dec 7 2022, 9:10 PM · Restricted Project, Restricted Project
tingwang added inline comments to D139491: [PowerPC] remove XXSWAPD after load from CP which is a splat value.
Dec 7 2022, 9:09 PM · Restricted Project, Restricted Project
tingwang committed rG140a83e32f64: [PowerPC][NFC] Test case update on ppc64-acc-regalloc-bugfix.ll (authored by tingwang).
[PowerPC][NFC] Test case update on ppc64-acc-regalloc-bugfix.ll
Dec 7 2022, 5:17 PM · Restricted Project, Restricted Project
tingwang closed D139492: [PowerPC][NFC] Test case update on ppc64-acc-regalloc-bugfix.ll.
Dec 7 2022, 5:17 PM · Restricted Project, Restricted Project
tingwang updated the summary of D139492: [PowerPC][NFC] Test case update on ppc64-acc-regalloc-bugfix.ll.
Dec 7 2022, 4:27 PM · Restricted Project, Restricted Project

Dec 6 2022

tingwang requested review of D139492: [PowerPC][NFC] Test case update on ppc64-acc-regalloc-bugfix.ll.
Dec 6 2022, 5:33 PM · Restricted Project, Restricted Project
tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

I think this is useful, but we should ensure we can get rid of the swap that this introduces (in a separate patch).

Dec 6 2022, 5:14 PM · Restricted Project, Restricted Project
tingwang requested review of D139491: [PowerPC] remove XXSWAPD after load from CP which is a splat value.
Dec 6 2022, 5:06 PM · Restricted Project, Restricted Project

Dec 2 2022

tingwang requested review of D139193: [PowerPC] remove XXSWAPD after vector splat immediate.
Dec 2 2022, 4:42 AM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Test case update.

Dec 2 2022, 12:49 AM · Restricted Project, Restricted Project
tingwang updated the diff for D138881: [PowerPC][NFC] Add test case for memset tail store.

Add memset2TailV1Bx() cases which does not fit in vspltisb and may require constant pool.

Dec 2 2022, 12:43 AM · Restricted Project, Restricted Project

Dec 1 2022

tingwang added inline comments to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Dec 1 2022, 3:45 PM · Restricted Project, Restricted Project

Nov 30 2022

tingwang added a comment to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

I would expect not only memset, some consecutive stores could also reuse the result of vector split, see https://godbolt.org/z/77aMvncb4.
For

void foo(long a[3]) {
    a[0] = 12;
    a[1] = 12;
    a[2] = 12;
}

foo(long*):                               # @foo(long*)
        .quad   .Lfunc_begin0
        .quad   .TOC.@tocbase
        .quad   0
.Lfunc_begin0:
        xxlxor 0, 0, 0
        li 4, 12
        xxsplti32dx 0, 1, 12
        std 4, 16(3)
        stxv 0, 0(3)
        blr
        .long   0
        .quad   0

We don't reuse the result of xxsplti32dx.

Nov 30 2022, 8:17 PM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Add memset-tail.ll changes.

Nov 30 2022, 12:10 AM · Restricted Project, Restricted Project

Nov 29 2022

tingwang added inline comments to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Nov 29 2022, 11:59 PM · Restricted Project, Restricted Project
tingwang added inline comments to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Nov 29 2022, 11:57 PM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Changes in this update:
(1) I was trying to use TTI.getVectorInstrCost() to query instruction cost in PPCTargetLowering::canCombineStoreAndExtract(). However not able to reach TTI, and didn't find any reference to do that in SDAG. Given that the original implementation of canCombineStoreAndExtract() on ARM implemented its own logic to calculate Cost, followed the approach and implemented logic by referring to PPCTTIImpl::getVectorInstrCost().

Nov 29 2022, 11:56 PM · Restricted Project, Restricted Project
tingwang planned changes to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Realized I need to use PPCTTIImpl::getVectorInstrCost() API to determine the cost of instructions. I'm working on it now.

Nov 29 2022, 5:09 PM · Restricted Project, Restricted Project
tingwang added inline comments to D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Nov 29 2022, 5:20 AM · Restricted Project, Restricted Project
tingwang updated the diff for D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.

Update according to comments:
(1) Use existing canCombineStoreAndExtract() instead of creating new.
(2) Nest the else statement properly.
(3) Saw two cases changed due to (1).

Nov 29 2022, 5:14 AM · Restricted Project, Restricted Project
tingwang updated the diff for D138881: [PowerPC][NFC] Add test case for memset tail store.

Add more test cases according to comment.

Nov 29 2022, 5:02 AM · Restricted Project, Restricted Project

Nov 28 2022

tingwang requested review of D138883: [PowerPC] find and reuse ConstantSplatVector to combine constant store into extract and store.
Nov 28 2022, 5:29 PM · Restricted Project, Restricted Project
tingwang requested review of D138881: [PowerPC][NFC] Add test case for memset tail store.
Nov 28 2022, 5:01 PM · Restricted Project, Restricted Project

Oct 18 2022

tingwang added inline comments to D132196: [PowerPC] Add combine logic to use MADDLD/MADDHD/MADDHDU in multiply-add patterns.
Oct 18 2022, 1:03 AM · Restricted Project, Restricted Project