Commit | Line | Data |
---|---|---|
aaff8437 ILT |
1 | Mon Dec 16 14:59:38 1996 Ian Lance Taylor <ian@cygnus.com> |
2 | ||
063443cf ILT |
3 | * gencode.c (MIPS16_DECODE): SWRASP is I8, not RI. |
4 | (build_endian_shift): Don't check proc64. | |
5 | (build_instruction): Always set memval to uword64. Cast op2 to | |
6 | uword64 when shifting it left in memory instructions. Always use | |
7 | the same code for stores--don't special case proc64. | |
8 | ||
aaff8437 ILT |
9 | * gencode.c (build_mips16_operands): Fix base PC value for PC |
10 | relative operands. | |
11 | (build_instruction): Call JALDELAYSLOT rather than DELAYSLOT for a | |
12 | jal instruction. | |
13 | * interp.c (simJALDELAYSLOT): Define. | |
14 | (JALDELAYSLOT): Define. | |
15 | (INDELAYSLOT, INJALDELAYSLOT): Define. | |
16 | (simulate): Clear simJALDELAYSLOT when simDELAYSLOT is cleared. | |
17 | ||
18 | Wed Dec 11 13:53:51 1996 Jim Wilson <wilson@cygnus.com> | |
19 | ||
20 | * gencode.c (build_instruction): Use !ByteSwapMem instead of | |
21 | BigEndianMem. | |
22 | * interp.c (CONFIG, config_EP_{mask,shift,D,DxxDxx, config_BE): Delete. | |
23 | (BigEndianMem): Rename to ByteSwapMem and change sense. | |
24 | (BigEndianCPU, sim_write, LoadMemory, StoreMemory): Change | |
25 | BigEndianMem references to !ByteSwapMem. | |
26 | (set_endianness): New function, with prototype. | |
27 | (sim_open): Call set_endianness. | |
28 | (sim_info): Use simBE instead of BigEndianMem. | |
29 | (xfer_direct_word, xfer_direct_long, swap_direct_word, | |
30 | swap_direct_long, xfer_big_word, xfer_big_long, xfer_little_word, | |
31 | xfer_little_long, swap_word, swap_long): Delete unnecessary MSC_VER | |
32 | ifdefs, keeping the prototype declaration. | |
33 | (swap_word): Rewrite correctly. | |
34 | (ColdReset): Delete references to CONFIG. Delete endianness related | |
35 | code; moved to set_endianness. | |
36 | ||
6429b296 JW |
37 | Tue Dec 10 11:32:04 1996 Jim Wilson <wilson@cygnus.com> |
38 | ||
39 | * gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits. | |
40 | * interp.c (CHECKHILO): Define away. | |
41 | (simSIGINT): New macro. | |
42 | (membank_size): Increase from 1MB to 2MB. | |
43 | (control_c): New function. | |
44 | (sim_resume): Rename parameter signal to signal_number. Add local | |
45 | variable prev. Call signal before and after simulate. | |
46 | (sim_stop_reason): Add simSIGINT support. | |
47 | (sim_warning, sim_error, dotrace, SignalException): Define as stdarg | |
48 | functions always. | |
49 | (sim_warning): Delete call to SignalException. Do call printf_filtered | |
50 | if logfh is NULL. | |
51 | (AddressTranslation): Add #ifdef DEBUG around debugging message and | |
52 | a call to sim_warning. | |
53 | ||
54 | Wed Nov 27 11:53:50 1996 Ian Lance Taylor <ian@cygnus.com> | |
55 | ||
56 | * gencode.c (process_instructions): If ! proc64, skip DOUBLEWORD | |
57 | 16 bit instructions. | |
58 | ||
831f59a2 ILT |
59 | Tue Nov 26 11:53:12 1996 Ian Lance Taylor <ian@cygnus.com> |
60 | ||
61 | Add support for mips16 (16 bit MIPS implementation): | |
62 | * gencode.c (inst_type): Add mips16 instruction encoding types. | |
63 | (GETDATASIZEINSN): Define. | |
64 | (MIPS_DECODE): Add REG flag to dsllv, dsrav, and dsrlv. Add | |
65 | jalx. Add LEFT flag to mfhi and mflo. Add RIGHT flag to mthi and | |
66 | mtlo. | |
67 | (MIPS16_DECODE): New table, for mips16 instructions. | |
68 | (bitmap_val): New static function. | |
69 | (struct mips16_op): Define. | |
70 | (mips16_op_table): New table, for mips16 operands. | |
71 | (build_mips16_operands): New static function. | |
72 | (process_instructions): If PC is odd, decode a mips16 | |
73 | instruction. Break out instruction handling into new | |
74 | build_instruction function. | |
75 | (build_instruction): New static function, broken out of | |
76 | process_instructions. Check modifiers rather than flags for SHIFT | |
77 | bit count and m[ft]{hi,lo} direction. | |
78 | (usage): Pass program name to fprintf. | |
79 | (main): Remove unused variable this_option_optind. Change | |
80 | ``*loptarg++'' to ``loptarg++''. | |
81 | (my_strtoul): Parenthesize && within ||. | |
350d33b8 | 82 | * interp.c (LoadMemory): Accept a halfword pAddr if vAddr is odd. |
831f59a2 ILT |
83 | (simulate): If PC is odd, fetch a 16 bit instruction, and |
84 | increment PC by 2 rather than 4. | |
85 | * configure.in: Add case for mips16*-*-*. | |
86 | * configure: Rebuild. | |
87 | ||
88 | Fri Nov 22 08:49:36 1996 Mark Alexander <marka@cygnus.com> | |
89 | ||
90 | * interp.c: Allow -t to enable tracing in standalone simulator. | |
91 | Fix garbage output in trace file and error messages. | |
92 | ||
e3d12c65 DE |
93 | Wed Nov 20 01:54:37 1996 Doug Evans <dje@canuck.cygnus.com> |
94 | ||
95 | * Makefile.in: Delete stuff moved to ../common/Make-common.in. | |
96 | (SIM_{OBJS,EXTRA_CFLAGS,EXTRA_CLEAN}): Define. | |
97 | * configure.in: Simplify using macros in ../common/aclocal.m4. | |
98 | * configure: Regenerated. | |
99 | * tconfig.in: New file. | |
100 | ||
101 | Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com> | |
102 | ||
103 | * interp.c: Fix bugs in 64-bit port. | |
104 | Use ansi function declarations for msvc compiler. | |
105 | Initialize and test file pointer in trace code. | |
106 | Prevent duplicate definition of LAST_EMED_REGNUM. | |
107 | ||
108 | Tue Oct 15 11:07:06 1996 Mark Alexander <marka@cygnus.com> | |
109 | ||
110 | * interp.c (xfer_big_long): Prevent unwanted sign extension. | |
111 | ||
112 | Thu Sep 26 17:35:00 1996 James G. Smith <jsmith@cygnus.co.uk> | |
113 | ||
114 | * interp.c (SignalException): Check for explicit terminating | |
115 | breakpoint value. | |
116 | * gencode.c: Pass instruction value through SignalException() | |
117 | calls for Trap, Breakpoint and Syscall. | |
118 | ||
119 | Thu Sep 26 11:35:17 1996 James G. Smith <jsmith@cygnus.co.uk> | |
120 | ||
121 | * interp.c (SquareRoot): Add HAVE_SQRT check to ensure sqrt() is | |
122 | only used on those hosts that provide it. | |
123 | * configure.in: Add sqrt() to list of functions to be checked for. | |
124 | * config.in: Re-generated. | |
125 | * configure: Re-generated. | |
126 | ||
127 | Fri Sep 20 15:47:12 1996 Ian Lance Taylor <ian@cygnus.com> | |
128 | ||
129 | * gencode.c (process_instructions): Call build_endian_shift when | |
130 | expanding STORE RIGHT, to fix swr. | |
131 | * support.h (SIGNEXTEND): If the sign bit is not set, explicitly | |
132 | clear the high bits. | |
133 | * interp.c (Convert): Fix fmt_single to fmt_long to not truncate. | |
134 | Fix float to int conversions to produce signed values. | |
135 | ||
cc5201d7 ILT |
136 | Thu Sep 19 15:34:17 1996 Ian Lance Taylor <ian@cygnus.com> |
137 | ||
458e1f58 ILT |
138 | * gencode.c (MIPS_DECODE): Set UNSIGNED for multu instruction. |
139 | (process_instructions): Correct handling of nor instruction. | |
140 | Correct shift count for 32 bit shift instructions. Correct sign | |
141 | extension for arithmetic shifts to not shift the number of bits in | |
142 | the type. Fix 64 bit multiply high word calculation. Fix 32 bit | |
143 | unsigned multiply. Fix ldxc1 and friends to use coprocessor 1. | |
144 | Fix madd. | |
c05d1721 ILT |
145 | * interp.c (CHECKHILO): Don't set HIACCESS, LOACCESS, or HLPC. |
146 | It's OK to have a mult follow a mult. What's not OK is to have a | |
147 | mult follow an mfhi. | |
458e1f58 | 148 | (Convert): Comment out incorrect rounding code. |
cc5201d7 | 149 | |
f24b7b69 JSC |
150 | Mon Sep 16 11:38:16 1996 James G. Smith <jsmith@cygnus.co.uk> |
151 | ||
152 | * interp.c (sim_monitor): Improved monitor printf | |
153 | simulation. Tidied up simulator warnings, and added "--log" option | |
154 | for directing warning message output. | |
155 | * gencode.c: Use sim_warning() rather than WARNING macro. | |
156 | ||
157 | Thu Aug 22 15:03:12 1996 Ian Lance Taylor <ian@cygnus.com> | |
158 | ||
159 | * Makefile.in (gencode): Depend upon gencode.o, getopt.o, and | |
160 | getopt1.o, rather than on gencode.c. Link objects together. | |
161 | Don't link against -liberty. | |
162 | (gencode.o, getopt.o, getopt1.o): New targets. | |
163 | * gencode.c: Include <ctype.h> and "ansidecl.h". | |
164 | (AND): Undefine after including "ansidecl.h". | |
165 | (ULONG_MAX): Define if not defined. | |
166 | (OP_*): Don't define macros; now defined in opcode/mips.h. | |
167 | (main): Call my_strtoul rather than strtoul. | |
168 | (my_strtoul): New static function. | |
169 | ||
170 | Wed Jul 17 18:12:38 1996 Stu Grossman (grossman@critters.cygnus.com) | |
171 | ||
172 | * gencode.c (process_instructions): Generate word64 and uword64 | |
173 | instead of `long long' and `unsigned long long' data types. | |
174 | * interp.c: #include sysdep.h to get signals, and define default | |
175 | for SIGBUS. | |
176 | * (Convert): Work around for Visual-C++ compiler bug with type | |
177 | conversion. | |
178 | * support.h: Make things compile under Visual-C++ by using | |
179 | __int64 instead of `long long'. Change many refs to long long | |
180 | into word64/uword64 typedefs. | |
181 | ||
a271d1d9 JM |
182 | Wed Jun 26 12:24:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp) |
183 | ||
184 | * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir, | |
185 | INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values. | |
186 | (docdir): Removed. | |
187 | * configure.in (AC_PREREQ): autoconf 2.5 or higher. | |
188 | (AC_PROG_INSTALL): Added. | |
189 | (AC_PROG_CC): Moved to before configure.host call. | |
190 | * configure: Rebuilt. | |
191 | ||
192 | Wed Jun 5 08:28:13 1996 James G. Smith <jsmith@cygnus.co.uk> | |
193 | ||
194 | * configure.in: Define @SIMCONF@ depending on mips target. | |
195 | * configure: Rebuild. | |
196 | * Makefile.in (run): Add @SIMCONF@ to control simulator | |
197 | construction. | |
198 | * gencode.c: Change LOADDRMASK to 64bit memory model only. | |
199 | * interp.c: Remove some debugging, provide more detailed error | |
200 | messages, update memory accesses to use LOADDRMASK. | |
201 | ||
4fa134be ILT |
202 | Mon Jun 3 11:55:03 1996 Ian Lance Taylor <ian@cygnus.com> |
203 | ||
204 | * configure.in: Add calls to AC_CONFIG_HEADER, AC_CHECK_HEADERS, | |
205 | AC_CHECK_LIB, and AC_CHECK_FUNCS. Change AC_OUTPUT to set | |
206 | stamp-h. | |
207 | * configure: Rebuild. | |
208 | * config.in: New file, generated by autoheader. | |
209 | * interp.c: Include "config.h". Include <stdlib.h>, <string.h>, | |
210 | and <strings.h> if they exist. Replace #ifdef sun with #ifdef | |
211 | HAVE_ANINT and HAVE_AINT, as appropriate. | |
212 | * Makefile.in (run): Use @LIBS@ rather than -lm. | |
213 | (interp.o): Depend upon config.h. | |
214 | (Makefile): Just rebuild Makefile. | |
215 | (clean): Remove stamp-h. | |
216 | (mostlyclean): Make the same as clean, not as distclean. | |
217 | (config.h, stamp-h): New targets. | |
218 | ||
219 | Fri May 10 00:41:17 1996 James G. Smith <jsmith@cygnus.co.uk> | |
220 | ||
221 | * interp.c (ColdReset): Fix boolean test. Make all simulator | |
222 | globals static. | |
223 | ||
f7481d45 JSC |
224 | Wed May 8 15:12:58 1996 James G. Smith <jsmith@cygnus.co.uk> |
225 | ||
226 | * interp.c (xfer_direct_word, xfer_direct_long, | |
227 | swap_direct_word, swap_direct_long, xfer_big_word, | |
228 | xfer_big_long, xfer_little_word, xfer_little_long, | |
229 | swap_word,swap_long): Added. | |
230 | * interp.c (ColdReset): Provide function indirection to | |
231 | host<->simulated_target transfer routines. | |
232 | * interp.c (sim_store_register, sim_fetch_register): Updated to | |
233 | make use of indirected transfer routines. | |
234 | ||
235 | Fri Apr 19 15:48:24 1996 James G. Smith <jsmith@cygnus.co.uk> | |
236 | ||
237 | * gencode.c (process_instructions): Ensure FP ABS instruction | |
238 | recognised. | |
239 | * interp.c (AbsoluteValue): Add routine. Also provide simple PMON | |
240 | system call support. | |
241 | ||
8b554809 JSC |
242 | Wed Apr 10 09:51:38 1996 James G. Smith <jsmith@cygnus.co.uk> |
243 | ||
244 | * interp.c (sim_do_command): Complain if callback structure not | |
245 | initialised. | |
246 | ||
d0757082 JSC |
247 | Thu Mar 28 13:50:51 1996 James G. Smith <jsmith@cygnus.co.uk> |
248 | ||
249 | * interp.c (Convert): Provide round-to-nearest and round-to-zero | |
250 | support for Sun hosts. | |
251 | * Makefile.in (gencode): Ensure the host compiler and libraries | |
252 | used for cross-hosted build. | |
253 | ||
e871dd18 JSC |
254 | Wed Mar 27 14:42:12 1996 James G. Smith <jsmith@cygnus.co.uk> |
255 | ||
256 | * interp.c, gencode.c: Some more (TODO) tidying. | |
257 | ||
258 | Thu Mar 7 11:19:33 1996 James G. Smith <jsmith@cygnus.co.uk> | |
259 | ||
260 | * gencode.c, interp.c: Replaced explicit long long references with | |
261 | WORD64HI, WORD64LO, SET64HI and SET64LO macro calls. | |
262 | * support.h (SET64LO, SET64HI): Macros added. | |
263 | ||
5c59ec43 ILT |
264 | Wed Feb 21 12:16:21 1996 Ian Lance Taylor <ian@cygnus.com> |
265 | ||
266 | * configure: Regenerate with autoconf 2.7. | |
267 | ||
268 | Tue Jan 30 08:48:18 1996 Fred Fish <fnf@cygnus.com> | |
269 | ||
270 | * interp.c (LoadMemory): Enclose text following #endif in /* */. | |
271 | * support.h: Remove superfluous "1" from #if. | |
272 | * support.h (CHECKSIM): Remove stray 'a' at end of line. | |
273 | ||
274 | Mon Dec 4 11:44:40 1995 Jamie Smith <jsmith@cygnus.com> | |
275 | ||
276 | * interp.c (StoreFPR): Control UndefinedResult() call on | |
277 | WARN_RESULT manifest. | |
278 | ||
8bae0a0c JSC |
279 | Fri Dec 1 16:37:19 1995 James G. Smith <jsmith@cygnus.co.uk> |
280 | ||
281 | * gencode.c: Tidied instruction decoding, and added FP instruction | |
282 | support. | |
283 | ||
284 | * interp.c: Added dineroIII, and BSD profiling support. Also | |
285 | run-time FP handling. | |
286 | ||
287 | Sun Oct 22 00:57:18 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk> | |
288 | ||
289 | * Changelog, Makefile.in, README.Cygnus, configure, configure.in, | |
290 | gencode.c, interp.c, support.h: created. |