User Details
- User Since
- Sep 2 2023, 2:39 PM (13 w, 2 d)
Sep 14 2023
Can any one review this patch
Sep 8 2023
// zext i1 X + zext i1 Y != 0 --> or i1 X, Y
https://alive2.llvm.org/ce/z/Rg3mm7
Sep 7 2023
// zext i1 X + zext i1 Y == 0 --> !(or i1 X, Y):
https://alive2.llvm.org/ce/z/Wfs9BS
Ok, I will.
Yes, But I am working on the InstCombine patch as you know.
I don't mind working on as many patches as possible. I want to understand LLVM internals.
But I have some personal problems these days, but I can still work. If you don't mind I can work on
bugs at my own pace assign me to a bug and I will work on it.
Sep 6 2023
Mohamed Atef <mohamedatef1698@gmail.com >
Sep 5 2023
In fact, I found these tests in with_overflow.ll the first test. and I added it but I don't know why the code failed. even after rebasing the tests fail. and the tests pass if I remove the conditions.
@RKSimon Hi I don't fully understand the testing infrastructure. I think I need some help.
for the following test:
Sep 4 2023
What about the test coverage for the rest of the functions?
You could investigate how InstCombine handles these cases - look inside llvm-project\llvm\test\Transforms\InstCombine for smul.overflow tests - you could try disabling the "SignBits == BitWidth + 1" handling in ValueTracking.cpp and then see which tests change/fail with ninja check-llvm-transforms-instcombine - you might then be able to convert some of those to combine-mulo.ll / xmulo.ll
I think I will try this now
As I am a complete beginner with LLVM how can write tests? Is there any tutorial or example?
I will update the patch and upload it now
I already did this.
Sep 3 2023
@RKSimon I noticed that people add tests before code changes, why?
Can you help me with the tests? I really worked hard to understand how to write one, but no results.
I used git blame on SelectionDAG.cpp and DAGCombiner.cpp and found that tests are in llvm/test/CodeGen/X86/xaluo.ll does this mean that I should modify xaluo.ll and xmulo.ll? am I even on the right track?
Why after the modification and before adding tests make check-llvm-codegen fails in or-with-overflow.ll and vec_smulo.ll
I discovered I should modify xmulo.ll, vec_smulo.ll and xaluo.ll.