Page MenuHomePhabricator

chandlerc (Chandler Carruth)Administrator
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 7 2012, 2:54 PM (363 w, 3 d)
Roles
Administrator

Recent Activity

Yesterday

chandlerc added a comment to D63672: Added Delta IR Reduction Tool.

Personally, I'd suggest the name llvm-reduce for the tool.

Mon, Jun 24, 2:29 PM · Restricted Project

Fri, Jun 21

chandlerc accepted D63626: [clang][NewPM] Remove exception handling before loading pgo sample profile data.

LGTM

Fri, Jun 21, 6:24 PM · Restricted Project, Restricted Project
chandlerc added a comment to D63626: [clang][NewPM] Remove exception handling before loading pgo sample profile data.

FWIW, I think we can wait for a bug to be filed or report come in with some functional test case before we change any behavior here.

Fri, Jun 21, 1:21 PM · Restricted Project, Restricted Project

Thu, Jun 20

chandlerc accepted D63174: [clang][NewPM] Add RUNS for tests that produce slightly different IR under new PM.

Eh, this seems close enough now. I'd like a better approach for the x86 builtins, but no idea what it will end up being.

Thu, Jun 20, 7:41 PM · Restricted Project
chandlerc added reviewers for D63626: [clang][NewPM] Remove exception handling before loading pgo sample profile data: davidxl, tejohnson.

See inline comment, but I think we should just drop the testing of the function attribute bit here rather than adjusting the pipeline.

Thu, Jun 20, 7:39 PM · Restricted Project, Restricted Project
chandlerc accepted D63156: [clang][NewPM] Add -fno-experimental-new-pass-manager to tests.

LGTM

Thu, Jun 20, 7:32 PM · Restricted Project, Restricted Project
chandlerc added reviewers for D63637: Do not set an RPATH on statically-linked LLVM executables.: rnk, beanz.

(Will likely need more eyes than just mine -- RPATH is mostly a mystery to me...)

Thu, Jun 20, 7:30 PM · Restricted Project

Wed, Jun 19

chandlerc added a comment to D63156: [clang][NewPM] Add -fno-experimental-new-pass-manager to tests.

just a minor comment on one of these...

Wed, Jun 19, 6:26 PM · Restricted Project, Restricted Project
chandlerc accepted D63580: [clang][NewPM] Do not eliminate available_externally durng `-O2 -flto` runs.

LGTM, again, really nice. Tiny tweak below.

Wed, Jun 19, 5:58 PM · Restricted Project, Restricted Project
chandlerc accepted D63577: [clang][NewPM] Move EntryExitInstrumenterPass to the start of the pipeline.

LGTM, nice!

Wed, Jun 19, 5:57 PM · Restricted Project, Restricted Project

Tue, Jun 18

chandlerc added inline comments to D62888: [NewPM] Port Sancov.
Tue, Jun 18, 7:48 PM · Restricted Project, Restricted Project
chandlerc accepted D62225: [clang][NewPM] Fixing remaining -O0 tests that are broken under new PM.

FWIW, this LGTM. We may want to tweak the behavior around flattening, but that can happen as a follow-up, and this seems to get us to a better state.

Tue, Jun 18, 7:44 PM · Restricted Project, Restricted Project
chandlerc added a comment to D63174: [clang][NewPM] Add RUNS for tests that produce slightly different IR under new PM.

OMG, I'm so sorry, I had no idea that the tests would explode like that... Yeah, I don't think that's useful....

Tue, Jun 18, 7:39 PM · Restricted Project
chandlerc added a comment to D63156: [clang][NewPM] Add -fno-experimental-new-pass-manager to tests.

I did some more digging and found the following differences between PMs for each test, and they seem to all differ and can be fixed for different reasons.

Tue, Jun 18, 7:18 PM · Restricted Project, Restricted Project

Wed, Jun 12

chandlerc accepted D63170: [clang][NewPM] Fix broken -O0 test from missing assumptions.

LGTM. Bit annoying that we need to do this at O0, but fine...

Wed, Jun 12, 8:58 PM · Restricted Project, Restricted Project
chandlerc accepted D63168: [clang][NewPM] Fix split debug test.

Code change LGTM, but again, let's update the test to check both ways.

Wed, Jun 12, 8:58 PM · Restricted Project, Restricted Project
chandlerc added a comment to D63156: [clang][NewPM] Add -fno-experimental-new-pass-manager to tests.

