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 middle-end/37243] [4.4 Regression] IRA causes wrong code generation



------- Comment #25 from vmakarov at gcc dot gnu dot org  2008-09-03 20:13 -------
Subject: Bug 37243

Author: vmakarov
Date: Wed Sep  3 20:12:27 2008
New Revision: 139949

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=139949
Log:
2008-09-03  Vladimir Makarov  <vmakarov@redhat.com>

        PR rtl-opt/37243

        * ira-conflicts.c (REG_SUBREG_P, go_through_subreg): New.
        (process_regs_for_copy): Process subregs.  Refine check when cost
        is taken into account in ira-costs.c.
        (process_reg_shuffles): Use REG_SUBREG_P.
        (add_insn_allocno_copies): Ditto.  Ignore modes.

        * ira-color.c (conflict_allocno_vec): New.
        (COST_HOP_DIVISOR): New macro.
        (update_copy_costs_1): Use it.
        (update_conflict_hard_regno_costs): New function.
        (assign_hard_reg): Use it.
        (ira_color): Allocate and free conflict_allocno_vec.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ira-color.c
    trunk/gcc/ira-conflicts.c


-- 


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


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