Commit Graph

129979 Commits

Author SHA1 Message Date
Bernd Schmidt
4120328793 Improve reload code generation by ignoring init insns for reloads.
* reload1.c (remove_init_insns, will_delete_init_insn_p): New static
    	functions.
    	(reload, calculate_needs_all_insns, reload_as_needed): Use them.

From-SVN: r210685
2014-05-21 09:29:34 +00:00
Bernd Schmidt
0836b77f3d Make the Blackfin port build again.
* config/bfin/bfin.c (split_load_immediate): Use gen_int_mode in a few
	more places.

From-SVN: r210684
2014-05-21 09:29:25 +00:00
Bernd Schmidt
8a9e6b45ba Stop the cfglayout code from failing an assert when called from hw-doloop.
* cfgrtl.c (cfg_layout_initialize): Weaken assert to only trigger if
	flag_reorder_blocks_and_partition.
	* hw-doloop.c (reorg_loops): Avoid reordering if that flag is set.

From-SVN: r210683
2014-05-21 09:22:26 +00:00
Oleg Endo
c4e5de1b1a re PR target/54236 ([SH] Improve addc and subc insn utilization)
gcc/
        PR target/54236
        * config/sh/sh.md (*addc_r_1): Rename to addc_t_r.  Remove empty
        constraints.
        (*addc_r_t): Add new insn_and_split.

gcc/testsuite/
        PR target/54236
        * gcc.target/sh/pr54236-3.c: New.

From-SVN: r210682
2014-05-21 08:06:06 +00:00
Jakub Jelinek
decaaec811 re PR middle-end/61252 (Invalid code produced for omp simd reduction(min:var) where var is reference)
PR middle-end/61252
	* omp-low.c (handle_simd_reference): New function.
	(lower_rec_input_clauses): Use it.  Defer adding reference
	initialization even for reduction without placeholder if in simd,
	handle it properly later on.

	* testsuite/libgomp.c++/simd-9.C: New test.

From-SVN: r210679
2014-05-21 10:04:03 +02:00
Igor Zamyatin
c3d96270fc re PR c++/60189 (ICE with invalid use of _Cilk_sync)
gcc/cp
	PR c/60189
	* parser.c (cp_parser_postfix_expression): Move handling of cilk_sync
	from here to...
	(cp_parser_statement): ...here. Make sure only semicolon can go after
	Cilk_sync.

gcc/testsuite
	PR c++/60189
	* c-c++-common/cilk-plus/CK/invalid_sync.cÑ: New test.

From-SVN: r210678
2014-05-21 08:03:06 +00:00
Jan Hubicka
3aaf05290a re PR tree-optimization/60899 (undef reference generated with -fdevirtualize-speculatively)
PR tree-optimization/60899
	* gimple-fold.c (can_refer_decl_in_current_unit_p): Cleanup;
	assume all static symbols will have definition wile parsing and
	check the do have definition later in compilation; check that
	variable referring symbol will be output before concluding that
	reference is safe; be conservative for referring local statics;
	be more precise about when comdat is output in other partition.

	g++.dg/ipa/devirt-11.C: Update template.

From-SVN: r210676
2014-05-21 06:16:03 +00:00
Jan Hubicka
1bbb87c4b2 re PR bootstrap/60984 (AIX: gcc-4.9.0 bootstrap fails in stage-2)
PR bootstrap/60984
	* ipa-inline-transform.c (inline_call): Use add CALLEE_REMOVED parameter.
	* ipa-inline.c (inline_to_all_callers): If callee was removed; return.
	(ipa_inline): Loop inline_to_all_callers until no more aliases are removed.

From-SVN: r210674
2014-05-21 05:41:46 +00:00
Jan Hubicka
d5ce4663f3 ipa.c (ipa_discover_readonly_nonaddressable_var): Fix dumping; set writeonly flag only for vars actually written to.
* ipa.c (ipa_discover_readonly_nonaddressable_var): Fix dumping;
	set writeonly flag only for vars actually written to.

