Page MenuHomePhabricator

lkail (Kai Luo)
User

Projects

User does not belong to any projects.

User Details

User Since
May 15 2019, 8:43 PM (17 w, 5 d)

Recent Activity

Yesterday

lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Added test case that copy has side effect.

Mon, Sep 16, 8:32 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Updated the patch. Currently we don't handle non-trivial copy which has more than 2 operands(Cuz I notice current copy forward propagation algorithm considers copy's implicit operands).

Mon, Sep 16, 8:05 PM · Restricted Project
lkail requested review of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Mon, Sep 16, 8:05 PM · Restricted Project

Sun, Sep 15

lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Rebased.

Sun, Sep 15, 5:58 AM · Restricted Project

Thu, Sep 12

lkail added inline comments to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Thu, Sep 12, 2:57 AM · Restricted Project
lkail added inline comments to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Thu, Sep 12, 2:39 AM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Pre-committed machine-backward-cp.mir, including edge cases as far as I can imagine. Some test cases remain unchanged, reviewers might have to read whole diff of machine-backward-cp.mir to see unchanged cases.

Thu, Sep 12, 2:30 AM · Restricted Project
lkail committed rGcfaf2b6cfa24: [PowerPC][MCP][NFC] Pre-commit test cases for https://reviews.llvm.org/D65267 (authored by lkail).
[PowerPC][MCP][NFC] Pre-commit test cases for https://reviews.llvm.org/D65267
Thu, Sep 12, 2:02 AM
lkail committed rL371717: [PowerPC][MCP][NFC] Pre-commit test cases for https://reviews.llvm.org/D65267.
[PowerPC][MCP][NFC] Pre-commit test cases for https://reviews.llvm.org/D65267
Thu, Sep 12, 2:02 AM

Tue, Sep 10

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

The failing case is rather large even reduced by bugpoint.

Tue, Sep 10, 3:05 AM · Restricted Project

Mon, Sep 9

lkail added a reviewer for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp: MatzeB.
Mon, Sep 9, 10:42 PM · Restricted Project
lkail added a reviewer for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp: jmorse.
Mon, Sep 9, 10:33 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

@gribozavr Please let me know if the latest patch resolves the issue.

Mon, Sep 9, 8:20 PM · Restricted Project
lkail committed rG73da43aeb369: [PowerPC][NFC] Update test assertions using update_llc_test_checks.py (authored by lkail).
[PowerPC][NFC] Update test assertions using update_llc_test_checks.py
Mon, Sep 9, 7:28 PM
lkail committed rL371483: [PowerPC][NFC] Update test assertions using update_llc_test_checks.py.
[PowerPC][NFC] Update test assertions using update_llc_test_checks.py
Mon, Sep 9, 7:28 PM
lkail closed D67317: [PowerPC][NFC] Update test assertions using update_llc_test_checks.py.
Mon, Sep 9, 7:28 PM · Restricted Project
lkail requested review of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Mon, Sep 9, 7:16 PM · Restricted Project
lkail reopened D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Mon, Sep 9, 7:16 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

When replacing copy's src with copy's def, I missed a point that copy's def is clobbered by selected SrcMI and Tracker should be informed.

Mon, Sep 9, 7:16 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Hi @gribozavr , thanks for the affirmative action. Could you provide me your command to generate the executable and the target platform you compile to?

Mon, Sep 9, 5:13 PM · Restricted Project

Sun, Sep 8

