[ownership] Do some preliminary work for moving OME out of the diagnostics pipeline.

This disables a bunch of passes when ownership is enabled. This will allow me to
keep transparent functions in ossa and skip most of the performance pipeline without
being touched by passes that have not been updated for ownership.

This is important so that we can in -Onone code import transparent functions and
inline them into other ossa functions (you can't inline from ossa => non-ossa).
This commit is contained in:
Michael Gottesman
2019-01-23 22:53:19 -08:00
parent 87b66e79a7
commit d78e83c010
27 changed files with 117 additions and 58 deletions

View File

@@ -344,6 +344,10 @@ public:
void run() override {
auto &Fn = *getFunction();
// FIXME: Update for ownership.
if (Fn.hasOwnership())
return;
// Propagate the elements an of array value to its users.
llvm::SmallVector<ArrayAllocation::GetElementReplacement, 16>
GetElementReplacements;