From-SVN: r210672
2014-05-21 02:46:27 +00:00
Maciej W. Rozycki
1ec380e5f5 re PR libgcc/60166 (ARM default NAN encoding violates EABI)
PR libgcc/60166
	* config/arm/sfp-machine.h (_FP_NANFRAC_H, _FP_NANFRAC_S)
	(_FP_NANFRAC_D, _FP_NANSIGN_Q): Set the quiet bit.

From-SVN: r210668
2014-05-21 01:24:05 +00:00
Edward Smith-Rowland
49039169f3 re PR c++/61038 (g++ -E is unusable with UDL strings)
gcc/testsuite/

2014-05-20  Edward Smith-Rowland  <3dw4rd@verizon.net>

	PR C++/61038
	* g++.dg/cpp0x/pr61038.C: New.

libcpp/

2014-05-20  Edward Smith-Rowland  <3dw4rd@verizon.net>

	PR C++/61038
	* macro.c (stringify_arg (cpp_reader *, macro_arg *)):
	Check for user-defined literal strings and user-defined literal chars
	to escape necessary characters.

From-SVN: r210666
2014-05-21 00:35:29 +00:00
GCC Administrator
956dd0932c Daily bump.
From-SVN: r210665
2014-05-21 00:17:07 +00:00
Dehao Chen
983398517e ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count and callee count to get clone count.
2014-05-20  Dehao Chen  <dehao@google.com>

	* ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count
	and callee count to get clone count.
	* tree-inline.c (expand_call_inline): Use callee count instead of bb
	count in copy_body.

From-SVN: r210660
2014-05-20 22:25:06 +00:00
Cesar Philippidis
6ed9c90a5d testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since libstdc++.exp imports those flags via getenv.
2014-05-20  Cesar Philippidis  <cesar@codesourcery.com>

	libstdc++-v3/
	* scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since 
	libstdc++.exp imports those flags via getenv.
	* testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that 
	CXXFLAGS contains a '-O' flag.

From-SVN: r210659
2014-05-20 17:31:30 -04:00
Richard Sandiford
ec27069c86 re PR middle-end/61243 (verify_flow_info failed: No region crossing jump at section boundary in bb 65)
gcc/
	PR rtl-optimization/61243
	* emit-rtl.c (emit_copy_of_insn_after): Copy CROSSING_JUMP_P.

From-SVN: r210658
2014-05-20 21:24:37 +00:00
Xinliang David Li
2b5f089527 add dbgcnt support for devirt
From-SVN: r210657
2014-05-20 20:12:22 +00:00
DJ Delorie
9c5f620306 msp430.md (split): Don't allow subregs when splitting SImode adds.
* config/msp430/msp430.md (split): Don't allow subregs when
splitting SImode adds.
(andneghi): Fix subtraction logic.
* config/msp430/predicates.md (msp430_nonsubreg_or_imm_operand): New.

From-SVN: r210655
2014-05-20 15:59:45 -04:00
Jan Hubicka
cf288ed3b8 tree.h (DECL_ONE_ONLY): Return true only for externally visible symbols.
* tree.h (DECL_ONE_ONLY): Return true only for externally visible
	symbols.
	* except.c (switch_to_exception_section, resolve_unique_section,
	get_named_text_section, default_function_rodata_section, 
	align_variable, get_block_for_decl, default_section_type_flags):
	Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
	* symtab.c (symtab_add_to_same_comdat_group,
	symtab_make_decl_local, fixup_same_cpp_alias_visibility,
	symtab_nonoverwritable_alias, symtab_get_symbol_partitioning_class):
	Likewise.
	* cgraphclones.c (cgraph_create_virtual_clone): Likewise.
	* bb-reorder.c (pass_partition_blocks::gate): Likewise.
	* config/c6x/c6x.c (c6x_elf_unique_section): Likewise.
	(c6x_function_in_section_p): Likewise.
	* config/darwin.c (machopic_select_section): Likewise.
	* config/arm/arm.c (arm_function_in_section_p): Likewise.
	* config/mips/mips.c (mips_function_rodata_section): Likewise.
	* config/mep/mep.c (mep_select_section): LIkewise.
	* config/i386/i386.c (x86_64_elf_unique_section): Likewise.

