Commit Graph

126989 Commits

Author SHA1 Message Date
Wei Mi ba4fa5819f re PR rtl-optimization/59020 (internal compiler error: in maybe_add_or_update_dep_1, at sched-deps.c:933)
2013-12-03  Wei Mi  <wmi@google.com>

	PR rtl-optimization/59020
	* sched-deps.c (try_group_insn): Move it from haifa-sched.c to here.
	(sched_analyze_insn): Call try_group_insn.
	(sched_analyze): Cleanup SCHED_GROUP_P before start the analysis.
	* haifa-sched.c (try_group_insn): Moved to sched-deps.c.
	(group_insns_for_macro_fusion): Removed.
	(sched_init): Remove calling group_insns_for_macro_fusion.

2013-12-03  Wei Mi  <wmi@google.com>

	PR rtl-optimization/59020
	* testsuite/gcc.dg/pr59020.c: New.
	* testsuite/gcc.dg/macro-fusion-1.c: New.
	* testsuite/gcc.dg/macro-fusion-2.c: New.

From-SVN: r205644
2013-12-03 18:35:24 +00:00
Peter Bergner 05db108d6b htmintrin.h (_TEXASR_INSTRUCTION_FETCH_CONFLICT): Fix typo in macro name.
* config/rs6000/htmintrin.h (_TEXASR_INSTRUCTION_FETCH_CONFLICT): Fix
	typo in macro name.
	(_TEXASRU_INSTRUCTION_FETCH_CONFLICT): Likewise.

From-SVN: r205641
2013-12-03 10:26:32 -06:00
Yury Gribov cc41e33645 re PR sanitizer/59063 (ASAN: segfault in __interceptor_clock_gettime)
PR sanitizer/59063
	* lib/asan-dg.exp: Don't add anything to flags if libsanitizer
	has not been found.
	* lib/ubsan-dg.exp: Likewise.  Append to flags also
	-B${gccpath}/libsanitizer/.

From-SVN: r205639
2013-12-03 17:01:13 +01:00
Bill Schmidt 5ddaa74413 costmodel-slp-34.c: Skip for little endian.
2013-12-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c: Skip for little
	endian.

From-SVN: r205638
2013-12-03 15:54:25 +00:00
Vladimir Makarov 77436791c9 aarch64.c (aarch64_frame_pointer_required): Check LR_REGNUM.
2013-12-03  Vladimir Makarov  <vmakarov@redhat.com>

	* config/aarch64/aarch64.c (aarch64_frame_pointer_required): Check
	LR_REGNUM.
	(aarch64_can_eliminate): Don't check elimination source when
	frame_pointer_required is false.

From-SVN: r205637
2013-12-03 15:34:56 +00:00
Ian Lance Taylor e8d8443d22 runtime: Fix prototype and one use of runtime_traceback.
From Richard Biener.

From-SVN: r205634
2013-12-03 14:51:07 +00:00
Senthil Kumar Selvaraj 9af06df30b avr.c (avr_option_override): Warn if asked to generate position independent code.
* config/avr/avr.c (avr_option_override): Warn if asked to generate
        position independent code.
        * config/avr/avr.h: Modify LINK_SPEC to reject -shared.

From-SVN: r205633
2013-12-03 18:02:35 +04:00
Jonathan Wakely a566cb5e81 fstream (basic_filebuf::open): Use preformatted text for table in Doxygen comment.
* include/std/fstream (basic_filebuf::open): Use preformatted text
	for table in Doxygen comment.

From-SVN: r205631
2013-12-03 12:58:15 +00:00
H.J. Lu 3848839d3e Adjust destination address after gen_strset
gcc/

	PR target/59363
	* config/i386/i386.c (emit_memset): Adjust destination address
	after gen_strset.
	(expand_setmem_epilogue): Likewise.

gcc/testsuite/

	PR target/59363
	* gcc.target/i386/pr59363.c: New file.

