aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel@linux.vnet.ibm.com>2016-10-28 12:31:37 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2016-10-28 12:31:37 +0000
commit539405d5541e31914995e5efbd4660ddf382f834 (patch)
tree2c194d85a345839f86cb019c38ef6b0c569752ce /gcc/fold-const.c
parent0dbb19f0f1542f9e61e599cbd25111f5de811929 (diff)
downloadgcc-539405d5541e31914995e5efbd4660ddf382f834.zip
gcc-539405d5541e31914995e5efbd4660ddf382f834.tar.gz
gcc-539405d5541e31914995e5efbd4660ddf382f834.tar.bz2
S/390: Add static OSC breaker if necessary.
This patch adds a magic OSC (operand store compare) break instruction which is necessary if a store is followed closely by a load with same base+indx+displ while either base or index get modified in between. The patch improves several SpecCPU testcases running on IBM z13. gcc/testsuite/ChangeLog: 2016-10-28 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * gcc.target/s390/oscbreak-1.c: New test. gcc/ChangeLog: 2016-10-28 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.c (s390_adjust_loop_scan_osc): New function. (s390_adjust_loops): New function. (s390_reorg): Invoke s390_adjust_loops. * config/s390/s390.md: (UNSPEC_OSC_BREAK): New constant. ("osc_break"): New insn definition. From-SVN: r241644
Diffstat (limited to 'gcc/fold-const.c')
0 files changed, 0 insertions, 0 deletions