aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Bosscher <stevenb@suse.de>2004-11-24 19:45:32 +0000
committerSteven Bosscher <steven@gcc.gnu.org>2004-11-24 19:45:32 +0000
commit39afeb1aad63cf3e2dcfb7a93e20f014bc5dc28e (patch)
treee03bd7fb108fe9325c02bc63b1552f84968a2f97
parent41f683efe5ab3b56b38ae6be0320232bf444dd83 (diff)
downloadgcc-39afeb1aad63cf3e2dcfb7a93e20f014bc5dc28e.zip
gcc-39afeb1aad63cf3e2dcfb7a93e20f014bc5dc28e.tar.gz
gcc-39afeb1aad63cf3e2dcfb7a93e20f014bc5dc28e.tar.bz2
c-opts.c (c_common_post_options): Don't clear flag_inline_functions.
gcc/ * c-opts.c (c_common_post_options): Don't clear flag_inline_functions. * dojump.c (clear_pending_stack_adjust): Remove check on flag_inline_functions, it's always true. * config/alpha/alpha.md (movdi_er_maybe_g): Remove splitter that can never trigger. * config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Don't look at flag_inline_trees, now that flag_inline_functions is never cleared. * config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Don't set flag_inline_functions at optimization levels greater than or equal to 3. This is already done by default. ada/ * misc.c (gnat_post_options): Don't clear flag_inline_functions. cp/ * decl.c (cxx_init_decl_processing): Don't clear flag_inline_functions. fortran/ * options.c (gfc_post_options): Don't clear flag_inline_functions. java/ * class.c (make_class_data): Don't check flag_inline_functions. * lang.c (flag_really_inline): Remove unused flag. (java_handle_option): Don't set it here. Remove special handling of flag_inline_functions for Java. (java_init): Don't set flag_inline_trees here. Already done... (java_post_options): ...here. Don't clear flag_inline_functions. From-SVN: r91190
-rw-r--r--gcc/ChangeLog15
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/misc.c5
-rw-r--r--gcc/c-opts.c5
-rw-r--r--gcc/config/alpha/alpha.md35
-rw-r--r--gcc/config/c4x/c4x.h4
-rw-r--r--gcc/config/pdp11/pdp11.h2
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/decl.c5
-rw-r--r--gcc/dojump.c3
-rw-r--r--gcc/fortran/ChangeLog4
-rw-r--r--gcc/fortran/options.c5
-rw-r--r--gcc/java/ChangeLog9
-rw-r--r--gcc/java/class.c2
-rw-r--r--gcc/java/lang.c17
15 files changed, 46 insertions, 75 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7013cba..f6af717 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,18 @@
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * c-opts.c (c_common_post_options): Don't clear
+ flag_inline_functions.
+ * dojump.c (clear_pending_stack_adjust): Remove check on
+ flag_inline_functions, it's always true.
+ * config/alpha/alpha.md (movdi_er_maybe_g): Remove splitter
+ that can never trigger.
+ * config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Don't look at
+ flag_inline_trees, now that flag_inline_functions is never
+ cleared.
+ * config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Don't set
+ flag_inline_functions at optimization levels greater than
+ or equal to 3. This is already done by default.
+
2004-11-24 Kazu Hirata <kazu@cs.umass.edu>
* tree-outof-ssa.c (eliminate_build): Use g->e->dest_idx
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 55eae1a..5769f8b 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * misc.c (gnat_post_options): Don't clear
+ flag_inline_functions.
+
2004-11-22 Andrew Pinski <pinskia@physics.uc.edu>
PR ada/17986
diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c
index 7f77df3..6e871b5 100644
--- a/gcc/ada/misc.c
+++ b/gcc/ada/misc.c
@@ -352,10 +352,7 @@ gnat_post_options (const char **pfilename ATTRIBUTE_UNUSED)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
- {
- flag_inline_trees = 2;
- flag_inline_functions = 0;
- }
+ flag_inline_trees = 2;
return false;
}
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index 146ef57..8eef6bf 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -945,10 +945,7 @@ c_common_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
- {
- flag_inline_trees = 2;
- flag_inline_functions = 0;
- }
+ flag_inline_trees = 2;
/* If we are given more than one input file, we must use
unit-at-a-time mode. */
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index ed47e9f..3f72427 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -5379,41 +5379,6 @@
(const_int 0)] UNSPEC_LITERAL))]
"operands[2] = pic_offset_table_rtx;")
-;; With RTL inlining, at -O3, rtl is generated, stored, then actually
-;; compiled at the end of compilation. In the meantime, someone can
-;; re-encode-section-info on some symbol changing it e.g. from global
-;; to local-not-small. If this happens, we'd have emitted a plain
-;; load rather than a high+losum load and not recognize the insn.
-;;
-;; So if rtl inlining is in effect, we delay the global/not-global
-;; decision until rest_of_compilation by wrapping it in an UNSPEC_SYMBOL.
-
-(define_insn_and_split "movdi_er_maybe_g"
- [(set (match_operand:DI 0 "register_operand" "=r")
- (unspec:DI [(match_operand:DI 1 "symbolic_operand" "")]
- UNSPEC_SYMBOL))]
- "TARGET_EXPLICIT_RELOCS && flag_inline_functions"
- "#"
- ""
- [(set (match_dup 0) (match_dup 1))]
-{
- if (local_symbolic_operand (operands[1], Pmode)
- && !small_symbolic_operand (operands[1], Pmode))
- {
- rtx subtarget = no_new_pseudos ? operands[0] : gen_reg_rtx (Pmode);
- rtx tmp;
-
- tmp = gen_rtx_HIGH (Pmode, operands[1]);
- if (reload_completed)
- tmp = gen_rtx_PLUS (Pmode, pic_offset_table_rtx, tmp);
- emit_insn (gen_rtx_SET (VOIDmode, subtarget, tmp));
-
- tmp = gen_rtx_LO_SUM (Pmode, subtarget, operands[1]);
- emit_insn (gen_rtx_SET (VOIDmode, operands[0], tmp));
- DONE;
- }
-})
-
(define_insn "movdi_er_tlsgd"
[(set (match_operand:DI 0 "register_operand" "=r")
(unspec:DI [(match_operand:DI 1 "register_operand" "r")
diff --git a/gcc/config/c4x/c4x.h b/gcc/config/c4x/c4x.h
index d514e5a..591c2cb 100644
--- a/gcc/config/c4x/c4x.h
+++ b/gcc/config/c4x/c4x.h
@@ -29,14 +29,12 @@
#define TARGET_CPU_CPP_BUILTINS() \
do \
{ \
- /* ??? HACK. We shouldn't have flag_inline_trees at all. */ \
extern int flag_inline_trees; \
if (!TARGET_SMALL) \
builtin_define ("_BIGMODEL"); \
if (!TARGET_MEMPARM) \
builtin_define ("_REGPARM"); \
- if (flag_inline_functions \
- || flag_inline_trees) \
+ if (flag_inline_functions) \
builtin_define ("_INLINE"); \
if (TARGET_C3X) \
{ \
diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h
index 63275d4..22eedfe 100644
--- a/gcc/config/pdp11/pdp11.h
+++ b/gcc/config/pdp11/pdp11.h
@@ -1144,8 +1144,6 @@ JMP FUNCTION 0x0058 0x0000 <- FUNCTION
{ \
if (LEVEL >= 3) \
{ \
- if (! SIZE) \
- flag_inline_functions = 1; \
flag_omit_frame_pointer = 1; \
/* flag_unroll_loops = 1; */ \
} \
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 94f0d02..95e2ed4 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * decl.c (cxx_init_decl_processing): Don't clear
+ flag_inline_functions.
+
2004-11-24 Mark Mitchell <mark@codesourcery.com>
* pt.c (tsubst_function_type): Do not permit function types which
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 258ae43..c47c342 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -2990,10 +2990,7 @@ cxx_init_decl_processing (void)
flag_no_inline = 1;
}
if (flag_inline_functions)
- {
- flag_inline_trees = 2;
- flag_inline_functions = 0;
- }
+ flag_inline_trees = 2;
/* Force minimum function alignment if using the least significant
bit of function pointers to store the virtual bit. */
diff --git a/gcc/dojump.c b/gcc/dojump.c
index bcb575c..27a3cd6 100644
--- a/gcc/dojump.c
+++ b/gcc/dojump.c
@@ -71,8 +71,7 @@ clear_pending_stack_adjust (void)
if (optimize > 0
&& (! flag_omit_frame_pointer || current_function_calls_alloca)
&& EXIT_IGNORE_STACK
- && ! (DECL_INLINE (current_function_decl) && ! flag_no_inline)
- && ! flag_inline_functions)
+ && ! (DECL_INLINE (current_function_decl) && ! flag_no_inline))
discard_pending_stack_adjust ();
}
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 1ee3207..1130054 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,7 @@
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
+ * options.c (gfc_post_options): Don't clear flag_inline_functions.
+
2004-11-20 Steven G. Kargl <kargls@comcast.net>
* check.c (gfc_check_getcwd_sub): Fix seg fault.
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c
index d1c6841..bdffbf3 100644
--- a/gcc/fortran/options.c
+++ b/gcc/fortran/options.c
@@ -109,10 +109,7 @@ gfc_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
- {
- flag_inline_trees = 2;
- flag_inline_functions = 0;
- }
+ flag_inline_trees = 2;
/* If -pedantic, warn about the use of GNU extensions. */
if (pedantic && (gfc_option.allow_std & GFC_STD_GNU) != 0)
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index ab96bfc..272e8c5 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,5 +1,14 @@
2004-11-24 Steven Bosscher <stevenb@suse.de>
+ * class.c (make_class_data): Don't check flag_inline_functions.
+ * lang.c (flag_really_inline): Remove unused flag.
+ (java_handle_option): Don't set it here. Remove special handling
+ of flag_inline_functions for Java.
+ (java_init): Don't set flag_inline_trees here. Already done...
+ (java_post_options): ...here. Don't clear flag_inline_functions.
+
+2004-11-24 Steven Bosscher <stevenb@suse.de>
+
* java-gimplify.c (java_gimplify_labeled_block_expr): New function.
(java_gimplify_exit_block_expr): New function.
(java_gimplify_expr): Use them to gimplify EXIT_BLOCK_EXPR and
diff --git a/gcc/java/class.c b/gcc/java/class.c
index 6e6bded..543bdf2 100644
--- a/gcc/java/class.c
+++ b/gcc/java/class.c
@@ -1618,7 +1618,7 @@ make_class_data (tree type)
tree init;
if (METHOD_PRIVATE (method)
&& ! flag_keep_inline_functions
- && (flag_inline_functions || optimize))
+ && optimize)
continue;
init = make_method_value (method);
method_count++;
diff --git a/gcc/java/lang.c b/gcc/java/lang.c
index ad388da..be789fe 100644
--- a/gcc/java/lang.c
+++ b/gcc/java/lang.c
@@ -131,10 +131,6 @@ const char *current_encoding = NULL;
/* When nonzero, print extra version information. */
static int v_flag = 0;
-/* Set nonzero if the user specified -finline-functions on the command
- line. */
-int flag_really_inline = 0;
-
JCF *current_jcf;
/* Variable controlling how dependency tracking is enabled in
@@ -322,11 +318,6 @@ java_handle_option (size_t scode, const char *arg, int value)
jcf_path_extdirs_arg (arg);
break;
- case OPT_finline_functions:
- flag_inline_functions = value;
- flag_really_inline = value;
- break;
-
case OPT_foutput_class_dir_:
jcf_write_base_directory = arg;
break;
@@ -355,9 +346,6 @@ java_init (void)
flag_minimal_debug = 0;
#endif
- if (flag_inline_functions)
- flag_inline_trees = 1;
-
/* FIXME: Indirect dispatch isn't yet compatible with static class
init optimization. */
if (flag_indirect_dispatch)
@@ -603,10 +591,7 @@ java_post_options (const char **pfilename)
if (!flag_no_inline)
flag_no_inline = 1;
if (flag_inline_functions)
- {
- flag_inline_trees = 2;
- flag_inline_functions = 0;
- }
+ flag_inline_trees = 2;
/* Open input file. */