#include "iredges.h"
#include "irgwalk.h"
#include "irphase_t.h"
-#include "height.h"
+#include "heights.h"
typedef struct reg_flag_t {
const arch_register_t *reg; /**< register at an input position.
static void prepare_rsm(register_state_mapping_t *rsm,
const arch_env_t *arch_env)
{
- unsigned n_reg_classes = arch_env_get_n_reg_class(arch_env);
+ unsigned n_reg_classes = arch_env->n_register_classes;
unsigned c;
reg_flag_t memory = { NULL, 0 };
rsm->value_map = NULL;
rsm->reg_index_map = XMALLOCN(int*, n_reg_classes);
for (c = 0; c < n_reg_classes; ++c) {
- const arch_register_class_t *cls = arch_env_get_reg_class(arch_env, c);
+ const arch_register_class_t *cls = &arch_env->register_classes[c];
unsigned n_regs = arch_register_class_n_regs(cls);
unsigned r;
static void free_rsm(register_state_mapping_t *rsm, const arch_env_t *arch_env)
{
- unsigned n_reg_classes = arch_env_get_n_reg_class(arch_env);
+ unsigned n_reg_classes = arch_env->n_register_classes;
unsigned c;
for (c = 0; c < n_reg_classes; ++c) {
static void rsm_clear_regs(register_state_mapping_t *rsm,
const arch_env_t *arch_env)
{
- unsigned n_reg_classes = arch_env_get_n_reg_class(arch_env);
+ unsigned n_reg_classes = arch_env->n_register_classes;
unsigned c;
reg_flag_t memory = { NULL, 0 };
for (c = 0; c < n_reg_classes; ++c) {
- const arch_register_class_t *cls = arch_env_get_reg_class(arch_env, c);
+ const arch_register_class_t *cls = &arch_env->register_classes[c];
unsigned n_regs = arch_register_class_n_regs(cls);
unsigned r;
}
}
-static heights_t *heights;
+static ir_heights_t *heights;
/**
* Check if a node is somehow data dependent on another one.