This is the mail archive of the gcc-bugs@gcc.gnu.org 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 tree-optimization/47237] [4.3/4.4/4.5 Regression] builtin_apply_args broken WRT local ABI changes.


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

--- Comment #8 from Diego Novillo <dnovillo at gcc dot gnu.org> 2011-02-02 17:53:23 UTC ---
Author: dnovillo
Date: Wed Feb  2 17:53:17 2011
New Revision: 169620

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169620
Log:
    PR target/47237
    * gcc.c-torture/execute/pr47237.c: New testcase.

    * cgraph.h (cgraph_local_info): New field can_change_signature.
    * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
    signature can change.
    (ipcp_estimate_growth): Call sequence simplify only if calle signature
    can change.
    (ipcp_insert_stage): Only compute args_to_skip if signature can change.
    (cgraph_function_versioning): We can not change signature of functions
    that don't allow that.
    * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
    (lto_input_node): Likewise.
    * ipa-inline.c (compute_inline_parameters): Compute
local.can_change_signature.
    * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
    * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on functions
    that can not change signature.
    * i386.c (ix86_function_regparm, ix86_function_sseregparm,
    init_cumulative_args): Do not use local calling conventions for functions
    that can not change signature.

Modified:
    branches/google/integration/gcc/ChangeLog
    branches/google/integration/gcc/testsuite/ChangeLog


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