9c5131ba188bba4a0d1b06956bb6bc3a67a67dfb
[platform/upstream/binutils.git] / sim / v850 / ChangeLog
1 2014-08-15  Roland McGrath  <mcgrathr@google.com>
2
3         * configure: Regenerate.
4         * config.in: Regenerate.
5
6 2014-03-04  Mike Frysinger  <vapier@gentoo.org>
7
8         * configure: Regenerate.
9
10 2013-09-23  Alan Modra  <amodra@gmail.com>
11
12         * configure: Regenerate.
13
14 2013-06-03  Mike Frysinger  <vapier@gentoo.org>
15
16         * aclocal.m4, configure: Regenerate.
17
18 2013-05-13  Nick Clifton  <nickc@redhat.com>
19
20         * v850.igen (LDSR): Accept but ignore a selID parameter.
21
22 2013-05-10  Freddie Chopin  <freddie_chopin@op.pl>
23
24         * configure: Rebuild.
25
26 2013-01-28  Nick Clifton  <nickc@redhat.com>
27
28         * simops.c (v850_rotl): New function.
29         (v850_bins): New function.
30         * simops.h: Add prototypes fir v850_rotl and v850_bins.
31         * v850-dc: Add entries for V850e3v5.
32         * v850.igen: Add support for v850e3v5.
33         (ld.dw, st.dw, rotl, bins): New patterns.
34
35 2013-01-10  Nick Clifton  <nickc@redhat.com>
36
37         * interp.c (sim_open): Add support for bfd_arch_v850_rh850
38         architecture type.  Add support for bfd_mach_v850e2 and
39         bfd_mach_v850e2v3 machine numbers.
40         * v850.igen (dbtrap): Add support for SIM_OPEN_DEBUG.
41         (cmpf.d): Correct order of operands.
42         (cmpf.s): Likewise.
43         (trncf.dul): New pattern.
44         (trncf.duw): New pattern.
45         (trncf.sul): New pattern.
46         (trncf.suw): New pattern.
47         * v850-dc: Correct bitfield selection for TRNCF.SW and CVTF.SW.
48
49 2012-09-13  Nick Clifton  <nickc@redhat.com>
50
51         * v850.igen (W,WWWW): Correct computation of register number.
52         (JR32): Remove unnecessary comma.
53         (cmovf.s): Register 0 is an invalid source register.
54         (maddf.s): Remove bogus intermediary rounding.
55         (nmaddf.s): Likewise.
56         (trncf.sl): Remove bogus initial rounding.
57         (trncf.dw): Likewise.
58         (trncf.sl): Likewise.
59         (trncf.sw): Likewise.
60
61 2012-06-15  Joel Brobecker  <brobecker@adacore.com>
62
63         * config.in, configure: Regenerate.
64
65 2012-03-28  Rathish C  <rathish.c@kpitcummins.com>
66
67         * sim-main.h (struct _v850_regs): Add new fields mpu0_sregs,
68         mpu1_sregs, and fpu_sregs.
69         (MPU0_SR, MPU1_SR, FPU_SR): New macros for accessing new fields
70         in _v850_regs struct.
71         (SP_REGNO): Define.
72         (SP): Redefine using SP_REGNO.
73         (PSW_REGNO, EIIC, FEIC, DBIC, DIR, EIWR, FEWR, DBWR, BSEL, PSW_NPV)
74         (PSW_DMP, PSW_IMP, ECR_EICC, ECR_FECC, FPSR, FPSR_REGNO, FPEPC)
75         (FPST, FPST_REGNO, FPCC, FPCFG, FPCFG_REGNO, FPSR_DEM, FPSR_SEM)
76         (FPSR_RM, FPSR_RN, FPSR_FS, FPSR_PR, FPSR_XC, FPSR_XCE, FPSR_XCV)
77         (FPSR_XCZ, FPSR_XCO, FPSR_XCU, FPSR_XCI, FPSR_XE, FPSR_XEV)
78         (FPSR_XEZ, FPSR_XEO, FPSR_XEU, FPSR_XEI, FPSR_XP, FPSR_XPV)
79         (FPSR_XPZ, FPSR_XPO, FPSR_XPU, FPSR_XPI, FPST_PR, FPST_XCE)
80         (FPST_XCV, FPST_XCZ, FPST_XCO, FPST_XCU, FPST_XCI, FPST_XPV)
81         (FPST_XPZ, FPST_XPO, FPST_XPU, FPST_XPI, FPCFG_RM, FPCFG_XEV)
82         (FPCFG_XEZ, FPCFG_XEO, FPCFG_XEU, FPCFG_XEI, GET_FPCC, CLEAR_FPCC)
83         (SET_FPCC, TEST_FPCC, FPSR_GET_ROUND, MPM, MPC, MPC_REGNO, TID)
84         (PPA, PPM, PPC, DCC, DCV0, DCV1, SPAL, SPAU, IPA0L, IPA0U, IPA1L)
85         (IPA1U, IPA2L, IPA2U, IPA3L, IPA3U, DPA0L, DPA0U, DPA1L, DPA1U)
86         (DPA2L, DPA2U, DPA3L, DPA3U, PPC_PPE, SPAL_SPE, SPAL_SPS, VIP)
87         (VMECR, VMTID, VMADR, VPECR, VPTID, VPADR, VDECR, VDTID, MPM_AUE)
88         (MPM_MPE, VMECR_VMX, VMECR_VMR, VMECR_VMW, VMECR_VMS, VMECR_VMRMW)
89         (VMECR_VMMS, IPA2ADDR, IPA_IPE, IPA_IPX, IPA_IPR, IPE0, IPE1, IPE2)
90         (IPE3, IPX0, IPX1, IPX2, IPX3, IPR0, IPR1, IPR2, IPR3, DPA2ADDR)
91         (DPA_DPE, DPA_DPR, DPA_DPW, DPE0, DPE1, DPE2, DPE3, DPR0, DPR1)
92         (DPR2, DPR3, DPW0, DPW1, DPW2, DPW3, DCC_DCE0, DCC_DCE1, PPA2ADDR)
93         (PPC_PPC, PPC_PPE, PPC_PPM): New macros.
94         (FPU_COMPARE): New enum.
95         (TRACE_FP_INPUT_FPU1, TRACE_FP_INPUT_FPU2, TRACE_FP_INPUT_FPU3)
96         (TRACE_FP_INPUT_BOOL1_FPU2, TRACE_FP_INPUT_WORD2)
97         (TRACE_FP_RESULT_WORD1, TRACE_FP_RESULT_WORD2): New macros.
98         * simops.c (Add32): Update prototype.
99         (update_fpsr): New function.
100         (SignalException): New function.
101         (SignalExceptionFPE): New function.
102         (check_invalid_snan): New function.
103         (v850_float_compare): New function.
104         (v850_div): New function.
105         (v850_divu): New function.
106         (v850_sar): New function.
107         (v850_shl): New function.
108         (v850_shr): New function.
109         (v850_satadd): New function.
110         (v850_satsub): New function.
111         (load_data_mem): New function.
112         (store_data_mem): New function.
113         (mpu_load_mem_test): New function.
114         (mpu_store_mem_test): New function.
115         * simops.h: Add function prototype for above mentioned functions.
116         (check_cvt_fi, check_cvt_if, check_cvt_ff): Define.
117         * v850-dc: Add entry for v850e2 and v850e2v3.
118         * v850.igen: Add support for v850e2 and v850e2v3.
119
120 2012-03-24  Mike Frysinger  <vapier@gentoo.org>
121
122         * aclocal.m4, config.in, configure: Regenerate.
123
124 2011-12-03  Mike Frysinger  <vapier@gentoo.org>
125
126         * aclocal.m4: New file.
127         * configure: Regenerate.
128
129 2011-10-17  Mike Frysinger  <vapier@gentoo.org>
130
131         * configure.ac: Change include to common/acinclude.m4.
132
133 2011-10-17  Mike Frysinger  <vapier@gentoo.org>
134
135         * configure.ac: Change AC_PREREQ to 2.64.  Delete AC_CONFIG_HEADER
136         call.  Replace common.m4 include with SIM_AC_COMMON.
137         * configure: Regenerate.
138
139 2011-07-05  Mike Frysinger  <vapier@gentoo.org>
140
141         * interp.c (sim_do_command): Delete.
142
143 2011-03-21  Kevin Buettner  <kevinb@redhat.com>
144
145         * simops (OP_10007E0): Update errno handling as most traps
146         do not invoke the host's functionality directly.  Invoke
147         sim_io_stat() instead of stat() for implementing TARGET_SYS_stat.
148         Implement TARGET_SYS_fstat, TARGET_SYS_rename, and TARGET_SYS_unlink.
149
150 2011-02-14  Mike Frysinger  <vapier@gentoo.org>
151
152         * simops.c (OP_10007E0): Change zfree to free.
153
154 2011-01-11  Andrew Burgess  <aburgess@broadcom.com>
155
156         * interp.c (sim_store_register): Update return value to
157         match new API.
158
159 2010-03-30  Mike Frysinger  <vapier@gentoo.org>
160
161         * interp.c (interrupt_names): Add const to pointer type.
162         (do_interrupt): Add const to interrupt_name.
163
164 2010-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
165
166         * configure: Regenerate.
167
168 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
169
170         * config.in: Regenerate.
171         * configure: Likewise.
172
173         * configure: Regenerate.
174
175 2008-07-11  Hans-Peter Nilsson  <hp@axis.com>
176
177         * configure: Regenerate to track ../common/common.m4 changes.
178         * config.in: Ditto.
179
180 2008-06-06  Vladimir Prus  <vladimir@codesourcery.com>
181             Daniel Jacobowitz  <dan@codesourcery.com>
182             Joseph Myers  <joseph@codesourcery.com>
183
184         * configure: Regenerate.
185
186 2008-02-05  DJ Delorie  <dj@redhat.com>
187
188         * simops.c (OP_1C007E0): Compensate for 64 bit hosts.
189         (OP_18007E0): Likewise.
190         (OP_2C007E0): Likewise.
191         (OP_28007E0): Likewise.
192         * v850.igen (divh): Likewise.
193         
194         * simops.c (OP_C0): Correct saturation logic.
195         (OP_220): Likewise.
196         (OP_A0): Likewise.
197         (OP_660): Likewise.
198         (OP_80): Likewise.
199
200         * simops.c (OP_2A0): If the shift count is zero, clear the
201         carry.
202         (OP_A007E0): Likewise.
203         (OP_2C0): Likewise.
204         (OP_C007E0): Likewise.
205         (OP_280): Likewise.
206         (OP_8007E0): Likewise.
207
208         * simops.c (OP_2C207E0): Correct PSW flags for special divu
209         conditions.
210         (OP_2C007E0): Likewise, for div.
211         (OP_28207E0): Likewise, for divhu.
212         (OP_28007E0): Likewise, for divh.  Also, sign-extend the correct
213         operand.
214         * v850.igen (divh): Likewise, for 2-op divh.
215         
216         * v850.igen (bsh): Fix carry logic.
217
218 2007-02-20  Daniel Jacobowitz  <dan@codesourcery.com>
219
220         * Makefile.in (interp.o): Uncomment and update.
221
222 2006-12-21  Hans-Peter Nilsson  <hp@axis.com>
223
224         * acconfig.h: Remove.
225         * config.in: Regenerate.
226
227 2006-06-13  Richard Earnshaw  <rearnsha@arm.com>
228
229         * configure: Regenerated.
230
231 2006-06-05  Daniel Jacobowitz  <dan@codesourcery.com>
232
233         * configure: Regenerated.
234
235 2006-05-31  Daniel Jacobowitz  <dan@codesourcery.com>
236
237         * configure: Regenerated.
238
239 2005-03-23  Mark Kettenis  <kettenis@gnu.org>
240
241         * configure: Regenerate.
242
243 2005-01-14  Andrew Cagney  <cagney@gnu.org>
244
245         * configure.ac: Sinclude aclocal.m4 before common.m4.  Add
246         explicit call to AC_CONFIG_HEADER.
247         * configure: Regenerate.
248
249 2005-01-12  Andrew Cagney  <cagney@gnu.org>
250
251         * configure.ac: Update to use ../common/common.m4.
252         * configure: Re-generate.
253
254 2005-01-11  Andrew Cagney  <cagney@localhost.localdomain>
255
256         * configure: Regenerated to track ../common/aclocal.m4 changes.
257
258 2005-01-07  Andrew Cagney  <cagney@gnu.org>
259
260         * configure.ac: Rename configure.in, require autoconf 2.59.
261         * configure: Re-generate.
262
263 2004-12-08  Hans-Peter Nilsson  <hp@axis.com>
264
265         * configure: Regenerate for ../common/aclocal.m4 update.
266
267 2004-01-18  Mark Kettenis  <kettenis@gnu.org>
268
269         * simops.c: Include <sys/types.h>.
270
271 2003-09-05  Andrew Cagney  <cagney@redhat.com>
272             Nick Clifton  <nickc@redhat.com>
273
274         * interp.c (sim_open): Accept bfd_mach_v850e1.
275         * v850-dc: Add entry for v850e1.
276         * v850.igen: Add support for v850e1.
277         Add code for DBTRAP and DBRET instructions.
278         (dbtrap): Create a separate v850e1 specific instruction.
279         Only generate a trap if the target is not the v850e1.
280         Otherwise treat it as a special kind of branch.
281         (break): Mark as v850/v850e specific.
282         
283 2003-05-16  Ian Lance Taylor  <ian@airs.com>
284
285         * Makefile.in (SHELL): Make sure this is defined.
286         (tmp-igen): Use $(SHELL) whenever we invoke move-if-change.
287
288 2003-04-06  Nick Clifton  <nickc@redhat.com>
289
290         * simops.c (OP_40): Delete.  Move code to...
291         * v850-igen.c (): ...Here. Sign extend the first operand.
292         * simops.h (OP_40): Remove prototype.
293
294 2003-02-27  Andrew Cagney  <cagney@redhat.com>
295
296         * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
297
298 2002-11-30  Andrew Cagney  <cagney@redhat.com>
299
300         * simops.c: Use int, 1, 0 instead of boolean, true and false.
301         * sim-main.h: Ditto.
302
303 2002-09-27  Jim Wilson  <wilson@redhat.com>
304
305         * simops.c (OP_E6077E0): And op1 with 7 after reading register, not
306         before.
307         (BIT_CHANGE_OP): Likewise.
308
309 2002-09-26  Jim Wilson  <wilson@redhat.com>
310
311         * simops (OP_10007E0): Don't subtract 4 from PC.
312
313 2002-09-19  Nick Clifton  <nickc@redhat.com>
314
315         * interp.c (sim_open): Remove reference to v850ea.
316         (sim_create_inferior): Likewise.
317         * v850-dc: Likewise.
318         * v850.igen: Remove all references to v850ea, including v850ea
319         specific instructions.
320
321 2002-08-29  Nick Clifton  <nickc@redhat.com>
322
323         From 2001-08-23  Catherine Moore  <clm@redhat.com>
324
325         * Makefile.in: Add gen-zero-r0 option.
326         * sim-main.h (GPR_SET, GPR_CLEAR): Define.
327         * simops.c (OP_24007E0):  Sign extend the imm9
328         operand of a mul instruction.
329
330 2002-06-17  Andrew Cagney  <cagney@redhat.com>
331
332         * simops.c (trace_result): Fix printf formatting.
333
334 2002-06-16  Andrew Cagney  <ac131313@redhat.com>
335
336         * configure: Regenerated to track ../common/aclocal.m4 changes.
337
338 2001-12-02  Andrew Cagney  <ac131313@redhat.com>
339
340         * Makefile.in (simops.h, table.c): Delete targets.
341         (tmp-gencode, gencode.o, gencode): Delete targets.
342         (simops.h): New file.
343         ($(BUILT_SRC_FROM_IGEN)): Do not depend on simops.h.
344         * gencode.c: Delete file.
345         
346 2001-04-15  J.T. Conklin  <jtc@redback.com>
347
348         * Makefile.in (simops.o): Add simops.h to dependency list.
349
350 2001-03-14  Andrew Cagney  <ac131313@redhat.com>
351
352         * Makefile.in (gencode): Link with libintl.
353
354 2001-01-31  Jonathan Larmour  <jlarmour@redhat.com>
355
356         * Makefile.in (gencode): Link with libopcodes in build tree rather
357         than building source files from there.
358
359 2000-05-30  Nick Clifton  <nickc@cygnus.com>
360
361         * v850.igen: Remove illegal instruction pattern, since it is the
362         same as the breakpoint pattern.
363
364 Tue May 23 21:39:23 2000  Andrew Cagney  <cagney@b1.cygnus.com>
365
366         * configure: Regenerated to track ../common/aclocal.m4 changes.
367
368 2000-04-14  Gary Thomas  <gthomas@redhat.com>
369
370         * v850.igen: Define 'br *' as illegal since this is the only
371         way to provide a breakpoint on some v850 family processors.
372
373 2000-03-24  Frank Ch. Eigler  <fche@redhat.com>
374
375         * v850.igen (ilgop): New insn pattern for four-byte breakpoints.
376
377 Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
378
379         * configure: Regenerated to track ../common/aclocal.m4 changes.
380
381 1999-05-08  Felix Lee  <flee@cygnus.com>
382
383         * configure: Regenerated to track ../common/aclocal.m4 changes.
384         
385 Tue Dec  1 17:25:16 1998  Andrew Cagney  <cagney@b1.cygnus.com>
386
387         * Makefile.in (NL_TARGET): Define as -DNL_TARGET_v850.
388
389 Wed Nov 25 17:52:58 1998  Andrew Cagney  <cagney@b1.cygnus.com>
390
391         * Makefile.in (simops.o): Depends on targ-vals.h
392         * simops.c: Include targ-vals.h instead of
393         libgloss/.../syscall.h. Replace SYS_* with TARGET_SYS_*.
394         (divn, divun, OP_1C007E0, OP_18207E0, OP_1C207E0,OP_18007E0):
395         Replace signed long int with signed32.
396
397 Fri Oct  9 18:02:25 1998  Doug Evans  <devans@canuck.cygnus.com>
398
399         * interp.c: #include "itable.h".
400         (get_insn_name): New function.
401         (sim_open): Initialize CPU_INSN_NAME,CPU_MAX_INSNS.
402         * sim-main.h (MAX_INSNS,INSN_NAME): Delete.
403
404 Wed May  6 19:43:27 1998  Doug Evans  <devans@canuck.cygnus.com>
405
406         * sim-main.h (INSN_NAME): New arg `cpu'.
407
408 Tue Apr 28 18:33:31 1998  Geoffrey Noer  <noer@cygnus.com>
409
410         * configure: Regenerated to track ../common/aclocal.m4 changes.
411
412 Sun Apr 26 15:31:55 1998  Tom Tromey  <tromey@creche>
413
414         * configure: Regenerated to track ../common/aclocal.m4 changes.
415         * config.in: Ditto.
416
417 Sun Apr 26 15:19:14 1998  Tom Tromey  <tromey@cygnus.com>
418
419         * acconfig.h: New file.
420         * configure.in: Reverted change of Apr 24; use sinclude again.
421
422 Fri Apr 24 14:16:40 1998  Tom Tromey  <tromey@creche>
423
424         * configure: Regenerated to track ../common/aclocal.m4 changes.
425         * config.in: Ditto.
426
427 Fri Apr 24 11:18:08 1998  Tom Tromey  <tromey@cygnus.com>
428
429         * configure.in: Don't call sinclude.
430
431 Sat Apr  4 20:36:25 1998  Andrew Cagney  <cagney@b1.cygnus.com>
432
433         * configure: Regenerated to track ../common/aclocal.m4 changes.
434         * sim-main.h (SIM_MAIN_H): Wrap header.
435
436 Fri Mar 27 16:15:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
437
438         * configure: Regenerated to track ../common/aclocal.m4 changes.
439
440 Wed Mar 25 12:35:29 1998  Andrew Cagney  <cagney@b1.cygnus.com>
441
442         * configure: Regenerated to track ../common/aclocal.m4 changes.
443
444 Tue Mar 10 15:54:50 1998  Andrew Cagney  <cagney@b1.cygnus.com>
445
446         * interp.c (sim_stop): Delete, second attempt.
447
448 Thu Feb 26 19:09:47 1998  Andrew Cagney  <cagney@b1.cygnus.com>
449
450         * interp.c (sim_info): Delete.
451
452 Wed Feb 18 10:47:32 1998  Andrew Cagney  <cagney@b1.cygnus.com>
453
454         * sim-main.h (TRACE_ALU_INPUT*): Delete.  Moved to sim-trace.[hc].
455
456         * simops.c (trace_result): Call trace_generic instead of
457         trace_one_insn.
458         (trace_module): Change variable type to integer.
459         (trace_input): Initialize trace_module with TRACE_ALU_IDX.
460
461         * sim-main.h (trace_module): Change variable decl to integer type.
462         (TRACE_BRANCH*, TRACE_LD, TRACE_ST): Update.
463         
464 Tue Feb 17 12:51:18 1998  Andrew Cagney  <cagney@b1.cygnus.com>
465
466         * interp.c (sim_store_register, sim_fetch_register): Pass in
467         length parameter.  Return -1.
468
469 Tue Feb  3 16:24:42 1998  Andrew Cagney  <cagney@b1.cygnus.com>
470
471         * sim-main.h (IMEM16, IMEM16_IMMED): Rename IMEM and
472         IMEM_IMMED. To match recent igen change.
473
474 Sun Feb  1 16:47:51 1998  Andrew Cagney  <cagney@b1.cygnus.com>
475
476         * configure: Regenerated to track ../common/aclocal.m4 changes.
477
478 Sat Jan 31 18:15:41 1998  Andrew Cagney  <cagney@b1.cygnus.com>
479
480         * configure: Regenerated to track ../common/aclocal.m4 changes.
481
482 Fri Jan 30 09:51:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
483
484         * sim-main.h (CPU_CIA): Delete, replaced by.
485         (CIA_SET, CIA_SET): Define.
486
487 Mon Jan 19 22:26:29 1998  Doug Evans  <devans@seba>
488
489         * configure: Regenerated to track ../common/aclocal.m4 changes.
490
491 Mon Dec 15 23:17:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
492
493         * configure: Regenerated to track ../common/aclocal.m4 changes.
494         * config.in: Ditto.
495
496 Fri Dec  5 09:26:08 1997  Nick Clifton  <nickc@cygnus.com>
497
498         * v850.igen: Revert break value back to its old value.
499
500 Thu Dec  4 09:21:05 1997  Doug Evans  <devans@canuck.cygnus.com>
501
502         * configure: Regenerated to track ../common/aclocal.m4 changes.
503
504 Wed Dec  3 17:27:19 1997  Nick Clifton  <nickc@cygnus.com>
505
506         * v850.igen: Make break have a zero first field, since otherwise
507         it clashes with the DIVH instruction.
508
509 Sat Nov 22 21:32:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
510
511         * simops.c (OP_10007E0): Rename SIGABRT -> SIM_SIGABRT. Give
512         sim_stopped instead of sim_signalled.
513
514         * v850.igen (BREAK), simops.c (OP_12007E0): Rename SIGTRAP to
515         SIM_SIGTRAP.
516         (illegal): Rename SIGILL to SIM_SIGILL.
517         
518         * sim-main.h, simops.c, interp.c: Do not include signal.h.
519
520         * sim-main.h: Include sim-signal.h instead of signal.h.
521         (SIGTRAP, SIGQUIT): Delete definition.
522         (SIG_V850_EXIT): Delete definition.
523
524 Tue Nov 18 15:33:48 1997  Doug Evans  <devans@canuck.cygnus.com>
525
526         * Makefile.in (SIM_OBJS): Use $(SIM_NEW_COMMON_OBJS).
527
528 Fri Oct 31 10:33:40 1997  Andrew Cagney  <cagney@b1.cygnus.com>
529
530         * interp.c (sim_open): Check state magic number.
531         (sim-assert.h): Include.
532
533 Tue Oct 28 11:06:47 1997  Andrew Cagney  <cagney@b1.cygnus.com>
534
535         * v850.igen: Add model filter field to records.
536
537 Fri Oct  3 09:28:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
538
539         * configure: Regenerated to track ../common/aclocal.m4 changes.
540
541 Fri Sep 26 11:56:02 1997  Felix Lee  <flee@cygnus.com>
542
543         * sim-main.h: delete null override of SIM_ENGINE_HALT_HOOK and
544         SIM_ENGINE_RESTART_HOOK.
545         
546 Wed Sep 24 17:38:57 1997  Andrew Cagney  <cagney@b1.cygnus.com>
547
548         * configure: Regenerated to track ../common/aclocal.m4 changes.
549
550 Wed Sep 24 17:28:26 1997  Andrew Cagney  <cagney@b1.cygnus.com>
551
552         * sim-main.h (WITH_TARGET_WORD_MSB): Delete.
553
554         * configure.in (SIM_AC_OPTION_BITSIZE): Specify 32 bit
555         architecture with MSB == 31.
556
557 Wed Sep 24 14:04:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
558
559         * v850.igen: Make divh insn with RRRRR==0 breakpoint.
560
561 Tue Sep 23 11:04:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
562
563         * configure: Regenerated to track ../common/aclocal.m4 changes.
564
565 Tue Sep 23 10:19:51 1997  Andrew Cagney  <cagney@b1.cygnus.com>
566
567         * Makefile.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
568         SIM_HOSTENDIAN, SIM_RESERVED_BITS): Delete, moved to common.
569         (SIM_EXTRA_CFLAGS): Update.
570         
571 Mon Sep 22 11:46:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
572
573         * configure: Regenerated to track ../common/aclocal.m4 changes.
574         * configure.in: Really specify NONSTRICT_ALIGNMENT as the default.
575
576 Fri Sep 19 17:45:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
577
578         * configure.in: Specify NONSTRICT_ALIGNMENT as the default.
579         * configure: Regenerated to track ../common/aclocal.m4 changes.
580
581 Fri Sep 19 10:37:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
582
583         * v850.igen (disp16): Use EXTEND16 to sign extend disp.
584         (disp22): Only shift left by 1, not 2.
585         ("jmp"): Ensure PC is 2 byte aligned.
586
587         * simops.c, v850.igen: Move "Bcond", "jr", "jarl" code to
588         v850.igen. Fix tracing.
589
590         * simops.c (OP_300, OP_400, OP_500): Move "sdl.b", "sld.h",
591         "sld.w" insns to v850.igen.  Fix tracing.
592         (OP_70): Ditto for "sld.hu".
593
594         * v850.igen: Clarify tracing of "sld.b", "sld.h" et.al.
595
596         * simops.c (condition_met): Make global.
597
598         * sim-main.h (TRACE_ALU_INPUT3, TRACE_BRANCH0, TRACE_LD,
599         TRACE_ST): Define.
600         (TRACE_LD_NAME): Define.
601
602         * simops.c: Move "cmov", "cmov imm" to v850.igen, fix.
603
604 Wed Sep 17 16:21:08 1997  Andrew Cagney  <cagney@b1.cygnus.com>
605
606         * simops.c: Move "mov", "reti", to v850.igen, fix tracing.
607         
608         * interp.c (hash): Delete.
609
610         * v850.igen (nop): Really do nothing.
611
612         * interp.c (do_interrupt): Mask interrupts after PSW is saved, not
613         before.
614         * v850.igen (reti): Return to current PC not previous.
615
616 Wed Sep 17 14:02:10 1997  Andrew Cagney  <cagney@b1.cygnus.com>
617
618         * simops.c: Move "ctret", "bsw", "hsw" to v850.igen, fix tracing.
619         (trace_module): Global, save component/module name across insn.
620
621         * simops.c: Move "bsh" to v850.igen, fix.
622         
623         * v850.igen (callt): Load correct number of bytes. Fix tracing.
624         (stsr, ldsr): Correct src, dest fields. Fix tracing.
625         (ctret): Force alignment.  Fix tracing.
626         
627 Tue Sep 16 22:14:01 1997  Andrew Cagney  <cagney@b1.cygnus.com>
628
629         * simops.c (trace_output): Add result argument.
630         (trace_result): New function.  Simpler version of trace_output,
631         assumes trace needed.
632         (trace_output): Call trace_result.
633         (trace_output): For IMM_REG_REG, trace correct register.
634         (trace_input): Add case for 16bit immediates.
635         (OP_600, OP_640, OP_680, OP_6C0, OP_6A0): Use.
636
637         * sim-main.h (TRACE_ALU_INPUT, TRACE_ALU_RESULT): Define.
638         (trace_values, trace_name, trace_pc, trace_num_values): Make
639         global.
640         (GR, SR): Define.
641         
642         v850.insn (movea, stsr): Use.
643         (sxb, sxh, zxb, zxh): Ditto.
644         
645 Tue Sep 16 21:14:01 1997  Andrew Cagney  <cagney@b1.cygnus.com>
646
647         * simops.c: Move "movea" from here.
648         * v850.igen: To here.
649
650         * v850.igen (simm16): Define, sign extend imm16.
651         (uimm16): Define, no sign extension.
652         (addi, andi, movea, movhi, mulhi, ori, satsubi, xori): Use.
653         
654         * simops.c: Move "sxh", "switch", "sxb", "callt", "dispose",
655         "mov32" from here.
656         * v850.igen: To here.
657         (switch): Fix off by two error in NIA calc.
658         
659 Tue Sep 16 15:14:01 1997  Andrew Cagney  <cagney@b1.cygnus.com>
660
661         * simops.c (trace_pc, trace_name, trace_values, trace_num_values):
662         New static globals.
663         (trace_input): Just save pc, name and values for trace_output.
664         (trace_output): Write trace values to a buffer.  Use
665         trace_one_insn to print trace info and buffer.
666         (SIZE_OPERANDS, SIZE_LOCATION): Delete.
667         
668 Tue Sep 16 09:02:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
669
670         * sim-main.h (struct _sim_cpu): Add psw_mask so that reserved bits
671         can be masked out.
672
673         * simops.c (OP_2007E0, OP_4007E0): Move "ldsr", "stsr"
674         instructions from here.
675         * v850.igen (ldsr, stsr): To here.  Mask out reserved bits when
676         setting PSW.
677         
678         * interp.c (sim_open): Set psw_mask if machine known.
679
680 Tue Sep 16 10:20:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
681
682         * v850-dc: Add rule to diferentiate between breakpoint and divh.
683         * v850.igen (break): New instruction, breakpoint simulator.
684         * v850.igen (breakpoint): Enable.  Change to a 32bit instruction.
685
686 Mon Sep 15 18:44:05 1997  Jim Wilson  <wilson@cygnus.com>
687
688         * simops.c (Multiply64): Don't store into register zero.
689
690 Tue Sep 16 09:02:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
691
692         * Makefile.in (semantics.o): Add dependency.
693
694         * sim-main.h (SAVE_1, SAVE_2): Perform backward compatible save,
695         do not adjust CIA/NIA.
696
697 Mon Sep 15 17:36:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
698
699         * simops.c (OP_300, OP_400, OP_70): Make behavour depend on PSW[US].
700         
701         * simops.c: Move "divun", "sld.bu", "divhn", "divhun", "divn",
702         "divun", "pushml" code from here to v850.igen.
703         (divun): Make global.
704         (type3_regs): Make global
705         
706         * v850.igen: Move simops.c code to here.
707
708         * interp.c (sim_create_inferior): For v850eq set US bit by
709         default.
710
711         * interp.c (sim_open): Don't set arch, now set by
712         sim_analyze_program.
713
714         * configure: Regenerated to track ../common/aclocal.m4 changes.
715
716 Mon Sep 15 14:39:34 1997  Andrew Cagney  <cagney@b1.cygnus.com>
717
718         * simops.c (op_types): Move from here.
719         sim-main.h: To here.
720
721         * sim-main.h (trace_input, trace_output), simops.c: Make global.
722
723         * simops.c (OP_60): Move "jmp" code from here.
724         * v850.igen (jmp): To here.
725
726         * simops.c (OP_60): Move "sld.bu" code from here.
727         * v850.igen (sld.bu): To here.
728
729 Fri Sep 12 15:11:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
730
731         * v850.igen (prepare, ...): Add to v850eq architecture.
732
733         * interp.c (sim_open): Default to v850eq.
734         
735         * interp.c (sim_open): Default to v850e.
736         * sim-main.h (signal.h): Include.
737
738         * v850.igen (illegal): Report/halt illegal instructions.
739
740         * Makefile.in (SIM_EXTRA_CFLAGS): Add SIM_RESERVED_BITS.
741
742         * configure.in: Add reserved bits option.
743         * configure: Regenerate.
744
745 Thu Sep 11 08:40:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
746
747         * interp.c (sim_open): Use sim_do_commandf instead of asprintf.
748
749         * sim-main.h (INSN_NAME): 
750
751         * Makefile.in (INCLUDE): Add SIM_EXTRA_DEPS.
752         (SIM_EXTRA_DEPS): Add itable.h
753         (tmp-gencode): Does not depend on simops.h
754
755         * sim-main.h (itable.h): Include.
756         (MAX_INSNS, INSN_NAME): Define.
757
758         * interp.c: Compute inttype from the interrupt_names index that
759         was passed in.
760
761 Wed Sep 10 10:25:40 1997  Andrew Cagney  <cagney@b1.cygnus.com>
762
763         * simops.c (trace_input): Use trace_printf instead of
764         sim_io_printf.
765         (trace_output): Ditto.
766         (trace_input): Only trace when TRACE_ALU_P.  Delete code
767         disasembling instruction.
768         (trace_output): Only trace when TRACE_ALU_P.
769
770 Tue Sep  9 01:29:50 1997  Andrew Cagney  <cagney@b1.cygnus.com>
771
772         * simops.c (trace_input, trace_output): Use sim_io_printf.
773         (OP_620): Pass correct argument to trace.
774         (OP_E607E0): Ditto.
775         (trace_input): Obtain prog_bfd, text_start et.al from simulator
776         struct.
777
778 Mon Sep  8 21:03:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
779
780         * v850.igen: New file.
781         * v850-dc: New file.
782
783 Mon Sep  8 18:33:04 1997  Andrew Cagney  <cagney@b1.cygnus.com>
784
785
786         * sim-main.h (SEXT16): Delete, use EXTEND16.
787         (SEXT8): Delete, use EXTEND8.
788         (SEXT32): Delete, used?
789         (SEXT40, SEXT44, SEXT64): Use UNSIGNED64 for constants, not ...LL.
790         (WITH_TARGET_WORD_MSB): Define as 31. v850 little bit endian.
791         
792         * simops.c: Use EXTEND15 from sim-bits instead of SEXT16.
793
794         * sim-main.h (DEBUG_TRACE, DEBUG_VALUES, v850_debug): Delete,
795         replace with TRACE_INSN_P and TRACE_ALU_P.
796
797         * simops.c (trace_input, trace_output): Update.
798
799         * interp.c (sim_engine_run): Delete.
800         (lookup_hash): Delete.
801         (sim_open): Do not fill hash table.
802         (sim_trace): Delete.
803
804 Fri Sep  5 17:04:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>
805
806         * simops.c (OP_FFFF): Use sim_engine_halt.
807         (OP_12007E0): Ditto.
808         (OP_10007E0): Ditto.
809
810         * sim-main.h (struct sim_cpu): Delete member exception. Using
811         sim-engine et.al.
812
813         * interp.c (sim_info): Do not do anything in sim-info.
814         (sim_stop): Delete, replace with sim-stop.
815         (sim_stop_reason): Delete, replace with sim-reason.
816
817         * sim-main.h (WITH_WATCHPOINTS): Define.
818         (WITH_MODULO_MEMORY): Define
819         
820         * Makefile.in (SIM_OBJS): Add sim-resume, sim-watch, sim-stop,
821         sim-reason.
822
823         * interp.c (enum interrupt_cond_type): Delete.
824         (struct interrupt_generator): Delete.
825         (enum interrupt_type): Drop int_none.
826         (sim_open): Initialize WATCHPOINT module.
827         (sim_resume, sim_run): Rename sim_resume to sim_run.
828         (sim_engine_run): Replace interrupt code with call to sim-events.
829         (sim_set_interrupt): Delete.
830         (sim_parse_number): Delete.
831
832 Thu Sep  4 17:21:23 1997  Doug Evans  <dje@seba>
833
834         * configure: Regenerated to track ../common/aclocal.m4 changes.
835
836 Thu Sep  4 18:11:37 1997  Andrew Cagney  <cagney@b1.cygnus.com>
837
838         * simops.c (fetch_argv): New function, fetch a arg vector from
839         simulator memory.
840
841         * configure.in: Check for fork, execve, execv.
842         * configure: Regenerate.
843
844         * interp.c (sim_store_register, sim_fetch_register): Use H2T_4 and
845         T2H_4 for byte swapping.
846
847         * sim-main.h, interp.c (get_word, get_half, get_byte, put_word,
848         put_half, put_byte): Delete.
849
850         * Makefile.in (SIM_OBJS): Add sim-memopt.o module.
851
852         * sim-main.h (load_mem, store_mem): Redefine as macros.
853         (IMEM, IMEM_IMMED): New macros - fetch instructions.
854
855         * simops.c (OP_10007E0): For SYS_read, SYS_write, SYS_open
856         transfer data via a buffer.
857         (fetch_str): New function, fetch string from memory.
858
859         * Makefile.in (SIM_OBJS): Add sim-hrw.o module.
860
861         * interp.c (sim_open): Establish memory maps using sim-memopt.c
862         via sim_do_command.
863         (sim_do_command): Print error if memory-map command is used. Call
864         sim_args_command.
865         (map): Delete, replaced by sim-core.
866         (sim_memory_init): Delete, replaced by sim-core.
867         (sim_set_memory_map): Delete, replaced by sim-memopt.
868         (load_mem): Delete, replaced by sim-core.
869         (store_mem): Delete, replaced by sim-core.
870         (sim_write): Delete, replaced by sim-hrw.
871         (sim_read): Delete, replaced by sim-hrw.
872
873         * sim-main.h (struct sim_state): Remove memory members, using
874         sim-core.c
875
876 Wed Sep  3 10:18:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>
877
878         * sim-main.h: Replace SIM_HAVE_FLATMEM with mem ptr.
879         * interp.c (map): Do not add to a void pointer.
880         
881         * Makefile.in (INCLUDE): Add sim-main.h
882
883         * configure.in: Check for time.h
884         * configure: Re-generate.
885
886         * interp.c (struct interrupt_generator): Make time unsigned long,
887         address SIM_ADDR.
888         (sim_resume): Make oldpc SIM_ADDR.
889         (struct hash_entry): Make mask/opcode unsigned.
890
891         * v850_sim.h (struct simops ): Make opcode and mask unsigned.
892
893         * simops.c (utime.h): Include if available.
894         (OP_10007E0): Check for UTIME function.
895         (divun): Put parentheses around shift argument.
896         (OP_640): Put parentheses around shift argument, was wrong.
897         (OP_107F0): Return something.
898
899         * interp.c (sim_parse_number): Use strtoul not strtol.
900         (sim_resume): Use sim_elapsed_time_get to keep track of the time.
901
902         * configure.in (SIM_AC_OPTION_WARNINGS): Add.
903         (SIM_AC_OPTION_ENDIAN): Set to hardwired big.
904         (SIM_AC_OPTION_HOST_ENDIAN): Add.
905         (AC_CHECK_FUNCS): Add utime.
906         (AC_CHECK_HEADERS): Add stdlib.h, string.h, strings.h, utime.h
907         configure: Regenerate.
908         
909
910         * Makefile.in (SIM_RUN_OBJS): Use nrun.o.
911         (SIM_OBJS): Add sim-io.o, sim-hload.o, sim-utils.o, sim-options.o,
912         sim-config.o, sim-module.o, sim-events.o, sim-core.o,
913         sim-endian.o, sim-engine.o, sim-trace.o, sim-profile.o
914         (SIM_ENDIAN, SIM_WARNGINS): Define.
915
916         * simops.c (OP_10007E0): Use sim_io_* for transfers.
917
918         * interp.c (sim_resume): Pass sd around.
919
920         * simops.c (sim-main.h): Include.
921
922         * gencode.c (write_template): Generate #include sim-main.h.
923         (write_opcodes): Ditto.
924         
925         * interp.c (prog_bfd, prog_bfd_was_opened_p): Delete.
926         (v850_callback): Ditto.
927         (sim_kind, myname): Ditto.
928         (lookup_hash): Pass SD. Use sim_io_error.
929         (sim_set_memory_map): Pass in SD, use.
930         (init_system): Pass in SD, use.
931         (sim_open): Update.
932         (sim_set_profile): Delete.
933         (sim_set_profile_size): Delete.
934         (do_interrupt): Pass in SD, use.
935         (sim_info): Use sim_io_printf.
936         (sim_create_inferior): Reset registers.  Set PC from prog_bfd
937         argument.
938         (sim_load): Delete, use common/sim-hload.c
939         (sim_size): Rename to sim_memory_init.
940         (sim_write): Remove call to init_system.
941         (init_system): Delete.
942         (sim_set_callbacks): Delete.
943         (sim_set_interrupt): Pass in SD, use.
944         (start_time): Delete.
945         
946         * v850_sim.h: Remove everything except `struct simops' from here.
947         * sim-main.h: Move most to here.
948         * gencode.c: Move #includes to here.
949
950         * sim-main.h(struct _sim_cpu): Rename struct _state.
951         (#define PC, et.al.): Update
952         (v850_callback): Delete.  Replaced with SIM_DESC arg.
953         (int8, uint8, int16, uint16, int32, uint32): Define types using
954         unsigned8 et.al from common/sim-types.h.
955         * sim-main.h (State): Define as STATE_CPU.
956
957 Mon Sep  1 12:07:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>
958
959         * configure.in: Check for time, chmod.
960         * configure: Regenerate.
961         * simops.c (SYS_time, SYS_chmod): Use HAVE_TIME, HAVE_CHMOD.
962         
963         * simops.c (../../libgloss/v850/sys/syscall.h): Include instead of
964         sys/syscall.h.
965         (OP_10007E0): Check the existance each SYS_* macro independantly.
966
967         * v850_sim.h (SIGQUIT, SIGTRAP): Only define if missing.
968
969 Wed Aug 27 18:13:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
970
971         * configure: Regenerated to track ../common/aclocal.m4 changes.
972         * config.in: Ditto.
973
974 Tue Aug 26 10:42:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
975
976         * interp.c (sim_kill): Delete.
977         (sim_create_inferior): Add ABFD argument.
978         (sim_load): Move setting of PC from here.
979         (sim_create_inferior): To here.
980
981 Mon Aug 25 17:50:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
982
983         * configure: Regenerated to track ../common/aclocal.m4 changes.
984         * config.in: Ditto.
985
986 Mon Aug 25 11:31:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>
987
988         * interp.c (sim_open): Add ABFD argument.
989
990 Fri Aug 22 10:39:28 1997  Nick Clifton  <nickc@cygnus.com>
991
992         * simops.c (bsh): Only set CY flag if either of the bottom
993         bytes is zero.
994         
995         * simops.c (prepare, dispose): Lower numbered
996         registers go to higher numbered address.
997
998         * simops.c (unsigned divide instructions): S bit set if result has
999         top bit set.
1000         
1001         * simops.c (pushml, pushmh, popml, popmh): Lower numbered
1002         registers go to higher numbered address.
1003         
1004 Wed Aug 20 13:56:35 1997  Nick Clifton  <nickc@cygnus.com>
1005
1006         * simops.c (OP_107E0, OP_107F0, OP_307E0, OP_307F0): Use correct
1007         interpretation of SR bit in list18 structure.
1008         (divn, divun): New functions to perform N step divide functions.
1009
1010 Mon Aug 18 10:59:02 1997  Nick Clifton  <nickc@cygnus.com>
1011
1012         * simops.c (OP_300, OP_400, OP_60, OP_70): Support variant opcodes
1013         with US bit set in the PSW.
1014
1015 Wed Aug 13 19:06:55 1997  Nick Clifton  <nickc@cygnus.com>
1016
1017         * interp.c (sim_resume): Opcode functions return amount to be
1018         added to PC and all opcodes take a standard format in the OP[]
1019         array.
1020         
1021         (do_format_*): Functions removed.
1022
1023         * v850_sim.h (SP, EP): New register mnemonics.
1024         
1025         * gencode.c (write_header): Functions prototypes return an
1026         integer.
1027
1028         * simops.c: Opcode functions return amount to be added to PC.
1029         
1030         * v850_sim.h (CTPC, CTPSW, CTBP): New register mnemonics.
1031         
1032         * simops.c: Add support for v850e instructions.
1033         
1034         * simops.c: Add support for v850eq instructions.
1035         
1036 Tue May 20 10:24:14 1997  Andrew Cagney  <cagney@b1.cygnus.com>
1037
1038         * interp.c (sim_open): Add callback argument.
1039         (sim_set_callbacks): Delete SIM_DESC argument.
1040
1041 Thu Apr 24 00:39:51 1997  Doug Evans  <dje@canuck.cygnus.com>
1042
1043         * configure: Regenerated to track ../common/aclocal.m4 changes.
1044
1045 Wed Apr 23 17:20:16 1997  Doug Evans  <dje@canuck.cygnus.com>
1046
1047         * interp.c (prog_bfd_was_opened_p): New static local.
1048         (prog_bfd): New global variable.
1049         (sim_open): Undo patch to add -E support.
1050         (sim_close): Close prog_bfd if sim_load opened it.
1051         (sim_load): Record bfd of loaded file in prog_bfd.
1052         * simops.c (prog_bfd): Renamed from exec_bfd.
1053
1054 Fri Apr 18 14:17:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
1055
1056         * interp.c (sim_stop): Stub function.
1057
1058 Thu Apr 17 03:53:18 1997  Doug Evans  <dje@canuck.cygnus.com>
1059
1060         * Makefile.in (SIM_OBJS): Add sim-load.o.
1061         * interp.c (sim_kind, myname): New static locals.
1062         (sim_open): Set sim_kind, myname.  Ignore -E arg.
1063         (sim_load): Return SIM_RC.  New arg abfd.  Call sim_load_file to
1064         load file into simulator.  Set start address from bfd.
1065         (sim_create_inferior): Return SIM_RC.  Delete arg start_address.
1066
1067 Wed Apr 16 19:53:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>
1068
1069         * simops.c (OP_10007E0): Only provide system calls SYS_execv,
1070         SYS_wait, SYS_wait, SYS_utime, SYS_time if defined by the host.
1071
1072 Mon Apr  7 15:45:02 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
1073
1074         * configure: Regenerated to track ../common/aclocal.m4 changes.
1075         * config.in: Ditto.
1076
1077 Wed Apr  2 15:06:28 1997  Doug Evans  <dje@canuck.cygnus.com>
1078
1079         * interp.c (sim_open): New arg `kind'.
1080
1081         * configure: Regenerated to track ../common/aclocal.m4 changes.
1082
1083 Wed Apr  2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1084
1085         * configure: Regenerated to track ../common/aclocal.m4 changes.
1086
1087 Wed Mar 19 01:14:00 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
1088
1089         * configure: Regenerated to track ../common/aclocal.m4 changes.
1090
1091 Mon Mar 17 15:10:07 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
1092
1093         * configure: Re-generate.
1094
1095 Fri Mar 14 10:34:11 1997  Michael Meissner  <meissner@cygnus.com>
1096
1097         * configure: Regenerate to track ../common/aclocal.m4 changes.
1098
1099 Thu Mar 13 13:00:54 1997  Doug Evans  <dje@canuck.cygnus.com>
1100
1101         * interp.c (sim_open): New SIM_DESC result.  Argument is now
1102         in argv form.
1103         (other sim_*): New SIM_DESC argument.
1104
1105 Tue Feb  4 13:33:30 1997  Doug Evans  <dje@canuck.cygnus.com>
1106
1107         * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
1108         COMMON_{PRE,POST}_CONFIG_FRAG instead.
1109         * configure.in: sinclude ../common/aclocal.m4.
1110         * configure: Regenerated.
1111
1112 Thu Jan 23 11:46:23 1997  Stu Grossman  (grossman@critters.cygnus.com)
1113
1114         * configure configure.in Makefile.in:  Update to new configure
1115         scheme which is more compatible with WinGDB builds.
1116         * configure.in:  Improve comment on how to run autoconf.
1117         * configure:  Re-run autoconf to get new ../common/aclocal.m4.
1118         * Makefile.in:  Use autoconf substitution to install common
1119         makefile fragment.
1120
1121 Mon Jan 20 16:05:34 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
1122
1123         * simops.c (OP_{E0,2E0,6E0}): The multiply operations sign extend,
1124         not zero extend.
1125
1126 Tue Jan 14 17:06:03 1997  Stu Grossman  (grossman@critters.cygnus.com)
1127
1128         * simops.c:  Put ifdefs around things to make MSVC happy.  Get rid
1129         of unistd.h.  Disable SYS_stat, SYS_chown, SYS_time, SYS_times,
1130         SYS_gettimeofday and SYS_utime from MSVC.
1131
1132 Tue Dec 31 18:11:13 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1133
1134         * simops.c (OP_10007E0): Know that kill encodes the signal number
1135         via: 0xdead0000 | signal and turn it back into a signal.
1136
1137 Fri Dec 27 14:44:06 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1138
1139         * v850_sim.h (SIG_V850_EXIT): Define as -1.
1140
1141         * interp.c (sim_open): Cast calloc function.
1142         (sim_stop_reason): If signal is SIG_V850_EXIT, inform gdb the
1143         program exited with the appropriate exit code.
1144         (sim_set_interrupt): Declare buildargv.
1145
1146         * simops.c (OP_10007E0): Make exit signal normal exit.  Make time
1147         type correct and work on big endian systems.
1148
1149 Wed Nov 20 02:18:44 1996  Doug Evans  <dje@canuck.cygnus.com>
1150
1151         * Makefile.in: Delete stuff moved to ../common/Make-common.in.
1152         (SIM_OBJS,SIM_EXTRA_CFLAGS,SIM_EXTRA_CLEAN): Define.
1153         * configure.in: Simplify using macros in ../common/aclocal.m4.
1154         Call AC_CHECK_HEADERS(unistd.h).
1155         * configure: Regenerated.
1156         * config.in: New file.
1157         * simops.c: #include "config.h".  #include <unistd.h> if present.
1158
1159 Sun Nov  3 23:02:54 1996  Stan Shebs  <shebs@andros.cygnus.com>
1160
1161         * v850_sim.h (State): New slots dummy_mem, pending_nmi.
1162         (EIPC, etc): New macros for system registers.
1163         * simops.c, interp.c: Use everywhere.
1164
1165         * interp.c: Add support for interrupts issued by interrupt
1166         generators, either PC- or time-based.  Controlled by simulator
1167         command "sim interrupt".
1168
1169         * interp.c: Add support for variable-size allocation of memory,
1170         via simulator command "sim memory-map".
1171         (map): Issue SIGSEGV for references to invalid memory regions.
1172         
1173 Thu Oct 31 14:44:10 1996  Gavin Koch  <gavin@cygnus.com>
1174         
1175         * simops.c: Include <sys/time.h> for struct timeval and 
1176         struct timezone.
1177         
1178 Wed Oct 30 08:49:10 1996  Jeffrey A Law  (law@cygnus.com)
1179
1180         * simops.c (OP_10007E0): Handle SYS_times and SYS_gettimeofday.
1181
1182         * simops.c (OP_10007E0): Handle SYS_time.
1183
1184 Tue Oct 29 14:22:55 1996  Jeffrey A Law  (law@cygnus.com)
1185
1186         * simops.c: Include <sys/stat.h>.
1187         (OP_10007E0): Handle SYS_stat.
1188
1189 Thu Oct 24 12:26:35 1996  Jeffrey A Law  (law@cygnus.com)
1190
1191         * simops.c (OP_10007E0): Don't declare errno.
1192
1193         * simops.c (OP_500): Mask off low bit in displacement
1194         for sld.w.
1195         (OP_501): Similarly.
1196
1197         * simops.c (OP_500): Fix displacement handling for sld.w.
1198         (OP_501): Similarly for sst.w.
1199
1200         * simops.c (trace_input): Remove all references to SEXT7.
1201         (OP_300, OP_400, OP_500, OP_380, OP_480, OP_501): Displacement
1202         is zero extended for sst/sld instructions.
1203         * v850_sim.h (SEX7): Delete.  It's no longer needed (and it
1204         was incorrect anyway).
1205
1206 Thu Oct 24 10:33:33 1996  Stu Grossman  (grossman@critters.cygnus.com)
1207
1208         * Makefile.in:  Get rid of srcroot.  Set all INSTALL macros via
1209         autoconf.
1210         * gencode.c (write_opcodes):  Pad operands field to account for
1211         MSVC braindamage.
1212         * simops.c:  Include errno.h.  Exclude SYS_chown, since MSVC
1213         doesn't support it.  (Why is this here in the first place?!?)
1214         * v850_sim.h:  Get rid of 64 bit defs.  Also, get rid of #elif's.
1215         Change number of operands in struct simops from 9 to 6.  Define
1216         SIGTRAP and SIGQUIT for MSVC.
1217
1218 Tue Oct 15 16:19:51 1996  Stu Grossman  (grossman@critters.cygnus.com)
1219
1220         * interp.c (MEM_SIZE):  It's now bytes, not a power of 2.
1221         * (map):  Add support for external mem in the 1->2 meg range.
1222         Also, abort() when memory access is way out of bounds.  (Better to
1223         die than to give wrong result.  (This will be fixed later.))
1224         * (sim_size):  MEM_SIZE is now bytes, not shift factor.
1225
1226 Tue Oct  1 15:53:24 1996  Gavin Koch <gavin@cygnus.com>
1227         
1228         * simops.c (trace_input): Swapped order of operands for output
1229         output of OP_IMM_REG.  Changed the fetching of the operands for
1230         OP_LOAD32, and OP_STORE32 to work like op-function.
1231         
1232 Mon Sep 30 15:46:33 1996  Stu Grossman  (grossman@critters.cygnus.com)
1233
1234         * interp.c:  Move includes of remote-sim.h and callback.h to
1235         v850-sim.h.
1236         * (lookup_hash): Add PC to report of hash failure.
1237         * (map load_mem store_mem):  New memory subsystem.  Models V851
1238         memory system.
1239         * (sim_write sim_read):  Use new memory subsystem.
1240         * (sim_resume):  Don't load and save PC into EIPC anymore.  Needed
1241         to make user-defined traps work right.
1242         * simops.c (OP_*):  Use new memory subsystem.
1243         * (OP_14007E0 (reti)):  Implement reti.
1244         * (OP_14996E0 (trap)):  Implement user-defined traps.  Move I/O to
1245         trap 31.  Use new memory subsystem.
1246         * v850_sim.h:  Prototypes for load_mem, store_mem and map.  Use
1247         load_mem in RLW macro.
1248
1249 Fri Sep 27 18:34:09 1996  Stu Grossman  (grossman@critters.cygnus.com)
1250
1251         * gencode.c (write_opcodes):  Output hex values for opcode mask
1252         and patterns.
1253         * interp.c (sim_resume):  Save and restore PC from the appropriate
1254         register.
1255         * (sim_fetch_register sim_store_register):  Fix byte-order problem
1256         with reading and writing registers.
1257         * simops.c (OP_FFFF):  Implement pseudo-breakpoint insn.
1258
1259 Fri Sep 27 17:42:37 1996  Jeffrey A Law  (law@cygnus.com)
1260
1261         * simops.c (trace_input): Fix thinko. 
1262
1263 Wed Sep 18 09:54:12 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1264
1265         * simops.c (exec_bfd): Rename from sim_bfd.
1266         (trace_input): Ditto.
1267
1268 Thu Sep 12 12:03:05 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1269
1270         * simops.c (trace_input): Use find_nearest_line to print line
1271         number, function name or file name of PC.
1272
1273 Wed Sep 11 16:44:37 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
1274
1275         * simops.c: Add tracing support.  Use SEXTxx macros instead of
1276         doing hardwired shifts.
1277
1278         * configure.in (--enable-sim-cflags): Add switch to add additional
1279         flags to simulator buld.  If --enable-sim-cflags=trace, turn on
1280         tracing.
1281         * configure: Regenerate.
1282
1283         * Makefile.in: Don't require a VPATH capable make if configuring
1284         in the same directory.  Don't use CFLAGS for configuration flags.
1285         Add flags from --enable-sim-cflags.  Support canadian cross
1286         builds.  Rebuild whole simulator if include files change.
1287
1288         * interp.c (v850_debug): New global for debugging.
1289         (lookup_hash,sim_size,sim_set_profile): Use
1290         printf_filtered callback, instead of calling printf directly.
1291         (sim_{open,trace}): Enable tracing if -t and compiled for tracing.
1292
1293         * v850_sim.h: Use limits.h to set the various sized types.
1294         (SEXT{5,7,16,22}): New macros.
1295
1296 Mon Sep  9 20:50:46 1996  Jeffrey A Law  (law@cygnus.com)
1297
1298         * interp.c (hash): Make this an inline function
1299         when compiling with GCC.  Simplify.
1300         * simpos.c: Explicitly include "sys/syscall.h".  Remove
1301         some #if 0'd code.  Enable more emulated syscalls.
1302
1303 Wed Sep  4 01:48:55 1996  Jeffrey A Law  (law@cygnus.com)
1304
1305         * interp.c: Fix sign bit handling for add and sub instructions.
1306
1307 Tue Sep  3 10:20:30 1996  Jeffrey A Law  (law@cygnus.com)
1308
1309         * gencode.c: Fix various indention & style problems.
1310         Remove test code.  Remove #if 0 code.
1311         * interp.c: Provide prototypes for all static functions.
1312         Fix minor indention problems.
1313         (sim_open, sim_resume): Remove unused variables.
1314         (sim_read): Return type is "int".
1315         * simops.c: Remove unused variables.
1316         (divh): Make result of divide-by-zero zero.
1317         (setf): Initialize result to keep compiler quiet.
1318         (sar instructions): These just clear the overflow bit.
1319         * v850_sim.h: Provide prototypes for put_byte, put_half
1320         and put_word.
1321
1322         * interp.c: OP should be an array of 32bit operands!
1323         (v850_callback): Declare.
1324         (do_format_5): Fix extraction of OP[0].
1325         (sim_size): Remove debugging printf.
1326         (sim_set_callbacks): Do something useful.
1327         (sim_stop_reason): Gross hacks to get c-torture running.
1328         * simops.c: Simplify code for computing targets of bCC
1329         insns.   Invert 's' bit if 'ov' bit is set for some
1330         instructions.  Fix 'cy' bit handling for numerous
1331         instructions.  Make the simulator stop when a halt
1332         instruction is encountered.  Very crude support for
1333         emulated syscalls (trap 0).
1334         * v850_sim.h: Include "callback.h" and declare
1335         v850_callback.  Items in the operand array are 32bits.
1336
1337 Sun Sep  1 22:35:35 1996  Jeffrey A Law  (law@cygnus.com)
1338
1339         * interp.c (sim_resume): Fix code to check for a format 3
1340         opcode.
1341         * simops.c: bCC insns only argument is a constant, not a
1342         register value (duh...)
1343
1344 Fri Aug 30 10:33:49 1996  Jeffrey A Law  (law@cygnus.com)
1345
1346         * simops.c: Fix "not1" and "set1".
1347
1348         * simops.c: Don't forget to initialize temp for
1349         "ld.h" and "ld.w"
1350
1351         * interp.c: Remove various debugging printfs.
1352
1353         * simops.c: Fix satadd, satsub boundary case handling.
1354
1355         * interp.c (hash): Fix.
1356         * interp.c (do_format_8): Get operands correctly and
1357         call the target function.
1358         * simops.c: Rough cut at "clr1", "not1", "set1", and "tst1".
1359
1360 Thu Aug 29 13:53:29 1996  Jeffrey A Law  (law@cygnus.com)
1361
1362         * interp.c (do_format_4): Get operands correctly and
1363         call the target function.
1364         * simops.c: Rough cut at "sld.b", "sld.h", "sld.w", "sst.b",
1365         "sst.h", and "sst.w".
1366
1367         * v850_sim.h: The V850 doesn't have split I&D spaces.  Change
1368         accordingly.  Remove many unused definitions.
1369         * interp.c: The V850 doesn't have split I&D spaces.  Change
1370         accordingly.
1371         (get_longlong, get_longword, get_word): Deleted.
1372         (write_longlong, write_longword, write_word): Deleted.
1373         (get_operands): Deleted.
1374         (get_byte, get_half, get_word): New functions.
1375         (put_byte, put_half, put_word): New functions.
1376         * simops.c: Remove unused functions.  Rough cut at
1377         "ld.b", "ld.h", "ld.w", "st.b", "st.h", "st.w" insns.
1378
1379         * v850_sim.h (struct _state): Remove "psw" field.  Add
1380         "sregs" field.
1381         (PSW): Remove bogus definition.
1382         * simops.c: Change condition code handling to use the psw
1383         register within the sregs array.  Handle "ldsr" and "stsr".
1384
1385         * simops.c: Handle "satadd", "satsub", "satsubi", "satsubr".
1386
1387         * interp.c (do_format_5): Get operands correctly and
1388         call the target function.
1389         (sim_resume): Don't do a PC update for format 5 instructions.
1390         * simops.c: Handle "jarl" and "jmp" instructions.
1391
1392         * simops.c: Fix minor typos.  Handle "cmp", "setf", "tst"
1393         "di", and "ei" instructions correctly.
1394
1395         * interp.c (do_format_3): Get operands correctly and call
1396         the target function.
1397         * simops.c: Handle bCC instructions.
1398
1399         * simops.c: Add condition code handling to shift insns.
1400         Fix minor typos in condition code handling for other insns.
1401
1402         * Makefile.in: Fix typo.
1403         * simops.c: Add condition code handling to "sub" "subr" and
1404         "divh" instructions.
1405
1406         * interp.c (hash): Update to be more accurate.
1407         (lookup_hash): Call hash rather than computing the hash
1408         code here.
1409         (do_format_1_2): Handle format 1 and format 2 instructions.
1410         Get operands correctly and call the target function.
1411         (do_format_6): Get operands correctly and call the target
1412         function.
1413         (do_formats_9_10): Rough cut so shift ops will work.
1414         (sim_resume): Tweak to deal with format 1 and format 2
1415         handling in a single funtion.  Don't update the PC
1416         for format 3 insns.  Fix typos.
1417         * simops.c: Slightly reorganize.  Add condition code handling
1418         to "add", "addi", "and", "andi", "or", "ori", "xor", "xori"
1419         and "not" instructions.
1420         * v850_sim.h (reg_t): Registers are 32bits.
1421         (_state): The V850 has 32 general registers.  Add a 32bit
1422         psw and pc register too.  Add accessor macros
1423
1424         * Makefile.in, interp.c, v850_sim.h: Bring over endianness
1425         changes from the d10v simulator.
1426
1427         * simops.c: Add shift support.
1428
1429         * simops.c: Add multiply & divide support.  Abort for system
1430         instructions.
1431
1432         * simops.c: Add logicals, mov, movhi, movea, add, addi, sub
1433         and subr.  No condition codes yet.
1434
1435 Wed Aug 28 13:53:22 1996  Jeffrey A Law  (law@cygnus.com)
1436
1437         * ChangeLog, Makefile.in, configure, configure.in, v850_sim.h, 
1438         gencode.c, interp.c, simops.c: Created.
1439