Branch: Tag:

2016-08-26

2016-08-26 19:41:35 by Marcus Comstedt <marcus@mc.pp.se>

ARM64: implement QUICK and comparison jumps

47:   #define LOW_GET_JUMP() ((INT32)PROG_COUNTER[JUMP_EPILOGUE_SIZE])   #define LOW_SKIPJUMP() (SET_PROG_COUNTER(PROG_COUNTER + JUMP_EPILOGUE_SIZE + 1))    + #define INS_F_JUMP arm64_ins_f_jump + #define INS_F_JUMP_WITH_ARG arm64_ins_f_jump_with_arg + #define INS_F_JUMP_WITH_TWO_ARGS arm64_ins_f_jump_with_2_args + #define UPDATE_F_JUMP arm64_update_f_jump + #define READ_F_JUMP arm64_read_f_jump + int arm64_ins_f_jump(unsigned int opcode, int backward_jump); + int arm64_ins_f_jump_with_arg(unsigned int opcode, INT32 arg1, int backward_jump); + int arm64_ins_f_jump_with_2_args(unsigned int opcode, INT32 arg1, INT32 arg2, int backward_jump); + void arm64_update_f_jump(INT32 offset, INT32 to_offset); + int arm64_read_f_jump(INT32 offset); +    void ins_f_byte(unsigned int opcode);   void ins_f_byte_with_arg(unsigned int a, INT32 b);   void ins_f_byte_with_2_args(unsigned int a, INT32 c, INT32 b);