User Details
- User Since
- Sep 1 2020, 7:07 AM (160 w, 6 d)
Aug 25 2023
Jan 6 2023
ping again:)
Dec 21 2022
ping
Dec 19 2022
Let me try to catch your point, the key difference here is loading <8 x i8> cannot appear in a scalar loop and the legality check will ensure that. Thus the vector operand of bitcast must be defined outside the loop.
Dec 18 2022
Dec 17 2022
Test checks will be updated later.
Nov 14 2022
Aug 1 2022
May 19 2022
Mar 11 2022
that seems like a genuinely useful feature that would be blocked by treating the test as valid. This code is just an extreme example of that transformation really (where we can reduce the allocation to 0, presumably because past optimizations have removed all significant uses).
Dec 24 2021
Thanks for your reply!
There's this line in the semantics for llvm.fma:
When specified with the fast-math-flag ‘afn’, the result may be approximated using a less accurate calculation.My reading is the underlying operation must be maintained (i.e. a fused multiply-add)
Dec 22 2021
@RosieSumpter gentle ping: )
Dec 13 2021
@RosieSumpter Thanks for the patch! I'm in question that whether llvm.fma.* should also be considered a valid candidate here. LangRef describes that
If a fused multiply-add is required, the corresponding llvm.fma intrinsic function should be used instead.
Nov 28 2021
The pointee type is meaningless in the IR and will be going away.
Nov 8 2021
Nov 7 2021
@paulwalker-arm Thanks. Would you please take another look if the test looks ok to you now?
Update test.
Nov 5 2021
Oct 14 2021
@lebedev.ri I think the problem is when %0 is negative, the original code gives a definite result while the transformed IR is UB.
Jul 12 2021
Rebase.
Update the comments in invariant-store-vectorization-2.ll.
Address @fhahn 's suggestions.
Jul 10 2021
Jul 9 2021
Correct invariant-store-vectorization-2.ll check lines(the previous version is generated with a version with D104148 code).
Ops... invariant-store-vectorization-2.ll is not in the right status, will update it soon.
Address @fhahn's comments.
Hi @fhahn , to address your comments in D104148, more tests need to be updated here, please take another look, thanks very much!
Jul 7 2021
Updated.
Updated.
Jul 5 2021
Updated the tests. This needs to be merged after D105438.
@fhahn Thanks for your advice. I modified these related tests in D105438. After that is merged, I'll update this revision with one looks cleaner.
Jul 4 2021
ping : )
Jun 27 2021
Ping
Jun 20 2021
Updated previous failed x86 cases.
Jun 19 2021
Jun 18 2021
Jun 16 2021
Jun 15 2021
Jun 13 2021
Added a test case.
Jun 11 2021
Jun 2 2021
LGTM, but please wait for a couple of days for experts in this area to review: )
Jun 1 2021
It fails even if i bump those limits to 0.1M iterations.
This is clearly an infinite combine cycle.
If that's the case, isn't it more reasonable to replace the fatal_error with assert so that only developers sense that?
May 31 2021
May 30 2021
May 19 2021
May 18 2021
May 17 2021
Did a fully scan and modified more files that have the same issue.
May 16 2021
Apr 21 2021
@david-arm Glad to know that. Thank you for the work!
@david-arm Hi David, there's a tiny issue of the commit that the llvm.experimental.stepvector intrinsic is not well indexed in the changes to Langref.rst, and now it resides under llvm.experimental.vector.splice. I guess it's not intended and leave a message here FYI:)
Jan 27 2021
Jan 24 2021
ping
Jan 20 2021
Jan 19 2021
@mkazantsev Could you commit this for me, thanks!
My commit access application has been approved so I'll commit by myself:)
Jan 14 2021
Dec 17 2020
ping
Dec 8 2020
Dec 7 2020
Dec 5 2020
Dec 1 2020
Add a test case.
@lebedev.ri Thanks, will add a test. Besides, the bug fixed in ea7ab5a42cd4 seems to have the same root cause.
Nov 26 2020
@kuhar @lebedev.ri I'm lucky to have a test case which requires exactly 1001 times iteration thus aborts. And would it be better just break out rather than report a fatal error?
Nov 22 2020
Yes, there're similar cases our team have found related to data dependence that may prohibit interchange. And I'd like to spend more time to see if there's a sophisticated solution.
Oct 12 2020
ping
Sep 21 2020
@fhahn Thanks for the suggestions, please take another look.
Sep 17 2020
Sep 2 2020
add a test case