summaryrefslogtreecommitdiff
path: root/gcc/machmode.def
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-07-16 00:28:20 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-07-16 00:28:20 +0000
commitff5decbb58fc6dbc921423e4b5e6aee084eebe81 (patch)
tree3979093e16abc21060c0838e4098170a76535cc1 /gcc/machmode.def
parentf776b3c443371cb0d3ecd4d173bc6a45e7654ad0 (diff)
downloadgcc-ff5decbb58fc6dbc921423e4b5e6aee084eebe81.tar.gz
* machmode.def (Pmode): Redefine if GENERATOR_FILE.
* genrecog.c (maybe_both_true_mode): New. (maybe_both_true_2): Use it. (write_switch): Don't put Pmode in a switch. * rtl.c (mode arrays): Don't explicitly size them. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44029 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/machmode.def')
-rw-r--r--gcc/machmode.def9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/machmode.def b/gcc/machmode.def
index 047030b59e8..1c93c0498bf 100644
--- a/gcc/machmode.def
+++ b/gcc/machmode.def
@@ -154,7 +154,14 @@ EXTRA_CC_MODES
#undef CC
/* The symbol Pmode stands for one of the above machine modes (usually SImode).
- The tm file specifies which one. It is not a distinct mode. */
+ The tm file specifies which one. It is not a distinct mode. Nevertheless,
+ while processing the md file, we wish to treat as a distinct mode so that
+ it is preserved intact through to the insn-foo.c files. This eliminates a
+ lot of redundancy in ports that support both 32-bit and 64-bit targets. */
+#ifdef GENERATOR_FILE
+#undef Pmode
+DEF_MACHMODE (Pmode, "P", MODE_RANDOM, 0, 0, 0, VOIDmode)
+#endif
/*
Local variables: