block.h_old 384 B

1234567891011121314151617181920212223242526272829
  1. /*
  2. A block represents a function - code & data.
  3. */
  4. #ifndef BLOCK_H
  5. #define BLOCK_H
  6. struct Block{
  7. Block( Block *parent );
  8. ~Block();
  9. void genCode( TNode *t ){ code.push_back( t ); }
  10. void genData( TNode *t ){ data.push_back( t ); }
  11. void generate( Codegen *gen );
  12. private:
  13. Block *parent;
  14. vector<Block*> children;
  15. vector<TNode*> code;
  16. vector<TNode*> data;
  17. };
  18. #endif