mirror of https://github.com/mgba-emu/mgba.git
Stub out POP/PUSH
This commit is contained in:
parent
99d0b76f3b
commit
5e78400a25
|
@ -1,8 +1,16 @@
|
||||||
#ifndef ISA_INLINES_H
|
#ifndef ISA_INLINES_H
|
||||||
#define ISA_INLINES_H
|
#define ISA_INLINES_H
|
||||||
|
|
||||||
|
#include "arm.h"
|
||||||
|
|
||||||
#define UNUSED(V) (void)(V)
|
#define UNUSED(V) (void)(V)
|
||||||
|
|
||||||
|
#define DO_4(DIRECTIVE) \
|
||||||
|
DIRECTIVE, \
|
||||||
|
DIRECTIVE, \
|
||||||
|
DIRECTIVE, \
|
||||||
|
DIRECTIVE
|
||||||
|
|
||||||
#define DO_8(DIRECTIVE) \
|
#define DO_8(DIRECTIVE) \
|
||||||
DIRECTIVE, \
|
DIRECTIVE, \
|
||||||
DIRECTIVE, \
|
DIRECTIVE, \
|
||||||
|
@ -14,10 +22,7 @@
|
||||||
DIRECTIVE
|
DIRECTIVE
|
||||||
|
|
||||||
#define DO_256(DIRECTIVE) \
|
#define DO_256(DIRECTIVE) \
|
||||||
DO_8(DO_8(DIRECTIVE)), \
|
DO_4(DO_8(DO_8(DIRECTIVE)))
|
||||||
DO_8(DO_8(DIRECTIVE)), \
|
|
||||||
DO_8(DO_8(DIRECTIVE)), \
|
|
||||||
DO_8(DO_8(DIRECTIVE))
|
|
||||||
|
|
||||||
#define DO_INTERLACE(LEFT, RIGHT) \
|
#define DO_INTERLACE(LEFT, RIGHT) \
|
||||||
LEFT, \
|
LEFT, \
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
#include "isa-thumb.h"
|
#include "isa-thumb.h"
|
||||||
|
|
||||||
|
#include "isa-inlines.h"
|
||||||
|
|
||||||
static const ThumbInstruction _thumbTable[0x400];
|
static const ThumbInstruction _thumbTable[0x400];
|
||||||
|
|
||||||
// Instruction definitions
|
// Instruction definitions
|
||||||
|
@ -189,6 +191,11 @@ DEFINE_LOAD_STORE_WITH_REGISTER_THUMB(STRH2, )
|
||||||
DEFINE_INSTRUCTION_THUMB(ADD7, )
|
DEFINE_INSTRUCTION_THUMB(ADD7, )
|
||||||
DEFINE_INSTRUCTION_THUMB(SUB4, )
|
DEFINE_INSTRUCTION_THUMB(SUB4, )
|
||||||
|
|
||||||
|
DEFINE_INSTRUCTION_THUMB(POP, )
|
||||||
|
DEFINE_INSTRUCTION_THUMB(POPR, )
|
||||||
|
DEFINE_INSTRUCTION_THUMB(PUSH, )
|
||||||
|
DEFINE_INSTRUCTION_THUMB(PUSHR, )
|
||||||
|
|
||||||
DEFINE_INSTRUCTION_THUMB(ILL, )
|
DEFINE_INSTRUCTION_THUMB(ILL, )
|
||||||
DEFINE_INSTRUCTION_THUMB(BX, )
|
DEFINE_INSTRUCTION_THUMB(BX, )
|
||||||
|
|
||||||
|
@ -266,6 +273,16 @@ DEFINE_INSTRUCTION_THUMB(BX, )
|
||||||
DECLARE_INSTRUCTION_THUMB(EMITTER, ADD7), \
|
DECLARE_INSTRUCTION_THUMB(EMITTER, ADD7), \
|
||||||
DECLARE_INSTRUCTION_THUMB(EMITTER, SUB4), \
|
DECLARE_INSTRUCTION_THUMB(EMITTER, SUB4), \
|
||||||
DECLARE_INSTRUCTION_THUMB(EMITTER, SUB4), \
|
DECLARE_INSTRUCTION_THUMB(EMITTER, SUB4), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, PUSH)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, PUSHR)), \
|
||||||
|
DO_8(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_8(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_8(DECLARE_INSTRUCTION_THUMB(EMITTER, ILL)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, POP)), \
|
||||||
|
DO_4(DECLARE_INSTRUCTION_THUMB(EMITTER, POPR)), \
|
||||||
|
|
||||||
static const ThumbInstruction _thumbTable[0x400] = {
|
static const ThumbInstruction _thumbTable[0x400] = {
|
||||||
DECLARE_THUMB_EMITTER_BLOCK(_ThumbInstruction)
|
DECLARE_THUMB_EMITTER_BLOCK(_ThumbInstruction)
|
||||||
|
|
Loading…
Reference in New Issue