mbox series

[00/46] Remove vinfo_for_stmt etc.

Message ID 87wotlrmen.fsf@arm.com
Headers show
Series Remove vinfo_for_stmt etc. | expand

Message

Richard Sandiford July 24, 2018, 9:52 a.m. UTC
The aim of this series is to:

(a) make the vectoriser refer to statements using its own expanded
    stmt_vec_info rather than the underlying gimple stmt.  This reduces
    the number of stmt lookups from 480 in current sources to under 100.

(b) make the remaining lookups relative the owning vec_info rather than
    to global state.

The original motivation was to make it more natural to have multiple
vec_infos live at once.

The series is a clean-up only in a data structure sense.  It certainly
doesn't make the code prettier, and in the end it only shaves 120 LOC
in total.  But I think it should make it easier to do follow-on clean-ups.

The series was pretty tedious to write to and will be pretty tedious
to review, sorry.

I tested each individual patch on aarch64-linux-gnu and the series as a
whole on aarch64-linux-gnu with SVE, aarch64_be-elf and x86_64-linux-gnu.
I also built and tested at least one target per CPU directory, made sure
that there were no new warnings, and checked for differences in assembly
output for gcc.dg, g++.dg and gcc.c-torture.  There were a couple of
cases in vect-alias-check-* of equality comparisons using the opposite
operand order, which is an unrelated problem.  There were no other
differences.

OK to install?

Thanks,
Richard