From c84add5c13d292b339e90b154587439e4721a8c5 Mon Sep 17 00:00:00 2001 From: Aaron Sawdey Date: Tue, 17 Nov 2020 12:55:01 -0500 Subject: [PATCH] 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. --- gcc/config/rs6000/rs6000.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) 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 -- 2.30.2