1. 09 Sep, 2010 11 commits
    • [multiple changes] · 3a207e62
      2010-09-09  Pascal Obry  <obry@adacore.com>
      
      	* gnat_ugn.texi: Update doc on windows related topics.
      
      2010-09-09  Geert Bosch  <bosch@adacore.com>
      
      	* s-fatgen.adb: Update comments.
      
      From-SVN: r164054
      Arnaud Charlet committed
    • [multiple changes] · edb740aa
      2010-09-09  Robert Dewar  <dewar@adacore.com>
      
      	* par-ch4.adb (Box_Error): New procedure.
      
      2010-09-09  Thomas Quinot  <quinot@adacore.com>
      
      	* sem.adb: Minor reformatting.
      
      2010-09-09  Pascal Obry  <obry@adacore.com>
      
      	* prj-env.adb: Style fix, use /and then/ and /or else/.
      	* gnat_ugn.texi: Fix typos.
      
      From-SVN: r164053
      Arnaud Charlet committed
    • re PR fortran/43665 (INTENT(IN) etc. optimization of calls: function annotations… · 1a14a58c
      re PR fortran/43665 (INTENT(IN) etc. optimization of calls: function annotations for noclobber/noescape arguments)
      
      2010-09-09  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/43665
              * intrincic.texi (FGET, FGETC, FPUT, FPUTC, FSTAT, GETCWD, KILL,
              STAT): Show also syntax for the function version.
              * intrinsic.c (add_sym_1s_intent, add_sym_2s_intent,
               add_sym_3s_intent): Remove function.
              (add_sym_1s, add_sym_2s, add_sym_3s): Take always the intent
              as argument.
              (add_sym_2_intent): New function.
              (add_functions): Set intent for functions which modify
              the argument: fstat, fgetc, fget, hostnm, lstat, stat. Change
              argument name of hostnm from "a" to "c"
              (add_subroutines): Change add_sym_*s_intent to
              add_sym_*s and add intent to the add_sym_*s calls.
      
      From-SVN: r164052
      Tobias Burnus committed
    • re PR c++/45588 (unused-but-set-variable false trigger building gold) · e8e399c3
      	PR c++/45588
      	* pt.c (tsubst) <case INTEGER_TYPE>: Call mark_rvalue_use
      	before calling fold_decl_constant_value.
      
      	* g++.dg/warn/Wunused-var-15.C: New test.
      
      From-SVN: r164051
      Jakub Jelinek committed
    • rtl.def (DEBUG_IMPLICIT_PTR): New rtl code. · c8a27c40
      	* rtl.def (DEBUG_IMPLICIT_PTR): New rtl code.
      	* rtl.h (DEBUG_IMPLICIT_PTR_DECL): Define.
      	* rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle DEBUG_IMPLICIT_PTR.
      	* print-rtl.c (print_rtx): Likewise.
      	* cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise.
      	* cfgexpand.c (expand_debug_expr): Generate DEBUG_IMPLICIT_PTR
      	for ADDR_EXPR with non-addressable object.
      	* dwarf2out.c (enum dw_val_class): Add dw_val_class_decl_ref.
      	(struct dw_val_struct): Add v.val_decl_ref.
      	(dwarf_stack_op_name, output_loc_operands, output_loc_operands_raw):
      	Handle DW_OP_GNU_implicit_pointer.
      	(size_of_loc_descr): Likewise.  Fix up DW_OP_call_ref size.
      	(get_ref_die_offset_label): New function.
      	(implicit_ptr_descriptor): New function.
      	(mem_loc_descriptor): Handle DEBUG_IMPLICIT_PTR.
      	(loc_descriptor): Likewise.
      	(gen_variable_die): Put even definitions into decl_die_table.
      	(resolve_addr_in_expr): Resolve still unresolved
      	DW_OP_GNU_implicit_pointer operands, if it can't be resolved
      	return false.
      	(dwarf2out_finish): Call output_location_lists after outputting
      	.debug_info and .debug_abbrev instead of before.
      
      	* dwarf2.h (DW_OP_GNU_implicit_pointer): New.
      
      2010-09-09  Roland McGrath  <roland@redhat.com>
      
      	* dwarf2out.c (DWARF_REF_SIZE): Define.
      	(size_of_loc_descr): Use it for DW_OP_call_ref.
      
      From-SVN: r164050
      Jakub Jelinek committed
    • Fix paths · eed023cc
      From-SVN: r164048
      Eric Botcazou committed
    • missed hunk from last commit · 1a11507a
      From-SVN: r164046
      Alan Modra committed
    • invoke.text: Reinstate mcmodel=medium. · 5a79bcc4
      	* doc/invoke.text: Reinstate mcmodel=medium.
      	* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
      	CMODEL_MEDIUM as default.
      	* config/rs6000/rs6000.h (enum rs6000_cmodel): Add CMODEL_MEDIUM.
      	* config/rs6000/rs6000.c (rs6000_handle_option): Add mcmodel=medium.
      	(toc_relative_ok, offsettable_ok_by_alignment): New functions.
      	(rs6000_emit_move): Reinstate mcmodel=medium optimization.
      
      From-SVN: r164045
      Alan Modra committed
    • Wunused-var-12.c: Add -fno-common to options on 32-bit hppa*-*-hpux*. · f5b281c0
      	* c-c++-common/Wunused-var-12.c: Add -fno-common to options on 32-bit
      	hppa*-*-hpux*.
      
      From-SVN: r164044
      John David Anglin committed
    • Daily bump. · c71cc324
      From-SVN: r164041
      GCC Administrator committed
    • lto.c (real_file_count, [...]): New static vars. · 098a4f50
      
      	* lto.c (real_file_count, real_file_decl_data): New static vars.
      	(read_cgraph_and_symbols): Use it.
      
      From-SVN: r164037
      Jan Hubicka committed
  2. 08 Sep, 2010 29 commits
    • re PR target/45250 (FAIL:… · bc707992
      re PR target/45250 (FAIL: tr1/5_numerical_facilities/special_functions/01_assoc_laguerre/check_nan.cc)
      
      	PR target/45250
      	* config/pa/pa.md (nonlocal_goto): Restore hard frame pointer using
      	hard_frame_pointer_rtx instead of virtual_stack_vars_rtx.
      	(builtin_longjmp): Likewise.
      	(allocate_stack): Use hard_frame_pointer_rtx instead of
      	frame_pointer_rtx.
      	* config/pa/pa-protos.h (pa_initial_elimination_offset): Declare.
      	* config/pa/pa.c (pa_internal_arg_pointer): Declare.
      	(pa_can_eliminate): Likewise.
      	(TARGET_INTERNAL_ARG_POINTER): Define.
      	(TARGET_CAN_ELIMINATE): Define.
      	(hppa_expand_prologue): Use hard frame pointer instead of soft frame
      	pointer.
      	(hppa_expand_epilogue, pa_eh_return_handler_rtx): Likewise.
      	(pa_internal_arg_pointer, pa_can_eliminate,
      	pa_initial_elimination_offset): New.
      	* config/pa/pa.h (FRAME_POINTER_REGNUM): Set to new general register.
      	(HARD_FRAME_POINTER_REGNUM): Set to register three.
      	(INITIAL_FRAME_POINTER_OFFSET): Delete.
      	(ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET, DWARF_FRAME_REGISTERS):
      	Define.
      	(DWARF_ALT_FRAME_RETURN_COLUMN, REGNO_OK_FOR_INDEX_P,
      	REGNO_OK_FOR_BASE_P): Update to include soft frame pointer.
      	* config/pa/pa32-regs.h (FIRST_PSEUDO_REGISTER): Increase by one.
      	(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER,
      	REG_CLASS_CONTENTS, REGNO_REG_CLASS, REGISTER_NAMES): Update to include
      	new soft frame pointer.
      	* config/pa/pa64-regs.h: Likewise.
      
      From-SVN: r164036
      John David Anglin committed
    • * config/i386/i386.h (EH_RETURN_DATA_REGNO) Use DX_REG instead of · 2824d6e5
      	numerical constant.
      	(EH_RETURN_STACKADJ_RTX): Use CX_REG insted of numerical constant.
      
      From-SVN: r164033
      Uros Bizjak committed
    • re PR debug/45531 (-fcompare-debug failure with -fvar-tracking-uninit, codegen differences) · c485684d
      PR debug/45531
      * cfglayout.c (fixup_reorder_chain): Skip debug insns.
      
      From-SVN: r164032
      Alexandre Oliva committed
    • re PR debug/45419 (-fcompare-debug failure at -O3) · 359bea1d
      PR debug/45419
      PR debug/45408
      * tree-pretty-print.c (dump_generic_node): Disregard top-level
      qualifiers in otherwise equal MEM_REF pointer types.
      * fold-const.c (operand_equal_p): Compare pointer type of MEM_REFs.
      * tree.c (iterative_hash_expr): Hash the pointer type of MEM_REFs.
      
      From-SVN: r164031
      Alexandre Oliva committed
    • re PR target/44392 (libgcc compile with --enable-target-optspace (-Os) causes… · 0a7822a3
      re PR target/44392 (libgcc compile with --enable-target-optspace (-Os) causes recursion in __bswapsi2)
      
      2010-09-08  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	PR target/44392
      	* config/arm/arm.md (bswapsi2): Handle condition correctly
      	for armv6 and optimize_size.
      
      From-SVN: r164029
      Ramana Radhakrishnan committed
    • Reindented comment · 03dbada4
      From-SVN: r164026
      Nicola Pero committed
    • Fixed typo in ChangeLog date in one of my last commits · 5c0b0c75
      From-SVN: r164025
      Nicola Pero committed
    • throw-nil.m: New test. · 2023bba8
      	* objc/execute/exceptions/throw-nil.m: New test.
      	* objc/execute/exceptions/handler-1.m: Updated to use the new
      	objc_set_uncaught_exception_handler() function.
      	* objc/execute/exceptions/matcher-1.m: New test.
      
      From-SVN: r164024
      Nicola Pero committed
    • objc-exception.h: New file. · e30511ed
      	* objc/objc-exception.h: New file.
      	* exception.c (objc_set_uncaught_exception_handler): Implemented.
      	(objc_set_exception_matcher): Implemented.
      	(objc_exception_throw): Use the uncaught exception handler if set.
      	(PERSONALITY_FUNCTION): Use the exception matcher instead of the
      	hardcoded isKindOf.
      	(isKindOf): Renamed to is_kind_of_exception_matcher.  Tidied code
      	up.  Removed segmentation fault when value is 'nil'.
      	* objc/objc-api.h (_objc_unexpected_exception): Mark as
      	deprecated.
      	* Makefile.in (exception.lo, exception_gc.lo): Use
      	-Wno-deprecated-declarations when compiling.
      	(OBJC_H): Added objc-exception.h
      
      From-SVN: r164023
      Nicola Pero committed
    • re PR other/18555 (-isysroot is miss-documented) · 2bfef1ad
              PR other/18555
              * doc/cppopts.texi (-isysroot): Document Darwin behaviour.
      
      From-SVN: r164022
      Francois-Xavier Coudert committed
    • re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG) · 88a95a11
      	PR fortran/38282
      
      	* intrinsic.c (add_functions): Add B{G,L}{E,T}, DSHIFT{L,R},
      	MASK{L,R}, MERGE_BITS and SHIFT{A,L,R}.
      	* gfortran.h: Define ISYM values for above intrinsics.
      	* intrinsic.h (gfc_check_bge_bgt_ble_blt, gfc_check_dshift,
      	gfc_check_mask, gfc_check_merge_bits, gfc_check_shift,
      	gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble,
      	gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr,
      	gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr,
      	gfc_simplify_merge_bits, gfc_simplify_rshift,
      	gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr,
      	gfc_resolve_dshift, gfc_resolve_mask, gfc_resolve_merge_bits,
      	gfc_resolve_shift): New prototypes.
      	* iresolve.c (gfc_resolve_dshift, gfc_resolve_mask,
      	gfc_resolve_merge_bits, gfc_resolve_shift): New functions.
      	* check.c (gfc_check_bge_bgt_ble_blt, gfc_check_dshift,
      	gfc_check_mask, gfc_check_merge_bits, gfc_check_shift): New
      	functions.
      	* trans-intrinsic.c (gfc_conv_intrinsic_dshift,
      	gfc_conv_intrinsic_bitcomp, gfc_conv_intrinsic_shift,
      	gfc_conv_intrinsic_merge_bits, gfc_conv_intrinsic_mask): New
      	functions.
      	(gfc_conv_intrinsic_function): Call above static functions.
      	* intrinsic.texi: Document new intrinsics.
      	* simplify.c (gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble,
              gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr,
              gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr,
              gfc_simplify_merge_bits, gfc_simplify_rshift, 
              gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr):
      	New functions.
      
      	* gfortran.dg/bit_comparison_1.F90: New test.
      	* gfortran.dg/leadz_trailz_3.f90: New test.
      	* gfortran.dg/masklr_2.F90: New test.
      	* gfortran.dg/shiftalr_1.F90: New test.
      	* gfortran.dg/merge_bits_2.F90: New test.
      	* gfortran.dg/dshift_2.F90: New test.
      	* gfortran.dg/bit_comparison_2.F90: New test.
      	* gfortran.dg/masklr_1.F90: New test.
      	* gfortran.dg/merge_bits_1.F90: New test.
      	* gfortran.dg/dshift_1.F90: New test.
      	* gfortran.dg/shiftalr_2.F90: New test.
      
      From-SVN: r164021
      Francois-Xavier Coudert committed
    • type-stream-1.m: Replaced with a test that tests that functions from objc/typedstream.h are... · bd72fc7c
              * objc.dg/type-stream-1.m: Replaced with a test that tests that
              functions from objc/typedstream.h are deprecated.
      
      From-SVN: r164016
      Nicola Pero committed
    • typedstream.h: Deprecate all functions in the file. · 4470254f
              * objc/typedstream.h: Deprecate all functions in the file.  This
              file is obsolete.
              * objc/Object.h ([+streamVersion:], [-read:], [-write:],
              [-awake]): Documented that these methods are deprecated.  Added a
              brief description of the Object class and its relationship to the
              NSObject class.
              * Makefile.in: Compile archive.c and Object.m with
              -Wno-deprecated-declarations.
      
      From-SVN: r164015
      Nicola Pero committed
    • i386-protos.h (ix86_can_use_return_insn_p, [...]): Change function prototype to bool. · 19ed9d7b
      	* config/i386/i386-protos.h (ix86_can_use_return_insn_p,
      	symbolic_reference_mentioned_p, ix86_expand_movmem, ix86_expand_setmem,
      	ix86_expand_strlen, legitimate_pic_address_disp_p,
      	ix86_binary_operator_ok, ix86_unary_operator_ok, ix86_match_ccmode,
      	ix86_expand_int_movcc, ix86_expand_fp_movcc, ix86_expand_int_addcc,
      	ix86_check_movabs, ix86_secondary_memory_needed): Change function
      	prototype to bool.
      	* config/i386/i386.c (return_in_memory_32, return_in_memory_64,
      	return_in_memory_ms_64, ix86_check_movabs,
      	symbolic_reference_mentioned_p, ix86_can_use_return_insn_p,
      	legitimate_pic_address_disp_p, ix86_binary_operator_ok,
      	ix86_unary_operator_ok, ix86_match_ccmode, ix86_expand_int_movcc,
      	ix86_expand_fp_movcc, ix86_expand_int_addcc, ix86_expand_movmem,
      	ix86_expand_setmem, ix86_expand_strlen, inline_secondary_memory_needed,
      	ix86_secondary_memory_needed): Change to bool.  Return
      	true and false values.
      	* config/i386/i386.md: Return true and false values.
      
      From-SVN: r164013
      Uros Bizjak committed
    • sourcebuild.texi (Effective-Target Keywords): Document run_expensive_tests. · 0fa3d594
      	gcc:
      	* doc/sourcebuild.texi (Effective-Target Keywords): Document
      	run_expensive_tests.
      
      	gcc/testsuite:
      	* lib/target-supports.exp
      	(check_effective_target_run_expensive_tests): New proc.
      	* gcc.c-torture/compile/limits-fnargs.c: Use
      	dg-require-effective-target run_expensive_tests.
      
      From-SVN: r164012
      Rainer Orth committed
    • toplev.c (output_stack_usage): Use lbasename instead of basename. · 86923f6e
      	* toplev.c (output_stack_usage): Use lbasename instead of
      	basename.
      
      From-SVN: r164010
      Rainer Orth committed
    • re PR other/45443 (GCC documentation for -O3 flag doesn't mention -fipa-cp-clone) · da1cc2e4
      2010-09-08  Martin Jambor  <mjambor@suse.cz>
      
      	PR other/45443
      	* doc/invoke.texi: Add -fipa-cp-clone to list of switches turned on
      	at -O3.
      
      From-SVN: r164009
      Martin Jambor committed
    • re PR fortran/45597 (ICE: in gfc_trans_cycle, at fortran/trans-stmt.c:4320) · 7602cb87
      	PR fortran/45597
      	* trans-openmp.c (gfc_trans_omp_do): Store exit/cycle labels on code
      	instead of code->block.
      
      	* gfortran.dg/gomp/pr45597.f90: New test.
      
      From-SVN: r164005
      Jakub Jelinek committed
    • re PR fortran/45595 (segfault on omp collapse) · 9c2934f4
      	PR fortran/45595
      	* openmp.c (resolve_omp_do): Report not enough do loops for
      	collapse even if block->next is NULL.
      
      	* gfortran.dg/gomp/pr45595.f90: New test.
      
      From-SVN: r164004
      Jakub Jelinek committed
    • * c-c++-common/uninit-17.c: Adjust. · 42a3beeb
      From-SVN: r164002
      Michael Matz committed
    • gimple.c (gimple_types, [...]): Move to GC memory. · 0f443ad0
      2010-09-08  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.c (gimple_types, type_hash_cache): Move to GC memory.
      	(visit): Adjust.
      	(iterative_hash_gimple_type): Likewise.
      	(gimple_type_hash): Likewise.
      	(gimple_register_type): Likewise.
      	(print_gimple_types_stats): Likewise.
      	(free_gimple_type_tables): Likewise.
      
      	lto/
      	* lto.c (read_cgraph_and_symbols): Collect again after each
      	file.
      
      From-SVN: r164001
      Richard Guenther committed
    • Forgot to correct typo before committing last change. · 813f2f13
      From-SVN: r164000
      Michael Matz committed
    • re PR tree-optimization/43430 (Missed vectorization: "stmt not supported: cond_expr") · a855b1b1
      	PR tree-optimization/43430
      	* tree-vect-stmts.c (vectorizable_condition): Support multiple
      	copies for conditional statements if it's not part of a reduction.
      
      testsuite/
      	PR tree-optimization/43430
      	* gcc.dg/vect/pr43430-2.c: New test.
      
      From-SVN: r163999
      Michael Matz committed
    • re PR tree-optimization/33244 (Missed opportunities for vectorization) · 3834917d
      	PR tree-optimization/33244
      	* tree-ssa-sink.c (statement_sink_location): Don't sink into
      	empty loop latches.
      
      testsuite/
      	PR tree-optimization/33244
      	* gfortran.dg/vect/fast-math-vect-8.f90: New test.
      
      From-SVN: r163998
      Michael Matz committed
    • re PR tree-optimization/45578 (The polyhedron test mdbx is miscompiled with -O2… · b5c878a5
      re PR tree-optimization/45578 (The polyhedron test mdbx is miscompiled with -O2 -ftree-vectorize at revision 163915)
      
      2010-09-08  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/45578
      	* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr):
      	Be more careful when transfering alignment information to
      	the new induction variable.
      	(copy_ref_info): Likewise.
      
      	* gfortran.dg/pr45578.f90: New testcase.
      
      From-SVN: r163997
      Richard Guenther committed
    • Removed obsolete intermediate threading layer. · 88a2722e
      	* thr.c: Use __gthread_objc_xxx functions directly instead of
      	__objc_thread_xxx ones.
      	* objc/thr.h: Removed prototypes of no longer existing
      	__objc_thread_xxx functions.
      	* Makefile.in: Removed thr-objc.lo.
      	* thr-dce.c: File removed.
      	* thr-decosf1.c: File removed.
      	* thr-irix.c: File removed.
      	* thr-mach.c: File removed.
      	* thr-objc.c: File removed.
      	* thr-os2.c: File removed.
      	* thr-posix.c: File removed.
      	* thr-pthreads.c: File removed.
      	* thr-rtems.c: File removed.
      	* thr-single.c: File removed.
      	* thr-solaris.c: File removed.
      	* thr-vxworks.c: File removed.
      	* thr-win32.c: File removed.
      	* README.threads: File removed.
      	* THREADS.MACH: File removed.
      	* THREADS: Updated.
      
      From-SVN: r163996
      Nicola Pero committed
    • re PR testsuite/45590 (FAIL: gcc.dg/graphite/pr44391.c: unrecognized command line option '-m32') · 0db1920c
      2010-09-08  Richard Guenther  <rguenther@suse.de>
      
      	PR testsuite/45590
      	* gcc.dg/graphite/pr44391.c: Remove -m32 option.
      
      From-SVN: r163995
      Richard Guenther committed
    • tree.h (TYPE_ORIG_SIZE_TYPE): Remove. · 1814522d
      2010-09-08  Richard Guenther  <rguenther@suse.de>
      
      	* tree.h (TYPE_ORIG_SIZE_TYPE): Remove.
      	* c-typeck.c (comptypes_internal): Remove TYPE_ORIG_SIZE_TYPE
      	checks.
      
      From-SVN: r163994
      Richard Guenther committed