New operations to avoid stoirage load and cache misses while using
small quadword integer constants. This became evident during the
implementation of float128 implementation.
* src/pveclib/vec_int128_ppc.h [int128_const_0_0_3]:
Doxygen subsection for Loading small Quadword constants.
(vec_splat_s128, vec_splat_u128): New int128 operations.
* src/testsuite/arith128_test_i128.c (test_splat_128):
New unit test.
(test_vec_i128): Add unit test to driver.
* src/testsuite/vec_int128_dummy.c (__test_splatisq_16,
__test_splatisq_n1, __test_splatisq_0, __test_splatisq_n1_V1,
__test_splatisq_n1_V0, __test_splatisq_0_V0,
__test_splatisq_signmask_V0, __test_splatisq_15_V2,
__test_splatisq_15_V1, __test_splatisq_15_V0,
__test_splatisq_15, __test_splatisq_127, __test_splatiuq_0,
__test_splatiuq_15, __test_splatiuq_127, __test_splatiuq_128,
__test_splatiuq_128_V0): New compile tests.
* src/testsuite/vec_pwr9_dummy.c (__test_splatisq_16_PWR9,
__test_splatisq_n1_PWR9, __test_splatisq_0_PWR9,
__test_splatisq_15_PWR9, __test_splatisq_127_PWR9,
__test_splatisq_128_PWR9, __test_splatiuq_0_PWR9,
__test_splatiuq_15_PWR9, __test_splatiuq_127_PWR9,
__test_splatiuq_128_PWR9, __test_splatiuq_255_PWR9,
__test_splatiuq_256_PWR9): New compile tests.
New operations to avoid stoirage load and cache misses while using small quadword integer constants. This became evident during the implementation of float128 implementation.
Signed-off-by: Steven Munroe munroesj52@gmail.com