This is the mail archive of the gcc-patches@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]

[PATCH]: Correct edge test to use new EDGE_CROSSING flag



When hot/cold partitioning was changed to use EDGE_CROSSING flag rather than a field in the edge
struct, the following edge test in rtl_verify_flow_info_1 was overlooked; this causes a failure if
you do a profiledbootstrap with partitioning enabled (at least on an x86 running Linux). The following
patch fixes this failure by adding the new edge flag to the test conditions.


This has been tested with a profiled bootstrap, with partitioning enabled, on an x86 running Linux; I'm
in the process of running a profiled bootstrap with partitioning on a G4 running apple powerpc darwin.
Assuming the G4 profiled bootstrap works, is this okay to commit to FSF mainline?


-- Caroline Tice
ctice@apple.com

2004-08-30

* cfgrtl.c (rtl_verify_flow_info_1): Add new edge flag, EDGE_CROSSING, to flags test case.

Index: gcc/cfgrtl.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cfgrtl.c,v
retrieving revision 1.131
diff -c -3 -p -r1.131 cfgrtl.c
*** gcc/cfgrtl.c        25 Aug 2004 19:52:52 -0000      1.131
--- gcc/cfgrtl.c        30 Aug 2004 21:16:20 -0000
*************** rtl_verify_flow_info_1 (void)
*** 1999,2005 ****
          if ((e->flags & ~(EDGE_DFS_BACK
                            | EDGE_CAN_FALLTHRU
                            | EDGE_IRREDUCIBLE_LOOP
!                           | EDGE_LOOP_EXIT)) == 0)
            n_branch++;

          if (e->flags & EDGE_ABNORMAL_CALL)
--- 1999,2006 ----
          if ((e->flags & ~(EDGE_DFS_BACK
                            | EDGE_CAN_FALLTHRU
                            | EDGE_IRREDUCIBLE_LOOP
!                           | EDGE_LOOP_EXIT
!                           | EDGE_CROSSING)) == 0)
            n_branch++;

if (e->flags & EDGE_ABNORMAL_CALL)


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