]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR target/67265 ([x86] 'asm' operand has impossible constraints with -fstack-check)
authorEric Botcazou <ebotcazou@adacore.com>
Thu, 12 Nov 2015 12:01:40 +0000 (12:01 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Thu, 12 Nov 2015 12:01:40 +0000 (12:01 +0000)
PR target/67265
* config/i386/i386.c (ix86_adjust_stack_and_probe): Remove obsolete
assertion on the CFA register.

From-SVN: r230249

gcc/ChangeLog
gcc/config/i386/i386.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr67265-2.c [new file with mode: 0644]

index f7ae8d5f1fb8bae7b1220391d0ee35b796ca2901..4df00bfe1a0bdc44e0d6ed9572db3631763322a0 100644 (file)
@@ -1,3 +1,9 @@
+2015-11-12  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR target/67265
+       * config/i386/i386.c (ix86_adjust_stack_and_probe): Remove obsolete
+       assertion on the CFA register.
+
 2015-11-11  Andreas Tobler  <andreast@gcc.gnu.org>
 
        Backport from mainline
index 218d7b2a45d35e0f66bc1eff84618c1766396b8b..9b7b58a52c9db74e99254bd5d279291e9f31baba 100644 (file)
@@ -10441,8 +10441,6 @@ ix86_adjust_stack_and_probe (const HOST_WIDE_INT size)
       release_scratch_register_on_entry (&sr);
     }
 
-  gcc_assert (cfun->machine->fs.cfa_reg != stack_pointer_rtx);
-
   /* Even if the stack pointer isn't the CFA register, we need to correctly
      describe the adjustments made to it, in particular differentiate the
      frame-related ones from the frame-unrelated ones.  */
index b0e5b0a88cfb3f9fa2335e9af5a2cac345b1103d..0072132c0b0af603e67cbb60bbc99083781500b3 100644 (file)
@@ -1,3 +1,7 @@
+2015-11-12  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc.target/i386/pr67265-2.c: New test.
+
 2015-11-11  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc.target/i386/pr67265.c: New test.
diff --git a/gcc/testsuite/gcc.target/i386/pr67265-2.c b/gcc/testsuite/gcc.target/i386/pr67265-2.c
new file mode 100644 (file)
index 0000000..a9f2eb4
--- /dev/null
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-options "-O -fstack-check" } */
+
+void foo (int n)
+{
+  volatile char arr[64 * 1024];
+
+  arr[n] = 1;
+}