ir/basic_block: Forward declare headers where applicable
Now that the constructor and destructors have been placed within the cpp file, we can forward declare the memory pool data structures. Now, a change to the memory pool code won't ripple across the entirety of the IR emitter.
This commit is contained in:
parent
9309d95b17
commit
4fc531f71b
2 changed files with 9 additions and 4 deletions
|
@ -13,15 +13,17 @@
|
|||
#include <fmt/ostream.h>
|
||||
|
||||
#include "common/assert.h"
|
||||
#include "common/memory_pool.h"
|
||||
#include "frontend/A32/types.h"
|
||||
#include "frontend/A64/types.h"
|
||||
#include "frontend/ir/basic_block.h"
|
||||
#include "frontend/ir/cond.h"
|
||||
#include "frontend/ir/opcodes.h"
|
||||
|
||||
namespace Dynarmic::IR {
|
||||
|
||||
Block::Block(const LocationDescriptor& location)
|
||||
: location{location}, end_location{location},
|
||||
: location{location}, end_location{location}, cond{Cond::AL},
|
||||
instruction_alloc_pool{std::make_unique<Common::Pool>(sizeof(Inst), 4096)} {}
|
||||
|
||||
Block::~Block() = default;
|
||||
|
|
|
@ -13,15 +13,18 @@
|
|||
|
||||
#include "common/common_types.h"
|
||||
#include "common/intrusive_list.h"
|
||||
#include "common/memory_pool.h"
|
||||
#include "frontend/ir/cond.h"
|
||||
#include "frontend/ir/location_descriptor.h"
|
||||
#include "frontend/ir/microinstruction.h"
|
||||
#include "frontend/ir/terminal.h"
|
||||
#include "frontend/ir/value.h"
|
||||
|
||||
namespace Dynarmic::Common {
|
||||
class Pool;
|
||||
}
|
||||
|
||||
namespace Dynarmic::IR {
|
||||
|
||||
enum class Cond;
|
||||
enum class Opcode;
|
||||
|
||||
/**
|
||||
|
@ -142,7 +145,7 @@ private:
|
|||
/// Description of the end location of this block
|
||||
LocationDescriptor end_location;
|
||||
/// Conditional to pass in order to execute this block
|
||||
Cond cond = Cond::AL;
|
||||
Cond cond;
|
||||
/// Block to execute next if `cond` did not pass.
|
||||
std::optional<LocationDescriptor> cond_failed = {};
|
||||
/// Number of cycles this block takes to execute if the conditional fails.
|
||||
|
|
Loading…
Reference in a new issue