diff options
author | Andreas Krebbel <Andreas.Krebbel@de.ibm.com> | 2012-01-26 10:04:43 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2012-01-26 10:04:43 +0000 |
commit | 3d427cc1c8a0618874d8826acc1da7b392266081 (patch) | |
tree | 3845fc40ddfc591db5e9a6054579c807a2ac7c89 /gcc/config | |
parent | 2887732181ebf03ccc8d04521207b38437183cd9 (diff) | |
download | gcc-3d427cc1c8a0618874d8826acc1da7b392266081.tar.gz |
s390.h: Make BRANCH_COST an option.
2012-01-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.h: Make BRANCH_COST an option.
* config/s390/s390.opt: New option -mbranch-cost.
2012-01-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.dg/pr46309.c: Set branch-cost to 2 for s390 and s390x.
* gcc.dg/pr44194-1.c: Disable since s390 returns structs always in
memory.
* gfortran.dg/reassoc_4.f: Force max-completely-peeled-insns to
the default value for s390 and s390x.
From-SVN: r183555
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/s390/s390.h | 2 | ||||
-rw-r--r-- | gcc/config/s390/s390.opt | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/config/s390/s390.h b/gcc/config/s390/s390.h index afd22ad883b..edc6399789e 100644 --- a/gcc/config/s390/s390.h +++ b/gcc/config/s390/s390.h @@ -722,7 +722,7 @@ do { \ /* A C expression for the cost of a branch instruction. A value of 1 is the default; other values are interpreted relative to that. */ -#define BRANCH_COST(speed_p, predictable_p) 1 +#define BRANCH_COST(speed_p, predictable_p) s390_branch_cost /* Nonzero if access to memory by bytes is slow and undesirable. */ #define SLOW_BYTE_ACCESS 1 diff --git a/gcc/config/s390/s390.opt b/gcc/config/s390/s390.opt index 6ce32dc9c9e..51b395ee99d 100644 --- a/gcc/config/s390/s390.opt +++ b/gcc/config/s390/s390.opt @@ -140,3 +140,9 @@ Warn if a single function's framesize exceeds the given framesize mzarch Target Report RejectNegative Negative(mesa) Mask(ZARCH) z/Architecture + +mbranch-cost= +Target Report Joined RejectNegative UInteger Var(s390_branch_cost) Init(1) +Set the branch costs for conditional branch instructions. Reasonable +values are small, non-negative integers. The default branch cost is +1. |