This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Auto-vectorization with gcj



On May 15, 2005, at 6:07 AM, Andrew Haley wrote:
Test.java:9: note: not vectorized: multiple exits.
Test.java:14: note: not vectorized: multiple exits.
Test.java:7: note: vectorized 0 loops in function.

Is it not possible to use auto-vectorization with gcj until now?

Not as far as I am aware, no. You may be the first person ever to try it.

I don't know why the compiler believes the loops have multiple exits.
If you want to find out, it's time to start looking at dumps.


The multiple exit comes bounds checking (which VRP does not remove still
because we don't pull out a load of the length).

If we add -fno-bounds-checks, we get:
Test.java:7: note: not vectorized: too many BBs in loop.
Test.java:11: note: not vectorized: too many BBs in loop.
Test.java:6: note: vectorized 0 loops in function.

And this is because we have a label in the loop (and the tree CFG
does not remove user labels, maybe setting DECL_ARTIFICIAL on the
labels will fix this fully).

Thanks,
Andrew Pinski


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]