I understand the change to explicitly say -O2. I also understand the change to add an explicit -fno-experimental-new-pass-manager to a RUN line when we have another RUN line that explicitly uses -fexperiemntal-new-pass-manager.

Wed, Jun 12, 8:55 PM · Restricted Project, Restricted Project
chandlerc accepted D63155: [clang][NewPM] Fix broken profile test.

Let's update the test to explicitly run w/ both PMs to make sure this keeps working. LGTM with that change.

Wed, Jun 12, 8:52 PM · Restricted Project, Restricted Project
chandlerc accepted D63153: [clang][NewPM] Fix broken -O0 test from the AlwaysInliner.

Code change LGTM. Can you update at least one of the tests to explicitly run both PMs so that we'll notice if this breaks in some weird way? Feel free to submit with that change.

Wed, Jun 12, 8:52 PM · Restricted Project, Restricted Project
chandlerc added a comment to D63174: [clang][NewPM] Add RUNS for tests that produce slightly different IR under new PM.

This really confused me. We shouldn't be seeing this kind of difference in the new PM.

Wed, Jun 12, 8:52 PM · Restricted Project
chandlerc requested changes to D62888: [NewPM] Port Sancov.

This was a lot easier for me to understand too, thanks. Somewhat minor code changes below.

Wed, Jun 12, 8:19 PM · Restricted Project, Restricted Project

Mon, Jun 10

chandlerc requested changes to D63058: [InlineCost] Fix bug 42084: return the first negative result.

I think this is somewhat the wrong approach.

Mon, Jun 10, 6:08 PM · Restricted Project
chandlerc requested changes to D62225: [clang][NewPM] Fixing remaining -O0 tests that are broken under new PM.

I think this ultimately needs to be split up into smaller patches. A bunch of these things can be landed independently. Here is my first cut at things to split out, each one into its own patch.

Mon, Jun 10, 5:47 PM · Restricted Project, Restricted Project
chandlerc requested changes to D62888: [NewPM] Port Sancov.

I would just change this to have the module pass loop over the functions -- that seems like it'll be much cleaner.

Mon, Jun 10, 5:37 PM · Restricted Project, Restricted Project

Sat, Jun 8

chandlerc accepted D62536: Only passes that preserve MemorySSA must mark it as preserved..

Any chance you can add a test that shows one of the problems where verifying MemorySSA fails because we get a "preserved" copy after a loop pass that doesn't actually preserve it?

Sat, Jun 8, 1:51 AM · Restricted Project

Thu, Jun 6

chandlerc added a comment to D62025: Expand llvm.is.constant earlier.

Joerg points out in IRC that we need control flow pruning to be symmetric w/ true and false.

In that case, I think we need SelectionDAG and FastISel to *reject* lowering llvm.is.constant and add a dedicated lowering pass like we have for lowering atomics. It is needed for the exact same reason as atomics -- to do control flow cleanup after folding these to false.

That pass should be a dedicated pass IMO that *only* folds these intrinsics, and then *only* remove dead code. I don't think this should happen inside another pass or rely on SimplifyCFG (which does way too much). And it should be a codegen pass over the IR, not part of the pass pipeline.

Thu, Jun 6, 6:08 PM · Restricted Project
chandlerc added a comment to D62025: Expand llvm.is.constant earlier.

Joerg points out in IRC that we need control flow pruning to be symmetric w/ true and false.

Thu, Jun 6, 6:06 PM · Restricted Project
chandlerc added a comment to D62025: Expand llvm.is.constant earlier.

(For posterity, this also should be in the implementation of SimplifyInstruction itself, not in the pass. The pass only ever calls that.)

Thu, Jun 6, 5:57 PM · Restricted Project
chandlerc added a comment to D62025: Expand llvm.is.constant earlier.

I think this isn't quite right (if I've understood what it is doing correctly).

Thu, Jun 6, 5:55 PM · Restricted Project

May 22 2019

chandlerc added a comment to D61634: [clang/llvm] Allow efficient implementation of libc's memory functions in C/C++.

Sorry I've been a bit slow to respond here...

May 22 2019, 3:25 AM · Restricted Project, Restricted Project

May 18 2019

chandlerc accepted D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

LGTM

May 18 2019, 2:06 AM · Restricted Project

May 17 2019

chandlerc accepted D61612: [NewPassManager] Add tuning option: ForgetAllSCEVInLoopUnroll [NFC]..

