static bool ActiveCompare( instruction *ins ) { /*********************************************/ if( _FalseIndex( ins ) == _TrueIndex( ins ) ) return( false ); /* if unexpanded OR expanded and not just placeholder conditional */ if( ins->table == NULL ) return( true ); if( ins->u.gen_table == NULL ) return( false ); if( DoesSomething( ins ) ) return( true ); return( false ); }
void FreeJunk( block *blk ) /************************************* Free instructions which aren't going to be generated. */ { instruction *ins; instruction *next; for( ins = blk->ins.hd.next; ins->head.opcode != OP_BLOCK; ins = next ) { next = ins->head.next; if( !DoesSomething( ins ) && !SideEffect( ins ) && ins->head.opcode < FIRST_OP_WITH_LABEL && ins->head.opcode != OP_NOP ) { /*% there for zap info*/ FreeIns( ins ); } } }
int main() { DoesSomething(); return 0; }