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
This commit is contained in:
parent
41f683efe5
commit
39afeb1aad
15 changed files with 46 additions and 75 deletions
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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. */
|
||||
|
|
|
@ -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")
|
||||
|
|
|
@ -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) \
|
||||
{ \
|
||||
|
|
|
@ -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; */ \
|
||||
} \
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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. */
|
||||
|
|
|
@ -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 ();
|
||||
}
|
||||
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
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.
|
||||
|
|
|
@ -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++;
|
||||
|
|
|
@ -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. */
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue