Commit Graph

121299 Commits

Author SHA1 Message Date
Andreas Krebbel
0ff4390dd3 re PR target/55718 (ICE in gen_reg_rtx, at emit-rtl.c:866)
2013-01-10  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	PR target/55718
	* config/s390/s390.c (s390_symref_operand_p)
	(s390_loadrelative_operand_p): Merge the two functions.
	(s390_check_qrst_address, print_operand_address): Add parameters
	to s390_loadrelative_operand_p invokation.
	(s390_check_symref_alignment): Use s390_loadrelative_operand_p.
	(s390_reload_larl_operand, s390_secondary_reload): Use
	s390_loadrelative_operand_p instead of s390_symref_operand_p.
	(legitimize_pic_address): Handle @GOTENT and @PLT + addend.

From-SVN: r195078
2013-01-10 08:15:07 +00:00
Naveen H.S
01a3a32422 aarch64.c (aarch64_print_operand): Replace %r in asm_fprintf with reg_names.
* config/aarch64/aarch64.c (aarch64_print_operand): Replace %r
	in asm_fprintf with reg_names.
	(aarch64_print_operand_address): Likewise.
	(aarch64_return_addr): Likewise.
	* config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove.

From-SVN: r195077
2013-01-10 07:34:49 +00:00
Naveen H.S
997271c112 Update my e-mail address in MAINTAINERS.
From-SVN: r195076
2013-01-10 06:21:45 +00:00
Jason Merrill
795801d683 re PR c++/55878 (--enable-checking=yes rejection of typeid)
PR c++/55878
	* rtti.c (build_typeid, get_typeid): Add complain parm.
	(get_tinfo_decl_dynamic): Likewise.
	* cp-tree.h, parser.c, pt.c: Adjust.

From-SVN: r195075
2013-01-09 21:54:39 -05:00
Mike Stump
6f557e0e1b * dse.c (record_store): Remove unnecessary assert.
From-SVN: r195074
2013-01-10 01:17:13 +00:00
GCC Administrator
829a05e398 Daily bump.
From-SVN: r195072
2013-01-10 00:19:05 +00:00
Jan Hubicka
7770c9e906 re PR tree-optimization/55569 (ICE: in check_probability, at basic-block.h:944 with -ftree-vectorize)
PR tree-optimization/55569
	* cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type.
	* cfgloop.h (scale_loop_profile): Likewise.

From-SVN: r195067
2013-01-09 21:29:07 +00:00
Jan Hubicka
a19b143257 re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO)
PR lto/45375
	* ipa-inline.c (ipa_inline): Remove extern inlines and virtual functions.
	* cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data.
	* lto.c (do_whole_program_analysis): Remove unreachable nodes after IPA.

From-SVN: r195066
2013-01-09 21:22:26 +00:00
Mikael Morin
ba29dca90d re PR fortran/47203 (USE of module with same name as SUBROUTINE not reject, but also not working)
PR fortran/47203
	* module.c (check_for_ambiguous): Get the current program unit using
	gfc_current_ns.

	PR fortran/47203
	* gfortran.dg/use_28.f90: New test.

From-SVN: r195065
2013-01-09 20:18:44 +00:00
Uros Bizjak
e1f2b72927 intrinsic_size_3.f90: Make scan-tree-dump-times number matching more robust.
* gfortran.dg/intrinsic_size_3.f90: Make scan-tree-dump-times
	number matching more robust.

From-SVN: r195064
2013-01-09 20:32:07 +01:00
Jason Merrill
96924e7e64 re PR c++/55893 ([C++11] runtime segfault with static const object with virtual destructor)
PR c++/55893
	* decl.c (cp_finish_decl): Clear TREE_READONLY if the variable
	needs destruction.

From-SVN: r195062
2013-01-09 13:55:12 -05:00
Richard Sandiford
9a002da86b re PR middle-end/55114 (gcc.dg/builtins-53.c ICEs on mips64 soft-float)
gcc/
	PR middle-end/55114
	* expr.h (maybe_emit_group_store): Declare.
	* expr.c (maybe_emit_group_store): New function.
	* builtins.c (expand_builtin_int_roundingfn): Call it.
	(expand_builtin_int_roundingfn_2): Likewise.

