diff options
Diffstat (limited to '')
| -rw-r--r-- | includes/compiler/PCodeAssembly.h | 24 | 
1 files changed, 21 insertions, 3 deletions
| diff --git a/includes/compiler/PCodeAssembly.h b/includes/compiler/PCodeAssembly.h index 41082a3..1819a04 100644 --- a/includes/compiler/PCodeAssembly.h +++ b/includes/compiler/PCodeAssembly.h @@ -3,8 +3,26 @@  #include "compiler/common.h" -extern UInt32 assemblepcode(PCode *instr, UInt32 offset, PCodeArg *dummyArg); -extern void optimizefinalbranches(); -extern void assemblefunction(); +#ifdef __MWERKS__ +#pragma options align=mac68k +#endif +typedef struct WeirdOperand { +    short type; // matches MWReloc +    Object *x2; +    UInt32 x6; +} WeirdOperand; + +typedef struct EntryPoint { +    struct EntryPoint *next; +    Object *object; +    PCodeBlock *block; +} EntryPoint; +#ifdef __MWERKS__ +#pragma options align=reset +#endif + +extern UInt32 assemblepcode(PCode *instr, UInt32 offset, WeirdOperand *wop); +extern SInt32 optimizefinalbranches(SInt32 codesize); +extern SInt32 assemblefunction(Object *func, EntryPoint *entrypoints);  #endif | 
