aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel@linux.vnet.ibm.com>2017-01-05 10:00:34 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2017-01-05 10:00:34 +0000
commit8597cd335e507057e7df5dcc0c157cbd9a5bcbdd (patch)
tree359ae5f5295cafe8d655cb920cf57715057aa482 /gcc/gcc.c
parent587790e60d22605b9b3aa73e7313cc55a6417c30 (diff)
downloadgcc-8597cd335e507057e7df5dcc0c157cbd9a5bcbdd.zip
gcc-8597cd335e507057e7df5dcc0c157cbd9a5bcbdd.tar.gz
gcc-8597cd335e507057e7df5dcc0c157cbd9a5bcbdd.tar.bz2
S/390: Unroll mvc/xc loop for memset with small constant
lengths. When expanding a memset we emit a loop of MVCs/XCs instructions dealing with 256 byte blocks. This loop used to get unrolled with older GCCs when using constant length operands. GCC lost this ability probably when more of the loop unrolling stuff has been moved to tree level. With this patch the unrolling is done manually when emitting the RTL insns. 2017-01-05 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * gcc.target/s390/memset-1.c: New test. gcc/ChangeLog: 2017-01-05 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.c (s390_expand_setmem): Unroll the loop for small constant length operands. From-SVN: r244097
Diffstat (limited to 'gcc/gcc.c')
0 files changed, 0 insertions, 0 deletions