aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2016-09-16 21:39:05 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2016-09-16 21:39:05 +0000
commit714c237756f5b72fadd51a8e4adb4fabe248dd08 (patch)
tree1b43fbcf8ff6dcb6c44299d0cc60422c3246fc29 /gcc/recog.c
parent6e395fcb44dafbdbae218d396f32693b886d212a (diff)
downloadgcc-714c237756f5b72fadd51a8e4adb4fabe248dd08.zip
gcc-714c237756f5b72fadd51a8e4adb4fabe248dd08.tar.gz
gcc-714c237756f5b72fadd51a8e4adb4fabe248dd08.tar.bz2
recog.c (rest_of_handle_split_after_reload): Delete.
* recog.c (rest_of_handle_split_after_reload): Delete. (pass_split_after_reload::gate): New method. (pass_split_after_reload::execute): Call split_all_insns directly. From-SVN: r240203
Diffstat (limited to 'gcc/recog.c')
-rw-r--r--gcc/recog.c27
1 files changed, 15 insertions, 12 deletions
diff --git a/gcc/recog.c b/gcc/recog.c
index 19ab574..6a95d7f 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -3901,17 +3901,6 @@ make_pass_split_all_insns (gcc::context *ctxt)
return new pass_split_all_insns (ctxt);
}
-static unsigned int
-rest_of_handle_split_after_reload (void)
-{
- /* If optimizing, then go ahead and split insns now. */
-#ifndef STACK_REGS
- if (optimize > 0)
-#endif
- split_all_insns ();
- return 0;
-}
-
namespace {
const pass_data pass_data_split_after_reload =
@@ -3935,9 +3924,23 @@ public:
{}
/* opt_pass methods: */
+ virtual bool gate (function *)
+ {
+ /* If optimizing, then go ahead and split insns now. */
+ if (optimize > 0)
+ return true;
+
+#ifdef STACK_REGS
+ return true;
+#else
+ return false;
+#endif
+ }
+
virtual unsigned int execute (function *)
{
- return rest_of_handle_split_after_reload ();
+ split_all_insns ();
+ return 0;
}
}; // class pass_split_after_reload