Page MenuHomePhabricator

luke (Luke Lau)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 9 2019, 6:59 AM (199 w, 3 d)

Recent Activity

Yesterday

luke added inline comments to D129686: [RISCV] Reuse a materialised global address in preference to merging into a load/store.
Thu, Feb 2, 6:10 AM · Restricted Project, Restricted Project

Wed, Feb 1

luke added inline comments to D143090: [LegalizeTypes] Tail call libcalls where possible.
Wed, Feb 1, 10:25 AM · Restricted Project, Restricted Project
luke added a reviewer for D143090: [LegalizeTypes] Tail call libcalls where possible: RKSimon.
Wed, Feb 1, 10:23 AM · Restricted Project, Restricted Project
luke added inline comments to D143090: [LegalizeTypes] Tail call libcalls where possible.
Wed, Feb 1, 9:53 AM · Restricted Project, Restricted Project
luke updated the diff for D143090: [LegalizeTypes] Tail call libcalls where possible.

Update commit message, didn't realize that arc diff overwrote it

Wed, Feb 1, 9:51 AM · Restricted Project, Restricted Project
luke requested review of D143090: [LegalizeTypes] Tail call libcalls where possible.
Wed, Feb 1, 9:48 AM · Restricted Project, Restricted Project

Tue, Jan 31

luke planned changes to D142379: [RISCV] Don't explicitly select X0 in select branch comparisons.
Tue, Jan 31, 2:02 AM · Restricted Project, Restricted Project

Mon, Jan 30

luke committed rGd255e0f99716: [RISCV] Peak through BITCAST in isUsedByReturnOnly (authored by luke).
[RISCV] Peak through BITCAST in isUsedByReturnOnly
Mon, Jan 30, 3:41 PM · Restricted Project, Restricted Project
luke closed D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.
Mon, Jan 30, 3:41 PM · Restricted Project, Restricted Project
luke updated the diff for D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.

Fix commit message typo

Mon, Jan 30, 3:39 PM · Restricted Project, Restricted Project
luke added inline comments to D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.
Mon, Jan 30, 3:38 PM · Restricted Project, Restricted Project
luke retitled D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly from [RISCV] Tailcall some more libcalls on soft-float ABIs to [RISCV] Peak through BITCAST in isUsedByReturnOnly.
Mon, Jan 30, 10:10 AM · Restricted Project, Restricted Project
luke updated the diff for D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.

Address comments, redo description

Mon, Jan 30, 10:09 AM · Restricted Project, Restricted Project
luke added inline comments to D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.
Mon, Jan 30, 10:05 AM · Restricted Project, Restricted Project
luke requested review of D142911: [RISCV] Peak through BITCAST in isUsedByReturnOnly.
Mon, Jan 30, 9:59 AM · Restricted Project, Restricted Project

Fri, Jan 27

luke updated subscribers of D142612: [RISCV][NFC] Add test for register coalescing x0.

@qcolombet Apologies if I'm pinging the wrong person here, I'm looking for some advice on some register coalescer behaviour, let me know if this question is better directed towards someone else.
On RISC-V we're seeing some unexpected extra COPYs being left around with these $x0 registers, which is both a reserved and constant physical register.

Fri, Jan 27, 9:45 AM · Restricted Project, Restricted Project
luke updated the diff for D142612: [RISCV][NFC] Add test for register coalescing x0.

Add another test that should be fixed

Fri, Jan 27, 9:30 AM · Restricted Project, Restricted Project
luke updated the diff for D142612: [RISCV][NFC] Add test for register coalescing x0.

Simplify test

Fri, Jan 27, 4:16 AM · Restricted Project, Restricted Project

Thu, Jan 26

luke added a comment to D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.

Huh, this made compile-time impact even worse: https://llvm-compile-time-tracker.com/compare.php?from=051bcd4f310bbf97781b9ccc95ae2754224a75b2&to=bd36ced96eabd9b4e028778d058dcb56bb6d86ba&stat=instructions

Apparently wouldInstructionBeTriviallyDead is that expensive. Using !isa<PHINode>(I) && !isa<BinaryOperator>(I) && !isa<GetElementPtrInst>(I)) in keeping with the existing code brings it down to this: http://llvm-compile-time-tracker.com/compare.php?from=051bcd4f310bbf97781b9ccc95ae2754224a75b2&to=abae5ca4dc70078006e4e26095215a732be1f330&stat=instructions%3Au

This is still not as free as I had hoped :/

Thu, Jan 26, 3:00 PM · Restricted Project, Restricted Project
luke added inline comments to D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.
Thu, Jan 26, 10:57 AM · Restricted Project, Restricted Project
luke updated the diff for D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.

