|
Message
From: =?unknown-8bit?Q?Gy=F6rgy?= 'nog' Jeney<nog@s...>
Date: Thu Mar 24 21:10:37 CET 2005
Subject: [openrisc] [or1ksim #60] Remove the simple execution modell defines
from or32.h
Hi,Since the recompiler would add its own definitions to or32.h and basically make a real mess I have taken out the defines needed for the simple execution modell and put them into a simpl32_defs.h file so that when the recompiler arrives a hughe mess shall be avoided in or32.h
ChangeLog: * Move the definitions needed for the simple execution model out of or32.h and into simpl32_defs.h
nog. -------------- next part -------------- diff -urp --unidirectional-new-file /home/nog/or1ksim-split/cpu/or1k/opcode/or32.h ./cpu/or1k/opcode/or32.h --- /home/nog/or1ksim-split/cpu/or1k/opcode/or32.h 2005-01-27 14:51:41.000000000 +0100 +++ ./cpu/or1k/opcode/or32.h 2005-03-24 17:43:02.000000000 +0100 @@ -45,6 +45,17 @@ Foundation, Inc., 59 Temple Place - Suit #define OR32_W_FLAG (2) #define OR32_R_FLAG (4) +#if defined(HAS_EXECUTION) +# if SIMPLE_EXECUTION +# include "simpl32_defs.h" +# else +extern void l_none PARAMS((void)); +# endif +#else +extern void l_none PARAMS((void)); +#endif + + struct or32_letter { char letter; int sign; @@ -142,86 +153,6 @@ struct temp_insn_struct extern unsigned long *automata; extern struct temp_insn_struct *ti; -#if defined(HAS_EXECUTION) && SIMPLE_EXECUTION -extern void l_invalid PARAMS((struct iqueue_entry *)); -extern void l_sfne PARAMS((struct iqueue_entry *)); -extern void l_bf PARAMS((struct iqueue_entry *)); -extern void l_add PARAMS((struct iqueue_entry *)); -extern void l_addc PARAMS((struct iqueue_entry *)); -extern void l_sw PARAMS((struct iqueue_entry *)); -extern void l_sb PARAMS((struct iqueue_entry *)); -extern void l_sh PARAMS((struct iqueue_entry *)); -extern void l_lwz PARAMS((struct iqueue_entry *)); -extern void l_lbs PARAMS((struct iqueue_entry *)); -extern void l_lbz PARAMS((struct iqueue_entry *)); -extern void l_lhs PARAMS((struct iqueue_entry *)); -extern void l_lhz PARAMS((struct iqueue_entry *)); -extern void l_movhi PARAMS((struct iqueue_entry *)); -extern void l_and PARAMS((struct iqueue_entry *)); -extern void l_or PARAMS((struct iqueue_entry *)); -extern void l_xor PARAMS((struct iqueue_entry *)); -extern void l_sub PARAMS((struct iqueue_entry *)); -extern void l_mul PARAMS((struct iqueue_entry *)); -extern void l_div PARAMS((struct iqueue_entry *)); -extern void l_divu PARAMS((struct iqueue_entry *)); -extern void l_sll PARAMS((struct iqueue_entry *)); -extern void l_sra PARAMS((struct iqueue_entry *)); -extern void l_srl PARAMS((struct iqueue_entry *)); -extern void l_j PARAMS((struct iqueue_entry *)); -extern void l_jal PARAMS((struct iqueue_entry *)); -extern void l_jalr PARAMS((struct iqueue_entry *)); -extern void l_jr PARAMS((struct iqueue_entry *)); -extern void l_rfe PARAMS((struct iqueue_entry *)); -extern void l_nop PARAMS((struct iqueue_entry *)); -extern void l_bnf PARAMS((struct iqueue_entry *)); -extern void l_sfeq PARAMS((struct iqueue_entry *)); -extern void l_sfgts PARAMS((struct iqueue_entry *)); -extern void l_sfges PARAMS((struct iqueue_entry *)); -extern void l_sflts PARAMS((struct iqueue_entry *)); -extern void l_sfles PARAMS((struct iqueue_entry *)); -extern void l_sfgtu PARAMS((struct iqueue_entry *)); -extern void l_sfgeu PARAMS()(struct iqueue_entry *); -extern void l_sfltu PARAMS((struct iqueue_entry *)); -extern void l_sfleu PARAMS((struct iqueue_entry *)); -extern void l_extbs PARAMS((struct iqueue_entry *)); -extern void l_extbz PARAMS((struct iqueue_entry *)); -extern void l_exths PARAMS((struct iqueue_entry *)); -extern void l_exthz PARAMS((struct iqueue_entry *)); -extern void l_extws PARAMS((struct iqueue_entry *)); -extern void l_extwz PARAMS((struct iqueue_entry *)); -extern void l_mtspr PARAMS((struct iqueue_entry *)); -extern void l_mfspr PARAMS((struct iqueue_entry *)); -extern void l_sys PARAMS((struct iqueue_entry *)); -extern void l_trap PARAMS((struct iqueue_entry *)); /* CZ 21/06/01 */ -extern void l_macrc PARAMS((struct iqueue_entry *)); -extern void l_mac PARAMS((struct iqueue_entry *)); -extern void l_msb PARAMS((struct iqueue_entry *)); -extern void l_invalid PARAMS((struct iqueue_entry *)); -extern void l_cmov PARAMS ((struct iqueue_entry *)); -extern void l_ff1 PARAMS ((struct iqueue_entry *)); -extern void l_cust1 PARAMS ((struct iqueue_entry *)); -extern void l_cust2 PARAMS ((struct iqueue_entry *)); -extern void l_cust3 PARAMS ((struct iqueue_entry *)); -extern void l_cust4 PARAMS ((struct iqueue_entry *)); -extern void lf_add_s PARAMS ((struct iqueue_entry *)); -extern void lf_div_s PARAMS ((struct iqueue_entry *)); -extern void lf_ftoi_s PARAMS ((struct iqueue_entry *)); -extern void lf_itof_s PARAMS ((struct iqueue_entry *));
-extern void lf_madd_s PARAMS ((struct iqueue_entry *));
-extern void lf_mul_s PARAMS ((struct iqueue_entry *));
-extern void lf_rem_s PARAMS ((struct iqueue_entry *));
-extern void lf_sfeq_s PARAMS ((struct iqueue_entry *));
-extern void lf_sfge_s PARAMS ((struct iqueue_entry *));
-extern void lf_sfgt_s PARAMS ((struct iqueue_entry *));
-extern void lf_sfle_s PARAMS ((struct iqueue_entry *));
-extern void lf_sflt_s PARAMS ((struct iqueue_entry *));
-extern void lf_sfne_s PARAMS ((struct iqueue_entry *));
-extern void lf_sub_s PARAMS((struct iqueue_entry *));
-extern void l_none PARAMS((struct iqueue_entry *));
-#else
-extern void l_none PARAMS((void));
-#endif
-
extern CONST struct or32_letter or32_letters[];
extern CONST struct or32_opcode or32_opcodes[];
diff -urp --unidirectional-new-file /home/nog/or1ksim-split/cpu/or32/simpl32_defs.h ./cpu/or32/simpl32_defs.h
--- cpu/or32/simpl32_defs.h 1970-01-01 01:00:00.000000000 +0100
+++ ./cpu/or32/simpl32_defs.h 2005-03-24 17:42:03.000000000 +0100
@@ -0,0 +1,95 @@
+/* simpl32_defs.h -- Definitions for the simple execution model
+ Copyright (C) 1999 Damjan Lampret, lampret@o...
+
+This file is part of OpenRISC 1000 Architectural Simulator.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+extern void l_invalid PARAMS((struct iqueue_entry *));
+extern void l_sfne PARAMS((struct iqueue_entry *));
+extern void l_bf PARAMS((struct iqueue_entry *));
+extern void l_add PARAMS((struct iqueue_entry *));
+extern void l_addc PARAMS((struct iqueue_entry *));
+extern void l_sw PARAMS((struct iqueue_entry *));
+extern void l_sb PARAMS((struct iqueue_entry *));
+extern void l_sh PARAMS((struct iqueue_entry *));
+extern void l_lwz PARAMS((struct iqueue_entry *));
+extern void l_lbs PARAMS((struct iqueue_entry *));
+extern void l_lbz PARAMS((struct iqueue_entry *));
+extern void l_lhs PARAMS((struct iqueue_entry *));
+extern void l_lhz PARAMS((struct iqueue_entry *));
+extern void l_movhi PARAMS((struct iqueue_entry *));
+extern void l_and PARAMS((struct iqueue_entry *));
+extern void l_or PARAMS((struct iqueue_entry *));
+extern void l_xor PARAMS((struct iqueue_entry *));
+extern void l_sub PARAMS((struct iqueue_entry *));
+extern void l_mul PARAMS((struct iqueue_entry *));
+extern void l_div PARAMS((struct iqueue_entry *));
+extern void l_divu PARAMS((struct iqueue_entry *));
+extern void l_sll PARAMS((struct iqueue_entry *));
+extern void l_sra PARAMS((struct iqueue_entry *));
+extern void l_srl PARAMS((struct iqueue_entry *));
+extern void l_j PARAMS((struct iqueue_entry *));
+extern void l_jal PARAMS((struct iqueue_entry *));
+extern void l_jalr PARAMS((struct iqueue_entry *));
+extern void l_jr PARAMS((struct iqueue_entry *));
+extern void l_rfe PARAMS((struct iqueue_entry *));
+extern void l_nop PARAMS((struct iqueue_entry *));
+extern void l_bnf PARAMS((struct iqueue_entry *));
+extern void l_sfeq PARAMS((struct iqueue_entry *));
+extern void l_sfgts PARAMS((struct iqueue_entry *));
+extern void l_sfges PARAMS((struct iqueue_entry *));
+extern void l_sflts PARAMS((struct iqueue_entry *));
+extern void l_sfles PARAMS((struct iqueue_entry *));
+extern void l_sfgtu PARAMS((struct iqueue_entry *));
+extern void l_sfgeu PARAMS()(struct iqueue_entry *);
+extern void l_sfltu PARAMS((struct iqueue_entry *));
+extern void l_sfleu PARAMS((struct iqueue_entry *));
+extern void l_extbs PARAMS((struct iqueue_entry *));
+extern void l_extbz PARAMS((struct iqueue_entry *));
+extern void l_exths PARAMS((struct iqueue_entry *));
+extern void l_exthz PARAMS((struct iqueue_entry *));
+extern void l_extws PARAMS((struct iqueue_entry *));
+extern void l_extwz PARAMS((struct iqueue_entry *));
+extern void l_mtspr PARAMS((struct iqueue_entry *));
+extern void l_mfspr PARAMS((struct iqueue_entry *));
+extern void l_sys PARAMS((struct iqueue_entry *));
+extern void l_trap PARAMS((struct iqueue_entry *)); /* CZ 21/06/01 */
+extern void l_macrc PARAMS((struct iqueue_entry *));
+extern void l_mac PARAMS((struct iqueue_entry *));
+extern void l_msb PARAMS((struct iqueue_entry *));
+extern void l_invalid PARAMS((struct iqueue_entry *));
+extern void l_cmov PARAMS ((struct iqueue_entry *));
+extern void l_ff1 PARAMS ((struct iqueue_entry *));
+extern void l_cust1 PARAMS ((struct iqueue_entry *));
+extern void l_cust2 PARAMS ((struct iqueue_entry *));
+extern void l_cust3 PARAMS ((struct iqueue_entry *));
+extern void l_cust4 PARAMS ((struct iqueue_entry *));
+extern void lf_add_s PARAMS ((struct iqueue_entry *));
+extern void lf_div_s PARAMS ((struct iqueue_entry *));
+extern void lf_ftoi_s PARAMS ((struct iqueue_entry *));
+extern void lf_itof_s PARAMS ((struct iqueue_entry *));
+extern void lf_madd_s PARAMS ((struct iqueue_entry *));
+extern void lf_mul_s PARAMS ((struct iqueue_entry *));
+extern void lf_rem_s PARAMS ((struct iqueue_entry *));
+extern void lf_sfeq_s PARAMS ((struct iqueue_entry *));
+extern void lf_sfge_s PARAMS ((struct iqueue_entry *));
+extern void lf_sfgt_s PARAMS ((struct iqueue_entry *));
+extern void lf_sfle_s PARAMS ((struct iqueue_entry *));
+extern void lf_sflt_s PARAMS ((struct iqueue_entry *));
+extern void lf_sfne_s PARAMS ((struct iqueue_entry *));
+extern void lf_sub_s PARAMS((struct iqueue_entry *));
+extern void l_none PARAMS((struct iqueue_entry *));
+
|
 |