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]

Re: [lto] PATCH: new CALL_EXPR constructors

Paolo Bonzini wrote:

    * gcc/builtins.c (fold_builtin_call_list): Replacement for
    fold_build_call_expr.  Renamed for consistency with other new
    CALL_EXPR constructors, and removed the static_chain argument since
    it is never used.  Fixed all callers.

Please leave in the static_chain argument, one step at a time.

I had to touch all the places where CALL_EXPRs were being constructed anyway to get rid of the build3 and fold_build3 calls. I found exactly one place where a CALL_EXPR was being constructed with a non-explicitly-NULL static chain (in tree-ssa-pre.c, create_expression_by_pieces). And, actually, there was a problem with this specific function before: it doesn't make any sense to try to fold the call if the static chain is provided and is non-NULL. I'm not proposing to remove the static chain operand from the data structure, just from these higher-level constructors. I can provide some lower-level generic tcc_vl_exp constructors in my next batch of changes when the new representation is in place, so that there is still a fully general interface.


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