1. 20 Aug, 2013 1 commit
    • floatformat.h (floatformat_ibm_long_double): Delete. · a98cbc36
      include/
      	* floatformat.h (floatformat_ibm_long_double): Delete.
      	(floatformat_ibm_long_double_big): Declare.
      	(floatformat_ibm_long_double_little): Declare.
      libiberty/
      	* floatformat.c (floatformat_ibm_long_double): Rename to..
      	(floatformat_ibm_long_double_big): ..this.
      	(floatformat_ibm_long_double_little): New.
      
      From-SVN: r201869
      Alan Modra committed
  2. 19 Aug, 2013 1 commit
  3. 07 Aug, 2013 1 commit
    • Commit the vtable verification feature. · 2077db1b
      Commit the vtable verification feature.  This feature is designed to
      detect, at run time, if/when the vtable pointer in a C++ object has
      been corrupted, before allowing virtual calls through that pointer. 
      If pointer corruption is detected, execution of the program is halted.
      
      libstdc++-v3 ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              * fragment.am: Add XTEMPLATE_FLAGS.
              * configure.ac: Add definitions for --enable-vtable-verify.
              * acinclude.m4:  Add --enable-vtable-verify and
              --disable-vtable-verify; define --enable-vtable-verify; define
              VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS.
              * config/abi/pre/gnu.ver: Export symbols for vtable verification.
              * libsupc++/Makefile.am: Define vtv_sources and add it to
              libsupc___la_SOURCES and libsupc__convenience_la_SOURCES.
              * libsupc++/vtv_stubs.cc: New file.
              * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS.
              * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add
              VTV_CXXLINKFLAGS to CXXLINK.
              * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS
              to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK.
              * src/C++11/Makefile.am: Ditto.
              * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify.
              * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause
              cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS.
              * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate
              libvtv if --enable-vtable-verify was used; set cxxvtvflags; add
              cxxvtvflags to cxx_final.
              * testsuite/18_support/bad_exception/23591_thread-1.c: Add
              -fvtable-verify=none to compiler flags.
              * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none
              to compiler flags.
              * configure: Regenerated.
              * Makefile.in: Regenerated.
              * python/Makefile.in: Regenerated.
              * include/Makefile.in: Regenerated.
              * libsupc++/Makefile.in: Regenerated.
              * config.h.in: Regenerated.
              * po/Makefile.in: Regenerated.
              * src/Makefile.in: Regenerated.
              * src/c++98/Makefile.in: Regenerated.
              * src/c++11/Makefile.in: Regenerated.
              * doc/Makefile.in: Regenerated.
              * testsuite/Makefile.in: Regenerated.
      
      top level ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              * configure.ac: Add target-libvtv to target_libraries; disable libvtv
              on non-linux systems; add target-libvtv to noconfigdirs; add
              libsupc++/.libs to C++ library search paths.
              * configure: Regenerated.
              * Makefile.def: Add libvtv to target_modules; make libvtv depend on
              libstdc++ and libgcc.
              * Makefile.in: Regenerated.
      
      include/ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              * vtv-change-permission.h: New file.
      
      contrib/ChangeLog:
      2013-08-06  Caroline Tice4  <cmtice@google.com>
      
              * gcc_update: Add libvtv files.
      
      libgcc/ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              config.host (extra_parts): Add vtv_start.o, vtv_end.o
              vtv_start_preinit.o and vtv_end_preinit.o.
              configure.ac: Add code to check/set enable_vtable_verify.
              Makefile.in: Add rules to build vtv_*.o, if enable_vtable_verify is
              true.
              vtv_start_preinit.c: New file.
              vtv_end_preinit.c: New file.
              vtv_start.c: New file.
              vtv_end.c: New file.
              configure: Regenerated.
      
      gcc/ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              * gcc.c (VTABLE_VERIFICATION_SPEC): New definition.
              (LINK_COMMAND_SPEC): Add VTABLE_VERIFICATION_SPEC.
              * tree-pass.h: Add pass_vtable_verify.
              * varasm.c (assemble_variable): Add code to properly set the comdat
              section and name for the .vtable_map_vars section.
              (assemble_vtyv_preinit_initializer): New function.
              (default_sectin_type_flags):  Make sure .vtable_map_vars section has
              LINK_ONCE flag.
              * output.h: Add function decl for assemble_vtv_preinit_initializer.
              * vtable-verify.c: New file.
              * vtable-verify.h: New file.
              * flag-types.h (enum vtv_priority): Defintions for flag_vtable_verify
              initialiation levels.
              * timevar.def (TV_VTABLE_VERIFICATION): New definition.
              * passes.def: Insert pass_vtable_verify.
              * aclocal.m4: Reorder includes.
              * doc/invoke.texi: Add documentation for the flags -fvtable-verify=,
      	-fvtv-debug and -fvtv-counts.
              * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Add vtv_start*.o,
      as appropriate, if -fvtable-verify=... is used.
              (GNU_USER_TARGET_ENDFILE_SPEC): Add vtv_end*.o as appropriate, if
              -fvtable-verify=... is used.
              * Makefile.in (OBJS):  Add vtable-verify.o to list.
              (vtable-verify.o): Add new build rule.
              (GTFILES): Add vtable-verify.c to list.
              * common.opt (fvtable-verify=): New flag.
              (vtv_priority): Values for fvtable-verify= flag.
              (fvtv-counts): New flag.
      (fvtv-debug): New flag.
              * tree.h (save_vtable_map_decl): New extern function decl.
      
      
      gcc/cp/ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              * Make-lang.in (*CXX_AND_OBJCXX_OBJS):  Add vtable-class-hierarchy.o to
              list.
              (vtable-class-hierarchy.o): Add build rule.
              * cp-tree.h (vtv_start_verification_constructor_init_function): New
              extern function decl.
              (vtv_finish_verification_constructor_init_function): New extern
              function decl.
              (build_vtbl_address): New extern function decl.
              (get_mangled_vtable_map_var_name): New extern function decl.
              (vtv_compute_class_hierarchy_transitive_closure): New extern function
              decl.
              (vtv_generate_init_routine): New extern function decl.
              (vtv_save_class_info): New extern function decl.
              (vtv_recover_class_info): New extern function decl.
              (vtv_build_vtable_verify_fndecl): New extern function decl.
              * class.c (finish_struct_1): Add call to vtv_save_class_info if
              flag_vtable_verify is true.
              * config-lang.in: Add vtable-class-hierarchy.c to gtfiles list.
              * vtable-class-hierarchy.c: New file.
              * mangle.c (get_mangled_vtable_map_var_name):  New function.
              * decl2.c (start_objects): Update function comment.
              (cp_write_global_declarations): Call vtv_recover_class_info,
              vtv_compute_class_hierarchy_transitive_closure and
              vtv_build_vtable_verify_fndecl, before calling
              finalize_compilation_unit, and call vtv_generate_init_rount after, IFF
              flag_vtable_verify is true.
              (vtv_start_verification_constructor_init_function): New function.
              (vtv_finish_verification_constructor_init_function): New function.
              * init.c (build_vtbl_address): Remove static qualifier from function.
      
      libvtv/ChangeLog:
      2013-08-06  Caroline Tice  <cmtice@google.com>
      
              Initial check-in of new vtable verification feature.
              * configure.ac : New file.
              * acinclude.m4 : New file.
              * Makefile.am : New file.
              * aclocal.m4 : New file.
              * configure.tgt : New file.
              * configure: New file (generated).
              * Makefile.in: New file (generated).
              * vtv_set.h : New file.
              * vtv_utils.cc : New file.
              * vtv_utils.h : New file.
              * vtv_malloc.cc : New file.
              * vtv_rts.cc : New file.
              * vtv_malloc.h : New file.
              * vtv_rts.h : New file.
              * vtv_fail.cc : New file.
              * vtv_fail.h : New file.
              * vtv_map.h : New file.
              * scripts/run-testsuite.sh : New file.
              * scripts/sum-vtv-counts.c : New file.
              * testsuite/parts-test-main.h : New file.
              * testusite/dataentry.cc : New file.
              * testsuite/temp_deriv.cc : New file.
              * testsuite/register_pair.cc : New file.
              * testsuite/virtual_inheritance.cc : New file.
              * testsuite/field-test.cc : New file.
              * testsuite/nested_vcall_test.cc : New file.
              * testsuite/template-list-iostream.cc : New file.
              * testsuite/register_pair_inserts.cc : New file.
              * testsuite/register_pair_inserts_mt.cc : New file.
              * testsuite/event.list : New file.
              * testsuite/parts-test-extra-parts-views.cc : New file.
              * testsuite/parts-test-extra-parts-views.h : New file.
              * testsuite/environment-fail-32.s : New file.
              * testsuite/parts-test-extra-parts.h : New file.
              * testsuite/temp_deriv2.cc : New file.
              * testsuite/dlopen_mt.cc : New file.
              * testsuite/event.h : New file.
              * testsuite/template-list.cc : New file.
              * testsuite/replace-fail.cc : New file.
              * testsuite/Makefile.am : New file.
              * testsuite/Makefile.in: New file (generated).
              * testsuite/mempool_negative.c : New file.
              * testsuite/parts-test-main.cc : New file.
              * testsuite/event-private.cc : New file.
              * testsuite/thunk.cc : New file.
              * testsuite/event-defintiions.cc : New file.
              * testsuite/event-private.h : New file.
              * testsuite/parts-test.list : New file.
              * testusite/register_pair_mt.cc : New file.
              * testsuite/povray-derived.cc : New file.
              * testsuite/event-main.cc : New file.
              * testsuite/environment.cc : New file.
              * testsuite/template-list2.cc : New file.
              * testsuite/thunk_vtable_map_attack.cc : New file.
              * testsuite/parts-test-extra-parts.cc : New file.
              * testsuite/environment-fail-64.s : New file.
              * testsuite/dlopen.cc : New file.
              * testsuite/so.cc : New file.
              * testsuite/temp_deriv3.cc : New file.
              * testsuite/const_vtable.cc : New file.
              * testsuite/mempool_positive.c : New file.
              * testsuite/dup_name.cc : New file.
      
      From-SVN: r201555
      Caroline Tice committed
  4. 03 Apr, 2013 1 commit
    • Demangle C++11 ref-qualifier. · 9eb85f27
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_REFERENCE_THIS,
      	DEMANGLE_COMPONENT_RVALUE_REFERENCE_THIS.
      libiberty/
      	* cp-demangle.c (d_ref_qualifier): New.
      	(d_nested_name, d_function_type): Use it.
      	(d_parmlist): Don't get confused by a ref-qualifier.
      	(cplus_demangle_type): Reorder ref-qualifier.
      	(d_pointer_to_member_type): Likewise.
      	(d_dump): Handle DEMANGLE_COMPONENT_REFERENCE_THIS and
      	DEMANGLE_COMPONENT_RVALUE_REFERENCE_THIS.
      	(d_make_comp, has_return_type, d_encoding): Likewise.
      	(d_print_comp, d_print_mod_list, d_print_mod): Likewise.
      	(d_print_function_type, is_ctor_or_dtor): Likewise.
      
      From-SVN: r197436
      Jason Merrill committed
  5. 01 Mar, 2013 1 commit
  6. 11 Feb, 2013 1 commit
  7. 30 Jan, 2013 1 commit
  8. 18 Dec, 2012 1 commit
  9. 09 Nov, 2012 1 commit
    • Add C++ attribute abi_tag and -Wabi-tag option. · 7dbb85a7
      gcc/
      	* attribs.c (lookup_attribute_spec): Handle getting a TREE_LIST.
      gcc/c-family/
      	* c.opt (Wabi-tag): New.
      gcc/cp/
      	* tree.c (cxx_attribute_table): Add abi_tag attribute.
      	(check_abi_tag_redeclaration, handle_abi_tag_attribute): New.
      	* class.c (find_abi_tags_r, check_abi_tags): New.
      	(check_bases, check_field_decl): Call check_abi_tags.
      	* decl.c (redeclaration_error_message): Call
      	check_abi_tag_redeclaration.
      	* mangle.c (tree_string_cmp, write_abi_tags): New.
      	(write_unqualified_name): Call write_abi_tags.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_TAGGED_NAME.
      libiberty/
      	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_TAGGED_NAME.
      	(d_make_comp, d_find_pack, d_print_comp): Likewise.
      	(d_abi_tags): New.
      	(d_name): Call it.
      
      From-SVN: r193367
      Jason Merrill committed
  10. 06 Nov, 2012 1 commit
    • common.opt (gno-split-dwarf, [...]): New switches. · 99ea153e
      gcc/ChangeLog
      
      2012-11-06  Sterling Augustine <saugustine@google.com>
                  Cary Coutant <ccoutant@google.com>
      
      	* common.opt (gno-split-dwarf, gsplit-dwarf): New switches.
      	* doc/invoke.texi (Debugging Options): Document them.
      	* gcc.c (replace_extension_spec_func):  New function.
      	(ASM_FINAL_SPEC): Adjust.
      	(static_spec_functions): Add new field for replace-extension.
      	(check_live_switch): Adjust comment.  Add case for 'g'.
      	* opts.c (finish_options): Set x_debug_generate_pub_sections based on
      	x_dwarf_split_debug_info.
      	(common_handle_option): Add case for OPT_gsplit_dwarf.
      	* dwarf2out.h (addr_table_entry_struct): Add forward declaration.
      	(dw_val_struct): Add val_entry pointer.
      	* dwarf2out.c: (debug_skeleton_info_section,
      	debug_skeleton_abbrev_section, debug_addr_section,
      	debug_skeleton_line_section, debug_str_offsets_section): New globals.
      	(NOT_INDEXED, NO_INDEX_ASSIGNED): New defines.
      	(indirect_string_node): New field index.
      	(ate_kind): New enum with fields ate_kind_rtc, ate_kind_rtx_dtprel,
      	ate_kind_label.
      	(addr_table_entry): New structure and type.
      	(dw_loc_list_struct): Add field begin_entry.
      	(new_loc_desc): Initialize val_entry.
      	(size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
      	Add cases for DW_OP_GNU_addr_index and DW_OP_const_index.
      	(build_cfa_loc): Initialize val_entry.
      	(AT_index, add_addr_table_entry, remove_addr_table_entry,
      	add_AT_lbl_id): New functions.
      	(add_AT_addr, add_AT_range_list): New parameter force_direct.
      	(output_die_abbrevs): New function.
      	(add_ranges_by_labels): New parameter force_direct.
      	(output_line_info): New parameter prologue_only.
      	(dtprel_bool): New enum with dtprel_false and dtprel_true.
      	(dw_addr_op, new_addr_loc_descr): New functions.
      	(DEBUG_DWO_INFO_SECTION, DEBUG_DWO_ABBREV_SECTION,
      	DEBUG_ADDR_SECTION, DEBUG_NORM_MACINFO_SECTION,
      	DEBUG_DWO_MACINFO_SECTION, DEBUG_MACINFO_SECTION,
      	DEBUG_NORM_MACRO_SECTION, DEBUG_DWO_MACRO_SECTION,
      	DEBUG_MACRO_SECTION, DEBUG_DWO_LINE_SECTION,
      	DEBUG_DWO_LOC_SECTION, DEBUG_NORM_STR_OFFSETS_SECTION,
      	DEBUG_DWO_STR_OFFSETS_SECTION, DEBUG_STR_OFFSETS_SECTION,
      	DEBUG_DWO_STR_SECTION, DEBUG_NORM_STR_SECTION, DEBUG_STR_SECTION,
      	DEBUG_MACRO_SECTION_FLAGS, DEBUG_SKELETON_LINE_SECTION_LABEL,
      	DEBUG_SKELETON_INFO_SECTION_LABEL, DEBUG_ADDR_SECTION_LABEL
      	DEBUG_SKELETON_ABBREV_SECTION_LABEL): New macros.
      	(DEBUG_STR_SECTION_FLAGS): Adjust.
      	(TEXT_SECTION_LABEL, COLD_TEXT_SECTION_LABEL,
      	DEBUG_LINE_SECTION_LABEL, DEBUG_INFO_SECTION_LABEL,
      	DEBUG_ABBREV_SECTION_LABEL, DEBUG_ADDR_SECTION_LABEL,
      	DEBUG_LOC_SECTION_LABEL, DEBUG_RANGES_SECTION_LABEL,
      	DEBUG_MACINFO_SECTION_LABEL, DEBUG_MACRO_SECTION_LABEL): Adjust
      	indentation.
      	(debug_skeleton_abbrev_section_label, debug_addr_section_label,
      	debug_skeleton_line_section_label, debug_skeleton_info_section_label):
      	New global variables.
      	(add_AT_flag, add_AT_int, add_AT_unsigned, add_AT_double, add_AT_vec,
      	add_AT_data8): Initialize val_entry.
      	(add_AT_low_high_pc): New parameter force_direct. Handle
      	dwarf_split_debug_info.
      	(set_indirect_string, find_AT_string_form): New functions.
      	(AT_string_form): Adjust to call find_AT_string_from.
      	(add_AT_die_ref, add_AT_fde_ref, add_AT_loc, add_AT_list):
      	Initialize val_entry.
      	(addr_index_table): New global variable.
      	(addr_table_entry_do_hash, addr_table_entry_eq, add_addr_table_entry,
      	init_addr_table_entry, remove_addr_table_entry, index_addr_table_entry,
      	remove_loc_list_addr_table_entries): New functions.
      	(add_AT_addr, add_AT_lbl_id, add_AT_range_list): New parameter
      	force_direct.  Handle dwarf_split_debug_info.
      	(add_AT_file, add_AT_vms_delta, add_AT_lineptr, add_AT_macptr,
      	add_AT_offset): Initialize val_entry.
      	(UNRELOCATED_OFFSET, RELOCATED_OFFSET): New defines.
      	(size_of_die): Handle dwarf_split_debug_info.
      	(size_of_aranges, value_format): Call AT_class.  Check AT_index.
      	(output_die_abbrevs): New function.
      	(output_abbrev_section): Call output_die_abbrevs.
      	(new_loc_list): Initialize begin_entry.
      	(output_loc_list): Handle dwarf_split_debug_info.
      	(output_range_list_offset, output_loc_list_offset,
      	output_attr_index_or_value, ): New functions.
      	(output_die): Fix call to dw2_asm_output_data.  Call
      	output_attr_index_or_value and output_range_list_offset.
      	Adjust logic around dw_val_class_str.
      	(add_top_lebel_skeleton_die_attrs, get_skeleton_type_unit,
      	output_skeleton_debug_sections): New functions.
      	(output_comdat_type_unit, output_pubname, output_aranges): Handle
      	dwarf_split_debug_info.
      	(add_ranges_by_labels): New parameter force_direct.
      	(mem_loc_descriptor, loc_descr): Call new_addr_loc_descr.
      	(loc_list_from_tree, add_const_value_attribtue): Use dtprel_bools in
      	place of generic integer.
      	(dwarf2out_vms_debug_main_pointer, gen_entry_point_die, gen_label_die,
      	gen_call_site_die, gen_subprogram_die, gen_variable_die,
      	add_high_low_attributes): Adjust calls to add_AT_lbl_id.
      	(output_macinfo_op): Adjust indirect_string_logic.
      	(save_macinfo_strings): New function.
      	(output_macinfo): Adjust.
      	(dwarf2out_init): Handle dwarf_split_debug_info.
      	(index_string, output_index_string_offset, output_index_string): New
      	functions.
      	(output_indirect_string): Adjust.
      	(output_indirect_strings, output_addr_table_entry, output_addr_table):
      	New functions.
      	(resolve_addr_in_expr, hash_loc_operands): Handle DW_OP_GNU_addr_index
      	and DW_OP_GNU_const_index.  Handle dwarf_split_debug_info.  Call
      	remove_loc_list_addr_table_entries and remove_addr_table_entry.
      	(index_location_lists): New function.
      	(dwarf2out_finish): Handle dwarf_split_debug_info.  New variable
      	main_comp_unit_die.  Adjust calls to add_AT_low_high_pc,
      	add_ranges_by_labels, add_AT_addr, and add_AT_lineptr. Call
      	save_macinfo_strings and output_indirect_strings.
      
      include/ChangeLog
      
      2012-10-29  Sterling Augustine <saugustine@google.com>
                  Cary Coutant <ccoutant@google.com>
      
      	* dwarf2.h (dwarf_location_list_entry_type): New enum with fields
      	DW_LLE_GNU_end_of_list_entry, DW_LLE_GNU_base_address_selection_entry,
      	DW_LLE_GNU_start_end_entry and DW_LLE_GNU_start_length_entry.
      
      
      
      
      Co-Authored-By: Cary Coutant <ccoutant@google.com>
      
      From-SVN: r193267
      Sterling Augustine committed
  11. 08 Oct, 2012 1 commit
    • Allow dynamic initialization of thread_locals. · 7c424acd
      gcc/cp/
      	* decl.c: Define tls_aggregates.
      	(expand_static_init): Remove sorry.  Add to tls_aggregates.
      	* cp-tree.h: Declare tls_aggregates.
      	* call.c (set_up_extended_ref_temp): Add to tls_aggregates.
      	* decl2.c (var_needs_tls_wrapper): New.
      	(var_defined_without_dynamic_init): New.
      	(get_tls_init_fn, get_tls_wrapper_fn): New.
      	(generate_tls_wrapper, handle_tls_init): New.
      	(cp_write_global_declarations): Call handle_tls_init and
      	enerate_tls_wrapper.
      	* mangle.c (write_guarded_var_name): Split out from..
      	(mangle_guard_variable): ...here.
      	(mangle_tls_init_fn, mangle_tls_wrapper_fn): Use it.
      	(decl_tls_wrapper_p): New.
      	* semantics.c (finish_id_expression): Replace use of thread_local
      	variable with a call to its wrapper.
      libiberty/
      	* cp-demangle.c (d_special_name, d_dump): Handle TH and TW.
      	(d_make_comp, d_print_comp): Likewise.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_TLS_INIT and DEMANGLE_COMPONENT_TLS_WRAPPER.
      
      From-SVN: r192211
      Jason Merrill committed
  12. 18 Sep, 2012 1 commit
    • PR other/54411: integer overflow in objalloc_alloc · ed770de9
      2012-09-18  Florian Weimer  <fweimer@redhat.com>
      
      	PR other/54411
      	* objalloc.h (objalloc_alloc): Do not use fast path on wraparound.
      
      2012-09-18  Florian Weimer  <fweimer@redhat.com>
      
      	PR other/54411
      	* objalloc.c (_objalloc_alloc): Add overflow check covering
      	alignment and CHUNK_HEADER_SIZE addition.
      
      From-SVN: r191413
      Florian Weimer committed
  13. 06 Sep, 2012 1 commit
  14. 24 Aug, 2012 1 commit
  15. 13 Jul, 2012 1 commit
  16. 18 Jun, 2012 1 commit
  17. 12 Jun, 2012 1 commit
  18. 08 Jun, 2012 2 commits
  19. 23 May, 2012 1 commit
    • leb128.h: #include stdint.h, inttypes.h. · 60a1fb35
      	* leb128.h: #include stdint.h, inttypes.h.
      	(read_uleb128_to_uint64): Renamed from read_uleb128_to_ull.
      	Change to take a uint64_t * argument instead of unsigned long long.
      	(read_sleb128_to_uint64): Renamed from read_sleb128_to_ll.
      	Change to take an int64_t * argument instead of long long.
      
      From-SVN: r187818
      Doug Evans committed
  20. 22 May, 2012 1 commit
  21. 20 May, 2012 1 commit
  22. 02 May, 2012 1 commit
  23. 28 Apr, 2012 1 commit
  24. 27 Apr, 2012 2 commits
    • * dwarf2.h: Wrap function declarations in extern "C". · accea034
      From-SVN: r186918
      Tom Tromey committed
    • dwarf2out.c (dwarf_stack_op_name): Use get_DW_OP_name. · 11ec770e
      gcc
      	* dwarf2out.c (dwarf_stack_op_name): Use get_DW_OP_name.
      	(dwarf_tag_name): Use get_DW_TAG_name.
      	(dwarf_attr_name): Use get_DW_AT_name.
      	(dwarf_form_name): Use get_DW_FORM_name.
      	* dwarf2cfi.c (dwarf_cfi_name): Use get_DW_CFA_name.
      include
      	* dwarf2.h (enum dwarf_tag, enum dwarf_form, enum dwarf_attribute)
      	(enum dwarf_location_atom, enum dwarf_type, enum
      	dwarf_call_frame_info): Remove.
      	(DW_TAG, DW_TAG_DUP, DW_FORM, DW_AT, DW_AT_DUP, DW_OP)
      	(DW_OP_DUP, DW_ATE, DW_ATE_DUP, DW_CFA): New macros.
      	Include dwarf2.def.
      	(get_DW_TAG_name, get_DW_AT_name, get_DW_FORM_name)
      	(get_DW_OP_name, get_DW_ATE_name): Declare.
      	* dwarf2.def: New file, from dwarf2.h.
      libiberty
      	* dwarfnames.c: New file.
      	* Makefile.in (CFILES): Add dwarfnames.
      	(REQUIRED_OFILES): Add dwarfnames.
      	(./dwarfnames.$(objext)): New target.
      
      From-SVN: r186908
      Tom Tromey committed
  25. 10 Apr, 2012 1 commit
    • gengtype.c (main): Make uintptr_t a known type. · 5973ae1a
      gcc/
      2012-04-10  Tristan Gingold  <gingold@adacore.com>
      
      	* gengtype.c (main): Make uintptr_t a known type.
      
      include/
      2012-04-10  Tristan Gingold  <gingold@adacore.com>
      
      	* splay-tree.h: Conditionnaly includes stdint.h and inttypes.h
      	(libi_uhostptr_t, libi_shostptr_t): Remove, replaced by uintptr_t.
      
      From-SVN: r186269
      Tristan Gingold committed
  26. 26 Jan, 2012 1 commit
  27. 06 Jan, 2012 1 commit
    • re PR c++/6057 (expression mangling doesn't work for operator new) · 4b6aaa99
      	PR c++/6057
      	PR c++/48051
      	PR c++/50855
      	PR c++/51322
      gcc/cp/
      	* mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
      	THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
      	PREDECREMENT_EXPR.
      	(write_template_arg): Fix mangling of class-scope functions and
      	argument packs.
      	(mangle_decl): Update suggested -fabi-version argument.
      	* operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
      	DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
      	* tree.c (dependent_name): No longer static.
      	* cp-tree.h: Declare it.
      	* pt.c (unify): Defer handling of unconverted functions.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY.
      libiberty/
      	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and
      	DEMANGLE_COMPONENT_INITIALIZER_LIST.
      	(d_make_comp): Likewise.  Allow null right arg for
      	DEMANGLE_COMPONENT_TRINARY_ARG2.
      	(cplus_demangle_operators): Adjust new/delete; add .*, :: and throw.
      	(d_template_args, d_template_arg): Handle 'J' for argument packs.
      	(d_exprlist): Add terminator parm.
      	(d_expression, d_print_comp): Handle initializer lists, nullary
      	expressions, prefix/suffix operators, and new.
      	(d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME
      	and DEMANGLE_COMPONENT_INITIALIZER_LIST.
      	* testsuite/demangle-expected: Add tests.
      
      From-SVN: r182970
      Jason Merrill committed
  28. 08 Nov, 2011 1 commit
  29. 22 Oct, 2011 1 commit
  30. 28 Sep, 2011 2 commits
  31. 26 Sep, 2011 1 commit
  32. 23 Sep, 2011 1 commit
    • re PR c++/40831 (g++ generated symbols for cloned function that be demangled.) · 2d2b02c4
      include/ChangeLog:
      
      	PR 40831
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_CLONE.
      
      libiberty/ChangeLog:
      
      	PR 40831
      	* cp-demangle.c (d_make_comp): Add new component type.
      	(cplus_demangle_mangled_name): Check for clone suffixes.
      	(d_parmlist): Don't error out if we see '.'.
      	(d_clone_suffix): New function.
      	(d_print_comp): Print info for clone suffixes.
      	* testsuite/demangle-expected: Add new testcases.
      
      From-SVN: r179132
      Cary Coutant committed
  33. 25 Jul, 2011 1 commit
  34. 22 Jul, 2011 2 commits
    • dwarf2.h (DW_AT_GNU_macros): New. · 520cda8c
      	* dwarf2.h (DW_AT_GNU_macros): New.
      	(enum dwarf_macro_record_type): New enum.  Add DW_MACRO_GNU_*.
      
      	* dwarf2out.c (struct macinfo_struct): Change code to unsigned char.
      	(DEBUG_MACRO_SECTION, DEBUG_MACRO_SECTION_LABEL): Define.
      	(dwarf_attr_name): Handle DW_AT_GNU_macros.
      	(dwarf2out_define): If the vector is empty and
      	lineno is 0, emit a dummy entry first.
      	(dwarf2out_undef): Likewise.  Remove redundant semicolon.
      	(htab_macinfo_hash, htab_macinfo_eq, output_macinfo_op,
      	optimize_macinfo_range): New functions.
      	(output_macinfo): Use them.  If !dwarf_strict and .debug_str is
      	mergeable, optimize longer strings using
      	DW_MACRO_GNU_{define,undef}_indirect and if HAVE_COMDAT_GROUP,
      	optimize longer sequences of define/undef ops from headers
      	using DW_MACRO_GNU_transparent_include.  For !dwarf_strict
      	emit a section headers.
      	(dwarf2out_init): For !dwarf_strict set debug_macinfo_section
      	and macinfo_section_label to DEBUG_MACRO_SECTION
      	resp. DEBUG_MACRO_SECTION_LABEL.
      	(dwarf2out_finish): For !dwarf_strict emit DW_AT_GNU_macros
      	instead of DW_AT_macro_info.
      
      From-SVN: r176653
      Jakub Jelinek committed
    • re PR c++/49756 (g++ ICE) · d423df48
      	PR c++/49756
      	* libiberty.h (stack_limit_increase): New prototype.
      
      	* stack-limit.c: New file.
      	* Makefile.in: Regenerate deps.
      	(CFILES): Add stack-limit.c.
      	(REQUIRED_OFILES): Add ./stack-limit.$(objext).
      	* configure.ac (checkfuncs): Add getrlimit and setrlimit.
      	(AC_CHECK_FUNCS): Likewise.
      	* configure: Regenerated.
      	* config.in: Regenerated.
      
      	* gcc.c (main): Call stack_limit_increase (64MB).
      	* toplev.c (toplev_main): Likewise.
      
      From-SVN: r176617
      Jakub Jelinek committed
  35. 14 Jul, 2011 1 commit
    • 2012011-07-13 Sriraman Tallam <tmsriram@google.com> · 8ff3369c
      	
      	* plugin-api.h
      	(ld_plugin_section): New struct.
      	(ld_plugin_get_section_count): New typedef.
      	(ld_plugin_get_section_type): New typedef.
      	(ld_plugin_get_section_name): New typedef.
      	(ld_plugin_get_section_contents): New typedef.
      	(ld_plugin_update_section_order): New typedef.
      	(ld_plugin_allow_section_ordering): New typedef.
      	(LDPT_GET_SECTION_COUNT): New enum value.
      	(LDPT_GET_SECTION_TYPE): New enum value.
      	(LDPT_GET_SECTION_NAME): New enum value.
      	(LDPT_GET_SECTION_CONTENTS): New enum value.
      	(LDPT_UPDATE_SECTION_ORDER): New enum value.
      	(LDPT_ALLOW_SECTION_ORDERING): New enum value.
      	(tv_get_section_count): New struct members.
      	(tv_get_section_type): New struct members.
      	(tv_get_section_name): New struct members.
      	(tv_get_section_contents): New struct members.
      	(tv_update_section_order): New struct members.
      	(tv_allow_section_ordering): New struct members.
      
      From-SVN: r176260
      Sriraman Tallam committed
  36. 01 Jul, 2011 1 commit
    • Darwin has case-insensitive filesystems · 985b34c7
      HFS+, the FS on Darwin, is case insensitive. So this patch adjusts
      filename_cmp.c to ignore the casing when comparing filenames on Darwin.
      
      include/ChangeLog:
      
              * filenames.h (HAVE_CASE_INSENSITIVE_FILE_SYSTEM): Define
              on Darwin, as well as on the systems that use a DOS-like
              filesystem.
      
      libiberty/ChangeLog:
      
              * filename_cmp.c (filename_cmp, filename_ncmp): Add handling of
              HAVE_CASE_INSENSITIVE_FILE_SYSTEM.
      
      From-SVN: r175762
      Joel Brobecker committed