Finish implementation of sim-memopt.
[deliverable/binutils-gdb.git] / sim / tic80 / ChangeLog
1 Thu Sep 4 17:45:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * sim-calls.c (sim_open): Add memory before parsing arguments.
4 (sim_read): Delete, replace with sim-hrw.
5 (sim_write): Delete, replace with sim-hrw.
6
7 Thu Sep 4 10:48:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
8
9 * sim-calls.c (sim_open): Use sim_do_command to add memory, only
10 add memory if none already present.
11 (sim_open): Move init of registers from here.
12 (sim_create_inferior): To here. Init modules.
13
14 * Makefile.in (SIM_OBJS): Add sim-memopt.o module.
15
16 * sim-calls.c (sim_open): Add zero modulo arg to sim_core_attach.
17
18 Mon Sep 1 11:06:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
19
20 * sim-calls.c (sim_open): Use sim_state_alloc
21 (simulation): Delete.
22
23 Sat Aug 30 09:40:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
24
25 * insns (do_trap): Unsigned `i' for unsigned iterator.
26 (do_trap): Ditto for comparison with getpid.
27
28 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
29
30 * configure: Regenerated to track ../common/aclocal.m4 changes.
31 * config.in: Ditto.
32
33 Wed Aug 27 13:41:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
34
35 * insns (do_st): Use U8_4 instead of V4_L8.
36
37 * sim-calls.c (sim_open): Add call to sim_analyze_program, update
38 call to sim_config.
39
40 * sim-calls.c (sim_kill): Delete.
41 (sim_create_inferior): Add ABFD argument. Initialize PC from ABFD
42 and not SD.
43 (sim_load): Delete, use sim-hload.c.
44
45 * Makefile.in (SIM_OBJS): Add sim-hload.o module.
46
47 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
48
49 * configure: Regenerated to track ../common/aclocal.m4 changes.
50 * config.in: Ditto.
51
52 Mon Aug 25 16:33:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
53
54 * sim-calls.c (sim_open): Add ABFD argument.
55 (sim_open): Move sim_config call to just after argument
56 parsing. Check return status.
57
58 Fri Aug 8 21:52:27 1997 Mark Alexander <marka@cygnus.com>
59
60 * sim-calls.c (sim_store_register): Allow accumulators
61 other than A0 to be modified. Correct error message.
62
63 Thu May 29 14:02:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
64
65 * misc.c (tic80_trace_fpu3, tic80_trace_fpu2, tic80_trace_fpu1,
66 tic80_trace_fpu2i): Pass in function prefix.
67 (tic80_trace_ldst): Rewrite so it calls print_one_insn directly.
68
69 * Makefile.in (SIM_OBJS): Include sim-watch.o module.
70
71 * sim-main.h (WITH_WATCHPOINTS): Enable watchpoints.
72
73 * ic (bitnum): Compute bitnum from BITNUM.
74 * insn (bbo, bbz): Use.
75
76 * insn: Convert long immediate instructions to igen long immediate
77 form.
78 * insn: Add disasembler information.
79
80 Thu May 29 12:09:13 1997 Andrew Cagney <cagney@b2.cygnus.com>
81
82 * alu.h (IMEM_IMMED): New macro, fetch 32bit immediate operand N.
83
84 * insns (subu i): Immediate is signed not unsigned.
85
86 Tue May 27 13:22:13 1997 Andrew Cagney <cagney@b1.cygnus.com>
87
88 * sim-calls.c (sim_read): Pass NULL cpu to sim_core_read_buffer.
89 (sim_write): Ditto for write.
90
91 Tue May 20 09:33:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
92
93 * sim-calls.c (sim_load): Set STATE_LOADED_P.
94
95 * sim-main.h: Include <unistd.h>.
96
97 * sim-calls.c (sim_set_callback): Delete.
98 (sim_open): Add/install callback argument.
99 (sim_size): Delete.
100
101 Mon May 19 18:59:33 1997 Mike Meissner <meissner@cygnus.com>
102
103 * configure.in: Check for getpid, kill functions.
104 * config{.in,ure}: Regenerate.
105
106 * insns (do_trap): Add support for kill, getpid system calls.
107
108 * sim-main.h (errno.h): Include.
109 (getpid,kill): Define as NOPs if the host doesn't have them.
110
111 Mon May 19 14:58:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
112
113 * sim-calls.c (sim_open): Set the simulator base magic number.
114 (sim_load): Delete prototype of sim_load_file.
115 (sim_open): Define sd to be &simulation.
116
117 Fri May 16 14:35:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
118
119 * insns (illegal, fp_unavailable): Halt instead of abort the
120 simulator.
121
122 * insns: Replace calls to engine_error with sim_engine_abort.
123 Ditto for engine_halt V sim_engine_halt.
124
125 Tue May 13 15:24:12 1997 Andrew Cagney <cagney@b2.cygnus.com>
126
127 * interp.c (engine_run_until_stop): Delete. Moved to common.
128 (engine_step): Ditto.
129 (engine_step): Ditto.
130 (engine_halt): Ditto.
131 (engine_restart): Ditto.
132 (engine_halt): Ditto.
133 (engine_error): Ditto.
134
135 * sim-calls.c (sim_stop): Delete. Moved to common.
136 (sim_stop_reason): Ditto.
137 (sim_resume): Ditto.
138
139 * Makefile.in (SIM_OBJS): Link in generic sim-engine, sim-run,
140 sim-resume, sim-reason, sim-stop modules.
141
142 Fri May 16 11:57:49 1997 Andrew Cagney <cagney@b1.cygnus.com>
143
144 * ic (compute): Drop check for REG == 0, now always forced to
145 zero.
146
147 * cpu.h (GPR_SET): New macro update the gpr.
148 * insns (do_add): Use GPR_SET to update the GPR register.
149
150 * sim-calls.c (sim_fetch_register): Pretend that r0 is zero.
151
152 * Makefile.in (tmp-igen): Specify zero-r0 so that every
153 instruction clears r0.
154
155 * interp.c (engine_run_until_stop): Igen now generates code to
156 clear r0.
157 (engine_step): Ditto.
158
159 Thu May 15 11:45:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
160
161 * insns (do_shift): When rot==0 and zero/sign merge treat it as
162 32.
163 (set_fp_reg): For interger conversion, use sim-fpu fpu2i
164 functions.
165 (do_fmpy): Perform iii and uuu using integer arithmetic.
166
167 * Makefile.in (ENGINE_H): Assume everything depends on the fpu.
168
169 * insns (get_fp_reg): Use sim_fpu_u32to to perform unsigned
170 conversion.
171 (do_fcmp): Update to use new fp compare functions. Make reg nr arg
172 instead of reg. Stops fp overflow.
173 (get_fp_reg): Assume val is valid when reg == 0.
174 (set_fp_reg): Fix double conversion.
175
176 * misc.c (tic80_trace_fpu1): New function, trace simple fp op.
177
178 * insns (do_frnd): Add tracing.
179
180 * cpu.h (TRACE_FPU1): Ditto.
181
182 * insns (do_trap): Printf formatting.
183
184 Wed May 14 18:05:50 1997 Mike Meissner <meissner@cygnus.com>
185
186 * misc.c (tic80_trace_fpu{3,2,2i}): Align columns with other
187 insns. Use %g to print floating point instead of %f in case the
188 numbers are real large.
189
190 Tue May 13 18:00:10 1997 Mike Meissner <meissner@cygnus.com>
191
192 * insns (do_trap): For system calls that are defined, but not
193 provided return EINVAL. Temporarily add traps 74-79 to just print
194 the register state.
195
196 * interp.c (engine_{run_until_stop,step}): Before executing
197 instructions, make sure r0 == 0.
198
199 Tue May 13 16:39:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
200
201 * alu.h (IMEM): Take full cia not just IP as argument.
202
203 * interp.c (engine_run_until_stop): Delete handling of annuled
204 instructions.
205 (engine_step): Ditto.
206
207 * insn (do_branch): New function.
208 (do_bbo, do_bbz, do_bcnd, do_bsr, do_jsr): Use do_branch to handle
209 annuled branches.
210
211 Mon May 12 17:15:52 1997 Mike Meissner <meissner@cygnus.com>
212
213 * insns (do_{ld,st}): Fix tracing for ld/st.
214
215 Mon May 12 11:12:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
216
217 * sim-calls.c (sim_stop_reason): Restore keep_running after a
218 CNTRL-C, don't re-clear it.
219
220 * interp.c (engine_error): stop rather than signal with SIGABRT
221 when an error.
222
223 * insns (do_ld): For 64bit loads, always store LSW in rDest, MSW in
224 rDest + 1. Also done by Michael Meissner <meissner@cygnus.com>
225 (do_st): Converse for store.
226
227 * misc.c (tic80_trace_fpu2i): Correct printf format for int type.
228
229 Sun May 11 11:02:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
230
231 * sim-calls.c (sim_stop_reason): Return a SIGINT if keep_running
232 was cleared.
233
234 * interp.c (engine_step): New function. Single step the simulator
235 taking care of cntrl-c during a step.
236
237 * sim-calls.c (sim_resume): Differentiate between stepping and
238 running so that a cntrl-c during a step is reported.
239
240 Sun May 11 10:54:31 1997 Mark Alexander <marka@cygnus.com>
241
242 * sim-calls.c (sim_fetch_register): Use correct reg base.
243 (sim_store_register): Ditto.
244
245 Sun May 11 10:25:14 1997 Michael Meissner <meissner@cygnus.com>
246
247 * cpu.h (tic80_trace_shift): Add declaration.
248 (TRACE_SHIFT): New macro to trace shift instructions.
249
250 * misc.c (tic80_trace_alu2): Align spacing.
251 (tic80_trace_shift): New function to trace shifts.
252
253 * insns (lmo): Add missing 0b prefix to bits.
254 (do_shift): Use ~ (unsigned32)0, instead of -1. Use TRACE_SHIFT
255 instead of TRACE_ALU2.
256 (sl r): Use EndMask as is, instead of using Source+1 register.
257 (subu): Operands are unsigned, not signed.
258 (do_{ld,st}): Fix endian problems with ld.d/st.d.
259
260 Sat May 10 12:35:47 1997 Michael Meissner <meissner@cygnus.com>
261
262 * insns (and{.tt,.tf,.ft,.ff}): Immediate values are unsigned, not
263 signed.
264
265 Fri May 9 15:47:36 1997 Mike Meissner <meissner@cygnus.com>
266
267 * insns (cmp_vals,do_cmp): Produce the correct bits as specified
268 by the architecture.
269 (xor): Fix xor immediate patterns to use the correct bits.
270
271 Fri May 9 09:55:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
272
273 * alu.h (long_immediate): Adjust the CIA delay-pointer as well as
274 the NIA when a 64bit insn.
275
276 Thu May 8 11:57:47 1997 Michael Meissner <meissner@cygnus.com>
277
278 * insns (jsr,bsr): For non-allulled calls, set r31 so that the
279 return address does not reexecute the instruction in the delay
280 slot.
281 (bbo,bbz): Complement bit number to reverse the one's complement
282 that the assembler is required to do.
283
284 * misc.c (tic80_trace_*): Change format slightly to accomidate
285 real large decimal values.
286
287 Thu May 8 14:07:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
288
289 * sim-calls.c (sim_do_command): Implement.
290 (sim_store_register): Fix typo T2H v H2T.
291
292 Wed May 7 11:48:55 1997 Andrew Cagney <cagney@b1.cygnus.com>
293
294 * cpu.h (TRACE_FPU2, TRACE_FPU3, TRACE_FPU2I): Add.
295 * insn: Clean up fpu tracing.
296
297 * sim-calls.c (sim_create_inferior): Start out with interrupts
298 enabled.
299
300 * cpu.h (TRACE_SINK3), misc.c (tic80_trace_sink3): Three argument
301 sink
302
303 * insns (rdcr, swcr, wrcr, brcr, rmo, lmo): Implement.
304
305 * insns (do_*): Remove MY_INDEX/indx argument from support functions,
306 igen now handles this.
307
308 * cpu.h (CR): New macro - access TIc80 control registers.
309
310 * misc.c: New file.
311 (tic80_cr2index): New function, map control register opcode index
312 into the internal CR enum.
313
314 * interp.c
315 (tic80_trace_{alu{2,3},nop,sink{1,2},{,u}cond_br,ldst}): Move from
316 here
317 * misc.c: to here.
318
319 * Makefile.in (SIM_OBJS): Add misc.o.
320
321 Tue May 6 15:22:58 1997 Mike Meissner <meissner@cygnus.com>
322
323 * cpu.h ({,v}{S,D}P_FPR): Delete unused macros that won't work on
324 big endian hosts.
325 (tic80_trace_{alu{2,3},nop,sink{1,2},{,u}cond_br,ldst}): Declare
326 new functions.
327 (TRACE_{ALU{2,3},NOP,SINK{1,2},{,U}COND_BR,LD,ST}): New macros to
328 trace various instruction types.
329
330 * insns: Modify all instructions to support semantic tracing.
331
332 * interp.c (toplevel): Include itable.h.
333 (tic80_trace_{alu{2,3},nop,sink{1,2},{,u}cond_br,ldst}): New
334 functions to provide semantic level tracing information.
335
336 Mon May 5 11:50:43 1997 Andrew Cagney <cagney@b1.cygnus.com>
337
338 * alu.h: Update usage of core object to reflect recent changes in
339 ../common/sim-*core.
340 * sim-calls.c (sim_open): Ditto.
341
342 Mon May 5 14:10:17 1997 Andrew Cagney <cagney@b1.cygnus.com>
343
344 * insn (cmnd): No-op cache flushes.
345
346 * insns (do_trap): Allow writes to STDERR.
347
348 * Makefile.in (SIM_OBJS): Link in sim-fpu.o.
349 (SIM_EXTRA_LIBS): Link in the math library.
350
351 * alu.h: Add support for floating point unit using sim-alu.
352
353 * insns (fadd, fsub, fmpy, fdiv, fcmp, frnd*): Implement.
354
355 Fri May 2 14:57:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
356
357 * sim-calls.c: Include sim-utils.h and sim-options.h.
358
359 * sim-main.h (sim_state): Drop sim_events and sim_core members,
360 moved to simulator base type.
361
362 * alu.h (IMEM, MEM, STORE): Update track changes in common
363 directory.
364
365 * insns: Drop cia argument from functions, igen now handles this.
366
367 * interp.c (engine_init): Include string.h/strings.h to define
368 memset et.al.
369
370 * sim-main.h (sim_cia): Delcare, tracking common dir changes.
371
372 * cpu.h (sim_cpu): Update instruction_address with sim_cia.
373
374 Wed Apr 30 11:26:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
375
376 * sim-main.h (signal.h): Include so that SIG* available to all
377 callers of sig_halt.
378
379 * insns (do_shift): New function, implement shift operations.
380 (do_trap): Add handler for trap 73 - SIGTRAP.
381
382 Tue Apr 29 10:58:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
383
384 * alu.h (MEM, STORE): Force addresses to be correctly aligned.
385
386 * insns (do_jsr): Fix.
387 (do_st, do_ld): Handle 64bit transfers.
388 (do_trap): Match libgloss.
389 (rdcr): Implement nop - Dest == r0 - variant.
390
391 * sim-calls.c (sim_create_inferior): Initialize SP.
392
393 * Makefile.in (ENGINE_H): Everything now depends on sim-options.h.
394 (support.o): Depends on ENGINE_H.
395
396 * cpu.h: Four accumulators.
397
398 * Makefile.in (tmp-igen): Include line number information in
399 generated files.
400
401 * insns (dld, dst): Fill in.
402
403 Mon Apr 28 13:02:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
404
405 * insns (vld): Fix instruction format wrong.
406
407 Thu Apr 24 16:43:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
408
409 * dc: Add additional rules so that minor opcode files are
410 detected.
411 * insns: Enable more instructions.
412
413 * sim-calls.c (sim_fetch_register,sim_store_register, sim_write):
414 Implement.
415
416 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
417
418 * configure: Regenerated to track ../common/aclocal.m4 changes.
419 * Makefile.in (SIM_OBJS): Add sim-module.o, sim-profile.o.
420 * sim-calls.c (sim_open): Call sim_module_uninstall if argument
421 parsing fails. Call sim_post_argv_init.
422 (sim_close): Call sim_module_uninstall.
423
424 Wed Apr 23 20:05:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
425
426 * insns (and, bbo, bcnd, bsr, dcache, jsr, or, xor, nor): Enable.
427 * ic: Add fields for enabled instructions.
428
This page took 0.039452 seconds and 5 git commands to generate.