1. 28 Jul, 2011 12 commits
    • hjl's avatar
      Set need_64bit_hwint to yes for x86 targets. · 6b4db1bd
      hjl authored
      gcc/
      
      2011-07-28  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config.gcc: Set need_64bit_hwint to yes for x86 targets.
      
      libcpp/
      
      2011-07-28  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* configure.ac: Set need_64bit_hwint to yes for x86 targets.
      	* configure: Regenerated.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176871 138bc75d-0d04-0410-961f-82ee72b054a4
      6b4db1bd
    • ro's avatar
      * init.c (__gnat_error_handler): Cast reason to int. · 2b5476e1
      ro authored
      	(__gnat_install_handler): Explain sa_sigaction use.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176870 138bc75d-0d04-0410-961f-82ee72b054a4
      2b5476e1
    • hjl's avatar
      Only expand strlen to Pmode. · cbc284cd
      hjl authored
      2011-07-28  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/47364
      	* config/i386/i386.md (strlen<mode>): Replace SWI48x with P.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176868 138bc75d-0d04-0410-961f-82ee72b054a4
      cbc284cd
    • ramana's avatar
      · c42b1beb
      ramana authored
      2011-07-28  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	* config/arm/vfp.md ("*movdf_vfp"): Handle the VFP constraints
      	before the core constraints. Adjust attributes.
      	(*thumb2_movdf_vfp"): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176867 138bc75d-0d04-0410-961f-82ee72b054a4
      c42b1beb
    • ktietz's avatar
      2011-07-28 Kai Tietz <ktietz@redhat.com> · eea7f7eb
      ktietz authored
              * tree-vrp.c (simplify_stmt_using_ranges): Remove
              TRUTH_NOT_EXPR case.
              (simplify_truth_ops_using_ranges): Likewise.
              (build_assert_expr_for): Likewise.
              (build_assert_expr_for_1): Remove TRUTH_NOT_EXPR case
              and handle BIT_NOT_EXPR for truth-operation.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176866 138bc75d-0d04-0410-961f-82ee72b054a4
      eea7f7eb
    • gjl's avatar
      PR target/49313 · f6ad34dd
      gjl authored
      	Undo r176835 from trunk
      	2011-07-27  Georg-Johann Lay
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176865 138bc75d-0d04-0410-961f-82ee72b054a4
      f6ad34dd
    • amodra's avatar
      update copyright · 3851fc20
      amodra authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176863 138bc75d-0d04-0410-961f-82ee72b054a4
      3851fc20
    • gjl's avatar
      · 713e2ad9
      gjl authored
      	PR target/49687
      	* config/avr/t-avr (LIB1ASMFUNCS): Remove _xmulhisi3_exit.
      	Add _muluhisi3, _mulshisi3, _usmulhisi3.
      	* config/avr/libgcc.S (__mulsi3): Rewrite.
      	(__mulhisi3): Rewrite.
      	(__umulhisi3): Rewrite.
      	(__usmulhisi3): New.
      	(__muluhisi3): New.
      	(__mulshisi3): New.
      	(__mulohisi3): New.
      	(__mulqi3, __mulqihi3, __umulqihi3, __mulhi3): Use DEFUN/ENDF to
      	declare.
      	* config/avr/predicates.md (pseudo_register_operand): Rewrite.
      	(pseudo_register_or_const_int_operand): New.
      	(combine_pseudo_register_operand): New.
      	(u16_operand): New.
      	(s16_operand): New.
      	(o16_operand): New.
      	* config/avr/avr.c (avr_rtx_costs): Handle costs for mult:SI.
      	* config/avr/avr.md (QIHI, QIHI2): New mode iterators.
      	(any_extend, any_extend2): New code iterators.
      	(extend_prefix): New code attribute.
      	(mulsi3): Rewrite. Turn insn to expander.
      	(mulhisi3): Ditto.
      	(umulhisi3): Ditto.
      	(usmulhisi3): New expander.
      	(*mulsi3): New insn-and-split.
      	(mulu<mode>si3): New insn-and-split.
      	(muls<mode>si3): New insn-and-split.
      	(mulohisi3): New insn-and-split.
      	(*uumulqihisi3, *uumulhiqisi3, *uumulhihisi3, *uumulqiqisi3,
      	*usmulqihisi3, *usmulhiqisi3, *usmulhihisi3, *usmulqiqisi3,
      	*sumulqihisi3, *sumulhiqisi3, *sumulhihisi3, *sumulqiqisi3,
      	*ssmulqihisi3, *ssmulhiqisi3, *ssmulhihisi3, *ssmulqiqisi3): New
      	insn-and-split.
      	(*mulsi3_call): Rewrite.
      	(*mulhisi3_call): Rewrite.
      	(*umulhisi3_call): Rewrite.
      	(*usmulhisi3_call): New insn.
      	(*muluhisi3_call): New insn.
      	(*mulshisi3_call): New insn.
      	(*mulohisi3_call): New insn.
      	(extendqihi2): Use combine_pseudo_register_operand as predicate
      	for operand 1.
      	(extendqisi2): Ditto.
      	(zero_extendqihi2): Ditto.
      	(zero_extendqisi2): Ditto.
      	(zero_extendhisi2): Ditto.
      	(extendhisi2): Ditto. Don't early-clobber operand 0.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176862 138bc75d-0d04-0410-961f-82ee72b054a4
      713e2ad9
    • amodra's avatar
      * config/rs6000/linux-unwind.h (frob_update_context <__powerpc64__>): · c54e2746
      amodra authored
      	Leave r2 REG_UNSAVED if stopped on the instruction that saves r2
      	in a plt call stub.  Do restore r2 if stopped on bctrl.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176861 138bc75d-0d04-0410-961f-82ee72b054a4
      c54e2746
    • uros's avatar
      * config/i386/i386.c (add->lea splitter): Add SWI mode to PLUS RTX. · 4875cd5a
      uros authored
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176860 138bc75d-0d04-0410-961f-82ee72b054a4
      4875cd5a
    • jakub's avatar
      * gcc.target/i386/i386.exp (check_effective_target_bmi): Make sure · c583903f
      jakub authored
      	the builtin isn't optimized away.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176859 138bc75d-0d04-0410-961f-82ee72b054a4
      c583903f
    • gccadmin's avatar
      Daily bump. · 26522166
      gccadmin authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176856 138bc75d-0d04-0410-961f-82ee72b054a4
      26522166
  2. 27 Jul, 2011 21 commits
    • burnus's avatar
      2011-07-27 Tobias Burnus <burnus@net-b.de> · fc5bc445
      burnus authored
              PR fortran/45586
              * trans-types.c (gfc_get_derived_type): Ensure that pointer
              component types are marked as nonrestricted.
      
      2011-07-27  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/45586
              * gfortran.dg/lto/pr45586-2_0.f90: New.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176852 138bc75d-0d04-0410-961f-82ee72b054a4
      fc5bc445
    • aldyh's avatar
      PR middle-end/49875 · b79fd74b
      aldyh authored
              * c-c++-common/cxxbitfields-4.c: Check for smaller than long
              moves.
              * c-c++-common/cxxbitfields-5.c: Same.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176848 138bc75d-0d04-0410-961f-82ee72b054a4
      b79fd74b
    • paolo's avatar
      2011-07-27 Paolo Carlini <paolo.carlini@oracle.com> · e9fea850
      paolo authored
      	PR c++/49813
      	* include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176847 138bc75d-0d04-0410-961f-82ee72b054a4
      e9fea850
    • uweigand's avatar
      * lib/target-supports.exp (check_effective_target_mmap): Use · 77c4e089
      uweigand authored
      	check_function_available.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176846 138bc75d-0d04-0410-961f-82ee72b054a4
      77c4e089
    • jyasskin's avatar
      Propagate the source location of a template's function_decl to the · 089ce69e
      jyasskin authored
      template_decl built out of it.  Without this, specializations
      generated before the template was defined get the location of the
      closing ')' instead of the location of the template's name, which can
      produce inconsistent locations between translation units, which makes
      gold's ODR checker unhappy.
      
      	* gcc/cp/pt.c (build_template_decl): Copy the function_decl's source
      	location to the new template_decl.
      	* gcc/testsuite/g++.old-deja/g++.pt/crash60.C: Updated.
      	* libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176845 138bc75d-0d04-0410-961f-82ee72b054a4
      089ce69e
    • jakub's avatar
      PR target/49866 · 05e86817
      jakub authored
      	* gcc.target/i386/pr49866.c: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176842 138bc75d-0d04-0410-961f-82ee72b054a4
      05e86817
    • hjl's avatar
      Add BMI testcases. · cc0ec1f6
      hjl authored
      2011-07-27  Yukhin Kirill  <kirill.yukhin@intel.com>
      
      	* gcc.target/i386/i386.exp (check_effective_target_bmi): New.
      	* gcc.target/i386/bmi-andn-1.c: New test.
      	* gcc.target/i386/bmi-andn-1a.c: Likewise.
      	* gcc.target/i386/bmi-andn-2.c: Likewise.
      	* gcc.target/i386/bmi-andn-2a.c: Likewise.
      	* gcc.target/i386/bmi-bextr-1.c: Likewise.
      	* gcc.target/i386/bmi-bextr-1a.c: Likewise.
      	* gcc.target/i386/bmi-bextr-2.c: Likewise.
      	* gcc.target/i386/bmi-bextr-2a.c: Likewise.
      	* gcc.target/i386/bmi-blsi-1.c: Likewise.
      	* gcc.target/i386/bmi-blsi-1a.c: Likewise.
      	* gcc.target/i386/bmi-blsi-2.c: Likewise.
      	* gcc.target/i386/bmi-blsi-2a.c: Likewise.
      	* gcc.target/i386/bmi-blsmsk-1.c: Likewise.
      	* gcc.target/i386/bmi-blsmsk-1a.c: Likewise.
      	* gcc.target/i386/bmi-blsmsk-2.c: Likewise.
      	* gcc.target/i386/bmi-blsmsk-2a.c: Likewise.
      	* gcc.target/i386/bmi-blsr-1.c: Likewise.
      	* gcc.target/i386/bmi-blsr-1a.c: Likewise.
      	* gcc.target/i386/bmi-blsr-2.c: Likewise.
      	* gcc.target/i386/bmi-blsr-2a.c: Likewise.
      	* gcc.target/i386/bmi-tzcnt-1.c: Likewise.
      	* gcc.target/i386/bmi-tzcnt-1a.c: Likewise.
      	* gcc.target/i386/bmi-tzcnt-2.c: Likewise.
      	* gcc.target/i386/bmi-tzcnt-2a.c: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176840 138bc75d-0d04-0410-961f-82ee72b054a4
      cc0ec1f6
    • spop's avatar
      Fix PR49471: canonicalize_loop_ivs should not generate unsigned types. · 38a66497
      spop authored
      2011-07-27  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR tree-optimization/49471
      	* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Build an unsigned
      	iv only when the largest type is unsigned.  Do not call
      	lang_hooks.types.type_for_size.
      
      	* testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
      	* testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176838 138bc75d-0d04-0410-961f-82ee72b054a4
      38a66497
    • spop's avatar
      PR45450: disable legality check after an openscop read · c71f56ce
      spop authored
      2011-07-27  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/45450
      	* graphite-poly.c (apply_poly_transforms): Disable legality check
      	after an openscop read.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176837 138bc75d-0d04-0410-961f-82ee72b054a4
      c71f56ce
    • spop's avatar
      Fix PR47691: do not abort compilation when code generation fails · 1034b719
      spop authored
      2011-07-27  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/47691
      	* graphite-clast-to-gimple.c (translate_clast_user): Update use of
      	copy_bb_and_scalar_dependences.
      	* sese.c (rename_uses): Do not call gcc_assert.  Set gloog_error.
      	(graphite_copy_stmts_from_block): Update call to rename_uses.
      	(copy_bb_and_scalar_dependences): Update call to
      	graphite_copy_stmts_from_block.
      	* sese.h (copy_bb_and_scalar_dependences): Update declaration.
      
      	* gfortran.dg/graphite/id-pr47691.f: New.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176836 138bc75d-0d04-0410-961f-82ee72b054a4
      1034b719
    • gjl's avatar
      · 7a986272
      gjl authored
      	PR target/49313
      	* config/avr/libgcc.S (__ffshi2): Don't skip 2-word instruction.
      	(__ctzsi2): Result for 0 may be undefined.
      	(__ctzhi2): Result for 0 may be undefined.
      	(__popcounthi2): Don't clobber r30. Use __popcounthi2_tail.
      	(__popcountsi2): Ditto. And don't clobber r26.
      	(__popcountdi2): Ditto. And don't clobber r27.
      	* config/avr/avr.md (UNSPEC_COPYSIGN): New c_enum.
      	(parityhi2): New expand.
      	(paritysi2): New expand.
      	(popcounthi2): New expand.
      	(popcountsi2): New expand.
      	(clzhi2): New expand.
      	(clzsi2): New expand.
      	(ctzhi2): New expand.
      	(ctzsi2): New expand.
      	(ffshi2): New expand.
      	(ffssi2): New expand.
      	(copysignsf3): New insn.
      	(bswapsi2): New expand.
      	(*parityhi2.libgcc): New insn.
      	(*parityqihi2.libgcc): New insn.
      	(*paritysihi2.libgcc): New insn.
      	(*popcounthi2.libgcc): New insn.
      	(*popcountsi2.libgcc): New insn.
      	(*popcountqi2.libgcc): New insn.
      	(*popcountqihi2.libgcc): New insn-and-split.
      	(*clzhi2.libgcc): New insn.
      	(*clzsihi2.libgcc): New insn.
      	(*ctzhi2.libgcc): New insn.
      	(*ctzsihi2.libgcc): New insn.
      	(*ffshi2.libgcc): New insn.
      	(*ffssihi2.libgcc): New insn.
      	(*bswapsi2.libgcc): New insn.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176835 138bc75d-0d04-0410-961f-82ee72b054a4
      7a986272
    • uros's avatar
      * config/i386/i386.c (ix86_expand_move): Do not explicitly check · 675e9361
      uros authored
      	the mode of symbolic_opreand RTXes.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176834 138bc75d-0d04-0410-961f-82ee72b054a4
      675e9361
    • uros's avatar
      * config/i386/predicates.md (x86_64_movabs_operand): Reject · d5979ebe
      uros authored
      	pic32_bit_operand operands.
      	* config/i386/i386.c (ix86_expand_move): Check x86_64_movabs_operand
      	in DImode.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176833 138bc75d-0d04-0410-961f-82ee72b054a4
      d5979ebe
    • uros's avatar
      * gcc.target/i386/avx-os-support.h: New. · c7447c82
      uros authored
      	* gcc.target/i386/avx-check.h: Include avx-os-support.h
      	(main): Check avx_os_support before the test is run.
      	* gcc.target/i386/aes-avx-check.h: Ditto.
      	* gcc.target/i386/pclmul-avx-check.h: Ditto.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176829 138bc75d-0d04-0410-961f-82ee72b054a4
      c7447c82
    • ktietz's avatar
      * config/i386/i386.c (ix86_option_override_internal): Allow -mabi · 05b56dfa
      ktietz authored
              for 32-bit, too.
              (ix86_handle_abi_attribute): Allow function attributes
              ms_abi/sysv_abi in 32-bit mode, too.
              * doc/extend.texi: Adjust attribute documentation.
      
              * gcc.target/i386/aggregate-ret3.c: New test.
              * gcc.target/i386/aggregate-ret4.c: New test.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176828 138bc75d-0d04-0410-961f-82ee72b054a4
      05b56dfa
    • ktietz's avatar
      2011-07-27 Kai Tietz <ktietz@redhat.com> · 08410c65
      ktietz authored
              * gimple-fold.c (or_comparisons_1): Remove TRUTH_AND/OR
              expression handling.
              (and_var_with_comparison_1): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176827 138bc75d-0d04-0410-961f-82ee72b054a4
      08410c65
    • aldyh's avatar
      * params.h (ALLOW_STORE_DATA_RACES): New. · 4bb60ec7
      aldyh authored
      	* params.def (PARAM_ALLOW_STORE_DATA_RACES): New.
      	* Makefile.in (expr.o): Depend on PARAMS_H.
      	* machmode.h (get_best_mode): Add argument.
      	* fold-const.c (optimize_bit_field_compare): Add argument to
      	get_best_mode.
      	(fold_truthop): Same.
      	* ifcvt.c (noce_emit_move_insn): Add argument to store_bit_field.
      	* expr.c (emit_group_store): Same.
      	(copy_blkmode_from_reg): Same.
      	(write_complex_part): Same.
      	(optimize_bitfield_assignment_op): Add argument.
      	Add argument to get_best_mode.
      	(get_bit_range): New.
      	(expand_assignment): Calculate maxbits and pass it down
      	accordingly.
      	(store_field): New argument.
      	(expand_expr_real_2): New argument to store_field.
      	Include params.h.
      	* expr.h (store_bit_field): New argument.
      	* stor-layout.c (get_best_mode): Restrict mode expansion by taking
      	into account maxbits.
      	* calls.c (store_unaligned_arguments_into_pseudos): New argument
      	to store_bit_field.
      	* expmed.c (store_bit_field_1): New argument.  Use it.
      	(store_bit_field): Same.
      	(store_fixed_bit_field): Same.
      	(store_split_bit_field): Same.
      	(extract_bit_field_1): Pass new argument to get_best_mode.
      	(extract_bit_field): Same.
      	* stmt.c (store_bit_field): Pass new argument to store_bit_field.
      	* doc/invoke.texi: Document parameter allow-store-data-races.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176824 138bc75d-0d04-0410-961f-82ee72b054a4
      4bb60ec7
    • dcarrera's avatar
      2011-07-26 Daniel Carrera <dcarrera@gmail.com> · 297effe4
      dcarrera authored
      	PR fortran/49755
      	* trans.c (gfc_allocate_using_malloc): Change function signature.
      	Return nothing. New parameter "pointer". Eliminate temorary variables.
      	(gfc_allocate_using_lib): Ditto.
      	(gfc_allocate_allocatable): Ditto. Update call to gfc_allocate_using_lib
      	and gfc_allocate_using_malloc. Do not free and then reallocate a
      	variable that is already allocated.
      	(gfc_likely): New function. Basedon gfc_unlikely.
      	* trans-array.c (gfc_array_init_size): New parameter "descriptor_block".
      	Instructions to modify the array descriptor are stored in this block
      	while other instructions continue to be stored in "pblock".
      	(gfc_array_allocate): Update call to gfc_array_init_size. Move the
      	descriptor_block so that the array descriptor is only updated if
      	the array was allocated successfully.
      	Update calls to gfc_allocate_allocatable and gfc_allocate_using_malloc.
      	* trans.h (gfc_allocate_allocatable): Change function signature.
      	Function now returns void.
      	(gfc_allocate_using_lib): Ditto, and new function parameter.
      	(gfc_allocate_using_malloc): Ditto.
      	* trans-openmp.c (gfc_omp_clause_default_ctor,
      	gfc_omp_clause_copy_ctor,gfc_trans_omp_array_reduction): Replace a call
      	to gfc_allocate_allocatable with gfc_allocate_using_malloc.
      	* trans-stmt.c (gfc_trans_allocate): Update function calls for
      	gfc_allocate_allocatable and gfc_allocate_using_malloc.
      
      
      
      2011-07-26  Daniel Carrera  <dcarrera@gmail.com>
      
      	PR fortran/49755
      	* gfortran.dg/multiple_allocation_1.f90: Fix test. Allocating an
      	allocated array should *not* change its size.
      	* gfortran.dg/multiple_allocation_3.f90: New test.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176822 138bc75d-0d04-0410-961f-82ee72b054a4
      297effe4
    • jakub's avatar
      * dwarf2out.c (output_macinfo_op): Ensure fd->filename points · f5038a76
      jakub authored
      	to GC allocated copy of the string.
      	(dwarf2out_finish): Emit .debug_macinfo or .debug_macro sections
      	before .debug_line, not after it.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176819 138bc75d-0d04-0410-961f-82ee72b054a4
      f5038a76
    • ktietz's avatar
      2011-07-27 Kai Tietz <ktietz@redhat.com> · cfd7906e
      ktietz authored
              * tree-vrp.c (extract_range_from_binary_expr): Remove
              TRUTH-binary cases and add new bitwise-cases.
              (extract_range_from_assignment): Likewise.
              (register_edge_assert_for_1): Likeiwise.
              (register_edge_assert_for): Likewise.
              (simplify_truth_ops_using_ranges): Likewise.
              (simplify_stmt_using_ranges): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176818 138bc75d-0d04-0410-961f-82ee72b054a4
      cfd7906e
    • gccadmin's avatar
      Daily bump. · 04b4a0bf
      gccadmin authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176816 138bc75d-0d04-0410-961f-82ee72b054a4
      04b4a0bf
  3. 26 Jul, 2011 7 commits
    • hjl's avatar
      Call simplify_gen_subreg for PIC with mode of x. · 7ab44cda
      hjl authored
      2011-07-26  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/47372
      	* config/i386/i386.c (ix86_delegitimize_address): Call
      	simplify_gen_subreg for PIC with mode of x only if modes of
      	x and orig_x are different.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176812 138bc75d-0d04-0410-961f-82ee72b054a4
      7ab44cda
    • jakub's avatar
      * dwarf2out.c (output_macinfo_op): Ensure fd->filename points · 4d29a91a
      jakub authored
      	to GC allocated copy of the string.
      	(dwarf2out_finish): Emit .debug_macinfo or .debug_macro sections
      	before .debug_line, not after it.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176811 138bc75d-0d04-0410-961f-82ee72b054a4
      4d29a91a
    • paolo's avatar
      /cp · ca338b27
      paolo authored
      2011-07-26  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/49776
      	* typeck.c (cp_build_modify_expr): Check digest_init return value
      	for error_mark_node.
      
      /testsuite
      2011-07-26  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/49776
      	* g++.dg/cpp0x/constexpr-49776.C: New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176809 138bc75d-0d04-0410-961f-82ee72b054a4
      ca338b27
    • spop's avatar
      Fix PR47046: correct evolution_function_is_affine_p · 2c8ee7ae
      spop authored
      "Bug 47046 - gcc.target/i386/sse4_1-movntdqa.c ICEs with -fgraphite-identity"
      
      The problem here is that we are left with the following code to be
      translated in the new representation following the transform that
      Graphite has chosen:
      
              D.2709_14 = j_33 * i_32;
              D.2710_15 = D.2709_14 * i_32;
              D.2711_16 = D.2710_15 * sign_34;
              *D.2708_13 = D.2711_16;
      
      In this particular case we have a nonlinear expression "i * i" for
      which we have to generate code following the new graphite_iv variables.
      
      The patch fixes the function that detects whether we are passing non
      linear stuff to graphite: evolution_function_is_affine_p.  It seems
      like for the moment evolution_function_is_affine_p is testing whether
      an evolution function is affine only in the innermost loop, without
      looking recursively at what happens in outer loops.
      
      The chrec for this case is: {0, +, {0, +, {1, +, 2}_1}_1}_2 and we are
      testing whether the evolution is affine only for the loop_2, which is
      true as we have {0, +, blah}_2 with blah invariant in loop_2.
      
      The patch adds the recursive call to evolution_function_is_affine_p.
      
      Bootstrapped and tested on amd64-linux.
      
      2011-07-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/47046
      	* tree-chrec.h (evolution_function_is_affine_p): Recursively call
      	evolution_function_is_affine_p on CHREC_RIGHT.
      
      	* gcc.dg/graphite/id-pr47046.c: New.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176805 138bc75d-0d04-0410-961f-82ee72b054a4
      2c8ee7ae
    • spop's avatar
      Avoid use of lang_hooks.types.type_for_size. · 7d30f431
      spop authored
      2011-07-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-data-ref.c (max_stmt_executions_tree): Do not call
      	lang_hooks.types.type_for_size.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176804 138bc75d-0d04-0410-961f-82ee72b054a4
      7d30f431
    • spop's avatar
      Add testcase for PR47593 · 92978656
      spop authored
      2011-07-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/47653
      	* gcc.dg/graphite/run-id-pr47593.c: New.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176803 138bc75d-0d04-0410-961f-82ee72b054a4
      92978656
    • spop's avatar
      Fix PR47653: do not handle loops using wrapping semantics in graphite · afad2061
      spop authored
      2011-07-26  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/47653
      	* graphite-scop-detection.c (graphite_can_represent_loop): Discard
      	loops using wrapping semantics.
      
      	* gcc.dg/graphite/run-id-pr47653.c: New.
      	* gcc.dg/graphite/interchange-3.c: Do not use unsigned types for
      	induction variables.
      	* gcc.dg/graphite/scop-16.c: Same.
      	* gcc.dg/graphite/scop-17.c: Same.
      	* gcc.dg/graphite/scop-21.c: Same.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176802 138bc75d-0d04-0410-961f-82ee72b054a4
      afad2061