Commit Graph

127067 Commits

Author SHA1 Message Date
Richard Biener
649d196dbd re PR tree-optimization/59374 (-ftree-slp-vectorize breaks unique_ptr's move constructor)
2013-12-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/59374
	* tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependence):
	Commonize known and unknown dependence case fixing the allowed
	read-write dependence case and dropping code that should not
	matter.

	* gcc.dg/torture/pr59374-1.c: New testcase.
	* gcc.dg/torture/pr59374-2.c: Likewise.

From-SVN: r205694
2013-12-05 09:12:29 +00:00
Kirill Yukhin
9eb8c09fda ia64.md (prologue_allocate_stack): Block auto- generation of predicated version.
ChangeLog/

        * config/ia64/ia64.md (prologue_allocate_stack): Block auto-
        generation of predicated version.
        (epilogue_deallocate_stack): Ditto.
        (prologue_allocate_stack_pr): Add explicit predicated version.
        (epilogue_deallocate_stack_pr): Ditto.
        * config/ia64/ia64.c (ia64_single_set): Use explicit versions.

testsuite/ChangeLog/

        * gcc.target/ia64/pr52731.c: New.

From-SVN: r205692
2013-12-05 07:54:43 +00:00
Alan Modra
c012dc48c0 * configure.ac (BUILD_CXXFLAGS) Don't use ALL_CXXFLAGS for
build != host.
	<recursive call for build != host>: Clear GMPINC.  Don't bother
	saving CFLAGS.

From-SVN: r205690
2013-12-05 17:41:17 +10:30
Jeff Law
ae93744d3b common.opt: Split up -fisolate-erroneous-paths into -fisolate-erroneous-paths-dereference...
* common.opt: Split up -fisolate-erroneous-paths into
	-fisolate-erroneous-paths-dereference and
	-fisolate-erroneous-paths-attribute.
	* invoke.texi: Corresponding changes.
	* gimple.c (infer_nonnull_range):  Add and use new arguments
	to control what kind of statements can be used to infer a
	non-null range.
	* gimple.h (infer_nonnull_range): Update prototype.
	* tree-vrp.c (infer_value_range): Corresponding changes.
	* opts.c (default_options_table): Update due to option split.
	* gimple-ssa-isolate-paths.c: Fix trailing whitespace.
	(find_implicit_erroneous_behaviour): Pass additional arguments
	to infer_nonnull_range.
	(find_explicit_erroneous_behaviour): Similarly.
	(gate_isolate_erroneous_paths): Check both of the new
	options.

testsuite/

	* gcc.dg/pr38984.c: Use -fno-isolate-erroneous-paths-dereference.
	* gcc.dg/tree-ssa/isolate-2.c: Explicitly turn on
	-fisolate-erroneous-paths-attribute.
	* gcc.dg/tree-ssa/isolate-4.c: Likewise.

From-SVN: r205689
2013-12-04 20:18:18 -07:00
GCC Administrator
97d7fffaaf Daily bump.
From-SVN: r205688
2013-12-05 00:17:06 +00:00
Joseph Myers
296674dbc9 re PR c/52023 ([C11] _Alignof (double) yields wrong value on x86)
PR c/52023
c-family:
	* c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof
	and check field alignment if set.
	* c-common.h (c_sizeof_or_alignof_type): Update prototype.
	(c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type.

c:
	* c-parser.c (c_parser_alignas_specifier): Use
	c_sizeof_or_alignof_type instead of c_alignof.
	(c_parser_alignof_expression): Likewise, with min_alignof
	parameter depending on alignof spelling used.

cp:
	* typeck.c (cxx_sizeof_or_alignof_type): Update call to
	c_sizeof_or_alignof_type.

objc:
	* objc-act.c (objc_synthesize_getter): Update calls to
	c_sizeof_or_alignof_type.

testsuite:
	* gcc.dg/c11-align-6.c: New test.

From-SVN: r205685
2013-12-04 22:57:20 +00:00
Marek Polacek
31e071aeb8 Implement -fsanitize=signed-integer-overflow.
From-SVN: r205684
2013-12-04 22:47:11 +00:00
Jeff Law
59b6687cce * expr.c (expand_assignment): Update comments.
From-SVN: r205683
2013-12-04 14:57:52 -07:00
Eric Botcazou
ff6c0ead2a re PR ada/59382 (gnatmake is not able to compile libraries)
PR ada/59382
gnattools/
	* configure.ac (target parameterization): Rewrite.
	* configure: Regenerate.
gcc/ada/
	* indepsw-darwin.adb: New file.

From-SVN: r205681
2013-12-04 21:25:11 +00:00
Marek Polacek
edd280545f re PR c/54113 (-Wmissing-prototypes produces false alarms for C99 inline functions)
PR c/54113
c/
	* c-decl.c (start_function): Don't warn for missing prototype for
	inline functions.
testsuite/
	* gcc.dg/pr54113.c: New test.

From-SVN: r205680
2013-12-04 21:15:31 +00:00
Tobias Burnus
5f673c6a1c re PR debug/37132 (Debug: No DW_TAG_namelist emitted for NAMELISTS)
gcc/
2013-12-04  Tobias Burnus  <burnus@net-b.de>

        PR debug/37132
        * lto-streamer.h (LTO_tags): Add LTO_namelist_decl_ref.
        * tree.def (NAMELIST_DECL): Add.
        * tree.h (NAMELIST_DECL_ASSOCIATED_DECL): New macro.
        * tree.c (initialize_tree_contains_struct): Add asserts for it.
        * dwarf2out.c (gen_namelist_decl): New function.
        (gen_decl_die, dwarf2out_decl): Call it.
        (dwarf2out_imported_module_or_decl_1): Handle NAMELIST_DECL.
        * lto-streamer-in.c (lto_input_tree_ref): Handle NAMELIST_DECL.
        (lto_input_tree_ref, lto_input_tree_1): Update lto_tag_check_range
        call.
        * lto-streamer-out.c (lto_output_tree_ref): Handle
        * NAMELIST_DECL.

gcc/fortran
2013-12-04  Tobias Burnus  <burnus@net-b.de>

        PR debug/37132
        * trans-decl.c (generate_namelist_decl, create_module_nml_decl):
        New static functions.
        (gfc_generate_module_vars, generate_local_vars): Call them.
        (gfc_trans_use_stmts): Handle namelists for debug genertion.

From-SVN: r205679
2013-12-04 20:59:42 +01:00
Xinliang David Li
4f6843aa8c Update changed bit when constraint set changes
From-SVN: r205677
2013-12-04 19:46:36 +00:00
Uros Bizjak
d80608d034 * ChangeLog: Fix whitespace.
From-SVN: r205676
2013-12-04 20:33:55 +01:00
Jakub Jelinek
565839ae12 re PR c++/59268 ([c++11] ICE with constexpr in a virtual function)
PR c++/59268
	* pt.c (tsubst_copy_and_build): Handle POINTER_PLUS_EXPR.

	* g++.dg/cpp0x/constexpr-template6.C: New test.

From-SVN: r205674
2013-12-04 19:00:28 +01:00
H.J. Lu
3bd7b086fd Put a breakpoint on __asan_report_error for ASAN
* configure.ac: Append gdbasan.in to .gdbinit if CFLAGS contains
	-fsanitize=address.
	* configure: Regenerated.

	* gdbasan.in: New file.

From-SVN: r205669
2013-12-04 06:53:36 -08:00
Kugan Vivekanandarajah
ecd78fc9ab bpapi-lib.h (TARGET_HAS_NO_HW_DIVIDE): Define for architectures that do not have hardware divide instruction.
2013-12-04  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* config/arm/bpapi-lib.h (TARGET_HAS_NO_HW_DIVIDE): Define for
	architectures that do not have hardware divide instruction.
	i.e. architectures that do not define __ARM_ARCH_EXT_IDIV__.

From-SVN: r205666
2013-12-04 12:34:39 +01:00
Eric Botcazou
6bc8df2439 decl.c (components_to_record): Add specific handling for fields with zero size and no representation clause.
* gcc-interface/decl.c (components_to_record): Add specific handling
	for fields with zero size and no representation clause.

From-SVN: r205665
2013-12-04 11:27:25 +00:00
Jakub Jelinek
5bf51f2f73 re PR rtl-optimization/58726 (wrong code at -Os on x86_64-linux-gnu (affecting trunk/4.7/4.6, but not 4.8))
PR rtl-optimization/58726
	* combine.c (force_to_mode): Fix comment typo.  Don't destructively
	modify x for ROTATE, ROTATERT and IF_THEN_ELSE.

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

From-SVN: r205664
2013-12-04 12:25:06 +01:00
Jakub Jelinek
77381ee7de re PR target/59163 (program compiled with g++ -O3 segfaults)
PR target/59163
	* config/i386/i386.c (ix86_legitimate_combined_insn): If for
	!TARGET_AVX there is misaligned MEM operand with vector mode
	and get_attr_ssememalign is 0, return false.
	(ix86_expand_special_args_builtin): Add get_pointer_alignment
	computed alignment and for non-temporal loads/stores also
	at least GET_MODE_ALIGNMENT as MEM_ALIGN.
	* config/i386/sse.md
	(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
	<sse>_storeu<ssemodesuffix><avxsizesuffix>,
	<sse2_avx_avx512f>_loaddqu<mode><mask_name>,
	<sse2_avx_avx512f>_storedqu<mode>, <sse3>_lddqu<avxsizesuffix>,
	sse_vmrcpv4sf2, sse_vmrsqrtv4sf2, sse2_cvtdq2pd, sse_movhlps,
	sse_movlhps, sse_storehps, sse_loadhps, sse_loadlps,
	*vec_interleave_highv2df, *vec_interleave_lowv2df,
	*vec_extractv2df_1_sse, sse2_movsd, sse4_1_<code>v8qiv8hi2,
	sse4_1_<code>v4qiv4si2, sse4_1_<code>v4hiv4si2,
	sse4_1_<code>v2qiv2di2, sse4_1_<code>v2hiv2di2,
	sse4_1_<code>v2siv2di2, sse4_2_pcmpestr, *sse4_2_pcmpestr_unaligned,
	sse4_2_pcmpestri, sse4_2_pcmpestrm, sse4_2_pcmpestr_cconly,
	sse4_2_pcmpistr, *sse4_2_pcmpistr_unaligned, sse4_2_pcmpistri,
	sse4_2_pcmpistrm, sse4_2_pcmpistr_cconly): Add ssememalign attribute.
	* config/i386/i386.md (ssememalign): New define_attr.

	* g++.dg/torture/pr59163.C: New test.

From-SVN: r205663
2013-12-04 12:12:04 +01:00
Eric Botcazou
a1d7a124b9 trans.c (Case_Statement_to_gnu): Do not push a binding level for each branch if...
* gcc-interface/trans.c (Case_Statement_to_gnu): Do not push a binding
	level for each branch if this is a case expression in Ada 2012.
	(gnat_to_gnu) <case N_Expression_With_Actions>: Adjust comment.

From-SVN: r205662
2013-12-04 11:11:56 +00:00
Jakub Jelinek
f220a4f4e5 re PR target/59163 (program compiled with g++ -O3 segfaults)
PR target/59163
	* config/i386/i386.c (ix86_legitimate_combined_insn): If for
	!TARGET_AVX there is misaligned MEM operand with vector mode
	and get_attr_ssememalign is 0, return false.
	(ix86_expand_special_args_builtin): Add get_pointer_alignment
	computed alignment and for non-temporal loads/stores also
	at least GET_MODE_ALIGNMENT as MEM_ALIGN.
	* config/i386/sse.md
	(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
	<sse>_storeu<ssemodesuffix><avxsizesuffix>,
	<sse2_avx_avx512f>_loaddqu<mode><mask_name>,
	<sse2_avx_avx512f>_storedqu<mode>, <sse3>_lddqu<avxsizesuffix>,
	sse_vmrcpv4sf2, sse_vmrsqrtv4sf2, sse2_cvtdq2pd, sse_movhlps,
	sse_movlhps, sse_storehps, sse_loadhps, sse_loadlps,
	*vec_interleave_highv2df, *vec_interleave_lowv2df,
	*vec_extractv2df_1_sse, sse2_movsd, sse4_1_<code>v8qiv8hi2,
	sse4_1_<code>v4qiv4si2, sse4_1_<code>v4hiv4si2,
	sse4_1_<code>v2qiv2di2, sse4_1_<code>v2hiv2di2,
	sse4_1_<code>v2siv2di2, sse4_2_pcmpestr, *sse4_2_pcmpestr_unaligned,
	sse4_2_pcmpestri, sse4_2_pcmpestrm, sse4_2_pcmpestr_cconly,
	sse4_2_pcmpistr, *sse4_2_pcmpistr_unaligned, sse4_2_pcmpistri,
	sse4_2_pcmpistrm, sse4_2_pcmpistr_cconly): Add ssememalign attribute.
	* config/i386/i386.md (ssememalign): New define_attr.

	* g++.dg/torture/pr59163.C: New test.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>

From-SVN: r205661
2013-12-04 12:11:24 +01:00
Richard Sandiford
b21fbbd29c longlong.h: New file.
include/
	* 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.

From-SVN: r205659
2013-12-04 10:49:14 +00:00
Jakub Jelinek
a88bf70553 re PR tree-optimization/59355 (ICE: SIGSEGV in hash_table::find_slot_with_hash() with -fno-devirtualize)
PR tree-optimization/59355
	* ipa-devirt.c (gate_ipa_devirt): Return false if
	!flag_devirtualize.
	* opts.c (common_handle_option): Fix comment spelling.

	* g++.dg/ipa/pr59355.C: New test.

From-SVN: r205656
2013-12-04 09:44:25 +01:00
Yufeng Zhang
96d75a2c8c gimple-ssa-strength-reduction.c: Include tree-affine.h.
gcc/

	* gimple-ssa-strength-reduction.c: Include tree-affine.h.
	(name_expansions): New static variable.
	(alt_base_map): Ditto.
	(get_alternative_base): New function.
	(find_basis_for_candidate): For CAND_REF, optionally call
	find_basis_for_base_expr with the returned value from
	get_alternative_base.
	(record_potential_basis): Add new parameter 'base' of type 'tree';
	add an assertion of non-NULL base; use base to set node->base_expr.
	(alloc_cand_and_find_basis): Update; call record_potential_basis
	for CAND_REF with the returned value from get_alternative_base.
	(replace_refs): Dump details on the replacing.
	(execute_strength_reduction): Call pointer_map_create for
	alt_base_map; call free_affine_expand_cache with &name_expansions.

gcc/testsuite/

	* gcc.dg/tree-ssa/slsr-39.c: Update.
	* gcc.dg/tree-ssa/slsr-41.c: New test.

From-SVN: r205655
2013-12-04 08:06:16 +00:00
Ian Lance Taylor
50312b2ff0 runtime: Use pthread_sigmask instead of sigprocmask.
From-SVN: r205652
2013-12-04 01:35:53 +00:00
GCC Administrator
4924840463 Daily bump.
From-SVN: r205651
2013-12-04 00:17:15 +00:00
Bill Schmidt
6f52009cba Add self as SLSR maintainer.
From-SVN: r205646
2013-12-03 19:58:59 +00:00
Adhemerval Zanella
b03fb8c996 ibm-ldouble.c (__gcc_qadd): Fix add of normal number and qNaN to not raise an inexact exception.
libgcc/ChangeLog:

2013-12-03  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>

	* config/rs6000/ibm-ldouble.c (__gcc_qadd): Fix add
	of normal number and qNaN to not raise an inexact exception.

gcc/testsuite/ChangeLog:

2013-12-03  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>

	* gcc.target/powerpc/pr57363.c: New test.

From-SVN: r205645
2013-12-03 18:57:37 +00:00
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