From-SVN: r205630
2013-12-03 04:56:32 -08:00
Marek Polacek ddc923b52d re PR middle-end/56344 (ICE for program with very large structs returned by value)
PR middle-end/56344
	* calls.c (expand_call): Disallow passing huge arguments
	by value.

From-SVN: r205628
2013-12-03 12:11:36 +00:00
Marek Polacek da0fc4547a re PR c/59351 (ICE on empty compound literal with -pedantic)
PR c/59351
c/
	* c-decl.c (build_compound_literal): Allow compound literals with
	empty initial value.
testsuite/
	* gcc.dg/pr59351.c: New test.

From-SVN: r205627
2013-12-03 11:57:31 +00:00
Chung-Ju Wu 199f847c98 Fix some testcases for nds32 target and provide new nds32 target specific tests.
gcc/testsuite/
	* gcc.dg/20020312-2.c: Add __nds32__ case.
	* gcc.dg/builtin-apply2.c: Skip for nds32*-*-*.
	* gcc.dg/sibcall-3.c: Expected fail for nds32*-*-*.
	* gcc.dg/sibcall-4.c: Expected fail for nds32*-*-*.
	* gcc.dg/stack-usage-1.c (SIZE): Define case for __nds32__.
	* gcc.dg/torture/pr37868.c: Skip for nds32*-*-*.
	* gcc.dg/torture/stackalign/builtin-apply-2.c: Skip for nds32*-*-*.
	* gcc.dg/tree-ssa/20040204-1.c: Expected fail for nds32*-*-*.
	* gcc.dg/tree-ssa/pr42585.c: Skip for nds32*-*-*.
	* gcc.dg/tree-ssa/sra-12.c: Skip for nds32*-*-*.
	* gcc.target/nds32: New nds32 specific directory and testcases.
	* lib/target-supports.exp (check_profiling_available): Check for
	nds32*-*-elf.

From-SVN: r205625
2013-12-03 10:58:05 +00:00
Tim Shen fb5a6c6939 regex_compiler.h: Add todo comment.
2013-12-03  Tim Shen  <timshen91@gmail.com>

	* regex_compiler.h: Add todo comment.
	* regex_executor.tcc: Likewise.

From-SVN: r205624
2013-12-03 10:04:32 +00:00
Jakub Jelinek db84d11edc re PR tree-optimization/59362 (Abort in fini_object_sizes)
PR tree-optimization/59362
	* tree-object-size.c (object_sizes): Change into array of
	vec<unsigned HOST_WIDE_INT>.
	(compute_builtin_object_size): Check computed bitmap for
	non-NULL instead of object_sizes.  Call safe_grow on object_sizes
	vector if new SSA_NAMEs appeared.
	(init_object_sizes): Check computed bitmap for non-NULL.
	Call safe_grow on object_sizes elements instead of initializing
	it with XNEWVEC.
	(fini_object_sizes): Call release on object_sizes elements, don't
	set it to NULL.

	* gcc.c-torture/compile/pr59362.c: New test.

From-SVN: r205623
2013-12-03 08:48:58 +01:00
Jakub Jelinek 96ddb7ec98 re PR middle-end/59011 (ICE in make_decl_rtl, at varasm.c:1147)
PR middle-end/59011
	* gimplify.c (nonlocal_vla_vars): New variable.
	(gimplify_var_or_parm_decl): Put VAR_DECLs for VLAs into
	nonlocal_vla_vars chain.
	(gimplify_body): Call declare_vars on nonlocal_vla_vars chain
	if outer_bind has DECL_INITIAL (current_function_decl) block.

	* gcc.dg/pr59011.c: New test.