From-SVN: r195060
2013-01-09 18:19:16 +00:00
Vladimir Makarov
511dcace07 PR rtl-optimization/pr55829
2013-01-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/pr55829
	* lra-constraints.c (match_reload): Add code for absent output.
	(curr_insn_transform): Add code for reloads of matched inputs
	without output.

2013-01-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/pr55829
	* gcc.target/i386/pr55829.c: New.

From-SVN: r195057
2013-01-09 17:02:11 +00:00
Uros Bizjak
7b0fe4f421 sse.md (*vec_interleave_highv2df): Change mode attribute of movddup insn to DF.
* config/i386/sse.md (*vec_interleave_highv2df): Change mode
	attribute of movddup insn to DF.
	(*vec_interleave_lowv2df): Ditto.
	(vec_dupv2df): Ditto.

From-SVN: r195056
2013-01-09 17:53:29 +01:00
Tobias Burnus
d0841b5b27 re PR fortran/55758 (LOGICAL and BIND(C): Reject kind=2/4/8/16 with -std=f2008, improve warning, switch to nonBOOLEAN_TYPE for those)
2013-01-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55758
        * resolve.c (resolve_symbol): Reject non-C_Bool logicals
        in BIND(C) procedures with -std=f*.

2013-01-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55758
        * gfortran.dg/bind_c_bool_1.f90: New.
        * gfortran.dg/do_5.f90: Add dg-warning.

From-SVN: r195055
2013-01-09 17:20:33 +01:00
Jan Hubicka
870ca33128 re PR tree-optimization/55875 (IVopts caused miscompilation)
PR tree-optimiation/55875
	* gcc.c-torture/execute/pr55875.c: New testcase.
	* g++.dg/torture/pr55875.C: New testcase.

	* tree-ssa-loop-niter.c (number_of_iterations_cond): Add
	EVERY_ITERATION parameter.
	(number_of_iterations_exit): Check if exit is executed every
	iteration.
	(idx_infer_loop_bounds): Similarly here.
	(n_of_executions_at_most): Simplify
	to only test for cases where statement is dominated by the
	particular bound; handle correctly the "postdominance"
	test.
	(scev_probably_wraps_p): Use max loop iterations info
	as a global bound first.

From-SVN: r195054
2013-01-09 15:10:43 +00:00
Nguyen Duy Dat
3cd232b5aa v850.md (cbranchsf4): New pattern.
* config/v850/v850.md (cbranchsf4): New pattern.
	(cstoresf4): New pattern.
	(cbranchdf4): New pattern.
	(cstoredf4): New pattern.
	(movsicc): Disallow floating point comparisons.
	(cmpsf_le_insn): Fix order of operators.
	(cmpsf_lt_insn): Likewise.
	(cmpsf_eq_insn): Likewise.
	(cmpdf_le_insn): Likewise.
	(cmpdf_lt_insn): Likewise.
	(cmpdf_eq_insn): Likewise.
	(cmpsf_ge_insn): Use LE comparison.
	(cmpdf_ge_insn): Likewise.
	(cmpsf_gt_insn): Use LT comparison.
	(cmpdf_gt_insn): Likewise.
	(cmpsf_ne_insn): Delete pattern.
	(cmpdf_ne_insn): Delete pattern.
	* config/v850/v850.c (v850_gen_float_compare): Use
	gen_cmpdf_eq_insn for NE comparison.
	(v850_float_z_comparison_operator)
	(v850_float_nz_comparison_operator): Move from here ...
	* config/v850/predicates.md: ... to here.  Move GT and GE
	comparisons into v850_float_z_comparison_operator.
	* config/v850/v850-protos.h (v850_float_z_comparison_operator):
	Delete prototype.
	(v850_float_nz_comparison_operator): Likewise.

From-SVN: r195053
2013-01-09 15:07:08 +00:00
H.J. Lu
458752def1 Build gmp before configuring gcc
* Makefile.def (configure-gcc): Depend on all-gmp.
	(all-gcc): Remove dependency on all-gmp.
	* Makefile.in: Regenerated.

