Luke Kenneth Casson Leighton [Sat, 2 Jul 2022 17:11:59 +0000 (18:11 +0100)]
add setvl CTR tests, fix CTR mode
Luke Kenneth Casson Leighton [Sat, 2 Jul 2022 16:59:34 +0000 (17:59 +0100)]
fix setvl CTR mode
Luke Kenneth Casson Leighton [Sat, 2 Jul 2022 16:37:47 +0000 (17:37 +0100)]
setvl has new CTR mode, making room in encoding needed
fixing unit tests
Luke Kenneth Casson Leighton [Thu, 30 Jun 2022 11:33:47 +0000 (12:33 +0100)]
do CSV isatables explicitly in sv_analysis.py
for pandoc to pick up
Luke Kenneth Casson Leighton [Thu, 30 Jun 2022 11:04:27 +0000 (12:04 +0100)]
explicit output of opcode_regs_deduped in mdwn table format
so as to make it possible to convert to latex with pandoc
Luke Kenneth Casson Leighton [Tue, 28 Jun 2022 16:30:28 +0000 (17:30 +0100)]
add recognition of "sv." to pysvp64asm
Luke Kenneth Casson Leighton [Tue, 28 Jun 2022 15:23:38 +0000 (16:23 +0100)]
remove qemu co-simulation, dump output expected results
test/basic_pypowersim
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 22:33:06 +0000 (23:33 +0100)]
add predicate mask test svstep
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 22:13:27 +0000 (23:13 +0100)]
whoops svp64.py testing wrong variable on sv.svstep
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 22:04:29 +0000 (23:04 +0100)]
add predicated srcstep
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 21:56:01 +0000 (22:56 +0100)]
make svstep output srcstep/dststep, basically viota
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 17:23:35 +0000 (18:23 +0100)]
rename SVRM *field* to SVrm to avoid a name-clash with
SVRM-*Form*
Dmitry Selyutin [Sun, 26 Jun 2022 17:10:19 +0000 (20:10 +0300)]
svp64.py: decrement SVd operand
Dmitry Selyutin [Sun, 26 Jun 2022 16:06:12 +0000 (19:06 +0300)]
svp64.py: fix ignored field range
Dmitry Selyutin [Sun, 26 Jun 2022 15:59:20 +0000 (18:59 +0300)]
svp64.py: drop commented code
Dmitry Selyutin [Sun, 26 Jun 2022 15:42:23 +0000 (18:42 +0300)]
svp64.py: fix fsins/fcoss X-FORM
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 09:27:04 +0000 (10:27 +0100)]
again fix number of arguments to svremap,
test_caller_svp64_ldst.py
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 09:23:49 +0000 (10:23 +0100)]
whitespace
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:59:39 +0000 (09:59 +0100)]
test_caller_svstate.py: end-of-loop condition sets CR.SO not CR.EQ
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:46:32 +0000 (09:46 +0100)]
svp64_matrix.py svremap reduce to 7 args from 8 (again)
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:35:17 +0000 (09:35 +0100)]
svremap only takes 7 args not 8, same as in svp64_fft.py
fix in svp64_dct.py
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:24:46 +0000 (09:24 +0100)]
one too many arguments to svremap in svp64_fft.py test
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:20:41 +0000 (09:20 +0100)]
whoops hack-use of DOUBLE2SINGLE in test_caller_transcendentals.py
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:15:12 +0000 (09:15 +0100)]
svp64.py: sync SVRM-Form used for svshape
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 08:01:40 +0000 (09:01 +0100)]
svp64.py: fix svshape and setvl plus couple of oddities
* svstep RT,SVi,vf
but the Form is 8 fields
* setvl RT,RA,SVi,vf,vs,ms
the order of those is *different* from the "natural" order in the
SVL-Form
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 07:39:23 +0000 (08:39 +0100)]
svp64.py: add -FORM headers to more functions
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 07:33:42 +0000 (08:33 +0100)]
svp64.py: fix bmask entry
Dmitry Selyutin [Sat, 25 Jun 2022 20:51:29 +0000 (23:51 +0300)]
svp64.py: group 32-bit instructions into the table
The pysvp64asm code became really dirty with the addition of new
instructions, it's almost impossible to keep track of it. Some
instructions were not converted at all, due to incorrect check (all but
setvl/svshape). Some had wrong operand names (fsins, fcoss used RT, RA
operands, and this does not follow the spec). Some instructions had no
SV support, despite the fact they should (fsins).
This all became barely maintainable. From now on, instructions are
grouped into a special table. Ideally we should generate this table
from fields.txt, but there's no time for writing yet another parser.
Dmitry Selyutin [Sat, 25 Jun 2022 15:57:53 +0000 (18:57 +0300)]
svp64.py: align indentation
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 11:56:59 +0000 (12:56 +0100)]
add test case for kaivb to jump to 0x2700
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 11:39:31 +0000 (12:39 +0100)]
add TrapTestCase for KAIVB
https://bugs.libre-soc.org/show_bug.cgi?id=859
Luke Kenneth Casson Leighton [Sun, 26 Jun 2022 11:15:14 +0000 (12:15 +0100)]
hmm do expected state in rfid trap case
Luke Kenneth Casson Leighton [Sat, 25 Jun 2022 20:08:32 +0000 (21:08 +0100)]
correct input example for SOF case_3_bmask
Andrey Miroshnikov [Sat, 25 Jun 2022 19:37:02 +0000 (19:37 +0000)]
Added sif/sof
Luke Kenneth Casson Leighton [Sat, 25 Jun 2022 19:25:43 +0000 (20:25 +0100)]
corrections to test cases, it is not quite
as "obvious" as it looks due to the masking
Luke Kenneth Casson Leighton [Sat, 25 Jun 2022 19:07:13 +0000 (20:07 +0100)]
update comments in av_cases.py test_1_bmask
Luke Kenneth Casson Leighton [Sat, 25 Jun 2022 19:01:12 +0000 (20:01 +0100)]
correct undefined in av.mdwn bmask
Andrey Miroshnikov [Fri, 24 Jun 2022 22:14:38 +0000 (22:14 +0000)]
Added second bmask test case, designed to be multi-test
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 21:20:47 +0000 (22:20 +0100)]
add svindex XO field 101001
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 20:58:26 +0000 (21:58 +0100)]
rename mask to rmm in svindex
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 20:57:35 +0000 (21:57 +0100)]
rename mask field to rmm to avoid using "mask" in binutils
https://libre-soc.org/irclog/%23libre-soc.2022-06-24.log.html#t2022-06-24T20:27:25
Dmitry Selyutin [Fri, 24 Jun 2022 18:49:23 +0000 (21:49 +0300)]
svp64.py: support svindex instruction
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 18:29:43 +0000 (19:29 +0100)]
add SVd to fields.txt (SVI-Form)
missed out description
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:51:30 +0000 (15:51 +0100)]
add first bmask unit test
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:51:02 +0000 (15:51 +0100)]
invert mode-bits in bmask bm field
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:50:40 +0000 (15:50 +0100)]
bmask does not have Rc=1 variant
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:17:27 +0000 (15:17 +0100)]
sigh, bm not mode argument to bmask
plus the offsets (sub-fields) of bm were completely wrong
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:12:33 +0000 (15:12 +0100)]
correct bmask conversion to binary (wrong instruction used
as a beginning template)
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 14:11:42 +0000 (15:11 +0100)]
add bmask to instruction list
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 11:05:26 +0000 (12:05 +0100)]
add to fields.txt for the svstep instruction
which misses out some fields
Luke Kenneth Casson Leighton [Fri, 24 Jun 2022 10:54:25 +0000 (11:54 +0100)]
add svindex SVI-Form to fields.txt
Jacob Lifshay [Fri, 24 Jun 2022 05:01:36 +0000 (22:01 -0700)]
add missed generated csv changes
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 16:13:47 +0000 (17:13 +0100)]
add BM2-Form to power_enums.py
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 16:11:59 +0000 (17:11 +0100)]
else must be on separate line in pseudocode av.mdwn
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 16:10:10 +0000 (17:10 +0100)]
missing "Special Registers Altered" on av.mdwn
Andrey Miroshnikov [Thu, 23 Jun 2022 14:55:01 +0000 (14:55 +0000)]
Added bmask, pywriter failing
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 09:53:40 +0000 (10:53 +0100)]
add SPDX-License-Headers to CSV files
(now that comments are possible)
mention provenance from microwatt decode1.vhdl
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 09:45:00 +0000 (10:45 +0100)]
add explanatory comments on minor_22.csv
Luke Kenneth Casson Leighton [Thu, 23 Jun 2022 09:39:21 +0000 (10:39 +0100)]
add comment-stripping to get_csv()
there have been a lot of situations where comments are needed
including review of new instructions
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 14:53:33 +0000 (15:53 +0100)]
add BM2 Form for (DRAFT) bmask instruction
Andrey Miroshnikov [Wed, 22 Jun 2022 16:37:01 +0000 (16:37 +0000)]
Added pc based on len(lst)
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 14:45:46 +0000 (15:45 +0100)]
add another cprop test, experimenting
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 14:44:06 +0000 (15:44 +0100)]
add 2nd cprop test to see what happens
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 14:41:43 +0000 (15:41 +0100)]
expected number of instructions is 1 (therefore PC after running is 4 not 8)
Andrey Miroshnikov [Wed, 22 Jun 2022 14:38:10 +0000 (15:38 +0100)]
Added cprop test case, fails atm (not enabled by default)
Andrey Miroshnikov [Wed, 22 Jun 2022 14:05:48 +0000 (15:05 +0100)]
Modified cprop pseudo-code due to parser bug
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 14:04:04 +0000 (15:04 +0100)]
argh horrible hack that does not work yet for fixing precedence
Luke Kenneth Casson Leighton [Wed, 22 Jun 2022 13:26:55 +0000 (14:26 +0100)]
add X-Form to svp64.py av opcode set
(to be able to understand what the heck is going on)
Andrey Miroshnikov [Wed, 22 Jun 2022 13:07:06 +0000 (14:07 +0100)]
Added cprop to caller, enums, svp64
Andrey Miroshnikov [Wed, 22 Jun 2022 12:44:35 +0000 (13:44 +0100)]
Added CPROP to powerenums
Andrey Miroshnikov [Wed, 22 Jun 2022 12:06:52 +0000 (13:06 +0100)]
Added entries for cprop, not sure if correct
Luke Kenneth Casson Leighton [Mon, 20 Jun 2022 17:42:26 +0000 (18:42 +0100)]
add absolute-signed-diff next to absolute-unsigned-diff
Luke Kenneth Casson Leighton [Mon, 20 Jun 2022 13:47:14 +0000 (14:47 +0100)]
rename absadd[us] to absdac[ud]
matches descriptions
# DRAFT Absolute Accumulate Signed Difference
Jacob Lifshay [Sun, 19 Jun 2022 21:47:48 +0000 (14:47 -0700)]
fix minu[.] to be unsigned
Jacob Lifshay [Sun, 19 Jun 2022 21:42:10 +0000 (14:42 -0700)]
update after adding av instructions
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 19:40:12 +0000 (20:40 +0100)]
add absadds - signed accumulating add. DRAFT
https://bugs.libre-soc.org/show_bug.cgi?id=863
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 19:34:30 +0000 (20:34 +0100)]
add absadd (unsigned) DRAFT
https://bugs.libre-soc.org/show_bug.cgi?id=863
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 19:05:54 +0000 (20:05 +0100)]
add absolute-difference DRAFT
https://bugs.libre-soc.org/show_bug.cgi?id=863
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 18:37:47 +0000 (19:37 +0100)]
add average-add DRAFT pseudocode and CSV
https://bugs.libre-soc.org/show_bug.cgi?id=863
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 18:14:58 +0000 (19:14 +0100)]
add the rest of min/max DRAFT av opcodes
https://bugs.libre-soc.org/show_bug.cgi?id=863
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 16:10:21 +0000 (17:10 +0100)]
add maxs DRAFT instruction
https://libre-soc.org/openpower/sv/av_opcodes/
Luke Kenneth Casson Leighton [Sun, 19 Jun 2022 15:08:03 +0000 (16:08 +0100)]
extend minor_22.csv bitsel pattern to cover bits 21..31
Dmitry Selyutin [Fri, 17 Jun 2022 13:51:18 +0000 (13:51 +0000)]
sv_binutils: drop SVP64_NAME_MAX
Dmitry Selyutin [Fri, 17 Jun 2022 13:50:00 +0000 (13:50 +0000)]
sv_binutils: minor naming conventions fixup
Dmitry Selyutin [Fri, 17 Jun 2022 13:47:38 +0000 (13:47 +0000)]
sv_binutils: rename Entry to Record
Dmitry Selyutin [Fri, 17 Jun 2022 13:41:32 +0000 (13:41 +0000)]
sv_binutils: rename Record to Desc
Luke Kenneth Casson Leighton [Fri, 17 Jun 2022 13:20:44 +0000 (14:20 +0100)]
whoops on an OR rather than an AND
Luke Kenneth Casson Leighton [Fri, 17 Jun 2022 13:14:28 +0000 (14:14 +0100)]
add "redirection" of MTSPR/MFSPR into TRAP pipeline for KAIVB
in PowerDecoderSubset
https://bugs.libre-soc.org/show_bug.cgi?id=859
this reduces a lot of messing about by actually storing KAIVB
directly in the TRAP pipeline which is the only place it is used
Luke Kenneth Casson Leighton [Fri, 17 Jun 2022 12:54:52 +0000 (13:54 +0100)]
add KAIVB SPR 850
https://bugs.libre-soc.org/show_bug.cgi?id=859
Luke Kenneth Casson Leighton [Tue, 14 Jun 2022 14:13:43 +0000 (15:13 +0100)]
update version to 0.0 to stop unnecessary pip3 installs
Luke Kenneth Casson Leighton [Tue, 14 Jun 2022 14:11:36 +0000 (15:11 +0100)]
add version constraints on setup install_requires
Dmitry Selyutin [Wed, 8 Jun 2022 17:53:49 +0000 (17:53 +0000)]
media/Makefile: switch to explicit LE toolchain
Dmitry Selyutin [Wed, 8 Jun 2022 12:31:46 +0000 (12:31 +0000)]
svp64.py: simplify core script translation
Dmitry Selyutin [Wed, 8 Jun 2022 11:52:44 +0000 (11:52 +0000)]
mp3_0: update assembly listing
Dmitry Selyutin [Mon, 6 Jun 2022 19:30:42 +0000 (19:30 +0000)]
svp64.py: fix stdin/stdout modus operandi
Dmitry Selyutin [Mon, 6 Jun 2022 18:27:50 +0000 (18:27 +0000)]
svp64.py: switch print statements to logger
Dmitry Selyutin [Wed, 1 Jun 2022 19:56:13 +0000 (19:56 +0000)]
sv_binutils: consider RA0 operand
Dmitry Selyutin [Wed, 1 Jun 2022 18:39:30 +0000 (18:39 +0000)]
sv_binutils: drop redundant prefix in C tags
Dmitry Selyutin [Wed, 1 Jun 2022 18:16:14 +0000 (18:16 +0000)]
sv_binutils: exclude useless records
Dmitry Selyutin [Wed, 1 Jun 2022 18:07:11 +0000 (18:07 +0000)]
sv_binutils: refactor CSV iteration