* dwarf2out.c (last_var_location_insn): New variable.
(dwarf2out_end_epilogue): Clear last_var_location_insn.
(dwarf2out_var_location): Don't record anything after last real
insn. Only change labels if there were any real instructions
in between last note and this one, or if changed sections.
From-SVN: r148415
* alpha.c (alpha_expand_prologue): Add a REF_CFA_REGISTER
note when storing the frame pointer in a register.
(FRP): Don't redefine to nothing for epilogue.
(alpha_expand_epilogue): Mark register and sp restores.
(unicosmk_gen_dsib): Don't mark weird frame pointer adjust.
From-SVN: r148414
* common.opt (gdwarf-): Accept a version number.
* doc/invoke.texi (gdwarf-): Update docs.
* opth-gen.awk: Special case -gdwarf+ to OPT_gdwarfplus.
* opts.c (common_handle_option) [OPT_gdwarf_]: Verify dwarf
version level, and record it.
* dwarf2.h (DW_CIE_VERSION): Remove.
* dwarf2out.c (DWARF_VERSION): Remove.
(add_fde_cfi): Skip DW_CFA_set_loc addition for dwarf3.
(output_call_frame_info): Use CIE version 3 for dwarf3,
or if the return register column is out of range for version 1.
(dwarf_stack_op_name): Add all dwarf3 values.
(DEBUG_PUBTYPES_SECTION): New.
(size_of_die) [dw_val_class_die_ref]: Handle DW_FORM_ref_addr
encoding change for dwarf3.
(output_die) [dw_val_class_die_ref]: Likewise.
(output_compilation_unit_header): Emit correct version for dwarf3.
(output_line_info): Likewise.
(output_pubnames): Update for DWARF_VERSION removal.
(output_aranges): Likewise.
(gen_subprogram_die): Emit DW_OP_call_frame_cfa if emitting dwarf3.
(dwarf2out_init): Don't ifdef DEBUG_PUBTYPES_SECTION.
(dwarf2out_finish): Likewise.
ada/
* gcc-interface/misc.c (gnat_handle_option): Rename
OPT_gdwarf_ to OPT_gdwarfplus.
From-SVN: r148408
2009-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40402
* resolve.c (next_data_value): It is an error if the value is
not constant.
2009-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40402
* gfortran.dg/data_value_1.f90: New test.
From-SVN: r148396
* config/darwin.h (LINK_COMMAND_SPEC): Adjust spec to link libcov
when -fprofile-generate* was passed.
* config/darwin9.h (LINK_COMMAND_SPEC): Likewise.
From-SVN: r148394
2009-06-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc
(negative_binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Tweak to use a
class member gamma_distribution.
(negative_binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&)): Implement out of line here.
(operator<<(basic_ostream<>&, negative_binomial_distribution<>),
operator>>(basic_ostream<>&, negative_binomial_distribution<>): Adjust.
(student_t_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Move inline,
simplify.
(operator<<(basic_ostream<>&, student_t_distribution<>),
operator>>(basic_ostream<>&, student_t_distribution<>): Adjust.
(chi_squared_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&): Move inline,
tweak to use a class member gamma_distribution.
(operator<<(basic_ostream<>&, chi_squared_distribution<>),
operator>>(basic_ostream<>&, chi_squared_distribution<>): Adjust.
(fisher_f_distribution<>::operator() (_UniformRandomNumberGenerator&,
const param_type&): Move inline, tweak to use class member
gamma_distributions.
(operator<<(basic_ostream<>&, fisher_f_distribution<>),
operator>>(basic_ostream<>&, fisher_f_distribution<>): Adjust.
* include/bits/random.h: Adjust, minor tweaks.
From-SVN: r148393
2009-06-11 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Resolve_Attribute, case 'access): Add missing
accessibiliy check on access_to_subprogram in the context of an
anonymous access that is not an access parameter.
2009-06-11 Eric Botcazou <ebotcazou@adacore.com>
* tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
2009-06-11 Quentin Ochem <ochem@adacore.com>
* sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
comments for message handled by GPS.
2009-06-11 Matthew Gingell <gingell@adacore.com>
* adaint.c: Use fopen64 instead of fopen on platforms where we know
it's supported.
2009-06-11 Pascal Obry <obry@adacore.com>
* g-cgi.ads: Fix comment typo.
* g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
From-SVN: r148392
* config/i386/i386.c (min_insn_size): Use get_attr_length
for normal insns other than TYPE_MULTI, TYPE_OTHER and TYPE_FCMP.
For __asm return 0.
From-SVN: r148365
* python/libstdcxx/v6/printers.py (lookup_function): Remove extra
';'.
(build_libstdcxx_dictionary): Accept shortened form of
basic_string names.
(StdStringPrinter.to_string): Remove reference to WideEncoding.
From-SVN: r148358
gcc/
* tree.h (tree_base): Add packed_flag and user_align fields.
Decrease size of spare field.
(TYPE_USER_ALIGN): Use user_align from tree_base.
(DECL_USER_ALIGN): Likewise.
(TYPE_PACKED): Use packed_flag from tree_base.
(DECL_PACKED): Likewise.
(tree_type): Delete packed_flag and user_align fields. Widen
precision field. Widen mode field and shuffle fields to align
mode on an 8-bit boundary.
(tree_decl_common): Delete decl_flag_1 and user_align fields.
Renumber decl_flag_* fields. Fix comments. Widen
decl_common_unused field.
(DECL_HAS_VALUE_EXPR_P): Adjust for renumbering of decl_flag_*
fields.
(DECL_EXTERNAL): Likewise.
(DECL_BIT_FIELD): Likewise.
(DECL_NONADDRESSABLE_P): Likewise.
(TYPE_DECL_SUPRESS_DEBUG): Likewise.
* config/arm/arm-modes.def (XImode): Make it an INT_MODE.
gcc/testsuite/
* gcc.target/arm/neon-modes-1.c: New test.
From-SVN: r148348
* vec.h (DEF_VEC_ALLOC_I): Use DEF_VEC_NONALLOC_FUNCS_I.
(DEF_VEC_ALLOC_P): Use DEF_VEC_NONALLOC_FUNCS_P.
(DEF_VEC_ALLOC_O): Use DEF_VEC_NONALLOC_FUNCS_O.
(DEF_VEC_ALLOC_FUNC_P): Only define VEC_OP (T,A,alloc).
(DEF_VEC_NONALLOC_FUNCS_P): New macro, broken out of old
DEF_VEC_ALLOC_FUNC_P.
(DEF_VEC_ALLOC_FUNC_O): Only define VEC_OP (T,A,alloc).
(DEF_VEC_NONALLOC_FUNCS_O): New macro, broken out of old
DEF_VEC_ALLOC_FUNC_O.
(DEF_VEC_ALLOC_FUNC_I): Only define VEC_OP (T,A,alloc).
(DEF_VEC_NONALLOC_FUNCS_I): New macro, broken out of old
DEF_VEC_ALLOC_FUNC_I.
(vec_stack_p_reserve, vec_stack_p_reserve_exact): Declare.
(vec_stack_p_reserve_exact_1): Declare.
(vec_stack_o_reserve, vec_stack_o_reserve_exact): Declare.
(vec_stack_free): Declare.
(VEC_stack_alloc): Define.
(DEF_VEC_ALLOC_P_STACK, DEF_VEC_ALLOC_FUNC_P_STACK): Define.
(DEF_VEC_ALLOC_O_STACK, DEF_VEC_ALLOC_FUNC_O_STACK): Define.
(DEF_VEC_ALLOC_I_STACK, DEF_VEC_ALLOC_FUNC_I_STACK): Define.
* vec.c (void_p): New type. Call DEF_VEC_P and DEF_VEC_ALLOC_P
for void_p.
(stack_vecs): New static variable.
(vec_stack_p_reserve_exact_1): New function.
(vec_stack_o_reserve_1): New static function.
(vec_stack_p_reserve, vec_stack_p_reserve_exact): New functions.
(vec_stack_o_reserve, vec_stack_o_reserve_exact): New functions.
(vec_stack_free): New function.
* df-scan.c (df_ref): Use DEF_VEC_P and DEF_VEC_ALLOC_P_STACK.
(VEC_df_ref_stack_alloc): Define.
(df_mw_hardreg_ptr): New type. Use DEF_VEC_P and
DEF_VEC_ALLOC_P_STACK.
(VEC_df_mw_hardreg_ptr_stack_alloc): Define.
(struct df_collection_rec): Change _vec fields to VEC. Remove
_use fields.
(df_free_collection_rec): Adjust for new fields.
(df_insn_rescan): Use new df_collection_rec fields.
(df_notes_rescan, df_canonize_collection_rec): Likewise.
(df_ref_create_structure, df_ref_record): Likewise.
(df_get_conditional_uses, df_get_call_refs): Likewise.
(df_insn_refs_collect, df_bb_refs_collect): Likewise.
(df_bb_refs_record, df_record_entry_block_defs): Likewise.
(df_record_exit_block_uses, df_bb_verify): Likewise.
(df_swap_refs): Change ref_vec parameter to VEC. Change all
callers.
(df_sort_and_compress_refs): Change ref_vec parameter to VEC.
Remove count parameter. Change return type to void. Change all
callers.
(df_sort_and_compress_mws): Change mw_vec parameter to VEC.
Remove count parameter. Change return type to void. Change all
callers.
(df_install_refs): Change old_vec parameter to VEC. Remove count
parameter. Change all callers.
(df_install_mws): Change old_vec parameter to VEC. Remove count
parameter. Change all callers.
(df_refs_verify): Change new_rec parameter to VEC. Change call
callers.
(df_mws_verify): Likewise.
From-SVN: r148347
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
a reference to the original type for the type of the field of the
XVS type.
(maybe_pad_type): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
Pass correctly typed arguments to create_field_decl.
<E_Record_Subtype>: Set BLKmode for tagged and limited types in the
case of contrained discriminants as well. Use the padded base type
in the other case as well. Rename temporary variable. Tweak test.
Factor common access pattern. Set GNU_SIZE only once.
From-SVN: r148345
* system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if
compiling with C++.
* optabs.c (optab_table): Only use designated initializers if
HAVE_DESIGNATED_INITIALIZERS is defined.
(convert_optab_table): Likewise.
(init_optabs): Always call init_insn_codes if
HAVE_DESIGNATED_INITIALIZERS is not defined.
From-SVN: r148336