aboutsummaryrefslogtreecommitdiff
path: root/sim/mn10300
AgeCommit message (Collapse)AuthorFilesLines
1997-01-13 * simops.c: Use REG macros in few places not using them yet.Jeff Law2-5/+9
Something I noticed while working on the mn10200 simulator.
1997-01-06 * mn10300_sim.h (struct _state): Fix number of registers!Jeff Law1-0/+4
Just something I noticed while working on the mn10200 simulator.
1996-12-31 * mn10300_sim.h (struct _state): Put all registers into a singleJeff Law3-53/+51
array to make gdb implementation easier. (REG_*): Add definitions for all registers in the state array. (SEXT32, SEXT40, SEXT44, SEXT60): Remove unused macros. * simops.c: Related changes.
1996-12-18 * interp.c (sim_resume): Handle 0xff as a single byte insn.Jeff Law2-12/+19
* simops.c: Fix overflow computation for "add" and "inc" instructions.
1996-12-16 * simops.c: Handle "break" instruction.Jeff Law2-0/+12
1996-12-16 * simops.c: Fix restoring the PC for "ret" and "retf" instructions.Jeff Law2-4/+23
1996-12-11 * gencode.c (write_opcodes): Also write out the format of theJeff Law1-3/+4
opcode. * mn10300_sim.h (simops): Add "format" field. * interp.c (sim_resume): Deal with endianness issues here.
1996-12-10 * simops.c (REG0_4): Define.Jeff Law2-8/+14
Use REG0_4 for indexed loads/stores. Fixes bugs exposed after minor codegen improvements in the compiler.
1996-12-07 * simops.c (REG0_16): Fix typo.Jeff Law2-1/+5
1996-12-07Add missing semicolons in last change.Jeff Law1-13/+13
1996-12-06 * simops.c: Call abort for any instruction that's not currentlyJeff Law2-0/+16
simulated.
1996-12-06 * simops.c: Define accessor macros to extract registerJeff Law2-368/+329
values from instructions. Use them consistently.
1996-12-06 * interp.c: Delete unused global variable "OP".Jeff Law3-31/+30
(sim_resume): Remove unused variable "opcode". * simops.c: Fix some uninitialized variable problems, add parens to fix various -Wall warnings. Fixing assorted -Wall problems.
1996-12-06Opps. Forgot something in last change.Jeff Law1-1/+1
1996-12-06 * gencode.c (write_header): Add "insn" and "extension" argumentsJeff Law5-248/+699
to the OP_* declarations. (write_template): Similarly for function templates. * interp.c (insn, extension): Remove global variables. Instead pass them as arguments to the OP_* functions. * mn10300_sim.h: Remove decls for "insn" and "extension". * simops.c (OP_*): Accept "insn" and "extension" as arguments instead of using globals. Starting to clean things up.
1996-12-06 * simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"Jeff Law2-3/+5
Fixes remaining hangs while running c-torture execution tests. Only 12 c-torture execution failures left: * 920625-1.c fails all 6 execution tests. * 960521-1.c fails all 6 execution tests.
1996-12-06 * simops.c: Fix thinkos in last change to "inc dn".Jeff Law2-5/+11
1996-12-04 * simops.c: "add imm,sp" does not effect the condition codes.Jeff Law2-31/+20
"inc dn" does effect the condition codes. Just something I noticed.
1996-12-04 * simops.c: Treat both operands as signed values forJeff Law2-2/+13
"div" instruction. Fixes another dozen c-torture execution failures.
1996-12-04 * simops.c: Fix simulation of division instructions.Jeff Law1-12/+8
Fix typos/thinkos in several "cmp" and "sub" instructions. Another couple dozen c-torture failures fixed.
1996-12-02 * simomps.c: Fix carry bit handling in "sub" and "cmp"Jeff Law1-9/+9
instructions. Another dozen execution failures fixed.
1996-12-02 * simops.c: Fix "mov imm8,an" and "mov imm16,dn".Jeff Law2-2/+6
Fixes 80 or so c-torture execution failures. 400 to go.
1996-12-02 * simops.c: Fix overflow computation for many instructions.Jeff Law2-87/+89
Fixes several hangs in the c-torture execution tests. Also fixes about 40 failures.
1996-12-02 * simops.c: Fix "movdm, an", "movbu dm, (an)", and "movhu dm, (an)".Jeff Law2-5/+7
Along with some compiler, bfd, assembler changes this fixes 90 or so c-torture execution failures.
1996-12-02 * simops.c: Fix "mov am, dn".Jeff Law2-1/+3
Fixes more c-torture problems.
1996-12-01 * simops.c: Fix more bugs in "add imm,an" andJeff Law2-8/+13
"add imm,dn". Fixes a half-dozen (of several hundred :( c-torture failures.
1996-11-27 * simops.c: Fix bugs in "movm" and "add imm,an".Jeff Law2-17/+19
main(){write (0, "hello world\n", 13);} works!
1996-11-27 * simops.c: Don't lose the upper 24 bits of the returnJeff Law2-16/+154
pointer in "call" and "calls" instructions. Rough cut at emulated system calls.
1996-11-27 * simops.c: Implement the remaining 5, 6 and 7 byte instructions.Jeff Law2-50/+168
Everything except the extended instructions, the loop instructions, trap, rti, and rtm.
1996-11-27 * simops.c Implement remaining 4 byte instructions.Jeff Law2-39/+145
1996-11-27 * simops.c Implement remaining 3 byte instructions.Jeff Law2-32/+120
Moving right along...
1996-11-27 * simops.c: Implement remaining 2 byte instructions. CallJeff Law2-23/+120
abort for instructions we're not implementing now.
1996-11-27 * simops.c: Implement lots of random instructions.Jeff Law2-129/+642
Implments most instructions with first nibble 0x0 - 0xe and those with the first byte 0xf0 - 0xf2.
1996-11-27 * simops.c: Implement "movm" and "bCC" insns.Jeff Law2-7/+160
Function calls and conditional branches work!
1996-11-27 * mn10300_sim.h (_state): Add another register (MDR).Jeff Law3-9/+199
(REG_MDR): Define. * simops.c: Implement "cmp", "calls", "rets", "jmp" and a few additional random insns. We can now function calls. We get out of crt0 into main now, then lose when calls are nested (because don't handle movm yet).
1996-11-26 * mn10300_sim.h (PSW_*): Define for CC status tracking.Jeff Law3-20/+310
(REG_D0, REG_A0, REG_SP): Define. * simops.c: Implement "add", "addc" and a few other random instructions. Starting to simulate instructions for the mn10300. Executes some of the crt0 code now!
1996-11-26 * gencode.c, interp.c: Snapshot current simulator code.Jeff Law3-3/+27
(crude) hashing works, along with dispatch to the OP_* functions.
1996-11-25 * Makefile.in, config.in, configure, configure.in: New files.Jeff Law7-0/+1950
* gencode.c, interp.c, mn10300_sim.h, simops.c: New files. Skeleton mn10300 simulator