VectorAPI and C2 compiler

joserz at linux.ibm.com joserz at linux.ibm.com
Mon Jan 11 21:07:00 UTC 2021


Hello team,

I'm currently working on the VectorAPI support to PowerPC64 but none of my instructions, defined in ppc64.ad, gets executed. I decided to take a look at x86, but again no Vector instructions printed.

Basically, I have a test case like this:
        for (int j = 0; j < 1_000_000; j++) {
            int[] iin128 = {25, -398, 415, Short.MAX_VALUE + 2};
            short[] sout64 = new short[ShortVector.SPECIES_64.length()];

            vectorCastIntToShort(IntVector.SPECIES_128,
                                 ShortVector.SPECIES_64,
                                 iin128, sout64);
        }

That I execute like:
        java -Xcomp -XX:-TieredCompilation -XX:CompileThreshold=1 \
             -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly \
             -XX:+PrintOptoAssembly -XX:+UnlockExperimentalVMOptions \
             -XX:+EnableVectorSupport -XX:+EnableVectorReboxing \
             -XX:+EnableVectorAggressiveReboxing -XX:UseAVX=2 Cast

And expected to see any of `format %{ "vector_* ... %}` instructions, defined in x86.ad, being printed.

Am I missing anything?

Thank you,

Jose R Ziviani


More information about the discuss mailing list