Address comments

Thu, Jan 26, 10:55 AM · Restricted Project, Restricted Project
luke updated the diff for D142612: [RISCV][NFC] Add test for register coalescing x0.

Fix llc invocation

Thu, Jan 26, 5:42 AM · Restricted Project, Restricted Project
luke committed rG5ccd28873179: [RISCV][NFC] Rename narrowing patterns to use W suffix (authored by luke).
[RISCV][NFC] Rename narrowing patterns to use W suffix
Thu, Jan 26, 3:17 AM · Restricted Project, Restricted Project
luke closed D142553: [RISCV][NFC] Rename narrowing patterns to use W suffix.
Thu, Jan 26, 3:17 AM · Restricted Project, Restricted Project
luke requested review of D142612: [RISCV][NFC] Add test for register coalescing x0.
Thu, Jan 26, 3:01 AM · Restricted Project, Restricted Project

Wed, Jan 25

luke added a comment to D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.

Good idea, I don't have access to a remote on it though. Would someone be able to post a branch with this patch on it?

https://llvm-compile-time-tracker.com/compare.php?from=f84d3dd0fd4ec3be52488e4c29baebb0077b04d4&to=b79315a7071612621ac543cd7595cb487c437a64&stat=instructions:u

Wed, Jan 25, 9:35 AM · Restricted Project, Restricted Project
luke updated the diff for D142553: [RISCV][NFC] Rename narrowing patterns to use W suffix.

Update RISCVInstrInfoVSDPatterns.td too

Wed, Jan 25, 9:15 AM · Restricted Project, Restricted Project
luke added a comment to D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.

It might be a good idea to see the compile-time impact of this with https://llvm-compile-time-tracker.com?

Wed, Jan 25, 9:01 AM · Restricted Project, Restricted Project
luke requested review of D142553: [RISCV][NFC] Rename narrowing patterns to use W suffix.
Wed, Jan 25, 8:20 AM · Restricted Project, Restricted Project
luke added inline comments to D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.
Wed, Jan 25, 8:10 AM · Restricted Project, Restricted Project
luke abandoned D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.

Superseded by D142551

Wed, Jan 25, 8:06 AM · Restricted Project, Restricted Project
luke requested review of D142551: [InstCombine] Teach isDeadPHICycle to look through multiple uses.
Wed, Jan 25, 8:06 AM · Restricted Project, Restricted Project
luke added a comment to D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.

Hm, this feels very hacky. I don't like the idea of adjusting the worklist management for specific patterns.

To suggest a possible alternative, it might be possible to extend isDeadPHICycle(), by making it look through side-effect free instructions, as well as multiple users. This will allow it to remove larger dead phi cycles, so it would not just peel off one phi cycle at a time, but could remove the whole graph at once. (Of course subject to the visitation limit -- with the current one of 16, that would mean we could remove 8 nested phi cycles in one go, which is probably good enough?)

Wed, Jan 25, 1:46 AM · Restricted Project, Restricted Project

Tue, Jan 24

luke added inline comments to D142264: [RISCV] Combine extract_vector_elt followed by VFMV_S_F_VL..
Tue, Jan 24, 8:09 AM · Restricted Project, Restricted Project
luke added a comment to D142199: [Docs] Replace recommonmark with myst-parser.

The flang website (flang.llvm.org) or flang.llvm.org/docs are built from these. Would you know whether there are changes required are there? https://github.com/llvm/llvm-zorg/blob/main/zorg/buildbot/builders/SphinxDocsBuilder.py

Tue, Jan 24, 2:02 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke added a comment to D142199: [Docs] Replace recommonmark with myst-parser.

LGTM. Can you add something to the release notes about this.

Tue, Jan 24, 1:48 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke updated the diff for D142199: [Docs] Replace recommonmark with myst-parser.

Update release notes

Tue, Jan 24, 1:46 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke committed rGf5a644719657: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt (authored by luke).
[RISCV] Combine FP_TO_INT to vfwcvt/fvncvt
Tue, Jan 24, 1:45 AM · Restricted Project, Restricted Project
luke closed D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Tue, Jan 24, 1:45 AM · Restricted Project, Restricted Project

Mon, Jan 23

luke added inline comments to D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Mon, Jan 23, 10:39 AM · Restricted Project, Restricted Project
luke updated the diff for D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.

Remove unnecessary changes

Mon, Jan 23, 10:37 AM · Restricted Project, Restricted Project
luke added inline comments to D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Mon, Jan 23, 10:15 AM · Restricted Project, Restricted Project
luke added a comment to D142379: [RISCV] Don't explicitly select X0 in select branch comparisons.

