PR inline-asm/84742
* recog.c (asm_operand_ok): Return 0 if multi-character constraint
has ',' character inside of it.
* gcc.target/i386/pr84742-1.c: New test.
* gcc.target/i386/pr84742-2.c: New test.
From-SVN: r258369
+2018-03-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR inline-asm/84742
+ * recog.c (asm_operand_ok): Return 0 if multi-character constraint
+ has ',' character inside of it.
+
2018-03-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/84748
len = CONSTRAINT_LEN (c, constraint);
do
constraint++;
- while (--len && *constraint);
+ while (--len && *constraint && *constraint != ',');
if (len)
return 0;
}
+2018-03-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR inline-asm/84742
+ * gcc.target/i386/pr84742-1.c: New test.
+ * gcc.target/i386/pr84742-2.c: New test.
+
2018-03-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/84748
--- /dev/null
+/* PR inline-asm/84742 */
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+void
+foo ()
+{
+ char b = 1;
+ asm volatile ("" : "+T,Y" (b)); /* { dg-error "impossible constraint in 'asm'" } */
+}
--- /dev/null
+/* PR inline-asm/84742 */
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+void
+foo ()
+{
+ char b = 1;
+ asm volatile ("" : "+gT,m" (b)); /* { dg-error "impossible constraint in 'asm'" } */
+}