From: Aaron Sawdey Date: Tue, 17 Nov 2020 17:55:01 +0000 (-0500) Subject: Re-enable vector pair memcpy/memmove expansion X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c84add5c13d292b339e90b154587439e4721a8c5;p=gcc.git Re-enable vector pair memcpy/memmove expansion After the MMA opaque mode patch goes in, we can re-enable use of vector pair in the inline expansion of memcpy/memmove. gcc/ * config/rs6000/rs6000.c (rs6000_option_override_internal): Enable vector pair memcpy/memmove expansion. --- diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index bd8205c87f7..d8ac2f0cd2f 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -4117,11 +4117,10 @@ rs6000_option_override_internal (bool global_init_p) if (!(rs6000_isa_flags_explicit & OPTION_MASK_BLOCK_OPS_VECTOR_PAIR)) { - /* When the POImode issues of PR96791 are resolved, then we can - once again enable use of vector pair for memcpy/memmove on - P10 if we have TARGET_MMA. For now we make it disabled by - default for all targets. */ - rs6000_isa_flags &= ~OPTION_MASK_BLOCK_OPS_VECTOR_PAIR; + if (TARGET_MMA && TARGET_EFFICIENT_UNALIGNED_VSX) + rs6000_isa_flags |= OPTION_MASK_BLOCK_OPS_VECTOR_PAIR; + else + rs6000_isa_flags &= ~OPTION_MASK_BLOCK_OPS_VECTOR_PAIR; } /* Use long double size to select the appropriate long double. We use