]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/igen/gen-icache.h
Update years in copyright notice for the GDB files.
[thirdparty/binutils-gdb.git] / sim / igen / gen-icache.h
CommitLineData
feaee4bd 1/* The IGEN simulator generator for GDB, the GNU Debugger.
c906108c 2
8acc9f48 3 Copyright 2002-2013 Free Software Foundation, Inc.
feaee4bd
AC
4
5 Contributed by Andrew Cagney.
6
7 This file is part of GDB.
8
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
4744ac1b 11 the Free Software Foundation; either version 3 of the License, or
feaee4bd
AC
12 (at your option) any later version.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
4744ac1b 20 along with this program. If not, see <http://www.gnu.org/licenses/>. */
c906108c
SS
21
22
23/* Output code to manipulate the instruction cache: either create it
24 or reference it */
25
4e0bf4c4
AC
26typedef enum
27{
c906108c
SS
28 declare_variables,
29 define_variables,
30 undef_variables,
4e0bf4c4
AC
31}
32icache_decl_type;
c906108c 33
4e0bf4c4
AC
34typedef enum
35{
c906108c
SS
36 do_not_use_icache = 0,
37 get_values_from_icache = 0x1,
38 put_values_in_icache = 0x2,
39 both_values_and_icache = 0x3,
4e0bf4c4
AC
40}
41icache_body_type;
c906108c
SS
42
43extern void print_icache_body
4e0bf4c4
AC
44 (lf *file,
45 insn_entry * instruction,
46 opcode_bits *expanded_bits,
47 cache_entry *cache_rules,
48 icache_decl_type what_to_declare,
49 icache_body_type what_to_do, int nr_prefetched_words);
c906108c
SS
50
51
52/* Output an instruction cache decode function */
53
54extern void print_icache_declaration
4e0bf4c4
AC
55 (lf *file,
56 insn_entry * insn,
57 opcode_bits *expanded_bits,
58 insn_opcodes *opcodes, int nr_prefetched_words);
59
c906108c 60extern void print_icache_definition
4e0bf4c4
AC
61 (lf *file,
62 insn_entry * insn,
63 opcode_bits *expanded_bits,
64 insn_opcodes *opcodes, cache_entry *cache_rules, int nr_prefetched_words);
c906108c
SS
65
66
67/* Output an instruction cache support function */
68
69extern function_entry_handler print_icache_internal_function_declaration;
70extern function_entry_handler print_icache_internal_function_definition;
71
72
73/* Output the instruction cache table data structure */
74
75extern void print_icache_struct
4e0bf4c4 76 (lf *file, insn_table *instructions, cache_entry *cache_rules);
c906108c
SS
77
78
79/* Output a single instructions decoder */