- User Since
- Jan 28 2016, 8:30 AM (217 w, 4 d)
Fri, Mar 20
Tue, Mar 17
LGTM, assuming Matt's concern is addressed.
Wed, Mar 4
I cannot follow all the consequences of adding the landing pad, but this looks a robust solution since it's hard to find appropriate insertion point for s_or_saveexec instruction in the beginning of SI_ELSE constaining block.
Feb 27 2020
Feb 18 2020
Jan 27 2020
Jan 24 2020
Jan 21 2020
Dec 12 2019
Almost LGTM. Do you need those liveins reorderings?
Dec 6 2019
Looks good, but the test would be nice to have.
Nov 26 2019
Nov 19 2019
updated the diff per comment. Used utils/update_llc_test_checks.py tool to update autogenerated test.
Nov 18 2019
added test fix.
Look mostly good, but can you split this change into one that relates to DPP and another that disables asm only instructions?
Oct 25 2019
Oct 23 2019
Oct 16 2019
Oct 15 2019
Oct 14 2019
Oct 10 2019
Oct 2 2019
However it would be nice to have a test that shows benefit. I like the reasoning in the description of this change.
Sorry, I missed your comment about tests.
It would be nice to have a test for this.
Oct 1 2019
Sep 9 2019
Sep 6 2019
Sep 5 2019
Sep 4 2019
Sep 3 2019
Sep 2 2019
llvm-check is now passing, previous failures were irrelevant to this patch.
Aug 30 2019
Added test. There're some failures in GlobalISel tests need to check if its connected.
Aug 29 2019
Aug 23 2019
I'm not an expert in this part of the compiler, but looks good.
Aug 1 2019
LGTM, with tips :)
Jul 22 2019
I'm not sure I can follow all the consequences of this change, but as for tablegen usage it looks good.
Jul 12 2019
Looks good, thank you!
I think we can submit this.
Jul 11 2019
Jul 10 2019
But is it guaranteed that multiple uses by a single instruction will be adjacent in the list?
Sorry, there is a code for returnining unique instr, so we can use the count:
Yea, I thought there is a guaranty on unique instructions, but looking into defusechain_instr_iterator I don't see how this can be true, so let's continue using the set.
Matt, I'm not against using scan limiter, just about aborting the scan after the last use.
Jul 9 2019
I missed r363675 commit and I think the original semantics of isEXECMaskConstantBetweenDefAndUses should be restored: there should be no scan after the last use.
Jul 5 2019
LGTM. Thank you!
Jul 4 2019
Right, this is hard to follow even for me :). 3rd operand is src1_modifiers, you can use a junk value for this to check whether the DPP combiner don't crash and don't combine it.
I think modifiers are checked correctly by the existing code, but can you add a test for e64 encodings into dpp_combine.mir similar to what is under "check for floating point modifiers" comment?
I'm not sure if e64 instructions have modifiers that cannot be encoded into DPP version, need to check. Otherwise looks good, though I would split typo corrections into separate patch and submit without review.
Jun 18 2019
Jun 17 2019
Jun 14 2019
Jun 7 2019
Jun 5 2019
updated diff with per review issues done.
May 31 2019
Hi, this is the parent revision for the https://reviews.llvm.org/D62401.
May 29 2019
- fixed bug when an index was considered in-segment at the segment's end in some cases (lower_bound used instead of upper)
- added fast (binary search) skip for non-containing segments
- improved variable naming
May 28 2019
this implementation contains bug with upper segment boundary and misses opportunity to search on sorted segments too, fixing.
May 27 2019
replaced std::vector with SmallVector, moved out of the loop.
- replaced output std::vector with template output iterator, return bool on found
- added is_sorted assert
- improved description