Page MenuHomePhabricator

clin1 (Chang Lin)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 22 2018, 3:00 PM (138 w, 5 d)

Recent Activity

Wed, Jun 16

clin1 accepted D100464: [DSE] Remove stores in the same loop iteration.

spec2000/186 passes now -- thanks.

Wed, Jun 16, 11:19 AM · Restricted Project

Wed, Jun 9

clin1 added a comment to D101103: [InstSimplify] Treat invariant group insts as bitcasts for load operands.

Hi @aeubanks, we turned up a corner case where jump threading is creating a self-referential GEP:

%tmp27 = getelementptr inbounds i8, i8* %tmp27, i64 1
Wed, Jun 9, 11:42 AM · Restricted Project

Tue, Jun 8

clin1 added a comment to D100464: [DSE] Remove stores in the same loop iteration.

Thank you for the quick response! Much appreciated.

Tue, Jun 8, 6:11 PM · Restricted Project
clin1 added a comment to D100464: [DSE] Remove stores in the same loop iteration.

@dmgreen, we found that DSE is removing a non dead store in a loop with multiple backedges. File "dse-double-loop.ll" attached. The 2nd store postdominates the 1st one, but it doesn't run on every iteration, so the 1st one is still needed. We worked around it by checking numBackEdges > 1 in addition to the irreducibility check. Would you mind taking a look? I hope bugpoint did not over-reduce the test case; it's derived from "real" code in spec2000 186.crafty.

Tue, Jun 8, 12:04 PM · Restricted Project

Apr 21 2021

clin1 added a comment to D100796: [InstCombine] Fix crash due to improper catchswitch handling.

Thanks for the review comments! Could I please ask someone for help making the commit? I don't have write access.

Apr 21 2021, 9:39 PM · Restricted Project

Apr 20 2021

clin1 retitled D100796: [InstCombine] Fix crash due to improper catchswitch handling from Suppress phi->bitcast transformation in InstCombine for catchswitch blocks. to [InstCombine] Fix crash due to improper catchswitch handling.
Apr 20 2021, 12:24 PM · Restricted Project

Apr 19 2021

clin1 updated the diff for D100796: [InstCombine] Fix crash due to improper catchswitch handling.

fixed case in variable name

Apr 19 2021, 4:22 PM · Restricted Project
clin1 requested review of D100796: [InstCombine] Fix crash due to improper catchswitch handling.
Apr 19 2021, 2:43 PM · Restricted Project

Mar 16 2021

clin1 added inline comments to D98757: [AMX] Not fold constant bitcast into amx intrisic.
Mar 16 2021, 10:47 PM · Restricted Project, Restricted Project
clin1 added inline comments to D98757: [AMX] Not fold constant bitcast into amx intrisic.
Mar 16 2021, 9:19 PM · Restricted Project, Restricted Project

Oct 26 2020

clin1 added inline comments to D86673: [StackColoring] Conservatively merge point pV = &(&Variable) in catch(Variable).
Oct 26 2020, 3:39 PM · Restricted Project
clin1 added inline comments to D86673: [StackColoring] Conservatively merge point pV = &(&Variable) in catch(Variable).
Oct 26 2020, 3:03 PM · Restricted Project

Jun 19 2020

clin1 abandoned D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Our internal test passes---thank you for the fix.

Jun 19 2020, 3:46 PM · Restricted Project
clin1 added a comment to D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Ah, I missed your comment. I'll pull your fix and retest.

Jun 19 2020, 1:04 PM · Restricted Project
clin1 updated the diff for D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Return true to trigger the simplifier.

Jun 19 2020, 10:19 AM · Restricted Project
clin1 updated the diff for D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Thanks for the consensus. New patch uploaded.

Jun 19 2020, 10:19 AM · Restricted Project

Jun 18 2020

clin1 updated the diff for D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Good clarification: InstCombine vs. InstSimplify.
Merged and reduced test, full diff included.
If the patch is OK, could I ask you one more favor: to commit it? I do not have commit access to the project.

