This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/29478] [4.2/4.3 Regression] optmization generates warning for casts

------- Comment #9 from amylaar at gcc dot gnu dot org  2006-10-24 13:50 -------
(In reply to comment #8)
> Hmm, This is one of the language hooks which really need to go away
> for LTO as I understand it.  Also I the real problem comes from the
> inliner or the gimplifier (I am betting the gimplifier) removing the
> cast as it is useless in our type system.

How is LTO supposed to handle argument passing for inlining?  As I see it,
we have basically two choices:
1.: We pass a actual parameter with a type and a value of that type,
    to a formal parameter of a possibly different type.
    This can require conversions, which would have to be either done by
    frontend hooks (this is the way the intra-module inlining works at
    the moment), or by some frontend-independent mechanism that the
    frontends anticipate when they generate the parameter encodings for the
    call site.
2.: We pass an actual parameter as bit pattern in registers and/or a stack
    slot.  The inliner will have to figure out where its formal parameter
    is coming in, and will need to re-build abstractions that the optimizers
    can work with.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]