14e98e3e1Schristos /* The IGEN simulator generator for GDB, the GNU Debugger. 24e98e3e1Schristos 3*71f62182Schristos Copyright 2002-2024 Free Software Foundation, Inc. 44e98e3e1Schristos 54e98e3e1Schristos Contributed by Andrew Cagney. 64e98e3e1Schristos 74e98e3e1Schristos This file is part of GDB. 84e98e3e1Schristos 94e98e3e1Schristos This program is free software; you can redistribute it and/or modify 104e98e3e1Schristos it under the terms of the GNU General Public License as published by 114e98e3e1Schristos the Free Software Foundation; either version 3 of the License, or 124e98e3e1Schristos (at your option) any later version. 134e98e3e1Schristos 144e98e3e1Schristos This program is distributed in the hope that it will be useful, 154e98e3e1Schristos but WITHOUT ANY WARRANTY; without even the implied warranty of 164e98e3e1Schristos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 174e98e3e1Schristos GNU General Public License for more details. 184e98e3e1Schristos 194e98e3e1Schristos You should have received a copy of the GNU General Public License 204e98e3e1Schristos along with this program. If not, see <http://www.gnu.org/licenses/>. */ 214e98e3e1Schristos 22*71f62182Schristos #ifndef IGEN_GEN_IDECODE_H 23*71f62182Schristos #define IGEN_GEN_IDECODE_H 244e98e3e1Schristos 254e98e3e1Schristos void print_idecode_issue_function_header 264e98e3e1Schristos (lf *file, 274e98e3e1Schristos const char *processor, 284e98e3e1Schristos function_decl_type decl_type, int nr_prefetched_words); 294e98e3e1Schristos 304e98e3e1Schristos void print_idecode_globals (lf *file); 314e98e3e1Schristos 324e98e3e1Schristos void print_idecode_lookups 334b169a6bSchristos (lf *file, 344b169a6bSchristos const gen_entry *table, 354b169a6bSchristos cache_entry *cache_rules); 364e98e3e1Schristos 374b169a6bSchristos void print_idecode_body (lf *file, const gen_entry *table, const char *result); 384e98e3e1Schristos 394e98e3e1Schristos 404e98e3e1Schristos 414e98e3e1Schristos /* Output code to do any final checks on the decoded instruction. 424e98e3e1Schristos This includes things like verifying any on decoded fields have the 434e98e3e1Schristos correct value and checking that (for floating point) floating point 444e98e3e1Schristos hardware isn't disabled */ 454e98e3e1Schristos 464e98e3e1Schristos extern void print_idecode_validate 474b169a6bSchristos (lf *file, 484b169a6bSchristos const insn_entry *instruction, 494b169a6bSchristos const insn_opcodes *opcode_paths); 50*71f62182Schristos 51*71f62182Schristos #endif /* IGEN_GEN_IDECODE_H */ 52