Jan Hubicka [Fri, 13 Nov 2009 20:05:56 +0000 (21:05 +0100)]
* objc-act.c (objc_add_static_instance): Do not set DECL_COMMON.
From-SVN: r154173
Richard Henderson [Fri, 13 Nov 2009 19:10:45 +0000 (11:10 -0800)]
function.c (stack_protect_prologue): Don't bypass expand_expr for stack_protect_guard and guard_decl.
* function.c (stack_protect_prologue): Don't bypass expand_expr
for stack_protect_guard and guard_decl.
(stack_protect_epilogue): Likewise.
From-SVN: r154168
Jan Hubicka [Fri, 13 Nov 2009 18:55:07 +0000 (19:55 +0100)]
ipa.c (function_and_variable_visibility): Clear COMDAT on functions when to PUBLIC is set.
* ipa.c (function_and_variable_visibility): Clear COMDAT on functions
when to PUBLIC is set.
From-SVN: r154167
Jason Merrill [Fri, 13 Nov 2009 18:46:47 +0000 (13:46 -0500)]
re PR c++/27425 (ICE with invalid template-template-parameter)
PR c++/27425
PR c++/34274
* pt.c (expand_template_argument_pack): Handle null arg gracefully.
(convert_template_argument): Use %T for type.
From-SVN: r154164
Jason Merrill [Fri, 13 Nov 2009 18:46:39 +0000 (13:46 -0500)]
re PR c++/29363 (ICE throwing undeclared object)
PR c++/29363
* decl.c (create_implicit_typedef): Set TYPE_STUB_DECL here.
(cxx_init_decl_processing): Not here.
* name-lookup.c (pushtag): Or here.
* pt.c (lookup_template_class): Or here.
From-SVN: r154163
Jakub Jelinek [Fri, 13 Nov 2009 18:38:36 +0000 (19:38 +0100)]
re PR middle-end/42029 (ICE with complex data type and openmp for reduction clause)
PR middle-end/42029
* gimplify.c (gimplify_omp_atomic): Set DECL_GIMPLE_REG_P on
tmp_load if needed.
* libgomp.c/pr42029.c: New test.
From-SVN: r154161
Uros Bizjak [Fri, 13 Nov 2009 18:33:37 +0000 (19:33 +0100)]
re PR target/41900 (call *%esp shouldn't be generated because of CPU errata)
2009-11-13 Uros Bizjak <ubizjak@gmail.com>
PR target/41900
(*call_pop_1, *call_1, *call_value_pop_1, *call_value_1): Use "lsm"
as operand 1 constraint.
* config/i386/predicates.md (call_insn_operand): Depend on
index_register_operand to avoid %esp register.
2009-11-13 Uros Bizjak <ubizjak@gmail.com>
Revert:
2009-11-03 Uros Bizjak <ubizjak@gmail.com>
PR target/41900
* config/i386/i386.h (ix86_arch_indices) <X86_ARCH_CALL_ESP>: New.
(TARGET_CALL_ESP): New define.
* config/i386/i386.c (initial_ix86_tune_features): Initialize
X86_ARCH_CALL_ESP.
* config/i386/i386.md (*call_pop_1_esp, *call_1_esp,
*call_value_pop_1_esp, *call_value_1_esp): Rename from *call_pop_1,
*call_1, *call_value_pop_1 and *call_value_1. Depend on
TARGET_CALL_ESP.
(*call_pop_1, *call_1, *call_value_pop_1, *call_value_1):
New patterns, use "lsm" as operand 1 constraint.
* config/i386/predicates.md (call_insn_operand): Depend on
index_register_operand for !TARGET_CALL_ESP to avoid %esp register.
From-SVN: r154160
Eric Botcazou [Fri, 13 Nov 2009 18:05:20 +0000 (18:05 +0000)]
* exception.cc (PERSONALITY_FUNCTION): Fix oversight.
From-SVN: r154159
Jason Merrill [Fri, 13 Nov 2009 17:59:26 +0000 (12:59 -0500)]
re PR c++/26965 (Unnecessary debug info for unused consts in C++)
PR debug/26965
* dwarf2out.c (gen_variable_die): Don't worry about DECL_COMDAT.
Don't emit a second declaration at any scope.
From-SVN: r154157
Dodji Seketeli [Fri, 13 Nov 2009 15:57:14 +0000 (16:57 +0100)]
Forgot to add gcc/ChangeLog entry for debug/41065
From-SVN: r154154
Paolo Carlini [Fri, 13 Nov 2009 15:06:28 +0000 (15:06 +0000)]
algorithm: Include <utility>, per UK-300.
2009-11-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/algorithm: Include <utility>, per UK-300.
* include/bits/stl_algobase.h: Don't do it here.
From-SVN: r154152
Jason Merrill [Fri, 13 Nov 2009 14:40:32 +0000 (09:40 -0500)]
re PR c++/35075 (ICE with references in templates)
PR c++/35075
* pt.c (convert_nontype_argument): Give helpful error about
reference variable argument to reference template parameter.
From-SVN: r154151
Jason Merrill [Fri, 13 Nov 2009 14:40:22 +0000 (09:40 -0500)]
PR c++/21008, DR 515
PR c++/21008, DR 515
* semantics.c (finish_non_static_data_member): Don't check
derivation in a template.
From-SVN: r154150
Jason Merrill [Fri, 13 Nov 2009 14:40:13 +0000 (09:40 -0500)]
re PR c++/11987 (Accepts-invalid with inherited nested type)
PR c++/11987
* parser.c (cp_parser_direct_declarator): Give helpful error about
trying to define member of a dependent typedef.
* pt.c (resolve_typename_type): Don't resolve a typedef typename.
* tree.c (typedef_variant_p): New.
* cp-tree.h: Declare it.
From-SVN: r154149
Andrey Belevantsev [Fri, 13 Nov 2009 14:32:52 +0000 (17:32 +0300)]
re PR rtl-optimization/41697 (ICE on gcc.c-torture/compile/
20090917-1.c)
PR rtl-optimization/41697
* sel-sched-ir.c (fallthru_bb_of_jump): Bail out when a block with
a conditional jump has a single successor.
From-SVN: r154148
Andrey Belevantsev [Fri, 13 Nov 2009 14:27:13 +0000 (17:27 +0300)]
sched-deps.c (init_deps): New parameter lazy_reg_last.
2009-11-13 Andrey Belevantsev <abel@ispras.ru>
* sched-deps.c (init_deps): New parameter lazy_reg_last. Don't
allocate reg_last when in case lazy_reg_last is true.
(init_deps_reg_last): New.
(free_deps): When max_reg is 0, this context is already freed.
* sched-int.h (init_deps_reg_last): Export.
(init_deps): Update prototype.
* sched-ebb.c (schedule_ebb): Update the call to init_deps.
* sched-rgn.c (sched_rgn_compute_dependencies): Likewise.
* ddg.c (build_intra_loop_deps): Likewise.
* sel-sched-ir.c (copy_deps_context, create_deps_context,
reset_deps_context, deps_init_id): Likewise.
(init_first_time_insn_data): Lazy allocate INSN_DEPS_CONTEXT.
(free_data_for_scheduled_insn): New, break down from ...
(free_first_time_insn_data): ... here.
(has_dependence_p): Allocate reg_last now, when it is needed.
(extend_insn_data): When maximal LUID is big enough, allocate
per-insn data in smaller chunks.
* sel-sched-ir.h (free_data_for_scheduled_insn): Export.
* sel-sched.c (update_seqnos_and_stage): Free INSN_DEPS_CONTEXT
in scheduled insn.
From-SVN: r154147
Uros Bizjak [Fri, 13 Nov 2009 09:05:18 +0000 (10:05 +0100)]
re PR testsuite/42001 (LTO tests fail with non multilib targets (but still not --disable-multilib ))
PR testsuite/42001
* g++.dg/lto/lto.exp: Pass no-mathlib to lto_init. Call
lto_finish at the end.
* gfortran.dg/lto/lto.exp: Ditto.
From-SVN: r154145
Uros Bizjak [Fri, 13 Nov 2009 07:59:22 +0000 (08:59 +0100)]
i386.md (call_value): Fix comment.
* config/i386/i386.md (call_value): Fix comment.
(sibcall_value): Ditto.
From-SVN: r154143
Eric Botcazou [Fri, 13 Nov 2009 07:46:06 +0000 (07:46 +0000)]
Fix nits
From-SVN: r154142
Eric Botcazou [Fri, 13 Nov 2009 06:58:12 +0000 (06:58 +0000)]
linux-unwind.h (x86_frob_update_context): New function.
* config/i386/linux-unwind.h (x86_frob_update_context): New function.
(MD_FROB_UPDATE_CONTEXT): Define.
From-SVN: r154141
Paolo Carlini [Fri, 13 Nov 2009 02:25:12 +0000 (02:25 +0000)]
type_traits (declval): Add, per DR 1255.
2009-11-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (declval): Add, per DR 1255.
(__is_convertible_helper, common_type): Use it.
* include/bits/move.h: Mention std::declval.
* testsuite/20_util/declval/requirements/1.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/common_type/requirements/
explicit_instantiation.cc: Extend.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r154140
Jason Merrill [Fri, 13 Nov 2009 02:20:41 +0000 (21:20 -0500)]
re PR c++/27078 (Duplicate error message for ambiguous enum)
PR c++/27078
* parser.c (cp_parser_primary_expression): Don't give a duplicate
ambiguity error.
From-SVN: r154139
GCC Administrator [Fri, 13 Nov 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154138
Jason Merrill [Thu, 12 Nov 2009 23:21:33 +0000 (18:21 -0500)]
re PR c++/39560 (Erroneous warnings 'unused variable' in a templated class method with union)
PR c++/39560
* decl2.c (build_anon_union_vars): Set DECL_ARTIFICIAL.
From-SVN: r154133
Eric Botcazou [Thu, 12 Nov 2009 23:14:19 +0000 (23:14 +0000)]
linux-unwind.h (sparc64_fallback_frame_state): Tidy.
* config/sparc/linux-unwind.h (sparc64_fallback_frame_state): Tidy.
Do not schedule an %sp restore. Compensate for RETURN_ADDR_OFFSET.
(sparc_fallback_frame_state): Tidy. Compensate for RETURN_ADDR_OFFSET.
ada/
* init.c (GNU/Linux Section): Enable for all architectures.
From-SVN: r154132
Jason Merrill [Thu, 12 Nov 2009 22:49:59 +0000 (17:49 -0500)]
re PR c++/37037 (ICE on template class member function definition after explicit template class instantation)
PR c++/37037
* decl.c (grokdeclarator): Don't generate a void PARM_DECL.
From-SVN: r154131
Jason Merrill [Thu, 12 Nov 2009 20:26:36 +0000 (15:26 -0500)]
re PR c++/42013 (cv-qualification of conditional expression type depending on the value of its first expression?!?)
PR c++/42013
* call.c (build_conditional_expr): Check specifically for folding
to CALL_EXPR rather than TREE_SIDE_EFFECTS.
From-SVN: r154129
Jan Hubicka [Thu, 12 Nov 2009 19:13:17 +0000 (20:13 +0100)]
ipa.c (function_and_variable_visibility): Fix my accidentail commit and clear DECL_COMMON on localized declarations.
* ipa.c (function_and_variable_visibility): Fix my accidentail commit and
clear DECL_COMMON on localized declarations.
From-SVN: r154128
Jan Kratochvil [Thu, 12 Nov 2009 19:09:12 +0000 (19:09 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r154127
Paolo Carlini [Thu, 12 Nov 2009 18:45:23 +0000 (18:45 +0000)]
stl_algobase.h: Include the full <utility>, per UK-300.
2009-11-12 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_algobase.h: Include the full <utility>, per
UK-300.
* include/bits/stl_algo.h: Tweak includes.
From-SVN: r154126
Jason Merrill [Thu, 12 Nov 2009 18:25:51 +0000 (13:25 -0500)]
typeck.c (cv_qualified_p): New fn.
* typeck.c (cv_qualified_p): New fn.
(decay_conversion): Use it.
* cp-tree.h: Declare it.
* tree.c (rvalue): Use it and cv_unqualified.
* init.c (build_aggr_init): Likewise.
From-SVN: r154125
Jason Merrill [Thu, 12 Nov 2009 18:25:42 +0000 (13:25 -0500)]
re PR c++/42013 (cv-qualification of conditional expression type depending on the value of its first expression?!?)
PR c++/42013
* call.c (build_conditional_expr): Don't fold a TREE_SIDE_EFFECTS
COND_EXPR in unevaluated context.
From-SVN: r154124
Bernd Schmidt [Thu, 12 Nov 2009 18:12:09 +0000 (18:12 +0000)]
re PR rtl-optimization/38582 (excessive time in rename registers)
PR rtl-opt/38582
* regrename.c (struct du_head): New structure; some elements moved
from...
(struct du_chain): ... this one.
(open_chains, closed_chains): Now of type struct du_head *.
(do_replace): Accept du_head argument, not du_chain. All callers
changed. Modified code to match new data structures.
(build_def_use): Return a list of du_head structures. Modified code
to match new data structures.
(dump_def_use_chain): Accept du_head argument, not du_chain. All
callers changed. Modified code to match new data structures.
(merge_overlapping_regs): Accept du_head argument, not du_chain. All
callers changed. Modified code to match new data structures.
(scan_rtx_reg): Change type of this_regno and this_nregs to unsigned.
Allocate a du_head structure as well as a du_chain when creating a
new chain. Modified other code to match new data structures.
From-SVN: r154123
Jan Hubicka [Thu, 12 Nov 2009 16:21:59 +0000 (17:21 +0100)]
cgraph.h (varpool_node_name): Declare.
* cgraph.h (varpool_node_name): Declare.
* cgraphunit.c (process_function_and_variable_attributes): Set force_output
flag on used variables.
* ipa.c (function_and_variable_visibility): Dump externally visible and needed
variables.
* varpool.c (varpool_node_name): Export.
(decide_is_variable_needed): Check COMDAT for externally visible vars;
ignore needed flag.
From-SVN: r154121
Rafael Avila de Espindola [Thu, 12 Nov 2009 14:01:49 +0000 (14:01 +0000)]
lto-plugin.c (write_resolution): Assume resolution_file is set.
2009-11-12 Rafael Avila de Espindola <espindola@google.com>
* lto-plugin.c (write_resolution): Assume resolution_file is set.
Print the symbol name.
(all_symbols_read_handler): Create a resolution file.
Pass it to gcc.
(cleanup_handler): Remove the resolution file.
(process_option): Drop the -resolution option.
2009-11-12 Rafael Avila de Espindola <espindola@google.com>
* lang.opt (fresolution): Renamed from resolution.
* lto-lang.c (lto_handle_option): Handle new option name.
* lto.c (lto_resolution_read): Add more checks. Discard rest of line.
From-SVN: r154118
Tobias Burnus [Thu, 12 Nov 2009 13:34:44 +0000 (14:34 +0100)]
intrinsic.texi (XOR): Refer also to .NEQV.
2009-11-12 Tobias Burnus <burnus@net-b.de>
* intrinsic.texi (XOR): Refer also to .NEQV.
(ISO_FORTRAN_ENV): State which parameters are F2008.
From-SVN: r154117
Uros Bizjak [Thu, 12 Nov 2009 07:30:05 +0000 (08:30 +0100)]
re PR middle-end/41930 (cc1 SEGV compiling maxval_r16.c)
PR middle-end/41930
* simplify-rtx.c (simplify_replace_fn_rtx) <case 'e'>: Skip
processing if XEXP (x, i) is NULL.
From-SVN: r154116
Jan Hubicka [Thu, 12 Nov 2009 06:50:19 +0000 (07:50 +0100)]
decl2.c (constrain_visibility): Clear WEAK and COMMON flags.
* decl2.c (constrain_visibility): Clear WEAK and COMMON flags.
* ipa.c (function_and_variable_visibility): Verify that WEAK || COMMON
imply PUBLIC || EXTERNAL.
From-SVN: r154115
Jason Merrill [Thu, 12 Nov 2009 04:44:32 +0000 (23:44 -0500)]
Makefile.am: Remove use of baseline_file.
* testsuite/Makefile.am: Remove use of baseline_file.
* testsuite/Makefile.in: Likewise.
From-SVN: r154114
Jason Merrill [Thu, 12 Nov 2009 04:44:24 +0000 (23:44 -0500)]
re PR c++/39131 (decimal float point: ICE on typeid( 0.dd ))
PR c++/39131
* rtti.c (emit_support_tinfos): Add DFP types.
* config/abi/pre/gnu.ver: Add DFP types.
* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.4.
From-SVN: r154113
Andy Hutchinson [Thu, 12 Nov 2009 02:35:49 +0000 (02:35 +0000)]
re PR middle-end/41440 (SEG FAULT in CSE.C caused by bad RTL expansion)
PR middle-end/41440
* cfgexpand.c (expand_gimple_basic_block): Append NOP to a fallthru,
single successor block, ending with jump created by RTL expander.
From-SVN: r154112
GCC Administrator [Thu, 12 Nov 2009 00:16:39 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154111
Jan Hubicka [Wed, 11 Nov 2009 23:45:09 +0000 (00:45 +0100)]
re PR middle-end/41729 (Undefined reference with -fPIC -fwhole-program -flto)
PR middle-end/41729
* ipa.c (function_and_variable_visibility): Do not privatize COMDAT
and WEAK variables at -fwhole-program.
PR middle-end/41735
* ipa.c (whole_program_function_and_variable_visility): COMDAT
functions/variables are not needed even if they are externally visible.
From-SVN: r154108
Janus Weil [Wed, 11 Nov 2009 22:37:31 +0000 (23:37 +0100)]
re PR fortran/41978 ([F03] ICE in gfc_conv_expr_descriptor for array PPC assignment)
2009-11-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/41978
* resolve.c (resolve_ref): Take care of procedure pointer component
references.
2009-11-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/41978
* gfortran.dg/proc_ptr_comp_22.f90: New test.
From-SVN: r154107
Jason Merrill [Wed, 11 Nov 2009 21:20:06 +0000 (16:20 -0500)]
call.c (build_op_delete_call): Downgrade error about placement/non-placement confusion to permerror.
* call.c (build_op_delete_call): Downgrade error about
placement/non-placement confusion to permerror.
From-SVN: r154106
Jan Hubicka [Wed, 11 Nov 2009 20:57:20 +0000 (21:57 +0100)]
(patch by Richard Guenther)
(patch by Richard Guenther)
* lto-streamer-out.c (output_function): Output head of argument list
earlier.
* lto-streamer-in.c (input_function): Re-map arguments into merged
declaration.
From-SVN: r154105
H.J. Lu [Wed, 11 Nov 2009 20:34:13 +0000 (12:34 -0800)]
re PR testsuite/42001 (LTO tests fail with non multilib targets (but still not --disable-multilib ))
2009-11-11 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/42001
* gcc.dg/lto/lto.exp: Pass no-mathlib to lto_init. Call
lto_finish at the end.
* lib/lto.exp (lto_init): Set mathlib to " " for no-mathlib.
(lto_finish): New. Restore mathlib.
From-SVN: r154104
Paolo Carlini [Wed, 11 Nov 2009 19:57:48 +0000 (19:57 +0000)]
basic_string.h (to_string(int), [...]): Add, per resolution of DR 1261.
2009-11-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/basic_string.h (to_string(int), to_string(unsigned),
to_string(long), to_string(unsigned long), to_string(float),
to_string(double), to_wstring(int), to_wstring(unsigned),
to_wstring(long), to_wstring(unsigned long), to_wstring(float),
to_wstring(double)): Add, per resolution of DR 1261.
* include/ext/vstring.h: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/char/
dr1261.cc: Add.
* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
dr1261.cc: Likewise.
From-SVN: r154102
Jan Hubicka [Wed, 11 Nov 2009 19:08:44 +0000 (20:08 +0100)]
lto-cgraph.c: Include gcov-io.h
* lto-cgraph.c: Include gcov-io.h
(output_profile_summary): New function.
(output_cgraph): Use it.
(input_profile_summary): New function.
(input_cgraph): Use it.
* coverage.c (build_ctr_info_value): Use varpool; initalize
DECL_ASSEMBLER_NAME.
(create_coverage): Likewise.
* tree-profile.c (tree_init_ic_make_global_vars): Likewise.
(tree_init_edge_profiler): Likewise.
* Makefile.in (lto-cgraph.o): Add dependency on gcov-io.h.
From-SVN: r154100
Kai Tietz [Wed, 11 Nov 2009 18:37:19 +0000 (18:37 +0000)]
ChangeLog for libcpp
2009-11-11 Kai Tietz <kai.tietz@onevision.com>
* directives.c (do_pragma_push_macro): New pragma handler.
(do_pragma_pop_macro): Likewise.
(_cpp_init_internal_pragmas): Add push_macro and
pop_macro handler to internal pragmas.
(lex_macro_node_from_str): Removed.
(cpp_push_definition): Replace lex_macro_node_from_str
by _cpp_lex_identifier.
(cpp_pop_definition): Likewise.
* internal.h (_cpp_lex_identifier): New prototype.
(def_pragma_macro): New structure.
(cpp_reader): New member pushed_macros.
* lex.c (_cpp_lex_identifier): New function.
(lex_identifier_intern): New function.
* init.c (cpp_create_reader): Initialize pushed_macros
member.
(cpp_destroy): Free elements in pushed_macros member.
* pch.c (_cpp_save_pushed_macros): New function.
(_cpp_restore_pushed_macros): Likewise.
(_cpp_restore_pushed_macros): Use _cpp_save_pushed_macros.
(cpp_read_state): Use _cpp_restore_pushed_macros.
ChangeLog for gcc
2009-11-11 Kai Tietz <kai.tietz@onevision.com>
* config/i386/cygming.h (HANDLE_PRAGMA_PUSH_POP_MACRO):
Removed.
* c-pragma.c (def_pragma_macro_value): Likewise.
(def_pragma_macro): Likewise.
(pushed_macro_table): Likewise.
(HANDLE_PRAGMA_PUSH_POP_MACRO): Remove guarded
code.
* doc/tm.texi (HANDLE_PRAGMA_PUSH_POP_MACRO):
Removed.
ChangeLog for gcc/testsuite
2009-11-11 Kai Tietz <kai.tietz@onevision.com>
* g++.dg/torture/pushpop_macro.C: New testcase.
* gcc.c-torture/execute/pushpop_macro.c: New testcase.
* gcc.dg/cpp/pragma-pop_macro-1.c: Allow test for all
targets.
From-SVN: r154098
Basile Starynkevitch [Wed, 11 Nov 2009 17:52:46 +0000 (17:52 +0000)]
plugins.texi (Registering custom attributes): section renamed as (Registering custom attributes or pragmas).
2009-11-11 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/doc/plugins.texi (Registering custom attributes): section
renamed as (Registering custom attributes or pragmas).
Mentions custom attributes & pragmas, and c_register_pragma, with
a small example.
* gcc/doc/cpp.texi (Pragmas): Mentions that plugins can provide their
pragmas.
* gcc/doc/extend.texi (Function Attributes): Mentions that plugin can
provide their attributes.
From-SVN: r154097
Jon Beniston [Wed, 11 Nov 2009 16:43:06 +0000 (16:43 +0000)]
config.gcc: Add lm32 elf and uclinux targets.
gcc/
2009-11-11 Jon Beniston <jon@beniston.com>
* config.gcc: Add lm32 elf and uclinux targets.
* config/lm32: New directory.
* config/lm32/lm32.c: New file.
* config/lm32/lm32.h: New file.
* config/lm32/lm32.md: New file.
* config/lm32/lm32.opt: New file.
* config/lm32/lm32-protos.h: New file.
* config/lm32/constraints.md: New file.
* config/lm32/predicates.md: New file.
* config/lm32/sfp-machine.h: New file.
* config/lm32/t-fprules-softfp: New file.
* config/lm32/uclinux-elf.h: New file.
* doc/invoke.texi: Document lm32 options.
* doc/contrib.texi: Document lm32 porter.
* doc/install.texi: Document lm32 targets.
gcc/testsuite/
2009-11-11 Jon Beniston <jon@beniston.com>
* lib/target-supports.exp (check_profiling_available): lm32 target
doesn't support profiling.
* gcc.dg/
20020312-2.c: Add lm32 support.
* g++.dg/other/packed1.C: Expect to fail on lm32.
* g++.old-deja/g++.jason/thunk3.C: Likewise.
libgcc/
2009-11-11 Jon Beniston <jon@beniston.com>
* config.host: Add lm32 targets.
* config/lm32: New directory.
* config/lm32/libgcc_lm32.h: New file.
* config/lm32/_mulsi3.c: New file.
* config/lm32/_udivmodsi4.c: New file.
* config/lm32/_divsi3.c: New file.
* config/lm32/_modsi3.c: New file.
* config/lm32/_udivsi3.c: New file.
* config/lm32/_umodsi3.c: New file.
* config/lm32/_lshrsi3.S: New file.
* config/lm32/_ashrsi3.S: New file.
* config/lm32/_ashlsi3.S: New file.
* config/lm32/crti.S: New file.
* config/lm32/crtn.S: New file.
* config/lm32/t-lm32: New file.
* config/lm32/t-elf: New file.
* config/lm32/t-uclinux: New file.
From-SVN: r154096
Martin Jambor [Wed, 11 Nov 2009 15:07:18 +0000 (16:07 +0100)]
re PR lto/41932 (LTO ICE when compiling ocaml trunk (incompatible type))
2009-11-11 Martin Jambor <mjambor@suse.cz>
PR lto/41932
* ipa-prop.c (ipa_update_after_lto_read): Call
ipa_check_create_node_params and ipa_check_create_edge_args. Also
call ipa_initialize_node_params instead of ipa_populate_param_decls.
From-SVN: r154095
Daniel Jacobowitz [Wed, 11 Nov 2009 14:23:03 +0000 (14:23 +0000)]
arm.c (neon_vdup_constant, [...]): New.
gcc/
* config/arm/arm.c (neon_vdup_constant, neon_make_constant): New.
(neon_expand_vector_init): Use them. Also handle non-constant
vectors with identical elements and vectors with only one
non-constant element.
(arm_print_operand): Handle 'y' modifier.
* config/arm/arm-protos.h (neon_make_constant): Declare.
* config/arm/neon.md (neon_vdup_n<mode>): Split into two
patterns. Use VX instead of VDQW for the first one. Allow
a VFP alternative and V32 modes for the second one.
* config/arm/neon.ml (shape_elt): Add Alternatives.
(ops): Use Alternatives for vdup lane instructions.
* config/arm/neon-testgen.ml (analyze_shape): Handle Alternatives.
* config/arm/vec-common.md (mov<mode>): Use neon_make_constant.
gcc/testsuite/
* gcc.target/arm/neon: Regenerate generated tests.
From-SVN: r154094
Daniel Jacobowitz [Wed, 11 Nov 2009 14:22:21 +0000 (14:22 +0000)]
neon.md (*neon_mov<mode>): Reject two non-register operands.
* config/arm/neon.md (*neon_mov<mode>): Reject two non-register
operands.
(movti, mov<mode>): Call force_reg on one operand if required.
* config/arm/vec-common.md (mov<mode>): Likewise.
From-SVN: r154093
Daniel Jacobowitz [Wed, 11 Nov 2009 14:21:40 +0000 (14:21 +0000)]
arm.c (arm_override_options): Enable scheduling for Thumb-2.
* config/arm/arm.c (arm_override_options): Enable scheduling for
Thumb-2.
From-SVN: r154092
GCC Administrator [Wed, 11 Nov 2009 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154087
Eric Botcazou [Tue, 10 Nov 2009 20:45:25 +0000 (20:45 +0000)]
re PR target/10127 (-fstack-check let's program crash)
PR target/10127
PR ada/20548
* expr.h (anti_adjust_stack_and_probe): Declare.
* explow.c (anti_adjust_stack_and_probe): Make global, add ADJUST_BACK
parameter and rewrite head comment.
(allocate_dynamic_stack_space): Adjust call to above function.
* function.c (expand_function_end): Handle STACK_CHECK_MOVING_SP.
* tree.h (dwarf2out_args_size): Delete.
* dwarf2out.c (dwarf2out_args_size): Make static and move around.
(dwarf2out_args_size_adjust): Delete prototype and move around.
(dwarf2out_frame_debug_expr): Do not record arg size adjustments for
ACCUMULATE_OUTGOING_ARGS targets.
From-SVN: r154079
Joseph Myers [Tue, 10 Nov 2009 20:17:24 +0000 (20:17 +0000)]
* id.po: Update.
From-SVN: r154077
Jason Merrill [Tue, 10 Nov 2009 18:31:22 +0000 (13:31 -0500)]
* call.c (build_op_delete_call): Tweak error.
From-SVN: r154073
Jason Merrill [Tue, 10 Nov 2009 18:18:51 +0000 (13:18 -0500)]
re PR c++/34158 (Template delete doesn't call if exception thrown in constructor)
PR c++/34158
PR c++/36406
* call.c (non_placement_deallocation_fn_p): Split out...
(build_op_delete_call): ...from here. Use instantiate_type
for placement delete. Simplify logic.
* pt.c (primary_template_instantiation_p): Non-static.
* cp-tree.h: Declare it.
From-SVN: r154072
Eric Botcazou [Tue, 10 Nov 2009 18:01:22 +0000 (18:01 +0000)]
vect-multitypes-5.c: XFAIL on SPARC 32-bit.
* gcc.dg/vect/vect-multitypes-5.c: XFAIL on SPARC 32-bit.
* gcc.dg/vect/vect-multitypes-6.c: Likewise.
* gcc.dg/vect/vect-multitypes-12.c: Likewise.
* gcc.dg/vect/slp-multitypes-3.c: Likewise.
From-SVN: r154070
Eric Botcazou [Tue, 10 Nov 2009 17:44:46 +0000 (17:44 +0000)]
sparc.c (print_operand): Test for a non-null DECL_SIZE of DECL_RESULT before evaluating it.
* config/sparc/sparc.c (print_operand) <')'>: Test for a non-null
DECL_SIZE of DECL_RESULT before evaluating it.
From-SVN: r154068
Eric Botcazou [Tue, 10 Nov 2009 17:29:52 +0000 (17:29 +0000)]
ipa-sra-2.c: Use calloc instead of malloc.
* gcc.c-torture/execute/ipa-sra-2.c: Use calloc instead of malloc.
* gcc.dg/pr41963.c: Do not include math.h. Declare fabsf manually.
From-SVN: r154067
Kaveh R. Ghazi [Tue, 10 Nov 2009 16:16:57 +0000 (16:16 +0000)]
re PR tree-optimization/41987 (expected class ‘constant’, have ‘binary’ (rdiv_expr) in build_complex, at tree.c:1485)
PR tree-optimization/41987
* fold-const.c (const_binop): Avoid using fold_buildN().
testsuite:
* gcc.c-torture/compile/pr41987.c: New.
From-SVN: r154065
Martin Jambor [Tue, 10 Nov 2009 14:43:20 +0000 (15:43 +0100)]
tree-pass.h (struct ipa_opt_pass_d): Added stmt_fixup field.
2009-11-10 Martin Jambor <mjambor@suse.cz>
* tree-pass.h (struct ipa_opt_pass_d): Added stmt_fixup field.
(execute_all_ipa_stmt_fixups): Declare.
* ipa-cp.c (pass_ipa_cp): Added stmt_fixup value.
* ipa-inline.c (pass_ipa_inline): Likewise.
* ipa-pure-const.c (pass_ipa_pure_cons): Likewise.
* ipa-reference.c (pass_ipa_reference): Likewise.
* ipa.c (pass_ipa_whole_program_visibility): Likewise.
* lto-streamer-out.c (pass_ipa_lto_gimple_out): Likewise.
(pass_ipa_lto_finish_out): Likewise.
* lto-wpa-fixup.c (pass_ipa_lto_wpa_fixup): Likewise.
* passes.c (execute_ipa_stmt_fixups): New function.
(execute_all_ipa_stmt_fixups): New function.
* lto-streamer-in.c (input_function): Call execute_all_ipa_stmt_fixups.
From-SVN: r154064
Eric Botcazou [Tue, 10 Nov 2009 12:37:56 +0000 (12:37 +0000)]
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
PR ada/20548
* system-linux-alpha.ads (Stack_Check_Probes): Set to true.
* system-linux-hppa.ads (Stack_Check_Probes): Likewise.
* system-linux-sparc.ads (Stack_Check_Probes): Likewise.
* system-linux-sparcv9.ads (Stack_Check_Probes): Likewise.
From-SVN: r154063
Eric Botcazou [Tue, 10 Nov 2009 12:19:27 +0000 (12:19 +0000)]
system-linux-alpha.ads (AAMP, [...]): Delete.
* system-linux-alpha.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mips.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mips64el.ads (AAMP, Compiler_System_Version, OpenVMS,
Functions_Return_By_DSP, Front_End_ZCX_Support, High_Integrity_Mode,
Long_Shifts_Inlined): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-mipsel.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-s390.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-s390x.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-sh4.ads (Stack_Check_Limits, Always_Compatible_Rep):
New.
* system-linux-sparc.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-linux-sparcv9.ads (AAMP, Compiler_System_Version, OpenVMS,
Front_End_ZCX_Support, High_Integrity_Mode, Long_Shifts_Inlined):
Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
* system-rtems.ads (OpenVMS): Delete.
(Stack_Check_Limits, Always_Compatible_Rep): New.
From-SVN: r154062
Eric Botcazou [Tue, 10 Nov 2009 11:23:54 +0000 (11:23 +0000)]
re PR middle-end/20548 (ACATS c52103x c52104x c52104y segfault)
PR ada/20548
* explow.c (probe_stack_range): Fix typo.
* config/sparc/sparc.md (probe_stack): New expander.
From-SVN: r154061
GCC Administrator [Tue, 10 Nov 2009 00:16:43 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r154058
Jan Kratochvil [Mon, 9 Nov 2009 23:17:54 +0000 (23:17 +0000)]
* largefile.m4 (ACX_LARGEFILE): Call AC_PLUGINS.
From-SVN: r154055
Benjamin Kosnik [Mon, 9 Nov 2009 22:09:30 +0000 (22:09 +0000)]
user.cfg.in: Regenerate, add files.
2009-11-09 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Regenerate, add files.
* libsupc++/eh_ptr.cc: Format.
* libsupc++/exception_ptr.h: Same.
* libsupc++/cxxabi.h(recursive_init_error): Move declaration here.
* libsupc++/guard.cc: From here.
* libsupc++/nested_exception.h: Add markup.
From-SVN: r154054
Jon Beniston [Mon, 9 Nov 2009 20:34:44 +0000 (20:34 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2009-11-09 Jon Beniston <jon@beniston.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r154051
Jakub Jelinek [Mon, 9 Nov 2009 19:40:56 +0000 (20:40 +0100)]
re PR middle-end/40946 (Spurious array subscript is above bounds warning)
PR middle-end/40946
* gcc.dg/pr40946.c: New test.
From-SVN: r154047
Dave Korn [Mon, 9 Nov 2009 18:36:08 +0000 (18:36 +0000)]
cygwin.h (LINK_SPEC): Add -tsaware flag if !mno-cygwin.
* config/i386/cygwin.h (LINK_SPEC): Add -tsaware flag if !mno-cygwin.
From-SVN: r154044
Jason Merrill [Mon, 9 Nov 2009 18:33:00 +0000 (13:33 -0500)]
* gdbinit.in (pgq): New function for printing gimple sequence.
From-SVN: r154043
Jason Merrill [Mon, 9 Nov 2009 18:32:53 +0000 (13:32 -0500)]
re PR c++/41972 (nondependent static member function as a reference template parameter fails)
PR c++/41972
* parser.c (cp_parser_template_argument): Accept SCOPE_REF around
VAR_DECL.
From-SVN: r154042
Jason Merrill [Mon, 9 Nov 2009 18:32:44 +0000 (13:32 -0500)]
re PR c++/41994 (ICE with &A::operator T)
PR c++/41994
* pt.c (tsubst_baselink): tsubst the name.
From-SVN: r154041
Johannes Singler [Mon, 9 Nov 2009 16:36:59 +0000 (16:36 +0000)]
multiway_merge.h (multiway_merge_*, [...]): Replace int by appropriate difference_type (typedef to _SeqNumber) or _ThreadIndex.
2009-11-09 Johannes Singler <singler@kit.edu>
* include/parallel/multiway_merge.h (multiway_merge_*,
__sequential_multiway_merge, parallel_multiway_merge): Replace
int by appropriate difference_type (typedef to _SeqNumber) or
_ThreadIndex.
* include/parallel/multiseq_selection.h (multiseq_partition,
multiseq_selection): Replace int by appropriate difference_type
(typedef to _SeqNumber)
* include/parallel/base.h (__get_max_threads): Replace int by
_ThreadIndex.
* include/parallel/balanced_quicksort.h
(__qsb_local_sort_with_helping, __parallel_sort_qsb): Likewise.
* include/parallel/set_operations.h (__parallel_set_operation):
Likewise.
* include/parallel/unique_copy.h (__parallel_unique_copy): Likewise.
* include/parallel/multiway_mergesort.h (_SplitConsistently,
parallel_sort_mwms_pu, parallel_sort_mwms): Likewise.
* include/parallel/partial_sum.h (__parallel_partial_sum_linear):
Likewise.
* include/parallel/partition.h (__parallel_partition): Replace int
by appropriate difference_type or _ThreadIndex.
From-SVN: r154039
Paul Brook [Mon, 9 Nov 2009 13:50:38 +0000 (13:50 +0000)]
extend.texi (Half-Precision): Update wording to reflect that there are now multiple -mfpu options that enable...
2009-11-09 Paul Brook <paul@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/extend.texi (Half-Precision): Update wording to reflect
that there are now multiple -mfpu options that enable fp16
hardware support.
* doc/invoke.texi: Update list of ARM -mfpu= options.
* config.gcc: Update ARM --with-fpu option list.
* config/arm/arm.c (all_fpus): Add vfpv3-fp16, vfpv3-d16-fp16,
vfpv3xd and vfpv3xd-fp16.
(use_vfp_abi): New function.
(aapcs_vfp_is_call_or_return_candidate): Avoid double precision regs
when undesirable.
(aapcs_vfp_is_return_candidate, aapcs_vfp_is_call_candidate,
aapcs_vfp_allocate_return_reg): Use use_vfp_abi.
(arm_rtx_costs_1, arm_size_rtx_costs, arm_fastmul_rtx_costs,
arm_9e_rtx_costs): Only expect double-precision operations if the FPU
provides them.
(coproc_secondary_reload_class): Reload HFmode via GENERAL_REGS if no
NEON.
(arm_print_operand): Handle 'p' modifier.
(arm_hard_regno_mode_ok): : Allow HFmode in VFP registers if
TARGET_FP16.
* config/arm/arm.h (TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE): Define.
(TARGET_FP16): Define.
* config/arm/vfp.md: Disable double-precision patterns if the FPU
does not provide them.
(arm_movdi_vfp, thumb2_movdi_vfp): Use fcpys to move
double-precision values on a single-precision FPU.
(movdf_vfp, thumb2_movdf_vfp): Likewise. Use "Dy" for
double-precision constants.
(movhf_vfp_neon): New pattern (was movhf_vfp).
(movhf_vfp): Remove NEON instructions.
* config/arm/constraints.md: Add new "Dy" constraint for
double-precision constants. Update description of "Dv".
* config/arm/arm.md: Disable double-precision patterns if the FPU
does not provide them
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r154034
Jakub Jelinek [Mon, 9 Nov 2009 13:37:47 +0000 (14:37 +0100)]
i386.c (print_operand): Fix formatting.
* config/i386/i386.c (print_operand) <case 'D'>: Fix formatting.
(print_operand) <case 'Y'>: Likewise. Fix a pasto in operand lossage
diagnostics.
From-SVN: r154033
Jason Merrill [Mon, 9 Nov 2009 00:26:03 +0000 (19:26 -0500)]
sso_string_base.h (_M_mutate): Remove extra 'const'.
2009-11-08 Jason Merrill <jason@redhat.com>
* include/ext/sso_string_base.h (_M_mutate): Remove extra 'const'.
From-SVN: r154025
GCC Administrator [Mon, 9 Nov 2009 00:17:16 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r154024
Jason Merrill [Sun, 8 Nov 2009 23:10:53 +0000 (18:10 -0500)]
37920, not 37290
From-SVN: r154021
H.J. Lu [Sun, 8 Nov 2009 22:36:51 +0000 (22:36 +0000)]
collect2.c (main): Search PLUGIN_LD for plugin linker.
2009-11-08 H.J. Lu <hongjiu.lu@intel.com>
* collect2.c (main): Search PLUGIN_LD for plugin linker.
* configure.ac (--with-plugin-ld): New. Default to ld.
* configure: Regenerated.
* config.in: Likewise.
* exec-tool.in (ORIGINAL_PLUGIN_LD_FOR_TARGET): New.
(collect-ld): Use ORIGINAL_PLUGIN_LD_FOR_TARGET for -plugin.
From-SVN: r154020
H.J. Lu [Sun, 8 Nov 2009 22:36:22 +0000 (14:36 -0800)]
Remove extra pathname.
From-SVN: r154019
Jason Merrill [Sun, 8 Nov 2009 22:27:39 +0000 (17:27 -0500)]
re PR target/37290 (Endless recursion in cse_cc_succs)
PR c++/37290
* pt.c (tsubst) [TYPEOF_TYPE]: Set cp_unevaluated_operand.
From-SVN: r154018
Jonathan Gray [Sun, 8 Nov 2009 22:19:45 +0000 (22:19 +0000)]
openbsd-stdint.h: Change to reflect what c_common_nodes_and_builtins expects.
* config/openbsd-stdint.h: Change to reflect what
c_common_nodes_and_builtins expects.
From-SVN: r154017
Paolo Carlini [Sun, 8 Nov 2009 21:26:57 +0000 (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 (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 (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 (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 (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 (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 (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 (22:47 -0500)]
* tree.c (reconstruct_complex_type): Preserve attributes.
From-SVN: r154007
Jason Merrill [Sun, 8 Nov 2009 03:47:36 +0000 (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 (00:16 +0000)]
Daily bump.
From-SVN: r154005
Richard Guenther [Sat, 7 Nov 2009 21:33:29 +0000 (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 (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