public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/meissner/heads/pr96762)] Do not call LXVL/STXVL on 32-bit.
@ 2021-05-27 22:15 Michael Meissner
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Meissner @ 2021-05-27 22:15 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:3849ea3a3518430708939187659bbcded8cccab2

commit 3849ea3a3518430708939187659bbcded8cccab2
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Thu May 27 17:27:26 2021 -0400

    Do not call LXVL/STXVL on 32-bit.
    
    In bug PR target/96762, the code wants to do a block move of a 17 byte
    string literal in -m32 mode.  This involves a shift of the DImode length
    by 56 bits, which is not available in 32-bit.
    
    gcc/
    2021-05-27  Michael Meissner  <meissner@linux.ibm.com>
    
            PR target/96762
            * config/rs6000/rs6000-string.c (expand_block_move): Do not try to
            do LXVL and STXVL on 32-bit.

Diff:
---
 gcc/config/rs6000/rs6000-string.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/rs6000/rs6000-string.c b/gcc/config/rs6000/rs6000-string.c
index cc75ca5848e..f3226e25327 100644
--- a/gcc/config/rs6000/rs6000-string.c
+++ b/gcc/config/rs6000/rs6000-string.c
@@ -2811,7 +2811,7 @@ expand_block_move (rtx operands[], bool might_overlap)
 	  gen_func.mov = gen_vsx_movv2di_64bit;
 	}
       else if (TARGET_BLOCK_OPS_UNALIGNED_VSX
-	       && TARGET_POWER10 && bytes < 16
+	       && TARGET_POWER10 && bytes < 16 && TARGET_POWERPC64
 	       && orig_bytes > 16
 	       && !(bytes == 1 || bytes == 2
 		    || bytes == 4 || bytes == 8)


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [gcc(refs/users/meissner/heads/pr96762)] Do not call LXVL/STXVL on 32-bit.
@ 2021-05-27 21:35 Michael Meissner
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Meissner @ 2021-05-27 21:35 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:7de3d25501fcc04758fb62aea46c2539a4421876

commit 7de3d25501fcc04758fb62aea46c2539a4421876
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Thu May 27 17:27:26 2021 -0400

    Do not call LXVL/STXVL on 32-bit.
    
    In bug PR target/96767, the code wants to do a block move of a 17 byte
    string literal in -m32 mode.  This involves a shift of the DImode length
    by 56 bits, which is not available in 32-bit.
    
    gcc/
    2021-05-27  Michael Meissner  <meissner@linux.ibm.com>
    
            PR target/96767
            * config/rs6000/rs6000-string.c (expand_block_move): Do not try to
            do LXVL and STXVL on 32-bit.

Diff:
---
 gcc/config/rs6000/rs6000-string.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/rs6000/rs6000-string.c b/gcc/config/rs6000/rs6000-string.c
index cc75ca5848e..f3226e25327 100644
--- a/gcc/config/rs6000/rs6000-string.c
+++ b/gcc/config/rs6000/rs6000-string.c
@@ -2811,7 +2811,7 @@ expand_block_move (rtx operands[], bool might_overlap)
 	  gen_func.mov = gen_vsx_movv2di_64bit;
 	}
       else if (TARGET_BLOCK_OPS_UNALIGNED_VSX
-	       && TARGET_POWER10 && bytes < 16
+	       && TARGET_POWER10 && bytes < 16 && TARGET_POWERPC64
 	       && orig_bytes > 16
 	       && !(bytes == 1 || bytes == 2
 		    || bytes == 4 || bytes == 8)


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-05-27 22:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-27 22:15 [gcc(refs/users/meissner/heads/pr96762)] Do not call LXVL/STXVL on 32-bit Michael Meissner
  -- strict thread matches above, loose matches on Subject: below --
2021-05-27 21:35 Michael Meissner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).