From-SVN: r205621
2013-12-03 08:44:37 +01:00
Jakub Jelinek 7f2f0a01ca re PR target/58864 (ICE in connect_traces, at dwarf2cfi.c:NNNN)
PR target/58864
	* dojump.c (save_pending_stack_adjust, restore_pending_stack_adjust):
	New functions.
	* expr.h (struct saved_pending_stack_adjust): New type.
	(save_pending_stack_adjust, restore_pending_stack_adjust): New
	prototypes.
	* optabs.c (emit_conditional_move): Call save_pending_stack_adjust
	and get_last_insn before do_pending_stack_adjust, call
	restore_pending_stack_adjust after delete_insns_since.
	* expr.c (expand_expr_real_2): Don't call do_pending_stack_adjust
	before calling emit_conditional_move.
	* expmed.c (expand_sdiv_pow2): Likewise.
	* calls.c (expand_call): Use {save,restore}_pending_stack_adjust.

	* g++.dg/opt/pr58864.C: New test.

From-SVN: r205618
2013-12-03 08:29:20 +01:00
Jeff Law 4dd0ef2765 re PR tree-optimization/59322 (ICE with segfault on valid code at -O1, -O2, and -O3 on x86_64-linux-gnu)
PR tree-optimization/59322
	* tree-ssa-threadedge.c (create_edge_and_update_destination_phis):
	Remove code which copied jump threading paths.

	PR tree-optimization/59322
	* gcc.c-torture/compile/pr59322.c: New test

From-SVN: r205617
2013-12-02 20:36:58 -07:00
Sriraman Tallam 80f1fd0dab This patch fixes PR 58944
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58944

ix86_valid_target_attribute_tree in config/i386/i386.c was
refactored to not depend on global_options structure and to be able to
use any gcc_options structure.  One clean way to fix this is by having
target_option_default_node save all the default target options which
can be restored to any gcc_options structure. The root cause of the
above bugs was that ix86_arch_string and ix86_tune_string was not
saved in target_option_deault_node.

This patch saves all the  target options used in i386.opt which are
either obtained from the command-line or set to some default.

Testing:
Patch tested for bootstrap on all default languages(also obj-c++ and ada)
on x86_64 and regression testsuite checked for parity with RUNTESTFLAGS -m32
and m64.

From-SVN: r205616
2013-12-03 03:14:09 +00:00
Joseph Myers 4c2ecab0e4 re PR c/58235 (Missing diagnostic on assignment to array in c89)
PR c/58235
c:
	* c-typeck.c (build_modify_expr): Diagnose assignment to
	expression with array type.

testsuite:
	* gcc.dg/c90-array-lval-8.c: New test.

From-SVN: r205615
2013-12-03 02:47:13 +00:00
GCC Administrator f9153cba63 Daily bump.
From-SVN: r205612
2013-12-03 00:17:01 +00:00
Joern Rennecke 04604fed8c epiphany.h: Wrap rtl_opt_pass declarations in #ifndef IN_LIBGCC2 / #endif.
* config/epiphany/epiphany.h: Wrap rtl_opt_pass declarations
        in #ifndef IN_LIBGCC2 / #endif.

From-SVN: r205609
2013-12-02 23:22:57 +00:00
Jakub Jelinek 5ef0de9b1f re PR tree-optimization/59358 (Infinite loop generated with >=O2)
PR tree-optimization/59358
	* tree-vrp.c (union_ranges): To check for the partially
	overlapping ranges or adjacent ranges, also compare *vr0max
	with vr1max.

	* gcc.c-torture/execute/pr59358.c: New test.

From-SVN: r205607
2013-12-02 23:41:23 +01:00
Jakub Jelinek 165b9e9352 re PR lto/59326 (FAIL: gcc.dg/vect/vect-simd-clone-*.c)
PR lto/59326
	* gcc.target/i386/i386.exp (check_effective_target_avx2): Move to...
	* lib/target-supports.exp (check_effective_target_avx2): ... here.
	(check_effective_target_vect_simd_clones): New.
	* gcc.dg/vect/vect-simd-clone-1.c: Add dg-require-effective-target
	vect_simd_clones.
	* gcc.dg/vect/vect-simd-clone-2.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-3.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-4.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-5.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-6.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-7.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-8.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-9.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-10.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-11.c: Likewise.
	* gcc.dg/vect/vect-simd-clone-12.c: Likewise.

