aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2011-06-01re PR c++/44175 ([C++0x] decltype sometimes cannot recurse)Jason Merrill5-1/+71
PR c++/44175 * pt.c (template_args_equal): Handle one arg being NULL_TREE. (deduction_tsubst_fntype): Handle excessive non-infinite recursion. From-SVN: r174543
2011-06-01lto-streamer-out.c (lto_output_ts_decl_non_common_tree_pointers): Remove ↵Diego Novillo2-5/+5
assertion for DECL_SAVED_TREE in FUNCTION_DECL nodes. * lto-streamer-out.c (lto_output_ts_decl_non_common_tree_pointers): Remove assertion for DECL_SAVED_TREE in FUNCTION_DECL nodes. From-SVN: r174542
2011-06-01re PR target/45074 (GCC Segmentation fault - negating global register variables)Richard Sandiford6-9/+69
gcc/ PR target/45074 * optabs.h (valid_multiword_target_p): Declare. * expmed.c (extract_bit_field_1): Check valid_multiword_target_p when doing multi-word operations. * optabs.c (expand_binop): Likewise. (expand_doubleword_bswap): Likewise. (expand_absneg_bit): Likewise. (expand_unop): Likewise. (expand_copysign_bit): Likewise. (multiword_target_p): New function. gcc/testsuite/ PR target/45074 * gcc.target/mips/pr45074.c: New test. From-SVN: r174541
2011-06-01re PR rtl-optimization/48830 (unrecognized insn: storing invalid upper FP ↵Richard Sandiford5-24/+125
reg in SImode) gcc/ PR rtl-optimization/48830 PR rtl-optimization/48808 PR rtl-optimization/48792 * reload.c (push_reload): Check contains_reg_of_mode. * reload1.c (strip_paradoxical_subreg): New function. (gen_reload_chain_without_interm_reg_p): Use it to handle paradoxical subregs. (emit_output_reload_insns, gen_reload): Likewise. gcc/testsuite/ 2011-06-01 Eric Botcazou <ebotcazou@adacore.com> Hans-Peter Nilsson <hp@axis.com> PR rtl-optimization/48830 * gcc.target/sparc/ultrasp12.c: New test. From-SVN: r174540
2011-06-01re PR c++/49253 (Debug-mode forward_list broken)Jason Merrill2-3/+8
PR c++/49253 * typeck2.c (build_x_arrow): Don't use build_min_nt. From-SVN: r174539
2011-06-01Pass name cleanupsDavid Li25-62/+91
From-SVN: r174537
2011-06-01Better function header dumpDavid Li6-35/+49
From-SVN: r174536
2011-06-01dwarf2out.c (compare_loc_descriptor, [...]): New functions.Jakub Jelinek2-602/+651
* dwarf2out.c (compare_loc_descriptor, scompare_loc_descriptor, ucompare_loc_descriptor, minmax_loc_descriptor, clz_loc_descriptor, popcount_loc_descriptor, bswap_loc_descriptor, rotate_loc_descriptor): New functions. (mem_loc_descriptor): Use them. From-SVN: r174535
2011-06-01var-tracking.c (create_entry_value): New function.Jakub Jelinek2-51/+41
* var-tracking.c (create_entry_value): New function. (vt_add_function_parameter): Use it. From-SVN: r174534
2011-06-01crtfastmath.c: Include <signal.h>, <ucontext.h>.Rainer Orth4-9/+60
gcc: * config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__]: Include <signal.h>, <ucontext.h>. (sigill_caught): Define. (sigill_hdlr): New function. (set_fast_math) [!__x86_64__ && __sun__ && __svr4__]: Check if SSE insns can be executed. * config/sol2.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math etc. * config/sparc/sol2.h (ENDFILE_SPEC): Remove. libgcc: * config.host (i[34567]86-*-solaris2*): Add i386/t-crtfm to tmake_file. Add crtfastmath.o to extra_parts. From-SVN: r174532
2011-06-01t-slibgcc-darwin: Move to ...Rainer Orth22-1669/+89
gcc: * config/t-slibgcc-darwin: Move to ... * config/t-slibgcc-dummy: .. this. Clarify comments. * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*, powerpc-*-darwin*, powerpc64-*-darwin*): Reflect this. (i[3456x]86-*-netware*): Add t-slibgcc-dummy to tmake_file. (i[34567]86-*-rtems*): Remove extra_parts. Use i386/t-rtems. Remove i386/t-crtstuff from tmake_file. (i[34567]86-*-solaris2*): Remove t-svr4, t-slibgcc-elf-ver, t-slibgcc-sld from tmake_file, add t-slibgcc-dummy. (sparc-*-elf*, sparc64-*-elf*): Remove tmake_file, extra_parts. (sparc-*-rtems*, sparc64-*-rtems*): Remove sparc/t-crtin, sparc/t-crtfm from tmake_file. (sparc*-*-solaris2*): Remove sparc/t-sol2, sparc/t-crtfm, t-slibgcc-elf-ver, t-slibgcc-sld, add t-slibgcc-dummy. Remove extra_parts. * config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define. * config/i386/t-nwld (SHLIB_LINK): Remove. * config/i386/t-rtems-i386: Rename to ... * config/i386/t-rtems: ... this. ($(T)crti.o, $(T)crtn.o): Remove. (FPBIT, DPBIT, LIB2FUNCS_EXTRA): Remove. (dp-bit.c, fp-bit.c, xp-bit.c): Remove. (EXTRA_MULTILIB_PARTS, LIBGCC, INSTALL_LIBGCC): Remove. * config/i386/t-sol2-10 (LIBGCC, INSTALL_LIBGCC, EXTRA_MULTILIB_PARTS): Remove. * config/sparc/t-sol2-64: Likewise. * config/sparc/t-sol2: Remove. * config/sparc/t-crtin: Remove. * config/sparc/gmon-sol2.c: Move to ../libgcc/config. * config/i386/gmon-sol2.c: Remove. * config/i386/sol2-c1.asm: Move to ../libgcc/config/i386/sol2-c1.S. * config/i386/sol2-ci.asm: Move to ../libgcc/config/i386/sol2-ci.S. * config/i386/sol2-cn.asm: Move to ../libgcc/config/i386/sol2-cn.S. * config/i386/sol2-gc1.asm: Remove. * config/sparc/sol2-c1.asm: Move to ../libgcc/config/sparc/sol2-c1.S. * config/sparc/sol2-ci.asm: Move to ../libgcc/config/sparc/sol2-ci.S. * config/sparc/sol2-cn.asm: Move to ../libgcc/config/sparc/sol2-cn.S. * config/t-slibgcc-sld: Remove. libgcc: * Makefile.in (cpu_type): Define. * config.host (i[34567]86-*-rtems*): Handle it. (i[34567]86-*-solaris2*): Move body ... (*-*-solaris2*): ... here. New case, generalize. (sparc-*-elf*): Handle it. (sparc-*-linux*, sparc64-*-linux*): Replace sparc/t-crtfm by t-crtfm. (sparc-*-rtems*, sparc64-*-rtems*); Handle it. (sparc64-*-solaris2*, sparcv9-*-solaris2*, sparc-*-solaris2*): Fold into ... (sparc*-*-solaris2*): ... this. New case. (sparc64-*-elf*): Handle it. * config/gmon-sol2.c: Move from ../gcc/config/sparc. Merge ../gcc/config/i386/gmon-sol2.c. * config/i386/sol2-c1.S: Move from ../gcc/config/i386/sol2-c1.asm. Use C comments. Merge ../gcc/config/i386/sol2-gc1.asm. * config/i386/sol2-ci.S: Move from ../gcc/config/i386/sol2-ci.asm. Use C comments. * config/i386/sol2-cn.S: Move from ../gcc/config/i386/sol2-cn.asm. Use C comments. * config/i386/t-crtfm (crtfastmath.o): Use $<. * config/i386/t-crtstuff: New file. * config/i386/t-softfp: New file. * config/i386/t-sol2 ($(T)gmon.o, $(T)gcrt1.o, $(T)crt1.o), $(T)crti.o, $(T)crtn.o): Remove. (gcrt1.o): New rule. (TARGET_LIBGCC2_CFLAGS): Remove. * config/sparc/sol2-c1.S: Move from ../gcc/config/sparc/sol2-c1.asm. * config/sparc/sol2-ci.S: Move from ../gcc/config/sparc/sol2-ci.asm. * config/sparc/sol2-cn.S: Move from ../gcc/config/sparc/sol2-cn.asm. * config/sparc/t-sol2: New file. * config/sparc/t-crtfm: Move to ... * config/t-crtfm: ... this. Use $(cpu_type), $<. * config/t-crtin: New file. * config/sparc/t-softfp: New file. * config/sparc/t-softmul: New file. * config/t-rtems: New file. * config/t-slibgcc: New file. * config/t-slibgcc-elf-ver: New file. * config/t-slibgcc-gld: New file. * config/t-slibgcc-sld: New file. * config/t-sol2: New file. * configure.ac: Include ../config/lib-ld.m4. Call AC_LIB_PROG_LD_GNU. Substitute cpu_type. * configure: Regenerate. From-SVN: r174529
2011-06-01Add missing entry.Ian Lance Taylor1-0/+7
* configure.ac (--with-specs): New option. * configure: Regenerated. * gcc.c (driver_self_specs): Include CONFIGURE_SPECS. * Makefile.in (DRIVER_DEFINES): Add -DCONFIGURE_SPECS. From-SVN: r174528
2011-06-01dwarf2out.c (mem_loc_descriptor): Call base_type_for_mode with op_mode ↵Jakub Jelinek2-1/+6
instead of mode. * dwarf2out.c (mem_loc_descriptor) <do_ucompare>: Call base_type_for_mode with op_mode instead of mode. From-SVN: r174527
2011-06-01arm-cores.def: Add cortex-r5.Paul Brook9-31/+74
2011-06-01 Paul Brook <paul@cpodesourcery.com> gcc/ * config/arm/arm-cores.def: Add cortex-r5. Add DIV flags to Cortex-A15. * config/arm/arm-tune.md: Regenerate. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm.c (FL_DIV): Rename... (FL_THUMB_DIV): ... to this. (FL_ARM_DIV): Define. (FL_FOR_ARCH7R, FL_FOR_ARCH7M): Use FL_THUMB_DIV. (arm_arch_hwdiv): Remove. (arm_arch_thumb_hwdiv, arm_arch_arm_hwdiv): New variables. (arm_issue_rate): Add cortexr5. * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Set __ARM_ARCH_EXT_IDIV__. (TARGET_IDIV): Define. (arm_arch_hwdiv): Remove. (arm_arch_arm_hwdiv, arm_arch_thumb_hwdiv): New prototypes. * config/arm/arm.md (tune_cortexr4): Add cortexr5. (divsi3, udivsi3): New patterns. * config/arm/thumb2.md (divsi3, udivsi3): Remove. * doc/invoke.texi: Document ARM -mcpu=cortex-r5 From-SVN: r174526
2011-06-01ipa-utils.c (ipa_dfs_info): New field scc_no.Martin Jambor3-0/+9
2011-06-01 Martin Jambor <mjambor@suse.cz> * ipa-utils.c (ipa_dfs_info): New field scc_no. * ipa-utils.c (searchc): Set scc_no. From-SVN: r174524
2011-06-01ipa-utils.c (searchc_env): New field allow_overwritable.Martin Jambor2-1/+13
2011-06-01 Martin Jambor <mjambor@suse.cz> * ipa-utils.c (searchc_env): New field allow_overwritable. (searchc): do not ignore edges to overwritable nodes if indicated by env->allow_overwritable. (ipa_reduced_postorder): Set env.allow_overwritable. From-SVN: r174523
2011-06-01In gcc/objc/: 2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero5-0/+144
In gcc/objc/: 2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (objc_decl_method_attributes): Implement nonnull attribute for Objective-C methods. In gcc/testsuite/: 2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/attributes/method-nonnull-1.m: New test. * obj-c++.dg/attributes/method-nonnull-1.mm: New test. From-SVN: r174520
2011-06-01tree.c (free_lang_data): Do not reset boolean_type_node nor char_type_node.Richard Guenther5-64/+62
2011-06-01 Richard Guenther <rguenther@suse.de> * tree.c (free_lang_data): Do not reset boolean_type_node nor char_type_node. * lto-streamer.c (lto_record_common_node): Take node pointer, do not register types. (lto_preload_common_nodes): Explicitly skip preloading nodes that differ between frontends. lto/ * lto-lang.c (lto_register_canonical_types): New function. (lto_init): Register common nodes with the canonical type machinery. Do not play tricks with char_type_node. From-SVN: r174519
2011-06-01Daily bump.GCC Administrator1-1/+1
From-SVN: r174518
2011-05-31rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from NON_FLOAT_REGS.Pat Haugen2-1/+6
* config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Remove vr0..vr2 from NON_FLOAT_REGS. From-SVN: r174512
2011-05-31rs6000.c (rs6000_register_move_cost): Preserve from parameter value for dump.Pat Haugen2-12/+36
* config/rs6000/rs6000.c (rs6000_register_move_cost): Preserve from parameter value for dump. Dump cost on outermost call only. (rs6000_memory_move_cost): Dump cost on outermost call only. From-SVN: r174511
2011-05-31re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])Tobias Burnus15-14/+370
2011-05-31 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * intrinsic.c (klass): Add CLASS_ATOMIC. (add_subroutines): Add atomic_ref/atomic_define. * intrinsic.texi (ATOMIC_REF, ATOMIC_DEFINE): Document. * intrinsic.h (gfc_check_atomic_def, gfc_check_atomic_ref, gfc_resolve_atomic_def, gfc_resolve_atomic_ref): New prototypes. * gfortran.h (gfc_isym_id): Add GFC_ISYM_ATOMIC_DEF and GFC_ISYM_ATOMIC_REF. (gfc_atomic_int_kind, gfc_atomic_logical_kind): New global vars. * iresolve.c (gfc_resolve_atomic_def, gfc_resolve_atomic_ref): * New functions. * check.c (gfc_check_atomic, gfc_check_atomic_def, gfc_check_atomic_ref): New functions. * iso-fortran-env.def (ISOFORTRANENV_FILE_ATOMIC_INT_KIND, ISOFORTRANENV_FILE_ATOMIC_LOGICAL_KIND): Change kind value. * trans-intrinsic.c (conv_intrinsic_atomic_def, conv_intrinsic_atomic_ref, gfc_conv_intrinsic_subroutine): New functions. (conv_intrinsic_move_alloc) Renamed from gfc_conv_intrinsic_move_alloc - and made static. * trans.h (gfc_conv_intrinsic_move_alloc): Remove. (gfc_conv_intrinsic_subroutine) Add prototype. * trans.c (trans_code): Call gfc_conv_intrinsic_subroutine. From-SVN: r174510
2011-05-31dwarf2out.c (resolve_addr_in_expr): Optimize away redundant ↵Jakub Jelinek2-14/+78
DW_OP_GNU_convert ops. * dwarf2out.c (resolve_addr_in_expr): Optimize away redundant DW_OP_GNU_convert ops. From-SVN: r174509
2011-05-31cselib.c (promote_debug_loc): Allow l->next non-NULL for ↵Jakub Jelinek9-30/+686
cselib_preserve_constants. * cselib.c (promote_debug_loc): Allow l->next non-NULL for cselib_preserve_constants. (cselib_lookup_1): If cselib_preserve_constants, a new VALUE is being created for REG and there is a VALUE for the same register in wider mode, add another loc with lowpart SUBREG of the wider VALUE. (cselib_subst_to_values): Handle ENTRY_VALUE. * var-tracking.c (replace_expr_with_values): Return NULL for ENTRY_VALUE too. * dwarf2out.c (convert_descriptor_to_signed): New function. (mem_loc_descriptor) <case ZERO_EXTEND>: Optimize using DW_OP_and instead of two shifts. (mem_loc_descriptor) <do_shift>: ZERO_EXTEND second argument to the right mode if needed. (mem_loc_descriptor) <case MOD>: For typed ops just use DW_OP_mod. (mem_loc_descriptor) <case UNSIGNED_FIX>: Use convert_descriptor_to_signed. (mem_loc_descriptor) <case UDIV, CLZ, CTZ, FFS, POPCOUNT, PARITY, BSWAP, ROTATE, ROTATERT>: Handle these rtls. * gcc.dg/guality/bswaptest.c: New test. * gcc.dg/guality/clztest.c: New test. * gcc.dg/guality/ctztest.c: New test. * gcc.dg/guality/rotatetest.c: New test. From-SVN: r174508
2011-05-31re PR target/48688 ([x64]: shift/or instead of lea)Jakub Jelinek4-0/+68
PR target/48688 * config/i386/i386.md (*lea_general_4): New define_insn_and_split. * gcc.target/i386/pr48688.c: New test. From-SVN: r174507
2011-05-31re PR c++/48010 (typedef redefinitions are allowed if the redefined type is ↵Fabien Chêne4-2/+24
a nested class type) gcc/cp/ChangeLog 2010-05-31 Fabien Chene <fabien@gcc.gnu.org> PR c++/48010 * name-lookup.c (supplement_binding_1): If the old binding was a type name, also check that the DECL actually refers to the same type or is not a type. gcc/testsuite/ChangeLog 2010-05-31 Fabien Chene <fabien@gcc.gnu.org> PR c++/48010 * g++.dg/lookup/name-clash9.C: New. From-SVN: r174506
2011-05-31re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])Tobias Burnus4-0/+83
2011-05-31 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * trans-array.c (gfc_trans_dummy_array_bias): Handle cobounds of assumed-shape arrays. 2011-05-31 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * gfortran.dg/coarray/dummy_1.f90: New. From-SVN: r174504
2011-05-31re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])Tobias Burnus7-26/+78
2011-05-31 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * resolve.c (resolve_fl_variable): Handle static coarrays with non-constant cobounds. (resolve_symbol): Handle SAVE statement without arguments for coarrays. * trans-array.c (gfc_trans_array_cobounds): New function. (gfc_trans_array_bounds): Place code by call to it. * trans-array.h (gfc_trans_array_cobounds): New prototype. * trans-decl.c (gfc_get_symbol_decl, gfc_trans_deferred_vars): Handle static coarrays with nonconstant cobounds. 2011-05-31 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * gfortran.dg/coarray/save_1.f90: New. * gfortran.dg/coarray_4.f90: Update dg-error. From-SVN: r174503
2011-05-31re PR c++/44870 ([C++0x] error when calling function with rvalue argument ↵Jason Merrill4-9/+43
inside template) PR c++/44870 * tree.c (lvalue_kind): Recurse on NON_DEPENDENT_EXPR. Handle ARROW_EXPR, TYPEID_EXPR, and arbitrary class-valued expressions. (build_min_non_dep): Preserve reference refs. (build_min_non_dep_call_vec): Likewise From-SVN: r174499
2011-05-31i386.md: Use SWI248x instead of X87MODEI...Uros Bizjak2-238/+244
* config/i386/i386.md: Use SWI248x instead of X87MODEI, SWI24 instead of X87MODEI12 and SWI48x instead of SSEMODEI24. (SWI248x): New mode iterator, rename from X87MODEI. (X87MODEI): Remove mode iterator. (X87MODEI12): Ditto. (SSEMODEI24): Ditto. From-SVN: r174498
2011-05-31params.def (PARAM_MAX_VARTRACK_EXPR_DEPTH): New.Alexandre Oliva4-3/+30
* params.def (PARAM_MAX_VARTRACK_EXPR_DEPTH): New. * doc/invoke.texi: Document max-vartrack-expr-depth. * var-tracking.c (EXPR_DEPTH): New. (reverse_op, vt_expand_loc, vt_expand_loc_dummy): Use it. From-SVN: r174494
2011-05-31i386.c (ix86_rtx_costs): Drop NEG from sub for FMA.Alexandre Oliva3-4/+9
* config/i386/i386.c (ix86_rtx_costs): Drop NEG from sub for FMA. * config/i386/sse.md: Add n to negated FMA pattern names. From-SVN: r174493
2011-05-31* gcc.c (driver_handle_option): Fix disabling of -fcompare-debug.Alexandre Oliva2-1/+5
From-SVN: r174492
2011-05-31gengtype-state.c (read_state_params_structs): Initialize previous.Alexandre Oliva2-1/+6
* gengtype-state.c (read_state_params_structs): Initialize previous. From-SVN: r174491
2011-05-31i386.md (*movtf_internal): Avoid allocating general registers.Uros Bizjak2-75/+85
* config/i386/i386.md (*movtf_internal): Avoid allocating general registers. Penalize F*r->o alternative to prevent partial memory stalls. Slightly penalize *roF->*r alternative. Generate SSE CONST_DOUBLE immediates when optimizing function for size. Do not move CONST_DOUBLEs directly to memory for !TARGET_MEMORY_MISMATCH_STALL. (*movxf_internal): Slightly penalize Yx*roF->Yx*r alternative. (*movdf_internal): Slightly penalize Yd*roF->Yd*r alternative. (*movdf_internal_rex64): Slightly penalize rm->r, F->m and r->m alternatives. (*movsf_internal): Slightly penalize rmF->r and Fr->m alternatives. (fp_register_operand splitters): Use fp_register_operand constraint. Do not use FP_REG_P in insn condition. (any_fp_register_operand splitters): Use any_fp_register_operand constraint. Do not use ANY_FP_REG_P in insn condition. * config/i386/i386.md (*pushxf_nointeger): Merge alternatives 1 and 2. (FP push_operand splitters): Merge {TF,XF,DF}mode splitters. From-SVN: r174489
2011-05-31cgraph.h (cgraph_inline_failed_t): Give enum a nameJan Hubicka3-27/+52
* cgraph.h (cgraph_inline_failed_t): Give enum a name * lto-cgraph.c (LDPR_NUM_KNOWN): New macro. (LTO_cgraph_tags): Add LTO_cgraph_last_tag. (lto_output_edge): Use output_enum and var_len_unsigned. (lto_output_varpool_node): Likewise. (input_overwrite_node): Do not take resolution parameter; extract it from a bitpack. (input_node): Do not read resolution; use input_enum and var_len_unsigned. (input_varpool_node): Likewise. (input_edge): Likewise. (input_cgraph_1): Likewise. From-SVN: r174487
2011-05-31gimple.c (gimple_register_canonical_type): Do not register any types via ↵Richard Guenther2-12/+5
gimple_register_type. 2011-05-31 Richard Guenther <rguenther@suse.de> * gimple.c (gimple_register_canonical_type): Do not register any types via gimple_register_type. From-SVN: r174483
2011-05-31lto-symtab.c (lto_symtab_merge_cgraph_nodes): Merge alias decl of thunks.Jan Hubicka2-5/+14
* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Merge alias decl of thunks. From-SVN: r174482
2011-05-31re PR rtl-optimization/49235 (ICE: in int_mode_for_mode, at ↵Jakub Jelinek4-3/+39
stor-layout.c:424 with -O -fno-delete-null-pointer-checks -fno-tree-scev-cprop -ftree-vectorize -fno-vect-cost-model) PR rtl-optimization/49235 * tree-ssa-address.c (gen_addr_rtx): Ignore base if it is const0_rtx. (create_mem_ref_raw): Create MEM_REF even if base is INTEGER_CST. * gcc.dg/pr49235.c: New test. From-SVN: r174478
2011-05-31re PR tree-optimization/49093 (ICE in vect_enhance_data_refs_alignment() ↵Ira Rosen4-0/+43
with volatile inside peeled loop) PR tree-optimization/49093 * tree-vect-data-refs.c (vect_analyze_data_refs): Fail for volatile data references. From-SVN: r174477
2011-05-31re PR debug/49047 (DW_AT_linkage_name missing for constructors and destructors)Dodji Seketeli4-0/+34
Fix PR debug/49047 gcc/ * dwarf2out.c (gen_subprogram_die): Emit linkage name attribute for concrete functions containing the code of cloned functions. gcc/testsuite/ * g++.dg/debug/dwarf2/cdtor-1.C: New test. From-SVN: r174474
2011-05-31Revert "Fix PR debug/49047"Dodji Seketeli4-34/+0
This reverts commit ce20032a8ad4d9d4fa37192e2ecc73cb257094e8. From-SVN: r174473
2011-05-31re PR debug/49047 (DW_AT_linkage_name missing for constructors and destructors)Dodji Seketeli4-0/+34
Fix PR debug/49047 gcc/ * dwarf2out.c (gen_subprogram_die): Emit linkage name attribute for concrete functions containing the code of cloned functions. gcc/testsuite/ * g++.dg/debug/dwarf2/cdtor-1.C: New test. From-SVN: r174472
2011-05-31tree-ssa-forwprop.c (forward_propagate_into_comparison): Rename to ...Richard Guenther2-353/+388
2011-05-31 Richard Guenther <rguenther@suse.de> * tree-ssa-forwprop.c (forward_propagate_into_comparison): Rename to ... (forward_propagate_into_comparison_1): ... this. (forward_propagate_comparison): Rename to ... (forward_propagate_into_comparison): ... this. Split out real forward propagation code to ... (forward_propagate_comparison): ... this. (forward_propagate_into_gimple_cond): Remove looping. (forward_propagate_into_cond): Likewise. (simplify_not_neg_expr): Return whether we have done something. (simplify_gimple_switch): Likewise. (tree_ssa_forward_propagate_single_use_vars): Rename to ... (ssa_forward_propagate_and_combine): ... this. Re-structure to do a forward forward-propagation walk on BBs and a backward stmt combining walk on BBs. Consistently re-scan changed statements. (pass_forwprop): Adjust. From-SVN: r174470
2011-05-31re PR testsuite/49239 (Random gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c ↵Ira Rosen2-0/+19
failure) PR testsuite/49239 * gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c: Initialize the output array. From-SVN: r174469
2011-05-31godump.c (go_format_type): Correct length of name added to obstack for ↵Ian Lance Taylor2-1/+6
anonymous field. * godump.c (go_format_type): Correct length of name added to obstack for anonymous field. From-SVN: r174465
2011-05-31Daily bump.GCC Administrator1-1/+1
From-SVN: r174463
2011-05-30sh.c (expand_cbranchdi4): Set msw_skip when the high part of the second ↵Kaz Kojima4-1/+30
operand is 0. * config/sh/sh.c (expand_cbranchdi4): Set msw_skip when the high part of the second operand is 0. * gcc.c-torture/execute/pr49186.c: New. From-SVN: r174456
2011-05-30i386.md (*movxf_internal): Penalize FYx*r->o alternative to prevent partial ↵Uros Bizjak4-99/+66
memory stalls. * config/i386/i386.md (*movxf_internal): Penalize FYx*r->o alternative to prevent partial memory stalls. Do not move CONST_DOUBLEs directly to memory for !TARGET_MEMORY_MISMATCH_STALL. (*movdf_internal_rex64): Do not penalize F->r alternative. (*movdf_internal): Penalize FYd*r->o alternative to prevent partial memory stalls. Generate SSE and x87 CONST_DOUBLE immediates only when optimizing function for size. Do not move CONST_DOUBLEs directly to memory for !TARGET_MEMORY_MISMATCH_STALL. (FP move splitters): Merge {TF,XF,DF}mode move splitters. Do not handle SUBREGs. Do not check for MEM_P operands in the insn condition, check for ANY_FP_REGNO_P instead. * config/i386/constraints.md (Yd): Enable GENERAL_REGS for TARGET_64BIT and for TARGET_INTEGER_DFMODE_MOVES when optimizing function for speed. * config/i386/i386.c (ix86_option_override_internal): Do not set TARGET_INTEGER_DFMODE_MOVES here. From-SVN: r174453
2011-05-30Handle misaligned TFmode load/store.H.J. Lu4-3/+38
gcc/ 2011-05-30 H.J. Lu <hongjiu.lu@intel.com> PR target/49168 * config/i386/i386.md (*movtf_internal): Handle misaligned load/store. gcc/testsuite/ 2011-05-30 H.J. Lu <hongjiu.lu@intel.com> PR target/49168 * gcc.target/i386/pr49168-1.c: New. From-SVN: r174451