From-SVN: r210654
2014-05-20 19:57:45 +00:00
Paolo Carlini
f4cd9c518b re PR c++/58753 (Brace-initializing a vector with a direct-initialization NSDMI doesn't work in a template)
/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58753
	PR c++/58930
	PR c++/58704
	* typeck2.c (digest_nsdmi_init): New.
	* parser.c (cp_parser_late_parse_one_default_arg): Use it.
	* init.c (get_nsdmi): Likewise.
	* cp-tree.h (digest_nsdmi_init): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58753
	PR c++/58930
	PR c++/58704
	* g++.dg/cpp0x/nsdmi-template11.C: New.
	* g++.dg/cpp0x/nsdmi-template12.C: Likewise.
	* g++.dg/cpp0x/nsdmi-template13.C: Likewise.

From-SVN: r210653
2014-05-20 19:20:59 +00:00
Jason Merrill
f98732327c typeck.c (get_member_function_from_ptrfunc): Don't try to look up a virtual function in a dummy object.
* typeck.c (get_member_function_from_ptrfunc): Don't try to look
	up a virtual function in a dummy object.

From-SVN: r210651
2014-05-20 13:37:57 -04:00
Alexey Merzlyakov
a852a67c02 re PR target/61223 (libstdc++ build fail due to pop lr register)
2014-05-20  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

	PR libstdc++/61223
	Revert:
	2014-05-16  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

	PR libstdc++/60758
	* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
	and add unwind directives.

From-SVN: r210650
2014-05-20 17:25:26 +00:00
Eric Botcazou
7eab31edf2 tree-ssa-dom.c (hashable_expr_equal_p): Also compare the EH region of calls to pure functions that can throw an exception.
* tree-ssa-dom.c (hashable_expr_equal_p) <EXPR_CALL>: Also compare the
	EH region of calls to pure functions that can throw an exception.
	* tree-ssa-sccvn.c (vn_reference_eq): Remove duplicated test.
	(copy_reference_ops_from_call): Also copy the EH region of the call if
	it can throw an exception.

From-SVN: r210649
2014-05-20 17:01:35 +00:00
Nick Clifton
467fc67c47 msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
* config/msp430/msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
	(msp430_gimplify_va_arg_expr): New function.
	(msp430_print_operand): Handle (CONST (ZERO_EXTRACT)).

From-SVN: r210648
2014-05-20 16:51:58 +00:00
Paolo Carlini
512eacee8f re PR c++/60373 (half warning: visibility attribute ignored because it)
/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60373
	* decl.c (duplicate_decls): Replace pair of warning_at with
	warning_at + inform.
	(maybe_commonize_var): Likewise.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60373
	* g++.dg/cpp0x/Wattributes1.C: New.
	* g++.dg/ext/visibility/redecl1.C: Adjust.
	* g++.dg/ext/visibility/visibility-7.C: Likewise.

From-SVN: r210646
2014-05-20 15:16:48 +00:00
Richard Sandiford
efa72acd62 re PR bootstrap/61210 (bootstrap failure with clang)
gcc/cp/
	PR bootstrap/61210
	* pt.c (tsubst_copy, tsubst_omp_for_iterator, tsubst_expr)
	(tsubst_copy_and_build): Perform recursive substitutions in a
	deterministic order.

From-SVN: r210645
2014-05-20 14:18:44 +00:00
Bill Schmidt
ec217bd88a simplify-rtx.c (simplify_binary_operation_1): Optimize case of nested VEC_SELECTs that are inverses of each other.
[gcc]

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* simplify-rtx.c (simplify_binary_operation_1): Optimize case of
	nested VEC_SELECTs that are inverses of each other.

[gcc/testsuite]

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

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

From-SVN: r210644
2014-05-20 14:14:21 +00:00
Richard Biener
b2b222b311 tree-ssa-sccvn.c (process_scc): Dump SCC here, when iterating,
2014-05-20  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.c (process_scc): Dump SCC here, when
	iterating,
	(extract_and_process_scc_for_name): not here.
	(cond_dom_walker::before_dom_children): Only process
	stmts that end the BB in interesting ways.
	(run_scc_vn): Mark param uses as visited.

From-SVN: r210643
2014-05-20 13:54:06 +00:00
Paolo Carlini
bdb5a9a30c re PR c++/58664 ([c++11] ICE initializing array of incomplete type within union)
/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58664
	* typeck2.c (cxx_incomplete_type_inform): New.
	(cxx_incomplete_type_diagnostic): Use it.
	* decl.c (grokdeclarator): Check the element type of an
	incomplete array type; call the above.
	* cp-tree.h (cxx_incomplete_type_inform): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58664
	* g++.dg/cpp0x/nsdmi-union6.C: New.
	* g++.dg/parse/pr58664.C: Likewise.
	* g++.dg/cpp0x/nsdmi6.C: Tweak.
	* g++.dg/parse/crash31.C: Likewise.
	* g++.dg/template/error2.C: Likewise.
	* g++.dg/template/inherit8.C: Likewise.
	* g++.dg/template/offsetof2.C: Likewise.

From-SVN: r210642
2014-05-20 13:30:40 +00:00
Kyrylo Tkachov
e9ea518525 [ARM] Adjust arith_shiftsi for -mrestrict-it.
* config/arm/arm.md (arith_shiftsi): Do not predicate for
	arm_restrict_it.

From-SVN: r210640
2014-05-20 13:16:21 +00:00
Richard Sandiford
768b94bc2d dg-extract-results.py (parse_run): Handle warnings that are printed before a test harness is run.
contrib/
	* dg-extract-results.py (parse_run): Handle warnings that are printed
	before a test harness is run.

From-SVN: r210637
2014-05-20 10:08:59 +00:00
Nick Clifton
8f0e7f6f6b msp430.md (zero_extendpsisi2): Use + constraint on operand 0 in order to prevent confusion about the number of...
* config/msp430/msp430.md (zero_extendpsisi2): Use + constraint on
	operand 0 in order to prevent confusion about the number of
	registers involved.

From-SVN: r210636
2014-05-20 09:38:00 +00:00
Sebastian Huber
8ec7c36a53 libffi.exp (load_gcc_lib): Register loaded libs.
2014-05-20  Sebastian Huber  <sebastian.huber@embedded-brains.de>

libffi/
	* testsuite/lib/libffi.exp (load_gcc_lib): Register loaded libs.

libjava/
	* testsuite/lib/libjava.exp (load_gcc_lib): Register loaded libs.

libstdc++-v3/
	* testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.

From-SVN: r210634
2014-05-20 08:20:06 +00:00
Richard Biener
d1c0308e9b re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)
2014-05-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61221
	* tree-ssa-pre.c (el_to_update): Remove.
	(eliminate_dom_walker::before_dom_children): Handle released
	VDEFs by value-numbering them to the associated VUSE.  Update
	stmt immediately for substituted call address.
	(eliminate): Remove delayed stmt updating code.
	* tree-ssa-sccvn.c (vuse_ssa_val): New function valueizing
	possibly late re-numbered vuses.
	(vn_reference_lookup_2): Adjust.
	(vn_reference_lookup_pieces): Likewise.
	(vn_reference_lookup): Likewise.