From-SVN: r195052
2013-01-09 07:00:41 -08:00
Jakub Jelinek
cc83c823a2 re PR c/48418 (Bit shift operator >>=)
PR c/48418
	* c-common.c (c_fully_fold_internal): Warn for LSHIFT_EXPR and
	RSHIFT_EXPR, if orig_op1 isn't INTEGER_CST, op1 is INTEGER_CST
	and is either negative or bigger or equal to type precision
	of the first operand.

	* typeck.c (cp_build_binary_op): For LSHIFT_EXPR and RSHIFT_EXPR,
	call maybe_constant_value for the negative or too big shift
	count warnings.

	* c-c++-common/pr48418.c: New test.

From-SVN: r195051
2013-01-09 15:51:09 +01:00
Paolo Carlini
fdbff37f39 re PR c++/55801 (ICE with thread_local after ill-formed declaration)
/cp
2013-01-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/55801
	* decl2.c (var_needs_tls_wrapper): Return false when error_operand_p
	of the argument is true.

/testsuite
2013-01-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/55801
	* g++.dg/tls/thread_local-ice.C: New.

From-SVN: r195050
2013-01-09 14:43:50 +00:00
John David Anglin
f0d5414883 pa.c (pa_emit_move_sequence): Replace calls to gen_insv with calls to gen_insvsi/gen_insvdi.
* config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv
	with calls to gen_insvsi/gen_insvdi.

From-SVN: r195049
2013-01-09 13:24:04 +00:00
Andreas Schwab
ed385baf98 * gcc.dg/guality/pr54693.c: Null-terminate arr.
From-SVN: r195048
2013-01-09 11:56:08 +00:00
Venkataramanan Kumar
8f01beca23 Set up X86_TUNE_AVX128_OPTIMAL for m_BTVER2
From-SVN: r195047
2013-01-09 09:22:50 +00:00
Jakub Jelinek
2aa579ad9b re PR tree-optimization/48189 (ICE: SIGFPE (division by zero) in in predict_loops () at predict.c:991 with --param max-predicted-iterations=0)
PR tree-optimization/48189
	* predict.c (predict_loops): If max is 0, don't call compare_tree_int.
	If nitercst is 0, don't predict the exit edge.

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

From-SVN: r195046
2013-01-09 10:00:22 +01:00
John David Anglin
f6f94d948b pa.h (VAL_U6_BITS_P): Define.
* config/pa/pa.h (VAL_U6_BITS_P): Define.
	(INT_U6_BITS): Likewise.
	* config/pa/predicates.md (uint6_operand): New predicate.
	(shift5_operand, shift6_operand): Likewise.
	* config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of
	arith32_operand.
	(lshrdi3): Use shift6_operand.
	(shrpsi4, shrpdi4): New insn patterns.
	(extzv): Delete expander.
	(extzvsi, extzvdi): New expanders.  Use uint5_operand and uint6_operand
	predicates in unamed zero extract patterns.  Tighten common constraint.
	(extv): Delete expander.
	(extvsi, extvdi): New expanders.  Use uint5_operand and uint6_operand
	predicates in unamed sign extract patterns.  Tighten common constraint.
	(insv): Delete expander.
	(insvsi, insvdi): New expanders.  Use uint5_operand and uint6_operand
	predicates in unamed insert patterns.  Tighten common constraint.
	Change uint32_operand predicate to uint6_operand predicate in unamed
	DImode pattern to insert constant values of type 1...1xxxx.

From-SVN: r195045
2013-01-09 03:01:07 +00:00
GCC Administrator
2a4e207b71 Daily bump.
From-SVN: r195043
2013-01-09 00:18:56 +00:00
Jan-Benedict Glaw
24c4a93e31 config.sub: Merge from config repo.
* config.sub: Merge from config repo.
	* config.guess: Dito.

From-SVN: r195039
2013-01-08 22:46:38 +00:00
Jan-Benedict Glaw
51c1ff0cbd Makefile.def: Merge from binutils.
* Makefile.def: Merge from binutils.
	* Makefile.in: Dito.

From-SVN: r195038
2013-01-08 22:34:23 +00:00
Jonathan Wakely
965f0c572f * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
From-SVN: r195036
2013-01-08 21:29:20 +00:00
Jonathan Wakely
890e166507 re PR c++/55908 (Problem binding a const member function to a const object)
PR libstdc++/55908
	* include/std/functional (_Mem_fn::operator()): Fix constraints to
	avoid ambiguity.
	* testsuite/20_util/function_objects/mem_fn/55908.cc: New.
	* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.

