public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/46500] New: target.h includes tm.h
@ 2010-11-16 16:12 amylaar at gcc dot gnu.org
  2010-11-23 14:18 ` [Bug middle-end/46500] " amylaar at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2010-11-16 16:12 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

           Summary: target.h includes tm.h
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: amylaar@gcc.gnu.org
            Blocks: 46489


Because some hooks are defined in terms of CUMULATIVE_ARGS, target.h includes
tm.h .  That defeats the purpose of the target hooks.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
@ 2010-11-23 14:18 ` amylaar at gcc dot gnu.org
  2010-11-23 15:45 ` joseph at codesourcery dot com
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2010-11-23 14:18 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch
           Severity|normal                      |major

--- Comment #1 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2010-11-23 13:59:25 UTC ---
The conclusion of the previous discussion about the inappropriateness of
target hooks taking target-dependent types like CUMULATIVE_ARGS or
CUMULATIVE_ARGS * was to convert to void * after initial hookization:
http://gcc.gnu.org/ml/gcc-patches/2010-06/msg02607.html

I have posted a patch that does just that:
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01769.html
but in the parallel discussion on the GCC mailing list there was now
resistance against using void pointers and casts in general, as can be
seen in the replies to this message:
http://gcc.gnu.org/ml/gcc/2010-11/msg00385.html

Nathan Froyd, who had before vigorously propagated the offending hooks, now
proposed to put the target-dependent function pointers in a place outside
of targetm for a C++ based solution:
http://gcc.gnu.org/ml/gcc/2010-11/msg00413.html

In response to this, I've posted a patch proposal that moved the offending
hooks out of targetm into a separate vector that is not needed by
target-independent code:
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01810.html

I also noted that this patch, although conceptually very simple, was
largish because of all the target hook sites changed.  I proposed a
strategy how have a set of smaller patches by first making the hooks
easier to move around:
http://gcc.gnu.org/ml/gcc/2010-11/msg00455.html
, but that was met with disapproval.
One thing that came out of this discussion, though, was an apparent
agreement that casts would be acceptable if kept in a few small functions
that implement type conversions, as long as the bulk of the code was
type-safe.  Although the initial proposal missed the point of defining
a target-independent type, we eventually got something that provides
type-safety hook using code using a target-independent type:
http://gcc.gnu.org/ml/gcc/2010-11/msg00479.html

I then posted an update of the first (void * based) patch that
encapsulated the void * in a struct or union:
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01994.html

I noted that a problem with the patch was its sheer size, which might
make it hard to get all of it reviewed, so I also posted a variant with
the target-independent / dependent changes separated, using a bit of
extra Makefile logic and fall-back code in target.h so that un-converted
targets could continue to function for a transitory period.
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02284.html

So, to summarize, I made two alternative proposals how to solve the problem:
- Alternative 1:
  Change the hooks so that they are suitable for a target-independent hook
  vector.
  We can do this either in one mega-patch if we get a hero reviewer:
  http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01994.html
  or do the target-independent stuff first, and then review the target
  dependent code either one-by-one or in group(s):
  http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02284.html
- Alternative 2:
  Move the hooks with target-dependent types out of targetm:
  http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01810.html


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
  2010-11-23 14:18 ` [Bug middle-end/46500] " amylaar at gcc dot gnu.org
@ 2010-11-23 15:45 ` joseph at codesourcery dot com
  2010-11-24 20:12 ` amylaar at gcc dot gnu.org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: joseph at codesourcery dot com @ 2010-11-23 15:45 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #2 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2010-11-23 15:30:08 UTC ---
On Tue, 23 Nov 2010, amylaar at gcc dot gnu.org wrote:

> I then posted an update of the first (void * based) patch that
> encapsulated the void * in a struct or union:
> http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01994.html

You should just stick with this version and seek to get a review of it 
rather than posting yet more alternatives.  The basic problem is that you 
have posted far too many variants and continued to post inferior variants 
after posting this patch which seems to use the right approach.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
  2010-11-23 14:18 ` [Bug middle-end/46500] " amylaar at gcc dot gnu.org
  2010-11-23 15:45 ` joseph at codesourcery dot com
@ 2010-11-24 20:12 ` amylaar at gcc dot gnu.org
  2010-12-17 12:35 ` amylaar at gcc dot gnu.org
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2010-11-24 20:12 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #3 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2010-11-24 19:46:09 UTC ---
Created attachment 22513
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22513
additional patch for microblaze

I realized a bit late that I didn't have the microblaze in my list of ports
to fix & test - it got some vanilla changes from an ls shell substitution,
put not the pack_cumulative_args wrappers for when it calls its own hooks.