Jun 18 2020, 1:38 PM · Restricted Project
clin1 updated the diff for D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

Updated to run InstCombine before the vector transformations. The insert-binop-with-constant test needed a few changes. InstructionSimplify checks for constant divisors with 0/undef elements and undef's the entire result.

Jun 18 2020, 12:30 AM · Restricted Project

Jun 17 2020

clin1 added a comment to D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.

If running IC is cheap, that's a good solution. I will put up another patch. Thanks.
The IR looks strange, but it's unfortunately showing up in a few real test cases in our LLVM branch, after we've made some mods to the unroller and vectorizer.

Jun 17 2020, 4:12 PM · Restricted Project
clin1 created D82049: Fix crash in VectorCombine when attempting to peephole ConstantVector sequences.
Jun 17 2020, 1:28 PM · Restricted Project
clin1 added a comment to D78810: [InstCombine] Check max alignment before adding attr on aligned_alloc.

FWIW, dropping the attribute LGTM. The heap/stack promotion is still a work in progress, is that correct? At least, I don't see it happening in trunk.

Jun 17 2020, 11:50 AM · Restricted Project

Oct 8 2019

clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Restoring latest patch.

Oct 8 2019, 12:47 AM · Restricted Project

Jan 19 2019

clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

@mkazantsev, would you mind taking one more look at this patch? One significant fix was made since your last review, to handle duplicate edges from SwitchInsts. The patch has now been rebased to latest (which hasn't changed it much). Thanks!

Jan 19 2019, 11:46 PM · Restricted Project

Nov 20 2018

clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Did not include the reverted part of the code (the important part :) ) in the new patch. Added separate testcase for switch-backedge. Thanks for the fix suggestions.

Nov 20 2018, 10:16 AM · Restricted Project

Nov 16 2018

clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Keep the InLoopPredecessors vector in the original order.

Nov 16 2018, 8:28 PM · Restricted Project
clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Missed the sort call -- thanks.

Nov 16 2018, 4:59 PM · Restricted Project
clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Remove duplicate blocks from the list of exit predecessors. This happens when the predecessor inst is a switch with duplicate targets. Avoids block double-processing and maintains the metadata consistency assertion.

Nov 16 2018, 3:32 PM · Restricted Project

Nov 14 2018

clin1 added a comment to D53876: Preserve loop metadata when splitting exit blocks.

Sorry for the trouble. I'll figure out what happened.

Nov 14 2018, 10:33 AM · Restricted Project

Nov 6 2018

clin1 added a comment to D53876: Preserve loop metadata when splitting exit blocks.

Thank you for the thorough review. I have one more request to the reviewers on this list: could someone give a hand to commit the code? I don't have write access to the repo yet.

Nov 6 2018, 3:59 PM · Restricted Project

Nov 2 2018

clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Previous patch was null, this is the right one.

Nov 2 2018, 3:50 PM · Restricted Project
clin1 updated the diff for D53876: Preserve loop metadata when splitting exit blocks.

Rewrote comments, fixed formatting, simplified test and added checks for specific metadata

Nov 2 2018, 3:44 PM · Restricted Project
clin1 added inline comments to D53876: Preserve loop metadata when splitting exit blocks.
Nov 2 2018, 3:38 PM · Restricted Project

Oct 30 2018

clin1 created D53876: Preserve loop metadata when splitting exit blocks.
Oct 30 2018, 10:45 AM · Restricted Project

Oct 26 2018

clin1 added a comment to D53536: Pointer types were treated as zero-size by MergeICmps.

One more favor to ask: Could I please have some help committing this fix? I'm new to the project and don't have write access yet...

Oct 26 2018, 10:54 AM
clin1 updated the diff for D53536: Pointer types were treated as zero-size by MergeICmps.

Thanks! I've made the suggested test change.

Oct 26 2018, 10:52 AM

Oct 22 2018

clin1 created D53536: Pointer types were treated as zero-size by MergeICmps.
Oct 22 2018, 3:59 PM