delete emitter, create IR enum
This commit is contained in:
@@ -1,7 +0,0 @@
|
|||||||
#include <emitter.hpp>
|
|
||||||
|
|
||||||
namespace rc64 {
|
|
||||||
Emitter::Emitter() : Xbyak::CodeGenerator(kMaxCodeCacheSize, Xbyak::AutoGrow) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
#include <xbyak/xbyak.h>
|
|
||||||
#include <util.hpp>
|
|
||||||
#include <type.hpp>
|
|
||||||
|
|
||||||
namespace rc64 {
|
|
||||||
struct Emitter : Xbyak::CodeGenerator {
|
|
||||||
Emitter();
|
|
||||||
|
|
||||||
static constexpr size_t kMaxTableSize = 1 << 12;
|
|
||||||
static constexpr size_t kMaxPagesPerTable = 1 << 20;
|
|
||||||
static constexpr size_t kMaxCodeCacheSize = kMaxTableSize * kMaxPagesPerTable;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
17
src/frontend/ir.hpp
Normal file
17
src/frontend/ir.hpp
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
enum InstructionType {
|
||||||
|
Add,
|
||||||
|
Subtract,
|
||||||
|
Multiply,
|
||||||
|
Divide,
|
||||||
|
Xor,
|
||||||
|
Not,
|
||||||
|
Or,
|
||||||
|
And,
|
||||||
|
Negate,
|
||||||
|
LeftShift,
|
||||||
|
RightShift,
|
||||||
|
CallFunction
|
||||||
|
};
|
||||||
|
|
||||||
Reference in New Issue
Block a user