[Bug tree-optimization/84037] [8 Regression] Speed regression of polyhedron benchmark since r256644
hubicka at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jan 31 11:02:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84037
--- Comment #17 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
We already have
/* This function adjusts the unroll factor based on
the hardware capabilities. For ex, bdver3 has
a loop buffer which makes unrolling of smaller
loops less important. This function decides the
unroll factor using number of memory references
(value 32 is used) as a heuristic. */
static unsigned
ix86_loop_unroll_adjust (unsigned nunroll, struct loop *loop)
which triggers with TARGET_ADJUST_UNROLL
/* X86_TUNE_ADJUST_UNROLL: This enables adjusting the unroll factor based
on hardware capabilities. Bdver3 hardware has a loop buffer which makes
unrolling small loop less important. For, such architectures we adjust
the unroll factor so that the unrolled loop fits the loop buffer. */
DEF_TUNE (X86_TUNE_ADJUST_UNROLL, "adjust_unroll_factor", m_BDVER3 | m_BDVER4)
so perhaps what you propose can be done by making this one more general?
More information about the Gcc-bugs
mailing list