From-SVN: r210633
2014-05-20 08:16:13 +00:00
Richard Biener
54da09ee20 config.gcc: Remove need_64bit_hwint.
2014-05-20  Richard Biener  <rguenther@suse.de>

	gcc/
	* config.gcc: Remove need_64bit_hwint.
	* configure.ac: Do not define NEED_64BIT_HOST_WIDE_INT.
	* hwint.h: Do not check NEED_64BIT_HOST_WIDE_INT but assume
	it to be true.
	* config.in: Regenerate.
	* configure: Likewise.

	libcpp/
	* configure.ac: Copy gcc logic of detecting a 64bit type.
	Remove HOST_WIDE_INT define.
	* include/cpplib.h: typedef cpp_num_part to a 64bit type,
	similar to how hwint.h does it.
	* config.in: Regenerate.
	* configure: Likewise.

From-SVN: r210632
2014-05-20 08:01:32 +00:00
Joern Rennecke
74145685ed * mode-switching.c (optimize_mode_switching): Fix comment typo.
From-SVN: r210631
2014-05-20 08:08:01 +01:00
Tim Shen
4dae67e090 re PR libstdc++/61227 ([C++11] Regex [\w] does not work)
2014-05-20  Tim Shen  <timshen91@gmail.com>

	PR libstdc++/61227
	* include/bits/regex_compiler.h
	(_BracketMatcher<>::_M_add_character_class): Add negative character
	class support.
	* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
	Likewise.
	* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
	Add more testcases.

