]> gcc.gnu.org Git - gcc.git/commitdiff
opts.c (decode_options): If optimize is bigger than 255, set it to 255.
authorJakub Jelinek <jakub@redhat.com>
Fri, 27 Nov 2009 11:31:55 +0000 (12:31 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 27 Nov 2009 11:31:55 +0000 (12:31 +0100)
* opts.c (decode_options): If optimize is bigger than 255,
set it to 255.

* gcc.dg/O16384.c: New test.

From-SVN: r154699

gcc/ChangeLog
gcc/opts.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/O16384.c [new file with mode: 0644]

index e3c27aa7a661574817bce2bb4d723864c009ba24..1519f27b19338c227352f2a746f65870c2028a14 100644 (file)
@@ -1,3 +1,8 @@
+2009-11-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * opts.c (decode_options): If optimize is bigger than 255,
+       set it to 255.
+
 2009-11-26  Richard Henderson  <rth@redhat.com>
 
        * config/i386/sse.md (mulv16qi3): Change back from an expander
index 3a825ce364d36da6633e3fb3faea7d92cf39ec36..7660bd894fd88a8f4d98ec3c13b2ea1a473a763c 100644 (file)
@@ -829,6 +829,8 @@ decode_options (unsigned int argc, const char **argv)
              if (optimize_val != -1)
                {
                  optimize = optimize_val;
+                 if ((unsigned int) optimize > 255)
+                   optimize = 255;
                  optimize_size = 0;
                }
            }
index cd4c631b3361b8cac7b58e6ff26cc477115e86b5..e1c93e03f50d6371b770f93155b7baf762dfb532 100644 (file)
@@ -1,3 +1,7 @@
+2009-11-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcc.dg/O16384.c: New test.
+
 2009-11-27  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/35112
diff --git a/gcc/testsuite/gcc.dg/O16384.c b/gcc/testsuite/gcc.dg/O16384.c
new file mode 100644 (file)
index 0000000..32e17d4
--- /dev/null
@@ -0,0 +1,15 @@
+/* Test insane -O argument.  */
+/* { dg-do compile } */
+/* { dg-options "-O16384" } */
+
+__attribute__((__optimize__(16396), __noinline__)) void
+foo (void)
+{
+}
+
+int
+main (void)
+{
+  foo ();
+  return 0;
+}
This page took 0.108414 seconds and 5 git commands to generate.