]> Witch of Git - jade-mouse/log
jade-mouse
4 years agoImplement instruction execution develop
Cassie Jones [Wed, 22 Jan 2020 06:41:59 +0000 (01:41 -0500)]
Implement instruction execution

4 years agoChange bitmatch to use the published version
Cassie Jones [Wed, 22 Jan 2020 04:10:43 +0000 (23:10 -0500)]
Change bitmatch to use the published version

4 years agoImplement instruction decoder
Cassie Jones [Sun, 19 Jan 2020 12:54:42 +0000 (07:54 -0500)]
Implement instruction decoder

4 years agoAdd more mid-byte underscores to the ISA spec
Cassie Jones [Sun, 19 Jan 2020 10:01:59 +0000 (05:01 -0500)]
Add more mid-byte underscores to the ISA spec

For consistency with the first byte in the multi-byte instructions, and
to make it look nicer to translate the specs directly to the code.

4 years ago[WIP] Implementing encoding
Cassie Jones [Sat, 18 Jan 2020 05:43:39 +0000 (00:43 -0500)]
[WIP] Implementing encoding

4 years agoAdd proptest encoding round-trip test
Cassie Jones [Sat, 18 Jan 2020 04:19:16 +0000 (23:19 -0500)]
Add proptest encoding round-trip test

4 years agoMinor ISA changes
Cassie Jones [Fri, 17 Jan 2020 08:51:09 +0000 (03:51 -0500)]
Minor ISA changes

4 years agoModify the Rust instruction definition for v0.2
Cassie Jones [Thu, 16 Jan 2020 07:11:40 +0000 (02:11 -0500)]
Modify the Rust instruction definition for v0.2

4 years agoAdd ISA version 0.2
Cassie Jones [Thu, 16 Jan 2020 05:00:47 +0000 (00:00 -0500)]
Add ISA version 0.2

This changes the registers to 16-bit registers in order to solve the
code and data addressing problems in the first revision. Having
registers be address-sized means that we don't need to use register
pairs or segments. Some of these changes open up new encoding space, or
invalidate some previous design decisions. For instance, registers are
16 bits now, so AND/OR/XOR can no longer have a full-size immediate in
one byte. With this, we free up encoding space for other options.

Major additions include a "load upper/lower immediate" instruction.

4 years agoImplement mov and add tests
Cassie Jones [Sat, 11 Jan 2020 04:32:01 +0000 (23:32 -0500)]
Implement mov and add tests

4 years agoRun cargo fmt
Cassie Jones [Sat, 11 Jan 2020 03:37:27 +0000 (22:37 -0500)]
Run cargo fmt

4 years agoStart adding framework for encoding and decoding
Cassie Jones [Sat, 11 Jan 2020 03:25:15 +0000 (22:25 -0500)]
Start adding framework for encoding and decoding

4 years agoStart adding the toolchain
Cassie Jones [Sat, 11 Jan 2020 03:03:02 +0000 (22:03 -0500)]
Start adding the toolchain

The toolchain project will include an instruction set simulator, an
assembler, etc.

4 years agoAdd instruction program synthesis
Cassie Jones [Sat, 11 Jan 2020 02:51:58 +0000 (21:51 -0500)]
Add instruction program synthesis

This is inspired by Whitequark's work with program synthesis in Rosette.
I used it for generating wider shifts to gain some confidence that I
don't need instructions that use the carry.

4 years agoAdd a revision of the ISA design
Cassie Jones [Sat, 11 Jan 2020 02:44:15 +0000 (21:44 -0500)]
Add a revision of the ISA design