diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cc38bbc3e8d484744621bb95d2a427c21cdebd00..f919236ea303495c4eda4f20b3538c64c7b6acfb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2008-07-24  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+	* config/sh/sh.h (OPTIMIZATION_OPTIONS): Set flag_omit_frame_pointer
+	to 2 instead of -1.
+	(OVERRIDE_OPTIONS): Check if flag_omit_frame_pointer is equal
+	to 2.
+
 2008-07-24  Kai Tietz  <kai.tietz@onevision.com>
 
 	* config/i386/i386.c (get_dllimport_decl): Treat user_label_prefix for
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index 5204847abc5d2e90fada3c23252e5aefa91d911a..2305872903d44ee9601a2b900fbd94a8aebd28f0 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -463,7 +463,7 @@ do { \
 do {									\
   if (LEVEL)								\
     {									\
-      flag_omit_frame_pointer = -1;					\
+      flag_omit_frame_pointer = 2;					\
       if (! SIZE)							\
 	sh_div_str = "inv:minlat";					\
     }									\
@@ -690,7 +690,7 @@ do {									\
     if (! VALID_REGISTER_P (ADDREGNAMES_REGNO (regno)))			\
       sh_additional_register_names[regno][0] = '\0';			\
 									\
-  if (flag_omit_frame_pointer < 0)					\
+  if (flag_omit_frame_pointer == 2)					\
    {									\
      /* The debugging information is sufficient,			\
         but gdb doesn't implement this yet */				\