aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1992-09-19 15:40:40 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1992-09-19 15:40:40 -0400
commitef457bda4a234a0b51446e9d04a7666183ef32db (patch)
treec34849dd85f6db27361680200fd0faca21e21ba2
parent2f622005460f29dea04d53badc03ab3cfee176e2 (diff)
downloadgcc-ef457bda4a234a0b51446e9d04a7666183ef32db.zip
gcc-ef457bda4a234a0b51446e9d04a7666183ef32db.tar.gz
gcc-ef457bda4a234a0b51446e9d04a7666183ef32db.tar.bz2
(PROMOTE_MODE): New macro.
(BRANCH_COST): Increase from 2 to 3. From-SVN: r2167
-rw-r--r--gcc/config/rs6000/rs6000.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index 820ee4f..5cbb363 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -104,6 +104,17 @@ extern int target_flags;
/* target machine storage layout */
+/* Define this macro if it is advisible to hold scalars in registers
+ in a wider mode than that declared by the program. In such cases,
+ the value is constrained to be within the bounds of the declared
+ type, but kept valid in the wider mode. The signedness of the
+ extension may differ from that of the type. */
+
+#define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \
+ if (GET_MODE_CLASS (MODE) == MODE_INT \
+ && GET_MODE_SIZE (MODE) < 4) \
+ (MODE) == SImode;
+
/* Define this if most significant bit is lowest numbered
in instructions that operate on numbered bit-fields. */
/* That is true on RS/6000. */
@@ -336,10 +347,10 @@ extern int target_flags;
/* Specify the cost of a branch insn; roughly the number of extra insns that
should be added to avoid a branch.
- Set this to 2 on the RS/6000 since that is roughly the average cost of an
+ Set this to 3 on the RS/6000 since that is roughly the average cost of an
unscheduled conditional branch. */
-#define BRANCH_COST 2
+#define BRANCH_COST 3
/* Specify the registers used for certain standard purposes.
The values of these macros are register numbers. */