1. 01 Sep, 2010 13 commits
    • i386.h (enum ix86_tune_indices): Rename from X86_TUNE_ADD_ESP_4. · d8b08ecd
      	* config/i386/i386.h (enum ix86_tune_indices) <X86_TUNE_SINGLE_POP>:
      	Rename from X86_TUNE_ADD_ESP_4.
      	<IX86_TUNE_DOUBLE_POP>: Rename from X86_TUNE_ADD_ESP_8.
      	<IX86_TUNE_SINGLE_PUSH>: Rename from X86_TUNE_SUB_ESP_4.
      	<IX86_TUNE_DOUBLE_PUSH>: Rename from X86_TUNE_SUB_ESP_8.
      	(TARGET_SINGLE_POP): Rename from TARGET_ADD_ESP_4.
      	(TARGET_DOUBLE_POP): Rename from TARGET_ADD_ESP_8.
      	(TARGET_SINGLE_PUSH): Rename from TARGET_SUB_ESP_4.
      	(TARGET_DOUBLE_POP): Rename from TARGET_SUB_ESP_8.
      	* config/i386/i386.c (initial_ix86_tune_features)
      	<X86_TUNE_SINGLE_POP>: Invert members.
      	<X86_TUNE_DOUBLE_POP>: Ditto.
      	<X86_TUNE_SINGLE_PUSH>: Ditto.
      	<X86_TUNE_DOUBLE_PUSH>: Ditto.
      	* config/i386/i386.md (*pop<mode>1): Rename from pop<mode>1.
      	No longer exported.
      	(push peephole2 patterns): Macroize peepholes using P mode iterator.
      	Adjust for renamed TARGET_{SINGLE,DOUBLE}_PUSH defines.
      	(pop peephole2 patterns): Macroize peepholes using P mode iterator.
      	Adjust for renamed TARGET_{SINGLE,DOUBLE}_POP defines.
      
      From-SVN: r163732
      Uros Bizjak committed
    • gimplify.c (gimplify_init_constructor): Do not create a temporary for a volatile LHS if... · 558af7ca
      	* gimplify.c (gimplify_init_constructor): Do not create a temporary for
      	a volatile LHS if the constructor has only one element.
      
      From-SVN: r163727
      Eric Botcazou committed
    • re PR bootstrap/45321 (ARM bootstrap failure due to stdarg_p change) · 6e0833db
      2010-09-01  Mikael Pettersson  <mikpe@it.uu.se>
      
             PR bootstrap/45321
             * tree.c (stdarg_p): Make fntype parameter const.
             * tree.h (stdarg_p): Likewise.
             (function_args_iterator): Remove unused fntype field.
             (function_args_iter_init): Do not initialize fntype
             field.  Make fntype parameter const.
      
      From-SVN: r163726
      Mikael Pettersson committed
    • bootstrap-lto.mk (STAGE2_CFLAGS, [...]): Change to -fwhopr=jobserver… · c9615491
      bootstrap-lto.mk (STAGE2_CFLAGS, [...]): Change to -fwhopr=jobserver -fuse-linker-plugin -frandom-seed=1.
      
      2010-09-01  Andi Kleen  <ak@linux.intel.com>
      
              * bootstrap-lto.mk (STAGE2_CFLAGS, STAGE3_CFLAGS): Change
              to -fwhopr=jobserver -fuse-linker-plugin -frandom-seed=1.
      
      From-SVN: r163725
      Andi Kleen committed
    • tree-vrp.c (adjust_range_with_scev): Use number of iteration estimate. · e3488283
      2010-09-01  Richard Guenther  <rguenther@suse.de>
      
      	* tree-vrp.c (adjust_range_with_scev): Use number of iteration
      	estimate.
      	(vrp_visit_phi_node): Delay using SCEV till we balloon the
      	range.
      	(execute_vrp): Compute number of iteration estimates.
      	* cfgloop.h (estimate_numbers_of_iterations_loop): Adjust prototype.
      	* tree-flow.h (estimate_numbers_of_iterations): Likewise.
      	* tree-data-ref.c (estimated_loop_iterations): Adjust.
      	* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
      	Infer loop bounds from undefined behavior based on a new
      	parameter.
      	(estimate_numbers_of_iterations): Likewise.
      	(scev_probably_wraps_p): Adjust.
      	* tree-ssa-loop.c (tree_ssa_loop_bounds): Likewise.
      
      	* gcc.dg/vect/vect-outer-fir.c: Adjust.
      	* gcc.dg/tree-ssa/vrp54.c: New testcase.
      	* gcc.c-torture/execute/20100827-1.c: Likewise.
      
      From-SVN: r163724
      Richard Guenther committed
    • trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Resize array quad_decls. · eacbdaaa
      	* trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Resize
      	array quad_decls. Remove unnecessary assignment.
      
      From-SVN: r163723
      Francois-Xavier Coudert committed
    • stormy16.c: Use REG_P, MEM_P and CONST_INT_P where appropriate. · a21eaf5e
              * config/stormy16/stormy16.c: Use REG_P, MEM_P and CONST_INT_P
              where appropriate.
              (xstormy16_legitimate_address_p): Use true and false instead of 1
              and 0.
              (xstormy16_expand_prologue): Delete unused local variable 'insn'.
              (xstormy16_function_arg): Use FIRST_ARGUMENT_REGNUM in place of
              magic constant 2.
              (xstormy16_expand_call): Fix comment at start of function.
      
      From-SVN: r163722
      Nick Clifton committed
    • trans-expr.c (gfc_conv_power_op): Handle floating-point types other than long double. · 166d08bd
      	* trans-expr.c (gfc_conv_power_op): Handle floating-point types
      	other than long double.
      	* mathbuiltins.def: Add builtins from the POW and CPOW family.
      	* trans.h (gfc_builtin_decl_for_float_kind): New prototype.
      	* trans-intrinsic.c (gfc_builtin_decl_for_float_kind): Add gfc_
      	prefix to function name.
      	(gfc_build_intrinsic_lib_fndecls): Add cpow prototype.
      	(gfc_conv_intrinsic_aint): Use gfc_builtin_decl_for_float_kind
      	function name.
      	(gfc_conv_intrinsic_exponent): Likewise.
      	(gfc_conv_intrinsic_abs): Likewise.
      	(gfc_conv_intrinsic_mod): Likewise.
      	(gfc_conv_intrinsic_sign): Likewise.
      	(gfc_conv_intrinsic_arith): Likewise.
      	(gfc_conv_intrinsic_fraction): Likewise.
      	(gfc_conv_intrinsic_nearest): Likewise.
      	(gfc_conv_intrinsic_spacing): Likewise.
      	(gfc_conv_intrinsic_rrspacing): Likewise.
      	(gfc_conv_intrinsic_scale): Likewise.
      	(gfc_conv_intrinsic_set_exponent): Likewise.
      
      From-SVN: r163721
      Francois-Xavier Coudert committed
    • rx.c (rx_expand_prologue): Do not adjust frame size when pushing accumulator register. · e14ca1ce
              * config/rx/rx.c (rx_expand_prologue): Do not adjust frame size
              when pushing accumulator register.
              (rx_get_stack_layout): Always save call clobbered registers inside
              interrupt handlers.
              * config/rx/rx-modes.def: Fix descriptive comment at start of file.
      
      From-SVN: r163720
      Nick Clifton committed
    • intrinsic.c: Add EXECUTE_COMMAND_LINE intrinsic. · c14c8155
      	* intrinsic.c: Add EXECUTE_COMMAND_LINE intrinsic.
      	* intrinsic.h (gfc_resolve_execute_command_line): New function.
      	* iresolve.c (gfc_resolve_execute_command_line): New function.
      	* gfortran.h (GFC_ISYM_EXECUTE_COMMAND_LINE): New value.
      	* intrinsic.texi: Document EXECUTE_COMMAND_LINE.
      
      	* intrinsics/execute_command_line.c: New file.
      	* gfortran.map (_gfortran_execute_command_line_i4,
      	_gfortran_execute_command_line_i8): New symbols.
      	* Makefile.am: Add new file intrinsics/execute_command_line.c.
      	* Makefile.in: Regenerated.
      
      	* gfortran.dg/execute_command_line_1.f90: New test.
      
      From-SVN: r163719
      Francois-Xavier Coudert committed
    • config.gcc (i[34567]86-*-freebsd*, [...]): Add i386/t-fprules-softfp and… · d78552bd
      config.gcc (i[34567]86-*-freebsd*, [...]): Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
      
      gcc/ChangeLog:
      
      	* config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
      	i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
      
      	* libgcc-std.ver (GCC_4.6.0): Define version.
      
      libgcc/ChangeLog:
      
      	* config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
      	i386/t-freebsd to tmake_file.
      	* config/i386/t-freebsd: New file.
      	* config/i386/libgcc-bsd.ver: New file.
      
      From-SVN: r163718
      Uros Bizjak committed
    • * f95-lang.c: Fix comment: POPAR -> POPPAR. · 451238b7
      From-SVN: r163717
      Uros Bizjak committed
    • Daily bump. · 98ee9e65
      From-SVN: r163712
      GCC Administrator committed
  2. 31 Aug, 2010 21 commits
  3. 30 Aug, 2010 6 commits
    • re PR fortran/45456 ([OOP] Bogus pointer initialization error on pointer-valued TBP) · e8cd3983
      2010-08-30  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45456
      	* resolve.c (resolve_structure_cons): Handle pointer-valued PPCs.
      
      
      2010-08-30  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45456
      	* gfortran.dg/typebound_proc_18.f03: New.
      
      From-SVN: r163661
      Janus Weil committed
    • Stack usage support · d3c12306
      	Stack usage support
      	* common.opt (-fstack-usage): New option.
      	* doc/invoke.texi (Debugging options): Document it.
      	* builtins.c (expand_builtin_apply): Pass TRUE as 4th argument to
      	allocate_dynamic_stack_space.
      	(expand_builtin_alloca): Add 4th bool parameter CANNOT_ACCUMULATE
      	and propagate it to allocate_dynamic_stack_space.
      	(expand_builtin) <BUILT_IN_ALLOCA>: Adjust for above change.
      	* calls.c (initialize_argument_information): Pass TRUE as 4th
      	argument to allocate_dynamic_stack_space.
      	(expand_call): Set current_function_has_unbounded_dynamic_stack_size
      	to 1 when pushing a variable-sized argument onto the stack.  Pass
      	TRUE as 4th argument to allocate_dynamic_stack_space.
      	Update current_function_pushed_stack_size.
      	(emit_library_call_value_1): Likewise.
      	* explow.c (allocate_dynamic_stack_space): Add 4th bool parameter
      	CANNOT_ACCUMULATE.  If flag_stack_usage, look into the size and
      	attempt to find an upper bound.  Remove redundant code for the
      	SETJMP_VIA_SAVE_AREA case.
      	* expr.h (allocate_dynamic_stack_space): Add 4th bool parameter.
      	* function.h (struct stack_usage): New structure.
      	(current_function_static_stack_size): New macro.
      	(current_function_dynamic_stack_size): Likewise.
      	(current_function_pushed_stack_size): Likewise.
      	(current_function_dynamic_alloc_count): Likewise.
      	(current_function_has_unbounded_dynamic_stack_size): Likewise.
      	(current_function_allocates_dynamic_stack_space): Likewise.
      	(struct function): Add new field 'su'.
      	* function.c (instantiate_virtual_regs): If SETJMP_VIA_SAVE_AREA,
      	add the value of the dynamic offset to the dynamic stack usage.
      	(gimplify_parameters): Set ALLOCA_FOR_VAR_P on call to BUILT_IN_ALLOCA
      	for variable-sized objects.
      	(prepare_function_start): Allocate cfun->su if flag_stack_usage.
      	(rest_of_handle_thread_prologue_and_epilogue): Call output_stack_usage.
      	* gimplify.c (gimplify_decl_expr): Set ALLOCA_FOR_VAR_P on call to
      	BUILT_IN_ALLOCA for variable-sized objects.
      	* output.h (output_stack_usage): Declare.
      	* toplev.c (stack_usage_file): New file pointer.
      	(output_stack_usage): New function.
      	(open_auxiliary_file): Likewise.
      	(lang_dependent_init): Open file if flag_stack_usage is set.
      	(finalize): Close file if stack_usage_file is not null.
      	* tree.h (ALLOCA_FOR_VAR_P): New macro.
      	* config/alpha/alpha.c (compute_frame_size): New function.
      	(alpha_expand_prologue): Use it.
      	(alpha_start_function): Likewise.
      	(alpha_expand_epilogue): Likewise.  Set stack usage info.
      	* config/i386/i386.c (ix86_expand_prologue): Likewise.
      	* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
      	* config/mips/mips.c (mips_expand_prologue): Likewise.
      	* config/pa/pa.c (hppa_expand_prologue): Likewise.
      	* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
      	* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
      testsuite/
      	* lib/gcc-dg.exp (cleanup-stack-usage): New procedure.
      	* lib/scanasm.exp (scan-stack-usage): Likewise.
      	(scan-stack-usage-not): Likewise.
      	* gcc.dg/stack-usage-1.c: New test.
      	* gcc.target/i386/stack-usage-realign.c: Likewise.
      
      From-SVN: r163660
      Eric Botcazou committed
    • re PR tree-optimization/45427 (Number of iteration analysis bogus) · 1987baa3
      	PR tree-optimization/45427
      	* tree-ssa-loop-niter.c (number_of_iterations_ne_max): Rewritten.
      	Handle the case that the exit is never taken correctly.
      	(number_of_iterations_ne): Pass exit_must_be_taken to
      	number_of_iterations_ne_max.
      
      	* gcc.dg/tree-ssa/pr45427.c: New test.
      
      From-SVN: r163659
      Zdenek Dvorak committed
    • mips.h (BASE_DRIVER_SELF_SPECS): Infer -mdspr2 for the the 74K. · 037f9973
      2010-08-31  Catherine Moore  <clm@codesourcery.com>
      
      	* config/mips/mips.h (BASE_DRIVER_SELF_SPECS):
      	Infer -mdspr2 for the the 74K.
      
      From-SVN: r163656
      Catherine Moore committed
    • re PR c++/45043 (ICE: tree check: expected identifier_node, have bit_not_expr in… · b960ce04
      re PR c++/45043 (ICE: tree check: expected identifier_node, have bit_not_expr in grokdeclarator, at cp/decl.c:8113 on invalid code)
      
      /cp
      2010-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/45043
      	* decl.c (grokdeclarator): Use MAIN_NAME_P only on IDENTIFIER_NODEs.
      
      /testsuite
      2010-08-30  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/45043
      	* g++.dg/template/crash102.C: New.
      
      From-SVN: r163655
      Paolo Carlini committed
    • re PR debug/45419 (-fcompare-debug failure at -O3) · b0268cc0
      	PR debug/45419
      	* tree-ssa-live.c (dump_enumerated_decls): Clear the whole wi variable.
      
      From-SVN: r163654
      Jakub Jelinek committed