1. 13 Jun, 2012 22 commits
    • * sr.po: New. · 29970a8a
      From-SVN: r188528
      Joseph Myers committed
    • re PR debug/52983 (internal compiler error: in df_uses_record, at df-scan.c:3243) · 39bc0f01
      PR debug/52983
      PR debug/48866
      * dce.c (word_dce_process_block): Insert debug temps only if the
      insn is not marked.
      (dce_process_block): Likewise, and if debug.used is not empty,
      and only after iterating over all DEFs that might mark the insn.
      
      From-SVN: r188527
      Alexandre Oliva committed
    • common.opt (ftree-coalesce-inlined-vars): New. · 21d01365
      gcc/ChangeLog:
      * common.opt (ftree-coalesce-inlined-vars): New.
      (ftree-coalesce-vars): New.
      * doc/invoke.texi: Document them.
      * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
      Implement them.
      gcc/testsuite/ChangeLog:
      * g++.dg/tree-ssa/ivopts-2.C: Adjust for coalescing.
      * gcc.dg/tree-ssa/forwprop-11.c: Likewise.
      * gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.
      
      From-SVN: r188526
      Alexandre Oliva committed
    • read-rtl.c (mapping): Remove index field. · b78fd164
      gcc/
      	* read-rtl.c (mapping): Remove index field.  Add current_value field.
      	Define heap vectors.
      	(iterator_group): Fix long line.  Remove num_builtins field and
      	uses_iterator fields.  Make apply_iterator take a void * parameter.
      	(iterator_use, atttribute_use): New structures.
      	(iterator_traverse_data, BELLWETHER_CODE, bellwether_codes): Delete.
      	(current_iterators, iterator_uses, attribute_uses): New variables.
      	(uses_mode_iterator_p, uses_code_iterator_p): Delete.
      	(apply_mode_iterator, apply_code_iterator): Take a void * parameter.
      	(map_attr_string, apply_iterator_to_string): Remove iterator
      	and value parameters.  Look through all current iterator values
      	for a matching attribute.
      	(mode_attr_index, apply_mode_maps): Delete.
      	(apply_iterator_to_rtx): Replace with...
      	(copy_rtx_for_iterators): ...this new function.
      	(uses_iterator_p, apply_iterator_traverse): Delete.
      	(apply_attribute_uses, add_current_iterators, apply_iterators): New
      	functions.
      	(add_mapping): Remove index field.  Set current_value field.
      	(initialize_iterators): Don't set num_builtins and uses_iterator_p
      	fields.
      	(find_iterator): Delete.
      	(record_iterator_use, record_attribute_use): New functions.
      	(record_potential_iterator_use): New function.
      	(check_code_iterator): Remove handling of bellwether codes.
      	(read_rtx): Remove mode maps.  Truncate iterator and attribute uses.
      	(read_rtx_code, read_nested_rtx, read_rtx_variadic): Remove mode_maps
      	parameter.  Use the first code iterator value instead of the
      	bellwether_codes array.  Use record_potential_iterator_use
      	for modes.
      
      From-SVN: r188525
      Richard Sandiford committed
    • re PR target/53568 (SH Target: Add support for bswap built-ins) · 638a085f
      	PR target/53568
      	* config/sh/sh.md (bswapsi2): New expander.
      	(swapbsi2): New insn.
      
      From-SVN: r188524
      Oleg Endo committed
    • Set cache values from -mtune · 054121a4
      	PR target/53647
      	* config/i386/i386.c (ix86_tune_cost): New variable.
      	(ix86_option_override_internal): Set ix86_tune_cost.  Use
      	ix86_tune_cost for simultaneous_prefetches, prefetch_block,
      	l1_cache_size and l2_cache_size.
      
      From-SVN: r188523
      H.J. Lu committed
    • * ChangeLog: Fix whitespace. · 4a172156
      From-SVN: r188521
      Uros Bizjak committed
    • sfp-machine.h (__sfp_handle_exceptions): New function declaration. · 79261115
      	* config/ia64/sfp-machine.h (__sfp_handle_exceptions): New
      	function declaration.
      	(FP_HANDLE_EXCEPTIONS): Use __sfp_handle_exceptions.
      	(FP_RND_MASK): New.
      	* config/ia64/sfp-exceptions.c: New.
      	* config/ia64/t-softfp (LIB2ADD): Add sfp-exceptions.c.
      
      From-SVN: r188520
      Uros Bizjak committed
    • sfp-machine.h (_FP_NANSIGN_S, [...]): Move ... · bb5c97d4
      	* config/i386/32/sfp-machine.h (_FP_NANSIGN_S, _FP_NANSIGN_D,
      	_FP_NANSIGN_E, _FP_NANSIGN_Q): Move ...
      	* config/i386/64/sfp-machine: ... (delete here) ...
      	* config/i386/sfp-machine.h: ... to here.
      	(FP_EX_MASK): Remove.
      	(FP_RND_MASK): New.
      	(FP_INIT_ROUNDMODE): Declare asm as volatile.
      
      From-SVN: r188518
      Uros Bizjak committed
    • tree-vrp.c (vrp_meet): Properly meet equivalent ranges. · cf35667e
      2012-06-13  Richard Guenther  <rguenther@suse.de>
      
      	* tree-vrp.c (vrp_meet): Properly meet equivalent ranges.
      	Handle meeting two VR_RANGE to an VR_ANTI_RANGE.  Implement
      	all possible meetings of VR_RANGE with VR_ANTI_RANGE and
      	VR_ANTI_RANGE with VR_ANTI_RANGE.
      
      From-SVN: r188517
      Richard Guenther committed
    • Revert · 31e3bc1b
      	2012-05-19  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
      	(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall
      	calling convention
      	(get_minimal_subprog_decl): Likewise.
      	(gnat_first_param_is_class): New predicate.
      
      From-SVN: r188512
      Eric Botcazou committed
    • config.gcc (unsupported): Move obsoleted FPA-based configurations here from ... · c4cc7bc1
      	* config.gcc (unsupported): Move obsoleted FPA-based configurations
      	here from ...
      	(obsolete): ... here.
      	(arm*-*-freebsd*): Remove.
      	(arm*-*-linux*): Only accept EABI variants.  Simplify logic.
      	(arm*-*-uclinux*): Likewise.
      	(arm*-*-ecos-elf): Remove.
      	(arm*-*-rtems*): Remove.
      	(arm*-*-elf): Remove.
      	(arm*-wince-pe*): Remove.
      	(arm, --with-fpu): Remove support for fpa and Maverick variants.
      	* arm/ecos-elf.h: Delete.
      	* arm/t-strongarm-elf: Delete.
      	* arm/rtems-elf.h: Delete.
      	* arm/wince-pe.h: Delete.
      	* arm/pe.c: Delete.
      	* arm/pe.h: Delete.
      	* arm/t-wince-pe: Delete.
      
      From-SVN: r188510
      Richard Earnshaw committed
    • re PR tree-optimization/53647 (gcc.c-torture/compile/20011229-1.c and… · 7ef58a1a
      re PR tree-optimization/53647 (gcc.c-torture/compile/20011229-1.c and gcc.c-torture/compile/pr25311.c)
      
      2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	PR tree-optimization/53647
      	* tree-ssa-phiopt.c (gate_hoist_loads): Skip transformation for
      	targets with no defined cache line size.
      
      From-SVN: r188509
      Bill Schmidt committed
    • targhooks.c (default_builtin_vectorized_conversion): Handle vec_construct, using… · a21892ad
      targhooks.c (default_builtin_vectorized_conversion): Handle vec_construct, using vectype to base cost on subparts.
      
      2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* targhooks.c (default_builtin_vectorized_conversion): Handle
      	vec_construct, using vectype to base cost on subparts.
      	* target.h (enum vect_cost_for_stmt): Add vec_construct.
      	* tree-vect-stmts.c (vect_model_load_cost): Use vec_construct
      	instead of scalar_to-vec.
      	* config/spu/spu.c (spu_builtin_vectorization_cost): Handle
      	vec_construct in same way as default for now.
      	* config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
      	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
      	Handle vec_construct, including special case for 32-bit loads.
      
      From-SVN: r188508
      Bill Schmidt committed
    • re PR fortran/53643 ([OOP] ICE (segfault) with INTENT(OUT) CLASS array) · 2be13164
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53643
              * trans-decl.c (init_intent_out_dt): Fix for polymorphic arrays.
              * trans-array.c (structure_alloc_comps): Don't loop for
              scalar coarrays.
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53643
              * gfortran.dg/intent_out_7.f90: New.
      
      From-SVN: r188507
      Tobias Burnus committed
    • re PR fortran/53597 (F95/F2003 constraint no longer triggers: un-SAVED… · d1f6dfe6
      re PR fortran/53597 (F95/F2003 constraint no longer triggers: un-SAVED default-initialized module variable)
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53597
              * decl.c (match_attr_spec): Only mark module variables
              as SAVE_IMPLICIT for Fortran 2008 and later.
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53597
              * gfortran.dg/save_4.f90: New.
      
      From-SVN: r188506
      Tobias Burnus committed
    • * ChangeLog: Fix whitespace. · 9c78662a
      From-SVN: r188505
      Uros Bizjak committed
    • * ChangeLog: Fix whitespace. · a3fac361
      From-SVN: r188504
      Uros Bizjak committed
    • arm.c (FL_IWMMXT2): New define. · 8fd03515
      	* config/arm/arm.c (FL_IWMMXT2): New define.
      	(arm_arch_iwmmxt2): New variable.
      	(arm_option_override): Enable use of iWMMXt with VFP.
      	Disable use of iWMMXt with NEON. Disable use of iWMMXt under
      	Thumb mode. Set arm_arch_iwmmxt2.
      	(arm_expand_binop_builtin): Accept VOIDmode op.
      	(enum arm_builtins): Revise built-in fcode.
      	(IWMMXT2_BUILTIN): New define.
      	(IWMMXT2_BUILTIN2): Likewise.
      	(iwmmx2_mbuiltin): Likewise.
      	(builtin_description bdesc_2arg): Revise built in declaration.
      	(builtin_description bdesc_1arg): Likewise.
      	(arm_init_iwmmxt_builtins): Revise built in initialization.
      	(arm_expand_builtin): Revise built in expansion.
      	(arm_output_iwmmxt_shift_immediate): New function.
      	(arm_output_iwmmxt_tinsr): Likewise.
      	* config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Declare.
      	(arm_output_iwmmxt_tinsr): Likewise.
      	* config/arm/iwmmxt.md (WCGR0, WCGR1, WCGR2, WCGR3): New constant.
      	(iwmmxt_psadbw, iwmmxt_walign, iwmmxt_tmrc, iwmmxt_tmcr): Delete.
      	(rorv4hi3, rorv2si3, rordi3): Likewise.
      	(rorv4hi3_di, rorv2si3_di, rordi3_di): Likewise.
      	(ashrv4hi3_di, ashrv2si3_di, ashrdi3_di): Likewise.
      	(lshrv4hi3_di, lshrv2si3_di, lshrdi3_di): Likewise.
      	(ashlv4hi3_di, ashlv2si3_di, ashldi3_di): Likewise.
      	(iwmmxt_tbcstqi, iwmmxt_tbcsthi, iwmmxt_tbcstsi): Likewise
      	(*iwmmxt_clrv8qi, *iwmmxt_clrv4hi, *iwmmxt_clrv2si): Likewise.
      	(tbcstv8qi, tbcstv4hi, tbsctv2si): New pattern.
      	(iwmmxt_clrv8qi, iwmmxt_clrv4hi, iwmmxt_clrv2si): Likewise.
      	(*and<mode>3_iwmmxt, *ior<mode>3_iwmmxt, *xor<mode>3_iwmmxt): Likewise.
      	(ror<mode>3, ror<mode>3_di): Likewise.
      	(ashr<mode>3_di, lshr<mode>3_di, ashl<mode>3_di): Likewise.
      	(ashli<mode>3_iwmmxt, iwmmxt_waligni, iwmmxt_walignr): Likewise.
      	(iwmmxt_walignr0, iwmmxt_walignr1): Likewise.
      	(iwmmxt_walignr2, iwmmxt_walignr3): Likewise.
      	(iwmmxt_setwcgr0, iwmmxt_setwcgr1): Likewise.
      	(iwmmxt_setwcgr2, iwmmxt_setwcgr3): Likewise.
      	(iwmmxt_getwcgr0, iwmmxt_getwcgr1): Likewise.
      	(iwmmxt_getwcgr2, iwmmxt_getwcgr3): Likewise.
      	(All instruction patterns): Add wtype attribute.
      	(*iwmmxt_arm_movdi, *iwmmxt_movsi_insn): iWMMXt coexist with vfp.
      	(iwmmxt_uavgrndv8qi3, iwmmxt_uavgrndv4hi3): Revise the pattern.
      	(iwmmxt_uavgv8qi3, iwmmxt_uavgv4hi3): Likewise.
      	(ashr<mode>3_iwmmxt, ashl<mode>3_iwmmxt, lshr<mode>3_iwmmxt): Likewise.
      	(iwmmxt_tinsrb, iwmmxt_tinsrh, iwmmxt_tinsrw):Likewise.
      	(eqv8qi3, eqv4hi3, eqv2si3, gtuv8qi3): Likewise.
      	(gtuv4hi3, gtuv2si3, gtv8qi3, gtv4hi3, gtv2si3): Likewise.
      	(iwmmxt_wunpckihh, iwmmxt_wunpckihw, iwmmxt_wunpckilh): Likewise.
      	(iwmmxt_wunpckilw, iwmmxt_wunpckehub, iwmmxt_wunpckehuh): Likewise.
      	(iwmmxt_wunpckehuw, iwmmxt_wunpckehsb, iwmmxt_wunpckehsh): Likewise.
      	(iwmmxt_wunpckehsw, iwmmxt_wunpckelub, iwmmxt_wunpckeluh): Likewise.
      	(iwmmxt_wunpckeluw, iwmmxt_wunpckelsb, iwmmxt_wunpckelsh): Likewise.
      	(iwmmxt_wunpckelsw, iwmmxt_wmadds, iwmmxt_wmaddu): Likewise.
      	(iwmmxt_wsadb, iwmmxt_wsadh, iwmmxt_wsadbz, iwmmxt_wsadhz): Likewise.
      	(iwmmxt2.md): Include.
      	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __IWMMXT2__.
      	(TARGET_IWMMXT2): New define.
      	(TARGET_REALLY_IWMMXT2): Likewise.
      	(arm_arch_iwmmxt2): Declare.
      	* config/arm/mmintrin.h: Use __IWMMXT__ to enable iWMMXt intrinsics.
      	Use __IWMMXT2__ to enable iWMMXt2 intrinsics.
      	Use C name-mangling for intrinsics.
      	(__v8qi): Redefine.
      	(_mm_cvtsi32_si64, _mm_andnot_si64, _mm_sad_pu8): Revise.
      	(_mm_sad_pu16, _mm_align_si64, _mm_setwcx, _mm_getwcx): Likewise.
      	(_m_from_int): Likewise.
      	(_mm_sada_pu8, _mm_sada_pu16): New intrinsic.
      	(_mm_alignr0_si64, _mm_alignr1_si64, _mm_alignr2_si64): Likewise.
      	(_mm_alignr3_si64, _mm_tandcb, _mm_tandch, _mm_tandcw): Likewise.
      	(_mm_textrcb, _mm_textrch, _mm_textrcw, _mm_torcb): Likewise.
      	(_mm_torch, _mm_torcw, _mm_tbcst_pi8, _mm_tbcst_pi16): Likewise.
      	(_mm_tbcst_pi32): Likewise.
      	(_mm_abs_pi8, _mm_abs_pi16, _mm_abs_pi32): New iWMMXt2 intrinsic.
      	(_mm_addsubhx_pi16, _mm_absdiff_pu8, _mm_absdiff_pu16): Likewise.
      	(_mm_absdiff_pu32, _mm_addc_pu16, _mm_addc_pu32): Likewise.
      	(_mm_avg4_pu8, _mm_avg4r_pu8, _mm_maddx_pi16, _mm_maddx_pu16): Likewise.
      	(_mm_msub_pi16, _mm_msub_pu16, _mm_mulhi_pi32): Likewise.
      	(_mm_mulhi_pu32, _mm_mulhir_pi16, _mm_mulhir_pi32): Likewise.
      	(_mm_mulhir_pu16, _mm_mulhir_pu32, _mm_mullo_pi32): Likewise.
      	(_mm_qmulm_pi16, _mm_qmulm_pi32, _mm_qmulmr_pi16): Likewise.
      	(_mm_qmulmr_pi32, _mm_subaddhx_pi16, _mm_addbhusl_pu8): Likewise.
      	(_mm_addbhusm_pu8, _mm_qmiabb_pi32, _mm_qmiabbn_pi32): Likewise.
      	(_mm_qmiabt_pi32, _mm_qmiabtn_pi32, _mm_qmiatb_pi32): Likewise.
      	(_mm_qmiatbn_pi32, _mm_qmiatt_pi32, _mm_qmiattn_pi32): Likewise.
      	(_mm_wmiabb_si64, _mm_wmiabbn_si64, _mm_wmiabt_si64): Likewise.
      	(_mm_wmiabtn_si64, _mm_wmiatb_si64, _mm_wmiatbn_si64): Likewise.
      	(_mm_wmiatt_si64, _mm_wmiattn_si64, _mm_wmiawbb_si64): Likewise.
      	(_mm_wmiawbbn_si64, _mm_wmiawbt_si64, _mm_wmiawbtn_si64): Likewise.
      	(_mm_wmiawtb_si64, _mm_wmiawtbn_si64, _mm_wmiawtt_si64): Likewise.
      	(_mm_wmiawttn_si64, _mm_merge_si64): Likewise.
      	(_mm_torvscb, _mm_torvsch, _mm_torvscw): Likewise.
      	(_m_to_int): New define.
      	* config/arm/arm-cores.def (iwmmxt2): Add FL_IWMMXT2.
      	* config/arm/arm-arches.def (iwmmxt2): Likewise.
      	* config/arm/t-arm (MD_INCLUDES): Add marvell-f-iwmmxt.md and
      	iwmmxt2.md.
      	* config/arm/arm.md (marvell-f-iwmmxt.md): Include.
      	(arch): Add "iwmmxt2".
      	(arch_enabled): Handle "iwmmxt2".
      	(wtype): New attribute.
      	(UNSPEC_WMADDS, UNSPEC_WMADDU): Delete.
      	(UNSPEC_WALIGNI): New unspec.
      	* config/arm/predicates.md (imm_or_reg_operand): New predicate.
      	* config/arm/iterators.md (VMMX2): New mode_iterator.
      	* config/arm/marvell-f-iwmmxt.md: New file.
      	* config/arm/iwmmxt2.md: New file.
      
      From-SVN: r188497
      Xinyu Qi committed
    • os/user: Use Entersyscall. · 73b5b93a
      From-SVN: r188496
      Ian Lance Taylor committed
    • os: Use Entersyscall when reading directories. · 57d195e2
      From-SVN: r188494
      Ian Lance Taylor committed
    • Daily bump. · f1dd0d9f
      From-SVN: r188492
      GCC Administrator committed
  2. 12 Jun, 2012 18 commits