Oleg Endo [Tue, 27 Mar 2012 20:14:44 +0000 (20:14 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)
PR target/50751
* config/sh/sh.c (sh_legitimize_address, sh_legitimize_reload_address):
Rearrange conditional logic. Move displacement address calculations
to ...
(sh_find_mov_disp_adjust): ... this new function.
From-SVN: r185894
H.J. Lu [Tue, 27 Mar 2012 19:37:24 +0000 (19:37 +0000)]
Remove MaskExists property from config/*/*.opt files
2012-03-27 H.J. Lu <hongjiu.lu@intel.com>
* config/arm/arm.opt (mapcs): Remove MaskExists.
* config/cris/linux.opt (mno-gotplt): Likewise.
* config/i386/i386.opt (mhard-float): Likewise.
(msse4): Likewise.
(mno-sse4): Likewise.
* config/m68k/m68k.opt (mhard-float): Likewise.
* config/mep/mep.op (mcop32): Likewise.
* config/pa/pa-hpux.opt (msio): Likewise.
* config/pa/pa64-hpux.opt (mgnu-ld): Likewise.
* config/picochip/picochip.opt (mlittle): Likewise.
* config/sh/sh.opt (mrenesas): Likewise.
* config/sparc/long-double-switch.opt (mlong-double-128): Likewise.
* config/sparc/sparc.opt (mhard-float): Likewise.
* config/v850/v850.opt (mv850es): Likewise.
* config/vax/vax.opt (mg-float): Likewise.
From-SVN: r185893
Martin Jambor [Tue, 27 Mar 2012 18:22:39 +0000 (20:22 +0200)]
re PR middle-end/52693 (Wrong code with SRA and arrays)
2012-03-27 Martin Jambor <mjambor@suse.cz>
PR middle-end/52693
* tree-sra.c (sra_modify_assign): Do not call
load_assign_lhs_subreplacements when working with an unscalarizable
region.
* testsuite/gcc.dg/torture/pr52693.c: New test.
From-SVN: r185891
Meador Inge [Tue, 27 Mar 2012 18:08:13 +0000 (18:08 +0000)]
re PR c++/52672 (internal compiler error: in cxx_eval_indirect_ref, at cp/semantics.c:6766)
PR c++/52672
* gcc/cp/semantics.c (cxx_fold_indirect_ref): Don't attempt to fold
stripped child trees that are not pointer types.
From-SVN: r185890
Mike Stump [Tue, 27 Mar 2012 18:01:06 +0000 (18:01 +0000)]
re PR testsuite/52665 (scan-assembler output produces wrong FAIL due to matching .ident)
PR target/52665
* gcc.target/i386/pr28946.c: Use -fno-ident to avoid spurious
failures that match branch names.
From-SVN: r185889
H.J. Lu [Tue, 27 Mar 2012 17:17:17 +0000 (10:17 -0700)]
Fix a typo in ChangeLog
From-SVN: r185887
Uros Bizjak [Tue, 27 Mar 2012 15:36:34 +0000 (17:36 +0200)]
re PR target/52698 (-maddress-mode=long doesn't work)
PR target/52698
* config/i386/i386-protos.h (ix86_legitimize_reload_address):
New prototype.
* config/i386/i386.h (LEGITIMIZE_RELOAD_ADDRESS): New define.
* config/i386/i386.c: Include reload.h.
(ix86_legitimize_reload_address): New function.
testsuite/ChangeLog:
PR target/52698
* gcc.target/i386/pr52698.c: New test.
From-SVN: r185883
H.J. Lu [Tue, 27 Mar 2012 15:28:41 +0000 (15:28 +0000)]
Remove MaskNeeded
2012-03-27 H.J. Lu <hongjiu.lu@intel.com>
* opth-gen.awk: Allocated a bit for Mask and InverseMask if it
hasn't been allocated. Define a target macro for Mask and
InverseMask if it hasn't been defined. Remove MaskExists
handling.
* doc/options.texi: Remove MaskNeeded.
From-SVN: r185882
Joseph Myers [Tue, 27 Mar 2012 14:29:38 +0000 (15:29 +0100)]
* ja.po: Update.
From-SVN: r185878
Joseph Myers [Tue, 27 Mar 2012 14:26:51 +0000 (15:26 +0100)]
be.po, [...]: Update.
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po,
nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po, zh_TW.po:
Update.
From-SVN: r185876
Chung-Lin Tang [Tue, 27 Mar 2012 13:05:01 +0000 (13:05 +0000)]
re PR target/52667 (sh_reorg segfault)
2012-03-27 Chung-Lin Tang <cltang@codesourcery.com>
PR target/52667
* config/sh/sh.c (find_barrier): Add equality check of last_got
to avoid going above orig insn. Update comments.
From-SVN: r185867
Richard Guenther [Tue, 27 Mar 2012 12:50:29 +0000 (12:50 +0000)]
re PR middle-end/52720 (internal compiler error: in try_move_mult_to_index)
2012-03-27 Richard Guenther <rguenther@suse.de>
PR middle-end/52720
* fold-const.c (try_move_mult_to_index): Handle &x.array more
explicitely.
* gcc.dg/torture/pr52720.c: New testcase.
From-SVN: r185865
Eric Botcazou [Tue, 27 Mar 2012 10:35:55 +0000 (10:35 +0000)]
expmed.c (store_bit_field): Assert that BITREGION_START is a multiple of a unit before computing the offset...
* expmed.c (store_bit_field): Assert that BITREGION_START is a multiple
of a unit before computing the offset in units.
* expr.c (get_bit_range): Return the null range if the enclosing record
is part of a larger bit field.
From-SVN: r185857
Ramana Radhakrishnan [Tue, 27 Mar 2012 10:26:37 +0000 (10:26 +0000)]
thumb-ifcvt.c: Only run for -mthumb.
2012-03-27 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
* gcc.target/arm/thumb-ifcvt.c: Only run for -mthumb.
* gcc.target/arm/thumb-16bit-ops.c: Likewise.
From-SVN: r185855
Tristan Gingold [Tue, 27 Mar 2012 09:50:10 +0000 (09:50 +0000)]
unwind-ia64.h: Declare unw_word and unw_sword.
2012-03-26 Tristan Gingold <gingold@adacore.com>
* config/ia64/unwind-ia64.h: Declare unw_word and unw_sword.
(unw_table_entry): Use unw_word instead of unsigned long.
(_Unwind_FindTableEntry): Likewise.
* config/ia64/fde-glibc.c (_Unwind_FindTableEntry): Likewise.
* config/ia64/fde-vms.c (vms_unwtable_entry): Likewise.
(_Unwind_FindTableEntry): Likewise.
* config/ia64/unwind-ia64.c (unw_reg_info, unw_reg_state)
(unw_labeled_state, unw_state_record, unw_stack, _Uwind_Context)
(set_reg, alloc_spill_area, finish_prologue, ia64_rse_slot_num)
(ia64_rse_is_rnat_slot, ia64_rse_rnat_addr, ia64_rse_num_regs)
(ia64_rse_skip_regs, ia64_copy_rbs, unw_access_gr)
(uw_frame_state_for, uw_update_reg_address, uw_update_context)
(uw_init_context_1, uw_install_context): Likewise.
(unw_word): Move to unwind-ia64.h
From-SVN: r185852
Tristan Gingold [Tue, 27 Mar 2012 09:44:00 +0000 (09:44 +0000)]
vms.h (CASE_VECTOR_MODE): Define.
2012-03-27 Tristan Gingold <gingold@adacore.com>
* config/ia64/vms.h (CASE_VECTOR_MODE): Define.
* config/ia64/ia64.md: Remove mode in template.
Sign extend operand in expand_simple_binop.
* config/ia64/ia64.h (ASM_OUTPUT_ADDR_DIFF_ELT): Use
CASE_VECTOR_MODE instead of TARGET_ILP32.
(ADDR_VEC_ALIGN): Make it depends on CASE_VECTOR_MODE.
From-SVN: r185851
Tristan Gingold [Tue, 27 Mar 2012 09:28:02 +0000 (09:28 +0000)]
configure.ac: Add description to AC_DEFINE in GCC_CHECK_MATH_FUNC.
2012-03-27 Tristan Gingold <gingold@adacore.com>
* configure.ac: Add description to AC_DEFINE in
GCC_CHECK_MATH_FUNC.
* configure: Regenerate
* config.h.in: Regenerate.
From-SVN: r185850
Jonathan Wakely [Tue, 27 Mar 2012 09:03:10 +0000 (09:03 +0000)]
type_traits (result_of): Fix handling of cv-quals.
* include/std/type_traits (result_of): Fix handling of cv-quals.
* testsuite/20_util/result_of/1.cc: New.
* testsuite/20_util/result_of/2.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r185845
GCC Administrator [Tue, 27 Mar 2012 00:18:41 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185829
Steven Bosscher [Mon, 26 Mar 2012 20:23:36 +0000 (20:23 +0000)]
varasm.c (assemble_external): #if 0 out the new assert from the previous commit...
* varasm.c (assemble_external): #if 0 out the new assert from the
previous commit, it breaks the Java and Go front ends.
From-SVN: r185825
Steven Bosscher [Mon, 26 Mar 2012 16:39:11 +0000 (16:39 +0000)]
toplev.c (check_global_declaration_1): Do not call assemble_external.
* toplev.c (check_global_declaration_1): Do not call assemble_external.
* expr.c (emit_block_move_libcall_fn): Likewise.
(clear_storage_libcall_fn): Likewise.
(expand_expr_addr_expr_1): Likewise.
(expand_expr_real_1): Likewise.
* calls.c (rtx_for_function_call): Likewise.
From-SVN: r185813
Steven Bosscher [Mon, 26 Mar 2012 16:35:59 +0000 (16:35 +0000)]
varasm.c (assemble_external): Assert this function is only called during or after expanding to RTL.
* varasm.c (assemble_external): Assert this function is only called
during or after expanding to RTL.
From-SVN: r185812
Gerald Pfeifer [Mon, 26 Mar 2012 16:24:33 +0000 (16:24 +0000)]
re PR libgcj/52694 (bootstrap failure: libjava/java/io/natVMConsole.cc:35:20: error: 'IUCL C' was not declared in this scope)
PR libgcj/52694
* java/io/natVMConsole.cc (IUCLC): Define, if undefined.
From-SVN: r185811
Martin Jambor [Mon, 26 Mar 2012 15:46:14 +0000 (17:46 +0200)]
re PR tree-optimization/50052 (FAIL: gcc.dg/ipa/ipa-sra-2.c scan-tree-dump eipa_sra)
2012-03-26 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/50052
* tree-sra.c (tree_non_aligned_mem_p): Removed.
(tree_non_aligned_mem_for_access_p): Likewise.
(build_accesses_from_assign): Removed strict alignment requirements
checks.
(access_precludes_ipa_sra_p): Likewise.
* testsuite/gcc.dg/ipa/ipa-sra-2.c: Also run on strict-alignment
platforms.
From-SVN: r185807
Janne Blomqvist [Mon, 26 Mar 2012 15:16:05 +0000 (18:16 +0300)]
Combined get_mem and internal_malloc_size.
2012-03-26 Janne Blomqvist <jb@gcc.gnu.org>
* runtime/memory.c (get_mem): Rename to xmalloc, check for zero
size.
(internal_malloc_size): Remove.
* libgfortran.h (get_mem): Rename to xmalloc.
(internal_malloc_size): Remove prototype.
* Makefile.am (i_iall_c): Fix dependency.
(i_iany_c): Likewise.
(i_iparity_c): Likewise.
(i_norm2_c): Likewise.
(i_parity_c): Likewise.
* Makefile.in: Regenerated.
* m4/parity.m4: Fix typo in comment.
* generated/all_l1.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/bessel_r10.c: Regenerated.
* generated/bessel_r16.c: Regenerated.
* generated/bessel_r4.c: Regenerated.
* generated/bessel_r8.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/cshift1_16.c: Regenerated.
* generated/cshift1_4.c: Regenerated.
* generated/cshift1_8.c: Regenerated.
* generated/eoshift1_16.c: Regenerated.
* generated/eoshift1_4.c: Regenerated.
* generated/eoshift1_8.c: Regenerated.
* generated/eoshift3_16.c: Regenerated.
* generated/eoshift3_4.c: Regenerated.
* generated/eoshift3_8.c: Regenerated.
* generated/iall_i1.c: Regenerated.
* generated/iall_i16.c: Regenerated.
* generated/iall_i2.c: Regenerated.
* generated/iall_i4.c: Regenerated.
* generated/iall_i8.c: Regenerated.
* generated/iany_i1.c: Regenerated.
* generated/iany_i16.c: Regenerated.
* generated/iany_i2.c: Regenerated.
* generated/iany_i4.c: Regenerated.
* generated/iany_i8.c: Regenerated.
* generated/in_pack_c10.c: Regenerated.
* generated/in_pack_c16.c: Regenerated.
* generated/in_pack_c4.c: Regenerated.
* generated/in_pack_c8.c: Regenerated.
* generated/in_pack_i1.c: Regenerated.
* generated/in_pack_i16.c: Regenerated.
* generated/in_pack_i2.c: Regenerated.
* generated/in_pack_i4.c: Regenerated.
* generated/in_pack_i8.c: Regenerated.
* generated/in_pack_r10.c: Regenerated.
* generated/in_pack_r16.c: Regenerated.
* generated/in_pack_r4.c: Regenerated.
* generated/in_pack_r8.c: Regenerated.
* generated/iparity_i1.c: Regenerated.
* generated/iparity_i16.c: Regenerated.
* generated/iparity_i2.c: Regenerated.
* generated/iparity_i4.c: Regenerated.
* generated/iparity_i8.c: Regenerated.
* generated/matmul_c10.c: Regenerated.
* generated/matmul_c16.c: Regenerated.
* generated/matmul_c4.c: Regenerated.
* generated/matmul_c8.c: Regenerated.
* generated/matmul_i1.c: Regenerated.
* generated/matmul_i16.c: Regenerated.
* generated/matmul_i2.c: Regenerated.
* generated/matmul_i4.c: Regenerated.
* generated/matmul_i8.c: Regenerated.
* generated/matmul_l16.c: Regenerated.
* generated/matmul_l4.c: Regenerated.
* generated/matmul_l8.c: Regenerated.
* generated/matmul_r10.c: Regenerated.
* generated/matmul_r16.c: Regenerated.
* generated/matmul_r4.c: Regenerated.
* generated/matmul_r8.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/norm2_r10.c: Regenerated.
* generated/norm2_r16.c: Regenerated.
* generated/norm2_r4.c: Regenerated.
* generated/norm2_r8.c: Regenerated.
* generated/pack_c10.c: Regenerated.
* generated/pack_c16.c: Regenerated.
* generated/pack_c4.c: Regenerated.
* generated/pack_c8.c: Regenerated.
* generated/pack_i1.c: Regenerated.
* generated/pack_i16.c: Regenerated.
* generated/pack_i2.c: Regenerated.
* generated/pack_i4.c: Regenerated.
* generated/pack_i8.c: Regenerated.
* generated/pack_r10.c: Regenerated.
* generated/pack_r16.c: Regenerated.
* generated/pack_r4.c: Regenerated.
* generated/pack_r8.c: Regenerated.
* generated/parity_l1.c: Regenerated.
* generated/parity_l16.c: Regenerated.
* generated/parity_l2.c: Regenerated.
* generated/parity_l4.c: Regenerated.
* generated/parity_l8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
* generated/reshape_i4.c: Regenerated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
* generated/shape_i16.c: Regenerated.
* generated/shape_i4.c: Regenerated.
* generated/shape_i8.c: Regenerated.
* generated/spread_c10.c: Regenerated.
* generated/spread_c16.c: Regenerated.
* generated/spread_c4.c: Regenerated.
* generated/spread_c8.c: Regenerated.
* generated/spread_i1.c: Regenerated.
* generated/spread_i16.c: Regenerated.
* generated/spread_i2.c: Regenerated.
* generated/spread_i4.c: Regenerated.
* generated/spread_i8.c: Regenerated.
* generated/spread_r10.c: Regenerated.
* generated/spread_r16.c: Regenerated.
* generated/spread_r4.c: Regenerated.
* generated/spread_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.
* generated/transpose_c10.c: Regenerated.
* generated/transpose_c16.c: Regenerated.
* generated/transpose_c4.c: Regenerated.
* generated/transpose_c8.c: Regenerated.
* generated/transpose_i16.c: Regenerated.
* generated/transpose_i4.c: Regenerated.
* generated/transpose_i8.c: Regenerated.
* generated/transpose_r10.c: Regenerated.
* generated/transpose_r16.c: Regenerated.
* generated/transpose_r4.c: Regenerated.
* generated/transpose_r8.c: Regenerated.
* generated/unpack_c10.c: Regenerated.
* generated/unpack_c16.c: Regenerated.
* generated/unpack_c4.c: Regenerated.
* generated/unpack_c8.c: Regenerated.
* generated/unpack_i1.c: Regenerated.
* generated/unpack_i16.c: Regenerated.
* generated/unpack_i2.c: Regenerated.
* generated/unpack_i4.c: Regenerated.
* generated/unpack_i8.c: Regenerated.
* generated/unpack_r10.c: Regenerated.
* generated/unpack_r16.c: Regenerated.
* generated/unpack_r4.c: Regenerated.
* generated/unpack_r8.c: Regenerated.
* intrinsics/cshift0.c: Use xmalloc.
* intrinsics/ctime.c: Likewise.
* intrinsics/date_and_time.c: Likewise.
* intrinsics/eoshift0.c: Likewise.
* intrinsics/eoshift2.c: Likewise.
* intrinsics/getlog.c: Likewise.
* intrinsics/pack_generic.c: Likewise.
* intrinsics/reshape_generic.c: Likewise.
* intrinsics/spread_generic.c: Likewise.
* intrinsics/string_intrinsics_inc.c: Likewise.
* intrinsics/transpose_generic.c: Likewise.
* intrinsics/unpack_generic.c: Likewise.
* io/fbuf.c: Likewise.
* io/format.c: Likewise.
* io/intrinsics.c: Likewise.
* io/list_read.c: Likewise.
* io/open.c: Likewise.
* io/transfer.c: Likewise.
* io/unit.c: Likewise.
* io/unix.c: Likewise.
* io/write.c: Likewise.
* m4/bessel.m4: Likewise.
* m4/cshift1.m4: Likewise.
* m4/eoshift1.m4: Likewise.
* m4/eoshift3.m4: Likewise.
* m4/iforeach.m4: Likewise.
* m4/ifunction.m4: Likewise.
* m4/ifunction_logical.m4: Likewise.
* m4/in_pack.m4: Likewise.
* m4/matmul.m4: Likewise.
* m4/matmull.m4: Likewise.
* m4/pack.m4: Likewise.
* m4/reshape.m4: Likewise.
* m4/shape.m4: Likewise.
* m4/spread.m4: Likewise.
* m4/transpose.m4: Likewise.
* m4/unpack.m4: Likewise.
* runtime/convert_char.c: Likewise.
* runtime/environ.c: Likewise.
* runtime/in_pack_generic.c: Likewise.
From-SVN: r185806
Richard Guenther [Mon, 26 Mar 2012 14:14:51 +0000 (14:14 +0000)]
re PR middle-end/52701 (416.gamess in SPEC CPU 2006 failed to build)
2012-03-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52701
* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Always
compute and set the evolution part of PHI nodes.
* gfortran.dg/pr52701.f90: New testcase.
From-SVN: r185800
Richard Guenther [Mon, 26 Mar 2012 14:13:35 +0000 (14:13 +0000)]
re PR tree-optimization/52721 (segfault in vect_init_vector)
2012-03-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52721
* tree-vect-stmts.c (vect_init_vector): Handle scalars.
From-SVN: r185799
Ulrich Weigand [Mon, 26 Mar 2012 13:13:07 +0000 (13:13 +0000)]
re PR tree-optimization/52686 (SLP crashes with WIDEN_LSHIFT_EXPR)
gcc/
PR tree-optimization/52686
* tree-vect-data-refs.c (vect_get_smallest_scalar_type): Handle
WIDEN_LSHIFT_EXPR.
gcc/testsuite/
PR tree-optimization/52686
* gcc.target/arm/pr52686.c: New test.
From-SVN: r185795
Georg-Johann Lay [Mon, 26 Mar 2012 11:29:57 +0000 (11:29 +0000)]
avr-torture.exp (AVR_TORTURE_OPTIONS): Add "-Os -flto" to list.
* gcc.target/avr/torture/avr-torture.exp (AVR_TORTURE_OPTIONS):
Add "-Os -flto" to list.
From-SVN: r185793
Tristan Gingold [Mon, 26 Mar 2012 09:35:18 +0000 (09:35 +0000)]
vms.h (LINK_SPEC): Simplify.
libgcc/
2012-03-26 Tristan Gingold <gingold@adacore.com>
* config/alpha/vms.h (LINK_SPEC): Simplify.
(STARTFILE_SPEC): Remove -mvms-return-codes handling.
(NAME__MAIN, SYMBOL__MAIN): Remove.
(VMS_DEBUG_MAIN_POINTER): Remove.
* config/ia64/vms.h: Likewise.
* config/alpha/alpha.c (alpha_start_function): Move vms_debug_main
code to vms.c. Call vms_start_function.
* config/ia64/ia64.c (ia64_start_function): Likewise.
* config/vms/vms-protos.h (vms_start_function): Declare.
* config/vms/vms.c (vms_start_function): New function.
* config/vms/vms.h (MATH_LIBRARY): Define.
(VMS_DEBUG_MAIN_POINTER): Define.
gcc/
2012-03-26 Tristan Gingold <gingold@adacore.com>
* config/alpha/vms.h (LINK_SPEC): Simplify.
(STARTFILE_SPEC): Remove -mvms-return-codes handling.
(NAME__MAIN, SYMBOL__MAIN): Remove.
(VMS_DEBUG_MAIN_POINTER): Remove.
* config/ia64/vms.h: Likewise.
* config/alpha/alpha.c (alpha_start_function): Move vms_debug_main
code to vms.c. Call vms_start_function.
* config/ia64/ia64.c (ia64_start_function): Likewise.
* config/vms/vms-protos.h (vms_start_function): Declare.
* config/vms/vms.c (vms_start_function): New function.
* config/vms/vms.h (MATH_LIBRARY): Define.
(VMS_DEBUG_MAIN_POINTER): Define.
From-SVN: r185791
Tristan Gingold [Mon, 26 Mar 2012 08:43:56 +0000 (08:43 +0000)]
configure.ac: Use GCC_CHECK_MATH_FUNC for math functions.
2012-03-26 Tristan Gingold <gingold@adacore.com>
* configure.ac: Use GCC_CHECK_MATH_FUNC for math functions.
* acinclude.m4: Include ../config/math.m4
* configure: Regenerate.
* Makefile.in: Regenerate.
From-SVN: r185789
Tristan Gingold [Mon, 26 Mar 2012 08:42:52 +0000 (08:42 +0000)]
math.m4: New file.
2012-03-26 Tristan Gingold <gingold@adacore.com>
* math.m4: New file.
From-SVN: r185788
Eric Botcazou [Mon, 26 Mar 2012 08:41:02 +0000 (08:41 +0000)]
re PR rtl-optimization/52629 (out-of-bounds access in reload1.c)
PR rtl-optimization/52629
* reload1.c (count_pseudo): Short-circuit common case.
(count_spilled_pseudo): Return early for pseudos without hard regs.
Assert that the pseudo has got a hard reg before manipulating it.
From-SVN: r185787
GCC Administrator [Mon, 26 Mar 2012 00:18:55 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185786
Eric Botcazou [Sun, 25 Mar 2012 17:21:49 +0000 (17:21 +0000)]
decl.c (gnat_to_gnu_entity): Copy the TYPE_PACKED flag from the base type.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Copy
the TYPE_PACKED flag from the base type.
From-SVN: r185782
Eric Botcazou [Sun, 25 Mar 2012 17:11:33 +0000 (17:11 +0000)]
decl.c (SS_MARK_NAME): New define.
* gcc-interface/decl.c (SS_MARK_NAME): New define.
(gnat_to_gnu_entity) <E_Function>: Prepend leaf attribute on entities
whose name is SS_MARK_NAME.
From-SVN: r185780
Eric Botcazou [Sun, 25 Mar 2012 16:58:48 +0000 (16:58 +0000)]
utils.c (add_parallel_type): Take a TYPE instead of a DECL and adjust.
* gcc-interface/utils.c (add_parallel_type): Take a TYPE instead of a
DECL and adjust. Move around.
(has_parallel_type): New predicate.
(rest_of_record_type_compilation): Return early if the type already
has a parallel type.
* gcc-interface/gigi.h (add_parallel_type): Adjust.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust for above changes.
From-SVN: r185779
Eric Botcazou [Sun, 25 Mar 2012 16:55:01 +0000 (16:55 +0000)]
utils.c (finish_record_type): Return early for padded types and tidy up.
* gcc-interface/utils.c (finish_record_type): Return early for padded
types and tidy up.
From-SVN: r185778
Jan Hubicka [Sun, 25 Mar 2012 13:28:32 +0000 (15:28 +0200)]
re PR middle-end/51663 (Desirable/undesirable elimination of unused variables & functions at -O0, -O0 -flto and -O0 -fwhole-program)
PR lto/51663
* varpool.c (varpool_finalize_decl): Handle toplevel_reorder here.
(decide_is_variable_needed): Do not handle toplevel reorder here.
* cgraph.h (varpool_can_remove_if_no_refs): Likewise.
* ipa.c (cgraph_remove_unreachable_nodes): Remove unreachable vars
even at -O0.
From-SVN: r185777
Jan Hubicka [Sun, 25 Mar 2012 13:25:51 +0000 (13:25 +0000)]
re PR tree-optimization/51737 (g++ crashes (internal compiler error: Segmentation fault) when compiling quickbook)
PR middle-end/51737
* g++.dg/torture/pr51737.C: New testcase
From-SVN: r185776
Janne Blomqvist [Sun, 25 Mar 2012 05:48:49 +0000 (08:48 +0300)]
Use calloc instead of malloc and memset.
2012-03-25 Janne Blomqvist <jb@gcc.gnu.org>
* runtime/memory.c (xcalloc): New function.
* libgfortran.h (xcalloc): New prototype.
* io/list_read.c (push_char): Use xcalloc instead of get_mem and
memset.
(l_push_char): Likewise.
* io/unit.c (insert_unit): Likewise.
(get_internal_unit): Likewise.
* io/unix.c (open_internal): Likewise.
(open_internal4): Likewise.
(fd_to_stream): Likewise.
From-SVN: r185773
GCC Administrator [Sun, 25 Mar 2012 00:17:50 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r185772
Jason Merrill [Sat, 24 Mar 2012 20:56:08 +0000 (16:56 -0400)]
Implement return type deduction for normal functions with -std=c++1y.
* cp-tree.h (FNDECL_USED_AUTO): New macro.
(LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P): Remove.
(dependent_lambda_return_type_node): Remove.
(CPTI_DEPENDENT_LAMBDA_RETURN_TYPE): Remove.
(struct language_function): Add x_auto_return_pattern field.
(current_function_auto_return_pattern): New.
(enum tsubst_flags): Add tf_partial.
* decl.c (decls_match): Handle auto return comparison.
(duplicate_decls): Adjust error message for auto return.
(cxx_init_decl_processing): Remove dependent_lambda_return_type_node.
(cp_finish_decl): Don't do auto deduction for functions.
(grokdeclarator): Allow auto return without trailing return type in
C++1y mode.
(check_function_type): Defer checking of deduced return type.
(start_preparsed_function): Set current_function_auto_return_pattern.
(finish_function): Set deduced return type to void if not previously
deduced.
* decl2.c (change_return_type): Handle error_mark_node.
(mark_used): Always instantiate functions with deduced return type.
Complain about use if deduction isn't done.
* parser.c (cp_parser_lambda_declarator_opt): Use 'auto' for
initial return type.
(cp_parser_lambda_body): Don't deduce return type in a template.
(cp_parser_conversion_type_id): Allow auto in C++1y.
* pt.c (instantiate_class_template_1): Don't mess with
LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P.
(tsubst_copy_and_build): Likewise.
(fn_type_unification, tsubst): Don't reduce the template parm level
of 'auto' during deduction.
(unify): Compare 'auto' specially.
(get_bindings): Change test.
(always_instantiate_p): Always instantiate functions with deduced
return type.
(do_auto_deduction): Handle error_mark_node and lambda context.
Don't check for use in initializer.
(contains_auto_r): Remove.
* search.c (lookup_conversions_r): Handle auto conversion function.
* semantics.c (lambda_return_type): Handle null return. Don't mess
with dependent_lambda_return_type_node.
(apply_deduced_return_type): Rename from apply_lambda_return_type.
* typeck.c (merge_types): Handle auto.
(check_return_expr): Do auto deduction.
* typeck2.c (add_exception_specifier): Fix complain check.
From-SVN: r185768
Eric Botcazou [Sat, 24 Mar 2012 18:58:16 +0000 (18:58 +0000)]
expr.c (optimize_bitfield_assignment_op): Use str_mode and str_bitsize instead of more convoluted expressions.
* expr.c (optimize_bitfield_assignment_op) <BIT_IOR_EXPR>: Use str_mode
and str_bitsize instead of more convoluted expressions.
From-SVN: r185767
Eric Botcazou [Sat, 24 Mar 2012 18:47:38 +0000 (18:47 +0000)]
re PR target/52610 (mpfr fails to compile when specifying CFLAGS="-O3 -mcpu=leon")
PR target/52610
* config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=leon.
From-SVN: r185765
Eric Botcazou [Sat, 24 Mar 2012 18:42:24 +0000 (18:42 +0000)]
re PR middle-end/52656 (gcc.target/sparc/fpmul-2.c FAILs)
PR target/52656
* config/sparc/sparc.c (sparc_handle_vis_mul8x16): Fix pasto.
From-SVN: r185764
GCC Administrator [Sat, 24 Mar 2012 00:18:38 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185756
David Edelsohn [Fri, 23 Mar 2012 23:55:01 +0000 (23:55 +0000)]
inclhack.def (aix_malloc): New.
* inclhack.def (aix_malloc): New.
* fixincl.x: Regenerate.
* tests/base/malloc.h [AIX_MALLOC_CHECK]: New.
From-SVN: r185752
Ian Lance Taylor [Fri, 23 Mar 2012 18:41:07 +0000 (18:41 +0000)]
syscall: Fix errno handling in syscall.Syscall and friends.
From-SVN: r185746
David S. Miller [Fri, 23 Mar 2012 18:29:39 +0000 (18:29 +0000)]
Update sparc-linux-gnu libstdc++ ABI baseline.
libstdc++-v3/
* config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
From-SVN: r185745
Benjamin Kosnik [Fri, 23 Mar 2012 16:17:49 +0000 (16:17 +0000)]
testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
2012-03-23 Benjamin Kosnik <bkoz@redhat.com>
* scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
* testsuite/lib/libstdc++.exp: Same.
From-SVN: r185744
Andrew John Hughes [Fri, 23 Mar 2012 15:19:26 +0000 (15:19 +0000)]
Merge GNU Classpath 0.99 into libjava.
From-SVN: r185741
Paolo Carlini [Fri, 23 Mar 2012 13:26:49 +0000 (13:26 +0000)]
forward_list.h: Slightly tweak two comments.
2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/forward_list.h: Slightly tweak two comments.
From-SVN: r185737
Martin Jambor [Fri, 23 Mar 2012 11:45:08 +0000 (12:45 +0100)]
tree-sra.c (build_accesses_from_assign): Remove FIXME comment.
2012-03-23 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (build_accesses_from_assign): Remove FIXME comment.
From-SVN: r185735
Richard Guenther [Fri, 23 Mar 2012 11:34:32 +0000 (11:34 +0000)]
re PR tree-optimization/52678 (internal compiler error: in vect_update_ivs_after_vectorizer, at tree-vect-loop-manip.c:1842)
2012-03-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52678
* tree-vectorizer.h (struct _stmt_vec_info): Add
loop_phi_evolution_part member.
(STMT_VINFO_LOOP_PHI_EVOLUTION_PART): New define.
* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Initialize
STMT_VINFO_LOOP_PHI_EVOLUTION_PART.
* tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer):
Use the cached evolution part and the PHI nodes value from
the loop preheader edge instead of re-analyzing the evolution.
* gfortran.dg/pr52678.f: New testcase.
From-SVN: r185734
Janne Blomqvist [Fri, 23 Mar 2012 08:54:05 +0000 (10:54 +0200)]
Remove unused GFC_MAX_LINE macro.
2012-03-23 Janne Blomqvist <jb@gcc.gnu.org>
* gfortran.h (GFC_MAX_LINE): Remove unused macro.
From-SVN: r185728
Richard Guenther [Fri, 23 Mar 2012 08:32:47 +0000 (08:32 +0000)]
re PR tree-optimization/52638 (ice in build_vector_from_val)
2012-03-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52638
* g++.dg/torture/pr52638.C: New testcase.
From-SVN: r185727
William Bader [Fri, 23 Mar 2012 08:17:24 +0000 (08:17 +0000)]
c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
2012-03-23 William Bader <williambader@hotmail.com>
c-family/
* c-lex.c (c_lex_with_flags): Avoid declarations after stmts.
From-SVN: r185725
Paolo Carlini [Fri, 23 Mar 2012 00:35:33 +0000 (00:35 +0000)]
re PR c++/52487 ([C++11] ICE at cp/semantics.c:5613 with lambda capturing reference to incomplete type by value)
/cp
2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52487
* class.c (check_field_decls): Call literal_type_p only
on complete types.
/testsuite
2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52487
* g++.dg/cpp0x/lambda/lambda-ice7.C: New.
From-SVN: r185722
GCC Administrator [Fri, 23 Mar 2012 00:18:22 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185721
Benjamin Kosnik [Fri, 23 Mar 2012 00:00:58 +0000 (00:00 +0000)]
Makefile.am: XML output names have only .xml suffix.
2012-03-22 Benjamin Kosnik <bkoz@redhat.com>
* doc/Makefile.am: XML output names have only .xml suffix.
* doc/Makefile.in: Regenerate.
From-SVN: r185716
Maxim Kuvyrkov [Thu, 22 Mar 2012 21:04:48 +0000 (21:04 +0000)]
mips-tables.opt: Update.
* config/mips/mips-tables.opt: Update.
* config/mips/mips.md (processor): Add xlp.
* config/mips/mips-cpus.def: Add xlp.
* config/mips/mips.c (mips_rtx_cost_data): Add costs for XLP, copy from
5KF for now.
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Handle xlp.
* doc/invoke.texi: Mention XLP.
From-SVN: r185712
Jakub Jelinek [Thu, 22 Mar 2012 20:25:02 +0000 (21:25 +0100)]
re PR c++/52671 (ICE with misplaced attribute on enum)
PR c++/52671
* decl.c (check_tag_decl): Only use CLASSTYPE_TEMPLATE_INSTANTIATION
on CLASS_TYPE_P types.
* g++.dg/ext/attrib44.C: New test.
From-SVN: r185709
Jakub Jelinek [Thu, 22 Mar 2012 19:25:36 +0000 (20:25 +0100)]
re PR middle-end/52547 (ICE with openmp with nested function which requires a trampoline)
PR middle-end/52547
* tree-nested.c (convert_tramp_reference_stmt): Call declare_vars
on any new_local_var_chain vars declared during recursing on
GIMPLE_OMP_PARALLEL or GIMPLE_OMP_TASK body.
* testsuite/libgomp.c/pr52547.c: New test.
From-SVN: r185707
Richard Earnshaw [Thu, 22 Mar 2012 17:54:55 +0000 (17:54 +0000)]
* lex.c (search_line_fast): Provide Neon-optimized version for ARM.
From-SVN: r185702
Uros Bizjak [Thu, 22 Mar 2012 16:11:28 +0000 (17:11 +0100)]
alpha.h (ASM_OUTPUT_ALIGN): Move to config/alpha/elf.h
* config/alpha/alpha.h (ASM_OUTPUT_ALIGN): Move to config/alpha/elf.h
(ASM_OUTPUT_SKIP): Move to config/alpha/vms.h
(ASM_OUTPUT_LOCAL): Ditto.
(ASM_OUTPUT_COMMON): Remove.
* config/alpha/elf.h (ASM_OUTPUT_DEF_FROM_DECLS): Use ASM_OUTPUT_DEF.
* config/alpha/vms.h (ASM_OUTPUT_ALIGN): Do not undefine before define.
From-SVN: r185700
Rainer Orth [Thu, 22 Mar 2012 16:07:47 +0000 (16:07 +0000)]
Fix pthread.h failure (PR other/52626)
PR other/52626
* tests/base/pthread.h [SOLARIS_MUTEX_INIT_2_CHECK]
(PTHREAD_COND_INITIALIZER): Adapt for solaris_cond_init removal.
From-SVN: r185699
Richard Earnshaw [Thu, 22 Mar 2012 15:14:46 +0000 (15:14 +0000)]
lib1funcs.asm (ctzsi2): New function.
* arm/lib1funcs.asm (ctzsi2): New function.
* arm/t-elf (LIB1ASMFUNCS): Add _ctzsi2.
* arm/t-linux (LIB1ASMFUNCS): Likewise.
* arm/t-strongarm-elf (LIB1ASMFUNCS): Likewise.
* arm/t-symbian (LIB1ASMFUNCS): Likewise.
* arm/t-vxworks (LIB1ASMFUNCS): Likewise.
* arm/t-wince-pe (LIB1ASMFUNCS): Likewise.
From-SVN: r185698
Jan Hubicka [Thu, 22 Mar 2012 14:33:27 +0000 (15:33 +0100)]
re PR tree-optimization/51737 (g++ crashes (internal compiler error: Segmentation fault) when compiling quickbook)
PR middle-end/51737
* cgraph.c (cgraph_remove_node_and_inline_clones): Add FORBIDDEN_NODE
parameter.
* cgraph.h (cgraph_remove_node_and_inline_clones): Update prototype.
* ipa-inline-transform.c (save_inline_function_body): Remove copied clone
if needed.
* tree-inline.c (delete_unreachable_blocks_update_callgraph): Update.
PR middle-end/51737
* g++.dg/torture/pr51737.C: New testcase
From-SVN: r185694
Richard Guenther [Thu, 22 Mar 2012 13:52:19 +0000 (13:52 +0000)]
re PR tree-optimization/52666 (FAIL: scal-to-vec1.c)
2012-03-22 Richard Guenther <rguenther@suse.de>
PR middle-end/52666
* fold-const.c (fold_ternary_loc): Fix typo.
From-SVN: r185693
Georg-Johann Lay [Thu, 22 Mar 2012 13:17:16 +0000 (13:17 +0000)]
re PR target/52496 (avr-specific built-ins missing memory barrier)
PR target/52496
* config/avr/avr.md (unspec): Remove UNSPEC_MEMORY_BARRIER.
(unspecv): Add UNSPECV_MEMORY_BARRIER.
(cli_sei): Use unspec_volatile instead of unspec for memory barrier.
(delay_cycles_1, delay_cycles_2): Ditto.
(delay_cycles_3, delay_cycles_4): Ditto.
(nopv, *nopv): Ditto.
(sleep, *sleep): Ditto.
(wdr, *wdr): Ditto.
From-SVN: r185692
Richard Guenther [Thu, 22 Mar 2012 13:14:54 +0000 (13:14 +0000)]
re PR tree-optimization/52548 (missed PRE optimization when function call follows to-be hoisted variable)
2012-03-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52548
* tree-ssa-pre.c (valid_in_sets): Remove handling of invalidation
because of clobbers.
(prune_clobbered_mems): New function.
(compute_antic_aux): Use it to prune ANTIC_OUT.
(compute_partial_antic_aux): Use it to prune PA_IN.
(compute_avail): Only insert expressions into EXP_GEN that
are not invalidated when translated up to the beginning of
the block.
* gcc.dg/tree-ssa/ssa-pre-29.c: New testcase.
From-SVN: r185691
Paolo Carlini [Thu, 22 Mar 2012 12:33:17 +0000 (12:33 +0000)]
array (array<>::at(size_type) const): Fix version for undefined __EXCEPTIONS.
2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/array (array<>::at(size_type) const): Fix version
for undefined __EXCEPTIONS.
From-SVN: r185689
Bernhard Reutner-Fischer [Thu, 22 Mar 2012 12:18:16 +0000 (13:18 +0100)]
fortran-modules.exp (list-module-names-1): Remove warning.
2012-03-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* lib/fortran-modules.exp (list-module-names-1): Remove
warning.
From-SVN: r185688
Richard Guenther [Thu, 22 Mar 2012 11:36:46 +0000 (11:36 +0000)]
re PR tree-optimization/52638 (ice in build_vector_from_val)
2012-03-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52638
* tree-vect-stmts.c (vect_init_vector_1): New function, split
out from ...
(vect_init_vector): ... here. Handle scalar vector inits.
(vect_get_vec_def_for_operand): Adjust.
(vectorizable_load): Likewise.
From-SVN: r185687
Richard Biener [Thu, 22 Mar 2012 09:25:49 +0000 (09:25 +0000)]
crontab: Enable snapshots from gcc-4_7-branch.
2012-03-23 Richard Guenther <rguenther@suse.de>
* crontab: Enable snapshots from gcc-4_7-branch.
From-SVN: r185680
Jiangning Liu [Thu, 22 Mar 2012 09:17:45 +0000 (09:17 +0000)]
re PR testsuite/52563 (FAIL: gcc.dg/tree-ssa/scev-[3,4].c scan-tree-dump-times optimized "&a" 1)
2012-03-22 Jiangning Liu <jiangning.liu@arm.com>
PR tree-optimization/52563
* gcc.dg/tree-ssa/scev-3.c: XFAIL on lp64.
* gcc.dg/tree-ssa/scev-4.c: XFAIL on lp64.
* gcc.dg/tree-ssa/scev-5.c: New.
From-SVN: r185678
Uros Bizjak [Thu, 22 Mar 2012 07:41:38 +0000 (08:41 +0100)]
config.gcc (alpha*-*-linux*): Add elfos.h to tm_file.
* config.gcc (alpha*-*-linux*): Add elfos.h to tm_file.
(alpha*-*-freebsd*): Ditto.
(alpha*-*-netbsd*): Ditto.
(alpha*-*-openbsd*): Ditto.
* config/alpha/elf.h (OBJECT_FORMAT_ELF): Remove.
(DWARF2_DEBUGGING_INFO): Remove.
(PREFERRED_DEBUGGING_TYPE): Remove.
(ASM_FINAL_SPEC): Remove.
(IDENT_ASM_OP): Remove.
(ASM_OUTPUT_IDENT): Remove.
(SKIP_ASM_OP): Remove.
(ASM_OUTPUT_SKIP): Remove.
(ALIGN_ASM_OP): Remove.
(ASM_OUTPUT_BEFORE_CASE_LABEL): Remove.
(ASM_OUTPUT_CASE_LABEL): Remove.
(ASM_OUTPUT_EXTERNAL_LIBCALL): Remove.
(COMMON_ASM_OP): Remove.
(ASM_OUTPUT_ALIGNED_COMMON): Remove.
(ASCII_DATA_ASM_OP): Remove.
(READONLY_DATA_SECTION_ASM_OP): Remove.
(INIT_SECTION_ASM_OP): Remove.
(FINI_SECTION_ASM_OP): Remove.
(ASM_SECTION_START_OP): Remove.
(ASM_OUTPUT_SECTION_START_FILE): Remove.
(TARGET_ASM_NAMED_SECTION): Remove.
(TARGET_ASM_SELECT_SECTION): Remove.
(MAKE_DECL_ONE_ONLY): Remove.
(TYPE_ASM_OP): Remove.
(SIZE_ASM_OP): Remove.
(ASM_WEAKEN_LABEL): Remove.
(TYPE_OPERAND_FMT): Remove.
(ASM_DECLARE_RESULT): Remove.
(ASM_DECLARE_OBJECT_NAME): Remove.
(ASM_FINISH_DECLARE_OBJECT): Remove.
(ELF_ASCII_ESCAPES): Remove.
(ELF_STRING_LIMIT): Remove.
(STRING_ASM_OP): Remove.
(ASM_OUTPUT_EXTERNAL): Remove.
(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Redefine to false.
* config/alpha/alpha.h (PCC_BITFIELD_TYPE_MATTERS): Undefine
before define.
(ASM_DECLARE_FUNCTION_NAME): Ditto.
(ASM_DECLARE_FUNCTION_SIZE): Ditto.
(ASM_GENERATE_INTERNAL_LABEL): Ditto.
(ASM_OUTPUT_SKIP): Ditto.
(READONLY_DATA_SECTION_ASM_OP): Remove.
(USER_LABEL_PREFIX): Remove.
(ASM_OUTPUT_ASCII): Remove.
(ASM_OUTPUT_CASE_LABEL): Remove.
(NO_DOLLAR_IN_LABEL): Undefine.
From-SVN: r185677
Richard Guenther [Thu, 22 Mar 2012 07:29:30 +0000 (07:29 +0000)]
re PR tree-optimization/52459 (PRE performs stupid inserts)
2012-03-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52459
* tree-ssa-pre.c (inhibit_phi_insertion): Do not inhibit
PHI insertion for calls.
From-SVN: r185676
GCC Administrator [Thu, 22 Mar 2012 00:19:09 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r185627
Steven Bosscher [Wed, 21 Mar 2012 23:01:42 +0000 (23:01 +0000)]
cse.c (invalidate_from_sets_and_clobbers, [...]): Split out from ...
* cse.c (invalidate_from_sets_and_clobbers, try_back_substitute_reg,
find_sets_in_insn, canonicalize_insn): Split out from ...
(cse_insn): ... here.
(invalidate_from_clobbers): Take an insn instead of the pattern.
From-SVN: r185622
Steven Bosscher [Wed, 21 Mar 2012 22:18:32 +0000 (22:18 +0000)]
objc-act (objc_build_ivar_assignment): Do not call assemble_external.
* objc-act (objc_build_ivar_assignment): Do not call assemble_external.
(objc_build_global_assignment): Likewise.
(objc_build_strong_cast_assignment): Likewise.
* objc-next-runtime-abi-01.c: Cleanup commented-out assemble_external.
* objc-next-runtime-abi-02.c: Likewise.
* objc-gnu-runtime-abi-01.c: Likewise.
From-SVN: r185621
Andreas Tobler [Wed, 21 Mar 2012 21:28:18 +0000 (22:28 +0100)]
freebsd64.h: Remove duplicated entries from last commit.
2012-03-21 Andreas Tobler <andreast@fgznet.ch>
* config/rs6000/freebsd64.h: Remove duplicated entries from last
commit.
* config/rs6000/t-freebsd64: Likewise.
From-SVN: r185620
Oleg Endo [Wed, 21 Mar 2012 20:27:50 +0000 (20:27 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)
PR target/50751
* gcc/target/sh/pr50751-1.c: New.
* gcc/target/sh/pr50751-2.c: New.
* gcc/target/sh/pr50751-3.c: New.
From-SVN: r185619
Oleg Endo [Wed, 21 Mar 2012 20:26:00 +0000 (20:26 +0000)]
Fix ChangeLog formatting.
From-SVN: r185618
Oleg Endo [Wed, 21 Mar 2012 20:24:41 +0000 (20:24 +0000)]
re PR target/52479 (SH Target: SH4A DFmode fsca tests failing)
PR target/52479
* config/sh/sh-protos.h (sh_fsca_df2int): Remove.
* config/sh/sh.c (sh_fsca_df2int_rtx, sh_fsca_df2int): Remove.
* config/sh/sh.md (sindf2, cosdf2): Remove.
* gcc.target/sh/sh4a-cos.c: Remove.
* gcc.target/sh/sh4a-sin.c: Remove.
* gcc.target/sh/sh4a-sincos.c: Remove.
From-SVN: r185617
Kaz Kojima [Wed, 21 Mar 2012 20:19:31 +0000 (20:19 +0000)]
PR/target 52642
PR/target 52642
* config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of
prologue for unwinder and profiler.
From-SVN: r185616
Andreas Tobler [Wed, 21 Mar 2012 20:13:50 +0000 (21:13 +0100)]
configure.ac (HAVE_LD_NO_DOT_SYMBOLS): Add powerpc64-*-freebsd*.
2012-03-21 Andreas Tobler <andreast@fgznet.ch>
* configure.ac (HAVE_LD_NO_DOT_SYMBOLS): Add powerpc64-*-freebsd*.
Introduce emul_name to select the right linker emulation for
powerpc64-*-freebsd*.
* configure: Regenerate.
* config.gcc: Add bits to support powerpc64-*-freebsd*.
* config/rs6000/freebsd.h (POWERPC_FREEBSD): Define.
* config/rs6000/freebsd64.h: New file.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Use
POWERPC_FREEBSD.
(rs6000_savres_strategy): Likewise.
(rs6000_savres_routine_name): Likewise.
(rs6000_elf_file_end): Likewise.
* config/rs6000/t-freebsd64: New file.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set the
rs6000_current_abi for 64-bit FreeBSD to ABI_AIX.
From-SVN: r185615
Andreas Tobler [Wed, 21 Mar 2012 20:12:16 +0000 (21:12 +0100)]
config.host: Add bits to support powerpc64-*-freebsd*.
2012-03-21 Andreas Tobler <andreast@fgznet.ch>
* config.host: Add bits to support powerpc64-*-freebsd*.
* config/rs6000/freebsd-unwind.h: New file.
* config/rs6000/t-freebsd64: New file.
From-SVN: r185614
Andreas Tobler [Wed, 21 Mar 2012 20:11:14 +0000 (21:11 +0100)]
31370.cc: Skip this test on powerpc64-*-freebsd*.
2013-03-21 Andreas Tobler <andreast@fgznet.ch>
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
Skip this test on powerpc64-*-freebsd*.
From-SVN: r185613
Georg-Johann Lay [Wed, 21 Mar 2012 13:20:20 +0000 (13:20 +0000)]
re PR rtl-optimization/52543 (lower-subreg.c: code bloat of 300%-400% for multi-word memory splits)
PR rtl-optimization/52543
PR target/52461
* config/avr/avr-protos.h (avr_load_lpm): New prototype.
* config/avr/avr.c (avr_mode_dependent_address_p): New function.
(TARGET_MODE_DEPENDENT_ADDRESS_P): New define.
(avr_load_libgcc_p): Restrict to __flash loads.
(avr_out_lpm): Only handle 1-byte loads from __flash.
(avr_load_lpm): New function.
(avr_find_unused_d_reg): Remove.
(avr_out_lpm_no_lpmx): Remove.
(adjust_insn_length): Handle ADJUST_LEN_LOAD_LPM.
* config/avr/avr.md (unspec): Add UNSPEC_LPM.
(load_<mode>_libgcc): Use UNSPEC_LPM instead of MEM.
(load_<mode>, load_<mode>_clobber): New insns.
(mov<mode>): For multi-byte move from non-generic
16-bit address spaces: Expand to load_<mode> resp.
load_<mode>_clobber.
(load<mode>_libgcc): Remove expander.
(split-lpmx): Remove split.
From-SVN: r185605
Richard Earnshaw [Wed, 21 Mar 2012 11:19:23 +0000 (11:19 +0000)]
neon.md (neon_vget_lanev2di): Use gen_lowpart and gen_highpart.
* neon.md (neon_vget_lanev2di): Use gen_lowpart and gen_highpart.
* config/arm/neon.ml (Fixed_return_reg): Renamed to fixed_vector_reg.
All callers changed.
(Fixed_core_reg): New feature.
(Vget_lane [sizes S64 and U64]): Add Fixed_core_reg. Allow fmrrd in
disassembly.
* neon-testgen.ml: Handle Fixed_core_reg.
* gcc.target/arm/neon/vgetQ_laneu64.c: Regenerated.
* gcc.target/arm/neon/vgetQ_lanes64.c: Likewise.
From-SVN: r185603
Martin Jambor [Wed, 21 Mar 2012 10:48:08 +0000 (11:48 +0100)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.dg/misaligned-expand-1.c (cst): Cast to int.
* gcc.dg/misaligned-expand-2.c (cst): Likewise.
From-SVN: r185602
Andrew Stubbs [Wed, 21 Mar 2012 10:41:46 +0000 (10:41 +0000)]
arm.c (thumb2_reorg): Add complete support for 16-bit instructions.
2012-03-21 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.c (thumb2_reorg): Add complete support
for 16-bit instructions.
* config/arm/thumb2.md: Delete obsolete flag-clobbering peepholes.
gcc/testsuite/
* gcc.target/arm/thumb-16bit-ops.c: New file.
* gcc.target/arm/thumb-ifcvt.c: New file.
From-SVN: r185601
Richard Guenther [Wed, 21 Mar 2012 08:05:51 +0000 (08:05 +0000)]
re PR tree-optimization/52636 (ICE: tree check: expected integer_cst, have string_cst in tree_to_double_int, at tree.h:4324)
2012-03-21 Richard Guenther <rguenther@suse.de>
PR tree-optimizer/52636
* tree-vect-slp.c (vect_get_constant_vectors): Convert constants
to the appropriate type.
From-SVN: r185599
Richard Guenther [Wed, 21 Mar 2012 08:02:21 +0000 (08:02 +0000)]
Makefile.in (cfgexpand.o): Add $(REGS_H) and $(INTEGRATE_H) dependencies.
2012-03-21 Richard Guenther <rguenther@suse.de>
* Makefile.in (cfgexpand.o): Add $(REGS_H) and $(INTEGRATE_H)
dependencies.
* cfgexpand.c (gimple_expand_cfg): Fold in pass_init_function,
pass_jump, pass_initial_value_sets and pass_unshare_all_rtl.
* passes.c (init_optimization_passes): Remove pass_init_function,
pass_jump, pass_initial_value_sets and pass_unshare_all_rtl.
* tree-pass.h (pass_init_function): Remove.
(pass_jump): Remove.
(pass_initial_value_sets): Remove.
(pass_unshare_all_rtl): Remove.
* integrate.c (pass_initial_value_sets): Remove.
* emit-rtl.c (pass_unshare_all_rtl): Remove.
* tree.h (init_function_for_compilation): Remove.
* function.c (init_function_for_compilation): Remove.
(pass_init_function): Remove.
* cfgcleanup.c (rest_of_handle_jump): Remove.
(pass_jump): Remove.
From-SVN: r185598
Jason Merrill [Wed, 21 Mar 2012 05:09:41 +0000 (01:09 -0400)]
c-common.h (enum cxx_dialect): Add cxx1y.
* c-common.h (enum cxx_dialect): Add cxx1y.
* c-common.c (c_common_nodes_and_builtins): Use >= for cxx_dialect
test.
* c-cppbuiltin.c (c_cpp_builtins): Likewise.
* c-opts.c (c_common_post_options): Likewise.
(set_std_cxx1y): New.
(c_common_handle_option): Call it.
* c.opt (-std=c++1y, -std=gnu++1y): New flags.
cp/
* lex.c (init_reswords): Use >= for cxx_dialect test.
* parser.c (cp_parser_exception_specification_opt): Likewise.
testsuite/
* lib/target-supports.exp: Add { target c++1y }.
From-SVN: r185596
Jason Merrill [Wed, 21 Mar 2012 04:04:39 +0000 (00:04 -0400)]
mangle.c (write_type): Handle 'auto'.
gcc/cp/
* mangle.c (write_type): Handle 'auto'.
* init.c (build_new): Don't do auto deduction where it might
affect template mangling.
libiberty/
* cp-demangle.c (cplus_demangle_type): Handle 'auto'.
From-SVN: r185595
GCC Administrator [Wed, 21 Mar 2012 00:17:50 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r185593
Georg-Johann Lay [Tue, 20 Mar 2012 19:38:51 +0000 (19:38 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.dg/torture/pr48124-1.c: Add dg-require-effective-target
int32plus.
* gcc.dg/torture/pr48124-4.c: Ditto:
* gcc.dg/torture/pr52530.c: Use long instead of int if int=16.
From-SVN: r185588