1 2016-01-10 Mike Frysinger <vapier@gentoo.org>
3 * configure: Regenerate.
5 2016-01-10 Mike Frysinger <vapier@gentoo.org>
7 * configure.ac (SIM_AC_OPTION_INLINE): Delete call.
8 * configure: Regenerate.
10 2016-01-10 Mike Frysinger <vapier@gentoo.org>
12 * configure: Regenerate.
14 2016-01-10 Mike Frysinger <vapier@gentoo.org>
16 * configure: Regenerate.
18 2016-01-09 Mike Frysinger <vapier@gentoo.org>
20 * config.in, configure: Regenerate.
22 2016-01-06 Mike Frysinger <vapier@gentoo.org>
24 * wrapper.c (sim_create_inferior): Mark argv and env const.
25 (sim_open): Mark argv const.
27 2016-01-04 Mike Frysinger <vapier@gentoo.org>
29 * configure: Regenerate.
31 2016-01-03 Mike Frysinger <vapier@gentoo.org>
33 * wrapper.c (sim_open): Update sim_parse_args comment.
35 2016-01-03 Mike Frysinger <vapier@gentoo.org>
37 * wrapper.c (sim_target_parse_arg_array): Replace for loop with
40 2016-01-03 Mike Frysinger <vapier@gentoo.org>
42 * configure.ac (SIM_AC_OPTION_HOSTENDIAN): Delete.
43 * configure: Regenerate.
45 2016-01-02 Mike Frysinger <vapier@gentoo.org>
47 * configure: Regenerate.
48 * wrapper.c (init): Change BIG_ENDIAN to BFD_ENDIAN_BIG.
50 2015-12-30 Mike Frysinger <vapier@gentoo.org>
52 * wrapper.c (sim_store_register): Rename to ...
53 (arm_reg_store): ... this.
54 (sim_fetch_register): Rename to ...
55 (arm_reg_fetch): ... this.
56 (sim_open): Call CPU_REG_FETCH/CPU_REG_STORE.
58 2015-12-27 Mike Frysinger <vapier@gentoo.org>
60 * Makefile.in (SIM_OBJS): Delete sim-hload.o.
62 2015-12-26 Mike Frysinger <vapier@gentoo.org>
64 * config.in, configure: Regenerate.
66 2015-12-25 Mike Frysinger <vapier@gentoo.org>
68 * Makefile.in (SIM_OBJS): Delete bag.o.
69 * armdefs.h (struct ARMul_State): Delete ErrorCode.
70 (ResetPin, FIQPin, IRQPin, AbortPin, TransPin, BigEndPin, Prog32Pin,
71 Data32Pin, LateAbortPin, ARMul_OSExit, ARMul_OSLastErrorP,
72 ARMul_Debug, ARMul_OSException,rdi_log, SpinCursor, HOURGLASS,
73 HOURGLASS_RATE): Delete.
74 * armemu.c (ARMul_Emulate26): Delete ARMul_Debug call.
75 * arminit.c (ARMul_Reset): Do not set state->ErrorCode.
76 (ARMul_Abort): Delete ARMul_OSException call.
77 * armopts.h: Delete file.
78 * armos.c (isatty_, ARMul_OSExit, ARMul_OSException,
79 ARMul_OSLastErrorP, ARMul_Debug, BUFFERSIZE, UNIQUETEMPS, NOOP,
80 BINARY, READOP, WRITEOP, FIXCRLF): Delete.
81 (struct OSblock): Delete Time0, ErrorP, FileTable, FileFlags, and
83 (ARMul_OSInit): Do not set OSptr->ErrorP, OSptr->FileTable, or
85 * armrdi.c: Delete file.
86 * armvirt.c: Delete armopts.h include.
87 (ARMul_LoadInstrS): Delete HOURGLASS logic.
88 * bag.c, bag.h, communicate.c, communicate.h, dbg_conf.h, dbg_cp.h,
89 dbg_hif.h: Delete files.
90 * dbg_rdi.h (RDP_*, RDI*): Delete defines.
91 (PointHandle, ThreadHandle, Dbg_ConfigBlock, Dbg_HostosInterface,
92 Dbg_MCState, getbufferproc): Delete.
93 (rdi_*): Delete Functions.
94 (RDI_ConfigAspect, RDI_ConfigMatchType, RDI_NameList): Delete
95 (struct RDIProcVec): Delete.
96 * gdbhost.c, gdbhost.h, kid.c, main.c, parent.c: Delete files.
97 * wrapper.c (ARMul_Debug): Delete.
99 2015-12-15 Dominik Vogt <vogt@linux.vnet.ibm.com>
101 * thumbemu.c (handle_T2_insn): Fix left shift of negative value.
102 * armemu.c (handle_v6_insn): Likewise.
104 2015-11-14 Mike Frysinger <vapier@gentoo.org>
106 * wrapper.c (sim_close): Delete.
108 2015-07-14 Nick Clifton <nickc@redhat.com>
110 * armcopro.c: Remove extraneous whitespace.
111 * armdefs.h: Likewise.
112 * armfpe.h: Likewise.
113 * arminit.c: Likewise.
114 * armopts.h: Likewise.
117 * armrdi.c: Likewise.
118 * armsupp.c: Likewise.
119 * armvirt.c: Likewise.
122 * communicate.c: Likewise.
123 * communicate.h: Likewise.
124 * dbg_conf.h: Likewise.
125 * dbg_cp.h: Likewise.
126 * dbg_hif.h: Likewise.
127 * dbg_rdi.h: Likewise.
128 * gdbhost.c: Likewise.
129 * gdbhost.h: Likewise.
130 * iwmmxt.c: Likewise.
131 * iwmmxt.h: Likewise.
134 * maverick.c: Likewise.
135 * parent.c: Likewise.
136 * thumbemu.c: Likewise.
137 * wrapper.c: Likewise.
139 2015-07-02 Nick Clifton <nickc@redhat.com>
141 * Makefile.in (SIM_EXTRA_CFLAGS): Revert previous delta.
142 (SIM_EXTRA_LIBS): Add -lm.
144 2015-06-28 Nick Clifton <nickc@redhat.com>
146 * Makefile.in (SIM_EXTRA_CFLAGS): Add -lm.
147 * armdefs.h (ARMdval, ARMfval): New types.
148 (ARM_VFP_reg): New union.
149 (struct ARMul_State): Add VFP_Reg and FPSCR fields.
150 (VFP_fval, VFP_uword, VFP_sword, VFP_dval, VFP_dword): Accessor
151 macros for the new VFP_Reg field.
152 * armemu.c (handle_v6_insn): Add code to handle MOVW, MOVT,
153 QADD16, QASX, QSAX, QSUB16, QADD8, QSUB8, UADD16, USUB16, UADD8,
154 USUB8, SEL, REV, REV16, RBIT, BFC, BFI, SBFX and UBFX
156 (handle_VFP_move): New function.
157 (ARMul_Emulate16): Add checks for newly supported v6
158 instructions. Add support for VMRS, VMOV and MRC instructions.
159 (Multiply64): Allow nRdHi == nRm and/or nRdLo == nRm when
160 operating in v6 mode.
161 * armemu.h (t_resolved): Define.
162 * armsupp.c: Include math.h.
163 (handle_VFP_xfer): New function. Handles VMOV, VSTM, VSTR, VPUSH,
164 VSTM, VLDM and VPOP instructions.
165 (ARMul_LDC): Test for co-processor 10 or 11 and pass call to the
166 new handle_VFP_xfer function.
167 (ARMul_STC): Likewise.
168 (handle_VFP_op): New function. Handles VMLA, VMLS, VNMLA, VNMLS,
169 VNMUL, VMUL, VADD, VSUB, VDIV, VMOV, VABS, VNEG, VSQRT, VCMP,
170 VCMPE and VCVT instructions.
171 (ARMul_CDP): Test for co-processor 10 or 11 and pass call to the
172 new handle_VFP_op function.
173 * thumbemu.c (tBIT, tBITS, ntBIT, ntBITS): New macros.
174 (test_cond): New function. Tests a condition and returns non-zero
175 if the condition has been met.
176 (handle_IT_block): New function.
177 (in_IT_block): New function.
178 (IT_block_allow): New function.
179 (ThumbExpandImm): New function.
180 (handle_T2_insn): New function. Handles T2 thumb instructions.
181 (handle_v6_thumb_insn): Add next_instr and pc parameters.
182 (ARMul_ThumbDecode): Add support for IT blocks. Add support for
184 * wrapper.c (sim_create_inferior): Detect a thumb address and call
187 2015-06-23 Mike Frysinger <vapier@gentoo.org>
189 * configure: Regenerate.
191 2015-06-23 Mike Frysinger <vapier@gentoo.org>
193 * armdefs.h: Always include stdint.h.
195 [!HAVE_STDINT_H]: Delete.
196 * dbg_hif.h [!__STDC__]: Delete.
198 2015-06-12 Mike Frysinger <vapier@gentoo.org>
200 * configure: Regenerate.
202 2015-06-12 Mike Frysinger <vapier@gentoo.org>
204 * configure: Regenerate.
206 2015-04-18 Mike Frysinger <vapier@gentoo.org>
208 * sim-main.h (SIM_CPU): Delete.
210 2015-04-18 Mike Frysinger <vapier@gentoo.org>
212 * sim-main.h (sim_cia): Delete.
214 2015-04-17 Mike Frysinger <vapier@gentoo.org>
216 * sim-main.h (CIA_GET, CIA_SET): Delete.
218 2015-04-17 Mike Frysinger <vapier@gentoo.org>
220 * wrapper.c (arm_pc_get, arm_pc_set): New functions.
221 (sim_open): Declare new local var i. Call CPU_PC_FETCH &
222 CPU_PC_STORE for all cpus.
224 2015-04-15 Mike Frysinger <vapier@gentoo.org>
226 * Makefile.in (SIM_OBJS): Delete sim-cpu.o.
227 * sim-main.h (STATE_CPU): Delete.
229 2015-04-13 Mike Frysinger <vapier@gentoo.org>
231 * configure: Regenerate.
233 2015-04-12 Mike Frysinger <vapier@gentoo.org>
235 * Makefile.in (SIM_OBJS): Move wrapper.o to the start of the list.
237 2015-04-06 Mike Frysinger <vapier@gentoo.org>
239 * Makefile.in (SIM_OBJS): Delete sim-engine.o.
241 2015-04-01 Mike Frysinger <vapier@gentoo.org>
243 * Makefile.in (armos.o, armcopro.o, maverick.o, iwmmxt.o, arminit.o,
244 armrdi.o, armsupp.o, thumbemu.o, bag.o, wrapper.o): Delete rules.
245 * tconfig.h: Delete file.
247 2015-03-31 Mike Frysinger <vapier@gentoo.org>
249 * config.in, configure: Regenerate.
251 2015-03-30 Mike Frysinger <vapier@gentoo.org>
253 * Makefile.in (SIM_RUN_OBJS): Delete.
254 (SIM_EXTRA_CFLAGS): Delete -DSIM_TARGET_SWITCHES and
255 -DSIM_USE_DEPRECATED_RUN_FRONTEND.
256 (SIM_OBJS): Change to $(SIM_NEW_COMMON_OBJS).
257 * sim-main.h: New file.
258 * wrapper.c: Delete armdefs.h, sim-utils.h, and run-sim.h includes.
259 Add sim-main.h and sim-options.h includes.
260 (sim_callback, mem_size, trace): Add TODO comments.
261 (state): Delete static and add TODO comment.
262 (sim_kind, myname, big_endian): Delete.
263 (init): Change big_endian to CURRENT_TARGET_BYTE_ORDER check.
264 (sim_size, sim_trace, sim_info, sim_target_display_usage, sim_load,
265 sim_do_command, sim_set_callbacks, sim_complete_command): Delete.
266 (sim_target_parse_command_line): Mark static.
267 (free_state): New function.
268 (sim_open): Rewrite to use new common logic.
269 (sim_close): Delete body.
271 2015-03-30 Mike Frysinger <vapier@gentoo.org>
273 * Makefile.in (SIM_EXTRA_CFLAGS): Delete -DNEED_UI_LOOP_HOOK.
274 * interp.c [NEED_UI_LOOP_HOOK] (UI_LOOP_POLL_INTERVAL,
275 ui_loop_hook_counter, deprecated_ui_loop_hook): Delete.
276 (sim_resume) [NEED_UI_LOOP_HOOK]: Delete ui code.
278 2015-03-30 Mike Frysinger <vapier@gentoo.org>
280 * armemu.c [MODE32] (handle_v6_insn): Move definition.
281 (ARMul_Emulate26): Initialize do_int after label target.
282 * armemu.h (UNDEF_Test, UNDEF_Shift, UNDEF_MSRPC, UNDEF_MRSPC,
283 UNDEF_MULPCDest, UNDEF_MULDestEQOp1, UNDEF_LSRBPC,
284 UNDEF_LSRBaseEQOffWb, UNDEF_LSRBaseEQDestWb, UNDEF_LSRPCBaseWb,
285 UNDEF_LSRPCOffWb, UNDEF_LSMNoRegs, UNDEF_LSMPCBase,
286 UNDEF_LSMUserBankWb, UNDEF_LSMBaseInListWb, UNDEF_SWPPC,
287 UNDEF_CoProHS, UNDEF_MCRPC, UNDEF_LSCPCBaseWb,
288 UNDEF_UndefNotBounced, UNDEF_ShortInt, UNDEF_IllegalMode,
289 UNDEF_Prog32SigChange, UNDEF_Data32SigChange): Define to while(0).
290 * armsupp.c (ARMul_Align): Convert old style prototype.
291 * bag.c (addtolist, killwholelist): Mark static.
292 (BAG_newbag): Convert old style prototype.
293 * maverick.c (mv_compute_host_endianness): Delete.
294 * wrapper.c (verbosity, sim_set_verbose): Delete.
295 (init): Set state->verbose to 0.
297 2015-03-30 Mike Frysinger <vapier@gentoo.org>
299 * configure.ac: Call SIM_AC_OPTION_ENDIAN, SIM_AC_OPTION_ALIGNMENT,
300 SIM_AC_OPTION_HOSTENDIAN, SIM_AC_OPTION_ENVIRONMENT,
301 SIM_AC_OPTION_INLINE, and SIM_AC_OPTION_WARNINGS.
302 * config.in, configure: Regenerate.
304 2015-03-30 Mike Frysinger <vapier@gentoo.org>
306 * Makefile.in (COPRO): Delete.
307 (SIM_OBJS): Expand COPRO.
308 * configure.ac: Deletd stdint.h check.
310 * configure: Regenerate.
312 2015-03-16 Mike Frysinger <vapier@gentoo.org>
314 * config.in, configure: Regenerate.
315 * tconfig.in: Rename file ...
316 * tconfig.h: ... here.
318 2015-03-14 Mike Frysinger <vapier@gentoo.org>
320 * Makefile.in (SIM_EXTRA_CFLAGS): Add
321 -DSIM_USE_DEPRECATED_RUN_FRONTEND.
322 (SIM_RUN_OBJS): Set to run.o.
324 2015-03-14 Mike Frysinger <vapier@gentoo.org>
326 * configure.ac (AC_CHECK_HEADERS): Delete unistd.h.
327 * aclocal.m4, configure: Regenerate.
329 2014-08-19 Alan Modra <amodra@gmail.com>
331 * configure: Regenerate.
333 2014-08-15 Roland McGrath <mcgrathr@google.com>
335 * configure: Regenerate.
336 * config.in: Regenerate.
338 2014-03-18 Nick Clifton <nickc@redhat.com>
340 * wrapper.c: Convert function declarations to ISO C format.
341 (sim_open): Delete code for handling t,d and z command line
344 2014-03-14 Nick Clifton <nickc@redhat.com>
346 * wrapper.c (op_print): New function.
347 (sim_dis_read): New function.
348 (print_insn): New function - disassembles the given instruction.
349 (sim_trace): Note that tracing is now allowed.
350 (sim_create_inferior): Default to emulating v6.
351 Initialise the disassembler machinery.
352 (sim_target_parse_command_line): Add support for -t -d and -z
354 (sim_target_display_usage): Note existence of -d and -z options.
355 (sim_open): Parse -t -d and -z options.
356 * armemu.h: Add exports of trace, disas and trace_funcs.
357 Add prototype for print_insn.
358 * armemu.c (ARMul_Emulate26): Add tracing code.
359 Delete unused variables.
360 * thumbemu (handle_v6_thumb_insn): Delete unused variable Rd.
361 Move Rm variable into switch cases.
364 * armcopro.c (XScale_cp15_init): Add a return value.
365 (XScale_cp13_init): Likewise.
366 (XScale_cp14_init): Likewise.
367 (XScale_cp15_LDC): Delete unused function.
368 (XScale_cp15_STC): Likewise.
369 * maverick.c: Delete comment inside comment.
370 (DSPInit): Delete unused function.
371 (DSPMCR4): Fix compile time warning about missing parenthesis.
373 (DSPCDP6): Delete unused variable opcode2.
375 2014-03-14 David McQuillan <dmcq@tao-group.com>
378 * armemu.c (WriteR15Load): New function. Determines if the state
379 can be changed upon a write to R15.
380 (LoadMult): Use WriteR15Load.
381 * armemu.h (WRITEDESTB): Use WriteR15Load.
383 2014-03-10 Mike Frysinger <vapier@gentoo.org>
385 * wrapper.c (sim_do_command): Add const to cmd.
387 2014-03-05 Mike Frysinger <vapier@gentoo.org>
389 * wrapper.c (sim_load): Add const to prog.
391 2013-09-23 Alan Modra <amodra@gmail.com>
393 * configure: Regenerate.
395 2013-06-03 Mike Frysinger <vapier@gentoo.org>
397 * aclocal.m4, configure: Regenerate.
399 2013-05-07 Jayant Sonar <jayant.sonar@kpitcummins.com>
400 Kaushik Phatak <Kaushik.Phatak@kpitcummins.com>
402 * armemu.c (ARMul_Emulate32): Emulate instructions MOVW and MOVT.
404 2012-12-19 Joel Brobecker <brobecker@adacore.com>
406 * COPYING: Update to GPL version 3.
408 2012-09-03 Nick Clifton <nickc@redhat.com>
411 * armsupp.c (ARMul_MRC): Return 0 if access to the MRC instruction
414 2012-08-01 Kevin Buettner <kevinb@redhat.com>
416 * wrapper.c (libiberty.h): Include.
417 (sim_store_register, sim_fetch_register): On success, return
418 length, instead of -1.
420 2012-06-15 Joel Brobecker <brobecker@adacore.com>
422 * config.in, configure: Regenerate.
424 2012-06-13 Nick Clifton <nickc@redhat.com>
426 * wrapper.c (sim_create_inferior): Treat WMMX2 binaries as iWMMXt
429 2012-05-24 Pedro Alves <palves@redhat.com>
433 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
435 2012-05-18 Nick Clifton <nickc@redhat.com>
438 * wrapper.c: Include config.h before system header files.
440 2012-03-24 Mike Frysinger <vapier@gentoo.org>
442 * aclocal.m4, config.in, configure: Regenerate.
444 2011-12-03 Mike Frysinger <vapier@gentoo.org>
446 * aclocal.m4: New file.
447 * configure: Regenerate.
449 2011-10-17 Mike Frysinger <vapier@gentoo.org>
451 * configure.ac: Change include to common/acinclude.m4.
453 2011-10-17 Mike Frysinger <vapier@gentoo.org>
455 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
456 call. Replace common.m4 include with SIM_AC_COMMON.
457 * configure: Regenerate.
459 2011-07-01 Nick Clifton <nickc@redhat.com>
462 * iwmmxt.c (WCMPGT): Sign extend 32-bit values before performing a
464 (WMAC): Extend computed result before adding to result register.
465 (WRSA): Sign extend 32-bit values before shifting.
467 2011-04-16 Mike Frysinger <vapier@gentoo.org>
469 * wrapper.c (sim_complete_command): New stub function.
471 2010-05-26 Ozkan Sezer <sezeroz@gmail.com>
473 * communicate.c (MYread_char): Check error return from accept() call
474 by its equality to -1 not by it being negative.
475 (MYread_charwait): Likewise.
476 * main.c (main): Likewise for both socket() and accept() calls.
478 2010-04-14 Mike Frysinger <vapier@gentoo.org>
480 * wrapper.c (sim_write): Add const to buffer arg.
482 2010-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
484 * configure: Regenerate.
486 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
488 * config.in: Regenerate.
489 * configure: Likewise.
491 * configure: Regenerate.
493 2008-11-24 Joel Sherrill <joel.sherrill@oarcorp.com>
495 * arminit.c, iwmmxt.c: Include <string.h> to
497 2008-07-11 Hans-Peter Nilsson <hp@axis.com>
499 * configure: Regenerate to track ../common/common.m4 changes.
502 2008-06-06 Vladimir Prus <vladimir@codesourcery.com>
503 Daniel Jacobowitz <dan@codesourcery.com>
504 Joseph Myers <joseph@codesourcery.com>
506 * configure: Regenerate.
507 * wrapper.c (sim_target_display_usage): Add help parameter.
509 2007-02-27 Mark Mitchell <mark@codesourcery.com>
511 * armos.c (SWIflen): Do not treate file descriptor zero as
514 2007-02-15 Nick Clifton <nickc@redhat.com>
516 * armemu.c (handle_v6_insn): Fix typo in sign extension test of
517 the sext and sxtah instructions.
519 2007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
521 Reported by timeless@gmail.com:
522 * wrapper.c (sim_target_parse_arg_array): Do not return void value.
524 2006-12-21 Hans-Peter Nilsson <hp@axis.com>
526 * acconfig.h: Remove.
527 * config.in: Regenerate.
529 2006-06-13 Richard Earnshaw <rearnsha@arm.com>
531 * configure: Regenerated.
533 2006-06-05 Daniel Jacobowitz <dan@codesourcery.com>
535 * configure: Regenerated.
537 2006-05-31 Daniel Jacobowitz <dan@codesourcery.com>
539 * configure: Regenerated.
541 2006-03-07 Paul Brook <paul@codesourcery.com>
543 * elfos.c (ARMul_OSHandleSWI): Call correct function for IsTTY.
545 2006-02-01 Shaun Jackman <sjackman@gmail.com>
547 * armos.c (ARMul_OSHandleSWI): Handle the RedBoot system
548 call meminfo. Return ENOSYS for unhandled RedBoot syscalls.
550 2005-11-23 Mark Mitchell <mark@codesourcery.com>
552 * wrapper.c (gdb/signals.h): Include it.
553 (SIGTRAP): Don't define.
555 (sim_stop_reason): Use TARGET_SIGNAL_* instead of SIG*.
557 2005-11-16 Shaun Jackman <sjackman@gmail.com>
559 * armos.c: Include limits.h
560 (unlink): Remove this macro. It is unused in this file and
561 conflicts with sim_callback->unlink.
562 (PATH_MAX): Define as 1024 if not already defined.
563 (ReadFileName): New function.
564 (SWIopen): Fix a potential buffer overflow.
565 (SWIremove): New function.
567 (ARMul_OSHandleSWI): Handle the RDP calls SWI_IsTTY,
568 SWI_Remove, and SWI_Rename, as well as the RDI calls
569 AngelSWI_Reason_IsTTY, AngelSWI_Reason_Remove, and
570 AngelSWI_Reason_Rename.
572 2005-09-19 Paul Brook <paul@codesourcery.com>
574 * armdefs.h: Define ARMsword and ARMsdword. Use stdint.h when
576 * armemu.c: Use them.
577 * armvirt.c (ARMul_MemoryInit): Use correct type for size.
578 * configure.ac: Check for stdint.h.
579 * config.in: Regenerate.
580 * configure: Regenerate.
582 2005-05-24 Nick Clifton <nickc@redhat.com>
584 * thumbemu.c (handle_v6_thumb_insn): New function.
585 (ARMul_ThumbDecode): Call handle_v6_thumb_insn() when an undefined
586 instruction binary is encountered.
588 2005-05-12 Nick Clifton <nickc@redhat.com>
590 * Update the address and phone number of the FSF organization in
591 the GPL notices in the following files:
592 COPYING, Makefile.in, armcopro.c, armdefs.h, armemu.c,
593 armemu.h, armfpe.h, arminit.c, armopts.h, armos.c, armos.h,
594 armrdi.c, armsupp.c, armvirt.c, bag.c, bag.h, communicate.c,
595 communicate.h, dbg_conf.h, dbg_cp.h, dbg_hif.h, dbg_rdi.h,
596 gdbhost.c, gdbhost.h, iwmmxt.c, iwmmxt.h, kid.c, main.c,
597 maverick.c, parent.c, thumbemu.c, wrapper.c
599 2005-04-20 Nick Clifton <nickc@redhat.com>
601 * armemu.c (handle_v6_insn): New function - emulate a few of the
602 v6 instructions - the ones now generated by GCC.
603 (ARMulEmulate32): Call handle_v6_insn when a possible v6 insn is
605 * armdefs.h (struct ARMul_State): Add new field: is_v6.
606 (ARM_v6_Prop): Define.
607 * arminit.c (ARMul_NewState): Initialise the v6 flag.
608 (ARMul_SelectProcessor): Determine if the v6 flag should be
610 * wrapper.c (sim_create_inferior): For unknown architectures,
611 default to allowing the v6 instructions.
613 2005-04-18 Nick Clifton <nickc@redhat.com>
615 * iwmmxt.c (WMAC, WMADD): Move casts from the LHS of an assignment
617 (WSLL, WSRA, WSRL, WUNPCKEH, WUNPACKEL): Use ULL suffix to
618 indicate an unsigned long long constant.
620 2005-03-23 Mark Kettenis <kettenis@gnu.org>
622 * configure: Regenerate.
624 2005-01-14 Andrew Cagney <cagney@gnu.org>
626 * configure.ac: Sinclude aclocal.m4 before common.m4. Add
627 explicit call to AC_CONFIG_HEADER.
628 * configure: Regenerate.
630 2005-01-12 Andrew Cagney <cagney@gnu.org>
632 * configure.ac: Update to use ../common/common.m4.
633 * configure: Re-generate.
635 2005-01-11 Andrew Cagney <cagney@localhost.localdomain>
637 * configure: Regenerated to track ../common/aclocal.m4 changes.
639 2005-01-07 Andrew Cagney <cagney@gnu.org>
641 * configure.ac: Rename configure.in, require autoconf 2.59.
642 * configure: Re-generate.
644 2004-12-08 Hans-Peter Nilsson <hp@axis.com>
646 * configure: Regenerate for ../common/aclocal.m4 update.
648 2004-06-28 Andrew Cagney <cagney@gnu.org>
650 * armemu.c: Rename ui_loop_hook to deprecated_ui_loop_hook.
652 2003-12-29 Mark Mitchell <mark@codesourcery.com>
654 * armos.c (fcntl.h): Do not include it.
655 (O_RDONLY): Do not define.
656 (O_WRONLY): Likewise.
658 (targ-vals.h): Include it.
659 (translate_open_mode): Use TARGET_O_* instead of O_*.
661 * Makefile.in (armos.o): Depend on targ-vals.h.
663 2003-04-13 Nick Clifton <nickc@redhat.com>
665 * armvirt.c (GetWord): Only call XScale_check_memacc if in XScale
669 2003-03-30 Nick Clifton <nickc@redhat.com>
671 * configure.in (CON_FLAGS): Remove.
672 (COPRO): Unconditionally include iwmmxt.o.
673 * configure: Regenerate.
674 * Makefile.in (CON_FLAGS): Remove.
675 * armcopro.c: Remove use of __IWMMXT__ flag.
676 * wrapper.c: Likewise.
677 * armemu.c: Likewise.
678 Add explanatory comment for suppressed code.
680 2003-03-27 Nick Clifton <nickc@redhat.com>
682 * armos.c (ARMul_OsHandleSWI): Catch SWIs for unhandled vectors.
684 2003-03-27 Nick Clifton <nickc@redhat.com>
686 * configure.in: (CON_FLAGS): Define and intialise.
687 (COPRO): Add iwmmxt.o if configuring for XScale.
688 * configure: Regenerate.
689 * Makefile.in (iwmmxt.o): Add rule to build.
691 (ALL_FLAGS): Add CON_FLAGS.
692 * armcopro.c (ARMul_CoProInit): Initialise iWMMXt coprocessors.
693 * armdefs.h (struct ARMul_State): Add 'is_iWMMXt' field.
694 (ARM_iWMMXt_Prop): Define.
695 * armemu.c (ARMul_Emulate16): Intercept iWMMXt instructions and
697 * arminit.c (ARMul_NewState): Initialise 'is_iWMMXt'.
698 (ARMul_Abort): Catch branches through uninitialised vectors.
699 * armos.c (softevtorcode): Update comment.
700 (ARMul_OsInit): Use ARMUndefinedInstrV.
701 * wrapper.c (sim_create_inferior): Handle iWMMXt processor type.
702 (sim_store_register): Handle iWMMXt registers.
703 (sim_fetch_register): Handle iWMMXt registers.
704 * iwmmxt.h: New file. Exported iWMMXt coprocessor emulator
706 * iwmmxt.c: New file: iWMMXt emulator.
708 2003-03-20 Nick Clifton <nickc@redhat.com>
710 * Contribute support for Cirrus Maverick ARM co-processor,
711 written by Aldy Hernandez <aldyh@redhat.com> and
712 Andrew Cagney <cagney@redhat.com>:
714 * maverick.c: New file: Support for Maverick floating point
716 * Makefile.in: Add maverick.o target.
717 * configure.in (COPRO): Add maverick.o.
718 * configure: Regenerate.
719 * armcopro.c (ARMul_CoProInit): Only initialise co-processors
720 available on target processor. Add code to initialse Maverick
721 co-processor support code.
722 * armdefs.h (ARMul_state): Add is_ep9312 field.
723 (ARM_ep9312_Prop): Define.
724 * armemu.h: Add prototypes for Maverick co-processor
726 * arminit.c (ARMul_SelectProcessor): Initialise the
727 co-processor support once the chip has been selected.
728 * wrapper.c: Add support for Maverick co-processor.
729 (init): Do not call ARMul_CoProInit. Delays this until the
730 chip has been selected.
732 2003-03-02 Nick Clifton <nickc@redhat.com>
734 * armos.c (SWIWrite0): Catch big-endian bug when printing
737 2003-02-27 Andrew Cagney <cagney@redhat.com>
739 * wrapper.c (sim_create_inferior, sim_open): Rename _bfd to bfd.
741 2003-01-10 Ben Elliston <bje@redhat.com>
743 * README.Cygnus: Rename from this ..
744 * README: .. to this.
746 2002-09-27 Andrew Cagney <ac131313@redhat.com>
748 * wrapper.c (sim_open): Add support for -m<mem-size>.
749 (mem_size): Reduce to 2MB.
752 2002-08-15 Nick Clifton <nickc@redhat.com>
754 * armos.c (ARMul_OSHandleSWI): Catch and ignore SWIs of -1, they
755 can be caused by an interrupted system call being resumed by GDB.
757 2002-07-05 Nick Clifton <nickc@cambridge.redhat.com>
759 * armemu.c (ARMul_Emulate32): Add more tests for valid MIA, MIAPH
760 and MIAxy instructions.
762 2002-06-21 Nick Clifton <nickc@cambridge.redhat.com>
764 * armos.h (ADP_Stopped_RunTimeError): Set correct value.
766 2002-06-16 Andrew Cagney <ac131313@redhat.com>
768 * configure: Regenerated to track ../common/aclocal.m4 changes.
770 2002-06-12 Andrew Cagney <ac131313@redhat.com>
772 * Makefile.in: Update copyright.
773 (wrapper.o): Specify dependencies.
774 * wrapper.c: Include "gdb/sim-arm.h".
775 (sim_store_register, sim_fetch_register): Rewrite using `enum
776 arm_sim_regs' and a switch.
778 2002-06-09 Andrew Cagney <cagney@redhat.com>
780 * wrapper.c: Include "gdb/callback.h" and "gdb/remote-sim.h".
781 * armos.c: Include "gdb/callback.h".
783 2002-05-29 Nick Clifton <nickc@cambridge.redhat.com>
785 * armcopro.c (XScale_check_memacc): Set the FSR and FAR registers
786 if a Data Abort is detected.
788 2002-05-27 Nick Clifton <nickc@cambridge.redhat.com>
790 * armvirt.c (GetWord): Only perform access checks if 'check'
793 * wrapper.c (sim_create_inferior): Report unknown machine
795 * thumbemu.c (ARMul_ThumbDecode, Case 31): Do not set LR to pc +
796 2, it has already been advanced.
798 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
800 * thumbemu.c (ARMul_ThumbDecode): When decoding a BLX(1)
801 instruction do not add in the second bit of the base address -
802 this has already been accounted for.
804 2002-05-21 Nick Clifton <nickc@cambridge.redhat.com>
806 * armcopro.c (check_cp13_access): Allow access to register 1 when
808 (write_cp13_reg): Allow bit 0 of reg 1 of CRm 1 to be written to.
810 2002-05-17 Nick Clifton <nickc@cambridge.redhat.com>
812 * Makefile.in (SIM_TARGET_SWITCHES): Define.
813 * armos.c (swi_mask): Define. Initialise to supporting all
815 (ARMul_OSInit): For XScale targets, only support the ANGEL
816 SWI interface. (This is at the request if Intel).
817 (ARMul_OSHandleSWI): Examine swi_mask to see if a particular
818 SWI call should be emulated.
819 Do not fall through from AngelSWI_Reason_WriteC.
820 Propagate exit code from RedBoot Exit SWI.
821 * rdi-dgb.h (swi_mask): Prototype.
822 (SWI_MASK_DEMON, SWI_MASK_ANGEL, SWI_MASK_REDBOOT): Define.
823 * wrapper.c (sim_target_parse_command_line): New function.
824 Look for and handle --swi-support switch.
825 (sim_target_parse_arg_array): New function. Process an argv
826 array for parsing by sim_target_parse_command_line.
827 (sim_target_display_usage): New function. Describe syntax of
828 --swi-suppoort switch.
829 (sim_open): Add call to sim_target_parse_arg_array).
831 2002-05-09 Nick Clifton <nickc@cambridge.redhat.com>
833 * armos.c (ARMul_OSHandleSWI): Support the RedBoot SWI in ARM
834 mode and some of its system calls.
836 2002-03-17 Anthony Green <green@redhat.com>
838 * wrapper.c (mem_size): Increase the default target memory to 8MB.
840 2002-02-21 Keith Seitz <keiths@redhat.com>
842 * armos.c (SWIWrite0): Use generic host_callback mechanism
843 for supported OS functions "open", "close", "write", etc.
846 (SWIwrite): Likewise.
848 (ARMul_OSHandleSWI): Likewise.
850 2002-02-05 Nick Clifton <nickc@cambridge.redhat.com>
852 * wrapper.c (sim_create_inferior): Modify previous patch so that
853 it is only triggered for COFF format executables.
855 2002-02-04 Nick Clifton <nickc@cambridge.redhat.com>
857 * wrapper.c (sin_create_inferior): If a v5 architecture is
858 detected, assume it might be an XScale binary, since there is no
859 way to distinguish between the two in the COFF file format.
861 2002-01-10 Nick Clifton <nickc@cambridge.redhat.com>
863 * arminit.c (ARMul_Abort): Fix parameters passed to CPRead[13].
864 * armemu.c (ARMul_Emulate32): Fix parameters passed to CPRead[13]
866 Fix formatting. Improve layout.
867 * armemu.h: Fix formatting. Improve layout.
869 2002-01-09 Nick Clifton <nickc@cambridge.redhat.com>
871 * wrapper.c (sim_fetch_register): If fetching more than 4 bytes
872 return zeroes in the other words.
873 General formatting tidy ups.
875 2001-11-16 Ben Harris <bjh21@netbsd.org>
877 * Makefile.in (armemu32.o): Replace $< with autoconf recommended
881 2001-10-18 Nick Clifton <nickc@cambridge.redhat.com>
883 * armemu.h (CP_ACCESS_ALLOWED): New macro.
885 * armcopro.c (read_cp14_reg): Make static.
886 (write_cp14_reg): Make static.
887 (check_cp13_access): Use CP_ACCESS_ALLOWED macro.
889 * armsupp.c (ARMul_LDC): Check CP_ACCESS_ALLOWED.
890 (ARMul_STC): Check CP_ACCESS_ALLOWED.
891 (ARMul_MCR): Check CP_ACCESS_ALLOWED.
892 (ARMul_MRC): Check CP_ACCESS_ALLOWED.
893 (ARMul_CDP): Check CP_ACCESS_ALLOWED.
895 * armemu.c (MCRR): Check CP_ACCESS_ALLOWED. Test Rd and Rn not
897 (MRRC): Check CP_ACCESS_ALLOWED. Test Rd and Rn not equal to 15.
900 2001-05-11 Nick Clifton <nickc@cambridge.redhat.com>
902 * armemu.c (ARMul_Emulate32): Fix handling of XScale LDRD and STRD
903 instructions with post indexed addressing modes.
905 2001-05-08 Jens-Christian Lache <lache@tu-harburg.de>
907 * armsupp.c (ARMul_FixCPSR): Check Mode not Bank in order to
908 determine rocesor mode.
910 2001-04-18 matthew green <mrg@redhat.com>
912 * armcopro.c (write_cp15_reg): Set CHANGEMODE if endianness changes.
913 (read_cp15_reg): Make non-static.
914 (XScale_cp15_LDC): Update for write_cp15_reg() change.
915 (XScale_cp15_MCR): Likewise.
916 (XScale_cp15_write_reg): Likewise.
917 (XScale_check_memacc): New function. Check for breakpoints being
918 activated by memory accesses. Does not support the Branch Target
920 (XScale_set_fsr_far): New function. Set FSR and FAR for XScale.
921 (XScale_debug_moe): New function. Set the debug Method Of Entry,
923 (write_cp14_reg): Reset count counter if requested.
924 * armdefs.h (struct ARMul_State): New members `LastTime' and
925 `CP14R0_CCD' used for the timer/counters.
926 (ARMul_CP13_R0_FIQ, ARMul_CP13_R0_IRQ, ARMul_CP13_R8_PMUS,
927 ARMul_CP14_R0_ENABLE, ARMul_CP14_R0_CLKRST, ARMul_CP14_R0_CCD,
928 ARMul_CP14_R0_INTEN0, ARMul_CP14_R0_INTEN1, ARMul_CP14_R0_INTEN2,
929 ARMul_CP14_R0_FLAG0, ARMul_CP14_R0_FLAG1, ARMul_CP14_R0_FLAG2,
930 ARMul_CP14_R10_MOE_IB, ARMul_CP14_R10_MOE_DB, ARMul_CP14_R10_MOE_BT,
931 ARMul_CP15_R1_ENDIAN, ARMul_CP15_R1_ALIGN, ARMul_CP15_R5_X,
932 ARMul_CP15_R5_ST_ALIGN, ARMul_CP15_R5_IMPRE, ARMul_CP15_R5_MMU_EXCPT,
933 ARMul_CP15_DBCON_M, ARMul_CP15_DBCON_E1, ARMul_CP15_DBCON_E0): New
934 defines for XScale registers.
935 (XScale_check_memacc, XScale_set_fsr_far, XScale_debug_moe): Prototype.
936 (ARMul_Emulate32, ARMul_Emulate26): Clean up function definition.
937 (ARMul_Emulate32): Handle the clock counter and hardware instruction
938 breakpoints. Call XScale_set_fsr_far() for software breakpoints and
940 (LoadMult): Call XScale_set_fsr_far() for data aborts.
941 (LoadSMult): Likewise.
942 (StoreMult): Likewise.
943 (StoreSMult): Likewise.
944 * armemu.h (write_cp15_reg): Update prototype.
945 * arminit.c (ARMul_NewState): Initialise CP14R0_CCD and LastTime.
946 (ARMul_Abort): If XScale, check for FIQ and IRQ being enabled in CP13
948 * armvirt.c (GetWord): Call XScale_check_memacc().
951 2001-03-20 Nick Clifton <nickc@redhat.com>
953 * armvirt.c (ARMul_ReLoadInstr): Do not enable alignment checking
954 when loading unaligned thumb instructions.
956 2001-03-06 Nick Clifton <nickc@redhat.com>
958 * thumbemu.c (ARMul_ThumbDecode): Delete label bo_blx2.
959 Compute destination address of BLX(1) instruction by
960 taking bit 1 from PC and not from bit 0 of the offset.
962 2001-02-27 Nick Clifton <nickc@redhat.com>
964 * armvirt.c (GetWord): Add new parameter - check - to enable or
965 disable the alignment checking.
966 (PutWord): Add new parameter - check - to enable or disable the
968 (ARMul_ReLoadInstr): Pass extra parameter to GetWord.
969 (ARMul_ReadWord): Pass extra parameter to GetWord.
970 (ARMul_WriteWord): Pass extra parameter to PutWord.
971 (ARMul_StoreHalfWord): Pass extra parameter to PutWord.
972 (ARMul_WriteByte): Pass extra parameter to GetWord.
973 (ARMul_SwapWord): Pass extra parameter to PutWord.
974 (ARMul_SafeReadByte): New Function: Read a byte but do not abort.
975 (ARMul_SafeWriteByte): New Function: Write a byte but do not abort.
977 * armdefs.h: Add prototypes for ARMul_SafeReadByte and
980 * wrapper.c (sim_write): Use ARMul_SafeWriteByte.
981 (sim_read): Use ARMul_SafeReadByte.
983 * armos.c (in_SWI_handler): Remove.
984 (SWIWrite0): Use ARMul_SafeReadByte.
985 (WriteCommandLineTo): Use ARMul_SafeWriteByte.
986 (SWIopen): Use ARMul_SafeReadByte.
987 (SWIread): Use ARMul_SafeWriteByte.
988 (SWIwrite): Use ARMul_SafeReadByte.
989 (ARMul_OSHandleSWI): Remove use of is_SWI_handler.
990 (ARMul_OSException): Remove use of is_SWI_handler.
992 2001-02-16 Nick Clifton <nickc@redhat.com>
994 * armemu.c: Remove Prefetch abort for breakpoints. Instead set
997 2001-02-14 Nick Clifton <nickc@redhat.com>
999 * armemu.c: Add code to preserve processor mode when a prefetch
1000 abort is signalled after processing a breakpoint.
1002 * wrapper.c (sim_create_inferior): Reset processor into ARM mode
1003 for any machine type except the early ARMs.
1005 2001-02-13 Nick Clifton <nickc@redhat.com>
1007 * armos.c (in_SWI_handler): New static variable.
1008 (ARMul_OSHandleSWI): Set in_SWI_handler whilst emulating a SWI.
1009 (ARMul_OSException): Ignore exceptions generated whilst emulating
1012 2001-02-12 Nick Clifton <nickc@redhat.com>
1014 * armemu.h (NEGBRANCH): Fix defintion.
1016 2001-02-01 Nick Clifton <nickc@redhat.com>
1018 * armemu.c (LoadSMult): Update base address register after
1019 restoring register bank.
1020 (StoreMult): Update base address register after restoring register
1023 2001-01-31 Nick Clifton <nickc@redhat.com>
1025 * armvirt.c (PutWord): Detect installation of SWI vector.
1026 (SWI_vector_installed): Define.
1027 * armos.c (ARMul_OsInit): Reset SWI_vector_installed.
1028 * armos.h (SWI_vector_installed): Declare.
1029 * wrapper.c (SWI_vector_installed): Remove definition.
1030 (sim_write): Remove check of SWI vector installation
1032 2000-12-18 Nick Clifton <nickc@redhat.com>
1034 * armemu.c (ARMul_Emulate26): Fix test for StoreDouble
1037 2000-12-10 Nick Clifton <nickc@redhat.com>
1039 * armos.c (ARMul_OSHandleSWI): Add 0x91 as an FPE SWI.
1041 2000-12-07 Nick Clifton <nickc@redhat.com>
1043 * armemu.c (ARMul_Emulate26): Detect double word load and
1044 store instructions and call emulation routines.
1045 (Handle_Load_Double): Emulate a double word load instruction.
1046 (Handle_Store_Double): Emulate a double word store
1049 2000-12-03 Nick Clifton <nickc@redhat.com>
1051 * armos.c: Fix formatting.
1052 (ARMul_OSHandleSWI): Suppress support of DEMON SWIs when in xscale
1055 2000-11-29 Nick Clifton <nickc@redhat.com>
1057 * armdefs.h (State): Add 'v5e' and 'xscale' fields.
1058 (ARM_v5e_Prop): Define.
1059 (ARM_XScale_Prop): Define.
1061 * wrapper.c (sim_create_inferior): Select processor based on
1063 (SWI_vector_installed): New boolean. Set to true if the SWI
1064 vector address is written to by the executable.
1066 * arminit.c (ARMul_NewState): Switch default to 32 bit mode.
1067 (ARMul_SelectProcessor): Initialise v5e and xscale signals.
1068 (ARMul_Abort): Fix calculation of LR address.
1070 * armos.c (ARMul_OSHandleSWI): If a SWI vector has been installed
1071 and a SWI is not handled by the simulator, pass the SWI off to the
1072 vector, otherwise issue a warning message and continue.
1074 * armsupp.c (ARMul_CPSRAltered): Set S bit aswell.
1076 * thumbemu.c: Add v5 instruction simulation.
1077 * armemu.c: Add v5, XScale and El Segundo instruction simulation.
1079 * armcopro.c: Add XScale co-processor emulation.
1080 * armemu.h: Add exported XScale co-processor functions.
1082 2000-09-15 Nick Clifton <nickc@redhat.com>
1084 * armdefs.h: Rename StrongARM property to v4_ARM and add v5 ARM
1085 property. Delete unnecessary processor names.
1086 (ARM_Strong_Prop): Delete.
1087 (STRONGARM): Delete.
1090 (State): Delete is_StrongARM boolean. Add is_v4 and is_v5
1093 * armemu.h (BUSUSEDINCPCS): Use is_v4 boolean.
1094 (BUSUSEDINCPCN): Use is_v4 boolean.
1096 * arminit.c (ARMul_NewState): Initialise is_v4 and is_v5 fields.
1097 (ARMul_SelectProcessor): Change second parameter from 'processor'
1098 to 'properties'. Set is_v4 and is_v5 booleans in State.
1100 * armrdi.c: Remove use of ARM processor names. Replace with ARM
1101 processor properties.
1103 * wrapper.c (sim_create_inferior): Choose properties passed to
1104 ARMul_SelectProcessor based on machine number.
1106 2000-08-14 Nick Clifton <nickc@redhat.com>
1108 * armemu.c (LHPOSTDOWN): Compute write back value before
1109 performing load in case the offset register is overwritten.
1112 2000-07-14 Fernando Nasser <fnasser@cygnus.com>
1114 * wrapper.c (sim_create_inferior): Fix typo in the previous patch.
1116 2000-07-14 Fernando Nasser <fnasser@cygnus.com>
1118 * wrapper.c (sim_create_inferior): Reset mode to ARM when creating a
1121 2000-07-04 Alexandre Oliva <aoliva@redhat.com>
1123 * armvirt.c (ABORTS): Do not define.
1125 * armdefs.h (struct ARMul_State): Add is_StrongARM.
1126 (ARM_Strong_Prop, STRONGARM): Define.
1127 * arminit.c (ARMul_NewState): Reset is_StrongARM.
1128 (ARMul_SelectProcessor): Set is_StrongARM.
1129 * wrapper.c (sim_create_inferior): Use bfd machine type to
1130 determine processor type to emulate.
1131 * armemu.h (BUSUSEDINCPCS, BUSUSEDINCPCN): Don't increment PC
1132 when emulating StrongARM.
1134 * armemu.c (ARMul_Emulate, t_undefined): Proceed to next insn.
1136 * armemu.h (INSN_SIZE): New macro.
1137 (SET_ABORT): Save CPSR in SPSR and set LR.
1138 * armemu.c (ARMul_Emulate, isize): Set to INSN_SIZE.
1139 (WriteR15, WriteSR15): Do not discard bit 1 in Thumb mode.
1140 * arminit.c (ARMul_Abort): Use new SETABORT and INSN_SIZE.
1142 * armemu.c (LoadSMult): Use WriteR15() to discard the least
1143 significant bits of PC.
1145 * armemu.h (WRITEDESTB): New macro.
1146 * armemu.c (ARMul_Emulate26, bl): Use WriteR15Branch() to
1147 modify PC. Moved the existing logic...
1148 (WriteR15Branch): ... here. New function.
1149 (WriteR15, WriteSR15): Drop the two least significant bits.
1150 (LoadSMult): Use WriteR15Branch() to modify PC.
1151 (LoadMult): Use WRITEDESTB() instead of WRITEDEST().
1153 * armemu.h (GETSPSR): Call ARMul_GetSPSR().
1154 * armsupp.c (ARMul_CPSRAltered): Zero out bits as they're
1155 extracted from state->Cpsr, but preserve the unused bits.
1156 (ARMul_GetCPSR): Get bits preserved in state->Cpsr.
1157 (ARMul_GetSPSR, ARMul_FixCPSR): Use ARMul_GetCPSR() to
1158 get the full CPSR word.
1160 * armemu.h (PSR_FBITS, PSR_SBITS, PSR_XBITS, PSR_CBITS): New.
1161 (SETPSR_F, SETPSR_S, SETPSR_X, SETPSR_C): New macros.
1162 (SETPSR, SET_INTMODE, SETCC): Removed.
1163 * armsupp.c (ARMul_FixCPSR, ARMul_FixSPSR): Do not test bit
1164 mask. Use SETPSR_* to modify PSR.
1165 (ARMul_SetCPSR): Load all bits from value.
1166 * armemu.c (ARMul_Emulate, msr): Do not test bit mask.
1168 * armemu.c (ARMul_Emulate): Compute writeback value before
1169 loading, since the offset register may be the destination
1172 * armdefs.h (SYSTEMBANK): Define as USERBANK.
1173 * armsupp.c (ARMul_SwitchMode): Remove SYSTEMBANK cases.
1175 2000-06-22 Alexandre Oliva <aoliva@cygnus.com>
1177 * armemu.c (Multiply64): Fix computation of flag N.
1179 * armemu.c (MultiplyAdd64): Fix computation of flag N.
1181 2000-06-20 Alexandre Oliva <aoliva@cygnus.com>
1183 * armemu.h (NEGBRANCH): Do not overwrite the two most significant
1186 2000-05-25 Nick Clifton <nickc@cygnus.com>
1188 * armcopro.c (MMUMCR): Only indicate mode change if a singal has
1190 (MMUWrite): Only indicate mode change if a singal has really
1193 * armdefs.h (SYSTEMMODE): Define.
1194 (BANK_CAN_ACEESS_SPSR): Define.
1196 * armemu.c (ARM_Emulate26): If the mode has changed allow the PC
1197 to advance before stopping the emulation.
1199 * arminit.c (ARMul_Reset): Ensure Mode field of State is set
1202 * armos.c (ARMul_OSInit): Create a initial stack pointer for
1205 * armsupp.c (ModeToBank): Remove unused first parameter.
1206 Add support for System Mode.
1207 (ARMul_GetSPSR): Use BANK_CAN_ACCESS_SPSR macro.
1208 (ARMul_SetSPSR): Use BANK_CAN_ACCESS_SPSR macro.
1209 (ARMul_FixSPSR): Use BANK_CAN_ACCESS_SPSR macro.
1210 (ARMulSwitchMode): Add support for System Mode.
1212 Wed May 24 14:40:34 2000 Andrew Cagney <cagney@b1.cygnus.com>
1214 * configure: Regenerated to track ../common/aclocal.m4 changes.
1216 2000-05-23 Nick Clifton <nickc@cygnus.com>
1218 * wrapper.c (sim_store_register): Special handling for CPSR
1221 2000-03-11 Philip Blundell <philb@gnu.org>
1223 * armemu.c (LoadSMult, LoadMult): Correct handling of aborts.
1224 Patch from Allan Skillman <Allan.Skillman@arm.com>.
1226 Wed Mar 22 15:24:21 2000 glen mccready <gkm@pobox.com>
1228 * wrapper.c (sim_open,sim_close): Copy into myname, free myname.
1230 2000-02-08 Nick Clifton <nickc@cygnus.com>
1232 * wrapper.c: Fix compile time warning messages.
1233 * armcopro.c: Fix compile time warning messages.
1234 * armdefs.h: Fix compile time warning messages.
1235 * armemu.c: Fix compile time warning messages.
1236 * armemu.h: Fix compile time warning messages.
1237 * armos.c: Fix compile time warning messages.
1238 * armsupp.c: Fix compile time warning messages.
1239 * armvirt.c: Fix compile time warning messages.
1240 * bag.c: Fix compile time warning messages.
1242 2000-02-02 Bernd Schmidt <bernds@cygnus.co.uk>
1244 * *.[ch]: Use indent to make readable.
1246 1999-11-22 Nick Clifton <nickc@cygnus.com>
1248 * armos.c (SWIread): Generate an error message if a huge read is
1250 (SWIwrite): Generate an error message if a huge write is
1253 1999-10-27 Nick Clifton <nickc@cygnus.com>
1255 * thumbemu.c (ARMul_ThumbDecode): Accept 0xbebe as a thumb
1258 1999-10-08 Ulrich Drepper <drepper@cygnus.com>
1260 * armos.c (SWIopen): Always pass third parameter with 0666 since
1261 otherwise uninitialized memory gets access if the O_CREAT bit is
1262 set and so we possibly cannot access the file afterwards.
1264 1999-09-29 Doug Evans <devans@casey.cygnus.com>
1266 * armos.c (SWIWrite0): Send output to stdout instead of stderr.
1267 (ARMul_OSHandleSWI, case SWI_WriteC,AngelSWI_Reason_WriteC): Ditto.
1269 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
1271 * configure: Regenerated to track ../common/aclocal.m4 changes.
1273 1999-05-08 Felix Lee <flee@cygnus.com>
1275 * configure: Regenerated to track ../common/aclocal.m4 changes.
1277 1999-04-06 Keith Seitz <keiths@cygnus.com>
1279 * wrapper.c (stop_simulator): New global.
1280 (sim_stop): Set sim state to STOP and set
1282 (sim_resume): Reset stop_simulator.
1283 (sim_stop_reason): If stop_simulator is set, tell gdb
1284 that the we took SIGINT.
1285 * armemu.c (ARMul_Emulate26): Don't loop forever. Stop if
1286 stop_simulator is set.
1288 1999-04-02 Keith Seitz <keiths@cygnus.com>
1290 * armemu.c (ARMul_Emulate26): If NEED_UI_LOOP_HOOK, call ui_loop_hook
1291 whenever the counter expires.
1292 * Makefile.in (SIM_EXTRA_CFLAGS): Include define NEED_UI_LOOP_HOOK.
1294 1999-03-24 Nick Clifton <nickc@cygnus.com>
1296 * armemu.c (ARMul_Emulate26): Handle new breakpoint value.
1297 * thumbemu.c (ARMul_ThumbDecode): Handle new breakpoint value.
1299 Mon Sep 14 09:00:05 1998 Nick Clifton <nickc@cygnus.com>
1301 * wrapper.c (sim_open): Set endianness according to BFD or command
1304 * tconfig.in: Define SIM_HAVE_BIENDIAN.
1306 Thu Aug 27 11:00:05 1998 Nick Clifton <nickc@cygnus.com>
1308 * armemu.c (Multiply64): Test for Rm (rather than Rs) not being
1309 the same as either RdHi or RdLo.
1311 Thu Jul 2 10:24:35 1998 Nick Clifton <nickc@cygnus.com>
1313 * armos.c (ARMul_OSHandleSWI: AngelSWI_Reason_ReportException):
1314 Set Reg[0] based on reason for for the exception.
1316 Thu Jun 4 15:22:03 1998 Jason Molenda (crash@bugshack.cygnus.com)
1318 * armos.c (SWIwrite0): New function.
1319 (WriteCommandLineTo): New function.
1320 (SWIopen): New function.
1321 (SWIread): New function.
1322 (SWIwrite): New function.
1323 (SWIflen): New function.
1324 (ARMul_OSHandleSWI): Call new functions instead of handling
1326 (ARMul_OSHandleSWI): Handle Angel SWIs correctly.
1327 (*): Reformat spacing to be a bit more GNUly.
1328 Most code taken from a patch by Anthony Thompson
1329 (athompso@cambridge.arm.com)
1331 Tue Jun 2 15:22:22 1998 Nick Clifton <nickc@cygnus.com>
1333 * armos.h: Add Angel SWI and its reason codes.
1334 * armos.c (ARMul_OSHandleSWI): Ignore Angel SWIs (for now).
1336 Mon Jun 1 17:14:19 1998 Anthony Thompson (athompso@cambridge.arm.com)
1338 * armos.c (ARMul_OSHandleSWI::SWI_Open): Handle special case
1339 of ":tt" to catch stdin in addition to stdout.
1340 (ARMul_OSHandleSWI::SWI_Seek): Return 0 or 1 to indicate failure
1341 or success of lseek().
1343 Wed May 20 17:36:25 1998 Nick Clifton <nickc@cygnus.com>
1345 * armos.c (ARMul_OSHandleSWI): Special case code to catch attempts
1348 Wed Apr 29 15:29:55 1998 Jeff Johnston <jjohnstn@cygnus.com>
1350 * armos.c (ARMul_OSHandleSWI): Added code for SWI_Clock,
1351 SWI_Flen, and SWI_Time. Also fixed SWI_Seek code to only
1352 seek from offset 0 and not to use R2 for whence since it is
1353 not passed as part of the SWI call.
1355 Tue Apr 28 18:33:31 1998 Geoffrey Noer <noer@cygnus.com>
1357 * configure: Regenerated to track ../common/aclocal.m4 changes.
1359 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
1361 * configure: Regenerated to track ../common/aclocal.m4 changes.
1364 Sun Apr 26 15:20:26 1998 Tom Tromey <tromey@cygnus.com>
1366 * acconfig.h: New file.
1367 * configure.in: Reverted change of Apr 24; use sinclude again.
1369 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
1371 * configure: Regenerated to track ../common/aclocal.m4 changes.
1374 Fri Apr 24 11:20:19 1998 Tom Tromey <tromey@cygnus.com>
1376 * configure.in: Don't call sinclude.
1378 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
1380 * configure: Regenerated to track ../common/aclocal.m4 changes.
1382 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
1384 * configure: Regenerated to track ../common/aclocal.m4 changes.
1386 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
1388 * configure: Regenerated to track ../common/aclocal.m4 changes.
1390 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
1392 * configure: Regenerated to track ../common/aclocal.m4 changes.
1394 Tue Mar 10 09:26:38 1998 Nick Clifton <nickc@cygnus.com>
1396 * armopts.h: Remove definition of LITTLEND - it is not used.
1398 Tue Feb 17 12:35:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
1400 * wrapper.c (sim_store_register, sim_fetch_register): Pass in
1401 length parameter. Return -1.
1403 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
1405 * configure: Regenerated to track ../common/aclocal.m4 changes.
1407 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
1409 * configure: Regenerated to track ../common/aclocal.m4 changes.
1411 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
1413 * configure: Regenerated to track ../common/aclocal.m4 changes.
1415 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
1417 * configure: Regenerated to track ../common/aclocal.m4 changes.
1420 Tue Dec 9 11:30:48 1997 Nick Clifton <nickc@cygnus.com>
1422 * Makefile.in: Updated with changes from branch.
1424 * armemu.c: ditto these changes
1425 * armemu.h: ditto add support for
1426 * armos.c: ditto the Thumb instruction
1427 * armsupp.c: ditto set and the new v4
1428 * armvirt.c: ditto architecture.
1430 * thumbemu.c: New file from branch.
1433 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
1435 * configure: Regenerated to track ../common/aclocal.m4 changes.
1437 Thu Oct 30 13:54:06 1997 Nick Clifton <nickc@cygnus.com>
1439 * armos.c (ARMul_OSHandleSWI): Add support for GetEnv SWI. Patch
1440 from Tony Thompson at ARM: athompso@arm.com
1442 * wrapper.c (sim_create_inferior): Add code to create an execution
1443 environment. Patch from Tony Thompson at ARM: athompso@arm.com
1445 Wed Oct 22 14:43:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1447 * wrapper.c (sim_load): Pass lma_p and sim_write args to
1450 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
1452 * configure: Regenerated to track ../common/aclocal.m4 changes.
1454 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
1456 * configure: Regenerated to track ../common/aclocal.m4 changes.
1458 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
1460 * configure: Regenerated to track ../common/aclocal.m4 changes.
1462 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
1464 * configure: Regenerated to track ../common/aclocal.m4 changes.
1466 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1468 * configure: Regenerated to track ../common/aclocal.m4 changes.
1470 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
1472 * configure: Regenerated to track ../common/aclocal.m4 changes.
1474 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
1476 * configure: Regenerated to track ../common/aclocal.m4 changes.
1478 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1480 * configure: Regenerated to track ../common/aclocal.m4 changes.
1483 Tue Aug 26 10:37:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
1485 * wrapper.c (sim_kill): Delete.
1486 (sim_create_inferior): Add ABFD argument.
1487 (sim_load): Move setting of PC from here.
1488 (sim_create_inferior): To here.
1490 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
1492 * configure: Regenerated to track ../common/aclocal.m4 changes.
1495 Mon Aug 25 15:35:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
1497 * wrapper.c (sim_open): Add ABFD argument.
1499 Tue May 20 10:13:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
1501 * wrapper.c (sim_open): Add callback argument.
1502 (sim_set_callbacks): Drop SIM_DESC argument.
1504 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
1506 * configure: Regenerated to track ../common/aclocal.m4 changes.
1508 Fri Apr 18 13:32:23 1997 Andrew Cagney <cagney@b1.cygnus.com>
1510 * wrapper.c (sim_stop): Stub sim_stop function.
1512 Thu Apr 17 18:33:01 1997 Fred Fish <fnf@cygnus.com>
1514 * arminit.c (ARMul_NewState): Preinitialize the state to
1517 Thu Apr 17 02:39:02 1997 Doug Evans <dje@canuck.cygnus.com>
1519 * Makefile.in (SIM_OBJS): Add sim-load.o.
1520 * wrapper.c (sim_kind,myname): New static locals.
1521 (sim_open): Set sim_kind, myname.
1522 (sim_load): Call sim_load_file to do work. Set start address from bfd.
1523 (sim_create_inferior): Return SIM_RC. Delete start_address arg.
1525 Thu Apr 17 11:48:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
1527 * wrapper.c (sim_trace): Update so that it matches prototype.
1529 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1531 * configure: Regenerated to track ../common/aclocal.m4 changes.
1534 Mon Apr 7 12:01:17 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1536 * Makefile.in (armemu32.o): Replace $< with autoconf recommended
1538 (armemu26.o): Ditto.
1540 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
1542 * wrapper.c (sim_open): New arg `kind'.
1544 * configure: Regenerated to track ../common/aclocal.m4 changes.
1546 Wed Apr 2 14:50:44 1997 Ian Lance Taylor <ian@cygnus.com>
1548 * COPYING: Update FSF address.
1550 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1552 * configure: Regenerated to track ../common/aclocal.m4 changes.
1554 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1556 * configure: Regenerated to track ../common/aclocal.m4 changes.
1558 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
1560 * configure: Re-generate.
1562 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
1564 * configure: Regenerate to track ../common/aclocal.m4 changes.
1566 Thu Mar 13 12:38:56 1997 Doug Evans <dje@canuck.cygnus.com>
1568 * wrapper.c (sim_open): Has result now.
1569 (sim_*): New SIM_DESC argument.
1571 Tue Feb 4 13:22:21 1997 Doug Evans <dje@canuck.cygnus.com>
1573 * Makefile.in (@COMMON_MAKEFILE_FRAG@): Use
1574 COMMON_{PRE,POST}_CONFIG_FRAG instead.
1575 * configure.in: sinclude ../common/aclocal.m4.
1576 * configure: Regenerated.
1578 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
1580 * configure configure.in Makefile.in: Update to new configure
1581 scheme which is more compatible with WinGDB builds.
1582 * configure.in: Improve comment on how to run autoconf.
1583 * configure: Re-run autoconf to get new ../common/aclocal.m4.
1584 * Makefile.in: Use autoconf substitution to install common
1587 Wed Nov 20 01:05:10 1996 Doug Evans <dje@canuck.cygnus.com>
1589 * run.c: Deleted, use one in ../common now.
1590 * Makefile.in: Delete everything that's been moved to
1591 ../common/Make-common.in.
1593 * configure.in: Simplify using macros in ../common/aclocal.m4.
1594 * configure: Regenerated.
1595 * config.in: New file.
1596 * armos.c: #include config.h.
1597 * wrapper.c (mem_size): Value is in bytes now.
1598 (sim_callback): New global.
1599 (arm_sim_set_profile{,_size}): Delete.
1600 (arm_sim_set_mem_size): Rename to sim_size.
1601 (sim_do_command): Call printf_filtered via callback.
1602 (sim_set_callbacks): Record callback.
1604 Thu Oct 3 16:10:27 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
1606 * Makefile.in (mostlyclean): Remove config.log.
1608 Wed Jun 26 12:17:24 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
1610 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
1611 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
1613 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
1614 (AC_PROG_INSTALL): Added.
1615 * configure: Rebuilt.
1617 Wed Feb 21 12:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
1619 * configure: Regenerate with autoconf 2.7.
1621 Fri Dec 15 16:27:30 1995 Ian Lance Taylor <ian@cygnus.com>
1623 * run.c (main): Use new bfd_big_endian macro.
1625 Mon Nov 20 17:40:38 1995 Doug Evans <dje@canuck.cygnus.com>
1627 * run.c: Include "getopt.h".
1629 (usage): Make static.
1630 (main): Call arm_sim_set_verbosity.
1631 Only load sections marked SEC_LOAD.
1632 * wrapper.c (mem_size, verbosity): New static global.
1633 (arm_sim_set_mem_size): Renamed from sim_size. Callers updated.
1634 (arm_sim_set_profile{,_size}): Renamed from sim_foo. Callers updated.
1636 Fri Nov 17 19:35:11 1995 Doug Evans <dje@canuck.cygnus.com>
1638 * armdefs.h (ARMul_State): New member `verbose'.
1639 * armrdi.c (ARMul_ConsolePrint): Add missing va_end.
1640 * run.c (verbose): Make global.
1641 * wrapper.c (init): Set state->verbose.
1642 (ARMul_ConsolePrint): Don't print anything if !verbose.
1644 Fri Oct 13 15:30:30 1995 Doug Evans <dje@canuck.cygnus.com>
1646 * armos.c: #include dbg_rdi.h.
1647 (ARMul_OSHandleSWI): Handle SWI_Breakpoint.
1648 * armos.h (SWI_Breakpoint): Define.
1649 * wrapper.c: #include armemu.h, dbg_rdi.h.
1651 (sim_resume): Use state->EndCondition to record stop state.
1652 Call FLUSHPIPE before returning.
1653 (sim_stop_reason): Determine reason from state->EndCondition.
1655 Fri Oct 13 15:04:05 1995 steve chamberlain <sac@slash.cygnus.com>
1657 * wrapper.c (sim_set_callbacks): New.
1659 Thu Sep 28 19:45:56 1995 Doug Evans <dje@deneb.cygnus.com>
1661 * armos.c (ARMul_OSHandleSWI): Result of read/write calls is
1662 number of bytes not read/written (or -1).
1664 Wed Sep 20 13:35:54 1995 Ian Lance Taylor <ian@cygnus.com>
1666 * Makefile.in (maintainer-clean): New synonym for realclean.
1668 Fri Sep 8 14:27:20 1995 Ian Lance Taylor <ian@cygnus.com>
1670 * configure.in: Remove AC_PROG_INSTALL.
1671 * configure: Rebuild.
1672 * Makefile.in (INSTALL): Revert to using install.sh.
1673 (INSTALL_PROGRAM, INSTALL_DATA): Set to $(INSTALL).
1674 (INSTALL_XFORM, INSTALL_XFORM1): Restore.
1675 (mostlyclean): Make the same as clean, not distclean.
1676 (clean): Remove config.log.
1677 (install): Don't install in $(tooldir).
1679 Thu Sep 7 12:00:17 1995 Doug Evans <dje@canuck.cygnus.com>
1681 (Try to) Update to new bfd autoconf scheme.
1682 * run.c: Don't include sysdep.h.
1683 * Makefile.in (INSTALL{,_PROGRAM,_DATA}): Use autoconf computed value.
1684 (CC, CFLAGS, AR, RANLIB): Likewise.
1685 (HDEFINES, TDEFINES): Define.
1686 (CC_FOR_BUILD): Delete.
1687 (host_makefile_frag): Delete.
1688 (Makefile): Don't depend on frags.
1689 * configure.in (sysdep.h): Don't create symlink.
1690 (host_makefile_frag, frags): Deleted.
1691 (CC, CFLAGS, AR, RANLIB, INSTALL): Compute values.
1692 * configure: Regenerated.
1694 Thu Aug 3 10:45:37 1995 Fred Fish <fnf@cygnus.com>
1696 * Update all FSF addresses except those in COPYING* files.
1698 Wed Jul 5 16:15:54 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1700 * Makefile.in (clean): Remove run, libsim.a.
1702 * Makefile.in, configure.in: converted to autoconf.
1703 * configure: New file, generated with autconf 2.4.
1707 Fri Jun 30 16:49:47 1995 Stan Shebs <shebs@andros.cygnus.com>
1709 * wrapper.c (sim_do_command): New function.
1711 Tue Jun 13 10:57:32 1995 Steve Chamberlain <sac@slash.cygnus.com>
1713 * armos.c (ARMul_OSHandleSWI): New version to work with
1716 Thu Jun 8 14:37:14 1995 Steve Chamberlain <sac@slash.cygnus.com>
1718 * run.c (main): Grab return value from right register.
1720 Wed May 24 14:37:31 1995 Steve Chamberlain <sac@slash.cygnus.com>