Any objections to moving ObjCARC analysis passes to llvm/Analysis?

Currently these leave in lib/Transforms/ObjCARC even though they are analysis passes. This seems confusing and odd. In particular, Analysis/Passes.h talks about ObjCARCAliasAnalysis. =/

I’d like to just move the analysis headers to live under include/llvm/Analysis and the source under lib/Analysis. This will preclude omitting the ObjC ARC analysis passes from your build of LLVM if you don’t care about them, but considering the number of dead-by-default passes in LLVM, this really doesn’t seem like a significant concern. It also separates the language-specific bits a bit, but I’d rather have things correctly grouped by analysis and transform.

If folks are seriously concerned about this, I could alternatively create an ObjCARC directory under Analysis, but that really seems like overkill. I think the name prefix is probably enough to distinguish things.

Thoughts?
-Chandler

+1 I would mildly prefer a sub-directory if there was more than (say) 3-4 files. Not a strong preference.

Currently these leave in lib/Transforms/ObjCARC even though they are analysis passes. This seems confusing and odd. In particular, Analysis/Passes.h talks about ObjCARCAliasAnalysis. =/

I'd like to just move the analysis headers to live under include/llvm/Analysis and the source under lib/Analysis. This will preclude omitting the ObjC ARC analysis passes from your build of LLVM if you don't care about them, but considering the number of dead-by-default passes in LLVM, this really doesn't seem like a significant concern. It also separates the language-specific bits a bit, but I'd rather have things correctly grouped by analysis and transform.

+1

Makes sense to me too.