Page MenuHomePhabricator

emgullufsen (Eric Gullufsen)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 13 2022, 3:13 PM (14 w, 5 d)

Recent Activity

Fri, Aug 26

emgullufsen committed rGeb1e2b39978c: [InstCombine] Canonicalize "and, add", "or, add", "xor, add" (authored by emgullufsen).
[InstCombine] Canonicalize "and, add", "or, add", "xor, add"
Fri, Aug 26, 2:24 PM · Restricted Project, Restricted Project
emgullufsen closed D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 2:23 PM · Restricted Project, Restricted Project
emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Thanks for reverting @reames - when you have a second maybe you could please have a look over this updated patch?

No need. I reverted because of a broken test, if that's been fixed, your LGTM stands.

Fri, Aug 26, 2:18 PM · Restricted Project, Restricted Project
emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Thanks for reverting @reames - when you have a second maybe you could have a look over this updated patch?

Fri, Aug 26, 2:07 PM · Restricted Project, Restricted Project
emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

To confirm, you just missed updating a test, right?
Still LGTM - the extra test diff is an improvement. :)

Fri, Aug 26, 1:28 PM · Restricted Project, Restricted Project
emgullufsen abandoned D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.
Fri, Aug 26, 12:48 PM · Restricted Project, Restricted Project
emgullufsen requested review of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 12:18 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Sorry for the failed test - I ran update_test_checks against test/Transforms/InstCombine/freeze.ll,
and the changes I verified using Alive2 https://alive2.llvm.org/ce/z/4ABLcz

