From d32a5f4b52aa1f845c4fb56d4e849d4386299100 Mon Sep 17 00:00:00 2001 From: Bill Schmidt Date: Fri, 28 Jan 2022 11:50:25 -0600 Subject: [PATCH] rs6000: vec_neg built-ins wrongly require POWER8 As the subject states. Fixing this is accomplished by moving the built-ins to the correct stanzas, [altivec] and [vsx]. 2022-01-27 Bill Schmidt gcc/ * config/rs6000/rs6000-builtins.def (NEG_V16QI): Move to [altivec] stanza. (NEG_V4SF): Likewise. (NEG_V4SI): Likewise. (NEG_V8HI): Likewise. (NEG_V2DF): Move to [vsx] stanza. (NEG_V2DI): Likewise. --- gcc/config/rs6000/rs6000-builtins.def | 36 +++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/gcc/config/rs6000/rs6000-builtins.def b/gcc/config/rs6000/rs6000-builtins.def index 221bbc7..296f36e 100644 --- a/gcc/config/rs6000/rs6000-builtins.def +++ b/gcc/config/rs6000/rs6000-builtins.def @@ -410,6 +410,18 @@ const vss __builtin_altivec_nabs_v8hi (vss); NABS_V8HI nabsv8hi2 {} + const vsc __builtin_altivec_neg_v16qi (vsc); + NEG_V16QI negv16qi2 {} + + const vf __builtin_altivec_neg_v4sf (vf); + NEG_V4SF negv4sf2 {} + + const vsi __builtin_altivec_neg_v4si (vsi); + NEG_V4SI negv4si2 {} + + const vss __builtin_altivec_neg_v8hi (vss); + NEG_V8HI negv8hi2 {} + void __builtin_altivec_stvebx (vsc, signed long, void *); STVEBX altivec_stvebx {stvec} @@ -1175,6 +1187,12 @@ const vsll __builtin_altivec_nabs_v2di (vsll); NABS_V2DI nabsv2di2 {} + const vd __builtin_altivec_neg_v2df (vd); + NEG_V2DF negv2df2 {} + + const vsll __builtin_altivec_neg_v2di (vsll); + NEG_V2DI negv2di2 {} + void __builtin_altivec_stvx_v2df (vd, signed long, void *); STVX_V2DF altivec_stvx_v2df {stvec} @@ -2118,24 +2136,6 @@ const vus __builtin_altivec_nand_v8hi_uns (vus, vus); NAND_V8HI_UNS nandv8hi3 {} - const vsc __builtin_altivec_neg_v16qi (vsc); - NEG_V16QI negv16qi2 {} - - const vd __builtin_altivec_neg_v2df (vd); - NEG_V2DF negv2df2 {} - - const vsll __builtin_altivec_neg_v2di (vsll); - NEG_V2DI negv2di2 {} - - const vf __builtin_altivec_neg_v4sf (vf); - NEG_V4SF negv4sf2 {} - - const vsi __builtin_altivec_neg_v4si (vsi); - NEG_V4SI negv4si2 {} - - const vss __builtin_altivec_neg_v8hi (vss); - NEG_V8HI negv8hi2 {} - const vsc __builtin_altivec_orc_v16qi (vsc, vsc); ORC_V16QI orcv16qi3 {} -- 2.7.4