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