This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: define_constraints patch, re-revised


Zack Weinberg wrote:
:ADDPATCH machine description:

:REVIEWMAIL:


+If you put the pseudo-Texinfo directive @samp{@@internal} at the
+beginning of a docstring, then (in the future) it will appear only in
+the internals manual's version of the machine-specific constraint
+tables.  Use this for constraints that should not appear in @code{asm}
+statements.  (The compiler itself is unaware of the distinction; this
+is not a way to give users a helpful diagnostic instead of a
+@code{reload} failure.)

Can we say "The compiler may in the future use this to give a helpful diagnostic instead of a reload failure"?


+#if 0
+{
+	"  enum machine_mode mode = GET_MODE (op);\n"
+	"  HOST_WIDE_INT ival = 0;\n"
+	"  HOST_WIDE_INT hval = 0;\n"
+	"  unsigned HOST_WIDE_INT lval = 0;\n"
+	"  const REAL_VALUE_TYPE *rval = 0;\n"
+	"\n"
+	"  if (GET_CODE (op) == CONST_INT)\n"
+	"    ival = INTVAL (op);\n"
+	"  else if (GET_CODE (op) == CONST_DOUBLE)\n"
+	"    {\n"
+	"      if (mode == VOIDmode)\n"
+	"        hval = CONST_DOUBLE_HIGH (op),\n"
+	"        lval = CONST_DOUBLE_LOW  (op);\n"
+	"      else\n"
+	"        rval = CONST_DOUBLE_REAL_VALUE (op);\n"
+	"    }\n"
+	"\n"
+      if (c->is_register)	
+	printf ("reg_fits_class_p (op, %s, 0, mode)", c->regclass);
+      else
+	write_predicate_expr (c->exp);
+      fputs (";\n\n", stdout);
+	  ;
+}
+#endif

Lose this.


Otherwise ok, minus the h8300 changes - I'd prefer you get buyin and maybe testing from whoever is maintaining it.

Thanks!


Bernd



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]