1. 28 Jun, 2014 10 commits
    • tree-inline.c (remap_type_1): Do not duplicate fields that are shared in between… · 8910466a
      tree-inline.c (remap_type_1): Do not duplicate fields that are shared in between type and its main variant.
      
      
      	* tree-inline.c (remap_type_1): Do not duplicate fields
      	that are shared in between type and its main variant.
      
      From-SVN: r212111
      Jan Hubicka committed
    • * gennews: Use gcc-3.0/index.html. · 16a4b3b9
      From-SVN: r212109
      Richard Biener committed
    • ipa-prop.c (ipa_set_jf_known_type): Record always the main variant of the type. · b49407f8
      
      	* ipa-prop.c (ipa_set_jf_known_type): Record always the main variant
      	of the type.
      	(ipa_set_ancestor_jf) Likewise.
      	(check_stmt_for_type_change): Check that we work on main variant.
      	(detect_type_change): Look into main variant.
      	(compute_known_type_jump_func): Check that main variant has BINFO.
      
      From-SVN: r212108
      Jan Hubicka committed
    • ipa-devirt.c (set_type_binfo): New function. · c7e1befa
      	* ipa-devirt.c (set_type_binfo): New function.
      	(add_type_duplicate): Use it.
      	(get_odr_type): Sanity check that binfos points to main variants.
      	(get_class_context): Be sure the context's outer_type is main variant.
      	(contains_type_p): Walk main variant.
      	(get_polymorphic_call_info_for_decl): Set outer_type to be main variant.
      	(get_polymorphic_call_info): Likewise.
      	(possible_polymorphic_call_targets): Sanity check that we operate on main
      	variant.
      
      From-SVN: r212107
      Jan Hubicka committed
    • stor-layout.c (finish_builtin_struct): Copy fields into the variants. · 7ae2e72c
      
      	* stor-layout.c (finish_builtin_struct): Copy fields into
      	the variants.
      
      From-SVN: r212106
      Jan Hubicka committed
    • revert: [multiple changes] · de35da36
      2014-06-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	Revert:
      	2014-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
      	    	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	PR libstdc++/61536
      	* config/abi/pre/gnu.ver: Adjust for out of line comparisons.
      
      	2014-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* config/abi/pre/gnu.ver: Tighten some patterns; tidy.
      
      From-SVN: r212104
      Paolo Carlini committed
    • re PR fortran/29383 (Fortran 2003/F95[TR15580:1999]: Floating point exception (IEEE) support) · 8b198102
      	PR fortran/29383
      
      gcc/fortran/
      	* gfortran.h (gfc_simplify_ieee_selected_real_kind): New prototype.
      	* libgfortran.h (GFC_FPE_*): Use simple integer values, valid in
      	both C and Fortran.
      	* expr.c (gfc_check_init_expr): Simplify IEEE_SELECTED_REAL_KIND.
      	* simplify.c (gfc_simplify_ieee_selected_real_kind): New function.
      	* module.c (mio_symbol): Keep track of symbols which came from
      	intrinsic modules.
      	(gfc_use_module): Keep track of the IEEE modules.
      	* trans-decl.c (gfc_get_symbol_decl): Adjust code since
      	we have new intrinsic modules.
      	(gfc_build_builtin_function_decls): Build decls for
      	ieee_procedure_entry and ieee_procedure_exit.
      	(is_from_ieee_module, is_ieee_module_used, save_fp_state,
      	restore_fp_state): New functions.
      	(gfc_generate_function_code): Save and restore floating-point
      	state on procedure entry/exit, when IEEE modules are used.
      	* intrinsic.texi: Document the IEEE modules.
      
      libgfortran/
      	* configure.host: Add checks for IEEE support, rework priorities.
      	* configure.ac: Define IEEE_SUPPORT, check for fpsetsticky and
      	fpresetsticky.
      	* configure: Regenerate.
      	* Makefile.am: Build new ieee files, install IEEE_* modules.
      	* Makefile.in: Regenerate.
      	* gfortran.map (GFORTRAN_1.6): Add new symbols.
      	* libgfortran.h (get_fpu_trap_exceptions, set_fpu_trap_exceptions,
      	support_fpu_trap, set_fpu_except_flags, support_fpu_flag,
      	support_fpu_rounding_mode, get_fpu_state, set_fpu_state): New
      	prototypes.
      	* config/fpu-*.h (get_fpu_trap_exceptions,
      	set_fpu_trap_exceptions, support_fpu_trap, set_fpu_except_flags,
      	support_fpu_flag, support_fpu_rounding_mode, get_fpu_state,
      	set_fpu_state): New functions.
      	* ieee/ieee_features.F90: New file.
      	* ieee/ieee_exceptions.F90: New file.
      	* ieee/ieee_arithmetic.F90: New file.
      	* ieee/ieee_helper.c: New file.
      
      gcc/testsuite/
      	* lib/target-supports.exp (check_effective_target_fortran_ieee): 
      	New function.
      	* gfortran.dg/ieee/ieee.exp: New file.
      	* gfortran.dg/ieee/ieee_1.F90: New file.
      	* gfortran.dg/ieee/ieee_2.f90: New file.
      	* gfortran.dg/ieee/ieee_3.f90: New file.
      	* gfortran.dg/ieee/ieee_4.f90: New file.
      	* gfortran.dg/ieee/ieee_5.f90: New file.
      	* gfortran.dg/ieee/ieee_6.f90: New file.
      	* gfortran.dg/ieee/ieee_7.f90: New file.
      	* gfortran.dg/ieee/ieee_rounding_1.f90: New file.
      
      From-SVN: r212102
      Francois-Xavier Coudert committed
    • rs6000.c (rs6000_aggregate_candidate): Revert accidental change due to wide-int branch merge. · a8647163
      2014-06-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_aggregate_candidate): Revert
      	accidental change due to wide-int branch merge.
      
      From-SVN: r212100
      Ulrich Weigand committed
    • DR 1579 PR c++/58051 · fb682f94
      gcc/cp:
      	DR 1579
      	PR c++/58051
      	* typeck.c (check_return_expr): Lookup as an rvalue even when the
      	types aren't the same.
      
      gcc/testsuite:
      	* g++.dg/cpp0x/elision_conv.C: New.
      
      From-SVN: r212099
      Jonathan Wakely committed
    • Daily bump. · c02e1851
      From-SVN: r212096
      GCC Administrator committed
  2. 27 Jun, 2014 16 commits
    • re PR c++/61433 (ICE: SIGSEGV in friend_accessible_p (search.c:778) with… · 1ed5f1d3
      re PR c++/61433 (ICE: SIGSEGV in friend_accessible_p (search.c:778) with -std=gnu++11 -O -fcompare-debug -fno-inline -fno-ipa-pure-const -fipa-sra)
      
      	PR c++/61433
      	* error.c (dump_template_bindings): Don't tsubst in a clone.
      
      From-SVN: r212091
      Jason Merrill committed
    • 2014-06-27 Paolo Carlini <paolo.carlini@oracle.com> · 8274b281
      	* Revert r212046 and r212054.
      
      From-SVN: r212085
      Paolo Carlini committed
    • nint_2.f90: Don't XFAIL for powerpc64le-*-linux*. · 840bb6ac
      2014-06-27  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gfortran.dg/nint_2.f90: Don't XFAIL for powerpc64le-*-linux*.
      
      From-SVN: r212075
      Bill Schmidt committed
    • re PR c++/61614 (Bogus error: taking address of temporary array) · 04d375e6
      /cp
      2014-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/61614
      	* semantics.c (finish_compound_literal): Revert r204228.
      
      /testsuite
      2014-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/61614
      	* g++.dg/ext/complit14.C: New.
      
      From-SVN: r212073
      Paolo Carlini committed
    • Support compressed debug sections · 29d7cbd1
      	* configure.ac (gcc_cv_as_compress_debug): Check for assembler
      	compressed debug support.
      	(gcc_cv_ld_compress_debug): Check for linker compressed debug
      	support.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* common.opt (compressed_debug_sections): New enum.
      	(gz, gz=): New options.
      	* gcc.c (LINK_COMPRESS_DEBUG_SPEC, ASM_COMPRESS_DEBUG_SPEC):
      	Define.
      	(LINK_COMMAND_SPEC): Invoke LINK_COMPRESS_DEBUG_SPEC.
      	(asm_options): Invoke ASM_COMPRESS_DEBUG_SPEC.
      	* config/darwin.h (LINK_COMMAND_SPEC_A): Invoke
      	LINK_COMPRESS_DEBUG_SPEC.
      	* config/i386/djgpp.h (LINK_COMMAND_SPEC): Likewise.
      	* opts.c (common_handle_option): Handle OPT_gz, OPT_gz_.
      	* doc/invoke.texi (Option Summary, Debugging Options): Add
      	-gz[=type].
      	(Debugging Options): Document -gz[=type].
      
      From-SVN: r212072
      Rainer Orth committed
    • re PR ipa/61160 (wrong code with -O3 (or ICE: verify_cgraph_node failed: edge… · d284e1b8
      re PR ipa/61160 (wrong code with -O3 (or ICE: verify_cgraph_node failed: edge points to wrong declaration))
      
      2014-06-27  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/61160
      	* cgraphclones.c (duplicate_thunk_for_node): Removed parameter
      	args_to_skip, use those from node instead.  Copy args_to_skip and
      	combined_args_to_skip from node to the new thunk.
      	(redirect_edge_duplicating_thunks): Removed parameter args_to_skip.
      	(cgraph_create_virtual_clone): Moved computation of
      	combined_args_to_skip...
      	(cgraph_clone_node): ...here, simplify it to bitmap_ior..
      
      testsuite/
      	* g++.dg/ipa/pr61160-2.C: New test.
      	* g++.dg/ipa/pr61160-3.C: Likewise.
      
      From-SVN: r212071
      Martin Jambor committed
    • remove broken and redundant diagnostic in i386_pe_section_type_flags · f012c1ab
      varasm.c is the only caller of this target hook, and it correctly uses a
      htab to check if the flags returned by the hook are the same as the
      flags it has for the section, and emit a error if not.
      
      gccc/
      
      	* config/i386/winnt.c (i386_pe_section_type_flags): Remove
      	redundant diagnostic machinary.
      
      From-SVN: r212069
      Trevor Saunders committed
    • tree-ssa-math-opts.c (bswap_replace): Fix SLOW_UNALIGNED_ACCESS test to only… · 3fd269db
      tree-ssa-math-opts.c (bswap_replace): Fix SLOW_UNALIGNED_ACCESS test to only apply to unaligned object.
      
      2014-06-27  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-math-opts.c (bswap_replace): Fix
      	SLOW_UNALIGNED_ACCESS test to only apply to unaligned object.
      
      From-SVN: r212068
      Richard Biener committed
    • Fix for devirtualization dump functions · 807b7d62
              * gimple.h (gimple_location_safe): New function introduced.
      	* cgraphunit.c (walk_polymorphic_call_targets): Usage
      	of gimple_location_safe replaces gimple_location.
      	(gimple_fold_call): Likewise.
      	* ipa-devirt.c (ipa_devirt): Likewise.
      	* ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
      	* ipa.c (walk_polymorphic_call_targets): Likewise.
      	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Likewise.
      
      From-SVN: r212067
      Martin Liska committed
    • parser.c (cp_parser_compound_literal_p): New. · fcbbf14a
      2014-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* parser.c (cp_parser_compound_literal_p): New.
      	(cp_parser_postfix_expression, cp_parser_sizeof_operand): Use it.
      
      From-SVN: r212064
      Paolo Carlini committed
    • re PR tree-optimization/57233 (Vector lowering of LROTATE_EXPR pessimizes code) · a4ee446d
      	PR tree-optimization/57233
      	PR tree-optimization/61299
      	* tree-vect-generic.c (get_compute_type, count_type_subparts): New
      	functions.
      	(expand_vector_operations_1): Use them.  If {L,R}ROTATE_EXPR
      	would be lowered to scalar shifts, check if corresponding
      	shifts and vector BIT_IOR_EXPR are supported and don't lower
      	or lower just to narrower vector type in that case.
      	* expmed.c (expand_shift_1): Fix up handling of vector
      	shifts and rotates.
      
      	* gcc.dg/pr57233.c: New test.
      	* gcc.target/i386/pr57233.c: New test.
      	* gcc.target/i386/sse2-pr57233.c: New test.
      	* gcc.target/i386/avx-pr57233.c: New test.
      	* gcc.target/i386/avx2-pr57233.c: New test.
      	* gcc.target/i386/avx512f-pr57233.c: New test.
      	* gcc.target/i386/xop-pr57233.c: New test.
      
      From-SVN: r212063
      Jakub Jelinek committed
    • c-parser.c (c_parser_declaration_or_fndef): Discard all type qualifiers in… · 9698b078
      c-parser.c (c_parser_declaration_or_fndef): Discard all type qualifiers in __auto_type for atomic types.
      
      	* c-parser.c (c_parser_declaration_or_fndef): Discard all type
      	qualifiers in __auto_type for atomic types.
      	(c_parser_typeof_specifier): Discard all type qualifiers in
      	__typeof__ for atomic types.
      
      	* gcc.dg/typeof-2.c: New testcase.
      
      From-SVN: r212062
      Sebastian Huber committed
    • bounds-2.c: Adjust dg-output. · 4443341a
      	* c-c++-common/ubsan/bounds-2.c: Adjust dg-output.
      	(fn1): Remove store to out-of-bounds location.  Add memory barrier.
      	(fn2): Likewise.
      	(fn5): Likewise.
      	(fn6): Likewise.
      	(fn7): Likewise.
      	(fn8): Likewise.
      	(fn9): Likewise.
      	(fn11): Likewise.
      	* c-c++-common/ubsan/bounds-5.c (fn1): Remove store to out-of-bounds
      	location.  Add memory barrier.
      	(fn2): Likewise.
      	(fn3): Likewise.
      	(fn4): Likewise.
      	(fn5): Likewise.
      	* c-c++-common/ubsan/bounds-7.c: New test.
      
      From-SVN: r212061
      Marek Polacek committed
    • re PR libfortran/61499 (Internal read of negative integer broken) · 2a55ae37
      2014-06-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/61499
      	* gfortran.dg/arrayio_15.f90: New test.
      
      From-SVN: r212060
      Jerry DeLisle committed
    • re PR libfortran/61499 (Internal read of negative integer broken) · b896e674
      2014-06-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/61499
      	* io/list_read.c (eat_spaces): Use a 'for' loop instead of
      	'while' loop to skip the loop if there are no bytes left in the
      	string. Only seek if actual spaces can be skipped.
      
      From-SVN: r212059
      Jerry DeLisle committed
    • Daily bump. · 5450a05c
      From-SVN: r212058
      GCC Administrator committed
  3. 26 Jun, 2014 14 commits