aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.def
diff options
context:
space:
mode:
authorRichard Henderson <rth@gcc.gnu.org>1998-12-29 03:36:22 -0800
committerRichard Henderson <rth@gcc.gnu.org>1998-12-29 03:36:22 -0800
commit185ebd6c71d791ea2f333a23382589620e9bf848 (patch)
tree8baca97ed11c13d1b3be83dcd58d2863c4017a2a /gcc/rtl.def
parenteb8da8684cfdf019f0b0edfd834a479ac366f1d4 (diff)
downloadgcc-185ebd6c71d791ea2f333a23382589620e9bf848.zip
gcc-185ebd6c71d791ea2f333a23382589620e9bf848.tar.gz
gcc-185ebd6c71d791ea2f333a23382589620e9bf848.tar.bz2
Richard Kenner <kenner@vlsi1.ultra.nyu.edu>:
* rtl.def (CONSTANT_P_RTX): Clarify commentary. * expr.c (expand_builtin, case BUILT_IN_CONSTANT_P): Rework to consider constant CONSTRUCTOR constant and to defer some cases to cse. * cse.c (fold_rtx, case CONST): Add handling for CONSTANT_P_RTX. * regclass.c (reg_scan_mark_refs, case CONST): Likewise. Richard Henderson <rth@cygnus.com> * expr.c (init_expr_once): Kill can_handle_constant_p recognition. * cse.c (fold_rtx, case 'x'): Remove standalone CONSTANT_P_RTX code. From-SVN: r24439
Diffstat (limited to 'gcc/rtl.def')
-rw-r--r--gcc/rtl.def7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/rtl.def b/gcc/rtl.def
index 5273fdf..8f47d40 100644
--- a/gcc/rtl.def
+++ b/gcc/rtl.def
@@ -850,9 +850,10 @@ DEF_RTL_EXPR(RANGE_VAR, "range_var", "eti", 'x')
0 is the live bitmap. Operand 1 is the original block number. */
DEF_RTL_EXPR(RANGE_LIVE, "range_live", "bi", 'x')
-/* A unary `__builtin_constant_p' expression. These are only emitted
- during RTL generation, and then only if optimize > 0. They are
- eliminated by the first CSE pass. */
+/* A unary `__builtin_constant_p' expression. This RTL code may only be used
+ as an operand of a CONST. This pattern is only emitted during RTL
+ generation and then only if optimize > 0. It is converted by the first
+ CSE pass into the appropriate CONST_INT. */
DEF_RTL_EXPR(CONSTANT_P_RTX, "constant_p_rtx", "e", 'x')
/*