The attached patch adds the missing changes.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2010-11-24 20:12 ` amylaar at gcc dot gnu.org
@ 2010-12-17 12:35 ` amylaar at gcc dot gnu.org
  2010-12-27 12:14 ` amylaar at gcc dot gnu.org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2010-12-17 12:35 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #4 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2010-12-17 12:35:31 UTC ---
Author: amylaar
Date: Fri Dec 17 12:35:27 2010
New Revision: 167979

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=167979
Log:
    PR middle-end/46500
    http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01994.html
    http://gcc.gnu.org/ml/gcc-bugs/2010-11/msg03026.html
gcc:
    * doc/tm.texi: Regenerate.
    * targhooks.c (default_setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * targhooks.h (default_setup_incoming_varargs): Likewise.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * target.def (pass_by_reference): Likewise.
    (setup_incoming_varargs, strict_argument_naming): Likewise.
    (pretend_outgoing_varargs_named, callee_copies): Likewise.
    (arg_partial_bytes, function_arg_advance, function_arg): Likewise.
    (function_incoming_arg): Likewise.
    * target.h: Don't include "tm.h" .
    (cumulative_args_t): New typedef.
    [GCC_TM_H] (get_cumulative_args): New static inline function.
    [GCC_TM_H] (pack_cumulative_args): Likewise.
    * config/alpha/alpha.c (alpha_function_arg): Replace CUMULATIVE_ARGS*
    argument type with cumulative_args_t.
    (alpha_function_arg_advance, alpha_arg_partial_bytes): Likewise.
    (alpha_pass_by_reference, alpha_setup_incoming_varargs): Likewise.
    * config/frv/frv.c (frv_setup_incoming_varargs): Likewise.
    (frv_arg_partial_bytes, frv_function_arg): Likewise.
    (frv_function_incoming_arg, frv_function_arg_advance): Likewise.
    (frv_function_arg_1): Likewise.
    * config/s390/s390.c (s390_pass_by_reference): Likewise.
    (s390_function_arg_advance, s390_function_arg): Likewise.
    * config/m32c/m32c.c (m32c_function_arg): Likewise.
    (m32c_pass_by_reference, m32c_function_arg_advance): Likewise.
    (m32c_strict_argument_naming): Likewise.
    * config/spu/spu.c (spu_pass_by_reference, spu_function_arg): Likewise.
    (spu_function_arg_advance): Likewise.
    (spu_setup_incoming_varargs): Likewise.  Make static.
    * config/spu/spu-protos.h (spu_setup_incoming_varargs):
    Remove prototype.
    * config/sparc/sparc.c (sparc_strict_argument_naming): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (sparc_pass_by_reference, sparc_function_arg_advance): Likewise.
    (sparc_function_arg, sparc_function_incoming_arg): Likewise.
    (sparc_arg_partial_bytes, sparc_function_arg_1): Likewise.
    * config/mep/mep.c (mep_setup_incoming_varargs): Likewise.
    (mep_pass_by_reference, mep_function_arg): Likewise.
    (mep_function_arg_advance): Likewise.
    * config/m32r/m32r.c (m32r_setup_incoming_varargs): Likewise.
    (m32r_pass_by_reference, m32r_arg_partial_bytes): Likewise.
    (m32r_function_arg, m32r_function_arg_advance): Likewise.
    * config/rx/rx.c (rx_function_arg, rx_function_arg_advance): Likewise.
    * config/i386/i386.c (ix86_function_arg_advance): Likewise.
    (ix86_function_arg, ix86_pass_by_reference): Likewise.
    (ix86_setup_incoming_varargs): Likewise.
    * config/sh/sh.c (sh_setup_incoming_varargs): Likewise.
    (sh_strict_argument_naming): Likewise.
    (sh_pretend_outgoing_varargs_named, sh_pass_by_reference): Likewise.
    (sh_callee_copies, sh_arg_partial_bytes): Likewise.
    (sh_function_arg_advance, sh_function_arg): Likewise.
    * config/pdp11/pdp11.c (pdp11_function_arg): Likewise.
    (pdp11_function_arg_advance): Likewise.
    * config/microblaze/microblaze.c (microblaze_function_arg_advance):
    Likewise.
    (microblaze_function_arg, function_arg_partial_bytes): Likewise.
    * config/avr/avr.c (avr_function_arg): Likewise.
    (avr_function_arg_advance): Likewise.
    * config/crx/crx.c (crx_function_arg): Likewise.
    (crx_function_arg_advance): Likewise.
    * config/xtensa/xtensa.c (xtensa_function_arg_advance): Likewise.
    (xtensa_function_arg, xtensa_function_incoming_arg): Likewise.
    (xtensa_function_arg_1): Likewise.
    * config/stormy16/stormy16.c (xstormy16_function_arg_advance): Likewise.
    (xstormy16_function_arg): Likewise.
    * config/fr30/fr30.c (fr30_setup_incoming_varargs): Likewise.
    (fr30_arg_partial_bytes, fr30_function_arg): Likewise.
    (fr30_function_arg_advance): Likewise.
    * config/lm32/lm32.c (lm32_setup_incoming_varargs): Likewise.
    (lm32_function_arg, lm32_function_arg_advance): Likewise.
    * config/moxie/moxie.c (moxie_setup_incoming_varargs): Likewise.
    (moxie_function_arg, moxie_function_arg_advance): Likewise.
    (moxie_pass_by_reference, moxie_arg_partial_bytes): Likewise.
    * config/m68hc11/m68hc11.c (m68hc11_function_arg): Likewise.
    (m68hc11_function_arg_advance): Likewise.
    * config/cris/cris.c (cris_setup_incoming_varargs): Likewise.
    (cris_pass_by_reference, cris_arg_partial_bytes): Likewise.
    (cris_function_arg, cris_function_incoming_arg): Likewise.
    (cris_function_arg_advance, cris_function_arg_1): Likewise.
    * config/iq2000/iq2000.c (iq2000_setup_incoming_varargs): Likewise.
    (iq2000_pass_by_reference, iq2000_arg_partial_bytes): Likewise.
    (iq2000_function_arg, iq2000_function_arg_advance): Likewise.
    * config/mn10300/mn10300.c (mn10300_pass_by_reference): Likewise.
    (mn10300_function_arg, mn10300_function_arg_advance): Likewise.
    (mn10300_arg_partial_bytes): Likewise.
    * config/ia64/ia64.c (ia64_setup_incoming_varargs): Likewise.
    (ia64_arg_partial_bytes, ia64_function_arg): Likewise.
    (ia64_function_incoming_arg, ia64_function_arg_advance): Likewise.
    (ia64_function_arg_1): Likewise.
    * config/m68k/m68k.c (m68k_function_arg_advance): Likewise.
    (m68k_function_arg): Likewise.
    * config/rs6000/rs6000.c (rs6000_function_arg_advance): Likewise.
    (rs6000_function_arg, setup_incoming_varargs): Likewise.
    (rs6000_pass_by_reference, rs6000_arg_partial_bytes): Likewise.
    * config/picochip/picochip.c (picochip_arg_partial_bytes): Likewise.
    (picochip_function_arg, picochip_incoming_function_arg): Likewise.
    (picochip_arg_advance): Likewise.
    * config/mcore/mcore.c (mcore_setup_incoming_varargs): Likewise.
    (mcore_arg_partial_bytes, mcore_function_arg): Likewise.
    (mcore_function_arg_advance): Likewise.
    * config/arc/arc.c (arc_setup_incoming_varargs): Likewise.
    (arc_pass_by_reference, arc_function_arg): Likewise.
    (arc_function_arg_advance): Likewise.
    * config/score/score.c (score_pass_by_reference): Likewise.
    (score_function_arg_advance): Likewise.
    (score_arg_partial_bytes): Likewise.  Make static.
    * config/score/score-protos.h (score_arg_partial_bytes): Don't declare.
    * config/arm/arm.c (arm_arg_partial_bytes): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (arm_function_arg, arm_function_arg_advance): Likewise.
    (arm_setup_incoming_varargs, arm_pass_by_reference): Likewise.
    * config/pa/pa.c (pa_pass_by_reference): Likewise.
    (pa_arg_partial_bytes, pa_function_arg_advance): Likewise.
    (pa_function_arg): Likewise.
    * config/mips/mips.c (mips_strict_argument_naming): Likewise.
    (mips_function_arg, mips_function_arg_advance): Likewise.
    (mips_arg_partial_bytes, mips_pass_by_reference): Likewise.
    (mips_callee_copies, mips_setup_incoming_varargs): Likewise.
    * config/vax/vax.c (vax_function_arg): Likewise.
    (vax_function_arg_advance): Likewise.
    * config/h8300/h8300.c (h8300_function_arg): Likewise.
    (h8300_function_arg_advance): Likewise.
    * config/v850/v850.c (v850_pass_by_reference): Likewise.
    (v850_strict_argument_naming, v850_function_arg): Likewise.
    (v850_arg_partial_bytes, v850_function_arg_advance): Likewise.
    (v850_setup_incoming_varargs): Likewise.
    * config/mmix/mmix.c (mmix_setup_incoming_varargs): Likewise.
    (mmix_function_arg_advance, mmix_function_incoming_arg): Likewise.
    (mmix_function_arg, mmix_pass_by_reference): Likewise.
    (mmix_function_arg_1): Replace const CUMULATIVE_ARGS* argument type
    with const void *.
    * config/bfin/bfin.c (setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (bfin_function_arg_advance, bfin_function_arg): Likewise.
    (bfin_arg_partial_bytes, bfin_pass_by_reference): Likewise.
    * calls.c (initialize_argument_information): Use pack_cumulative_args.
    (expand_call, emit_library_call_value_1): Likewise.
    * dse.c (get_call_args): Likewise.
    * expr.c (block_move_libcall_safe_for_call_parm): Likewise.
    * function.c (pass_by_reference, reference_callee_copied): Likewise.
    (assign_parm_find_data_types, assign_parms_setup_varargs): Likewise.
    (assign_parm_find_entry_rtl, assign_parms): Likewise.
    (gimplify_parameters): Likewise.
    * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
    * config/mips/mips.c (mips_output_args_xfer): Likewise.
    * config/s390/s390.c (s390_call_saved_register_used): Likewise.
    * config/sh/sh.c (sh_output_mi_thunk): Likewise.
    * config/microblaze/microblaze.c (microblaze_expand_prologue): Likewise.
    * config/m32r/m32r.c (m32r_return_in_memory): Adjust for changed
    m32r_pass_by_reference.
    * config/spu/spu.c (spu_gimplify_va_arg_expr): Adjust for changed
    spu_pass_by_reference.
gcc/c-family:
    * c-opts.c: Include "tm.h" .
gcc/java:
    * expr.c: Include "tm.h" .
gcc/fortran:
    * trans-types.c: Include "tm.h" .

Modified:
    branches/pr46489-20101217-branch/gcc/ChangeLog.46489
    branches/pr46489-20101217-branch/gcc/c-family/c-opts.c
    branches/pr46489-20101217-branch/gcc/calls.c
    branches/pr46489-20101217-branch/gcc/config/alpha/alpha.c
    branches/pr46489-20101217-branch/gcc/config/arc/arc.c
    branches/pr46489-20101217-branch/gcc/config/arm/arm.c
    branches/pr46489-20101217-branch/gcc/config/avr/avr.c
    branches/pr46489-20101217-branch/gcc/config/bfin/bfin.c
    branches/pr46489-20101217-branch/gcc/config/cris/cris.c
    branches/pr46489-20101217-branch/gcc/config/crx/crx.c
    branches/pr46489-20101217-branch/gcc/config/fr30/fr30.c
    branches/pr46489-20101217-branch/gcc/config/frv/frv.c
    branches/pr46489-20101217-branch/gcc/config/h8300/h8300.c
    branches/pr46489-20101217-branch/gcc/config/i386/i386.c
    branches/pr46489-20101217-branch/gcc/config/ia64/ia64.c
    branches/pr46489-20101217-branch/gcc/config/iq2000/iq2000.c
    branches/pr46489-20101217-branch/gcc/config/lm32/lm32.c
    branches/pr46489-20101217-branch/gcc/config/m32c/m32c.c
    branches/pr46489-20101217-branch/gcc/config/m32r/m32r.c
    branches/pr46489-20101217-branch/gcc/config/m68hc11/m68hc11.c
    branches/pr46489-20101217-branch/gcc/config/m68k/m68k.c
    branches/pr46489-20101217-branch/gcc/config/mcore/mcore.c
    branches/pr46489-20101217-branch/gcc/config/mep/mep.c
    branches/pr46489-20101217-branch/gcc/config/microblaze/microblaze.c
    branches/pr46489-20101217-branch/gcc/config/mips/mips.c
    branches/pr46489-20101217-branch/gcc/config/mmix/mmix.c
    branches/pr46489-20101217-branch/gcc/config/mn10300/mn10300.c
    branches/pr46489-20101217-branch/gcc/config/moxie/moxie.c
    branches/pr46489-20101217-branch/gcc/config/pa/pa.c
    branches/pr46489-20101217-branch/gcc/config/pdp11/pdp11.c
    branches/pr46489-20101217-branch/gcc/config/picochip/picochip.c
    branches/pr46489-20101217-branch/gcc/config/rs6000/rs6000.c
    branches/pr46489-20101217-branch/gcc/config/rx/rx.c
    branches/pr46489-20101217-branch/gcc/config/s390/s390.c
    branches/pr46489-20101217-branch/gcc/config/score/score-protos.h
    branches/pr46489-20101217-branch/gcc/config/score/score.c
    branches/pr46489-20101217-branch/gcc/config/sh/sh.c
    branches/pr46489-20101217-branch/gcc/config/sparc/sparc.c
    branches/pr46489-20101217-branch/gcc/config/spu/spu-protos.h
    branches/pr46489-20101217-branch/gcc/config/spu/spu.c
    branches/pr46489-20101217-branch/gcc/config/stormy16/stormy16.c
    branches/pr46489-20101217-branch/gcc/config/v850/v850.c
    branches/pr46489-20101217-branch/gcc/config/vax/vax.c
    branches/pr46489-20101217-branch/gcc/config/xtensa/xtensa.c
    branches/pr46489-20101217-branch/gcc/doc/tm.texi
    branches/pr46489-20101217-branch/gcc/dse.c
    branches/pr46489-20101217-branch/gcc/expr.c
    branches/pr46489-20101217-branch/gcc/fortran/trans-types.c
    branches/pr46489-20101217-branch/gcc/function.c
    branches/pr46489-20101217-branch/gcc/java/expr.c
    branches/pr46489-20101217-branch/gcc/target.def
    branches/pr46489-20101217-branch/gcc/target.h
    branches/pr46489-20101217-branch/gcc/targhooks.c
    branches/pr46489-20101217-branch/gcc/targhooks.h


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2010-12-17 12:35 ` amylaar at gcc dot gnu.org
@ 2010-12-27 12:14 ` amylaar at gcc dot gnu.org
  2011-04-05 15:17 ` jsm28 at gcc dot gnu.org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2010-12-27 12:14 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #5 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2010-12-27 12:14:11 UTC ---
