soc.git
4 years agoalmost all tests work
Jacob Lifshay [Mon, 6 Apr 2020 00:12:20 +0000 (17:12 -0700)]
almost all tests work

4 years agoadd .gitlab-ci.yml
Jacob Lifshay [Sun, 5 Apr 2020 22:44:49 +0000 (15:44 -0700)]
add .gitlab-ci.yml

4 years agouse fields.txt as the local file name and add to gitignore
Jacob Lifshay [Sun, 5 Apr 2020 22:21:23 +0000 (15:21 -0700)]
use fields.txt as the local file name and add to gitignore

4 years agoRevert "rename fields.text to use standard .txt file extension and add to gitignore"
Jacob Lifshay [Sun, 5 Apr 2020 21:59:55 +0000 (14:59 -0700)]
Revert "rename fields.text to use standard .txt file extension and add to gitignore"

server doesn't work with .txt files

This reverts commit 334c2ed237e3cb5fe66a782afaa2354d577841ba.

4 years agorename fields.text to use standard .txt file extension and add to gitignore
Jacob Lifshay [Sun, 5 Apr 2020 21:52:41 +0000 (14:52 -0700)]
rename fields.text to use standard .txt file extension and add to gitignore

4 years agoput regs through to ISACaller
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 20:51:16 +0000 (21:51 +0100)]
put regs through to ISACaller

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 20:15:42 +0000 (21:15 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 20:12:55 +0000 (21:12 +0100)]
update submodule

4 years agogot fed up of hard-coded names, allow pywriter.py to take arguments
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 20:12:38 +0000 (21:12 +0100)]
got fed up of hard-coded names, allow pywriter.py to take arguments

4 years agoadd comment about form / op_fields
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 20:03:07 +0000 (21:03 +0100)]
add comment about form / op_fields

4 years agounpack tuple with new op_fields
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 19:55:21 +0000 (20:55 +0100)]
unpack tuple with new op_fields

4 years agoadd Form name parsing
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 19:45:25 +0000 (20:45 +0100)]
add Form name parsing

4 years agoAutogenerate all.py
Michael Nolan [Sun, 5 Apr 2020 19:41:23 +0000 (15:41 -0400)]
Autogenerate all.py

4 years agoHandle new changes in pseudocode parser
Michael Nolan [Sun, 5 Apr 2020 19:26:20 +0000 (15:26 -0400)]
Handle new changes in pseudocode parser

4 years agoHandle opcodes returning EXTS() results
Michael Nolan [Sun, 5 Apr 2020 19:25:51 +0000 (15:25 -0400)]
Handle opcodes returning EXTS() results

4 years agoFix bug 281
Michael Nolan [Sun, 5 Apr 2020 19:17:58 +0000 (15:17 -0400)]
Fix bug 281

4 years agoeffort to get base class instructions automatically
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 19:14:35 +0000 (20:14 +0100)]
effort to get base class instructions automatically

4 years agoAdd in _reg and immediate support
Michael Nolan [Sun, 5 Apr 2020 19:11:49 +0000 (15:11 -0400)]
Add in _reg and immediate support

4 years agoFix issue with memory load/store byte order
Michael Nolan [Sun, 5 Apr 2020 19:11:27 +0000 (15:11 -0400)]
Fix issue with memory load/store byte order

4 years agoFix not being able to use all instructions in ISA class
Michael Nolan [Sun, 5 Apr 2020 19:10:43 +0000 (15:10 -0400)]
Fix not being able to use all instructions in ISA class

4 years agoremove ISACaller as base class, do in soc.decoder.isa.ISA
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 19:04:54 +0000 (20:04 +0100)]
remove ISACaller as base class, do in soc.decoder.isa.ISA

4 years agoget hex to recognise capitals
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 19:03:14 +0000 (20:03 +0100)]
get hex to recognise capitals

4 years agosubmodule update
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:59:34 +0000 (19:59 +0100)]
submodule update

4 years agoadd printout of instruction Form
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:59:25 +0000 (19:59 +0100)]
add printout of instruction Form

4 years agodrop instr info into uniquely-named dict
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:54:30 +0000 (19:54 +0100)]
drop instr info into uniquely-named dict

4 years agoRevert "Implement bug 278, comment 1 - better version of EXTS"
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:42:06 +0000 (19:42 +0100)]
Revert "Implement bug 278, comment 1 - better version of EXTS"

This reverts commit b5e4e847c2841189386da3509949d9206de92f8b.

4 years agoImplement bug 278, comment 1 - better version of EXTS
Michael Nolan [Sun, 5 Apr 2020 18:31:48 +0000 (14:31 -0400)]
Implement bug 278, comment 1 - better version of EXTS

4 years agoMove combination class out of __init__
Michael Nolan [Sun, 5 Apr 2020 18:25:13 +0000 (14:25 -0400)]
Move combination class out of __init__

