aboutsummaryrefslogtreecommitdiff
path: root/sim/igen/gen.h
diff options
context:
space:
mode:
Diffstat (limited to 'sim/igen/gen.h')
-rw-r--r--sim/igen/gen.h28
1 files changed, 16 insertions, 12 deletions
diff --git a/sim/igen/gen.h b/sim/igen/gen.h
index 1bdbd08..270e1cf 100644
--- a/sim/igen/gen.h
+++ b/sim/igen/gen.h
@@ -83,7 +83,7 @@ struct _gen_entry
gen_entry *parent; /* parent has the opcode* data */
/* as a table containing entries */
- decode_table *opcode_rule;
+ const decode_table *opcode_rule;
opcode_field *opcode;
int nr_prefetched_words;
int nr_entries;
@@ -104,8 +104,8 @@ struct _gen_entry
struct _gen_list
{
- model_entry *model;
- insn_table *isa;
+ const model_entry *model;
+ const insn_table *isa;
gen_entry *table;
gen_list *next;
};
@@ -115,9 +115,9 @@ typedef struct _gen_table gen_table;
struct _gen_table
{
/* list of all the instructions */
- insn_table *isa;
+ const insn_table *isa;
/* list of all the semantic functions */
- decode_table *rules;
+ const decode_table *rules;
/* list of all the generated instruction tables */
gen_list *tables;
/* list of all the semantic functions */
@@ -126,25 +126,26 @@ struct _gen_table
};
-extern gen_table *make_gen_tables (insn_table *isa, decode_table *rules);
+extern gen_table *make_gen_tables
+ (const insn_table *isa, const decode_table *rules);
extern void gen_tables_expand_insns (gen_table *gen);
extern void gen_tables_expand_semantics (gen_table *gen);
-extern int gen_entry_depth (gen_entry *table);
+extern int gen_entry_depth (const gen_entry *table);
/* Traverse the created data structure */
typedef void gen_entry_handler
- (lf *file, gen_entry *entry, int depth, void *data);
+ (lf *file, const gen_entry *entry, int depth, void *data);
extern void gen_entry_traverse_tree
(lf *file,
- gen_entry *table,
+ const gen_entry *table,
int depth,
gen_entry_handler * start,
gen_entry_handler * leaf, gen_entry_handler * end, void *data);
@@ -196,13 +197,16 @@ extern int print_function_name
const char *basename,
const char *format_name,
const char *model_name,
- opcode_bits *expanded_bits, lf_function_name_prefixes prefix);
+ const opcode_bits *expanded_bits,
+ lf_function_name_prefixes prefix);
extern void print_my_defines
(lf *file,
- const char *basename, const char *format_name, opcode_bits *expanded_bits);
+ const char *basename,
+ const char *format_name,
+ const opcode_bits *expanded_bits);
-extern void print_itrace (lf *file, insn_entry * insn, int idecode);
+extern void print_itrace (lf *file, const insn_entry *insn, int idecode);
extern void print_sim_engine_abort (lf *file, const char *message);