Ok, I'm fine with this going in temporarily while we try to flip this flag acros sthe board (or figure out a heuristic that lets us get the best of both worlds). So, LGTM, but yeah, let's try to remove this too.

May 17 2019, 3:03 PM · Restricted Project
chandlerc accepted D61618: [NewPassManager] Add tuning option: LoopUnrolling [NFC]..

Eh, I'd like long term to have a way of testing this field in LLVM, but I think this is fine for now to unblock the Clang changes and other changes.

May 17 2019, 2:56 PM · Restricted Project
chandlerc accepted D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change].

LGTM

May 17 2019, 2:54 PM · Restricted Project
chandlerc accepted D61955: [SLPVectorizer] Set flag to previous default..

We should get folks to figure out why this regresses them, but making the two PMs behave the same seems fine for now.

May 17 2019, 2:54 PM · Restricted Project
chandlerc accepted D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

One edge case left I think, but otherwise this LGTM. Happy for you to submit with the suggested change and a test case.

May 17 2019, 2:31 PM · Restricted Project

May 15 2019

chandlerc added a comment to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

I think you mentioned that there is already a test case that checks a global initialized with blockaddress? If I've mis-remembered, we should definitely add one and check that it *doesn't* inline (today). We can update it if/when we add support. If it is possible to add one that directly works w/ callbr, that'd be great.

May 15 2019, 7:14 PM · Restricted Project
chandlerc accepted D59981: [SelectionDAGBuilder] Flush PendingExports before creating INLINEASM_BR node for asm goto..

LGTM as long as Eli is ok with the testing arriving after the fact.

May 15 2019, 6:24 PM · Restricted Project

May 10 2019

chandlerc accepted D61799: Factor out redzone ABI checks [NFCI].

SLH bits LGTM.

May 10 2019, 1:39 PM · Restricted Project

May 7 2019

chandlerc added a comment to D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change].

(Sorry for still more comments)

May 7 2019, 4:46 PM · Restricted Project
chandlerc requested changes to D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change].

The file name of the test seems odd? How about vectorize-loops.c? I'd also make it a C test and put it in test/CodeGen instead of a C++ test.

May 7 2019, 4:21 PM · Restricted Project

May 6 2019

chandlerc added a comment to D60833: [MemorySSA] Teach LoopSimplify to preserve MemorySSA..

(To be explicit, this LGTM, just letting George mark it as accepted when he's happy too.)

May 6 2019, 4:43 PM · Restricted Project
chandlerc added a comment to D61612: [NewPassManager] Add tuning option: ForgetAllSCEVInLoopUnroll [NFC]..

This seems... *really* unlikely to be an important tuning flag for library clients. It seems likely added to allow some limited experimentation. Maybe we can just not add it to the new PM?

May 6 2019, 4:31 PM · Restricted Project
chandlerc added a comment to D61620: [NewPassManager] Add tuning option: LoopUnrolling [clang-change].

Same comment as on other Clang patch -- let's update an IR generation test to reflect this?

May 6 2019, 4:18 PM · Restricted Project, Restricted Project
chandlerc added a comment to D61618: [NewPassManager] Add tuning option: LoopUnrolling [NFC]..

Hmm, how should we test that this works?

May 6 2019, 4:18 PM · Restricted Project
chandlerc accepted D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change].

Can you update some Clang IR generation test that uses these flags to run w/ the new PM? It should fail without this and pass with this.

May 6 2019, 4:17 PM · Restricted Project
chandlerc accepted D61616: [NewPassManager] Add tuning option: SLPVectorization [NFC]..

Eric was hoping for some API improvements here as we add more tuning options, but I don't think these need to be sequenced.

May 6 2019, 4:07 PM · Restricted Project
chandlerc accepted D58374: [Clang][NewPM] Don't bail out if the target machine is empty.

LGTM!

May 6 2019, 3:48 PM · Restricted Project

May 4 2019

chandlerc added a comment to D58311: [MemorySSA & LoopPassManager] Enable MemorySSA as loop dependency. Update tests..

One question about a test change and a minor nit pick on comments...

May 4 2019, 3:31 PM · Restricted Project
chandlerc added a comment to D60833: [MemorySSA] Teach LoopSimplify to preserve MemorySSA..

I'm trusting George w/ the MemorySSAUpdater review.

May 4 2019, 3:28 PM · Restricted Project

Apr 29 2019

chandlerc accepted D61284: [AliasAnalysis/NewPassManager] Invalidate AAManager less often..

LGTM, very nice! Thanks for all the work tracking down this subtle case!

