Joern Rennecke [Thu, 26 Nov 2009 06:23:17 +0000 (26 06:23 +0000)]
gcc-plugin.h (hashtab.h): Include.
* gcc-plugin.h (hashtab.h): Include.
* Makefile.in (GCC_PLUGIN_H): Add $(HASHTAB_H).
From-SVN: r154669
Joern Rennecke [Thu, 26 Nov 2009 04:08:19 +0000 (26 04:08 +0000)]
Makefile.in (s-header-vars): New rule.
* Makefile.in (s-header-vars): New rule.
(PLUGIN_HEADERS): Add opts.h, $(PARAMS_H) and plugin.def.
(install-plugin): Also install b-header-vars.
From-SVN: r154668
Joern Rennecke [Fri, 20 Nov 2009 23:20:37 +0000 (20 23:20 +0000)]
loop-init.c (rtl_unroll_and_peel_loops): Fix spelling in last change.
From-SVN: r154384
Joern Rennecke [Fri, 20 Nov 2009 23:17:21 +0000 (20 23:17 +0000)]
opts.c (decode_options): Properly move optimization_default_node initialization from here ...
* opts.c (decode_options): Properly move optimization_default_node
initialization from here ...
* toplev.c (process_options) ... to here.
* toplev.c (backend_init_target): Remove change from GSOC -
purpose is unknown, hence might be be assumed an artistic expression.
* cgraphunit.c (ipa_passes): Rename local variable.
* ipa-inline.c (analyze_function): Remove GSOC patch.
From-SVN: r154383
Joern Rennecke [Fri, 20 Nov 2009 21:53:03 +0000 (20 21:53 +0000)]
Delete ICI plugin, because it contains Google Summer of Code code, for
which no Copyright Assignment is on file.
From-SVN: r154381
Joern Rennecke [Fri, 20 Nov 2009 21:39:49 +0000 (20 21:39 +0000)]
tree-pass.h (execute_one_ipa_pass): Remove unused declaration.
* tree-pass.h (execute_one_ipa_pass): Remove unused declaration.
(do_per_function_toporder): Re-write comment.
PLUGIN_AVOID_GATE: rename to: PLUGIN_OVERRIDE_GATE.
* passes.c (do_per_function_toporder): Re-write comment about linkage.
* loop-init.c (rtl_unroll_and_peel_loops): Use live parameters.
From-SVN: r154379
Joern Rennecke [Fri, 20 Nov 2009 12:29:36 +0000 (20 12:29 +0000)]
Move get_current_pass_name to ici.c .
Consolidate plugin event name definitions to plugin.def .
Change PLUGIN_ALL_IPA_PASSES_EXECUTION, PLUGIN_ALL_PASSES_EXECUTION,
PLUGIN_AVOID_GATE and PLUGIN_PASS_EXECUTION to use simple argument passing.
Make static events treated equally in register_callback /
invoke_plugin_callbacks, and mark end of static plugin events with
PLUGIN_EVENT_FIRST_DYNAMIC.
From-SVN: r154362
Joern Rennecke [Wed, 18 Nov 2009 19:42:44 +0000 (18 19:42 +0000)]
Change ici to be a plugin.
From-SVN: r154304
Joern Rennecke [Wed, 18 Nov 2009 14:49:32 +0000 (18 14:49 +0000)]
Remove ICI "-export-dynamic -ldl" configure patch - in gcc 4.5...
Remove ICI "-export-dynamic -ldl" configure patch - in gcc 4.5, the
gcc subdirectory configure implements the required functionality, e.g. it
adds the options "-rdynamic -ldl" for i686-pc-linux-gnu.
From-SVN: r154295
Joern Rennecke [Tue, 17 Nov 2009 19:17:11 +0000 (17 19:17 +0000)]
Fix problems found by C++ type checking.
From-SVN: r154266
Joern Rennecke [Tue, 17 Nov 2009 17:23:59 +0000 (17 17:23 +0000)]
Set flag_api_instrument_functions in ici/ici.c .
From-SVN: r154260
Joern Rennecke [Tue, 17 Nov 2009 16:49:19 +0000 (17 16:49 +0000)]
Remoev ICI argument handling and augmentation.
From-SVN: r154257
Joern Rennecke [Tue, 17 Nov 2009 16:30:07 +0000 (17 16:30 +0000)]
Rename ICI plugins to match gcc 4.5 style.
From-SVN: r154256
Joern Rennecke [Tue, 17 Nov 2009 14:28:28 +0000 (17 14:28 +0000)]
move ici-legacy.h to ici directory.
From-SVN: r154250
Joern Rennecke [Tue, 17 Nov 2009 14:24:29 +0000 (17 14:24 +0000)]
Move feature-internal.h, feature.h and ic-interface.h to ici directory.
From-SVN: r154249
Joern Rennecke [Tue, 17 Nov 2009 14:05:04 +0000 (17 14:05 +0000)]
Replace register_call_by_name call in passes.c with new plugin event.
Move pass-manager.h to ici directory.
reformat ipa-inline.c patch.
From-SVN: r154248
Joern Rennecke [Tue, 17 Nov 2009 02:19:22 +0000 (17 02:19 +0000)]
Replace C++ comment with #if 0 / #endif.
From-SVN: r154234
Joern Rennecke [Tue, 17 Nov 2009 00:52:46 +0000 (17 00:52 +0000)]
ici/ici.c (invoke_named_callbacks): If the callback doesn't exist,
return PLUGEVT_NO_SUCH_EVENT.
From-SVN: r154233
Joern Rennecke [Tue, 17 Nov 2009 00:15:20 +0000 (17 00:15 +0000)]
Move code to bind pass_instrument_functions into the pass tree into
ici/ici.c / ici/highlev-plugin-internal.h .
From-SVN: r154229
Joern Rennecke [Mon, 16 Nov 2009 23:43:32 +0000 (16 23:43 +0000)]
Comment fix.
From-SVN: r154226
Joern Rennecke [Mon, 16 Nov 2009 23:32:35 +0000 (16 23:32 +0000)]
Removed extra line break.
From-SVN: r154224
Joern Rennecke [Mon, 16 Nov 2009 23:29:15 +0000 (16 23:29 +0000)]
Remove extra blank lines & outdated comment.
From-SVN: r154222
Joern Rennecke [Mon, 16 Nov 2009 23:24:40 +0000 (16 23:24 +0000)]
Remove code from cgraphunit that has been moved to ici.c .
From-SVN: r154221
Joern Rennecke [Mon, 16 Nov 2009 23:08:54 +0000 (16 23:08 +0000)]
* tree.pass.h (pass_clone_functions): Remove declaration.
From-SVN: r154220
Joern Rennecke [Mon, 16 Nov 2009 23:06:19 +0000 (16 23:06 +0000)]
events.c (hash_param_callback): Allow NULL to stand for empty parameter list.
* events.c (hash_param_callback): Allow NULL to stand for empty
parameter list.
From-SVN: r154219
Joern Rennecke [Mon, 16 Nov 2009 22:58:28 +0000 (16 22:58 +0000)]
Move ici specific files to new directory ici...
Move ici specific files to new directory ici; add new file ici/ici.c
to accommodate ICI specific code previouly put into main gcc files; get
cc1 to compile.
From-SVN: r154218
Joern Rennecke [Mon, 16 Nov 2009 17:39:56 +0000 (16 17:39 +0000)]
gcc-plugin.h (enum plugin_event): Add PLUGIN_ALL_IPA_PASSES_START...
* gcc-plugin.h (enum plugin_event): Add PLUGIN_ALL_IPA_PASSES_START,
PLUGIN_ALL_IPA_PASSES_EXECUTION and PLUGIN_ALL_IPA_PASSES_END.
* plugin.c (plugin_event_name_init): Name them.
* gcc-plugin.h (enum event_parameter_type): Copied from
highlev-plugin-internal.h .
From-SVN: r154209
Joern Rennecke [Mon, 16 Nov 2009 17:06:24 +0000 (16 17:06 +0000)]
events.c (hash_param_callback): Read and pass parameter type.
* events.c (hash_param_callback): Read and pass parameter type.
* highlev-plugin.h (get_event_parameter_type): Declare.
From-SVN: r154208
Joern Rennecke [Mon, 16 Nov 2009 16:44:24 +0000 (16 16:44 +0000)]
Remove generic cloning code for now - this code is not supposed to go into a plugin...
Remove generic cloning code for now - this code is not supposed to
go into a plugin, but to be contributed to GCC proper.
From-SVN: r154206
Joern Rennecke [Mon, 16 Nov 2009 15:11:31 +0000 (16 15:11 +0000)]
Small changes to remove go past a few of the bootstrap errors:
* tree-inline.c (generic_cloning_remap_gimple_op_r):
Supply location parameter to fold_indirect_ref_1.
(generic_cloning_copy_tree_body_r): Supply location parameter to
build_empty_stmt and fold_indirect_ref_1.
Remove RESX_EXPR handling.
From-SVN: r154204
Joern Rennecke [Mon, 16 Nov 2009 15:03:27 +0000 (16 15:03 +0000)]
Merge in changes from:
http://gcc-ici.svn.sourceforge.net/svnroot/gcc-ici/branches/gcc-4.4.0-ici-2.0-adapt
This is mostly a textual merge, and still won't compile.
From-SVN: r154203
Joern Rennecke [Mon, 16 Nov 2009 13:18:49 +0000 (16 13:18 +0000)]
Make ICI plugin events a layer on top of low-level plugin events.
(This change has not been tested for ICI functionality yet)
From-SVN: r154199
Joern Rennecke [Mon, 9 Nov 2009 00:27:30 +0000 (9 00:27 +0000)]
patches from gcc-ici.svn.sourceforge.net/svnroot/gcc-ici/branches/patch-gcc-4.4.0-ici-2.0
From-SVN: r154026
Paolo Carlini [Sun, 8 Nov 2009 21:26:57 +0000 (8 21:26 +0000)]
builtins.c (apply_args_reg_offset): Remove commented out delaration.
2009-11-08 Paolo Carlini <paolo.carlini@oracle.com>
* builtins.c (apply_args_reg_offset): Remove commented out delaration.
From-SVN: r154015
Jakub Jelinek [Sun, 8 Nov 2009 21:12:52 +0000 (8 22:12 +0100)]
re PR target/41985 (Internal compiler error reported.)
PR target/41985
* config/i386/i386.c (get_some_local_dynamic_name): Don't assert
function contains at least one local dynamic name.
(print_operand) <case '&'>: Instead output operand lossage diagnostics
here if that happens.
* gcc.target/i386/pr41985.c: New test.
From-SVN: r154014
Zbigniew Chamski [Sun, 8 Nov 2009 21:10:08 +0000 (8 21:10 +0000)]
cfgrtl.c (pass_free_cfg): Add pass name.
* cfgrtl.c (pass_free_cfg): Add pass name.
* cgraphbuild.c (pass_build_cgraph_edges): Likewise.
(pass_rebuild_cgraph_edges, pass_remove_cgraph_callee_edges): Likewise.
* dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Change pass name.
* df-core.c (pass_df_initialize_no_opt): Likewise.
* except.c (pass_rtl_eh): Likewise.
* function.c (pass_init_function, pass_leaf_regs): Likewise.
* gcse.c (pass_rtl_pre): Change pass name.
* passes.c (pass_postreload): Add pass name.
(make_pass_instance): Don't use duplicate-tracking logic for
names starting with '*'.
(next_pass_1): Assert that pass has a name.
(register_one_dump_file): If there is an space in the name,
skip past it.
* predict.c (pass_strip_predict_hints): Add pass name.
* reg-stack.c (pass_stack_regs): Likewise.
* stack-ptr-mod.c (pass_stack_ptr_mod): Likewise.
* tree-cfg.c (pass_warn_function_return,
pass_warn_function_noreturn): Add pass name.
* tree-dfa.c (pass_referenced_vars): Likewise.
* tree-optimize.c (pass_cleanup_cfg_post_optimizing):
Fix whitespace before comment.
(pass_fixup_cfg): Add pass name, fix whitespace before comment.
(pass_init_datastructures): Add pass name.
* tree-ssa-loop.c (pass_record_bounds): Likewise.
* tree-ssa.c (pass_early_warn_uninitialized,
pass_late_warn_uninitialized): Likewise.
* tree.c (pass_ipa_free_lang_data): Likewise.
* doc/passes.texi (pass manager): Document how to disambiguate
pass names.
Co-Authored-By: Joern Rennecke <amylaar@spamcop.net>
From-SVN: r154013
Paolo Bonzini [Sun, 8 Nov 2009 20:44:56 +0000 (8 20:44 +0000)]
df-problems.c: Fix documentation for forward simulation of LR.
2009-11-08 Paolo Bonzini <bonzini@gnu.org>
* df-problems.c: Fix documentation for forward simulation of LR.
(df_simulate_one_insn_forwards): Use df_simulate_find_defs.
(df_simulate_finalize_forwards): Remove.
* df.h (df_simulate_finalize_forwards): Remove.
From-SVN: r154012
Richard Guenther [Sun, 8 Nov 2009 15:27:17 +0000 (8 15:27 +0000)]
tree-ssa-structalias.c (build_succ_graph): Properly make variables escape if they are stored to anything.
2009-11-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (build_succ_graph): Properly make
variables escape if they are stored to anything.
* gcc.dg/torture/pta-escape-1.c: New testcase.
From-SVN: r154010
Eric Botcazou [Sun, 8 Nov 2009 12:17:51 +0000 (8 12:17 +0000)]
decl.c (make_packable_type): Fix oversight.
* gcc-interface/decl.c (make_packable_type): Fix oversight.
(gnat_to_gnu_field): Do not attempt to change the form of the type
if the field requires strict alignment. Always change the form of
the type if the specified size is smaller than its size.
From-SVN: r154009
Richard Guenther [Sun, 8 Nov 2009 12:10:32 +0000 (8 12:10 +0000)]
re PR rtl-optimization/41928 (segfault at gcc/bitmap.c:297)
2009-11-08 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/41928
* loop-invariant.c (free_loop_data): If we didn't allocate
loop data do not try to free it.
* gfortran.dg/pr41928.f90: New testcase.
From-SVN: r154008
Jason Merrill [Sun, 8 Nov 2009 03:47:44 +0000 (7 22:47 -0500)]
* tree.c (reconstruct_complex_type): Preserve attributes.
From-SVN: r154007
Jason Merrill [Sun, 8 Nov 2009 03:47:36 +0000 (7 22:47 -0500)]
re PR c++/18451 (C++ error message regression)
PR c++/18451
PR c++/40738
* cp-tree.h (cp_decl_specifier_seq): Add any_type_specifiers_p.
* parser.c (cp_parser_single_declaration): Call
cp_parser_parse_and_diagnose_invalid_type_name here, too.
(cp_parser_parameter_declaration): And here.
(cp_parser_parse_and_diagnose_invalid_type_name): Be
less picky about declarator form. Don't skip to
the end of the block if we're in a declarator.
(cp_parser_decl_specifier_seq): Set any_type_specifiers_p.
(cp_parser_simple_declaration): Check it.
(cp_parser_member_declaration): Likewise.
(cp_parser_diagnose_invalid_type_name): Tweak error message.
(cp_parser_expression_statement): Likewise.
* decl2.c (grokfield): Mention decltype instead of typeof.
From-SVN: r154006
GCC Administrator [Sun, 8 Nov 2009 00:16:49 +0000 (8 00:16 +0000)]
Daily bump.
From-SVN: r154005
Richard Guenther [Sat, 7 Nov 2009 21:33:29 +0000 (7 21:33 +0000)]
tree-ssa-structalias.c (build_succ_graph): Feed stores to anything only to variables that can take pointers.
2009-11-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (build_succ_graph): Feed stores
to anything only to variables that can take pointers.
(get_constraint_for_ssa_var): Properly exclude full
variables from expanding.
(first_vi_for_offset): Avoid overflow in arithmetic.
(first_or_preceding_vi_for_offset): Likewise.
(count_num_arguments): Fix implementation.
(gate_ipa_pta): Do not run when not optimizing.
From-SVN: r154002
David Binderman [Sat, 7 Nov 2009 20:51:14 +0000 (7 20:51 +0000)]
builtins.c (apply_args_size, [...]): Remove some set but not used variables.
2009-11-07 David Binderman <dcb314@hotmail.com>
* builtins.c (apply_args_size, expand_builtin_mathfn, expand_powi,
expand_builtin_expect, maybe_emit_sprintf_chk_warning): Remove some
set but not used variables.
* calls.c (flags_from_decl_or_type): Likewise.
* genautomata.c (check_regexp_units_distribution): Likewise.
From-SVN: r154001
Jason Merrill [Sat, 7 Nov 2009 20:28:54 +0000 (7 15:28 -0500)]
* g++.dg/abi/regparm1.C: Fix execute test.
From-SVN: r154000
Jakub Jelinek [Sat, 7 Nov 2009 17:41:07 +0000 (7 18:41 +0100)]
re PR tree-optimization/41643 (ICE (segmentation fault) for SPEC CPU2000's 176.gcc when using -fno-tree-dce)
PR tree-optimization/41643
* gcc.dg/pr41643.c: New test.
From-SVN: r153997
Uros Bizjak [Sat, 7 Nov 2009 07:44:08 +0000 (7 08:44 +0100)]
sse.md (xop_pmacsww, [...]): Compress operand alternatives.
* config/i386/sse.md (xop_pmacsww, xop_pmacssww, xop_pmacsdd,
xop_pmacssdd, xop_pmacssdql, xop_pmacssdqh, xop_pmacsdql,
*xop_pmacsdql_mem, xop_pmacsdqh, *xop_pmacsdqh_mem, xop_pmacsswd,
xop_pmacswd, xop_pmadcsswd, xop_pmadcswd, xop_pcmov_<mode>,
xop_pcmov_<mode>256, xop_pperm, xop_pperm_pack_v2di_v4si,
xop_pperm_pack_v4si_v8hi, xop_pperm_pack_v8hi_v16qi): Compress
operand alternatives.
From-SVN: r153993
Jerry DeLisle [Sat, 7 Nov 2009 02:35:06 +0000 (7 02:35 +0000)]
re PR fortran/41909 (ICE with "call foo" in "program foo")
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41909
* gfortran.dg/recursive_check_15.f90: New test.
From-SVN: r153990
Jerry DeLisle [Sat, 7 Nov 2009 02:32:35 +0000 (7 02:32 +0000)]
Fix changelog.
From-SVN: r153989
Jerry DeLisle [Sat, 7 Nov 2009 02:30:08 +0000 (7 02:30 +0000)]
resolve.c (is_illegal_recursion): Return false if sym is program.
2009-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* resolve.c (is_illegal_recursion): Return false if sym is program.
From-SVN: r153988
Jan Kratochvil [Sat, 7 Nov 2009 01:59:54 +0000 (7 01:59 +0000)]
largefile.m4: New file.
* largefile.m4: New file.
Co-Authored-By: Joel Brobecker <brobecker@adacore.com>
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r153987
GCC Administrator [Sat, 7 Nov 2009 00:16:54 +0000 (7 00:16 +0000)]
Daily bump.
From-SVN: r153985
Steven G. Kargl [Fri, 6 Nov 2009 23:47:51 +0000 (6 23:47 +0000)]
2009-11-06 Steven G. Kargl <kargl@gcc.gnu.org>
resolve.c (check_typebound_override): Remove duplicate "in" in error
message.
From-SVN: r153982
Benjamin Kosnik [Fri, 6 Nov 2009 22:15:17 +0000 (6 22:15 +0000)]
user.cfg.in: Adjust includes.
2009-11-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Adjust includes.
* doc/doxygen/doxygroups.cc: Move group markup.
* include/tr1_impl/regex: Change " to '. Add group markup.
* include/std/utility: Same.
* include/std/type_traits: Same.
* include/std/streambuf: Same.
* include/std/iosfwd: Same.
* include/std/limits: Same.
* include/std/sstream: Same.
* include/profile/impl/profiler_state.h: Same.
* include/profile/impl/profiler_hashtable_size.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/streambuf_iterator.h: Same.
* libsupc++/exception: Same.
* libsupc++/cxxabi.h: Same.
* include/tr1_impl/type_traits: Same.
* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
* include/parallel/list_partition.h: Same.
* include/parallel/for_each.h: Same.
* include/parallel/workstealing.h: Same.
* include/parallel/base.h: Same.
* include/parallel/equally_split.h: Same.
* include/parallel/random_shuffle.h: Same.
* include/parallel/balanced_quicksort.h: Same.
* include/parallel/merge.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/compatibility.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/checkers.h: Same.
* include/parallel/random_number.h: Same.
* include/c_global/csignal: Change # to \#.
* include/c_global/cstdlib: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cstdatomic: Same.
* include/c_global/cmath: Same.
* include/c_global/ciso646: Same.
* include/c_global/ctime: Same.
* include/c_global/clocale: Same.
* include/c_global/climits: Same.
* include/c_global/cassert: Same.
* include/c_global/csetjmp: Same.
* include/c_global/cwchar: Same.
* include/c_global/cfloat: Same.
* include/c_global/cstring: Same.
* include/c_global/cstddef: Same.
* include/c_global/cwctype: Same.
* include/std/memory: Only dance around boost_sp_counted_base.h.
* include/tr1_impl/boost_sp_counted_base.h: Add markup.
* include/tr1/shared_ptr.h: Strip markup.
* include/bits/shared_ptr.h: Move base types...
* include/bits/shared_ptr_base.h: ...here.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* configure: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
From-SVN: r153980
Jason Merrill [Fri, 6 Nov 2009 21:36:56 +0000 (6 16:36 -0500)]
add missing changelog line
From-SVN: r153979
Jason Merrill [Fri, 6 Nov 2009 21:18:42 +0000 (6 16:18 -0500)]
re PR c++/15946 (Unhelpful error message when "typename" is omitted)
PR c++/15946
* parser.c (cp_parser_check_template_parameters): Don't talk about
specialization at function scope.
(cp_parser_diagnose_invalid_type_name): Handle dependent scope.
(cp_parser_parse_and_diagnose_invalid_type_name): Likewise.
(cp_parser_expression_statement): Suggest typename.
* error.c (dump_decl) [SCOPE_REF]: Print the type here.
(dump_expr) [SCOPE_REF]: Call it.
(dump_type) [UNBOUND_CLASS_TEMPLATE]: Check TFF_UNQUALIFIED_NAME.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Print class template
args.
From-SVN: r153978
Jason Merrill [Fri, 6 Nov 2009 21:18:35 +0000 (6 16:18 -0500)]
re PR c++/9381 (attribute on member function pointer have no effect)
PR c++/9381
* decl2.c (build_memfn_type): Preserve attributes.
(cp_reconstruct_complex_type): Likewise.
(maybe_retrofit_in_chrg): Likewise.
* call.c (standard_conversion): Use build_memfn_type.
* pt.c (tsubst): Likewise.
* decl.c (build_ptrmem_type): Likewise
(check_function_type): Preserve attributes.
* tree.c (cp_build_type_attribute_variant): Propagate exception
specs on METHOD_TYPE, too.
(strip_typedefs): Preserve exception specs and attributes.
From-SVN: r153977
Basile Starynkevitch [Fri, 6 Nov 2009 19:20:39 +0000 (6 19:20 +0000)]
plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* doc/plugins.texi (Plugin callbacks): added PLUGIN_PRAGMAS.
* c-pragma.c: Include "plugin.h".
(init_pragma): Invoke PLUGIN_PRAGMAS.
* gcc-plugin.h: Added PLUGIN_PRAGMAS.
* plugin.c (plugin_event_name): Added PLUGIN_PRAGMAS & the missing
PLUGIN_ATTRIBUTES.
(register_callback): Added PLUGIN_PRAGMAS. Fixed typo in message
error for unknown callback event.
(invoke_plugin_callbacks): Added PLUGIN_PRAGMAS.
* Makefile.in (c-pragma.o): Added dependency upon plugin.h.
(PLUGIN_HEADERS): added plugin.h.
2009-11-06 Basile Starynkevitch <basile@starynkevitch.net>
* g++.dg/plugin/pragma_plugin-test-1.C: new testcase for
PLUGIN_PRAGMAS.
* g++.dg/plugin/pragma_plugin.c: new test plugin for
PLUGIN_PRAGMAS.
* g++.dg/plugin/plugin.exp (plugin_test_list): Add pragma_plugin.c and
pragma_plugin-test-1.C.
From-SVN: r153975
Andrew Pinski [Fri, 6 Nov 2009 19:10:07 +0000 (6 19:10 +0000)]
re PR c++/41536 (always_inline does not work always with constructors)
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* optimize.c (maybe_clone_body): Copy DECL_ATTRIBUTES and
DECL_DISREGARD_INLINE_LIMITS also.
2009-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/41536
* g++.dg/ext/always_inline-5.C: New test.
From-SVN: r153974
Jakub Jelinek [Fri, 6 Nov 2009 17:51:20 +0000 (6 18:51 +0100)]
re PR c++/41967 (gcc get into endless loop when compiling an openmp program)
PR c++/41967
* parser.c (cp_parser_omp_for_loop): After diagnosing not perfectly
nested loop and parsing statements, don't cp_parser_require }, instead
exit the loop if next token is CPP_EOF.
* g++.dg/gomp/pr41967.C: New test.
From-SVN: r153972
Michael Matz [Fri, 6 Nov 2009 15:05:20 +0000 (6 15:05 +0000)]
re PR middle-end/41963 (177.mesa in SPEC CPU 2K is miscompiled)
PR middle-end/41963
* tree-ssa-math-opts.c (execute_cse_reciprocals): Check all uses
of a potential reciprocal to really be reciprocals.
testsuite/
* gcc.dg/pr41963.c: New test.
From-SVN: r153971
Jonas Maebe [Fri, 6 Nov 2009 14:36:57 +0000 (6 15:36 +0100)]
Checking this in for: Jonas Maebe <jonas.maebe@elis.ugent.be>
Add DWARF attribute value for the "Borland fastcall" calling
convention.
* elf/dwarf2.h: Add DW_CC_GNU_borland_fastcall_i386 constant.
From-SVN: r153970
Paolo Carlini [Fri, 6 Nov 2009 11:39:35 +0000 (6 11:39 +0000)]
multiway_merge.h: Simple formatting and uglification fixes.
2009-11-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/find_selectors.h: Likewise.
* include/parallel/losertree.h: Likewise.
* include/parallel/list_partition.h: Likewise.
* include/parallel/for_each.h: Likewise.
* include/parallel/multiseq_selection.h: Likewise.
* include/parallel/workstealing.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/numeric: Likewise.
* include/parallel/quicksort.h: Likewise.
* include/parallel/equally_split.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/random_shuffle.h: Likewise.
* include/parallel/balanced_quicksort.h: Likewise.
* include/parallel/tags.h: Likewise.
* include/parallel/set_operations.h: Likewise.
* include/parallel/merge.h: Likewise.
* include/parallel/unique_copy.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/search.h: Likewise.
* include/parallel/partition.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/find.h: Likewise.
* include/parallel/queue.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
* include/parallel/checkers.h: Likewise.
* include/parallel/sort.h: Likewise.
From-SVN: r153966
Jakub Jelinek [Fri, 6 Nov 2009 10:33:33 +0000 (6 11:33 +0100)]
x86intrin.h: Include fma4intrin.h, xopintrin.h and lwpintrin.h after immintrin.h.
* config/i386/x86intrin.h: Include fma4intrin.h, xopintrin.h and
lwpintrin.h after immintrin.h.
* config/i386/fma4intrin.h (__v8sf, __v4df, __m256, __m256d): Remove
typedefs.
From-SVN: r153965
Ozkan Sezer [Fri, 6 Nov 2009 10:16:30 +0000 (6 10:16 +0000)]
configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem paths for *-w64-mingw* and x86_64-*mingw*.
2009-11-06 Ozkan Sezer <sezeroz@gmail.com>
* configure.ac (FLAGS_FOR_TARGET): Add -L and -isystem
paths for *-w64-mingw* and x86_64-*mingw*.
* configure: Regenerated.
From-SVN: r153964
Jakub Jelinek [Fri, 6 Nov 2009 08:46:45 +0000 (6 09:46 +0100)]
re PR c/41935 (ICE : tree check: expected integer_cst, have nop_expr in int_cst_value, at tree.c:8301)
PR middle-end/41935
* c-common.c (fold_offsetof_1) <case ARRAY_REF>: Don't crash for VLAs
or non-constant index, allow index one past the last element and
allow exceeding array bound in arrays that might be used as flexible
array members.
* gcc.dg/pr41935.c: New test.
* c-c++-common/pr41935.c: New test.
* c-c++-common/builtin-offsetof.c (f0): Allow index one past the last
element.
* gcc.c-torture/execute/pr41935.c: New test.
From-SVN: r153962
Jonathan Wakely [Fri, 6 Nov 2009 08:38:02 +0000 (6 08:38 +0000)]
re PR libstdc++/41949 (std::endl documentation contains bad link)
2009-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/41949
* include/std/ostream: Adjust link.
From-SVN: r153961
Jason Merrill [Fri, 6 Nov 2009 04:32:13 +0000 (5 23:32 -0500)]
re PR c++/34180 (Default copy constructor copies const auto_ptr members)
PR c++/34180
* method.c (do_build_copy_constructor): Don't drop cv-quals from
the field type.
From-SVN: r153960
Jason Merrill [Fri, 6 Nov 2009 03:33:17 +0000 (5 22:33 -0500)]
re PR c++/7046 (#pragma pack(1) context evaluated at point of instantiation rather than declaration)
PR c++/7046
* class.c (finish_struct): Store maximum_field_alignment in
TYPE_PRECISION.
* pt.c (instantiate_class_template): Set maximum_field_alignment.
From-SVN: r153959
Jason Merrill [Fri, 6 Nov 2009 03:33:06 +0000 (5 22:33 -0500)]
re PR c++/34870 (argument-dependent lookup fails to find friend declaration)
PR c++/34870
* name-lookup.c (arg_assoc_class): Call complete_type.
* pt.c (instantiate_class_template): Call uses_template_parms
instead of dependent_type_p.
From-SVN: r153958
Jason Merrill [Fri, 6 Nov 2009 03:32:55 +0000 (5 22:32 -0500)]
re PR c++/41703 (Problems with SFINAE. Source works at gcc 3.4.6 but fails at 4.2.1 and 4.5.0.
20091008)
PR c++/41703
* pt.c (check_undeduced_parms): New subroutine of...
(more_specialized_fn): ...here. Undeduced template parms can make
a template less specialized than another.
From-SVN: r153957
GCC Administrator [Fri, 6 Nov 2009 00:16:52 +0000 (6 00:16 +0000)]
Daily bump.
From-SVN: r153956
Richard Henderson [Thu, 5 Nov 2009 23:27:52 +0000 (5 15:27 -0800)]
* config/i386/ia32intrin.h: Protect CRC32 builtins with __SSE4_2__.
From-SVN: r153953
Steven G. Kargl [Thu, 5 Nov 2009 20:57:12 +0000 (5 20:57 +0000)]
re PR fortran/41918 (Superflous warning "was declared INTENT(OUT) but was not set")
2009-11-03 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41918
* fortran/trans-decl.c: Silence intent(out) warning for derived type
dummy arguments with default initialization.
From-SVN: r153952
Eric Botcazou [Thu, 5 Nov 2009 18:26:21 +0000 (5 18:26 +0000)]
* gcc-interface/utils.c (gnat_type_for_mode): Handle vector modes.
From-SVN: r153949
Eric Botcazou [Thu, 5 Nov 2009 18:25:10 +0000 (5 18:25 +0000)]
trans.c (lvalue_required_p): New case.
* gcc-interface/trans.c (lvalue_required_p) <N_Unchecked_Conversion>:
New case.
From-SVN: r153948
Janus Weil [Thu, 5 Nov 2009 15:31:07 +0000 (5 16:31 +0100)]
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* interface.c (matching_typebound_op,gfc_extend_assign): Handle CLASS
variables.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
* gfortran.dg/class_12.f03: New test.
From-SVN: r153946
Jakub Jelinek [Thu, 5 Nov 2009 14:54:19 +0000 (5 15:54 +0100)]
i386.exp (check_effective_target_xop): Fix typo in builtin's name.
* gcc.target/i386/i386.exp (check_effective_target_xop): Fix typo
in builtin's name.
From-SVN: r153943
Paul Brook [Thu, 5 Nov 2009 14:47:45 +0000 (5 14:47 +0000)]
arm.c (arm_fp_model, [...]): Remove.
2009-11-05 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (arm_fp_model, arm_fpu_arch, arm_fpu_tune): Remove.
(arm_fpu_desc): New.
(all_fpus): Add FPU details.
(fp_model_for_fpu): Remove.
(arm_override_options): Set and use arm_fpu_desc and arm_fpu_attr.
(arm_output_epilogue, arm_save_coproc_regs): Use TARGET_FPA_EMU2.
(arm_file_start): Use arm_fpu_desc.
* config/arm/arm.h (TARGET_FPA, TARGET_MAVERICK, TARGET_VFP,
TARGET_VFPD32, TARGET_VFP3, TARGET_NEON_FP16, TARGET_NEON): Use
arm_fpu_desc.
(TARGET_FPA_EMU2): Define.
(arm_fp_model, fputype, arm_fpu_tune): Remove.
(vfp_reg_type, arm_fpu_desc): New.
* config/arm/arm.md (attr fpu): Simplify.
* config/arm/fpa.md (movxf_fpa): Use TARGET_FPA_EMU2.
* config/arm/linux-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/bpabi.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/netbsd-elf.h (FPUTYPE_DEFAULT): Use string value.
* config/arm/vxworks.h (FPUTYPE_DEFAULT): Use string value.
From-SVN: r153942
Michael Matz [Thu, 5 Nov 2009 14:11:26 +0000 (5 14:11 +0000)]
i386.c (ix86_builtin_reciprocal): Remove dependency on TARGET_RECIP.
* config/i386/i386.c (ix86_builtin_reciprocal): Remove dependency
on TARGET_RECIP.
* doc/invoke.texi (-mrecip): Clarify that we don't need -mrecip
for 1/sqrtf.
From-SVN: r153940
Paolo Carlini [Thu, 5 Nov 2009 14:06:13 +0000 (5 14:06 +0000)]
multiway_merge.h: Simple formatting and uglification fixes.
2009-11-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/multiway_merge.h: Simple formatting and
uglification fixes.
* include/parallel/losertree.h: Likewise.
* include/parallel/base.h: Likewise.
* include/parallel/par_loop.h: Likewise.
* include/parallel/omp_loop_static.h: Likewise.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/omp_loop.h: Likewise.
From-SVN: r153939
Rafael Avila de Espindola [Thu, 5 Nov 2009 13:59:54 +0000 (5 13:59 +0000)]
lto-plugin.c (temp_obj_dir_name): Remove.
2009-11-05 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (temp_obj_dir_name): Remove.
(arguments_file_name): New.
(free_2): Free arguments_file_name instead of temp_obj_dir_name.
(exec_lto_wrapper): Create arguments file with make_temp_file.
(cleanup_handler): Don't remove the temporary directory. Remove the
arguments file.
(onload): Don't create the temporary directory.
From-SVN: r153938
Joern Rennecke [Thu, 5 Nov 2009 13:41:46 +0000 (5 13:41 +0000)]
* MAINTAINERS (Write After Approval): Add entry for my INRIA work.
From-SVN: r153937
Jason Merrill [Thu, 5 Nov 2009 13:11:42 +0000 (5 08:11 -0500)]
re PR c++/36912 (ICE with "-frounding-math -g")
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153936
Martin Jambor [Thu, 5 Nov 2009 12:09:08 +0000 (5 13:09 +0100)]
tree-sra.c (struct access): Changed comment of next_sibling field.
2009-11-04 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): Changed comment of next_sibling field.
(analyze_modified_params): Loop over accesses of a group rather than
over all with the ame base, pass a common bitmap to
walk_aliased_vdefs.
(unmodified_by_ref_scalar_representative): Build link lists of
accesses of a group.
(splice_param_accesses): Likewise.
From-SVN: r153935
Janus Weil [Thu, 5 Nov 2009 10:42:48 +0000 (5 11:42 +0100)]
re PR fortran/41556 ([OOP] Errors in applying operator/assignment to an abstract type)
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* resolve.c (resolve_function,resolve_call): Prevent abstract interfaces
from being called, but allow deferred type-bound procedures with
abstract interface.
2009-11-05 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41873
* gfortran.dg/interface_abstract_4.f90: New test.
From-SVN: r153934
Maxim Kuvyrkov [Thu, 5 Nov 2009 10:22:27 +0000 (5 10:22 +0000)]
* gcc.target/m68k/pr41302.c: Fix target triplet.
From-SVN: r153933
Benjamin Kosnik [Thu, 5 Nov 2009 02:55:08 +0000 (5 02:55 +0000)]
009-11-04 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/25_algorithms/fill/5.cc: Move...
* testsuite/25_algorithms/fill_n/1.cc: ...here.
From-SVN: r153929
GCC Administrator [Thu, 5 Nov 2009 00:16:41 +0000 (5 00:16 +0000)]
Daily bump.
From-SVN: r153928
Kenneth Zadeck [Wed, 4 Nov 2009 23:17:54 +0000 (4 23:17 +0000)]
df-scan.c (df-uses-record): Add case zero_extract of mem.
2009-11-04 Kenneth Zadeck <zadeck@naturalbridge.com>
* df-scan.c (df-uses-record): Add case zero_extract of mem.
From-SVN: r153924
Jason Merrill [Wed, 4 Nov 2009 23:14:56 +0000 (4 18:14 -0500)]
Revert untested varasm.c change
From-SVN: r153923
Jason Merrill [Wed, 4 Nov 2009 23:14:14 +0000 (4 18:14 -0500)]
fix
From-SVN: r153922
Jason Merrill [Wed, 4 Nov 2009 23:13:23 +0000 (4 18:13 -0500)]
re PR c++/36912 (ICE with "-frounding-math -g")
PR c++/36912
* varasm.c (initializer_constant_valid_p): A PLUS_EXPR
or MINUS_EXPR of REAL_TYPE is not a valid constant initializer.
(output_constant): Avoid crash after error.
From-SVN: r153921
Jason Merrill [Wed, 4 Nov 2009 22:29:35 +0000 (4 17:29 -0500)]
re PR c++/39413 (static_assert and SFINAE)
PR c++/39413
* search.c (lookup_base): Don't complete_type (base).
From-SVN: r153920
Eric Botcazou [Wed, 4 Nov 2009 21:50:31 +0000 (4 21:50 +0000)]
Fix nit
From-SVN: r153919
Eric Botcazou [Wed, 4 Nov 2009 21:45:54 +0000 (4 21:45 +0000)]
re PR target/10127 (-fstack-check let's program crash)
PR target/10127
PR ada/20548
* config/i386/i386.md (probe_stack_range): New expander.
(logical operation peepholes): Do not split stack checking probes.
From-SVN: r153918
Harsha Jagasia [Wed, 4 Nov 2009 21:15:42 +0000 (4 21:15 +0000)]
invoke.texi (-mlwp): Add documentation.
2009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* doc/invoke.texi (-mlwp): Add documentation.
* doc/extend.texi (x86 intrinsics): Add LWP intrinsics.
* config.gcc (i[34567]86-*-*): Include lwpintrin.h.
(x86_64-*-*): Ditto.
* config/i386/lwpintrin.h: New file, provide x86 compiler
intrinisics for LWP.
* config/i386/cpuid.h (bit_LWP): Define LWP bit.
* config/i386/x86intrin.h: Add LWP check and lwpintrin.h.
* config/i386/i386-c.c (ix86_target_macros_internal): Check
ISA_FLAG for LWP.
* config/i386/i386.h (TARGET_LWP): New macro for LWP.
* config/i386/i386.opt (-mlwp): New switch for LWP support.
* config/i386/i386.c (OPTION_MASK_ISA_LWP_SET): New.
(OPTION_MASK_ISA_LWP_UNSET): New.
(ix86_handle_option): Handle -mlwp.
(isa_opts): Handle -mlwp.
(enum pta_flags): Add PTA_LWP.
(override_options): Add LWP support.
(IX86_BUILTIN_LLWPCB16): New for LWP intrinsic.
(IX86_BUILTIN_LLWPCB32): Ditto.
(IX86_BUILTIN_LLWPCB64): Ditto.
(IX86_BUILTIN_SLWPCB16): Ditto.
(IX86_BUILTIN_SLWPCB32): Ditto.
(IX86_BUILTIN_SLWPCB64): Ditto.
(IX86_BUILTIN_LWPVAL16): Ditto.
(IX86_BUILTIN_LWPVAL32): Ditto.
(IX86_BUILTIN_LWPVAL64): Ditto.
(IX86_BUILTIN_LWPINS16): Ditto.
(IX86_BUILTIN_LWPINS32): Ditto.
(IX86_BUILTIN_LWPINS64): Ditto.
(enum ix86_special_builtin_type): Add LWP intrinsic support.
(builtin_description): Ditto.
(ix86_init_mmx_sse_builtins): Ditto.
(ix86_expand_special_args_builtin): Ditto.
* config/i386/i386.md (UNSPEC_LLWP_INTRINSIC): Add new UNSPEC
for LWP support.
(UNSPEC_SLWP_INTRINSIC): Ditto.
(UNSPECV_LWPVAL_INTRINSIC): Ditto.
(UNSPECV_LWPINS_INTRINSIC): Ditto.
(lwp_llwpcbhi1): New lwp pattern.
(lwp_llwpcbsi1): Ditto.
(lwp_llwpcbdi1): Ditto.
(lwp_slwpcbhi1): Ditto.
(lwp_slwpcbsi1): Ditto.
(lwp_slwpcbdi1): Ditto.
(lwp_lwpvalhi3): Ditto.
(lwp_lwpvalsi3): Ditto.
(lwp_lwpvaldi3): Ditto.
(lwp_lwpinshi3): Ditto.
(lwp_lwpinssi3): Ditto.
(lwp_lwpinsdi3): Ditto.
Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
From-SVN: r153917
Janus Weil [Wed, 4 Nov 2009 19:41:07 +0000 (4 20:41 +0100)]
[multiple changes]
2009-11-04 Tobias Burnus <burnus@gcc.gnu.org>
Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41937
* interface.c (gfc_check_operator_interface): Handle CLASS arguments.
* resolve.c (resolve_allocate_expr): Handle allocatable components of
CLASS variables.
2009-11-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/41556
PR fortran/41937
* gfortran.dg/class_11.f03: New test.
From-SVN: r153911
Jason Merrill [Wed, 4 Nov 2009 19:36:34 +0000 (4 14:36 -0500)]
correct PR number
From-SVN: r153910