[LLVMdev] Disable loop unroll pass
Ivan Llopard
ivanllopard at gmail.com
Wed Nov 21 08:31:07 PST 2012
Hi,
We've a target which has hardware support for zero-overhead loops.
Currently, we cannot detect them because the loop unroller is unrolling
them before entering into the codegen. Looking at its implementation, it
seems that it checks if it is profitable to unroll it or not based on
certain parameters.
Given that zero cost loops building is based more or less on the same
constraints that loop unroll pass, I wonder if it is reasonable to add
yet another target hook to prevent loop unrolling (something like
hasZeroOverheadLooping or hasZeroCostLooping) for targets that support
zero-cost looping.
Does Hexagon provides the same loop support? How have you addressed this?
Ivan
More information about the llvm-dev
mailing list