pike.git / src / code / ppc32.h

version» Context lines:

pike.git/src/code/ppc32.h:1:   /* -  * $Id: ppc32.h,v 1.3 2001/07/31 23:10:35 marcus Exp $ +  * $Id: ppc32.h,v 1.4 2001/08/13 23:39:11 mast Exp $    */      #define PIKE_OPCODE_T unsigned INT32      #define LOW_GET_JUMP() (PROG_COUNTER[0])   #define LOW_SKIPJUMP() (SET_PROG_COUNTER(PROG_COUNTER + 1))   #define PROG_COUNTER (((INT32 **)__builtin_frame_address(1))[2])      #define SET_REG(REG, X) do { \    INT32 val_ = X; \
pike.git/src/code/ppc32.h:18:    /* addis reg,0,%hi(val) */ \    add_to_program(0x3c000000|(reg_<<21)|((val_ >> 16) & 0xffff)); \    if (val_ & 0xffff) { \    /* ori reg,reg,%lo(val) */ \    add_to_program(0x60000000|(reg_<<21)|(reg_<<16)|(val_ & 0xffff)); \    } \    } \    } while(0)      #define UPDATE_PC() do { \ -  INT32 tmp = PC; \ +  INT32 tmp = PIKE_PC; \    SET_REG(11, ((INT32)(&Pike_interpreter.frame_pointer))); \    /* lwz 11,0(11) */ \    add_to_program(0x80000000|(11<<21)|(11<<16)); \    SET_REG(0, tmp); \    /* stw 0,pc(11) */ \    add_to_program(0x90000000|(0<<21)|(11<<16)| \    OFFSETOF(pike_frame, pc)); \    } while(0)      #define ins_pointer(PTR) add_to_program((INT32)(PTR))