1. 30 Oct, 2014 1 commit
  2. 16 Jul, 2014 1 commit
  3. 22 Apr, 2014 1 commit
  4. 21 Jan, 2014 1 commit
    • tromey's avatar
      include · e14937e9
      tromey authored
      	* ansidecl.h (ANSI_PROTOTYPES, PTRCONST, LONG_DOUBLE, PARAMS)
      	(VPARAMS, VA_START, VA_OPEN, VA_CLOSE, VA_FIXEDARG, CONST)
      	(VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, AND, DOTS)
      	(NOARGS): Don't define.
      	* libiberty.h (expandargv, writeargv): Don't use PARAMS.
      libiberty
      	* _doprint.c (checkit): Use stdarg, not VA_* macros.
      	* asprintf.c (asprintf): Use stdarg, not VA_* macros.
      	* concat.c (concat_length, concat_copy, concat_copy2, concat)
      	(reconcat): Use stdarg, not VA_* macros.
      	* snprintf.c (snprintf): Use stdarg, not VA_* macros.
      	* vasprintf.c (checkit): Use stdarg, not VA_* macros.
      	* vsnprintf.c (checkit): Use stdarg, not VA_* macros.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206881 138bc75d-0d04-0410-961f-82ee72b054a4
      e14937e9
  5. 23 Dec, 2013 1 commit
    • jason's avatar
      PR c++/41090 · 468088ac
      jason authored
      	Add -fdeclone-ctor-dtor.
      gcc/cp/
      	* optimize.c (can_alias_cdtor, populate_clone_array): Split out
      	from maybe_clone_body.
      	(maybe_thunk_body): New function.
      	(maybe_clone_body): Call it.
      	* mangle.c (write_mangled_name): Remove code to suppress
      	writing of mangled name for cloned constructor or destructor.
      	(write_special_name_constructor): Handle decloned constructor.
      	(write_special_name_destructor): Handle decloned destructor.
      	* method.c (trivial_fn_p): Handle decloning.
      	* semantics.c (expand_or_defer_fn_1): Clone after setting linkage.
      gcc/c-family/
      	* c.opt: Add -fdeclone-ctor-dtor.
      	* c-opts.c (c_common_post_options): Default to on iff -Os.
      gcc/
      	* cgraph.h (struct cgraph_node): Add calls_comdat_local.
      	(symtab_comdat_local_p, symtab_in_same_comdat_p): New.
      	* cif-code.def: Add USES_COMDAT_LOCAL.
      	* symtab.c (verify_symtab_base): Make sure we don't refer to a
      	comdat-local symbol from outside its comdat.
      	* cgraph.c (verify_cgraph_node): Likewise.
      	* cgraphunit.c (mark_functions_to_output): Don't mark comdat-locals.
      	* ipa.c (symtab_remove_unreachable_nodes): Likewise.
      	(function_and_variable_visibility): Handle comdat-local fns.
      	* ipa-cp.c (determine_versionability): Don't clone comdat-locals.
      	* ipa-inline-analysis.c (compute_inline_parameters): Update
      	calls_comdat_local.
      	* ipa-inline-transform.c (inline_call): Likewise.
      	(save_inline_function_body): Don't clear DECL_COMDAT_GROUP.
      	* ipa-inline.c (can_inline_edge_p): Check calls_comdat_local.
      	* lto-cgraph.c (input_overwrite_node): Read calls_comdat_local.
      	(lto_output_node): Write it.
      	* symtab.c (symtab_dissolve_same_comdat_group_list): Clear
      	DECL_COMDAT_GROUP for comdat-locals.
      include/
      	* demangle.h (enum gnu_v3_ctor_kinds):
      	Added literal gnu_v3_unified_ctor.
      	(enum gnu_v3_ctor_kinds):
      	Added literal gnu_v3_unified_dtor.
      libiberty/
      	* cp-demangle.c (cplus_demangle_fill_ctor,cplus_demangle_fill_dtor):
      	Handle unified ctor/dtor.
      	(d_ctor_dtor_name): Handle unified ctor/dtor.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206182 138bc75d-0d04-0410-961f-82ee72b054a4
      468088ac
  6. 04 Dec, 2013 1 commit
    • rsandifo's avatar
      include/ · 81927967
      rsandifo authored
      	* longlong.h: New file.
      
      libgcc/
      	* longlong.h: Delete (moved to include/).
      
      libquadmath/
      	* Makefile.am (AM_CPPFLAGS): Define.
      	* Makefile.in: Regenerate.
      	* printf/gmp-impl.h: Remove path from longlong.h include.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205659 138bc75d-0d04-0410-961f-82ee72b054a4
      81927967
  7. 29 Oct, 2013 1 commit
    • glisse's avatar
      2013-10-29 Marc Glisse <marc.glisse@inria.fr> · 2b0d0b81
      glisse authored
      	PR tree-optimization/58689
      include/
      	* ansidecl.h (ATTRIBUTE_RETURNS_NONNULL): New macro.
      	* libiberty.h (basename, lbasename, dos_lbasename, unix_lbasename,
      	concat_copy): Mark with attributes nonnull(1) and returns_nonnull.
      	(concat, reconcat, concat_copy2, choose_temp_base, xstrerror,
      	xmalloc, xrealloc, xcalloc, xstrdup, xstrndup, xmemdup, pex_init):
      	Mark with attribute returns_nonnull.
      
      libiberty/
      	* concat.c: Remove note about xmalloc.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204159 138bc75d-0d04-0410-961f-82ee72b054a4
      2b0d0b81
  8. 23 Oct, 2013 1 commit
  9. 22 Oct, 2013 1 commit
  10. 20 Aug, 2013 1 commit
    • amodra's avatar
      include/ · 6d69d407
      amodra authored
      	* 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.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201869 138bc75d-0d04-0410-961f-82ee72b054a4
      6d69d407
  11. 19 Aug, 2013 1 commit
  12. 07 Aug, 2013 1 commit
    • ctice's avatar
      Commit the vtable verification feature. This feature is designed to · b710ec85
      ctice authored
      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.
      
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201555 138bc75d-0d04-0410-961f-82ee72b054a4
      b710ec85
  13. 03 Apr, 2013 1 commit
    • jason's avatar
      Demangle C++11 ref-qualifier. · 1189258f
      jason authored
      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.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197436 138bc75d-0d04-0410-961f-82ee72b054a4
      1189258f
  14. 01 Mar, 2013 1 commit
  15. 11 Feb, 2013 1 commit
  16. 30 Jan, 2013 1 commit
    • ktietz's avatar
      PR other/54620 · 9261f555
      ktietz authored
      	PR target/39064
      	* md5.h (md5_uintptr, md5_uint32): Define as uintptr_t/uint32_t if
      	stdint.h and sys/types.h headers are present.
      	* sha1.h (sha1_uintptr, sha1_uint32): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195579 138bc75d-0d04-0410-961f-82ee72b054a4
      9261f555
  17. 18 Dec, 2012 1 commit
  18. 09 Nov, 2012 1 commit
    • jason's avatar
      Add C++ attribute abi_tag and -Wabi-tag option. · d4701f6c
      jason authored
      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.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193367 138bc75d-0d04-0410-961f-82ee72b054a4
      d4701f6c
  19. 06 Nov, 2012 1 commit
    • sterling's avatar
      gcc/ChangeLog · b35329c7
      sterling authored
      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.
      
      
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193267 138bc75d-0d04-0410-961f-82ee72b054a4
      b35329c7
  20. 08 Oct, 2012 1 commit
    • jason's avatar
      Allow dynamic initialization of thread_locals. · 462819c8
      jason authored
      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.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192211 138bc75d-0d04-0410-961f-82ee72b054a4
      462819c8
  21. 18 Sep, 2012 1 commit
    • fw's avatar
      PR other/54411: integer overflow in objalloc_alloc · 63d6cef5
      fw authored
      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.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191413 138bc75d-0d04-0410-961f-82ee72b054a4
      63d6cef5
  22. 06 Sep, 2012 1 commit
  23. 24 Aug, 2012 1 commit
  24. 13 Jul, 2012 1 commit
    • devans's avatar
      include/ · 712932d2
      devans authored
      	* filenames.h: #include "hashtab.h".
      	(filename_hash, filename_eq): Declare.
      	libiberty/
      	* filename_cmp.c (filename_hash, filename_eq): New functions.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189472 138bc75d-0d04-0410-961f-82ee72b054a4
      712932d2
  25. 18 Jun, 2012 1 commit
  26. 12 Jun, 2012 1 commit
  27. 08 Jun, 2012 1 commit
  28. 23 May, 2012 1 commit
  29. 22 May, 2012 1 commit
  30. 20 May, 2012 1 commit
  31. 02 May, 2012 1 commit
  32. 28 Apr, 2012 1 commit
  33. 27 Apr, 2012 2 commits
    • tromey's avatar
      * dwarf2.h: Wrap function declarations in extern "C". · 8fd919b6
      tromey authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186918 138bc75d-0d04-0410-961f-82ee72b054a4
      8fd919b6
    • tromey's avatar
      gcc · c9f46599
      tromey authored
      	* 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.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186908 138bc75d-0d04-0410-961f-82ee72b054a4
      c9f46599
  34. 10 Apr, 2012 1 commit
    • gingold's avatar
      gcc/ · ee0af6e0
      gingold authored
      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.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186269 138bc75d-0d04-0410-961f-82ee72b054a4
      ee0af6e0
  35. 26 Jan, 2012 1 commit
  36. 06 Jan, 2012 1 commit
    • jason's avatar
      PR c++/6057 · 2d847c18
      jason authored
      	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.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182970 138bc75d-0d04-0410-961f-82ee72b054a4
      2d847c18
  37. 08 Nov, 2011 1 commit
  38. 22 Oct, 2011 1 commit
  39. 28 Sep, 2011 1 commit
    • devans's avatar
      include/ · e30b3499
      devans authored
      	* timeval-utils.h: New file.
      
      	libiberty/
      	* timeval-utils.c: New file.
      	* Makefile.in (CFILES): Add it.
      	(REQUIRED_OFILES): Add timeval-utils.$(objext).
      	(INSTALLED_HEADERS): Add timeval-utils.h.
      	(timeval-utils.$(objext)): Add rule.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179319 138bc75d-0d04-0410-961f-82ee72b054a4
      e30b3499