aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sh
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1996-04-04 12:12:59 -0800
committerJim Wilson <wilson@gcc.gnu.org>1996-04-04 12:12:59 -0800
commita8d762e1d2c1c7f7940e6573c272c2b0c5dbe249 (patch)
treee4799303ec79d3f24a18b8e2a7264e8d96dc682a /gcc/config/sh
parent7027f90aba308ba343a9218716f2cd749c3b11ce (diff)
downloadgcc-a8d762e1d2c1c7f7940e6573c272c2b0c5dbe249.zip
gcc-a8d762e1d2c1c7f7940e6573c272c2b0c5dbe249.tar.gz
gcc-a8d762e1d2c1c7f7940e6573c272c2b0c5dbe249.tar.bz2
(GIV_SORT_CRITERION): Define.
From-SVN: r11669
Diffstat (limited to 'gcc/config/sh')
-rw-r--r--gcc/config/sh/sh.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index c2e81b4..6309a38 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -1589,5 +1589,13 @@ extern int pragma_interrupt;
/* ??? Define ADJUST_COSTS? */
+/* Since the SH architecture lacks negative address offsets,
+ the givs should be sorted smallest to largest so combine_givs
+ has maximum opportunity to combine givs. */
+#define GIV_SORT_CRITERION(X, Y) \
+ if (GET_CODE ((X)->add_val) == CONST_INT \
+ && GET_CODE ((Y)->add_val) == CONST_INT) \
+ return INTVAL ((X)->add_val) - INTVAL ((Y)->add_val);
+
/* For the sake of libgcc2.c, indicate target supports atexit. */
#define HAVE_ATEXIT