Apr 29 2019, 5:31 PM · Restricted Project
chandlerc accepted D61142: Set LoopInterleaved in the PassManagerBuilder..

LGTM, maybe add a comment here to archive some of the reasoning? (IE, that when unrolling is disabled we disable both literal unrolling but also interleaving for historical reasons)

Apr 29 2019, 5:31 PM · Restricted Project

Apr 25 2019

chandlerc committed rGdd0a2e4461a1: Fix r359229 which tried to fix r359159... (authored by chandlerc).
Fix r359229 which tried to fix r359159...
Apr 25 2019, 10:03 PM
chandlerc committed rCXX359275: Fix r359229 which tried to fix r359159....
Fix r359229 which tried to fix r359159...
Apr 25 2019, 10:03 PM
chandlerc committed rL359275: Fix r359229 which tried to fix r359159....
Fix r359229 which tried to fix r359159...
Apr 25 2019, 10:03 PM
chandlerc accepted D61043: [MemorySSA] Invalidate MemorySSA if AA or DT are invalidated..

LGTM

Apr 25 2019, 11:06 AM · Restricted Project
chandlerc accepted D61138: [PGO] Enable InstrProf lowering for Clang PGO instrumentation in the new pass manager.

You might also update one of the instr prof tests to have two RUN lines, one for each pass manager. Feel free to do that (or not) and submit.

Apr 25 2019, 10:12 AM · Restricted Project

Apr 24 2019

chandlerc accepted D61091: Enable LoopVectorization by default..

I like the patch, LGTM.

Apr 24 2019, 5:21 PM · Restricted Project
chandlerc added inline comments to D61091: Enable LoopVectorization by default..
Apr 24 2019, 2:54 PM · Restricted Project

Apr 23 2019

chandlerc added a comment to D61030: [PassManagerBuilder] Add option for interleaved loops, for loop vectorize..

How does this impact use of clang -fno-unroll-loops and clang -fno-loop-vectorize? I'm betting today, -fno-unroll-loops controls the DisableUnrollLoops value, and so people who disable both unrolling and vectorization will be surprised when interleaving now happens.

Apr 23 2019, 5:00 PM · Restricted Project
chandlerc accepted D61043: [MemorySSA] Invalidate MemorySSA if AA or DT are invalidated..

LGTM

Apr 23 2019, 4:57 PM · Restricted Project
chandlerc added a comment to D61043: [MemorySSA] Invalidate MemorySSA if AA or DT are invalidated..

Oh, you can add a test for this by using the new PM and an invalidate<aa> pass or invalidate<domtree>.

Apr 23 2019, 4:57 PM · Restricted Project
chandlerc added inline comments to D61022: [ThinLTO] Pass down opt level to LTO backend and handle -O0 LTO in new PM.
Apr 23 2019, 10:18 AM · Restricted Project, Restricted Project

Apr 22 2019

chandlerc committed rGbbddf21f900a: Revert "Use const DebugLoc&" (authored by chandlerc).
Revert "Use const DebugLoc&"
Apr 22 2019, 6:41 PM
chandlerc committed rL358940: Revert "Use const DebugLoc&".
Revert "Use const DebugLoc&"
Apr 22 2019, 6:40 PM
chandlerc accepted D60832: [MemorySSA] LCSSA preserves MemorySSA..

LGTM

Apr 22 2019, 4:43 PM · Restricted Project
chandlerc accepted D60914: [AliasAnalysis] AAResults preserves AAManager..

LGTM

Apr 22 2019, 4:41 PM · Restricted Project
chandlerc added a comment to D60833: [MemorySSA] Teach LoopSimplify to preserve MemorySSA..

It's not as much the ew-ness that bothers me.
It's that, if MemorySSA is to be preserved and widely used in the loop pass, then this infrastructure change is needed anyway.

The simplifyLoop API is called from a bunch of other *loop* passes. Whenever these are updated, we'll need to teach this API to make the update (the new pass manager will care too)
Following this patch, it will be much easier to just get MemorySSA analysis pass and pass it along to the API that already does the right thing. This same approach saved me a lot of time when I updated the other Utils. If you notice in this patch, the calls to formDedicatedExitBlocks or SplitBlockPredecessors are already doing the right thing.

You're quite right that this is not a requirement to enable MemorySSA in the new pass manager. I am hoping it is not as big of a change to block it, and that it opens up more paths.
If it turns out to be a blocker, I'm happy to split the EnableMSSALoopDependency flag in 2 for the 2 pass managers and flip just one. What do you think?

