m32c.c: Don't include opts.h.
authorJoseph Myers <joseph@codesourcery.com>
Tue, 22 Mar 2011 22:38:56 +0000 (22:38 +0000)
committerJoseph Myers <jsm28@gcc.gnu.org>
Tue, 22 Mar 2011 22:38:56 +0000 (22:38 +0000)
* config/m32c/m32c.c: Don't include opts.h.
(target_memregs, target_memregs_set, TARGET_HANDLE_OPTION,
m32c_handle_option): Remove.
(m32c_option_override): Check global_options_set.x_target_memregs
instead of target_memregs_set.
* config/m32c/m32c.h (target_memregs): Remove.
* config/m32c/m32c.opt (memregs=): Use UInteger with integer
variable.

From-SVN: r171320

gcc/ChangeLog
gcc/config/m32c/m32c.c
gcc/config/m32c/m32c.h
gcc/config/m32c/m32c.opt

index ad50dd2914c337dadc47272daac3233ea0d266b0..b5936dd2601e618eff807cfff32e66204de328dd 100644 (file)
@@ -1,3 +1,14 @@
+2011-03-22  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/m32c/m32c.c: Don't include opts.h.
+       (target_memregs, target_memregs_set, TARGET_HANDLE_OPTION,
+       m32c_handle_option): Remove.
+       (m32c_option_override): Check global_options_set.x_target_memregs
+       instead of target_memregs_set.
+       * config/m32c/m32c.h (target_memregs): Remove.
+       * config/m32c/m32c.opt (memregs=): Use UInteger with integer
+       variable.
+
 2011-03-22  Joseph Myers  <joseph@codesourcery.com>
 
        * config/iq2000/iq2000-opts.h: New.
index 16f635770e747510a804e17ad52d87d9bf688a2c..055f34e9320d0971617bb8d9d3c7e369256e854a 100644 (file)
@@ -48,7 +48,6 @@
 #include "langhooks.h"
 #include "gimple.h"
 #include "df.h"
-#include "opts.h"
 
 /* Prototypes */
 
@@ -408,31 +407,8 @@ class_can_hold_mode (reg_class_t rclass, enum machine_mode mode)
    Memregs are provided by m32c-lib1.S.
 */
 
-int target_memregs = 16;
-static bool target_memregs_set = FALSE;
 int ok_to_change_target_memregs = TRUE;
 
-#undef  TARGET_HANDLE_OPTION
-#define TARGET_HANDLE_OPTION m32c_handle_option
-static bool
-m32c_handle_option (struct gcc_options *opts, struct gcc_options *opts_set,
-                   const struct cl_decoded_option *decoded,
-                   location_t loc ATTRIBUTE_UNUSED)
-{
-  size_t code = decoded->opt_index;
-  const char *arg = decoded->arg;
-
-  gcc_assert (opts == &global_options);
-  gcc_assert (opts_set == &global_options_set);
-
-  if (code == OPT_memregs_)
-    {
-      target_memregs_set = TRUE;
-      target_memregs = atoi (arg);
-    }
-  return TRUE;
-}
-
 /* Implements TARGET_OPTION_OVERRIDE.  */
 
 #undef TARGET_OPTION_OVERRIDE
@@ -442,7 +418,7 @@ static void
 m32c_option_override (void)
 {
   /* We limit memregs to 0..16, and provide a default.  */
-  if (target_memregs_set)
+  if (global_options_set.x_target_memregs)
     {
       if (target_memregs < 0 || target_memregs > 16)
        error ("invalid target memregs value '%d'", target_memregs);
index 9cabeedb846dad531c06b9df1a4a8699537049fb..28072abc2ba31b47f9c27ffff023f3e35a955491 100644 (file)
@@ -86,7 +86,6 @@
    beginning of the file.  This variable starts off TRUE and later
    becomes FALSE.  */
 extern int ok_to_change_target_memregs;
-extern int target_memregs;
 
 /* TARGET_CPU is a multi-way option set in m32c.opt.  While we could
    use enums or defines for this, this and m32c.opt are the only
index d19153bbefcb3bd7c7438e29aea3c8009d5661a8..b3029b0e4d1f0faab8d235db89d3b985c9b1c120 100644 (file)
@@ -1,5 +1,5 @@
 ; Target Options for R8C/M16C/M32C
-; Copyright (C) 2005 2007
+; Copyright (C) 2005, 2007, 2011
 ; Free Software Foundation, Inc.
 ; Contributed by Red Hat.
 ;
@@ -40,5 +40,5 @@ Target RejectNegative Var(target_cpu,'3')
 -mcpu=m32c     Compile code for M32C variants
 
 memregs=
-Target RejectNegative Joined Var(target_memregs_string)
+Target RejectNegative Joined UInteger Var(target_memregs) Init(16)
 -memregs=      Number of memreg bytes (default: 16, range: 0..16)