Commit 645eee74 by Aaron Sawdey Committed by Aaron Sawdey

rs6000-string.c (expand_block_clear): Change how we determine if unaligned vsx is ok.

2018-11-28  Aaron Sawdey  <acsawdey@linux.ibm.com>

	* config/rs6000/rs6000-string.c (expand_block_clear): Change how
	we determine if unaligned vsx is ok.

From-SVN: r266599
parent ffe2c055
2018-11-28 Aaron Sawdey <acsawdey@linux.ibm.com>
* config/rs6000/rs6000-string.c (expand_block_clear): Change how
we determine if unaligned vsx is ok.
2018-11-28 Jan Hubicka <jh@suse.cz>
* predict.c (determine_unlikely_bbs): Forward declare; also determine
......@@ -85,14 +85,15 @@ expand_block_clear (rtx operands[])
if (! optimize_size && bytes > 8 * clear_step)
return 0;
bool unaligned_vsx_ok = (bytes >= 32 && TARGET_EFFICIENT_UNALIGNED_VSX);
for (offset = 0; bytes > 0; offset += clear_bytes, bytes -= clear_bytes)
{
machine_mode mode = BLKmode;
rtx dest;
if (TARGET_ALTIVEC
&& ((bytes >= 16 && align >= 128)
|| (bytes >= 32 && TARGET_EFFICIENT_UNALIGNED_VSX)))
&& (bytes >= 16 && (align >= 128 || unaligned_vsx_ok)))
{
clear_bytes = 16;
mode = V4SImode;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment