Page MenuHomePhabricator

aeubanks (Arthur Eubanks)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 12 2020, 11:23 AM (32 w, 1 d)

Recent Activity

Yesterday

aeubanks added inline comments to D86988: [Inliner] Run always-inliner in inliner-wrapper.
Thu, Sep 24, 11:31 PM · Restricted Project
aeubanks added a comment to D88138: [NPM] Add target specific hook to add passes for New Pass Manager.

I think I'm still missing how exactly this will fit into the pipeline. As in where is registerPassBuilderCallbacks() going to be called?

Thu, Sep 24, 10:33 PM · Restricted Project
aeubanks added a comment to D87474: Ensure that we don't update Uses after MarkLive.

Yep I'll take a look.

Thu, Sep 24, 9:29 AM · Restricted Project
aeubanks removed a reviewer for D87474: Ensure that we don't update Uses after MarkLive: chandlerc.
Thu, Sep 24, 9:29 AM · Restricted Project
aeubanks added a comment to D88138: [NPM] Add target specific hook to add passes for New Pass Manager.

Makes sense, but do you have an example usage of this?

I wanted to add the equivalent of adjustPassManager for Hexagon. Should I make that change in this same patch itself?

Thu, Sep 24, 9:02 AM · Restricted Project

Wed, Sep 23

aeubanks added a comment to D87951: Enable opt-bisect for the new pass manager.

Hmm, thanks for those pointers. To combine opt-bisect from the two pass managers, maybe there can be an explicit call to copy stateful instrumentation? I think it helps that they are not interleaved, so we could do MPM.run(), then somehow SI.copy_to(CodeGenPasses), then CodeGenPasses.run(). I still need to read that thread too...

Yeah that makes sense. Or maybe have some global counter, since this is mostly a debugging thing, although that seems fairly hacky.

LTOBackend may also need to deal with this, but I don't know if flags like opt-bisect apply there.

Not sure...
I suppose we can think about interactions with the legacy PM in a later patch, this on its own is an improvement.

Wed, Sep 23, 7:53 PM · Restricted Project
aeubanks added a comment to D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

Actually, doing verify-each in StandardInstrumentations seems much nicer. Not sure about how to do debugify-each though, filed https://bugs.llvm.org/show_bug.cgi?id=47633.

If debugify-each has or could be made to have a standalone function interface, could it use StandardInstrumentations?

Wed, Sep 23, 7:27 PM · Restricted Project
aeubanks committed rG714075f9c1ac: [NFC] Remove unnecessary default constructors (authored by aeubanks).
[NFC] Remove unnecessary default constructors
Wed, Sep 23, 6:55 PM
aeubanks added a reverting change for rG111aa4e36614: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass: rG29aaa188480e: Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass".
Wed, Sep 23, 6:48 PM
aeubanks committed rG29aaa188480e: Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass" (authored by aeubanks).
Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass"
Wed, Sep 23, 6:48 PM
aeubanks added a reverting change for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass: rG29aaa188480e: Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass".
Wed, Sep 23, 6:47 PM · Restricted Project
aeubanks added a comment to D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

Actually, doing verify-each in StandardInstrumentations seems much nicer. Not sure about how to do debugify-each though, filed https://bugs.llvm.org/show_bug.cgi?id=47633.

Wed, Sep 23, 6:42 PM · Restricted Project
aeubanks added a comment to D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

Turns out this doesn't actually work as intended...
The callbacks need to be done at the addPass() level, or else something like 'default<O3>' only runs the callbacks once, even though it adds a bunch of passes. Will probably revert once I come up with something better.

Wed, Sep 23, 5:23 PM · Restricted Project
aeubanks added a reviewer for D88138: [NPM] Add target specific hook to add passes for New Pass Manager: ychen.
Wed, Sep 23, 3:32 PM · Restricted Project
aeubanks added a comment to D88138: [NPM] Add target specific hook to add passes for New Pass Manager.

Makes sense, but do you have an example usage of this?

