soc.git
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

4 years agofix concat error
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 18:17:20 +0000 (19:17 +0100)]
fix concat error

4 years agotest double-index (wark, fail)
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 16:51:12 +0000 (17:51 +0100)]
test double-index (wark, fail)

4 years agoadd one to end subscript
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 16:25:06 +0000 (17:25 +0100)]
add one to end subscript

4 years agocorrections to lte / gte
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 16:20:23 +0000 (17:20 +0100)]
corrections to lte / gte

4 years agoadd test of brackets to stop newline inclusion
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 15:22:23 +0000 (16:22 +0100)]
add test of brackets to stop newline inclusion

4 years agoadd bit-wise OR and AND
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 15:12:56 +0000 (16:12 +0100)]
add bit-wise OR and AND

4 years agoadd less-than, greater-than, signed, and le/ge
Luke Kenneth Casson Leighton [Fri, 3 Apr 2020 14:20:30 +0000 (15:20 +0100)]
add less-than, greater-than, signed, and le/ge

4 years agooff-by-one in SelectableInt slices
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 19:17:59 +0000 (20:17 +0100)]
off-by-one in SelectableInt slices

4 years agosupport assignment to subscripts, however it may need a little more than
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 18:28:26 +0000 (19:28 +0100)]
support assignment to subscripts, however it may need a little more than
what is there at the moment

4 years agofix power_pseudo.py to work with latest nmigen
Tobias Platen [Fri, 3 Apr 2020 08:32:18 +0000 (10:32 +0200)]
fix power_pseudo.py to work with latest nmigen

4 years agoadd power isa python-writer
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 17:25:12 +0000 (18:25 +0100)]
add power isa python-writer

4 years agoadd test of if elif
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 17:23:18 +0000 (18:23 +0100)]
add test of if elif

4 years agostart parsing all source files, output python
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 16:30:39 +0000 (17:30 +0100)]
start parsing all source files, output python

4 years agouse Ops in pagereader
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 15:53:05 +0000 (16:53 +0100)]
use Ops in pagereader

4 years agoadd pagename to list
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 15:47:00 +0000 (16:47 +0100)]
add pagename to list

4 years agomove reading into constructor
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 15:41:43 +0000 (16:41 +0100)]
move reading into constructor

4 years agoadd form-extraction parsing
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 15:40:13 +0000 (16:40 +0100)]
add form-extraction parsing

4 years agoadd docstring for pagereader module
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 15:03:38 +0000 (16:03 +0100)]
add docstring for pagereader module

4 years agoread all files from openpower/isa directory successfully
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 14:57:19 +0000 (15:57 +0100)]
read all files from openpower/isa directory successfully

4 years agoadd pagereader for openpower/isa/*.mdwn
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 13:49:11 +0000 (14:49 +0100)]
add pagereader for openpower/isa/*.mdwn