delete a basic block, and maintain CFG of remaining BBs

sean yang seanatpurdue@hotmail.com
Sun May 28 02:17:00 GMT 2006


Hi folks,

Can anyone give an advice on how to delete a basic block and maintain the 
CFG for the remaining code valid? i.e, I want to delete a basic block (all 
the code within that basic block) satisfying a specific criteria, yet 
maintaining the validity of CFG. Is there a simple API to do it? It seems 
expunge_block() does not do that successfully.

----------------------Here is what I want to do, 
basically--------------------------
  FOR_EACH_BB(bb){
      if (the basic block contains instruction sequence "A,B,C")
      {
      delete bb;
      make predecessors of bb as the predecessors of bb's successor;
      }
  }
-------------------------------------------------------------------------------------------

Thanks for any advice,
Sean

_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar – get it now! 
http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/



More information about the Gcc mailing list