[LLVMdev] Automatic Vectorization
Renato Golin
rengolin at systemcall.org
Thu Dec 17 07:09:37 PST 2009
Hi all,
I've sent it as a reply to another thread, but it was ill placed.
Anyway, sorry about the duplication, but here it goes.
I've been looking into the loop passes and noticed
we do alias analysis and scalar evolution only, trying to clean up the
loop as far as possible.
I suppose that, if we were to define SCCs, split them into groups and
re-arranging into multiple loops, we would still do it in the IR.
Would that spoil any other pass? What passes should run
before/after such a pass?
I believe that would be a FunctionPass and registered in the
LoopDependencyAnalysis "runOnLoop()", so it can run when such pass is
called by the PassManager. Or should it be a completely separate pass
(VectorizationPass?) so we can control it from a separate command-line
flag?
Any comments appreciated before I dig in.
cheers,
--renato
http://systemcall.org/
Reclaim your digital rights, eliminate DRM, learn more at
http://www.defectivebydesign.org/what_is_drm
More information about the llvm-dev
mailing list