]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR rtl-optimization/58048 (internal compiler error: Max. number of generated reloa...
authorVladimir Makarov <vmakarov@redhat.com>
Fri, 2 Aug 2013 22:06:11 +0000 (22:06 +0000)
committerVladimir Makarov <vmakarov@gcc.gnu.org>
Fri, 2 Aug 2013 22:06:11 +0000 (22:06 +0000)
2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/58048
* lra-constraints.c (process_alt_operands): Don't check asm
operand on register.

2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/58048
* gcc.target/i386/pr58048.c: New.

From-SVN: r201454

gcc/ChangeLog
gcc/lra-constraints.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr58048.c [new file with mode: 0644]

index 85ef86bc5948dee6fbff9494fd0d2b4d6175148d..9d6a6c8921a12ff45417fa14f996660945d85217 100644 (file)
@@ -1,3 +1,9 @@
+2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/58048
+       * lra-constraints.c (process_alt_operands): Don't check asm
+       operand on register.
+
 2013-08-02  Eric Botcazou  <ebotcazou@adacore.com>
 
        * config/sparc/sparc.c (sparc_emit_membar_for_model) <SMM_TSO>: Add
index ced02a4135605e6bfa70ae8553a03ce8c46e77ff..728c0584585e9326694c72c3cfc28c71e9ed47c4 100644 (file)
@@ -1892,7 +1892,7 @@ process_alt_operands (int only_alternative)
 
              /* For asms, verify that the class for this alternative is possible
                 for the mode that is specified.  */
-             if (!no_regs_p && REG_P (op) && INSN_CODE (curr_insn) < 0)
+             if (!no_regs_p && INSN_CODE (curr_insn) < 0)
                {
                  int i;
                  for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
index 711746d47b11bf4291e7eaec8419f7f51f36e520..f5ec9cff0a5b6e5f798369b781a8d4b46f7d1a31 100644 (file)
@@ -1,3 +1,8 @@
+2013-08-02  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/58048
+       * gcc.target/i386/pr58048.c: New.
+
 2013-08-02  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * gcc.target/arm/neon-for-64bits-2.c: Delete.
diff --git a/gcc/testsuite/gcc.target/i386/pr58048.c b/gcc/testsuite/gcc.target/i386/pr58048.c
new file mode 100644 (file)
index 0000000..a7249d0
--- /dev/null
@@ -0,0 +1,11 @@
+/* PR target/58048 */
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+void
+div3 (void)
+{
+    double tmp1;
+
+    asm volatile ("fscale":"=t" (tmp1):"0" (0), "u" (0)); /* { dg-error "inconsistent operand constraints in an 'asm'"  } */
+}