1. 30 Jun, 2004 22 commits
    • combine.c: Include "output.h" to define dump_file. · 64b8935d
      
      	* combine.c: Include "output.h" to define dump_file.
      	(uid_insn_cost, last_insn_cost): New global variables.
      	(combine_insn_cost): New function to estimate cost of an insn.
      	(combine_validate_cost): New function to determine whether a
      	try_combine replacement sequence is cheaper than the original.
      	(combine_instructions): Allocate and populate uid_insn_cost
      	array at the start of the combine pass, and deallocate it after.
      	(try_combine): Check combine_validate_cost to determine whether
      	a "recombination" should be rejected as being more expensive.
      	* Makefile.in (combine.o): Add dependency upon output.h.
      
      From-SVN: r83908
      Roger Sayle committed
    • re PR fortran/16161 ([gfortran] IMPLICIT CHARACTER not implemented) · e5ddaa24
      fortran/
      PR fortran/16161
      * decl.c (gfc_match_type_spec): Rename second argument to
      'implicit_flag', reverse meaning. Don't match_char_spec if
      'implicit_flag' is set. Rename to ...
      (match_type_spec): ... this.
      (gfc_match_implicit_none, match_implicit_range): Move here
      from match.c.
      (gfc_match_implicit): Move here from match.c, try to
      match_char_len if match_implicit_range doesn't succeed for
      CHARACTER implicits. Call renamed fucntion match_type_spec.
      (gfc_match_data_decl, match_prefix): Call renamed function
      match_type_spec.
      * match.c (gfc_match_implicit_none, match_implicit_range,
      gfc_match_implicit): Move to decl.c.
      * match.h (gfc_match_implicit_none, gfc_match_implicit):
      Move protoypes to section 'decl.c'.
      (gfc_match_type_spec): Remove prototype.
      
      testsuite/
      PR fortran/16161
      * gfortran.fortran-torture/compile/implicit.f90: Add test
      for implicit character.
      
      From-SVN: r83907
      Tobias Schlüter committed
    • rs6000.c (rs6000_rtx_costs): Handle subtractions identically to additions,… · 52190329
      rs6000.c (rs6000_rtx_costs): Handle subtractions identically to additions, always COSTS_N_INSNS (1).
      
      
      	* config/rs6000/rs6000.c (rs6000_rtx_costs) <MINUS_EXPR>: Handle
      	subtractions identically to additions, always COSTS_N_INSNS (1).
      
      From-SVN: r83906
      Roger Sayle committed
    • * expmed.c (expand_smod_pow2): Fix sign of mask. · 4c6fd544
      From-SVN: r83905
      J"orn Rennecke committed
    • re PR fortran/16289 (Test intrinsic_nearest.f90 not portable?) · 807a7d14
       2004-06-30  David Billinghurst (David.Billinghurst@riotinto.com)
      
      	PR fortran/16289
      	* gfortran.fortran-torture/execute/intrinsic_nearest.f90
      	Use tiny() intrinsic to find smallest non-negative real
      
      From-SVN: r83904
      David Billinghurst committed
    • struct-by-value-22_main.c: New test. · 0984ba10
      	* gcc.dg/compat/struct-by-value-22_main.c: New test.
      	* gcc.dg/compat/struct-by-value-22_x.c: New.
      	* gcc.dg/compat/struct-by-value-22_y.c: New.
      
      From-SVN: r83903
      Jakub Jelinek committed
    • tree-ssa-pre.c (phi_trans_add): Use is_gimple_min_invariant to check for constants. · bddeccfe
      
      	* tree-ssa-pre.c (phi_trans_add): Use is_gimple_min_invariant
      	to check for constants.
      	(set_remove): Likewise.
      	(value_replace_in_set): Likewise.
      	(find_leader): Likewise.
      	* tree-vn.c (set_value_handle): Likewise.
      	(vn_lookup): Likewise.
      	(vn_lookup_or_add): Likewise.
      
      From-SVN: r83902
      Diego Novillo committed
    • RTL prologue/epilogue for SPARC · 9ac617d4
      	RTL prologue/epilogue for SPARC
      	* config/sparc/sparc-protos.h (sparc_emitting_epilogue): Delete.
      	(sparc_skip_caller_unimp): Likewise.
      	(load_pic_register): Likewise.
      	(leaf_return_peephole_ok): Likewise.
      	(compute_frame_size): Rename into sparc_compute_frame_size.
      	(sparc_expand_prologue): New prototype.
      	(sparc_expand_epilogue): Likewise.
      	(output_return): Likewise.
      	(eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
      	* config/sparc/sparc.h (INITIAL_ELIMINATION_OFFSET): Adjust call to
      	compute_frame_size.  Move comment up.
      	(DELAY_SLOTS_FOR_EPILOGUE): Delete.
      	(ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
      	(EPILOGUE_USES): Return true for %g1 if the function uses EH return.
      	* config/sparc/sparc.md (UNSPECV_SAVEW): New constant.
      	(type attribute): Add 'return' and 'savew'.
      	(eligible_for_return_delay): New attribute.
      	(return): New delay_slot.
      	(sibcall_epilogue): Call sparc_expand_epilogue.
      	(prologue): Likewise.  Move up.
      	(save_register_window): New expander.
      	(save_register_windowsi): New pattern.
      	(save_register_windowdi): Likewise.
      	(epilogue): New expander.
      	(return_internal): New pattern.
      	(Return peepholes): Delete.
      	* config/sparc/sparc.c (SIBCALL_SLOT_EMPTY_P): New macro.
      	(sparc_emitting_epilogue): Delete.
      	(sparc_skip_caller_unimp): Likewise.
      	(sparc_sr_alias_set): New global variable.
      	(frame_base_name): Delete.
      	(frame_base_reg): New global variable.
      	(sparc_override_options): Get new alias set for save/restore.
      	(leaf_return_peephole_ok): Delete.
      	(eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
      	Factor out code into eligible_for_restore_insn_delay.
      	(eligible_for_restore_insn_delay): New function extraced from above.
      	Use IN_UNCOND_BRANCH_DELAY_TRUE instead of IN_BRANCH_DELAY_TRUE.
      	(eligible_for_sibcall_delay): Use SIBCALL_SLOT_EMPTY_P.
      	Factor out code into eligible_for_restore_insn_delay.
      	(load_pic_register): Make static.  Remove check.
      	(save_regs): Delete.
      	(restore_regs): Likewise.
      	(compute_frame_size): Rename into sparc_compute_frame_size.
      	Rename leaf_function into leaf_function_p.
      	(build_big_number): Delete.
      	(save_or_restore_regs): New function.
      	(emit_save_regs): Likewise.
      	(emit_restore_regs): Likewise.
      	(emit_stack_pointer_increment ): Likewise.
      	(emit_stack_pointer_decrement): Likewise.
      	(sparc_expand_prologue): Likewise.
      	(sparc_function_prologue): Rename into sparc_asm_function_prologue.
      	Remove all code to emit instructions.
      	(sparc_expand_epilogue): New function.
      	(sparc_function_epilogue): Rename into sparc_asm_function_epilogue.
      	Remove all code to emit instructions.
      	(output_restore): New function.
      	(output_return): Likewise.
      	(output_sibcall): Factor out code into output_restore.
      	(print_operand): Adjust for frame_base_reg.
      	* target.h (struct gcc_target): New field 'late_rtl_prologue_epilogue'.
      	* target-def.h (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): New define.
      	(TARGET_INITIALIZER): Add it.
      	* passes.c (rest_of_compilation): Set the conditional predicate
      	'current_function_uses_only_leaf_regs' before sched2.  If target
      	has 'late_rtl_prologue_epilogue', emit RTL prologue/epilogue right
      	before sched2.
      	* reorg.c (return_insn_p): New predicate.
      	(find_end_label): Use it.
      	(relax_delay_slots): Do not thread an unconditional jump that points
      	to the end return label.
      	* doc/tm.texi (Registers) <Leaf Functions>: Clarify the validity
      	domain of 'current_function_uses_only_leaf_regs'.
      	(Stack and Calling) <Function Entry>: Document new target hook
      	TARGET_LATE_RTL_PROLOGUE_EPILOGUE.
      
      From-SVN: r83901
      Eric Botcazou committed
    • re PR tree-optimization/15310 ([tree-ssa] Optimize an addition in a bit field) · df62f18a
      	* simplify-rtx.c (simplify_binary_operation): Simplify
      	((A & N) + B) & M -> (A + B) & M if M is pow2 minus 1 constant and
      	N has at least all bits in M set as well.
      
      	PR tree-optimization/15310
      	* expr.c (expand_assignment): Optimize += or -= on a bit field in
      	most significant bits.
      
      	* gcc.c-torture/execute/20040629-1.c: New test.
      
      From-SVN: r83900
      Jakub Jelinek committed
    • ffi_darwin.c (flush_icache): ';' is a comment character on Darwin, use '\n\t' instead. · e6a0022b
      	* src/powerpc/ffi_darwin.c (flush_icache): ';' is a comment
      	character on Darwin, use '\n\t' instead.
      
      From-SVN: r83899
      Geoffrey Keating committed
    • * config/c4x/c4x.md: Fix comment. · 852a1311
      From-SVN: r83898
      Steven Bosscher committed
    • [multiple changes] · badd64ad
      2004-06-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
                  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/bits/cpp_type_traits.h: Add __is_pointer and
      	__is_trivially_copyable.
      	* include/bits/stl_algobase.h (fill, fill_n): Slightly
      	tweak to use the latter.
      	(__copy_backward_dispatch): Remove.
      	(__copy_backward_aux): Rewrite to use __is_pointer and
      	__is_trivially_copyable and __copy_backward::copy_b.
      	(__copy_backward): Rewrite as a class template and two
      	specializations.
      
      2004-06-30  Paolo Carlini  <pcarlini@suse.de>
      
      	* testsuite/25_algorithms/copy.cc: Move to...
      	* testsuite/25_algorithms/copy/1.cc: ... here, extend.
      	* testsuite/25_algorithms/copy/2.cc: New.
      	* testsuite/25_algorithms/copy/3.cc: New.
      	* testsuite/25_algorithms/copy/4.cc: New.
      
      From-SVN: r83897
      Paolo Carlini committed
    • arm.md (cond_return_inverted): Add "length" attribute. · 3e1b8dc0
      2004-0630  Akos Kiss  <akiss@inf.u-szeged.hu>
      * arm.md (cond_return_inverted): Add "length" attribute.
      
      From-SVN: r83896
      Akos Kiss committed
    • rand.c (rand): Wrap the irand() call from the previous commit in prefix. · fd53dbe0
      	* intrinsics/rand.c (rand): Wrap the irand() call from the previous
      	commit in prefix.
      
      Co-Authored-By: Steven Bosscher <stevenb@suse.de>
      
      From-SVN: r83895
      Steve Kargl committed
    • tree.c (build_min_nt, [...]): Don't set TREE_COMPLEXITY from input_line. · dd0d10e8
      
      	* tree.c (build_min_nt, build_min, build_min_non_dep):
      	Don't set TREE_COMPLEXITY from input_line.
      
      From-SVN: r83894
      Per Bothner committed
    • winnt.c (i386_pe_encode_section_info): Smash rtlname's XSTR in place, so we… · ce7f2acd
      winnt.c (i386_pe_encode_section_info): Smash rtlname's XSTR in place, so we don't lose SYMBOL_REF_DECL info.
      
      
      	* config/i386/winnt.c (i386_pe_encode_section_info):  Smash rtlname's
      	XSTR in place, so we don't lose SYMBOL_REF_DECL info.
      
      From-SVN: r83893
      Per Bothner committed
    • jni.cc (_Jv_JNI_NewGlobalRef, [...]): Remove needless parenthesis... · 8319dc87
      
      	* jni.cc (_Jv_JNI_NewGlobalRef, JNICALL _Jv_JNI_DeleteGlobalRef,
      	etc etc):  Remove needless parenthesis, which causes __stdcall__
      	attribute on MinGW to get ignored.
      
      From-SVN: r83892
      Per Bothner committed
    • Revert accidental commit · 02bbc6ff
      From-SVN: r83890
      Zack Weinberg committed
    • combine.c (distribute_notes): Don't look at global_regs for pseudos. · 2cd54c2a
      	* combine.c (distribute_notes): Don't look at global_regs for
      	pseudos.
      
      From-SVN: r83889
      Zack Weinberg committed
    • gimplify.c (gimplify_modify_expr_rhs): Move immediately before gimplify_modify_expr. · 26d44ae2
              * gimplify.c (gimplify_modify_expr_rhs): Move immediately before
              gimplify_modify_expr.
              (gimplify_init_constructor): Likewise.  Gimplify the null
              CONSTRUCTOR assignment.
              (gimplify_modify_expr_to_memcpy): New.
              (gimplify_modify_expr_to_memset): New.
              (gimplify_modify_expr): Use them.
      
      From-SVN: r83888
      Richard Henderson committed
    • Daily bump. · 9d75385f
      From-SVN: r83886
      GCC Administrator committed
  2. 29 Jun, 2004 18 commits
    • web.c (union_defs): use all defs of an instruction to create a union with a read/write use · 909b7f16
              * web.c (union_defs): use all defs of an instruction to create a
              union with a read/write use
      
      From-SVN: r83882
      Roman Zippel committed
    • re PR middle-end/16216 (ICE in gimplify_va_arg_expr after error) · 97bb4af7
              PR middle-end/16216
              * builtins.c (gimplify_va_arg_expr): Check for valist being
              an error_mark_node.
      
      From-SVN: r83881
      Richard Henderson committed
    • Paul Brook <paul@codesourcery.com> · beabab59
      2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
      Paul Brook  <paul@codesourcery.com>
      
      * runtime/normalize.c (normalize_r4_i4, normalize_r8_i8): Fix
      comments.
      * intrinsics/rand.c (rand): Call irand() in call to normalize_r4_i4.
      
      Co-Authored-By: Paul Brook <paul@codesourcery.com>
      
      From-SVN: r83880
      Tobias Schlüter committed
    • [multiple changes] · dfdf6a94
      2004-06-29  Frank Ch. Eigler  <fche@redhat.com>
      
      	Splay tree implementation fork.
      	* splay-tree.c, splay-tree.h: Copied & modified from libiberty.
      	Use hard-coded comparison function for uintptr_t.  Remove key/value
      	deallocation logic.  Cache last splayed key for consecutive lookups.
      	* Makefile.am, Makefile.in: Use them, don't link to them.
      	* mf-runtime.c (__mf_object_tree): Adapt to simpler splay_tree_new.
      	(__mf_find_objects2): Flip successor/predecessor search sequence.
      	* ansidecl.h, libiberty.h: Removed dummy files.
      
      
      2004-06-29  Nick Clifton  <nickc@redhat.com>
      
      From-SVN: r83879
      Frank Ch. Eigler committed
    • decl.c, [...]: Add 2004 to copyright years. · ef558756
      * decl.c, interface.c, symbol.c, trans-common.c: Add 2004 to
      copyright years.
      
      Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
      
      From-SVN: r83878
      Tobias Schlüter committed
    • Make sure types in assignments are compatible. · 7ab92584
      2004-06-29  Steven Bosscher  <stevenb@suse.de>
      
      	Make sure types in assignments are compatible.  Mostly mechanical.
      	* trans-const.h (gfc_index_one_node): New define.
      	* trans-array.c (gfc_trans_allocate_array_storage,
      	gfc_trans_allocate_temp_array, gfc_trans_array_constructor_subarray,
      	gfc_trans_array_constructor_value, gfc_trans_array_constructor,
      	gfc_conv_array_ubound, gfc_conv_array_ref,
      	gfc_trans_scalarized_loop_end, gfc_conv_section_startstride,
      	gfc_conv_ss_startstride, gfc_conv_loop_setup, gfc_array_init_size,
      	gfc_trans_array_bounds, gfc_trans_dummy_array_bias,
      	gfc_conv_expr_descriptor, gfc_trans_deferred_array): Use the correct
      	types in assignments, conversions and conditionals for expressions.
      	* trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
      	gfc_conv_unary_op, gfc_conv_cst_int_power, gfc_conv_string_tmp,
      	gfc_conv_function_call, gfc_trans_pointer_assignment,
      	gfc_trans_scalar_assign): Likewise.
      	* trans-intrinsic.c (build_fixbound_expr, gfc_conv_intrinsic_bound,
      	gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
      	gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_btest,
      	gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ishft,
      	gfc_conv_intrinsic_ishftc, gfc_conv_intrinsic_strcmp,
      	gfc_conv_allocated, gfc_conv_associated,
      	gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_trim): Likewise.
      	* trans-io.c (set_string): Likewise.
      	* trans-stmt.c (gfc_trans_do, gfc_trans_forall_loop,
      	gfc_do_allocate, generate_loop_for_temp_to_lhs,
      	generate_loop_for_rhs_to_temp, compute_inner_temp_size,
      	compute_overall_iter_number, gfc_trans_assign_need_temp,
      	gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
      	gfc_evaluate_where_mask, gfc_trans_where_assign,
      	gfc_trans_where_2): Likewise.
      	* trans-types.c (gfc_get_character_type, gfc_build_array_type,
      	gfc_get_nodesc_array_type, gfc_get_array_type_bounds): Likewise.
      
      	* trans.c (gfc_add_modify_expr): Add sanity check that types
      	for the lhs and rhs are the same for scalar assignments.
      
      From-SVN: r83877
      Steven Bosscher committed
    • Fix ChangeLog entry · e23667c6
      From-SVN: r83876
      Tobias Schlüter committed
    • Revert previous accidental commit. · 439251f7
      From-SVN: r83875
      Tobias Schlüter committed
    • dump-parse-tree.c (show_common): New function. · fbc9b453
      * dump-parse-tree.c (show_common): New function.
      (gfc_show_namespace): Show commons.
      
      From-SVN: r83874
      Tobias Schlüter committed
    • vector-defs.h: Use vector_size attribute only for GCC 3.5+... · 57512331
      	* gcc.dg/compat/vector-defs.h: Use vector_size attribute
      	only for GCC 3.5+, for GCC up to 3.4 mode(V*) attribute instead.
      
      From-SVN: r83873
      Jakub Jelinek committed
    • re PR target/16195 ([3.4 only] Miscompilation of GCC 3.3.x by 3.4.x) · b4db40bf
      	PR target/16195
      	* config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make
      	r30 fixed if TARGET_TOC && TARGET_MINIMAL_TOC.
      	(first_reg_to_save): Pretend call_used_regs[30] is 0 if
      	TARGET_TOC && TARGET_MINIMAL_TOC.
      	(rs6000_emit_prologue, rs6000_emit_epilogue): Likewise.
      
      	* gcc.dg/20040625-1.c: New test.
      
      From-SVN: r83872
      Jakub Jelinek committed
    • Andrew Vaught <andyv@firstinter.net> · 9056bd70
      2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
      Andrew Vaught  <andyv@firstinter.net>
      
      PR fortran/13249
      PR fortran/15481
      * declc (gfc_match_save): Adapt to new common structures,
      don't allow saving USE-associated common.
      * dump-parse-tree (gfc_show_attr): (saved_)common are not
      symbol attributes any longer.
      (gfc_show_symbol): Don't show old-style commons any longer.
      (gfc_show_namespace): Adapt call to gfc_traverse_symtree to new
      interface.
      * gfortran.h (symbol_attribute): Remove common and saved_common
      attributes.
      (gfc_symbol): Remove common_head element.
      (gfc_common_head): New struct.
      (gfc_get_common_head): New macro.
      (gfc_symtree): Add field 'common' to union.
      (gfc_namespace): Add field 'common_root'; change type of field
      'blank_common' to blank_common.
      (gfc_add_data): New prototype.
      (gfc_traverse_symtree): Expect a symtree as first argument
      instead of namespace.
      * match.c (gfc_get_common): New function.
      (match_common_name): Change to take char * as argument, adapt,
      fix bug with empty name.
      (gfc_match_common): Adapt to new data structures. Disallow
      redeclaration of USE-associated COMMON-block. Fix bug with
      empty common.
      (var_element): Adapt to new common structures.
      * match.h (gfc_get_common): Declare.
      * module.c: Add 2004 to copyright years, add commons to module
      file layout description.
      (ab_attribute, attr_bits, mio_symbol_attributes): Remove code
      for removed attributes.
      (mio_symbol): Adapt to new way of storing common relations.
      (load_commons): New function.
      (read_module): Skip common list on first pass, load_commons at
      second.
      (write_commons): New function.
      (write_module): Call write_commons().
      * symbol.c (gfc_add_saved_comon, gfc_add_common): Remove
      functions related to removed attributes.
      (gfc_add_data): New function.
      (gfc_clear_attr): Don't set removed attributes.
      (gfc_copy_attr): Don't copy removed attributes.
      (traverse_symtree): Remove.
      (gfc_traverse_symtree): Don't traverse symbol
      tree of the passed namespace, but require a symtree to be passed
      instead. Unify with traverse_symtree.
      (gfc_traverse_ns): Call gfc_traverse_symtree according to new
      interface.
      (save_symbol): Remove setting of removed attribute.
      * trans-common.c (gfc_sym_mangled_common_id): Change to
      take 'char *' argument instead of 'gfc_symbol'.
      (build_common_decl, new_segment, translate_common): Adapt to new
      data structures, add new
      argument name.
      (create_common): Adapt to new data structures, add new
      argument name. Fix typo in intialization of derived types.
      (finish_equivalences): Add second argument in call to
      create_common.
      (named_common): take 'gfc_symtree' instead of 'gfc_symbol'.
      (gfc_trans_common): Adapt to new data structures.
      * trans-decl.c (gfc_create_module_variables): Also output
      symbols from commons.
      
      Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
      
      From-SVN: r83871
      Tobias Schlüter committed
    • * io.c: Add 2004 to copyright years. · 50d78f96
      From-SVN: r83870
      Tobias Schlüter committed
    • re PR tree-optimization/16249 (ICE in calculate_live_on_entry, at tree-ssa-live.c:724) · b4bbd47e
      	* testsuite/libjava.compile/PR16249.java: New test case. PR
      	gcc/16249.
      
      From-SVN: r83869
      Bryce McKinlay committed
    • Andrew Vaught <andyv@firstinter.net> · c9543002
      2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
      Andrew Vaught  <andyv@firstinter.net>
      
      * gfortran.h (gfc_gsymbol): New typedef.
      (gfc_gsym_root): New variable.
      (gfc_get_gsymbol, gfc_find_gsym): New prototypes.
      * parse.c (global_used): New function.
      (parse_block_data): Check for double empty BLOCK DATA,
      use global symbol table.
      (parse_module): Use global symbol table.
      (add_global_procedure, add_global_program): New functions.
      (gfc_parse_file): Use global symbol table.
      * symbol.c (gfc_gsym_root): New variable.
      (gfc_find_gsym, gsym_compare, gfc_get_gsymbol): New
      functions.
      
      Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
      
      From-SVN: r83868
      Tobias Schlüter committed
    • re PR java/1262 (Method with default access can be overridden in another package) · 9c5fdae6
      	PR java/1262
      	* class.c (layout_class_method): Do not override package-private
      	method if its in a different package.
      	(split_qualified_name): Move here from parse.y. Rename from
      	breakdown_qualified. Add comment.
      	(in_same_package): Move here from parse.y. Add comment.
      	* java-tree.h (break_down_qualified, in_same_package): Declare.
      	(in_same_package): Likewise.
      	* parse.y (breakdown_qualified, in_same_package): Moved to class.c.
      	Callers updated.
      
      From-SVN: r83867
      Bryce McKinlay committed
    • Fix gcc.dg/builtin-apply2.c failures: · 49616835
      	* sh.h (TARGET_VARARGS_PRETEND_ARGS): Define.
      	* sh.c (extra_push): Delete.
      	(sh_expand_prologue): Don't do extra stack adjustment for
      	current_function_pretend_args_size if it comes from varargs setup.
      	Use TARGET_VARARGS_PRETEND_ARGS.  Don't set extra_push.
      	(sh_expand_epilogue): Don't use extra_push.
      	(sh_setup_incoming_varargs): Set pretend_arg_size when necessary.
      
      From-SVN: r83864
      Joern Rennecke committed
    • Fix gcc.dg/builtin-apply2.c failures: · 8d2fb08d
      	* sh.h (TARGET_VARARGS_PRETEND_ARGS): Define.
      	* sh.c (extra_push): Delete.
      	(sh_expand_prologue): Don't do extra stack adjustment for
      	current_function_pretend_args_size if it comes from varargs setup.
      	Use TARGET_VARARGS_PRETEND_ARGS.  Don't set extra_push.
      	(sh_expand_epilogue): Don't use extra_push.
      	(sh_setup_incoming_varargs): Set pretend_arg_size when necessary.
      
      [[Split portion of a mixed commit.]]
      
      From-SVN: r83863.2
      Joern Rennecke committed