From-SVN: r210630
2014-05-20 04:31:54 +00:00
GCC Administrator
b9b7e07c27 Daily bump.
From-SVN: r210629
2014-05-20 00:16:45 +00:00
Jonathan Wakely
470592286a * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
From-SVN: r210625
2014-05-19 22:43:13 +01:00
Jason Merrill
0f5b01358d re PR c++/58761 (ICE with a lambda capturing this in a NSDMI)
PR c++/58761
	* pt.c (tsubst_copy): Don't check at_function_scope_p.
	(instantiate_class_template_1): Don't push_to_top_level in an nsdmi.

From-SVN: r210624
2014-05-19 14:41:24 -04:00
Paolo Carlini
7fb80849cb typeck2.c (cxx_incomplete_type_diagnostic): Use inform.
/cp
2014-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* typeck2.c (cxx_incomplete_type_diagnostic): Use inform.
	* parser.c (cp_parser_enum_specifier): Likewise.

/testsuite
2014-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* c-c++-common/gomp/simd4.c: Adjust for inform.
	* g++.dg/cpp0x/decltype-call1.C: Likewise.
	* g++.dg/cpp0x/forw_enum6.C: Likewise.
	* g++.dg/cpp0x/lambda/lambda-ice7.C: Likewise.
	* g++.dg/cpp0x/noexcept15.C: Likewise.
	* g++.dg/cpp0x/variadic-ex2.C: Likewise.
	* g++.dg/eh/spec6.C: Likewise.
	* g++.dg/expr/cast1.C: Likewise.
	* g++.dg/expr/dtor1.C: Likewise.
	* g++.dg/ext/is_base_of_diagnostic.C: Likewise.
	* g++.dg/ext/unary_trait_incomplete.C: Likewise.
	* g++.dg/gomp/pr49223-2.C: Likewise.
	* g++.dg/gomp/udr-4.C: Likewise.
	* g++.dg/init/delete1.C: Likewise.
	* g++.dg/other/crash-2.C: Likewise.
	* g++.dg/parse/crash24.C: Likewise.
	* g++.dg/parse/crash25.C: Likewise.
	* g++.dg/parse/crash31.C: Likewise.
	* g++.dg/parse/crash49.C: Likewise.
	* g++.dg/parse/crash50.C: Likewise.
	* g++.dg/parse/crash54.C: Likewise.
	* g++.dg/parse/dtor7.C: Likewise.
	* g++.dg/parse/error40.C: Likewise.
	* g++.dg/parse/fused-params1.C: Likewise.
	* g++.dg/parse/new1.C: Likewise.
	* g++.dg/template/crash35.C: Likewise.
	* g++.dg/template/crash59.C: Likewise.
	* g++.dg/template/crash77.C: Likewise.
	* g++.dg/template/error51.C: Likewise.
	* g++.dg/template/incomplete1.C: Likewise.
	* g++.dg/template/incomplete3.C: Likewise.
	* g++.dg/template/incomplete4.C: Likewise.
	* g++.dg/template/incomplete5.C: Likewise.
	* g++.dg/template/inherit8.C: Likewise.
	* g++.dg/template/instantiate1.C: Likewise.
	* g++.dg/template/instantiate3.C: Likewis: Likewise.
	* g++.dg/template/offsetof2.C: Likewise.
	* g++.dg/tm/pr51928.C: Likewise.
	* g++.dg/warn/Wdelete-incomplete-1.C: Likewise.
	* g++.dg/warn/incomplete1.C: Likewise.
	* g++.dg/warn/incomplete2.C: Likewise.
	* g++.old-deja/g++.brendan/friend4.C: Likewise.
	* g++.old-deja/g++.bugs/900121_01.C: Likewise.
	* g++.old-deja/g++.bugs/900214_01.C: Likewise.
	* g++.old-deja/g++.eh/catch1.C: Likewise.
	* g++.old-deja/g++.eh/spec6.C: Likewise.
	* g++.old-deja/g++.mike/p7868.C: Likewise.
	* g++.old-deja/g++.other/crash38.C: Likewise.
	* g++.old-deja/g++.other/enum2.C: Likewise.
	* g++.old-deja/g++.other/incomplete.C: Likewise.
	* g++.old-deja/g++.other/vaarg3.C: Likewise.
	* g++.old-deja/g++.pt/crash9.C: Likewise.
	* g++.old-deja/g++.pt/niklas01a.C: Likewise.
	* g++.old-deja/g++.pt/typename8.C: Likewise.
	* g++.old-deja/g++.robertl/ice990323-1.C: Likewise.

