vect: Extend `vec_init_loop_exit_info' to handle uncounted loops
In its current implementation, the loop vectorizer requires the main
exit be the counting IV exit. With uncounted loops we no longer need
to have any counting IV exits. Furthermore, it is possible to have
reached this stage with malformed loops with no exits at all.
Consequently, we need an approach to handle malformed loops and some
logic to follow when choosing the main exit, when counting IV is no
longer a valid criterion.
For malformed loops, it is sufficient to return NULL, so that we can
reject such loops upon the function return.
In the case of multiple exits and no counting IV exit, we choose the
last one in the loop. This is done so that we continue to have an
empty effective latch.
As a consequence of allowing the main exit to no longer be associated
with IV counting, the old nomenclature of `LOOP_VINFO_IV_EXIT' and
`vec_loop_iv_exit' no longer fully cover the usage of such fields and
accessors. With that in mind, these are modified to replace "IV" for
"MAIN" for these.