Fri, Aug 26, 12:17 PM · Restricted Project, Restricted Project
emgullufsen added a reviewer for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add": reames.
Fri, Aug 26, 11:33 AM · Restricted Project, Restricted Project
emgullufsen reopened D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 11:28 AM · Restricted Project, Restricted Project
emgullufsen committed rGd2f110c693c8: [InstCombine] Canonicalize "and, add", "or, add", "xor, add" (authored by emgullufsen).
[InstCombine] Canonicalize "and, add", "or, add", "xor, add"
Fri, Aug 26, 11:08 AM · Restricted Project, Restricted Project
emgullufsen closed D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 11:07 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 11:06 AM · Restricted Project, Restricted Project
emgullufsen committed rG2f525cfb7697: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add"… (authored by emgullufsen).
[NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add"…
Fri, Aug 26, 10:57 AM · Restricted Project, Restricted Project
emgullufsen closed D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".
Fri, Aug 26, 10:57 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Fri, Aug 26, 10:03 AM · Restricted Project, Restricted Project
emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

This seems right, but can you verify with Alive2 and add the links to the patch summary.
If I modeled the code correctly, it looks like this for or/xor:
https://alive2.llvm.org/ce/z/BhAeCl
...and needs a small adjustment for 'and'.

Fri, Aug 26, 9:24 AM · Restricted Project, Restricted Project

Aug 24 2022

emgullufsen added a comment to D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.

These NFC variable name changes were in anticipation of functional changes from D131142, but since that patch no longer changes the test in question (llvm/test/Transforms/InstCombine/integer-round-up-pow2-alignment.ll), these NFC changes made by update_test_checks.py separated out here probably can be abandoned.

Aug 24 2022, 9:22 AM · Restricted Project, Restricted Project
emgullufsen added reviewers for D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll: foad, spatel, hiraditya.
Aug 24 2022, 9:20 AM · Restricted Project, Restricted Project
emgullufsen retitled D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll from [NFC][InstCombine] Let update_test_checks change variable names to [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.
Aug 24 2022, 9:15 AM · Restricted Project, Restricted Project
emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

This patch now does not affect integer-round-up-pow2-alignment.ll (since those changes merged via rGf82c55fa082711f520a7359393b483956b69bf08). So, the NFC changes (changes of variable names) that update_test_checks would make don't have to be addressed at this time (I don't think). I did pull those NFC changes to this test out anyway as D132564, but as said I don't think this needs to be messed with just now.

Aug 24 2022, 9:14 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 24 2022, 9:05 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Rebase & Address comments

Aug 24 2022, 9:04 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.
Aug 24 2022, 8:45 AM · Restricted Project, Restricted Project
emgullufsen retitled D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll from [NFC][InstCombine] Run update_test_checks.py against to [NFC][InstCombine] Let update_test_checks change variable names.
Aug 24 2022, 8:45 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 24 2022, 8:06 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".

Address comments (bad hex values in comments for 112 and 15)

Aug 24 2022, 8:03 AM · Restricted Project, Restricted Project
emgullufsen abandoned D132565: [NFC][InstCombine] Baseline tests for canonicalizing "logic op, add".
Aug 24 2022, 8:01 AM · Restricted Project, Restricted Project
emgullufsen requested review of D132565: [NFC][InstCombine] Baseline tests for canonicalizing "logic op, add".
Aug 24 2022, 7:59 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.

changed commit msg

Aug 24 2022, 7:58 AM · Restricted Project, Restricted Project
emgullufsen requested review of D132564: [NFC][InstCombine] Let update_test_checks change variable names of integer-round-up-pow2-allignment.ll.
Aug 24 2022, 7:55 AM · Restricted Project, Restricted Project

Aug 11 2022

emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 11 2022, 8:33 AM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 11 2022, 8:32 AM · Restricted Project, Restricted Project

Aug 10 2022

emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Needed to run update_test_checks.py against add.ll

Aug 10 2022, 4:05 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

clang-format

Aug 10 2022, 1:32 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Added clarifying comment in test

Aug 10 2022, 1:30 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Updated on top of vector tests

Aug 10 2022, 1:20 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".

Added vector tests

Aug 10 2022, 1:19 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 10 2022, 8:00 AM · Restricted Project, Restricted Project

Aug 9 2022

emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 9 2022, 9:41 PM · Restricted Project, Restricted Project

Aug 5 2022

emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Update on top of new negative multiple use tests in and-xor-or.ll

Aug 5 2022, 7:09 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".

Added multiple use negative tests

Aug 5 2022, 7:03 PM · Restricted Project, Restricted Project

Aug 4 2022

emgullufsen added a comment to D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".

I need a few more test cases I'd neglected (multiple use negative case at least) I am realizing, will update patch.

Aug 4 2022, 11:02 AM · Restricted Project, Restricted Project

Aug 3 2022

emgullufsen added a comment to D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

I wasn't sure whether to subsume D130080 or make this revision a child of that one.

Aug 3 2022, 10:51 PM · Restricted Project, Restricted Project
emgullufsen retitled D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add" from [NFC][InstCombine] Add baseline tests for canonicalizing ((x + C1) & C2) --> ((x & C2) + C1) ((x + C1) ^ C2) --> ((x ^ C2) + C1) ((x + C1) | C2) --> ((x | C2) + C1) for suitable constants C1 and C2. to [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".
Aug 3 2022, 10:41 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 3 2022, 10:38 PM · Restricted Project, Restricted Project
emgullufsen retitled D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add" from [InstCombine] to [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 3 2022, 10:37 PM · Restricted Project, Restricted Project
emgullufsen retitled D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add" from [InstCombine] Canonicalize ((x + C1) & C2) --> ((x & C2) + C1) ((x + C1) & C2) --> ((x & C2) + C1) ((x + C1) & C2) --> ((x & C2) + C1) for suitable constants C1 and C2. to [InstCombine] .
Aug 3 2022, 10:36 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".

Hadn't run clang-format

Aug 3 2022, 10:31 PM · Restricted Project, Restricted Project
emgullufsen requested review of D131142: [InstCombine] Canonicalize "and, add", "or, add", "xor, add".
Aug 3 2022, 10:24 PM · Restricted Project, Restricted Project
emgullufsen requested review of D131140: [NFC][InstCombine] Add baseline tests for canonicalizing "and, add", "or, add", "xor, add".
Aug 3 2022, 9:56 PM · Restricted Project, Restricted Project

Jun 19 2022

emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Prefer less IsAnd constructs in matching logic, update test results.

Jun 19 2022, 12:48 PM · Restricted Project, Restricted Project
emgullufsen added inline comments to D127903: [InstCombine] Optimize test for same-sign of values.
Jun 19 2022, 7:53 AM · Restricted Project, Restricted Project
emgullufsen added a comment to D127903: [InstCombine] Optimize test for same-sign of values.

I committed the tests with baseline results, so we have those in place independently of the code change. I then updated the tests to provide a bit more coverage. Please rebase/update after:
feb4b336acc71

Jun 19 2022, 7:51 AM · Restricted Project, Restricted Project

Jun 18 2022

emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Added tests to make sure other sign-bit tests are picked up as well

Jun 18 2022, 5:26 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Added four more negative tests that violate constraints.

Jun 18 2022, 12:33 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Assertions in test CHECK lines now generated via utils/update_test_checks.py

Jun 18 2022, 8:50 AM · Restricted Project, Restricted Project
emgullufsen added a comment to D127903: [InstCombine] Optimize test for same-sign of values.

Oh dang my bad on that - I had actually read in the testing infra guide about those scripts, and really ought to have used them - I'll do so now.

Jun 18 2022, 8:36 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Fixed one more incorrect use of capturing in CHECK line.

Jun 18 2022, 6:45 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Fixed more incorrect use of capture in CHECK line in one test.

Jun 18 2022, 6:41 AM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

A few of the tests contained incorrect syntax in the CHECK lines. They were re-capturing variables (i.e. [[x:%.*]]) instead of matching where needed [[x]].

Jun 18 2022, 6:37 AM · Restricted Project, Restricted Project

Jun 17 2022

emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Not using m_c matchers on first match and added "Negative" tests and tests for commutativity of inputs and compares.

Jun 17 2022, 4:06 PM · Restricted Project, Restricted Project
emgullufsen added inline comments to D127903: [InstCombine] Optimize test for same-sign of values.
Jun 17 2022, 11:00 AM · Restricted Project, Restricted Project
emgullufsen added a comment to D127903: [InstCombine] Optimize test for same-sign of values.

Ah of course - sorry for that - I will submit a new diff for this revision (including suggested changes) against the main branch (not previous diff).

Jun 17 2022, 10:48 AM · Restricted Project, Restricted Project

Jun 16 2022

emgullufsen updated the summary of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 16 2022, 6:39 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 16 2022, 6:37 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 16 2022, 6:36 PM · Restricted Project, Restricted Project
emgullufsen updated the diff for D127903: [InstCombine] Optimize test for same-sign of values.

Updated patch to cover the inverted form as well and wrote 5 more tests.
Trying to ensure we only reduce iff intermediate values have one use only.

Jun 16 2022, 5:50 PM · Restricted Project, Restricted Project

Jun 15 2022

emgullufsen added inline comments to D127903: [InstCombine] Optimize test for same-sign of values.
Jun 15 2022, 3:06 PM · Restricted Project, Restricted Project
emgullufsen added inline comments to D127903: [InstCombine] Optimize test for same-sign of values.
Jun 15 2022, 3:04 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 15 2022, 1:51 PM · Restricted Project, Restricted Project
emgullufsen updated the summary of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 15 2022, 1:39 PM · Restricted Project, Restricted Project
emgullufsen added a comment to D127903: [InstCombine] Optimize test for same-sign of values.

I am in the process of writing more regression tests, but I may need to ask a few questions on that - thank you for your help thus far.

Jun 15 2022, 1:33 PM · Restricted Project, Restricted Project
emgullufsen requested review of D127903: [InstCombine] Optimize test for same-sign of values.
Jun 15 2022, 1:30 PM · Restricted Project, Restricted Project