From-SVN: r210623
2014-05-19 17:51:31 +00:00
David Wohlferd
883755a164 extend.texi: Create Label Attributes section, move all label attributes into it and reference it.
2014-05-19  David Wohlferd <dw@LimeGreenSocks.com>

        * doc/extend.texi: Create Label Attributes section,
        move all label attributes into it and reference it.

From-SVN: r210621
2014-05-19 11:40:40 -06:00
Mike Stump
905083ad75 + * MAINTAINERS: Add wide-int reviewers.
From-SVN: r210620
2014-05-19 17:12:53 +00:00
Richard Earnshaw
514b315679 arm.c (thumb1_reorg): When scanning backwards skip anything that's not a proper insn.
* arm.c (thumb1_reorg): When scanning backwards skip anything
	that's not a proper insn.

From-SVN: r210618
2014-05-19 16:09:49 +00:00
Joseph Myers
68038e6a2d * lib/target-supports.exp
(check_effective_target_vect_sizes_32B_16B): Return false if
	128-bit AVX vectors preferred.

From-SVN: r210617
2014-05-19 16:50:40 +01:00
Mike Stump
128ded1e86 target-supports.exp (check_effective_target_avx): Early out if not x86 to prevent x86 flags on non-x86 targets.
* lib/target-supports.exp (check_effective_target_avx): Early out
	if not x86 to prevent x86 flags on non-x86 targets.

From-SVN: r210616
2014-05-19 15:32:22 +00:00
Richard Henderson
b17f08ddf9 libitm: Enable aarch64
From-SVN: r210615
2014-05-19 07:41:18 -07:00
Richard Biener
1d44def2c2 re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)
2014-05-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61221
	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
	Do nothing for unreachable blocks.
	* tree-ssa-sccvn.c (cond_dom_walker::before_dom_children):
	Improve unreachability detection.

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

From-SVN: r210614
2014-05-19 14:33:31 +00:00
Richard Biener
051351362b re PR middle-end/61209 (internal compiler error: in fold_convert_loc, at fold-const.c:1950)
2014-05-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61209
	* tree-ssa-sccvn.c (visit_phi): Avoid setting expr to VN_TOP.

	* gfortran.dg/pr61209.f90: New testcase.

From-SVN: r210613
2014-05-19 14:32:23 +00:00
Nick Clifton
40ba8dfb39 except.c (init_eh): Fix computation of builtin setjmp buffer size to allow for targets where...
* except.c (init_eh): Fix computation of builtin setjmp buffer
	size to allow for targets where POINTER_SIZE > BITS_PER_WORD.

From-SVN: r210612
2014-05-19 13:27:25 +00:00
Richard Biener
cb460086e1 re PR tree-optimization/61184 (wrong code (that hangs) by LTO on x86_64-linux-gnu)
2014-05-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61184
	* tree-vrp.c (is_negative_overflow_infinity): Use
	TREE_OVERFLOW_P and do that check first.
	(is_positive_overflow_infinity): Likewise.
	(is_overflow_infinity): Likewise.
	(vrp_operand_equal_p): Properly treat operands with
	differing overflow as not equal.

	* c-c++-common/torture/pr61184.c: New testcase.

From-SVN: r210611
2014-05-19 12:32:15 +00:00