The logic is guarded by "assert".
Details
Diff Detail
- Build Status
Buildable 8868 Build 8868: arc lint + arc unit
Event Timeline
Tried to add a test. But either need to have
- a testcase that go through all default optimization pipeline, and make a difference with and without the default AA pipeline (tried test/Analysis/BasicAA/invariant_load.ll, but does not work)
- introduce something like -debug-pass-manager to llvm-lto2 so that we can check for passes invoked by llvm-lto2
#2 is beyond the scope of this patch. So I plan to commit the patch as is. I could work on #2 later (maybe after I get AutoFDO + newPM performance back to normal).
Please let me know if the plan does not sound OK, otherwise I'll commit patch before I leave work today.
Thanks,
Dehao
Wondering whether that should be a report_fatal_error instead of llvm_unreachable? (as I did in runNewPMCustomPasses).
[apologies if I'm missing something, I have this code out of cache and my head deep in GVN today].
Also, either 1) or 2) is fine. I'd prefer 2), and I'd really prefer this to be now. If it's too trouble, maybe open a PR and add a FIXME here.
I understand this is blocking a lot of people, so, if Chandler is OK, this can go in as is (with my previous comments addressed).
BTW, thanks for catching this braino!
I've added the test. Please let me know if you want me to split the patch in 2.
Thanks,
Dehao