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).