Wed, Sep 23, 3:32 PM · Restricted Project
aeubanks committed rG111aa4e36614: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass (authored by aeubanks).
[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass
Wed, Sep 23, 3:29 PM
aeubanks closed D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.
Wed, Sep 23, 3:28 PM · Restricted Project
aeubanks committed rG6b1ce83a1238: [NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass (authored by aeubanks).
[NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass
Wed, Sep 23, 3:24 PM
aeubanks closed D87798: [NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass.
Wed, Sep 23, 3:24 PM · Restricted Project
aeubanks committed rG6700b9de1637: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency (authored by aeubanks).
[NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency
Wed, Sep 23, 3:21 PM
aeubanks closed D88128: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency.
Wed, Sep 23, 3:20 PM · Restricted Project
aeubanks requested review of D88187: [test][InstCombine][NewPM] Fix InstCombine tests under NPM.
Wed, Sep 23, 3:16 PM · Restricted Project
aeubanks committed rG11a75e6c92c9: [gn build] Allow option to build with asan/tsan/ubsan (authored by aeubanks).
[gn build] Allow option to build with asan/tsan/ubsan
Wed, Sep 23, 11:25 AM
aeubanks closed D88056: [gn build] Allow option to build with asan/tsan/ubsan.
Wed, Sep 23, 11:25 AM · Restricted Project

Tue, Sep 22

aeubanks committed rG2d0de5f9a4c5: [test][NewPM] Clean up ScalarEvolution tests to work under NPM (authored by aeubanks).
[test][NewPM] Clean up ScalarEvolution tests to work under NPM
Tue, Sep 22, 7:31 PM
aeubanks committed rGd6746ecb73c3: [test][NewPM] Fix update-scev.ll under NPM (authored by aeubanks).
[test][NewPM] Fix update-scev.ll under NPM
Tue, Sep 22, 7:27 PM
aeubanks retitled D88128: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency from [NewPM][MSSA] Enable MSSA when -enable-mssa-loop-dependency=true to [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency.
Tue, Sep 22, 7:22 PM · Restricted Project
aeubanks updated the diff for D88128: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency.

instead, just fix all 6 tests failing because of -enable-mssa-loop-dependency

Tue, Sep 22, 7:22 PM · Restricted Project
aeubanks added a comment to D86970: [IRSim] Adding IRSimilarityCandidate that contains a region of IRInstructionData.

ASan to the rescue:

Tue, Sep 22, 7:13 PM · Restricted Project
aeubanks added a comment to D86970: [IRSim] Adding IRSimilarityCandidate that contains a region of IRInstructionData.

I believe this is causing issues in Windows builds, e.g. http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win/builds/25705 and hangs in http://45.33.8.238/win/summary.html.
I'm seeing a hang locally:
$ ./build/debug/obj/llvm/unittests/Analysis/AnalysisTests.exe --gtest_filter='*IRSimilarityCandidate.IdenticalWithDebug*'
Note: Google Test filter = *IRSimilarityCandidate.IdenticalWithDebug*
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from IRSimilarityCandidate
[ RUN ] IRSimilarityCandidate.IdenticalWithDebug
warning: ignoring debug info with an invalid version (0) in <string>

Tue, Sep 22, 7:00 PM · Restricted Project
aeubanks added a comment to D88128: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency.

this causes some tests to fail, let me fix those up

Tue, Sep 22, 6:42 PM · Restricted Project
aeubanks requested review of D88128: [NewPM][MSSA] Fix failures under NPM due to -enable-mssa-loop-dependency.
Tue, Sep 22, 6:36 PM · Restricted Project
aeubanks updated the diff for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

add comment

Tue, Sep 22, 6:08 PM · Restricted Project
aeubanks committed rG61ac58e10ae1: [NewPM] Pin tests with -debug-pass to legacy PM (authored by aeubanks).
[NewPM] Pin tests with -debug-pass to legacy PM
Tue, Sep 22, 6:06 PM
aeubanks closed D87945: [NewPM] Pin tests with -debug-pass to legacy PM.
Tue, Sep 22, 6:06 PM · Restricted Project
aeubanks added inline comments to D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.
Tue, Sep 22, 5:24 PM · Restricted Project
aeubanks updated the diff for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

rename

Tue, Sep 22, 5:16 PM · Restricted Project
aeubanks requested review of D88118: [test][NewPM] Make dead-uses.ll work under NPM.
Tue, Sep 22, 3:28 PM · Restricted Project
aeubanks committed rGe16d10b7535a: [test][NewPM] Pin do-nothing-intrinsic.ll to legacy PM (authored by aeubanks).
[test][NewPM] Pin do-nothing-intrinsic.ll to legacy PM
Tue, Sep 22, 11:35 AM
aeubanks committed rGa5141b83f1f1: [LoopInfo][NewPM] Fix tests in Analysis/LoopInfo under NPM (authored by aeubanks).
[LoopInfo][NewPM] Fix tests in Analysis/LoopInfo under NPM
Tue, Sep 22, 11:31 AM
aeubanks added reviewers for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass: ychen, asbirlea.
Tue, Sep 22, 11:13 AM · Restricted Project
aeubanks updated the diff for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

small comment change

Tue, Sep 22, 11:12 AM · Restricted Project
aeubanks updated the diff for D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.

update comment
rename

Tue, Sep 22, 11:08 AM · Restricted Project
aeubanks requested review of D88107: [NewPM] Add callbacks to PassBuilder to run before/after parsing a pass.
Tue, Sep 22, 11:06 AM · Restricted Project
aeubanks committed rGbe2158bdccda: [DI][ASan][NewPM] Fix some DebugInfo ASan tests under NPM (authored by aeubanks).
[DI][ASan][NewPM] Fix some DebugInfo ASan tests under NPM
Tue, Sep 22, 8:29 AM
aeubanks committed rGa031ef6f3ab4: [GVNSink][NewPM] Add GVNSinkPass to PassRegistry.def (authored by aeubanks).
[GVNSink][NewPM] Add GVNSinkPass to PassRegistry.def
Tue, Sep 22, 8:24 AM
aeubanks added a comment to D87625: [PruneEH][NewPM] Port prune-eh to NPM.

asbirlea, you mentioned offline that there were passes that replaced this in the NPM and that this shouldn't be ported, do you know what those are so I can put them in the description of another change pinning tests to the legacy PM?

Tue, Sep 22, 7:57 AM · Restricted Project

Mon, Sep 21

aeubanks updated the diff for D86988: [Inliner] Run always-inliner in inliner-wrapper.

add option to disable adding AlwaysInlinerPass

Mon, Sep 21, 10:12 PM · Restricted Project
aeubanks committed rG3bf703fb6d55: [AlwaysInliner] Emit optimization remarks (authored by aeubanks).
[AlwaysInliner] Emit optimization remarks
Mon, Sep 21, 10:10 PM
aeubanks closed D88067: [AlwaysInliner] Emit optimization remarks.
Mon, Sep 21, 10:10 PM · Restricted Project
aeubanks updated the diff for D88067: [AlwaysInliner] Emit optimization remarks.

add assertion reason string

Mon, Sep 21, 9:46 PM · Restricted Project
aeubanks added a comment to D86988: [Inliner] Run always-inliner in inliner-wrapper.

Thanks!
I discovered that some tests regarding optimization remarks were failing since AlwaysInlinerPass didn't emit optimization remarks, separated that out into https://reviews.llvm.org/D88067.

Mon, Sep 21, 9:28 PM · Restricted Project
aeubanks requested review of D88067: [AlwaysInliner] Emit optimization remarks.
Mon, Sep 21, 9:27 PM · Restricted Project
aeubanks added inline comments to D87957: [LoopReroll][NewPM] Port -loop-reroll to NPM.
Mon, Sep 21, 6:36 PM · Restricted Project
aeubanks committed rG89df0fda1767: [UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM (authored by aeubanks).
[UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM
Mon, Sep 21, 6:09 PM
aeubanks closed D88058: [UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM.
Mon, Sep 21, 6:09 PM · Restricted Project
aeubanks committed rG9db0c572c1fc: [Delinearization][NewPM] Port delinearization to NPM (authored by aeubanks).
[Delinearization][NewPM] Port delinearization to NPM
Mon, Sep 21, 6:00 PM
aeubanks closed D87741: [Delinearization][NewPM] Port delinearization to NPM.
Mon, Sep 21, 6:00 PM · Restricted Project
aeubanks added inline comments to D87741: [Delinearization][NewPM] Port delinearization to NPM.
Mon, Sep 21, 5:59 PM · Restricted Project
aeubanks updated the diff for D87741: [Delinearization][NewPM] Port delinearization to NPM.

rename

Mon, Sep 21, 5:58 PM · Restricted Project
aeubanks committed rG84a8ca1e6ce1: [NewPM] Pin -lazy-branch-prob and -lazy-block-freq tests to legacy PM (authored by aeubanks).
[NewPM] Pin -lazy-branch-prob and -lazy-block-freq tests to legacy PM
Mon, Sep 21, 5:52 PM
aeubanks closed D87857: [NewPM] Pin -lazy-branch-prob and -lazy-block-freq tests to legacy PM.
Mon, Sep 21, 5:52 PM · Restricted Project
aeubanks updated the diff for D87945: [NewPM] Pin tests with -debug-pass to legacy PM.

add NPM CHECK lines for phi-values-usage.ll
alias-analysis-uses.ll doesn't really seem to be testing anything that would make sense in the NPM

Mon, Sep 21, 5:48 PM · Restricted Project
aeubanks abandoned D87734: [UnifyLoopExits][NewPM] Port unify-loop-exits to NPM.
Mon, Sep 21, 4:54 PM · Restricted Project
aeubanks added a comment to D87734: [UnifyLoopExits][NewPM] Port unify-loop-exits to NPM.

I don't think this should be ported to the NPM.

Mon, Sep 21, 4:54 PM · Restricted Project
aeubanks requested review of D88058: [UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM.
Mon, Sep 21, 4:53 PM · Restricted Project
aeubanks added a comment to D88056: [gn build] Allow option to build with asan/tsan/ubsan.

I got asan to fire on some out of bounds stuff with this change, but couldn't get ubsan to trigger on integer overflow for some reason. -fsanitize=undefined is in the ninja files, so maybe I just didn't trip it in the right way.

I assume you are asking about the same code which triggers asan and you expect some ubsan report there.
Never mind if the question was about -fsanitize=signed-integer-overflow

Mon, Sep 21, 4:47 PM · Restricted Project
aeubanks committed rG44b1643d1775: [NewPM] Support -disable-simplify-libcall/-disable-builtin in NPM opt (authored by aeubanks).
[NewPM] Support -disable-simplify-libcall/-disable-builtin in NPM opt
Mon, Sep 21, 4:39 PM
aeubanks closed D87932: [NewPM] Support -disable-simplify-libcall/-disable-builtin in NPM opt.
Mon, Sep 21, 4:38 PM · Restricted Project
aeubanks committed rG1747f7776403: [SimplifyCFG] Override options in default constructor (authored by aeubanks).
[SimplifyCFG] Override options in default constructor
Mon, Sep 21, 4:33 PM
aeubanks closed D87718: [SimplifyCFG] Override options in default constructor.
Mon, Sep 21, 4:33 PM · Restricted Project
aeubanks added a comment to D88056: [gn build] Allow option to build with asan/tsan/ubsan.

I got asan to fire on some out of bounds stuff with this change, but couldn't get ubsan to trigger on integer overflow for some reason. -fsanitize=undefined is in the ninja files, so maybe I just didn't trip it in the right way.

Mon, Sep 21, 4:31 PM · Restricted Project
aeubanks added reviewers for D88056: [gn build] Allow option to build with asan/tsan/ubsan: thakis, rnk, hans.
Mon, Sep 21, 4:30 PM · Restricted Project
aeubanks updated the diff for D88056: [gn build] Allow option to build with asan/tsan/ubsan.

format

Mon, Sep 21, 4:29 PM · Restricted Project
aeubanks requested review of D88056: [gn build] Allow option to build with asan/tsan/ubsan.
Mon, Sep 21, 4:29 PM · Restricted Project
aeubanks committed rGf4f7df037e71: [DIE] Remove DeadInstEliminationPass (authored by aeubanks).
[DIE] Remove DeadInstEliminationPass
Mon, Sep 21, 12:12 PM
aeubanks closed D87933: [DIE] Remove DeadInstEliminationPass.
Mon, Sep 21, 12:12 PM · Restricted Project
aeubanks added a comment to D87933: [DIE] Remove DeadInstEliminationPass.

http://lists.llvm.org/pipermail/llvm-dev/2020-September/145187.html for more agreement of this patch.

Mon, Sep 21, 12:08 PM · Restricted Project
aeubanks added a comment to D86988: [Inliner] Run always-inliner in inliner-wrapper.

Any suggestions on how to fix this? Add an alwaysinline phase in InlinerPass that runs before the rest of inlining?

Mon, Sep 21, 11:09 AM · Restricted Project
aeubanks added inline comments to D87806: [ObjCARC][NewPM] Port objc-arc-contract to NPM.
Mon, Sep 21, 11:07 AM · Restricted Project
aeubanks committed rG746a2c377565: [ObjCARC] Initialize return value (authored by aeubanks).
[ObjCARC] Initialize return value
Mon, Sep 21, 11:06 AM
aeubanks committed rG024979b7b657: [ObjCARC][NewPM] Port objc-arc-contract to NPM (authored by aeubanks).
[ObjCARC][NewPM] Port objc-arc-contract to NPM
Mon, Sep 21, 9:41 AM
aeubanks closed D87806: [ObjCARC][NewPM] Port objc-arc-contract to NPM.
Mon, Sep 21, 9:41 AM · Restricted Project
aeubanks added inline comments to D87798: [NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass.
Mon, Sep 21, 9:35 AM · Restricted Project
aeubanks updated the diff for D87798: [NewPM][CGSCC] Handle newly added functions in updateCGAndAnalysisManagerForPass.

rebase
remove braces

Mon, Sep 21, 9:31 AM · Restricted Project
aeubanks accepted D87923: [MS] On x86_32, pass overaligned, non-copyable arguments indirectly.

lgtm

Mon, Sep 21, 9:24 AM · Restricted Project
aeubanks committed rG5249e6f24876: [LoopSimplifyCFG][NewPM] Rename simplify-cfg -> loop-simplifycfg (authored by aeubanks).
[LoopSimplifyCFG][NewPM] Rename simplify-cfg -> loop-simplifycfg
Mon, Sep 21, 8:27 AM
aeubanks closed D87948: [LoopSimplifyCFG][NewPM] Rename simplify-cfg -> loop-simplifycfg.
Mon, Sep 21, 8:27 AM · Restricted Project
aeubanks added a comment to D87806: [ObjCARC][NewPM] Port objc-arc-contract to NPM.

Patch looks good to me, but do you have to change anything to fix the pre-merge check test failure?

Mon, Sep 21, 8:21 AM · Restricted Project

Fri, Sep 18

aeubanks added a comment to D87951: Enable opt-bisect for the new pass manager.

One of the issues raised in http://lists.llvm.org/pipermail/llvm-dev/2018-September/126477.html was that we'd have to somehow thread the -opt-bisect-limit through two different pass managers. If you look in BackendUtil.cpp's EmitAssemblyHelper::EmitAssemblyWithNewPassManager(), there's a NPM for the optimization pipeline, then a legacy PM for the codegen pipeline. OptBisect.rst says that you can use -opt-bisect-limit through clang -mllvm -opt-bisect-limit=, and I don't think that would properly work with this implementation since the codegen pipeline would restart -opt-bisect-limit.

Fri, Sep 18, 10:33 PM · Restricted Project
aeubanks added reviewers for D87951: Enable opt-bisect for the new pass manager: ychen, asbirlea.
Fri, Sep 18, 10:20 PM · Restricted Project
aeubanks requested review of D87957: [LoopReroll][NewPM] Port -loop-reroll to NPM.
Fri, Sep 18, 5:29 PM · Restricted Project
aeubanks committed rG7c10129f5a21: [test][InstrProf] Fix always_inline.ll under NPM (authored by aeubanks).
[test][InstrProf] Fix always_inline.ll under NPM
Fri, Sep 18, 2:53 PM
aeubanks closed D87922: [test][InstrProf] Fix always_inline.ll under NPM.
Fri, Sep 18, 2:52 PM · Restricted Project
aeubanks requested review of D87948: [LoopSimplifyCFG][NewPM] Rename simplify-cfg -> loop-simplifycfg.
Fri, Sep 18, 2:50 PM · Restricted Project
aeubanks requested review of D87945: [NewPM] Pin tests with -debug-pass to legacy PM.
Fri, Sep 18, 2:29 PM · Restricted Project
aeubanks added reviewers for D87933: [DIE] Remove DeadInstEliminationPass: jdoerfert, asbirlea, ychen.
Fri, Sep 18, 2:25 PM · Restricted Project
aeubanks added inline comments to D52367: Remove address taken, add optnone.
Fri, Sep 18, 1:19 PM · Restricted Project
aeubanks updated the diff for D87933: [DIE] Remove DeadInstEliminationPass.

Add back comment

Fri, Sep 18, 1:05 PM · Restricted Project
aeubanks requested review of D87933: [DIE] Remove DeadInstEliminationPass.
Fri, Sep 18, 1:02 PM · Restricted Project