https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59155

--- Comment #5 from Bernd Edlinger <bernd.edlinger at hotmail dot de> ---
Oh no! The X constraint allows just everything.

and combine combines everything that is OK for
check_asm_operands.  But reg_overlap_mentioned_p
is not expecting anything that complicated.

How about:

Index: common.md
===================================================================
--- common.md   (revision 231598)
+++ common.md   (working copy)
@@ -92,4 +92,5 @@

 (define_constraint "X"
   "Matches anything."
-  (match_test "true"))
+  (match_test "CONSTANT_P (op) || MEM_P (op) ||
+              REG_P (op) || SUBREG_P (op) || GET_CODE (op) == SCRATCH"))


This should be safe.

Reply via email to