Apr 22 2019, 4:38 PM · Restricted Project

Apr 19 2019

chandlerc added a comment to D60914: [AliasAnalysis] AAResults preserves AAManager..

You should also update the comments on AAManager to explain this, and further add the (largely already in place) restriction that the registration functions must not be called once the AAManager is run.

Could you please elaborate on this? How/where is this restriction enforced?

Apr 19 2019, 3:10 PM · Restricted Project
chandlerc added a comment to D60914: [AliasAnalysis] AAResults preserves AAManager..

This looks right to me. Some suggestions on comment wording only.

Apr 19 2019, 12:29 PM · Restricted Project

Apr 18 2019

chandlerc added inline comments to D60832: [MemorySSA] LCSSA preserves MemorySSA..
Apr 18 2019, 11:31 PM · Restricted Project
chandlerc committed rGce3f75df1fff: [CallSite removal] Move the legacy PM, call graph, and some inliner code to… (authored by chandlerc).
[CallSite removal] Move the legacy PM, call graph, and some inliner code to…
Apr 18 2019, 10:59 PM
chandlerc committed rL358739: [CallSite removal] Move the legacy PM, call graph, and some inliner.
[CallSite removal] Move the legacy PM, call graph, and some inliner
Apr 18 2019, 10:59 PM
chandlerc closed D60412: [CallSite removal] Move the legacy PM, call graph, and some inliner code to `CallBase`..
Apr 18 2019, 10:59 PM · Restricted Project
chandlerc added a comment to D60833: [MemorySSA] Teach LoopSimplify to preserve MemorySSA..

Simplify patch to preserve MemorySSA in the old pass manager only when the pass is already available (remove *require*).
New pass manager does not preserve it.

Apr 18 2019, 4:40 PM · Restricted Project
chandlerc requested changes to D60832: [MemorySSA] LCSSA preserves MemorySSA..

Mostly questions around the AA manager preservation, see inline.

Apr 18 2019, 4:39 PM · Restricted Project
chandlerc accepted D59723: [NewPassManager] Adding pass tuning options: loop vectorize..

LGTM with comments below addressed. All pretty minor.

Apr 18 2019, 4:30 PM · Restricted Project

Apr 17 2019

chandlerc added a comment to D60814: [PassBuilder] promote pass-pipeline parsing API to public.

Yeah, the array-ref API here is already pretty leaky. It'd be really nice if we could only give the callbacks the necessary APIs here, but not sure its worth building that abstraction. I think the way I'd do it is create a parser type that is only built by the PassBuilder and is passed into the callbacks. It would then have these APIs, etc. It'd also be used internally to implement the main parsing API. Thoughts?

It might be a bit conceptually cleaner, but other than renaming the object from PassBuilder to PassPipelineParser (and internally talking to PassBuilder), what would be the API difference
compared to what is being suggested here?

Apr 17 2019, 10:39 AM · Restricted Project
chandlerc added a comment to D60814: [PassBuilder] promote pass-pipeline parsing API to public.

What is your specific usecase for this? You have a custom PassManager which can contain, e.g., a function pass pipeline?

Right. We are building our own "kinda-SCC" pass manager, which runs inlining-devirtualization iteration doing walk over functions in rather different order than current SCC does.
This pass manager right now accepts at least one function pass pipeline (and we think about adding one more), and I would like to be able to populate this pass manager from -passes.

So, I'm using a module-pipeline parsing callback:

bool parseOurPipeline(StringRef Name, ModulePassManager &PM,
                      ArrayRef<PassBuilder::PipelineElement> InnerPipeline,
                      PassBuilder &PB) {
   if (Name == "our-pass-manager") {
      FunctionPassManager SimplifyPM;
      if (auto Err = PB.parseFunctionPassPipeline(SimplifyPM, InnerPipeline, false, false))
       return false;
     PM.addPass(OurPassManager(std::move(SimplifyPM)));
     return true;
  }
}

and then

PB.registerPipelineParsingCallback(
      [&PB](StringRef Name, ModulePassManager &PM,
          ArrayRef<PassBuilder::PipelineElement> InnerPipeline) {
      return parseOurPipeline(Name, PM, InnerPipeline, PB);
     });

So thats basically a problem of introducing a custom pass manager that can be fully handled by -passes=.

I agree that it looks like exposing implementation detail.
But then, isnt passing ArrayRef<PipelineElement> to pipeline-parsing callback already exposing this implementation detail?

