Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 23:26:23 +0000 (00:26 +0100)]
no svstate instruction
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 23:24:25 +0000 (00:24 +0100)]
svstep calls SVSTATE_NEXT so needs svstate_pre_inc
setvl no longer calls SVSTATE_NEXT so does not
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 23:10:15 +0000 (00:10 +0100)]
remove special case from setvl calling SVSTATE_NEXT,
only accessible through svstep now
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 21:40:21 +0000 (22:40 +0100)]
replacing setvl-svstep with just svstep
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 21:36:04 +0000 (22:36 +0100)]
replacing setvl-svstep with just svstep
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 21:27:25 +0000 (22:27 +0100)]
replacing setvl-svstep with just svstep
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 16:00:06 +0000 (17:00 +0100)]
comments
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 15:55:13 +0000 (16:55 +0100)]
comments
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 15:44:56 +0000 (16:44 +0100)]
minor cleanup in ISACaller on result handling
create a dictionary matched with output reg names, adapt handle_carry
handle_overflow etc. to use it. mostly
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 13:43:24 +0000 (14:43 +0100)]
simplify ISACaller execute_one
Luke Kenneth Casson Leighton [Sat, 1 Oct 2022 13:21:44 +0000 (14:21 +0100)]
simplify setting default SVSHAPE SPRs to zero
Jacob Lifshay [Sat, 1 Oct 2022 00:10:44 +0000 (17:10 -0700)]
increase pcdec. output compression by skipping impossible codes
Jacob Lifshay [Fri, 30 Sep 2022 23:08:53 +0000 (16:08 -0700)]
prefix codes tests pass
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 17:39:45 +0000 (18:39 +0100)]
no need for ctr mode on sv.bc
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 17:37:35 +0000 (18:37 +0100)]
ctr mode not needed, just use unconditional CTR dec
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 13:39:27 +0000 (14:39 +0100)]
set srcstep/dststep to zero in StepLoop (ISACaller) at loopend
see if a different style of looping can be used
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 13:03:20 +0000 (14:03 +0100)]
add sv.bc vlset-inverted test
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 12:59:05 +0000 (13:59 +0100)]
comments/variables-cleanup
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 11:28:19 +0000 (12:28 +0100)]
add sv.bc vlset-inverted test
this one inverts all the logic (some instead of all, LE instead of GT,
VL-truncate if FAIL)
and thus can swap the success-fail branch point. avoids one branch in loops
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 10:56:55 +0000 (11:56 +0100)]
add sv.bc/vs - VLset - test. truncates VL at the vector-condition-fail point
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 09:47:41 +0000 (10:47 +0100)]
add code-comments in variance_svp64_real.s on how to use sv.bc/ctr/all
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 09:37:57 +0000 (10:37 +0100)]
add new sv.bc CTR-loop test, subtracts VL from CTR
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 08:14:26 +0000 (09:14 +0100)]
whitespace
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 08:12:41 +0000 (09:12 +0100)]
use regs variables in get_predint
Luke Kenneth Casson Leighton [Fri, 30 Sep 2022 08:06:58 +0000 (09:06 +0100)]
comments
Jacob Lifshay [Fri, 30 Sep 2022 03:49:16 +0000 (20:49 -0700)]
fix pcdec. assembly -- merge into va_form() since it's no longer VA2-form
Jacob Lifshay [Fri, 30 Sep 2022 03:46:38 +0000 (20:46 -0700)]
fix pcdec.'s form
Jacob Lifshay [Fri, 30 Sep 2022 03:17:50 +0000 (20:17 -0700)]
rewrite pcdec. pseudocode to work better for JPEG
the pcdec. unittests aren't updated yet
Jacob Lifshay [Fri, 30 Sep 2022 01:44:47 +0000 (18:44 -0700)]
add lookup table generation for JPEG decode
Jacob Lifshay [Fri, 30 Sep 2022 01:44:23 +0000 (18:44 -0700)]
allow logging function to be overridden for Mem.log_fancy
Jacob Lifshay [Thu, 29 Sep 2022 23:21:22 +0000 (16:21 -0700)]
convert svp64 bigint unittests to use TestAccumulatorBase
Jacob Lifshay [Thu, 29 Sep 2022 22:46:48 +0000 (15:46 -0700)]
finish changing to use adde, not addeo for bigint add
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 18:00:30 +0000 (19:00 +0100)]
sv.adde not sv.addeo
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 14:06:52 +0000 (15:06 +0100)]
destination for maddedu and divmod2du for RS defaults to RC for scalar
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 13:59:45 +0000 (14:59 +0100)]
wowser, complex. implementing maddedu implicit RC/RS rules.
still TODO
<!-- bit 8 of EXTRA is clear: RS.[s|v]=RT.[s|v]+MAXVL
<!-- bit 8 of EXTRA is set : RS.[s|v]=RC.[s|v]
actually it is currently "if RC is scalar then RS=RC" which is more
sensible
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 13:57:26 +0000 (14:57 +0100)]
add carry-roll-over-vector-mul-with-add (!) unit test
test_caller_svp64_bigint.py
https://bugs.libre-soc.org/show_bug.cgi?id=937
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 11:09:43 +0000 (12:09 +0100)]
comments
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 10:56:20 +0000 (11:56 +0100)]
add shift-left and shift-right scalar-to-vector tests
Luke Kenneth Casson Leighton [Thu, 29 Sep 2022 01:39:55 +0000 (02:39 +0100)]
update iterators in ISACaller, not used yet
Jacob Lifshay [Thu, 29 Sep 2022 03:10:05 +0000 (20:10 -0700)]
rename madded->maddedu for consistency with PowerISA maddhdu instruction
Jacob Lifshay [Thu, 29 Sep 2022 03:05:02 +0000 (20:05 -0700)]
rename divrem2du->divmod2du for consistency with PowerISA mod* instructions
Jacob Lifshay [Thu, 29 Sep 2022 02:46:54 +0000 (19:46 -0700)]
add bigint tests and fix madded pseudocode
Jacob Lifshay [Thu, 29 Sep 2022 02:46:15 +0000 (19:46 -0700)]
add bigint ops
Jacob Lifshay [Thu, 29 Sep 2022 02:45:00 +0000 (19:45 -0700)]
fill out dsld/dsrd pseudocode
Jacob Lifshay [Thu, 29 Sep 2022 02:43:16 +0000 (19:43 -0700)]
add missing DRAFT comment
Jacob Lifshay [Thu, 29 Sep 2022 02:39:27 +0000 (19:39 -0700)]
fix test_minor_30
Jacob Lifshay [Thu, 29 Sep 2022 02:39:07 +0000 (19:39 -0700)]
format code
Jacob Lifshay [Thu, 29 Sep 2022 02:33:00 +0000 (19:33 -0700)]
clean up bigint instruction naming
Jacob Lifshay [Thu, 29 Sep 2022 02:29:20 +0000 (19:29 -0700)]
remove unnecesary commented code
Jacob Lifshay [Thu, 29 Sep 2022 02:08:07 +0000 (19:08 -0700)]
add unofficial and comment2 fields to minor_31.csv
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 23:49:46 +0000 (00:49 +0100)]
srcstep
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 21:14:17 +0000 (22:14 +0100)]
rename iterators init function
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 21:04:16 +0000 (22:04 +0100)]
redundant comment
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 21:00:23 +0000 (22:00 +0100)]
split out svstate update in ISACaller
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 20:44:54 +0000 (21:44 +0100)]
move failfirst check to separate function in ISACaller
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 20:00:10 +0000 (21:00 +0100)]
new revision of dsld
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 18:33:48 +0000 (19:33 +0100)]
add double-sld pseudocode, first draft
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 18:33:00 +0000 (19:33 +0100)]
add limit argument to MASK() helper
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 18:04:06 +0000 (19:04 +0100)]
add Z23 shift-mode fields.txt
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 16:20:07 +0000 (17:20 +0100)]
bugfix reset remaps and get subvl early
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 13:34:21 +0000 (14:34 +0100)]
comments on horizontal-or
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 13:27:21 +0000 (14:27 +0100)]
make matrix horizontal-remap example more generic
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 13:18:42 +0000 (14:18 +0100)]
add horizontal-or-reduction example that thoroughly abuses the way
that Matrix REMAP works, ignoring the B Matrix entirely
Luke Kenneth Casson Leighton [Wed, 28 Sep 2022 13:11:55 +0000 (14:11 +0100)]
whoops VL incorrect in svshape markdown RTL for matrix REMAP
Jacob Lifshay [Wed, 28 Sep 2022 02:25:46 +0000 (19:25 -0700)]
extracting demo JPEG bitstream works
Luke Kenneth Casson Leighton [Tue, 27 Sep 2022 16:53:00 +0000 (17:53 +0100)]
add unpack predicated unit test
Luke Kenneth Casson Leighton [Tue, 27 Sep 2022 16:25:05 +0000 (17:25 +0100)]
hack to check skipping on predicate being all-zero.
HOWEVER... this will not work on sv.branches
Luke Kenneth Casson Leighton [Tue, 27 Sep 2022 15:40:32 +0000 (16:40 +0100)]
sort out predicate loop-skip on pack/unpack
Luke Kenneth Casson Leighton [Tue, 27 Sep 2022 14:39:18 +0000 (15:39 +0100)]
adapt loops to include predicate-mask skipping in ISACaller
currently not working, investigating (disabled for now)
Konstantinos Margaritis [Tue, 27 Sep 2022 10:23:13 +0000 (10:23 +0000)]
fix typo
Konstantinos Margaritis [Tue, 27 Sep 2022 10:08:09 +0000 (10:08 +0000)]
comment out more debug messages and reference C function
Konstantinos Margaritis [Tue, 27 Sep 2022 10:07:02 +0000 (10:07 +0000)]
comment out debug messages
Konstantinos Margaritis [Tue, 27 Sep 2022 10:04:49 +0000 (10:04 +0000)]
Working version of VP8 DCT4x4 in SVP64
Konstantinos Margaritis [Tue, 27 Sep 2022 10:03:12 +0000 (10:03 +0000)]
remove unused prototypes
Jacob Lifshay [Tue, 27 Sep 2022 04:05:38 +0000 (21:05 -0700)]
add WIP jpeg decoder demo
this includes a tiny test jpeg that's <2kB, so should be fine to be in git.
Jacob Lifshay [Mon, 26 Sep 2022 23:01:03 +0000 (16:01 -0700)]
add more tests and fix missing corner case
Jacob Lifshay [Mon, 26 Sep 2022 22:59:33 +0000 (15:59 -0700)]
pcdec.: change CR0.eq to be early-stop-needed to fit with data-dependent fail-first
Jacob Lifshay [Mon, 26 Sep 2022 22:20:13 +0000 (15:20 -0700)]
add checks for pcdec. once=1
Jacob Lifshay [Mon, 26 Sep 2022 21:50:34 +0000 (14:50 -0700)]
more cleanup after swapping RA/RB for pcdec.
Jacob Lifshay [Mon, 26 Sep 2022 21:48:55 +0000 (14:48 -0700)]
clean up after lkcl swapped RA/RB for pcdec.
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 21:44:21 +0000 (22:44 +0100)]
skipping on maskedout elements de-restricted when substep zero
makes predicate skipping work in pack mode
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 19:24:20 +0000 (20:24 +0100)]
add first predicate-mask test of pack/unpack
https://bugs.libre-soc.org/show_bug.cgi?id=871
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 18:55:38 +0000 (19:55 +0100)]
get pack/unpack tests to use sv.ori to copy sequence
01234567
https://bugs.libre-soc.org/show_bug.cgi?id=871
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 19:19:49 +0000 (20:19 +0100)]
finally got pack/unpack working
https://bugs.libre-soc.org/show_bug.cgi?id=871
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 17:45:52 +0000 (18:45 +0100)]
code-morph on loop-end detection in ISACaller
there is a bit of a problem in Pack/Unpack in that the end-of-loop
detection is overrunning.
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 16:14:26 +0000 (17:14 +0100)]
explicit test of src/dststep end-condition in ISACaller iterators
Luke Kenneth Casson Leighton [Mon, 26 Sep 2022 11:03:07 +0000 (12:03 +0100)]
swap RA/RB so that RA|0 is used not RB|0
RB|0 would need a new flag to be passed down to ALUs in HDL
Konstantinos Margaritis [Sun, 25 Sep 2022 17:11:58 +0000 (17:11 +0000)]
fix variables in memory copy
Konstantinos Margaritis [Sun, 25 Sep 2022 16:56:31 +0000 (16:56 +0000)]
comment out debug dumps
Konstantinos Margaritis [Sun, 25 Sep 2022 16:56:08 +0000 (16:56 +0000)]
Fixed SVP64 implentation
Konstantinos Margaritis [Sun, 25 Sep 2022 16:55:43 +0000 (16:55 +0000)]
remove functions as not relevant for this test
Konstantinos Margaritis [Sun, 25 Sep 2022 16:55:15 +0000 (16:55 +0000)]
clean up, convert from uint64 for python due to rounding in Python, fix copying functions
Konstantinos Margaritis [Sun, 25 Sep 2022 16:54:22 +0000 (16:54 +0000)]
add prototypes
Konstantinos Margaritis [Sun, 25 Sep 2022 16:54:04 +0000 (16:54 +0000)]
fix finalize function, clean ups
Konstantinos Margaritis [Sun, 25 Sep 2022 16:53:22 +0000 (16:53 +0000)]
remove unimplemented tests, lower iterations
Konstantinos Margaritis [Sun, 25 Sep 2022 16:52:50 +0000 (16:52 +0000)]
use sv.maddled/mr, cleanup
Konstantinos Margaritis [Sat, 24 Sep 2022 19:56:09 +0000 (19:56 +0000)]
add header
Dmitry Selyutin [Sun, 25 Sep 2022 16:03:30 +0000 (19:03 +0300)]
test_pysvp64dis: sort ld/st idx stride specs
Dmitry Selyutin [Sun, 25 Sep 2022 16:02:58 +0000 (19:02 +0300)]
power_insn: always provide els for ld/st idx stride
Dmitry Selyutin [Sun, 25 Sep 2022 16:02:00 +0000 (19:02 +0300)]
pysvp64asm: fix VLi attribute access