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