The codegen changes seem fine to me but perhaps I'm missing something.

Mon, Jan 23, 9:26 AM · Restricted Project, Restricted Project
luke updated the diff for D142379: [RISCV] Don't explicitly select X0 in select branch comparisons.

Mention GitHub issue in commit message

Mon, Jan 23, 9:22 AM · Restricted Project, Restricted Project
luke requested review of D142379: [RISCV] Don't explicitly select X0 in select branch comparisons.
Mon, Jan 23, 9:21 AM · Restricted Project, Restricted Project
luke updated the diff for D142199: [Docs] Replace recommonmark with myst-parser.

Don't suppress misc.highlighting_failure warning

Mon, Jan 23, 5:14 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke added inline comments to D142199: [Docs] Replace recommonmark with myst-parser.
Mon, Jan 23, 4:59 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke added a comment to D142348: [RISCV][Docs] Document code generation for vector extension.

Rendered PDF

Mon, Jan 23, 4:08 AM · Restricted Project, Restricted Project
luke added inline comments to D142348: [RISCV][Docs] Document code generation for vector extension.
Mon, Jan 23, 4:07 AM · Restricted Project, Restricted Project
luke updated the summary of D142348: [RISCV][Docs] Document code generation for vector extension.
Mon, Jan 23, 4:05 AM · Restricted Project, Restricted Project
luke requested review of D142348: [RISCV][Docs] Document code generation for vector extension.
Mon, Jan 23, 3:55 AM · Restricted Project, Restricted Project

Sat, Jan 21

luke added inline comments to D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.
Sat, Jan 21, 5:21 PM · Restricted Project, Restricted Project
luke added inline comments to D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.
Sat, Jan 21, 5:15 PM · Restricted Project, Restricted Project
luke updated the diff for D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.

Remove erroneous include

Sat, Jan 21, 5:12 PM · Restricted Project, Restricted Project
luke requested review of D142293: [InstCombine] Add PHINode operands to worklist on instruction erasure.
Sat, Jan 21, 5:11 PM · Restricted Project, Restricted Project

Fri, Jan 20

luke added inline comments to D142199: [Docs] Replace recommonmark with myst-parser.
Fri, Jan 20, 5:44 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke added inline comments to D142199: [Docs] Replace recommonmark with myst-parser.
Fri, Jan 20, 4:15 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
luke requested review of D142199: [Docs] Replace recommonmark with myst-parser.
Fri, Jan 20, 4:12 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Thu, Jan 19

luke updated the diff for D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.

Address comment

Thu, Jan 19, 8:44 AM · Restricted Project, Restricted Project
luke added inline comments to D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Thu, Jan 19, 8:44 AM · Restricted Project, Restricted Project
luke added inline comments to D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Thu, Jan 19, 5:09 AM · Restricted Project, Restricted Project
luke added inline comments to D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Thu, Jan 19, 3:43 AM · Restricted Project, Restricted Project
luke requested review of D142102: [RISCV] Combine FP_TO_INT to vfwcvt/fvncvt.
Thu, Jan 19, 3:37 AM · Restricted Project, Restricted Project

Wed, Jan 18

luke committed rGa0d80c239840: [RISCV] Generalize performFP_TO_INTCombine to vectors (authored by luke).
[RISCV] Generalize performFP_TO_INTCombine to vectors
Wed, Jan 18, 2:54 AM · Restricted Project, Restricted Project
luke committed rG98b9340c07e5: [RISCV][NFC] Add test cases for rounding vfcvt (authored by luke).
[RISCV][NFC] Add test cases for rounding vfcvt
Wed, Jan 18, 2:54 AM · Restricted Project, Restricted Project
luke closed D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.
Wed, Jan 18, 2:53 AM · Restricted Project, Restricted Project
luke closed D141600: [RISCV][NFC] Add test cases for rounding vfcvt.
Wed, Jan 18, 2:53 AM · Restricted Project, Restricted Project

Mon, Jan 16

luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Only scalarize if scalar type is legal

Mon, Jan 16, 4:48 AM · Restricted Project, Restricted Project
luke added inline comments to D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.
Mon, Jan 16, 4:30 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Split out webassembly test into pre-commit test

Mon, Jan 16, 2:44 AM · Restricted Project, Restricted Project
luke requested review of D141835: [WebAssembly][NFC] Add pre-commit test for D140069.
Mon, Jan 16, 2:42 AM · Restricted Project, Restricted Project

Fri, Jan 13

