1. 19 Aug, 2010 9 commits
  2. 18 Aug, 2010 18 commits
    • re PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1… · 0fb2f9b1
      re PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1 -funroll-loops -fnon-call-exceptions)
      
      	PR target/45327
      	* config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
      	ix86_binary_operator_ok.
      
      From-SVN: r163357
      Uros Bizjak committed
    • re PR fortran/45290 ([F08] pointer initialization) · 80f95228
      2010-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45290
      	* gfortran.h (gfc_add_save): Modified prototype.
      	* decl.c (add_init_expr_to_sym): Defer checking of proc pointer init.
      	(match_pointer_init): New function to match F08 pointer initialization.
      	(variable_decl,match_procedure_decl,match_ppc_decl): Use
      	'match_pointer_init'.
      	(match_attr_spec): Module variables are implicitly SAVE.
      	(gfc_match_save): Modified call to 'gfc_add_save'.
      	* expr.c (gfc_check_assign_symbol): Extra checks for pointer
      	initialization.
      	* primary.c (gfc_variable_attr): Handle SAVE attribute.
      	* resolve.c (resolve_structure_cons): Add new argument and do pointer
      	initialization checks.
      	(gfc_resolve_expr): Modified call to 'resolve_structure_cons'.
      	(resolve_values): Call 'resolve_structure_cons' directly with init arg.
      	(resolve_fl_variable): Handle SAVE_IMPLICIT.
      	* symbol.c (gfc_add_save,gfc_copy_attr,save_symbol): Handle
      	SAVE_IMPLICIT.
      	* trans-decl.c (gfc_create_module_variable): Module variables with
      	TARGET can already exist.
      	* trans-expr.c (gfc_conv_variable): Check for 'current_function_decl'.
      	(gfc_conv_initializer): Implement non-NULL pointer
      	initialization.
      
      
      2010-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45290
      	* gfortran.dg/proc_ptr_comp_3.f90: Modified.
      	* gfortran.dg/pointer_init_2.f90: New.
      	* gfortran.dg/pointer_init_3.f90: New.
      	* gfortran.dg/pointer_init_4.f90: New.
      
      From-SVN: r163356
      Janus Weil committed
    • i386.md (*add<mode>_1): Split insn to lea. · 21667997
      	* config/i386/i386.md (*add<mode>_1) <TYPE_LEA>: Split insn to lea.
      	<default>:  Swap operands 1 and 2 for alternative 2 to use existing
      	code to output insn mnemonic.  Fix comment.
      	(*addsi_1_zext): Add r-r-0 alternative 1.
      	<TYPE_LEA>: Split insn to lea.
      	<default>: Handle alternative 1.
      	(*addhi_1_lea): Add r-r-0 alternative 2.  Use cond RTX instead of
      	multi-level if_then_else RTX to set "type" attribute.
      	<default>: Handle alternative 2.
      	(*addqi_1_lea): Add q-q-0 alternative 2 and r-r-0 alternative 4.
      	Use cond RTX instead of multi-level if_then_else RTX to set
      	"type" attribute.
      	<default>: Handle alternatives 2 and 4.
      	(lea splitters): Update calls to ix86_lea_for_add_ok.
      
      	* config/i386/i386.c (ix86_lea_for_add_ok): Remove unused "code"
      	argument.
      	* config/i386/i386-protos.h (ix86_lea_for_add_ok): Update prototype.
      
      From-SVN: r163351
      Uros Bizjak committed
    • re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char support) · 9a18b99b
      2010-08-18  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/45295
              * intrinsic.texi (selected_char_kind): Document ISO_10646
              support.
      
      From-SVN: r163347
      Tobias Burnus committed
    • re PR c++/45049 (ICE: tree check: expected tree that contains 'decl minimal'… · c043ee4a
      re PR c++/45049 (ICE: tree check: expected tree that contains 'decl minimal' structure, have 'tree_list' in push_overloaded_decl, at cp/name-lookup.c:2160)
      
      gcc/cp/
      	PR c++/45049
      	* name-lookup.c (push_overloaded_decl): Change DECL_CHAIN to
      	TREE_CHAIN.
      
      gcc/testsuite/
      	PR c++/45049
      	* g++.dg/pr45049-1.C: New test.
      	* g++.dg/pr45049-2.C: New test.
      
      From-SVN: r163344
      Nathan Froyd committed
    • re PR libstdc++/45276 (Need to document _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE) · 3ff91293
      2010-08-18  Kostya Serebryany <kcc@google.com>
      	    Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/45276
      	* doc/xml/manual/debug.xml ([debug.races]): Add.
      
      Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
      
      From-SVN: r163342
      Kostya Serebryany committed
    • builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to 20 if __ARM_PCS is defined otherwise 64. · 1027c9c5
      	* gcc.dg/builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to
      	20 if __ARM_PCS is defined otherwise 64.
      	(bar): Use STACK_ARGUMENTS_SIZE for the third argument
      	instead of hard coded 64.
      
      From-SVN: r163341
      Jie Zhang committed
    • tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts, use operand helpers. · 480161b5
      2010-08-18  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts,
      	use operand helpers.
      
      From-SVN: r163340
      Richard Guenther committed
    • Expand pending pops before trying the optab. · e5f5fa2d
      2010-08-18  Paolo Bonzini  <bonzini@gnu.org>
      
      	PR middle-end/45292
      	* optabs.c (expand_bool_compare_and_swap): Expand pending
      	pops before trying the optab.
      
      From-SVN: r163339
      Paolo Bonzini committed
    • re PR target/45094 ([arm] wrong instructions for dword move in some cases) · 8019fcfb
      gcc/
              PR target/45094
              * config/arm/arm.c (output_move_double): Fix typo generating 
              instructions ('ldr'->'str').
      
      gcc/testsuite/
      
              PR target/45094
              * gcc.target/arm/pr45094.c: New test.
      
      From-SVN: r163338
      Yao Qi committed
    • * gcc.target/arm/mla-1.c: Use thumb-friendly architecture. · 38e3c1e1
      From-SVN: r163335
      Maxim Kuvyrkov committed
    • re PR rtl-optimization/42575 (arm-eabi-gcc 64-bit multiply weirdness) · c701e857
      	gcc/
      	PR rtl-optimization/42575
      	* optabs.c (expand_doubleword_mult): Generate new pseudos to shorten
      	live ranges.
      
      	gcc/testsuite/
      	PR rtl-optimization/42575
      	* gcc.target/pr42575.c: New test.
      
      From-SVN: r163334
      Maxim Kuvyrkov committed
    • test cse for emulated TLS targets. · 63d90a96
      	* lib/target-supports.exp (check_effective_target_tls_emulated): New.
      	* gcc.dg/tls/thr-cse-1.c: New.
      
      From-SVN: r163330
      Iain Sandoe committed
    • configure.ac (THREADLIBS): Don't set on Darwin. · 618d4830
      
      2010-08-18  Jack Howarth <howarth@bromo.med.uc.edu>
      
      	    * libjava/configure.ac (THREADLIBS): Don't set on Darwin.
      	    (THREADSPEC): Likwise.
      	    * libjava/configure: Regenerate.
      	    * libjava/Makefile.am: Define LIBJAVA_LDFLAGS_LIBMATH as
      	    -lm only if USING_DARWIN_CRT undefined.
      	    (libgcj_tools_la_LIBADD): Replace '-lm' with $(LIBJAVA_LDFLAGS_LIBMATH).
      	    * libjava/Makefile.in: Regenerate.
      
      From-SVN: r163329
      Jack Howarth committed
    • For Marcus - Implement sync primitives inline for ARM. · 029e79eb
      2010-08-18  Marcus Shawcroft  <marcus.shawcroft@arm.com>
      
      	* config/arm/arm-protos.h (arm_expand_sync): New.
      	(arm_output_memory_barrier, arm_output_sync_insn): New.
      	(arm_sync_loop_insns): New.
      	* config/arm/arm.c (FL_ARCH7): New.
      	(FL_FOR_ARCH7): Include FL_ARCH7.
      	(arm_arch7): New.
      	(arm_print_operand): Support %C markup.
      	(arm_legitimize_sync_memory): New.
      	(arm_emit, arm_insn_count, arm_count, arm_output_asm_insn): New.
      	(arm_process_output_memory_barrier, arm_output_memory_barrier): New.
      	(arm_ldrex_suffix, arm_output_ldrex, arm_output_strex): New.
      	(arm_output_op2, arm_output_op3, arm_output_sync_loop): New.
      	(arm_get_sync_operand, FETCH_SYNC_OPERAND): New.
      	(arm_process_output_sync_insn, arm_output_sync_insn): New.
      	(arm_sync_loop_insns,arm_call_generator, arm_expand_sync): New.
      	* config/arm/arm.h (struct arm_sync_generator): New.
      	(TARGET_HAVE_DMB, TARGET_HAVE_DMB_MCR): New.
      	(TARGET_HAVE_MEMORY_BARRIER): New.
      	(TARGET_HAVE_LDREX, TARGET_HAVE_LDREXBHD): New.
      	* config/arm/arm.md: Include sync.md.
      	(UNSPEC_MEMORY_BARRIER): New.
      	(VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK): New.
      	(VUNSPEC_SYNC_OP):New.
      	(VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): New.
      	(sync_result, sync_memory, sync_required_value): New attributes.
      	(sync_new_value, sync_t1, sync_t2): Likewise.
      	(sync_release_barrier, sync_op): Likewise.
      	(length): Add logic to length attribute defintion to call
      	arm_sync_loop_insns when appropriate.
      	* config/arm/sync.md: New file.
      
      From-SVN: r163327
      Marcus Shawcroft committed
    • re PR debug/42487 (FAIL: gcc.dg/debug/dwarf2/aranges-fnsec-1.c scan-assembler DW_AT_ranges) · 257f5167
      
      	PR debug/42487
      	* lib/target-supports.exp
      	(check_effective_target_function_sections): New.
      	* gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Check that the target supports
      	function sections before proceding.
      
      From-SVN: r163326
      Iain Sandoe committed
    • Daily bump. · 566ea2d1
      From-SVN: r163323
      GCC Administrator committed
  3. 17 Aug, 2010 13 commits