Hi Carl,
on 2023/7/8 04:40, Carl Love wrote:
>
> GCC maintainers:
>
> Ver 5. Removed -compile from the names of the compile only tests. Fixed
> up the reference to the compile file names in the .h file headers.
> Replaced powerpc_vsx_ok with vsx_hw in the run test files. Removed the
> -save-temps from all files. Retested on all of the various platforms
> with no regressions.
>
> Ver 4. Fixed a few typos. Redid the tests to create separate run and
> compile tests.
>
> Ver 3. Added __attribute__ ((noipa)) to the test files. Changed some
> of the scan-assembler-times checks to cover multiple similar
> instructions. Change the function check macro to a macro to generate a
> function to do the test and check the results. Retested on the various
> processor types and BE/LE versions.
>
> Ver 2. Switched to using code macros to generate the call to the
> builtin and test the results. Added in instruction counts for the key
> instruction for the builtin. Moved the tests into an additional
> function call to ensure the compile doesn't replace the builtin call
> code with the statically computed results. The compiler was doing this
> for a few of the simpler tests.
>
> The following patch takes the tests in vsx-vector-6-p7.h, vsx-vector-
> 6-p8.h, vsx-vector-6-p9.h and reorganizes them into a series of smaller
> test files by functionality rather than processor version.
>
> Tested the patch on Power 8 LE/BE, Power 9 LE/BE and Power 10 LE with
> no regresions.
>
> Please let me know if this patch is acceptable for mainline. Thanks.
This patch is okay for trunk, thanks for the patience!
BR,
Kewen
>
>Carl
>
>
>
> -
> rs6000: Update the vsx-vector-6.* tests.
>
> The vsx-vector-6.h file is included into the processor specific test files
> vsx-vector-6.p7.c, vsx-vector-6.p8.c, and vsx-vector-6.p9.c. The .h file
> contains a large number of vsx vector built-in tests. The processor
> specific files contain the number of instructions that the tests are
> expected to generate for that processor. The tests are compile only.
>
> This patch reworks the tests into a series of files for related tests.
> The new tests consist of a runnable test to verify the built-in argument
> types and the functional correctness of each built-in. There is also a
> compile only test that verifies the built-ins generate the expected number
> of instructions for the various built-in tests.
>
> gcc/testsuite/
> * gcc.target/powerpc/vsx-vector-6-func-1op.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-1op-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-1op.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2lop.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2lop-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2lop.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2op.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2op-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-2op.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-3op.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-3op-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-3op.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp-all.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp-all-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp-all.c: New test
> file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp.h: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp-run.c: New test file.
> * gcc.target/powerpc/vsx-vector-6-func-cmp.c: New test file.
> * gcc.target/powerpc/vsx-vector-6.h: Remove test file.
> * gcc.target/powerpc/vsx-vector-6.p7.c: Remove test file.
> * gcc.target/powerpc/vsx-vector-6.p8.c: Remove test file.
> * gcc.target/powerpc/vsx-vector-6.p9.c: Remove test file.
> ---
> .../powerpc/vsx-vector-6-func-1op-run.c | 98
> .../powerpc/vsx-vector-6-func-1op.c | 22 ++
> .../powerpc/vsx-vector-6-func-1op.h | 43
> .../powerpc/vsx-vector-6-func-2lop-run.c | 177 ++
> .../powerpc/vsx-vector-6-func-2lop.c | 14 ++
> .../powerpc/vsx-vector-6-func-2lop.h | 47
> .../powerpc/vsx-vector-6-func-2op-run.c | 96
> .../powerpc/vsx-vector-6-func-2op.c | 21 ++
> .../powerpc/vsx-vector-6-func-2op.h | 42
> .../powerpc/vsx-vector-6-func-3op-run.c | 229 ++
> .../powerpc/vsx-vector-6-func-3op.c | 17 ++
> .../powerpc/vsx-vector-6-func-3op.h | 73 ++
> .../powerpc/vsx-vector-6-func-cmp-all-run.c | 147 +++
> .../powerpc/vsx-vector-6-func-cmp-all.c | 17 ++
> .../powerpc/vsx-vector-6-func-cmp-all.h | 76 ++
>