luke added inline comments to D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.
Fri, Jan 13, 9:20 AM · Restricted Project, Restricted Project
luke updated the diff for D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.

Check for legal types and equal int/float bit sizes

Fri, Jan 13, 9:16 AM · Restricted Project, Restricted Project
luke updated the diff for D141600: [RISCV][NFC] Add test cases for rounding vfcvt.

Add missing checks in half case

Fri, Jan 13, 9:09 AM · Restricted Project, Restricted Project
luke updated the diff for D141600: [RISCV][NFC] Add test cases for rounding vfcvt.

Expand to include halfs and conversions to other integer types

Fri, Jan 13, 8:41 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Update affected tests

Fri, Jan 13, 5:15 AM · Restricted Project, Restricted Project
luke added inline comments to D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.
Fri, Jan 13, 4:57 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Limit to cases where the shuffle is not just a single non-undef mask element

Fri, Jan 13, 4:53 AM · Restricted Project, Restricted Project

Thu, Jan 12

luke updated the summary of D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.
Thu, Jan 12, 4:31 AM · Restricted Project, Restricted Project
luke added inline comments to D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.
Thu, Jan 12, 4:31 AM · Restricted Project, Restricted Project
luke requested review of D141600: [RISCV][NFC] Add test cases for rounding vfcvt.
Thu, Jan 12, 4:28 AM · Restricted Project, Restricted Project
luke updated the diff for D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.

Don't include test case commit

Thu, Jan 12, 4:27 AM · Restricted Project, Restricted Project
luke requested review of D141599: [RISCV] Generalize performFP_TO_INTCombine to vectors.
Thu, Jan 12, 4:25 AM · Restricted Project, Restricted Project
luke added inline comments to D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.
Thu, Jan 12, 2:56 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Update AMDGPU tests with D140537

Thu, Jan 12, 2:56 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Rebase and update comments

Thu, Jan 12, 2:31 AM · Restricted Project, Restricted Project

Wed, Jan 11

luke committed rG6f00e1165776: [RISCV][NFC] Update V spec section numbers (authored by luke).
[RISCV][NFC] Update V spec section numbers
Wed, Jan 11, 2:13 AM · Restricted Project, Restricted Project
luke closed D141382: [RISCV][NFC] Update V spec section numbers.
Wed, Jan 11, 2:13 AM · Restricted Project, Restricted Project

Tue, Jan 10

luke added inline comments to D141382: [RISCV][NFC] Update V spec section numbers.
Tue, Jan 10, 6:42 AM · Restricted Project, Restricted Project
luke updated the summary of D141382: [RISCV][NFC] Update V spec section numbers.
Tue, Jan 10, 6:42 AM · Restricted Project, Restricted Project
luke requested review of D141382: [RISCV][NFC] Update V spec section numbers.
Tue, Jan 10, 6:41 AM · Restricted Project, Restricted Project
luke committed rGf085d089f9db: [UpdateTestChecks] Add wasm64 target (authored by luke).
[UpdateTestChecks] Add wasm64 target
Tue, Jan 10, 2:58 AM · Restricted Project, Restricted Project
luke closed D141130: [UpdateTestChecks] Add wasm64 target.
Tue, Jan 10, 2:58 AM · Restricted Project, Restricted Project

Mon, Jan 9

luke added a comment to D141079: [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))).
Mon, Jan 9, 3:00 AM · Restricted Project, Restricted Project
luke updated the diff for D140069: [DAGCombiner] Scalarize vectorized loads that are splatted.

Address review comments

Mon, Jan 9, 2:54 AM · Restricted Project, Restricted Project

Fri, Jan 6

luke retitled D141079: [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))) from [SelectionDAG] Improve constant folding in the presence of SPLAT_VECTOR to [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))).
Fri, Jan 6, 12:58 PM · Restricted Project, Restricted Project
luke updated the diff for D141079: [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))).

Rework the approach

Fri, Jan 6, 12:57 PM · Restricted Project, Restricted Project
luke added inline comments to D141079: [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))).
Fri, Jan 6, 12:34 PM · Restricted Project, Restricted Project
luke added inline comments to D141079: [DAGCombine] Fold constants across (extract_vector_elt (bitcast (splat_vector))).
Fri, Jan 6, 9:27 AM · Restricted Project, Restricted Project
luke committed rG275658d1af11: [SelectionDAG] Implicitly truncate known bits in SPLAT_VECTOR (authored by luke).
[SelectionDAG] Implicitly truncate known bits in SPLAT_VECTOR
Fri, Jan 6, 7:44 AM · Restricted Project, Restricted Project