#ifndef COMPILER_IROPROPAGATE_H #define COMPILER_IROPROPAGATE_H #include "compiler/IrOptimizer.h" #include "compiler/BitVector.h" #ifdef __MWERKS__ #pragma options align=mac68k #endif struct IROAssign { IROLinear *linear; UInt16 index; UInt16 varIndex; IROLinear *linear2; BitVector *depends; Object *varObj; VarRecord *var; IROAssign *next; IROAssign *prev; UInt16 x20; IRONode *node; }; #ifdef __MWERKS__ #pragma options align=reset #endif extern IROAssign *IRO_FirstAssign; extern IROAssign *IRO_LastAssign; extern SInt32 IRO_NumAssign; extern int IRO_IsRegable(Object *obj); extern Boolean IRO_CopyAndConstantPropagation(void); extern void IRO_ExpressionPropagation(void); #endif