From-SVN: r205606
2013-12-02 23:39:12 +01:00
Sterling Augustine 858c19053b dwarf2out.c (output_pubnames): Use comp_unit_die ()->die_offset when...
2013-12-02 Sterling Augustine  <saugustine@google.com>

        * dwarf2out.c (output_pubnames): Use comp_unit_die ()->die_offset
        when there isn't a skeleton die.

From-SVN: r205603
2013-12-02 22:10:44 +00:00
Marek Polacek cdb02ac743 re PR sanitizer/59353 (-fsanitize=return is not documented)
PR sanitizer/59353
	* doc/invoke.texi: Document -fsanitize=return.

From-SVN: r205601
2013-12-02 20:39:25 +00:00
Gerald Pfeifer 52cacf7207 update_web_docs_svn: Work around makeinfo generated file names and references with "_002d" instead...
* update_web_docs_svn: Work around makeinfo generated file names
	and references with "_002d" instead of "-".

From-SVN: r205600
2013-12-02 20:07:14 +00:00
Tobias Burnus b6cfa9eb37 re PR middle-end/59257 (usan/*san: Dpcumentation oddness of -fsanitize= / -fsanitize=shift)
2013-12-02  Tobias Burnus  <burnus@net-b.de>
            Manuel López-Ibáñez  <manu@gcc.gnu.org>

        PR middle-end/59257
        * doc/invoke.texi: Add missing @opindex.
        (-fsanitize=): Use @gcctabopt instead of @itemize.


Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>

From-SVN: r205598
2013-12-02 20:54:29 +01:00
Bernd Edlinger 2399cad090 Fix C++0x memory model for unaligned fields in packed...
2013-12-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix C++0x memory model for unaligned fields in packed, aligned(4)
        structures with -fno-strict-volatile-bitfields on STRICT_ALIGNMENT
        targets like arm-none-eabi.
        * expr.c (expand_assignment): Handle normal fields like bit regions.

testsuite:
2013-12-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.dg/pr56997-4.c: New testcase.

From-SVN: r205597
2013-12-02 19:50:55 +00:00
Bernd Edlinger 72ee07fb76 re PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)
2013-11-03  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR target/58115
        * function.c (invoke_set_current_function_hook): Call
        targetm.set_current_function after setting this_fn_optabs.

From-SVN: r205593
2013-12-02 18:00:47 +00:00
Marek Polacek 76004bbc2d vla-1.c: Split the tests into individual functions.
2013-12-02  Marek Polacek  <polacek@redhat.com>

testsuite/
	* c-c++-common/ubsan/vla-1.c: Split the tests into individual
	functions.

From-SVN: r205590
2013-12-02 16:08:47 +00:00
Richard Biener 100f09a564 re PR tree-optimization/59139 (internal compiler error: in get_val_for, at tree-ssa-loop-niter.c:2267)
2013-12-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/59139
	* tree-ssa-loop-niter.c (chain_of_csts_start): Properly match
	code in get_val_for.
	(get_val_for): Use gcc_checking_asserts.

	* gcc.dg/torture/pr59139.c: New testcase.

From-SVN: r205588
2013-12-02 15:43:01 +00:00
Richard Biener 75fcf2876f tree-ssa-operands.c (opf_implicit): Remove.
2013-12-02  Richard Biener  <rguenther@suse.de>

	* tree-ssa-operands.c (opf_implicit): Remove.
	(opf_address_taken): New flag.
	(get_expr_operands): Remove early out, pass down
	opf_address_taken for ADDR_EXPRs, add a use operand only
	for non-opf_address_taken bases.
	(get_indirect_ref_operands): Rename to ...
	(get_mem_ref_operands): ... this.
	(get_asm_expr_operands): Rename to ...
	(get_asm_stmt_operands): ... this.

From-SVN: r205587
2013-12-02 15:13:52 +00:00
Yuri Rumyantsev 1656a81424 Add missed pointer de-reference
2013-12-02  Yuri Rumyantsev  <ysrumyan@gmail.com>

	* ipa-inline.c (check_callers): Add missed pointer de-reference.

From-SVN: r205586
2013-12-02 06:39:28 -08:00
Eric Botcazou 139bd704f1 re PR tree-optimization/59356 (ACATS C52102A and C52102C failures)
PR tree-optimization/59356
	* tree-dfa.h (get_addr_base_and_unit_offset_1) <case ARRAY_REF>: Do the
	offset computation using the precision of the index type.

From-SVN: r205585
2013-12-02 11:20:14 +00:00
Yvan Roux 95044b50b0 ChangeLog: Fix ChangeLog entry.
* gcc/ChangeLog: Fix ChangeLog entry.

From-SVN: r205582
2013-12-02 07:54:53 +00:00
Yvan Roux 54227be563 arm.c (arm_preferred_reload_class): Only return LO_REGS when rclass is GENERAL_REGS.
2013-12-02  Yvan Roux  <yvan.roux@linaro.org>

        * config/arm/arm.c (arm_preferred_reload_class): Only return LO_REGS
        when rclass is GENERAL_REGS.

From-SVN: r205581
2013-12-02 07:44:34 +00:00
Ganesh Gopalasubramanian df0f339235 Check TARGET_LOOP_UNROLL_ADJUST while deciding unroll factor
From-SVN: r205580
2013-12-02 07:27:14 +00:00
GCC Administrator 62ca1b143c Daily bump.
From-SVN: r205578
2013-12-02 00:17:06 +00:00
Uros Bizjak 3d41d9d98c re PR libfortran/59313 (gfortran.dg/erf_3.F90 FAILs on Solaris/SPARC)
PR libfortran/59313
	* intrinsics/erfc_scaled.c (erfc_scaled_r16): Also provide for
	quadruple precision long double variant.

From-SVN: r205574
2013-12-01 21:56:21 +01:00
Eric Botcazou 06623961c7 winnt.c (i386_pe_asm_named_section): Be prepared for an identifier node.
* config/i386/winnt.c (i386_pe_asm_named_section): Be prepared for an
	identifier node.

From-SVN: r205568
2013-12-01 12:20:58 +00:00
Paul Thomas 343ab49260 re PR fortran/57354 (Wrong run-time assignment of allocatable array of derived type with allocatable component)
2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/57354
	* trans-array.c (gfc_conv_resolve_dependencies): For other than
	SS_SECTION, do a dependency check if the lhs is liable to be
	reallocated.

2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/57354
	* gfortran.dg/realloc_on_assign_23.f90 : New test

From-SVN: r205567
2013-12-01 11:50:20 +00:00
Paul Thomas d700518bbd re PR fortran/58410 (Bogus uninitialized variable warning for allocatable derived type array function result)
2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/58410
	* trans-array.c (gfc_alloc_allocatable_for_assignment): Do not
	use the array bounds of an unallocated array but set its size
	to zero instead.

From-SVN: r205566
2013-12-01 11:42:25 +00:00
Paul Thomas 49560f0c74 Index...
Index: gcc/fortran/resolve.c
===================================================================
*** gcc/fortran/resolve.c	(revision 205031)
--- gcc/fortran/resolve.c	(working copy)
*************** resolve_transfer (gfc_code *code)
*** 8247,8256 ****
  	 && exp->value.op.op == INTRINSIC_PARENTHESES)
      exp = exp->value.op.op1;
  
!   if (exp && exp->expr_type == EXPR_NULL && exp->ts.type == BT_UNKNOWN)
      {
!       gfc_error ("NULL intrinsic at %L in data transfer statement requires "
! 		 "MOLD=", &exp->where);
        return;
      }
  
--- 8247,8257 ----
  	 && exp->value.op.op == INTRINSIC_PARENTHESES)
      exp = exp->value.op.op1;
  
!   if (exp && exp->expr_type == EXPR_NULL
!       && code->ext.dt)
      {
!       gfc_error ("Invalid context for NULL () intrinsic at %L",
! 		 &exp->where);
        return;
      }
  
Index: gcc/testsuite/gfortran.dg/null_5.f90
===================================================================
*** gcc/testsuite/gfortran.dg/null_5.f90	(revision 205031)
--- gcc/testsuite/gfortran.dg/null_5.f90	(working copy)
*************** subroutine test_PR34547_1 ()
*** 34,40 ****
  end subroutine test_PR34547_1
  
  subroutine test_PR34547_2 ()
!   print *, null () ! { dg-error "in data transfer statement requires MOLD" }
  end subroutine test_PR34547_2
  
  subroutine test_PR34547_3 ()
--- 34,40 ----
  end subroutine test_PR34547_1
  
  subroutine test_PR34547_2 ()
!   print *, null () ! { dg-error "Invalid context" }
  end subroutine test_PR34547_2
  
  subroutine test_PR34547_3 ()
Index: gcc/testsuite/gfortran.dg/null_6.f90
===================================================================
*** gcc/testsuite/gfortran.dg/null_6.f90	(revision 205031)
--- gcc/testsuite/gfortran.dg/null_6.f90	(working copy)
*************** end subroutine test_PR50375_2
*** 30,34 ****
  
  subroutine test_PR34547_3 ()
    integer, allocatable :: i(:)
!   print *, NULL(i)
  end subroutine test_PR34547_3
--- 30,34 ----
  
  subroutine test_PR34547_3 ()
    integer, allocatable :: i(:)
!   print *, NULL(i)    ! { dg-error "Invalid context for NULL" }
  end subroutine test_PR34547_3

From-SVN: r205565
2013-12-01 11:37:09 +00:00
Bernd Edlinger c931d01d7d expr.c (emit_group_store): Corrected BITFIELD_END parameter.
2013-12-01  Bernd Edlinger <bernd.edlinger@hotmail.de>

        * expr.c (emit_group_store): Corrected BITFIELD_END parameter.

From-SVN: r205563
2013-12-01 09:08:04 +00:00
Ian Lance Taylor 2583109c81 libgo: Avoid some cases of getting callers recursively.
Avoids hanging inside older versions of glibc that do not
support recurive calls to dl_iterate_phdr.

From-SVN: r205561
2013-12-01 01:40:16 +00:00
GCC Administrator 2d7930e5e3 Daily bump.
From-SVN: r205560
2013-12-01 00:17:11 +00:00
Ian Lance Taylor df5d92ce0e reflect: Rename struct field to be consistent in assembler and Go.
From-SVN: r205555
2013-11-30 18:08:42 +00:00
Ian Lance Taylor 9c6230e90e reflect: Fix MakeFunc for 386 when returning a struct.
When a 386 function returns a struct, it needs to return using
an rtd instruction that pops the hidden struct parameter off
the stack.  That wasn't happening.

From-SVN: r205551
2013-11-30 17:14:50 +00:00
Paulo Matos 67aca9dfae combine.c (reg_nonzero_bits_for_combine): Apply mask transformation as applied to nonzero_sign_valid when...
* combine.c (reg_nonzero_bits_for_combine): Apply mask transformation
	as applied to nonzero_sign_valid when last_set_mode has less precision
	than mode.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r205550
2013-11-30 11:13:07 +00:00
Tobias Burnus 483b0aa49b re PR sanitizer/59275 (Document environment variables used by the sanitizers)
2013-11-30  Tobias Burnus  <burnus@net-b.de>

        PR sanitizer/59275
        * doc/invoke.texi (-fsanitize=address,leak): Mention the
        * associated
        environment variable and link to a list with flags.
        (-fsanitize=thread): Ditto and update link.

From-SVN: r205548
2013-11-30 10:11:13 +01:00