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

4 years agoadd in ability to concat ints
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 10:53:30 +0000 (11:53 +0100)]
add in ability to concat ints

4 years agosuccess using SelectableInt in cnttzd test
Luke Kenneth Casson Leighton [Thu, 2 Apr 2020 10:24:23 +0000 (11:24 +0100)]
success using SelectableInt in cnttzd test

4 years agoAdd many more operators to selectable_int
Michael Nolan [Wed, 1 Apr 2020 18:37:32 +0000 (14:37 -0400)]
Add many more operators to selectable_int

4 years agoselectable_int now in power ordering, add setitem
Michael Nolan [Wed, 1 Apr 2020 18:22:28 +0000 (14:22 -0400)]
selectable_int now in power ordering, add setitem

4 years agoAdd rudimentary int class with bit index
Michael Nolan [Wed, 1 Apr 2020 18:07:14 +0000 (14:07 -0400)]
Add rudimentary int class with bit index

This needs to be changed to have the PPC bit ordering

4 years agoadd bit of code ready for IntClass with an eq function
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 15:43:16 +0000 (16:43 +0100)]
add bit of code ready for IntClass with an eq function

4 years agomove demo code for lexer
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 15:30:31 +0000 (16:30 +0100)]
move demo code for lexer

4 years agosplit parser into separate module
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 15:27:23 +0000 (16:27 +0100)]
split parser into separate module

4 years agomove IndentLexer to separate module
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 15:24:18 +0000 (16:24 +0100)]
move IndentLexer to separate module

4 years agoFix bug in test_decoder_gas
Michael Nolan [Wed, 1 Apr 2020 14:52:36 +0000 (10:52 -0400)]
Fix bug in test_decoder_gas

4 years agoupdate README for install process
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 13:41:02 +0000 (14:41 +0100)]
update README for install process

4 years agoadd libreriscv as submodule
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 13:39:20 +0000 (14:39 +0100)]
add libreriscv as submodule

4 years agosemi-functional prototype which reads code-fragments and does "stuff"
Luke Kenneth Casson Leighton [Wed, 1 Apr 2020 13:35:17 +0000 (14:35 +0100)]
semi-functional prototype which reads code-fragments and does "stuff"

4 years agoadd .eggs to .gitignore
Jacob Lifshay [Wed, 1 Apr 2020 01:58:37 +0000 (18:58 -0700)]
add .eggs to .gitignore

4 years agoMinor cleanup
Michael Nolan [Tue, 31 Mar 2020 14:19:06 +0000 (10:19 -0400)]
Minor cleanup

4 years agoAdd more comments to helpers.py
Michael Nolan [Mon, 30 Mar 2020 23:57:14 +0000 (19:57 -0400)]
Add more comments to helpers.py

4 years agoidentify GPR read and add some helpers
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 15:30:37 +0000 (16:30 +0100)]
identify GPR read and add some helpers

4 years agoassume 32-to-64 bit zero-extension
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 15:29:00 +0000 (16:29 +0100)]
assume 32-to-64 bit zero-extension

4 years agosplit out sig set from sig setup
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 15:19:39 +0000 (16:19 +0100)]
split out sig set from sig setup

4 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 13:04:52 +0000 (14:04 +0100)]
whitespace cleanup

4 years agoadd list of gprs which need to access GPR functions (code-rewrite)
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 13:03:37 +0000 (14:03 +0100)]
add list of gprs which need to access GPR functions (code-rewrite)

4 years agoadd sigdecoder
Luke Kenneth Casson Leighton [Tue, 31 Mar 2020 13:03:05 +0000 (14:03 +0100)]
add sigdecoder

4 years agoAdd tests for EXTS64, fix EXTS64
Michael Nolan [Mon, 30 Mar 2020 23:45:31 +0000 (19:45 -0400)]
Add tests for EXTS64, fix EXTS64

4 years agoAdd ROTL32 and ROTL64
Michael Nolan [Mon, 30 Mar 2020 23:35:45 +0000 (19:35 -0400)]
Add ROTL32 and ROTL64

4 years agoBegin adding helper functions for PPC pseudocode compiler
Michael Nolan [Mon, 30 Mar 2020 23:15:03 +0000 (19:15 -0400)]
Begin adding helper functions for PPC pseudocode compiler

4 years agoFix bug in GAS test where it would load and update the same register
Michael Nolan [Mon, 30 Mar 2020 17:04:19 +0000 (13:04 -0400)]
Fix bug in GAS test where it would load and update the same register

4 years agoFix tests broken by df295b5
Michael Nolan [Mon, 30 Mar 2020 17:03:59 +0000 (13:03 -0400)]
Fix tests broken by df295b5

4 years agoMinor cleanup
Michael Nolan [Mon, 30 Mar 2020 17:03:33 +0000 (13:03 -0400)]
Minor cleanup

4 years agobit of a mess, turn lexer and parser into classes
Luke Kenneth Casson Leighton [Mon, 30 Mar 2020 15:54:58 +0000 (16:54 +0100)]
bit of a mess, turn lexer and parser into classes

4 years agoadd signals for all fields, accessible by named tuples as fields
Luke Kenneth Casson Leighton [Mon, 30 Mar 2020 15:06:33 +0000 (16:06 +0100)]
add signals for all fields, accessible by named tuples as fields

4 years agoadd binary number support
Luke Kenneth Casson Leighton [Mon, 30 Mar 2020 14:50:23 +0000 (15:50 +0100)]
add binary number support

4 years agouse = rather than == for compare
Luke Kenneth Casson Leighton [Mon, 30 Mar 2020 12:13:44 +0000 (13:13 +0100)]
use = rather than == for compare