Apr 17 2019, 7:55 AM · Restricted Project
chandlerc requested changes to D59918: [Attributor] Pass infrastructure and fixpoint framework.

It looks like this is a completely new approach to attribute inference compared to the post-order function atters pass?

Apr 17 2019, 3:20 AM · Restricted Project
chandlerc requested changes to D59903: [NFC][FnAttrs] Stress tests for attribute deduction.

Generally really nice. Some suggestions on cleaning up comments and such in the tests.

Apr 17 2019, 3:12 AM · Restricted Project
chandlerc requested changes to D60814: [PassBuilder] promote pass-pipeline parsing API to public.

FWIW, I'm not really a fan of this.

Apr 17 2019, 2:35 AM · Restricted Project

Apr 8 2019

chandlerc added inline comments to D59723: [NewPassManager] Adding pass tuning options: loop vectorize..
Apr 8 2019, 2:25 PM · Restricted Project
chandlerc added a comment to D59723: [NewPassManager] Adding pass tuning options: loop vectorize..

I think the approach here looks really good. Comments below.

Apr 8 2019, 2:17 PM · Restricted Project
chandlerc committed rG4cf5743b7784: Move the builtin headers to use the new license file header. (authored by chandlerc).
Move the builtin headers to use the new license file header.
Apr 8 2019, 1:51 PM
chandlerc committed rC357941: Move the builtin headers to use the new license file header..
Move the builtin headers to use the new license file header.
Apr 8 2019, 1:51 PM
chandlerc committed rL357941: Move the builtin headers to use the new license file header..
Move the builtin headers to use the new license file header.
Apr 8 2019, 1:50 PM
chandlerc closed D60406: Move the builtin headers to use the new license file header..
Apr 8 2019, 1:50 PM · Restricted Project, Restricted Project
chandlerc created D60412: [CallSite removal] Move the legacy PM, call graph, and some inliner code to `CallBase`..
Apr 8 2019, 8:52 AM · Restricted Project
chandlerc created D60406: Move the builtin headers to use the new license file header..
Apr 8 2019, 6:45 AM · Restricted Project, Restricted Project

Apr 4 2019

chandlerc accepted D59898: [LCG] Add aliased functions as LCG roots.

LGTM!

Apr 4 2019, 3:36 PM · Restricted Project

Mar 29 2019

chandlerc requested changes to D59981: [SelectionDAGBuilder] Flush PendingExports before creating INLINEASM_BR node for asm goto..

While I think we should figure out how to test this, we shouldn't wait to land what seems like an important correctness fix on figuring out how to test. So mostly looking for a particular change below.

Mar 29 2019, 12:30 AM · Restricted Project
chandlerc requested changes to D59723: [NewPassManager] Adding pass tuning options: loop vectorize..
Mar 29 2019, 12:24 AM · Restricted Project

Mar 27 2019

chandlerc committed rG923ff550b91e: [NewPM] Fix a nasty bug with analysis invalidation in the new PM. (authored by chandlerc).
[NewPM] Fix a nasty bug with analysis invalidation in the new PM.
Mar 27 2019, 5:52 PM
chandlerc committed rL357137: [NewPM] Fix a nasty bug with analysis invalidation in the new PM..
[NewPM] Fix a nasty bug with analysis invalidation in the new PM.
Mar 27 2019, 5:52 PM
chandlerc closed D59869: [NewPM] Fix a nasty bug with analysis invalidation in the new PM..
Mar 27 2019, 5:52 PM · Restricted Project
chandlerc requested changes to D59898: [LCG] Add aliased functions as LCG roots.

Good catch!

Mar 27 2019, 4:42 PM · Restricted Project
chandlerc added a comment to D59869: [NewPM] Fix a nasty bug with analysis invalidation in the new PM..

Anyways, this patch looks good!

Mar 27 2019, 2:54 PM · Restricted Project
chandlerc added a comment to D59869: [NewPM] Fix a nasty bug with analysis invalidation in the new PM..

This makes complete sense to me. There is currently no way to invalidate an analysis for a specific IRUnit instance only, right? So not preserving an analysis cross-SCC will invalidate it for all?

Mar 27 2019, 10:25 AM · Restricted Project
chandlerc updated the diff for D59869: [NewPM] Fix a nasty bug with analysis invalidation in the new PM..

Fix up the CHECK lines in my new test case.

Mar 27 2019, 12:07 AM · Restricted Project