aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorMichael Hayes <m.hayes@elec.canterbury.ac.nz>1999-04-02 15:39:55 +0000
committerMichael Hayes <m.hayes@gcc.gnu.org>1999-04-02 15:39:55 +0000
commit6e01bd94f8b53772367ee1860fde5f5c06891873 (patch)
tree6f697a65ccb6286b9ce4a6e8687a4a9f20a8d2fb /gcc/rtl.h
parent8f0327178b2158f8c6ee5996b2bd12c7dde8dbe8 (diff)
downloadgcc-6e01bd94f8b53772367ee1860fde5f5c06891873.zip
gcc-6e01bd94f8b53772367ee1860fde5f5c06891873.tar.gz
gcc-6e01bd94f8b53772367ee1860fde5f5c06891873.tar.bz2
tm.texi (USE_LOAD_POST_DECREMENT, [...]): Document.
* tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT, USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document. (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation. * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT, USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT, USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default definition. * expr.c: (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default definition. From-SVN: r26134
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index f6a87f2..2661934 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -755,6 +755,44 @@ extern char *note_insn_name[];
#define HAVE_POST_DECREMENT 0
#endif
+
+/* Some architectures do not have complete pre/post increment/decrement
+ instruction sets, or only move some modes efficiently. These macros
+ allow us to tune autoincrement generation. */
+
+#ifndef USE_LOAD_POST_INCREMENT
+#define USE_LOAD_POST_INCREMENT(MODE) HAVE_POST_INCREMENT
+#endif
+
+#ifndef USE_LOAD_POST_DECREMENT
+#define USE_LOAD_POST_DECREMENT(MODE) HAVE_POST_DECREMENT
+#endif
+
+#ifndef USE_LOAD_PRE_INCREMENT
+#define USE_LOAD_PRE_INCREMENT(MODE) HAVE_PRE_INCREMENT
+#endif
+
+#ifndef USE_LOAD_PRE_DECREMENT
+#define USE_LOAD_PRE_DECREMENT(MODE) HAVE_PRE_DECREMENT
+#endif
+
+#ifndef USE_STORE_POST_INCREMENT
+#define USE_STORE_POST_INCREMENT(MODE) HAVE_POST_INCREMENT
+#endif
+
+#ifndef USE_STORE_POST_DECREMENT
+#define USE_STORE_POST_DECREMENT(MODE) HAVE_POST_DECREMENT
+#endif
+
+#ifndef USE_STORE_PRE_INCREMENT
+#define USE_STORE_PRE_INCREMENT(MODE) HAVE_PRE_INCREMENT
+#endif
+
+#ifndef USE_STORE_PRE_DECREMENT
+#define USE_STORE_PRE_DECREMENT(MODE) HAVE_PRE_DECREMENT
+#endif
+
+
/* Accessors for RANGE_INFO. */
/* For RANGE_{START,END} notes return the RANGE_START note. */
#define RANGE_INFO_NOTE_START(INSN) (XEXP (INSN, 0))