4 years agoadd HEX to parser
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:16:18 +0000 (19:16 +0100)]
add HEX to parser

4 years agofix repr (0x prefix) and add repr test for selectable int
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 18:16:05 +0000 (19:16 +0100)]
fix repr (0x prefix) and add repr test for selectable int

4 years agoFix addi instruction, think a commit got lost
Michael Nolan [Sun, 5 Apr 2020 18:00:44 +0000 (14:00 -0400)]
Fix addi instruction, think a commit got lost

4 years agoAdd class for combining multiple instruction classes
Michael Nolan [Sun, 5 Apr 2020 17:59:40 +0000 (13:59 -0400)]
Add class for combining multiple instruction classes

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:46:33 +0000 (17:46 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:43:29 +0000 (17:43 +0100)]
update submodule

4 years agoadd SPR rework from SPR(x) to SPR[x]
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:43:14 +0000 (17:43 +0100)]
add SPR rework from SPR(x) to SPR[x]

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:40:19 +0000 (17:40 +0100)]
update submodule

4 years agoconstruct switch/case/default from if/elif/elif/else
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:40:01 +0000 (17:40 +0100)]
construct switch/case/default from if/elif/elif/else

4 years agoadd start on switch/case/default in parser
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 16:05:43 +0000 (17:05 +0100)]
add start on switch/case/default in parser

4 years agosubmodule update
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 15:12:47 +0000 (16:12 +0100)]
submodule update

4 years agocase and default do not need implicit colon
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 14:56:13 +0000 (15:56 +0100)]
case and default do not need implicit colon

4 years agoadd switch case and default keywords
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 14:32:49 +0000 (15:32 +0100)]
add switch case and default keywords

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 12:22:37 +0000 (13:22 +0100)]
update submodule

4 years agofix issue with subscript uninitialised detection
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 12:07:00 +0000 (13:07 +0100)]
fix issue with subscript uninitialised detection

4 years agoallow [s] * 64 to be detected and turned into a repeat-list pattern
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:52:01 +0000 (12:52 +0100)]
allow [s] * 64 to be detected and turned into a repeat-list pattern

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:46:48 +0000 (12:46 +0100)]
update submodule

4 years agotest trap, shift and condition
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:46:39 +0000 (12:46 +0100)]
test trap, shift and condition

4 years agoadd selectconcat test
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:46:24 +0000 (12:46 +0100)]
add selectconcat test

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:37:18 +0000 (12:37 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:04:35 +0000 (12:04 +0100)]
update submodule

4 years agoquick test found missing bracket
Luke Kenneth Casson Leighton [Sun, 5 Apr 2020 11:04:25 +0000 (12:04 +0100)]
quick test found missing bracket

4 years agoadd != operator
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:22:46 +0000 (22:22 +0100)]
add != operator

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:18:23 +0000 (22:18 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:15:58 +0000 (22:15 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:14:56 +0000 (22:14 +0100)]
update submodule

4 years agoupdate submodule libreriscv
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:13:15 +0000 (22:13 +0100)]
update submodule libreriscv

4 years agoadd <-iea operator
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:13:03 +0000 (22:13 +0100)]
add <-iea operator

4 years agoprint regfile on only 4 lines
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:04:52 +0000 (22:04 +0100)]
print regfile on only 4 lines

4 years agodump regfile nicely
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:02:01 +0000 (22:02 +0100)]
dump regfile nicely

4 years agoadd dump function for regs
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 21:00:51 +0000 (22:00 +0100)]
add dump function for regs

4 years agocheck that SelectableInt has been extended to 256 bits
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:57:00 +0000 (21:57 +0100)]
check that SelectableInt has been extended to 256 bits

4 years agoWorking test_add
Michael Nolan [Sat, 4 Apr 2020 20:40:32 +0000 (16:40 -0400)]
Working test_add

4 years agoimport EXTS which over-extends to 256 bits
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:53:03 +0000 (21:53 +0100)]
import EXTS which over-extends to 256 bits

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:44:37 +0000 (21:44 +0100)]
update submodule

4 years agoupdate submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:43:19 +0000 (21:43 +0100)]
update submodule

4 years agowhoops wrong token for XOR
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:40:29 +0000 (21:40 +0100)]
whoops wrong token for XOR

4 years agochange @inject to take no parameters
Michael Nolan [Sat, 4 Apr 2020 20:33:25 +0000 (16:33 -0400)]
change @inject to take no parameters

There are issues with using decorators with class variables (see
https://stackoverflow.com/questions/11731136/class-method-decorator-with-self-arguments)
so it was changed to take no variables and access the class internally

4 years agoadd support for syntax "do i = N to N" equivalent to for
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:28:55 +0000 (21:28 +0100)]
add support for syntax "do i = N to N" equivalent to for
also fix bug where "for i = N" was getting early-reduced
to "for {comparison}" because "=" is also used as a comparator