lkail committed rG9115c477bb6e: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp (authored by lkail).
[MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp
Sun, Sep 8, 7:34 PM
lkail committed rL371359: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
[MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp
Sun, Sep 8, 7:31 PM
lkail closed D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Sun, Sep 8, 7:31 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Check if SrcOp is tied or an implicit-def.

Sun, Sep 8, 7:14 PM · Restricted Project

Sat, Sep 7

lkail added inline comments to D67317: [PowerPC][NFC] Update test assertions using update_llc_test_checks.py.
Sat, Sep 7, 6:06 AM · Restricted Project
lkail created D67317: [PowerPC][NFC] Update test assertions using update_llc_test_checks.py.
Sat, Sep 7, 5:39 AM · Restricted Project
lkail added a comment to rGed20dcb88b72: Revert [CodeGen] Fix typos to run tests. NFC..
Sat, Sep 7, 5:06 AM

Fri, Sep 6

lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Added reserved register check on SrcOp.getReg().

Fri, Sep 6, 3:00 AM · Restricted Project
lkail committed rL371184: Request commit access for lkail.
Request commit access for lkail
Fri, Sep 6, 2:14 AM
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Hi @craig.topper , would you mind having a look at changes of X86 test cases?

Fri, Sep 6, 12:27 AM · Restricted Project

Wed, Sep 4

lkail added reviewers for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp: RKSimon, nikic.
Wed, Sep 4, 2:40 AM · Restricted Project

Tue, Sep 3

lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Tue, Sep 3, 8:12 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Added comment for bool MachineCopyPropagation::eraseIfRedundant(MachineInstr &Copy).

Tue, Sep 3, 8:12 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Rebased and updated tests.

Tue, Sep 3, 7:45 PM · Restricted Project
lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Tue, Sep 3, 12:53 AM · Restricted Project
lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Tue, Sep 3, 12:53 AM · Restricted Project

Mon, Sep 2

lkail added a reviewer for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp: gberry.
Mon, Sep 2, 8:32 PM · Restricted Project

Thu, Aug 29

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Gentle ping.

Thu, Aug 29, 3:19 AM · Restricted Project

Thu, Aug 22

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

ping.

Thu, Aug 22, 6:39 PM · Restricted Project
lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Thu, Aug 22, 6:39 PM · Restricted Project

Mon, Aug 19

lkail abandoned D62890: [DAGCombiner] Merge consecutive stores of vector elements before types are legalized.

Since this patch has long been not updated, I'll close it and plan another patch that also works for PowerPC.

Mon, Aug 19, 6:33 PM · Restricted Project
lkail added a comment to D62890: [DAGCombiner] Merge consecutive stores of vector elements before types are legalized.

Hi @RKSimon , currently I'm not working on it. I should have abandoned this patch. I might have another patch which also works for PowerPC.

Mon, Aug 19, 6:33 PM · Restricted Project

Sun, Aug 18

lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Sun, Aug 18, 9:53 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Sun, Aug 18, 9:45 PM · Restricted Project

Aug 18 2019

lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 18 2019, 7:38 PM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Updated the patch and summary.

Aug 18 2019, 6:40 PM · Restricted Project
lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 18 2019, 6:37 PM · Restricted Project

Aug 14 2019

lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 14 2019, 1:35 AM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Updated patch to remove redundant copies by implementing backward copy propagation in machine-cp.

Aug 14 2019, 12:18 AM · Restricted Project
lkail updated the diff for D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 14 2019, 12:18 AM · Restricted Project

Aug 13 2019

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
//   $reg0 = OP ....
// ...
//   $reg1 = COPY $reg0

If we can be sure that $reg0 is renamable, and no use of $reg0 or $reg1 in between (and of course there might be other restrictions, like ReservedReg etc),
we should be able to remove the COPY here.

// `$reg1` = OP ..
// ...

One concern here, there might be uses of $reg0 in succ BBs. To overcome it, we might constraint this opt in terminal BBs considering current machine-cp working on single BB. To summarize, without complex uses and defs(thus we don't need to do complex replace-uses-with after RA), in a terminal BB we should have

$reg0 = OP ...
... <<< No uses of $reg0 and $reg1
$reg1 = COPY $reg0 <<< $reg0 is killed
...
<RET>
Aug 13 2019, 7:38 PM · Restricted Project

Aug 12 2019

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Have you considered extend MachineCopyPropagation to cover this? Looks like to me that this is a 'backward' COPY propagation.

Aug 12 2019, 11:14 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 12 2019, 10:49 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Aug 12 2019, 6:47 PM · Restricted Project

Aug 8 2019

lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

ping

Aug 8 2019, 4:42 PM · Restricted Project

Aug 6 2019

lkail committed rG02b8056cc1ac: [MachineCSE][NFC] Use 'profitable' rather than 'beneficial' to name method. (authored by lkail).
[MachineCSE][NFC] Use 'profitable' rather than 'beneficial' to name method.
Aug 6 2019, 10:41 PM
lkail committed rL368124: [MachineCSE][NFC] Use 'profitable' rather than 'beneficial' to name method..
[MachineCSE][NFC] Use 'profitable' rather than 'beneficial' to name method.
Aug 6 2019, 10:39 PM

Aug 1 2019

lkail committed rGfec7da8285b1: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register (authored by lkail).
[PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register
Aug 1 2019, 8:16 PM
lkail committed rL367645: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register.
[PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register
Aug 1 2019, 8:14 PM
lkail closed D65315: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register.
Aug 1 2019, 8:14 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Is this something that could be fixed in TailDuplication?

Aug 1 2019, 8:03 PM · Restricted Project
lkail requested review of D65315: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register.

Updated patch to use llvm::Register::isVirtualRegister.

Aug 1 2019, 6:50 PM · Restricted Project
lkail updated the diff for D65315: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register.
Aug 1 2019, 6:47 PM · Restricted Project

Jul 31 2019

lkail updated the summary of D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Jul 31 2019, 6:35 PM · Restricted Project
lkail added a comment to D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.

Ping

Jul 31 2019, 6:35 PM · Restricted Project

Jul 25 2019

lkail created D65315: [PowerPC][Peephole] Check if `extsw`'s second operand is a virtual register.
Jul 25 2019, 7:55 PM · Restricted Project
lkail added a comment to D65131: [PowerPC][NFC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly.

FYI, I should have make getDefMIPostRA public. So I committed another NFC patch to make getDefMIPostRA public. https://reviews.llvm.org/rG985e52a4c1c6

Jul 25 2019, 2:57 AM · Restricted Project
lkail created D65267: [MachineCopyPropagation] Remove redundant copies after TailDup via machine-cp.
Jul 25 2019, 2:15 AM · Restricted Project
lkail committed rG985e52a4c1c6: [PowerPC][NFC] Make `getDefMIPostRA` public (authored by lkail).
[PowerPC][NFC] Make `getDefMIPostRA` public
Jul 25 2019, 1:40 AM
lkail committed rL366995: [PowerPC][NFC] Make `getDefMIPostRA` public.
[PowerPC][NFC] Make `getDefMIPostRA` public
Jul 25 2019, 1:39 AM
lkail committed rG5c8af5380660: [PowerPC][NFC] Added `getDefMIPostRA` method (authored by lkail).
[PowerPC][NFC] Added `getDefMIPostRA` method
Jul 25 2019, 12:48 AM
lkail committed rL366990: [PowerPC][NFC] Added `getDefMIPostRA` method.
[PowerPC][NFC] Added `getDefMIPostRA` method
Jul 25 2019, 12:47 AM
lkail closed D65131: [PowerPC][NFC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly.
Jul 25 2019, 12:47 AM · Restricted Project

Jul 22 2019

lkail retitled D65131: [PowerPC][NFC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly from [PowerPC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly to [PowerPC][NFC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly.
Jul 22 2019, 10:23 PM · Restricted Project
lkail created D65131: [PowerPC][NFC] Added `getDefMIPostRA` method so that other methods don't need to implement it repeatedly.
Jul 22 2019, 10:20 PM · Restricted Project

Jul 21 2019

lkail committed rG3d72a58981e9: [PowerPC][NFC] Precommit a test case where ppc-mi-peepholes miscompiles extswsli (authored by lkail).
[PowerPC][NFC] Precommit a test case where ppc-mi-peepholes miscompiles extswsli
Jul 21 2019, 10:33 PM
lkail committed rL366666: [PowerPC][NFC] Precommit a test case where ppc-mi-peepholes miscompiles extswsli.
[PowerPC][NFC] Precommit a test case where ppc-mi-peepholes miscompiles extswsli
Jul 21 2019, 10:32 PM
lkail updated subscribers of rGdec624682e06: [MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs..

Hi @xbolva00 , I have some concern that @anton-afanasyev might have plan to revert some patches related to these files. If not so, I'll backport it to 9.0.

Jul 21 2019, 7:27 PM

Jul 20 2019

lkail added inline comments to D56772: [MIR] Add simple PRE pass to MachineCSE.
Jul 20 2019, 8:08 AM · Restricted Project

Jul 19 2019

lkail committed rGdec624682e06: [MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs. (authored by lkail).
[MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs.
Jul 19 2019, 6:01 AM
lkail committed rL366570: [MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs..
[MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs.
Jul 19 2019, 5:58 AM
lkail closed D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.
Jul 19 2019, 5:58 AM · Restricted Project

Jul 18 2019

lkail updated the diff for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Use hasMinSize to check if optimized for size.

Jul 18 2019, 6:39 PM · Restricted Project
lkail added a comment to D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Btw, this change breaks multiple (more than two) hoisting to common dominator. I've tested this patch for the original test case taken from here: https://bugs.llvm.org/show_bug.cgi?id=38917. There are several comparisons giving 96 > 40 + 10, 96 > 29 + 10, 96 > 18 + 10 (so no hoisting at all), meanwhile 96 < 97 = 40 + 29 + 18 + 10.
However I do not see easy solution for this issue.

Jul 18 2019, 6:31 PM · Restricted Project

Jul 17 2019

lkail updated the diff for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Updated patch following @dmgreen 's suggestion.

Jul 17 2019, 7:52 PM · Restricted Project
lkail added a reviewer for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs: dmgreen.
Jul 17 2019, 6:36 PM · Restricted Project

Jul 15 2019

lkail added a comment to D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Ping

Jul 15 2019, 6:33 PM · Restricted Project
lkail added inline comments to D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.
Jul 15 2019, 6:33 PM · Restricted Project

Jul 12 2019

lkail updated the diff for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Address @jsji 's comments and added new test.

Jul 12 2019, 2:43 AM · Restricted Project
lkail committed rG1e49a96c127f: [NFC][PowerPC] Added test for MachinePRE. (authored by lkail).
[NFC][PowerPC] Added test for MachinePRE.
Jul 12 2019, 2:12 AM
lkail committed rL365883: [NFC][PowerPC] Added test for MachinePRE..
[NFC][PowerPC] Added test for MachinePRE.
Jul 12 2019, 2:12 AM

Jul 11 2019

lkail committed rGcfd4c333448b: [NFC][PowerPC] Added test to track current behaviour of TailDup (authored by lkail).
[NFC][PowerPC] Added test to track current behaviour of TailDup
Jul 11 2019, 2:44 AM
lkail committed rL365746: [NFC][PowerPC] Added test to track current behaviour of TailDup.
[NFC][PowerPC] Added test to track current behaviour of TailDup
Jul 11 2019, 2:42 AM

Jul 10 2019

lkail updated the diff for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.
Jul 10 2019, 1:25 AM · Restricted Project

Jul 9 2019

lkail retitled D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs from [MachineCSE][MachinePRE] Do not hoist common computations into loop bodies to [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.
Jul 9 2019, 11:59 PM · Restricted Project
lkail updated the diff for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

Updated the patch, using MachineBlockFrequency as metric to check if CMBB is appropriate to hoist into.

Jul 9 2019, 11:47 PM · Restricted Project
lkail added a reviewer for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs: anil9.
Jul 9 2019, 6:56 PM · Restricted Project
lkail added a comment to D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs.

@hfinkel , thanks for review.

Jul 9 2019, 6:49 PM · Restricted Project
lkail added a reviewer for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs: nemanjai.
Jul 9 2019, 2:43 AM · Restricted Project
lkail added reviewers for D64394: [MachineCSE][MachinePRE] Do not hoist common computations into hot BBs: rtereshin, greened, mzolotukhin.
Jul 9 2019, 2:40 AM · Restricted Project