From-SVN: r195035
2013-01-08 21:01:14 +00:00
Jan Hubicka
36b7291056 re PR tree-optimization/55823 (ice in inline_call, at ipa-inline-transform.c:270)
PR tree-optimization/55823
	* ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering issue.

From-SVN: r195033
2013-01-08 20:23:05 +00:00
Uros Bizjak
8158c65703 * gcc.target/i386/pr55845.c (foo): Remove unneeded initialization.
From-SVN: r195029
2013-01-08 19:38:30 +01:00
Jakub Jelinek
c6d851b95a re PR rtl-optimization/55845 (454.calculix miscompares with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper for test data run)
PR rtl-optimization/55845
	* df-problems.c (can_move_insns_across): Stop scanning at
	volatile_insn_p source instruction or give up if
	across_from .. across_to range contains any volatile_insn_p
	instructions.

	* gcc.target/i386/pr55845.c: New test.

From-SVN: r195028
2013-01-08 19:00:10 +01:00
Tejas Belagod
4369c11e00 aarch64-simd.md (vec_init<mode>): New.
2013-01-08  Tejas Belagod  <tejas.belagod@arm.com>

	* config/aarch64/aarch64-simd.md (vec_init<mode>): New.
	* config/aarch64/aarch64-protos.h (aarch64_expand_vector_init): Declare.
	* config/aarch64/aarch64.c (aarch64_simd_dup_constant,
	aarch64_simd_make_constant, aarch64_expand_vector_init): New.

From-SVN: r195027
2013-01-08 17:19:57 +00:00
Jakub Jelinek
aeb7e7c176 re PR fortran/55341 (address-sanitizer and Fortran)
PR fortran/55341
	* asan.c (asan_clear_shadow): New function.
	(asan_emit_stack_protection): Use it.

From-SVN: r195025
2013-01-08 18:01:58 +01:00
Tejas Belagod
b4208463a3 vect-mull-compile.c: Explicitly scan for instructions generated instead of number of occurances.
2013-01-08  Tejas Belagod  <tejas.belagod@arm.com>

	* gcc.target/aarch64/vect-mull-compile.c: Explicitly scan for 
	instructions generated instead of number of occurances.

From-SVN: r195024
2013-01-08 16:23:38 +00:00
Tejas Belagod
a02ad1aa17 aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>, [...]): Separate instruction and operand with tab instead of space.
2013-01-08  Tejas Belagod  <tejas.belagod@arm.com>

	* config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>,
	aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand
	with tab instead of space.

From-SVN: r195023
2013-01-08 16:21:51 +00:00
Nick Clifton
83ffd96445 rl78.md (mulsi3_g13): Correct values for MDBL and MDBH registers.
* config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and
	MDBH registers.

From-SVN: r195020
2013-01-08 15:01:48 +00:00
Nick Clifton
f90d87f524 rl78.c (rl78_expand_prologue): Always select register bank 0 at the start of an interrupt handler.
* config/rl78/rl78.c (rl78_expand_prologue): Always select
	register bank 0 at the start of an interrupt handler.

From-SVN: r195019
2013-01-08 15:00:22 +00:00
James Greenhalgh
385eb93d42 [AARCH64] Add support for floating-point vcond.
gcc/
	* config/aarch64/aarch64-simd.md
	(aarch64_simd_bsl<mode>_internal): Add floating-point modes.
	(aarch64_simd_bsl): Likewise.
	(aarch64_vcond_internal<mode>): Likewise.
	(vcond<mode><mode>): Likewise.
	(aarch64_cm<cmp><mode>): Fix constraints, add new modes.
	* config/aarch64/iterators.md (V_cmp_result): Add V2DF.

gcc/testsuite/
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-eq-d.c: New.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-eq-f.c: Likewise.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-ge-d.c: Likewise.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-ge-f.c: Likewise.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-gt-d.c: Likewise.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm-gt-f.c: Likewise.
	* gcc/testsuite/gcc.target/aarch64/vect-fcm.x: Likewise.
	* gcc/testsuite/lib/target-supports.exp
	(check_effective_target_vect_cond): Enable for AArch64.