Author: amylaar
Date: Mon Dec 27 12:14:07 2010
New Revision: 168268

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=168268
Log:
    PR middle-end/46500
    http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01994.html
    http://gcc.gnu.org/ml/gcc-bugs/2010-11/msg03026.html
    http://gcc.gnu.org/ml/gcc-cvs/2010-12/msg00673.html
gcc:
    * doc/tm.texi: Regenerate.
    * targhooks.c (default_setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * targhooks.h (default_setup_incoming_varargs): Likewise.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * target.def (pass_by_reference): Likewise.
    (setup_incoming_varargs, strict_argument_naming): Likewise.
    (pretend_outgoing_varargs_named, callee_copies): Likewise.
    (arg_partial_bytes, function_arg_advance, function_arg): Likewise.
    (function_incoming_arg): Likewise.
    * target.h: Don't include "tm.h" .
    (cumulative_args_t): New typedef.
    [GCC_TM_H] (get_cumulative_args): New static inline function.
    [GCC_TM_H] (pack_cumulative_args): Likewise.
    * config/alpha/alpha.c (alpha_function_arg): Replace CUMULATIVE_ARGS*
    argument type with cumulative_args_t.
    (alpha_function_arg_advance, alpha_arg_partial_bytes): Likewise.
    (alpha_pass_by_reference, alpha_setup_incoming_varargs): Likewise.
    * config/frv/frv.c (frv_setup_incoming_varargs): Likewise.
    (frv_arg_partial_bytes, frv_function_arg): Likewise.
    (frv_function_incoming_arg, frv_function_arg_advance): Likewise.
    (frv_function_arg_1): Likewise.
    * config/s390/s390.c (s390_pass_by_reference): Likewise.
    (s390_function_arg_advance, s390_function_arg): Likewise.
    * config/m32c/m32c.c (m32c_function_arg): Likewise.
    (m32c_pass_by_reference, m32c_function_arg_advance): Likewise.
    (m32c_strict_argument_naming): Likewise.
    * config/spu/spu.c (spu_pass_by_reference, spu_function_arg): Likewise.
    (spu_function_arg_advance): Likewise.
    (spu_setup_incoming_varargs): Likewise.  Make static.
    * config/spu/spu-protos.h (spu_setup_incoming_varargs):
    Remove prototype.
    * config/sparc/sparc.c (sparc_strict_argument_naming): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (sparc_pass_by_reference, sparc_function_arg_advance): Likewise.
    (sparc_function_arg, sparc_function_incoming_arg): Likewise.
    (sparc_arg_partial_bytes, sparc_function_arg_1): Likewise.
    * config/mep/mep.c (mep_setup_incoming_varargs): Likewise.
    (mep_pass_by_reference, mep_function_arg): Likewise.
    (mep_function_arg_advance): Likewise.
    * config/m32r/m32r.c (m32r_setup_incoming_varargs): Likewise.
    (m32r_pass_by_reference, m32r_arg_partial_bytes): Likewise.
    (m32r_function_arg, m32r_function_arg_advance): Likewise.
    * config/rx/rx.c (rx_function_arg, rx_function_arg_advance): Likewise.
    * config/i386/i386.c (ix86_function_arg_advance): Likewise.
    (ix86_function_arg, ix86_pass_by_reference): Likewise.
    (ix86_setup_incoming_varargs): Likewise.
    * config/sh/sh.c (sh_setup_incoming_varargs): Likewise.
    (sh_strict_argument_naming): Likewise.
    (sh_pretend_outgoing_varargs_named, sh_pass_by_reference): Likewise.
    (sh_callee_copies, sh_arg_partial_bytes): Likewise.
    (sh_function_arg_advance, sh_function_arg): Likewise.
    * config/pdp11/pdp11.c (pdp11_function_arg): Likewise.
    (pdp11_function_arg_advance): Likewise.
    * config/microblaze/microblaze.c (microblaze_function_arg_advance):
    Likewise.
    (microblaze_function_arg, function_arg_partial_bytes): Likewise.
    * config/avr/avr.c (avr_function_arg): Likewise.
    (avr_function_arg_advance): Likewise.
    * config/crx/crx.c (crx_function_arg): Likewise.
    (crx_function_arg_advance): Likewise.
    * config/xtensa/xtensa.c (xtensa_function_arg_advance): Likewise.
    (xtensa_function_arg, xtensa_function_incoming_arg): Likewise.
    (xtensa_function_arg_1): Likewise.
    * config/stormy16/stormy16.c (xstormy16_function_arg_advance): Likewise.
    (xstormy16_function_arg): Likewise.
    * config/fr30/fr30.c (fr30_setup_incoming_varargs): Likewise.
    (fr30_arg_partial_bytes, fr30_function_arg): Likewise.
    (fr30_function_arg_advance): Likewise.
    * config/lm32/lm32.c (lm32_setup_incoming_varargs): Likewise.
    (lm32_function_arg, lm32_function_arg_advance): Likewise.
    * config/moxie/moxie.c (moxie_setup_incoming_varargs): Likewise.
    (moxie_function_arg, moxie_function_arg_advance): Likewise.
    (moxie_pass_by_reference, moxie_arg_partial_bytes): Likewise.
    * config/m68hc11/m68hc11.c (m68hc11_function_arg): Likewise.
    (m68hc11_function_arg_advance): Likewise.
    * config/cris/cris.c (cris_setup_incoming_varargs): Likewise.
    (cris_pass_by_reference, cris_arg_partial_bytes): Likewise.
    (cris_function_arg, cris_function_incoming_arg): Likewise.
    (cris_function_arg_advance, cris_function_arg_1): Likewise.
    * config/iq2000/iq2000.c (iq2000_setup_incoming_varargs): Likewise.
    (iq2000_pass_by_reference, iq2000_arg_partial_bytes): Likewise.
    (iq2000_function_arg, iq2000_function_arg_advance): Likewise.
    * config/mn10300/mn10300.c (mn10300_pass_by_reference): Likewise.
    (mn10300_function_arg, mn10300_function_arg_advance): Likewise.
    (mn10300_arg_partial_bytes): Likewise.
    * config/ia64/ia64.c (ia64_setup_incoming_varargs): Likewise.
    (ia64_arg_partial_bytes, ia64_function_arg): Likewise.
    (ia64_function_incoming_arg, ia64_function_arg_advance): Likewise.
    (ia64_function_arg_1): Likewise.
    * config/m68k/m68k.c (m68k_function_arg_advance): Likewise.
    (m68k_function_arg): Likewise.
    * config/rs6000/rs6000.c (rs6000_function_arg_advance): Likewise.
    (rs6000_function_arg, setup_incoming_varargs): Likewise.
    (rs6000_pass_by_reference, rs6000_arg_partial_bytes): Likewise.
    * config/picochip/picochip.c (picochip_arg_partial_bytes): Likewise.
    (picochip_function_arg, picochip_incoming_function_arg): Likewise.
    (picochip_arg_advance): Likewise.
    * config/mcore/mcore.c (mcore_setup_incoming_varargs): Likewise.
    (mcore_arg_partial_bytes, mcore_function_arg): Likewise.
    (mcore_function_arg_advance): Likewise.
    * config/arc/arc.c (arc_setup_incoming_varargs): Likewise.
    (arc_pass_by_reference, arc_function_arg): Likewise.
    (arc_function_arg_advance): Likewise.
    * config/score/score.c (score_pass_by_reference): Likewise.
    (score_function_arg_advance): Likewise.
    (score_arg_partial_bytes): Likewise.  Make static.
    * config/score/score-protos.h (score_arg_partial_bytes): Don't declare.
    * config/arm/arm.c (arm_arg_partial_bytes): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (arm_function_arg, arm_function_arg_advance): Likewise.
    (arm_setup_incoming_varargs, arm_pass_by_reference): Likewise.
    * config/pa/pa.c (pa_pass_by_reference): Likewise.
    (pa_arg_partial_bytes, pa_function_arg_advance): Likewise.
    (pa_function_arg): Likewise.
    * config/mips/mips.c (mips_strict_argument_naming): Likewise.
    (mips_function_arg, mips_function_arg_advance): Likewise.
    (mips_arg_partial_bytes, mips_pass_by_reference): Likewise.
    (mips_callee_copies, mips_setup_incoming_varargs): Likewise.
    * config/vax/vax.c (vax_function_arg): Likewise.
    (vax_function_arg_advance): Likewise.
    * config/h8300/h8300.c (h8300_function_arg): Likewise.
    (h8300_function_arg_advance): Likewise.
    * config/v850/v850.c (v850_pass_by_reference): Likewise.
    (v850_strict_argument_naming, v850_function_arg): Likewise.
    (v850_arg_partial_bytes, v850_function_arg_advance): Likewise.
    (v850_setup_incoming_varargs): Likewise.
    * config/mmix/mmix.c (mmix_setup_incoming_varargs): Likewise.
    (mmix_function_arg_advance, mmix_function_incoming_arg): Likewise.
    (mmix_function_arg, mmix_pass_by_reference): Likewise.
    (mmix_function_arg_1): Replace const CUMULATIVE_ARGS* argument type
    with const void *.
    * config/bfin/bfin.c (setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (bfin_function_arg_advance, bfin_function_arg): Likewise.
    (bfin_arg_partial_bytes, bfin_pass_by_reference): Likewise.
    * calls.c (initialize_argument_information): Use pack_cumulative_args.
    (expand_call, emit_library_call_value_1): Likewise.
    * dse.c (get_call_args): Likewise.
    * expr.c (block_move_libcall_safe_for_call_parm): Likewise.
    * function.c (pass_by_reference, reference_callee_copied): Likewise.
    (assign_parm_find_data_types, assign_parms_setup_varargs): Likewise.
    (assign_parm_find_entry_rtl, assign_parms): Likewise.
    (gimplify_parameters): Likewise.
    * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
    * config/mips/mips.c (mips_output_args_xfer): Likewise.
    * config/s390/s390.c (s390_call_saved_register_used): Likewise.
    * config/sh/sh.c (sh_output_mi_thunk): Likewise.
    * config/microblaze/microblaze.c (microblaze_expand_prologue): Likewise.
    * config/m32r/m32r.c (m32r_return_in_memory): Adjust for changed
    m32r_pass_by_reference.
    * config/spu/spu.c (spu_gimplify_va_arg_expr): Adjust for changed
    spu_pass_by_reference.
gcc/c-family:
    * c-opts.c: Include "tm.h" .
gcc/java:
    * expr.c: Include "tm.h" .
gcc/fortran:
    * trans-types.c: Include "tm.h" .
gcc/ada:
    * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.

Modified:
    branches/pr46489-20101227-branch/ChangeLog.46489
    branches/pr46489-20101227-branch/gcc/   (props changed)
    branches/pr46489-20101227-branch/gcc/ada/gcc-interface/decl.c
    branches/pr46489-20101227-branch/gcc/c-family/c-opts.c
    branches/pr46489-20101227-branch/gcc/calls.c
    branches/pr46489-20101227-branch/gcc/config/alpha/alpha.c
    branches/pr46489-20101227-branch/gcc/config/arc/arc.c
    branches/pr46489-20101227-branch/gcc/config/arm/arm.c
    branches/pr46489-20101227-branch/gcc/config/avr/avr.c
    branches/pr46489-20101227-branch/gcc/config/bfin/bfin.c
    branches/pr46489-20101227-branch/gcc/config/cris/cris.c
    branches/pr46489-20101227-branch/gcc/config/crx/crx.c
    branches/pr46489-20101227-branch/gcc/config/fr30/fr30.c
    branches/pr46489-20101227-branch/gcc/config/frv/frv.c
    branches/pr46489-20101227-branch/gcc/config/h8300/h8300.c
    branches/pr46489-20101227-branch/gcc/config/i386/i386.c
    branches/pr46489-20101227-branch/gcc/config/ia64/ia64.c
    branches/pr46489-20101227-branch/gcc/config/iq2000/iq2000.c
    branches/pr46489-20101227-branch/gcc/config/lm32/lm32.c
    branches/pr46489-20101227-branch/gcc/config/m32c/m32c.c
    branches/pr46489-20101227-branch/gcc/config/m32r/m32r.c
    branches/pr46489-20101227-branch/gcc/config/m68hc11/m68hc11.c
    branches/pr46489-20101227-branch/gcc/config/m68k/m68k.c
    branches/pr46489-20101227-branch/gcc/config/mcore/mcore.c
    branches/pr46489-20101227-branch/gcc/config/mep/mep.c
    branches/pr46489-20101227-branch/gcc/config/microblaze/microblaze.c
    branches/pr46489-20101227-branch/gcc/config/mips/mips.c
    branches/pr46489-20101227-branch/gcc/config/mmix/mmix.c
    branches/pr46489-20101227-branch/gcc/config/mn10300/mn10300.c
    branches/pr46489-20101227-branch/gcc/config/moxie/moxie.c
    branches/pr46489-20101227-branch/gcc/config/pa/pa.c
    branches/pr46489-20101227-branch/gcc/config/pdp11/pdp11.c
    branches/pr46489-20101227-branch/gcc/config/picochip/picochip.c
    branches/pr46489-20101227-branch/gcc/config/rs6000/rs6000.c
    branches/pr46489-20101227-branch/gcc/config/rx/rx.c
    branches/pr46489-20101227-branch/gcc/config/s390/s390.c
    branches/pr46489-20101227-branch/gcc/config/score/score-protos.h
    branches/pr46489-20101227-branch/gcc/config/score/score.c
    branches/pr46489-20101227-branch/gcc/config/sh/sh.c
    branches/pr46489-20101227-branch/gcc/config/sparc/sparc.c
    branches/pr46489-20101227-branch/gcc/config/spu/spu-protos.h
    branches/pr46489-20101227-branch/gcc/config/spu/spu.c
    branches/pr46489-20101227-branch/gcc/config/stormy16/stormy16.c
    branches/pr46489-20101227-branch/gcc/config/v850/v850.c
    branches/pr46489-20101227-branch/gcc/config/vax/vax.c
    branches/pr46489-20101227-branch/gcc/config/xtensa/xtensa.c
    branches/pr46489-20101227-branch/gcc/doc/tm.texi
    branches/pr46489-20101227-branch/gcc/dse.c
    branches/pr46489-20101227-branch/gcc/expr.c
    branches/pr46489-20101227-branch/gcc/fortran/trans-types.c
    branches/pr46489-20101227-branch/gcc/function.c
    branches/pr46489-20101227-branch/gcc/java/expr.c
    branches/pr46489-20101227-branch/gcc/target.def
    branches/pr46489-20101227-branch/gcc/target.h
    branches/pr46489-20101227-branch/gcc/targhooks.c
    branches/pr46489-20101227-branch/gcc/targhooks.h
   
branches/pr46489-20101227-branch/gcc/testsuite/gcc.target/powerpc/ppc-round.c  
(props changed)

Propchange: branches/pr46489-20101227-branch/gcc/
            ('svn:mergeinfo' modified)

Propchange:
branches/pr46489-20101227-branch/gcc/testsuite/gcc.target/powerpc/ppc-round.c
            ('svn:mergeinfo' modified)


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2010-12-27 12:14 ` amylaar at gcc dot gnu.org
@ 2011-04-05 15:17 ` jsm28 at gcc dot gnu.org
  2011-05-02 17:46 ` amylaar at gcc dot gnu.org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jsm28 at gcc dot gnu.org @ 2011-04-05 15:17 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #6 from Joseph S. Myers <jsm28 at gcc dot gnu.org> 2011-04-05 15:17:44 UTC ---
The cumulative_args_t changes should be updated and resubmitted now we are in
4.7 stage 1.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2011-04-05 15:17 ` jsm28 at gcc dot gnu.org
@ 2011-05-02 17:46 ` amylaar at gcc dot gnu.org
  2011-05-15 13:24 ` amylaar at gcc dot gnu.org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2011-05-02 17:46 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #7 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2011-05-02 17:34:15 UTC ---
(In reply to comment #6)
> The cumulative_args_t changes should be updated and resubmitted now we are in
> 4.7 stage 1.

Before updating the cumulative_args_t changes, the logical first step
would be to add an updated version of the cross-platform test Makefile.

However, that's stuck now needing patch review:
http://gcc.gnu.org/ml/gcc-patches/2011-04/msg01044.html


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2011-05-02 17:46 ` amylaar at gcc dot gnu.org
@ 2011-05-15 13:24 ` amylaar at gcc dot gnu.org
  2011-05-30 12:16 ` amylaar at gcc dot gnu.org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2011-05-15 13:24 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #8 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2011-05-15 12:51:00 UTC ---
Author: amylaar
Date: Sun May 15 12:50:57 2011
New Revision: 173771

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173771
Log:
    PR middle-end/46500
gcc/fortran:
    * trans-types.c: Include "tm.h".
    [0] (c_size_t_size): Remove.

Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-types.c


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2011-05-15 13:24 ` amylaar at gcc dot gnu.org
@ 2011-05-30 12:16 ` amylaar at gcc dot gnu.org
  2011-06-16 13:46 ` amylaar at gcc dot gnu.org
  2011-06-25 14:44 ` amylaar at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2011-05-30 12:16 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #9 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2011-05-30 12:11:07 UTC ---
Author: amylaar
Date: Mon May 30 12:11:03 2011
New Revision: 174431

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=174431
Log:
    PR middle-end/46500
gcc/java:
    * expr.c: Include "tm.h" .

Modified:
    trunk/gcc/java/ChangeLog
    trunk/gcc/java/expr.c


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2011-05-30 12:16 ` amylaar at gcc dot gnu.org
@ 2011-06-16 13:46 ` amylaar at gcc dot gnu.org
  2011-06-25 14:44 ` amylaar at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2011-06-16 13:46 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

--- Comment #10 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2011-06-16 13:45:54 UTC ---
Author: amylaar
Date: Thu Jun 16 13:45:47 2011
New Revision: 175103

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175103
Log:
    PR middle-end/46500
gcc:
    * doc/tm.texi.in: Update Copyright date.
    * doc/tm.texi: Regenerate.
    * targhooks.c (default_setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * targhooks.h (default_setup_incoming_varargs): Likewise.
    (default_pretend_outgoing_varargs_named): Likewise.
    (hook_pass_by_reference_must_pass_in_stack): Likewise.
    (hook_callee_copies_named): Likewise.
    (default_function_arg_advance): Likewise.
    (default_function_arg): Likewise.
    (default_function_incoming_arg): Likewise.
    (hook_bool_CUMULATIVE_ARGS_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_true): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Likewise.
    (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): Likewise.
    (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Likewise.
    * target.def (pass_by_reference): Likewise.
    (setup_incoming_varargs, strict_argument_naming): Likewise.
    (pretend_outgoing_varargs_named, callee_copies): Likewise.
    (arg_partial_bytes, function_arg_advance, function_arg): Likewise.
    (function_incoming_arg): Likewise.
    * target.h: Don't include "tm.h" .
    (cumulative_args_t): New typedef.
    [GCC_TM_H] (get_cumulative_args): New static inline function.
    [GCC_TM_H] (pack_cumulative_args): Likewise.
    * config/alpha/alpha.c (alpha_function_arg): Replace CUMULATIVE_ARGS*
    argument type with cumulative_args_t.
    (alpha_function_arg_advance, alpha_arg_partial_bytes): Likewise.
    (alpha_pass_by_reference, alpha_setup_incoming_varargs): Likewise.
    * config/frv/frv.c (frv_setup_incoming_varargs): Likewise.
    (frv_arg_partial_bytes, frv_function_arg): Likewise.
    (frv_function_incoming_arg, frv_function_arg_advance): Likewise.
    (frv_function_arg_1): Likewise.
    * config/s390/s390.c (s390_pass_by_reference): Likewise.
    (s390_function_arg_advance, s390_function_arg): Likewise.
    * config/m32c/m32c.c (m32c_function_arg): Likewise.
    (m32c_pass_by_reference, m32c_function_arg_advance): Likewise.
    (m32c_strict_argument_naming): Likewise.
    * config/spu/spu.c (spu_pass_by_reference, spu_function_arg): Likewise.
    (spu_function_arg_advance): Likewise.
    (spu_setup_incoming_varargs): Likewise.  Make static.
    * config/spu/spu-protos.h (spu_setup_incoming_varargs):
    Remove prototype.
    * config/sparc/sparc.c (sparc_strict_argument_naming): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (sparc_pass_by_reference, sparc_function_arg_advance): Likewise.
    (sparc_function_arg, sparc_function_incoming_arg): Likewise.
    (sparc_arg_partial_bytes, sparc_function_arg_1): Likewise.
    * config/mep/mep.c (mep_setup_incoming_varargs): Likewise.
    (mep_pass_by_reference, mep_function_arg): Likewise.
    (mep_function_arg_advance): Likewise.
    * config/m32r/m32r.c (m32r_setup_incoming_varargs): Likewise.
    (m32r_pass_by_reference, m32r_arg_partial_bytes): Likewise.
    (m32r_function_arg, m32r_function_arg_advance): Likewise.
    * config/rx/rx.c (rx_function_arg, rx_function_arg_advance): Likewise.
    * config/i386/i386.c (ix86_function_arg_advance): Likewise.
    (ix86_function_arg, ix86_pass_by_reference): Likewise.
    (ix86_setup_incoming_varargs): Likewise.
    * config/sh/sh.c (sh_setup_incoming_varargs): Likewise.
    (sh_strict_argument_naming): Likewise.
    (sh_pretend_outgoing_varargs_named, sh_pass_by_reference): Likewise.
    (sh_callee_copies, sh_arg_partial_bytes): Likewise.
    (sh_function_arg_advance, sh_function_arg): Likewise.
    * config/pdp11/pdp11.c (pdp11_function_arg): Likewise.
    (pdp11_function_arg_advance): Likewise.
    * config/microblaze/microblaze.c (microblaze_function_arg_advance):
    Likewise.
    (microblaze_function_arg, function_arg_partial_bytes): Likewise.
    * config/avr/avr.c (avr_function_arg): Likewise.
    (avr_function_arg_advance): Likewise.
    * config/xtensa/xtensa.c (xtensa_function_arg_advance): Likewise.
    (xtensa_function_arg, xtensa_function_incoming_arg): Likewise.
    (xtensa_function_arg_1): Likewise.
    * config/stormy16/stormy16.c (xstormy16_function_arg_advance): Likewise.
    (xstormy16_function_arg): Likewise.
    * config/fr30/fr30.c (fr30_setup_incoming_varargs): Likewise.
    (fr30_arg_partial_bytes, fr30_function_arg): Likewise.
    (fr30_function_arg_advance): Likewise.
    * config/lm32/lm32.c (lm32_setup_incoming_varargs): Likewise.
    (lm32_function_arg, lm32_function_arg_advance): Likewise.
    * config/moxie/moxie.c (moxie_setup_incoming_varargs): Likewise.
    (moxie_function_arg, moxie_function_arg_advance): Likewise.
    (moxie_pass_by_reference, moxie_arg_partial_bytes): Likewise.
    * config/cris/cris.c (cris_setup_incoming_varargs): Likewise.
    (cris_pass_by_reference, cris_arg_partial_bytes): Likewise.
    (cris_function_arg, cris_function_incoming_arg): Likewise.
    (cris_function_arg_advance, cris_function_arg_1): Likewise.
    * config/iq2000/iq2000.c (iq2000_setup_incoming_varargs): Likewise.
    (iq2000_pass_by_reference, iq2000_arg_partial_bytes): Likewise.
    (iq2000_function_arg, iq2000_function_arg_advance): Likewise.
    * config/mn10300/mn10300.c (mn10300_pass_by_reference): Likewise.
    (mn10300_function_arg, mn10300_function_arg_advance): Likewise.
    (mn10300_arg_partial_bytes): Likewise.
    * config/ia64/ia64.c (ia64_setup_incoming_varargs): Likewise.
    (ia64_arg_partial_bytes, ia64_function_arg): Likewise.
    (ia64_function_incoming_arg, ia64_function_arg_advance): Likewise.
    (ia64_function_arg_1): Likewise.
    * config/m68k/m68k.c (m68k_function_arg_advance): Likewise.
    (m68k_function_arg): Likewise.
    * config/rs6000/rs6000.c (rs6000_function_arg_advance): Likewise.
    (rs6000_function_arg, setup_incoming_varargs): Likewise.
    (rs6000_pass_by_reference, rs6000_arg_partial_bytes): Likewise.
    * config/picochip/picochip.c (picochip_arg_partial_bytes): Likewise.
    (picochip_function_arg, picochip_incoming_function_arg): Likewise.
    (picochip_arg_advance): Likewise.
    * config/mcore/mcore.c (mcore_setup_incoming_varargs): Likewise.
    (mcore_arg_partial_bytes, mcore_function_arg): Likewise.
    (mcore_function_arg_advance): Likewise.
    * config/score/score.c (score_pass_by_reference): Likewise.
    (score_function_arg_advance): Likewise.
    (score_arg_partial_bytes): Likewise.  Make static.
    * config/score/score-protos.h (score_arg_partial_bytes): Don't declare.
    * config/arm/arm.c (arm_arg_partial_bytes): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (arm_function_arg, arm_function_arg_advance): Likewise.
    (arm_setup_incoming_varargs, arm_pass_by_reference): Likewise.
    * config/pa/pa.c (pa_pass_by_reference): Likewise.
    (pa_arg_partial_bytes, pa_function_arg_advance): Likewise.
    (pa_function_arg): Likewise.
    * config/mips/mips.c (mips_strict_argument_naming): Likewise.
    (mips_function_arg, mips_function_arg_advance): Likewise.
    (mips_arg_partial_bytes, mips_pass_by_reference): Likewise.
    (mips_callee_copies, mips_setup_incoming_varargs): Likewise.
    * config/vax/vax.c (vax_function_arg): Likewise.
    (vax_function_arg_advance): Likewise.
    * config/h8300/h8300.c (h8300_function_arg): Likewise.
    (h8300_function_arg_advance): Likewise.
    * config/v850/v850.c (v850_pass_by_reference): Likewise.
    (v850_strict_argument_naming, v850_function_arg): Likewise.
    (v850_arg_partial_bytes, v850_function_arg_advance): Likewise.
    (v850_setup_incoming_varargs): Likewise.
    * config/mmix/mmix.c (mmix_setup_incoming_varargs): Likewise.
    (mmix_function_arg_advance, mmix_function_incoming_arg): Likewise.
    (mmix_function_arg, mmix_pass_by_reference): Likewise.
    (mmix_function_arg_1): Replace const CUMULATIVE_ARGS* argument type
    with const void *.
    * config/bfin/bfin.c (setup_incoming_varargs): Replace
    CUMULATIVE_ARGS* argument type with cumulative_args_t.
    (bfin_function_arg_advance, bfin_function_arg): Likewise.
    (bfin_arg_partial_bytes, bfin_pass_by_reference): Likewise.
    * calls.c (emit_call_1): Change type of args_so_far to
    cumulative_args_t.  Changed all callers.
    (initialize_argument_information): Likewise.
    (expand_call, emit_library_call_value_1): Use pack_cumulative_args.
    * dse.c (get_call_args): Likewise.
    * expr.c (block_move_libcall_safe_for_call_parm): Likewise.
    * function.c (pass_by_reference, reference_callee_copied): Likewise.
    (struct assign_parm_data_all): Rename args_so_far to args_so_far_v.
    New member args_so_far_v.  Changed all users.
    * var-tracking.c (prepare_call_arguments): Use pack_cumulative_args.
    * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
    * config/mips/mips.c (mips_output_args_xfer): Likewise.
    * config/s390/s390.c (s390_call_saved_register_used): Likewise.
    * config/sh/sh.c (sh_output_mi_thunk): Likewise.
    * config/microblaze/microblaze.c (microblaze_expand_prologue): Likewise.
    * config/m32r/m32r.c (m32r_return_in_memory): Adjust for changed
    m32r_pass_by_reference.
gcc/ada:
    * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ada/ChangeLog
    trunk/gcc/ada/gcc-interface/decl.c
    trunk/gcc/calls.c
    trunk/gcc/config/alpha/alpha.c
    trunk/gcc/config/arm/arm.c
    trunk/gcc/config/avr/avr.c
    trunk/gcc/config/bfin/bfin.c
    trunk/gcc/config/cris/cris.c
    trunk/gcc/config/fr30/fr30.c
    trunk/gcc/config/frv/frv.c
    trunk/gcc/config/h8300/h8300.c
    trunk/gcc/config/i386/i386.c
    trunk/gcc/config/ia64/ia64.c
    trunk/gcc/config/iq2000/iq2000.c
    trunk/gcc/config/lm32/lm32.c
    trunk/gcc/config/m32c/m32c.c
    trunk/gcc/config/m32r/m32r.c
    trunk/gcc/config/m68k/m68k.c
    trunk/gcc/config/mcore/mcore.c
    trunk/gcc/config/mep/mep.c
    trunk/gcc/config/microblaze/microblaze.c
    trunk/gcc/config/mips/mips.c
    trunk/gcc/config/mmix/mmix.c
    trunk/gcc/config/mn10300/mn10300.c
    trunk/gcc/config/moxie/moxie.c
    trunk/gcc/config/pa/pa.c
    trunk/gcc/config/pdp11/pdp11.c
    trunk/gcc/config/picochip/picochip.c
    trunk/gcc/config/rs6000/rs6000.c
    trunk/gcc/config/rx/rx.c
    trunk/gcc/config/s390/s390.c
    trunk/gcc/config/score/score-protos.h
    trunk/gcc/config/score/score.c
    trunk/gcc/config/sh/sh.c
    trunk/gcc/config/sparc/sparc.c
    trunk/gcc/config/spu/spu-protos.h
    trunk/gcc/config/spu/spu.c
    trunk/gcc/config/stormy16/stormy16.c
    trunk/gcc/config/v850/v850.c
    trunk/gcc/config/vax/vax.c
    trunk/gcc/config/xtensa/xtensa.c
    trunk/gcc/doc/tm.texi
    trunk/gcc/dse.c
    trunk/gcc/expr.c
    trunk/gcc/function.c
    trunk/gcc/target.def
    trunk/gcc/target.h
    trunk/gcc/targhooks.c
    trunk/gcc/targhooks.h
    trunk/gcc/var-tracking.c


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug middle-end/46500] target.h includes tm.h
  2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2011-06-16 13:46 ` amylaar at gcc dot gnu.org
@ 2011-06-25 14:44 ` amylaar at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: amylaar at gcc dot gnu.org @ 2011-06-25 14:44 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46500

Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED

--- Comment #11 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> 2011-06-25 14:43:08 UTC ---
Fixed in r175103.


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2011-06-25 14:44 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-16 16:12 [Bug middle-end/46500] New: target.h includes tm.h amylaar at gcc dot gnu.org
2010-11-23 14:18 ` [Bug middle-end/46500] " amylaar at gcc dot gnu.org
2010-11-23 15:45 ` joseph at codesourcery dot com
2010-11-24 20:12 ` amylaar at gcc dot gnu.org
2010-12-17 12:35 ` amylaar at gcc dot gnu.org
2010-12-27 12:14 ` amylaar at gcc dot gnu.org
2011-04-05 15:17 ` jsm28 at gcc dot gnu.org
2011-05-02 17:46 ` amylaar at gcc dot gnu.org
2011-05-15 13:24 ` amylaar at gcc dot gnu.org
2011-05-30 12:16 ` amylaar at gcc dot gnu.org
2011-06-16 13:46 ` amylaar at gcc dot gnu.org
2011-06-25 14:44 ` amylaar at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).