4 years agoSorta working add instruction
Michael Nolan [Sat, 4 Apr 2020 20:23:01 +0000 (16:23 -0400)]
Sorta working add instruction

4 years agoremove extraneous statement
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:22:30 +0000 (21:22 +0100)]
remove extraneous statement

4 years agotry again with adding XOR operator
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:19:40 +0000 (21:19 +0100)]
try again with adding XOR operator

4 years agoupdate libreriscv submodule
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 20:17:53 +0000 (21:17 +0100)]
update libreriscv submodule

4 years agoMinor changes to test for caller.py, still not working at all
Michael Nolan [Sat, 4 Apr 2020 20:02:50 +0000 (16:02 -0400)]
Minor changes to test for caller.py, still not working at all

4 years agoAdd a basic test class for caller.py
Michael Nolan [Sat, 4 Apr 2020 19:56:17 +0000 (15:56 -0400)]
Add a basic test class for caller.py

4 years agomove GPR and Mem to isa caller
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 19:39:54 +0000 (20:39 +0100)]
move GPR and Mem to isa caller

4 years agoadd means to subscript two levels deep
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 19:24:08 +0000 (20:24 +0100)]
add means to subscript two levels deep

4 years agoadd memory get/set
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 18:41:34 +0000 (19:41 +0100)]
add memory get/set

4 years agoeurg start putting namespace-injection (GPR, MEM) in place
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 16:39:34 +0000 (17:39 +0100)]
eurg start putting namespace-injection (GPR, MEM) in place

4 years agotest fixedload
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 16:36:26 +0000 (17:36 +0100)]
test fixedload

4 years agosigh change syntax to (RA|0)
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 16:15:39 +0000 (17:15 +0100)]
sigh change syntax to (RA|0)

4 years agoallow int in addition and subtraction
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 16:15:17 +0000 (17:15 +0100)]
allow int in addition and subtraction

4 years agoadd OrderedSet, needed to preserve function arg order
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 13:45:19 +0000 (14:45 +0100)]
add OrderedSet, needed to preserve function arg order

4 years agouse set not list to make regs unique
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 13:39:28 +0000 (14:39 +0100)]
use set not list to make regs unique

4 years agoadd SelectableInt and selectconcat to imports
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 13:25:37 +0000 (14:25 +0100)]
add SelectableInt and selectconcat to imports

4 years agowhoops prefix op_ already added
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:54:40 +0000 (13:54 +0100)]
whoops prefix op_ already added

4 years agowhoops sort out function name
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:54:09 +0000 (13:54 +0100)]
whoops sort out function name

4 years agoadd "op_" prefix to function names to avoid use of python keywords
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:52:03 +0000 (13:52 +0100)]
add "op_" prefix to function names to avoid use of python keywords

4 years agowhitespace
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:49:25 +0000 (13:49 +0100)]
whitespace

4 years agomove to header-template, fix bug in page name (use instruction name)
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:48:49 +0000 (13:48 +0100)]
move to header-template, fix bug in page name (use instruction name)

4 years agoadd imports for helper functions to pywriter
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:45:56 +0000 (13:45 +0100)]
add imports for helper functions to pywriter

4 years agoidentify [0]*16 pattern and produce repeat-of-int
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:44:04 +0000 (13:44 +0100)]
identify [0]*16 pattern and produce repeat-of-int

4 years agoadd modulo to parser (and div to SelectableInt)
Luke Kenneth Casson Leighton [Sat, 4 Apr 2020 12:05:04 +0000 (13:05 +0100)]
add modulo to parser (and div to SelectableInt)

4 years agoremove quotes because we are passing the function through
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 21:36:27 +0000 (22:36 +0100)]
remove quotes because we are passing the function through

4 years agoplan to use class named ISACaller base class
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 21:34:51 +0000 (22:34 +0100)]
plan to use class named ISACaller base class

4 years agocreate list of args, pass them in to function, return results too
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 21:10:29 +0000 (22:10 +0100)]
create list of args, pass them in to function, return results too

4 years agopower parser should work
Jacob Lifshay [Fri, 3 Apr 2020 20:05:53 +0000 (13:05 -0700)]
power parser should work

4 years agoadd comments, get example working
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 19:00:48 +0000 (20:00 +0100)]
add comments, get example working

4 years agoadd __bool__ override to selectable_int
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 19:00:37 +0000 (20:00 +0100)]
add __bool__ override to selectable_int

4 years agooutput as class not set of functions
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 18:45:01 +0000 (19:45 +0100)]
output as class not set of functions

4 years agounary minus is at end not in front
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 18:44:48 +0000 (19:44 +0100)]
unary minus is at end not in front

4 years agoadd invert operator, fix unary ops
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 18:25:04 +0000 (19:25 +0100)]
add invert operator, fix unary ops