From-SVN: r195018
2013-01-08 14:57:33 +00:00
James Greenhalgh
4dcd1054bf [AARCH64] Fix support for vectorization over sqrt (), sqrtf ().
gcc/
	* config/aarch64/aarch64-builtins.c
	(aarch64_builtin_vectorized_function): Handle sqrt, sqrtf.

gcc/testsuite/
	* gcc.target/aarch64/vsqrt.c (test_square_root_v2sf): Use
	endian-safe float pool loading.
	(test_square_root_v4sf): Likewise.
	(test_square_root_v2df): Likewise.
	* lib/target-supports.exp
	(check_effective_target_vect_call_sqrtf): Add AArch64.

From-SVN: r195017
2013-01-08 14:49:01 +00:00
Martin Jambor
4267a4a6ce re PR debug/55579 (SRA doesn't create debug stmts when they would be useful)
2013-01-08  Martin Jambor  <mjambor@suse.cz>

	PR debug/55579
	* tree-sra.c (analyze_access_subtree): Return true also after
	potentially creating a debug-only replacement.

testsuite/
	* gcc.dg/tree-ssa/pr55579.c: New test.

From-SVN: r195015
2013-01-08 15:10:44 +01:00
Joel Brobecker
80a8d5212e statement before variable declaration in cp_parser_initializer_list.
gcc/cp/ChangeLog:

        * parser.c (cp_parser_initializer_list): Move declaration
        of variable non_const to start of lexical block.

From-SVN: r195013
2013-01-08 12:34:12 +00:00
Rainer Orth
0985d1f526 Fix g++.dg/debug/dwarf2/pr54508.C on Solaris 9/x86
* g++.dg/debug/dwarf2/pr54508.C: Allow for more whitespace after
	asm comments.

From-SVN: r195012
2013-01-08 12:24:54 +00:00
Rainer Orth
1191c46b4b Restrict -Wa,-nH use to Solaris (PR libstdc++/55594)
PR libstdc++/55594
	* acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
	Solaris targets.
	* configure: Regenerate.

From-SVN: r195009
2013-01-08 09:47:55 +00:00
Jakub Jelinek
3138f2246b re PR tree-optimization/55890 (calling a builtin func through a cast triggers an ICE)
PR middle-end/55890
	* tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p.

	* gcc.dg/torture/pr55890-3.c: New test.

From-SVN: r195008
2013-01-08 09:38:50 +01:00
Jakub Jelinek
5f4e6de31f re PR middle-end/54120 (FAIL: gfortran.fortran-torture/execute/random_2.f90 execution)
PR tree-optimization/54120
	* tree-vrp.c (range_fits_type_p): Don't allow
	src_precision < precision from signed vr to unsigned_p
	if vr->min or vr->max is negative.
	(simplify_float_conversion_using_ranges): Test can_float_p
	against CODE_FOR_nothing.

From-SVN: r195007
2013-01-08 09:33:43 +01:00
Jakub Jelinek
f3ef18ffa0 re PR middle-end/55851 (ICE in size_binop_loc, at fold-const.c:1385)
PR middle-end/55851
	* fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P
	types instead of just INTEGER_TYPE types.

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

Co-Authored-By: Richard Biener <rguenther@suse.de>

From-SVN: r195006
2013-01-08 09:32:12 +01:00
Jakub Jelinek
5b42fd0138 re PR sanitizer/55844 (-fsanitize=address -Os -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 doesn't work)
PR sanitizer/55844
	* c-c++-common/asan/null-deref-1.c: Add -fno-shrink-wrap to
	dg-options.

From-SVN: r195005
2013-01-08 09:14:04 +01:00
Paul Thomas
ec947dd39a re PR fortran/55618 (Failures with ISO_Varying_String test suite)
2013-01-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55618
	* trans-expr.c (gfc_conv_procedure_call): Dereference scalar
	character function arguments to elemental procedures in
	scalarization loops.

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

	PR fortran/55618
	* gfortran.dg/elemental_scalar_args_2.f90: New test.

From-SVN: r195004
2013-01-08 06:13:52 +00:00