Luke Kenneth Casson Leighton [Tue, 16 Nov 2021 16:26:18 +0000 (16:26 +0000)]
argh, regspec_decode_write is supposed to return single-bit flags
for indicating whether a register is to be written to or not.
the write data structures are a Data() record - with data and an ok.
the *entire* data structure was being returned, not the "ok" bit,
in many cases in regspec_decode_write.
Luke Kenneth Casson Leighton [Tue, 16 Nov 2021 15:13:47 +0000 (15:13 +0000)]
name of cr reg3 was numbered 2
Jacob Lifshay [Sat, 13 Nov 2021 00:36:40 +0000 (16:36 -0800)]
remove excess I from ternary-related names
Jacob Lifshay [Fri, 12 Nov 2021 01:32:47 +0000 (17:32 -0800)]
change ternaryi to correct register fields
Jacob Lifshay [Fri, 12 Nov 2021 01:19:50 +0000 (17:19 -0800)]
format code
Jacob Lifshay [Fri, 12 Nov 2021 00:44:57 +0000 (16:44 -0800)]
format code
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 11:30:03 +0000 (11:30 +0000)]
add case-based expected results in addme alu_cases
creates the expected results based on conditions in the choices and values
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 10:37:40 +0000 (10:37 +0000)]
invert speedup (commenting-out) of tests
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 10:30:11 +0000 (10:30 +0000)]
sort out numbering on CRs in SimState
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 10:29:57 +0000 (10:29 +0000)]
whitespace
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 10:08:05 +0000 (10:08 +0000)]
fix test API State.compare which was overwriting intregs and crregs
- for i, (self.intregs, s2.intregs) in enumerate(
+ for i, (intreg, intreg2) in enumerate(
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 09:44:32 +0000 (09:44 +0000)]
https://bugs.libre-soc.org/show_bug.cgi?id=730#c27
yep, the CR Field numbering has already been fixed so does not need
inverting with a 7-i
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 09:40:49 +0000 (09:40 +0000)]
add unexpected result to see what happens
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 09:40:33 +0000 (09:40 +0000)]
use append on expected state dump, not ideal but
gives multiple results
Luke Kenneth Casson Leighton [Thu, 11 Nov 2021 09:26:54 +0000 (09:26 +0000)]
add core state to gtkw
R Veera Kumar [Thu, 11 Nov 2021 05:39:12 +0000 (11:09 +0530)]
Add expected state to case_addze for addze in alu_cases unit test
Now for only addze opcode
Removed a not needed self.add_case line
R Veera Kumar [Thu, 11 Nov 2021 04:22:13 +0000 (09:52 +0530)]
Add expected state to case_1_regression for 'add' in alu_cases unit test
R Veera Kumar [Thu, 11 Nov 2021 02:55:54 +0000 (08:25 +0530)]
Add expected state to case_1_regression for extsb in alu_cases unit test
R Veera Kumar [Thu, 11 Nov 2021 02:35:51 +0000 (08:05 +0530)]
Add expected state to case_1_regression for subf (2) in alu_cases unit test
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 19:51:14 +0000 (19:51 +0000)]
attempt to get gtkw simulator signals updated on WB MMU
R Veera Kumar [Wed, 10 Nov 2021 19:37:03 +0000 (01:07 +0530)]
Add expected state to case_1_regression for subf in alu_cases unit test
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 19:10:40 +0000 (19:10 +0000)]
add LDST msr_pr to gtkw debug
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 19:07:46 +0000 (19:07 +0000)]
display 64 bits of msr
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 19:05:49 +0000 (19:05 +0000)]
add MSR to ldst operand debug gtkw
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 18:43:25 +0000 (18:43 +0000)]
add MSR to gtkw file for simulation output
Luke Kenneth Casson Leighton [Wed, 10 Nov 2021 14:53:04 +0000 (14:53 +0000)]
add RT as an option for ternary instruction as 3rd register input
Luke Kenneth Casson Leighton [Thu, 28 Oct 2021 11:47:45 +0000 (12:47 +0100)]
add creation of 8 and 16 DCT butterfly diagrams
Tobias Platen [Tue, 9 Nov 2021 17:12:45 +0000 (18:12 +0100)]
forward mmu sprs
R Veera Kumar [Tue, 9 Nov 2021 13:53:46 +0000 (19:23 +0530)]
Add expected state to case_1_regression for extsw for alu_cases unit test
Jacob Lifshay [Fri, 5 Nov 2021 23:10:35 +0000 (16:10 -0700)]
add ternaryi
Jacob Lifshay [Fri, 5 Nov 2021 22:50:36 +0000 (15:50 -0700)]
format code
Jacob Lifshay [Fri, 5 Nov 2021 22:46:29 +0000 (15:46 -0700)]
format code
Jacob Lifshay [Fri, 5 Nov 2021 22:10:06 +0000 (15:10 -0700)]
add comment2 and unofficial fields to existing instructions
Tobias Platen [Thu, 4 Nov 2021 19:44:30 +0000 (20:44 +0100)]
dcbz needs to go through ldst function unit
klehman [Thu, 4 Nov 2021 13:45:34 +0000 (09:45 -0400)]
caller.py: Fix ISACaller modifying test state
klehman [Thu, 28 Oct 2021 02:53:08 +0000 (22:53 -0400)]
state.py: Fix expected dump for cr regs
klehman [Mon, 25 Oct 2021 20:46:44 +0000 (16:46 -0400)]
spacing fix
klehman [Mon, 25 Oct 2021 20:19:16 +0000 (16:19 -0400)]
tests now dump into caller dirs
klehman [Mon, 25 Oct 2021 19:59:54 +0000 (15:59 -0400)]
get file name from stack, add in TestCase
klehman [Mon, 25 Oct 2021 14:13:39 +0000 (10:13 -0400)]
tmp creation/string formatting
klehman [Mon, 25 Oct 2021 12:41:25 +0000 (08:41 -0400)]
added dump_state_tofile for code creation
R Veera Kumar [Sat, 23 Oct 2021 05:19:50 +0000 (10:49 +0530)]
Add a new test caller for ALU based on shift_rot test caller
Dmitry Selyutin [Sat, 2 Oct 2021 09:23:42 +0000 (09:23 +0000)]
fixedlogical: simplify extsw
Dmitry Selyutin [Sat, 2 Oct 2021 09:23:22 +0000 (09:23 +0000)]
fixedlogical: simplify extsh
Dmitry Selyutin [Sat, 2 Oct 2021 09:23:02 +0000 (09:23 +0000)]
fixedlogical: simplify extsb
Dmitry Selyutin [Sat, 2 Oct 2021 09:18:34 +0000 (09:18 +0000)]
decoder/helpers: introduce EXTSXL helper
https://libre-soc.org/openpower/sv/svp64/extsxl
Dmitry Selyutin [Sat, 2 Oct 2021 09:12:13 +0000 (09:12 +0000)]
decoder/helpers: simplify XLCASTU
Luke Kenneth Casson Leighton [Sun, 10 Oct 2021 20:14:30 +0000 (21:14 +0100)]
corrections to EXTSXL 0x000000090000093 table for extsb, bit 7 needs
propagating through for XLEN=16/32/64
Dmitry Selyutin [Sun, 10 Oct 2021 18:48:09 +0000 (18:48 +0000)]
test_caller_exts: extsb/extsh/extsw test
Dmitry Selyutin [Sun, 10 Oct 2021 18:46:50 +0000 (18:46 +0000)]
isafunctions/extsxl: fix one of markdown tables
klehman [Thu, 7 Oct 2021 23:18:23 +0000 (19:18 -0400)]
additional comments for runner
klehman [Thu, 7 Oct 2021 17:19:40 +0000 (13:19 -0400)]
typo: gpr not fpr
klehman [Thu, 7 Oct 2021 15:00:33 +0000 (11:00 -0400)]
various test state comments
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 22:01:06 +0000 (23:01 +0100)]
corrections to csv files
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 21:58:44 +0000 (22:58 +0100)]
add another extsxl csv file
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 21:55:03 +0000 (22:55 +0100)]
replace f with F in csv files
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 21:50:36 +0000 (22:50 +0100)]
add extsxl csv files
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 20:16:39 +0000 (21:16 +0100)]
test adding extsxl data
Luke Kenneth Casson Leighton [Mon, 4 Oct 2021 19:28:51 +0000 (20:28 +0100)]
add blank example file
klehman [Fri, 1 Oct 2021 22:01:47 +0000 (18:01 -0400)]
fix for self.rom core
Luke Kenneth Casson Leighton [Fri, 1 Oct 2021 16:57:26 +0000 (17:57 +0100)]
set run_hdl arg to None because it passes in a class now
Luke Kenneth Casson Leighton [Fri, 1 Oct 2021 16:53:41 +0000 (17:53 +0100)]
copy over TestRunner class from soc/simple/test/test_runner.py
Copyright attribution klehman, lkcl, tplaten, j neuschaefer, cstrauss
Luke Kenneth Casson Leighton [Thu, 30 Sep 2021 18:31:14 +0000 (19:31 +0100)]
whoops, use cache of pseudocode rather than attempt to truncate
the list of instructions, causes them to disappear. oops
Luke Kenneth Casson Leighton [Thu, 30 Sep 2021 13:32:18 +0000 (14:32 +0100)]
reduce PyFnWriter compile time (pywriter) by 75%
needs some explanation: the pagereader enumerates all the sub-options
(Rc=1, OE=1) and adds one instruction (each) for all of the sub-options
but adds the exact same pseudocode.
PyFnWriter then generates up to *four copies* of the exact same pseucodode
and four functions, *only one of which is actually used* by ISACaller
(the one *without* Rc=1 and OE=1), then handles Rc=1 and OE=1 *separately*
added an option to pagereader to only add the first-encountered instruction
but for other purposes it is still added, so is not made the default
Dmitry Selyutin [Wed, 29 Sep 2021 11:50:36 +0000 (11:50 +0000)]
isa/caller: initialize helper and redirect XLEN
Dmitry Selyutin [Wed, 29 Sep 2021 11:44:52 +0000 (11:44 +0000)]
decoder/helpers: use globals() with exception
Dmitry Selyutin [Wed, 29 Sep 2021 09:47:31 +0000 (09:47 +0000)]
decoder/parser: self.XLEN instead of XLEN
Dmitry Selyutin [Wed, 29 Sep 2021 00:03:22 +0000 (00:03 +0000)]
fixedlogical: switch xoris to XCASTU
Dmitry Selyutin [Wed, 29 Sep 2021 00:03:09 +0000 (00:03 +0000)]
fixedlogical: switch oris to XCASTU
Dmitry Selyutin [Wed, 29 Sep 2021 00:02:49 +0000 (00:02 +0000)]
fixedlogical: switch andis. to XCASTU
Dmitry Selyutin [Wed, 29 Sep 2021 00:01:35 +0000 (00:01 +0000)]
fixedlogical: switch xori to XCASTU
Dmitry Selyutin [Wed, 29 Sep 2021 00:01:16 +0000 (00:01 +0000)]
fixedlogical: switch ori to XCASTU
Dmitry Selyutin [Wed, 29 Sep 2021 00:00:11 +0000 (00:00 +0000)]
fixedlogical: switch andi. to XLCASTU
Dmitry Selyutin [Tue, 28 Sep 2021 20:20:33 +0000 (20:20 +0000)]
decoder/helpers: support XLCASTS
Dmitry Selyutin [Tue, 28 Sep 2021 20:17:42 +0000 (20:17 +0000)]
decoder/helpers: support XLCASTU
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:57:37 +0000 (11:57 +0100)]
remove unneeded module import
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:44:39 +0000 (11:44 +0100)]
convert svp64 fft test just like the dct one
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:34:50 +0000 (11:34 +0100)]
convert test_caller_svp64_dct.py unit test to use new helper class
to get at DOUBLE2SINGLE
previously could import it as a (global) function
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:27:00 +0000 (11:27 +0100)]
re-add accidentally-deleted low-level operators eq ne gt etc
from pyfnwriter
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:08:06 +0000 (11:08 +0100)]
move FPDIV, FPMUL (etc) to ISAFPHelpers class
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 10:07:41 +0000 (11:07 +0100)]
add ISACallerFnHelper, remove FPADD32 and other FP helpers
Luke Kenneth Casson Leighton [Tue, 28 Sep 2021 09:47:04 +0000 (10:47 +0100)]
remove type information
Dmitry Selyutin [Mon, 27 Sep 2021 20:12:46 +0000 (20:12 +0000)]
pywriter, pyfnwriter, parser: activate helper class
Dmitry Selyutin [Mon, 27 Sep 2021 20:10:32 +0000 (20:10 +0000)]
pyfnwriter: write helper class
Dmitry Selyutin [Mon, 27 Sep 2021 19:30:24 +0000 (19:30 +0000)]
decoder/parser: generate methods, not functions
Dmitry Selyutin [Mon, 27 Sep 2021 19:26:54 +0000 (19:26 +0000)]
fixup! decoder/parser: pass helper argument
Dmitry Selyutin [Mon, 27 Sep 2021 19:16:22 +0000 (19:16 +0000)]
decoder/power_pseudo: pass helper argument
Dmitry Selyutin [Mon, 27 Sep 2021 19:16:02 +0000 (19:16 +0000)]
decoder/parser: pass helper argument
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 21:51:20 +0000 (22:51 +0100)]
add name parameter to StateRunner
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 19:46:38 +0000 (20:46 +0100)]
inherit ISACallerHelper in ISACaller
Dmitry Selyutin [Sat, 25 Sep 2021 17:15:43 +0000 (17:15 +0000)]
pywriter: redirect helpers into self
Dmitry Selyutin [Sat, 25 Sep 2021 16:29:45 +0000 (16:29 +0000)]
decoder/helpers.py: redirect helper class calls
Dmitry Selyutin [Sat, 25 Sep 2021 16:15:23 +0000 (16:15 +0000)]
decoder/helpers.py: ISACallerHelper stub class
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 18:03:05 +0000 (19:03 +0100)]
add factory-function for StateRunner
Luke Kenneth Casson Leighton [Sat, 25 Sep 2021 17:49:13 +0000 (18:49 +0100)]
convert all SimRunner functions to yield
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 19:53:43 +0000 (20:53 +0100)]
guessing what extra args needed for StateRunner
klehman [Fri, 24 Sep 2021 17:20:32 +0000 (13:20 -0400)]
add SimRunner constructor
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 17:09:44 +0000 (18:09 +0100)]
finally sort out the running-out-of-file-handles
by taking a copy of the object file and placing it into a BytesIO
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 16:55:09 +0000 (17:55 +0100)]
use with subprocess to get it to close Popen files
Luke Kenneth Casson Leighton [Fri, 24 Sep 2021 16:44:49 +0000 (17:44 +0100)]
rename shift tests, move to test cases directory