Dmitry Selyutin [Wed, 13 Sep 2023 20:50:38 +0000 (23:50 +0300)]
libopid: cross-check assembly
Dmitry Selyutin [Sun, 10 Sep 2023 21:03:25 +0000 (00:03 +0300)]
libopid: introduce assembly sketch
Dmitry Selyutin [Wed, 13 Sep 2023 16:52:51 +0000 (19:52 +0300)]
libopid: refactor opcodes; update naming
Dmitry Selyutin [Mon, 11 Sep 2023 18:56:15 +0000 (21:56 +0300)]
libopid: refactor disassembly API
Dmitry Selyutin [Mon, 11 Sep 2023 18:44:36 +0000 (21:44 +0300)]
libopid: expand operands and opcodes
Dmitry Selyutin [Mon, 11 Sep 2023 18:42:21 +0000 (21:42 +0300)]
libopid: refactor operands disassembly
Dmitry Selyutin [Sun, 10 Sep 2023 21:14:49 +0000 (00:14 +0300)]
libopid: fix build dependencies
Dmitry Selyutin [Sun, 10 Sep 2023 19:41:40 +0000 (22:41 +0300)]
libopid: decouple static code
Dmitry Selyutin [Wed, 13 Sep 2023 17:04:03 +0000 (20:04 +0300)]
insndb/core: refactor operands traversal
Dmitry Selyutin [Sat, 9 Sep 2023 18:18:04 +0000 (21:18 +0300)]
libopid: provide tests
Dmitry Selyutin [Sat, 9 Sep 2023 18:17:08 +0000 (21:17 +0300)]
libopid: mention object files in ingored
Dmitry Selyutin [Sat, 9 Sep 2023 18:16:17 +0000 (21:16 +0300)]
libopid: fix nonzero operand
Dmitry Selyutin [Sat, 9 Sep 2023 17:46:15 +0000 (20:46 +0300)]
insndb/core: introduce pair operand base class
Dmitry Selyutin [Fri, 8 Sep 2023 11:28:31 +0000 (14:28 +0300)]
insndb/core: fix DX operand
Dmitry Selyutin [Fri, 8 Sep 2023 06:47:31 +0000 (09:47 +0300)]
libsvp64: rename into libopid
Dmitry Selyutin [Thu, 7 Sep 2023 20:42:19 +0000 (23:42 +0300)]
libsvp64: simplify operand traversal
Dmitry Selyutin [Thu, 7 Sep 2023 20:14:27 +0000 (23:14 +0300)]
libsvp64: support address operands
Dmitry Selyutin [Thu, 7 Sep 2023 20:02:57 +0000 (23:02 +0300)]
libsvp64: support non-zero operands
Dmitry Selyutin [Thu, 7 Sep 2023 19:57:39 +0000 (22:57 +0300)]
libsvp64: refactor operands generation
Dmitry Selyutin [Thu, 7 Sep 2023 19:40:37 +0000 (22:40 +0300)]
libsvp64: support CR operands
Dmitry Selyutin [Thu, 7 Sep 2023 19:29:46 +0000 (22:29 +0300)]
libsvp64: support paired operands
Dmitry Selyutin [Thu, 7 Sep 2023 19:08:47 +0000 (22:08 +0300)]
libsvp64: support FPR operands
Dmitry Selyutin [Thu, 7 Sep 2023 19:07:55 +0000 (22:07 +0300)]
libsvp64: support GPR operands
Dmitry Selyutin [Thu, 7 Sep 2023 19:05:51 +0000 (22:05 +0300)]
libsvp64: support operands flags
Dmitry Selyutin [Thu, 7 Sep 2023 18:44:29 +0000 (21:44 +0300)]
libsvp64: update operands types
Dmitry Selyutin [Wed, 6 Sep 2023 19:22:30 +0000 (22:22 +0300)]
libsvp64: introduce code generator
Dmitry Selyutin [Wed, 6 Sep 2023 18:55:17 +0000 (21:55 +0300)]
libsvp64: introduce Makefile sketch
Dmitry Selyutin [Wed, 6 Sep 2023 18:54:40 +0000 (21:54 +0300)]
libsvp64: introduce API sketch
Dmitry Selyutin [Wed, 6 Sep 2023 18:45:00 +0000 (21:45 +0300)]
libsvp64: ignore generated files
Dmitry Selyutin [Sun, 3 Sep 2023 19:09:39 +0000 (22:09 +0300)]
insndb/core: support operands comparison
Dmitry Selyutin [Sun, 3 Sep 2023 06:38:10 +0000 (09:38 +0300)]
insndb/core: walk over opcode value and mask
Dmitry Selyutin [Sun, 3 Sep 2023 06:36:09 +0000 (09:36 +0300)]
insndb/core: walk over record opcodes
Dmitry Selyutin [Sat, 2 Sep 2023 18:33:02 +0000 (21:33 +0300)]
insndb/core: walk over record opcodes
Dmitry Selyutin [Sat, 2 Sep 2023 16:39:03 +0000 (19:39 +0300)]
insndb/core: walk over individual operands
Andrey Miroshnikov [Sun, 10 Sep 2023 17:59:10 +0000 (17:59 +0000)]
pypowersim_wrapper_common.h: Home path no longer hard-coded.
chacha20/Makefile: Create bin dir if doesn't exist.
Andrey Miroshnikov [Thu, 31 Aug 2023 10:32:05 +0000 (10:32 +0000)]
inorder.py: Moved return statements to new line.
Andrey Miroshnikov [Tue, 22 Aug 2023 09:14:24 +0000 (09:14 +0000)]
inorder.py: Invert checks to reduce indentation.
Andrey Miroshnikov [Tue, 22 Aug 2023 09:10:24 +0000 (09:10 +0000)]
inorder.py: Reverse pipeline processing order.
Andrey Miroshnikov [Tue, 22 Aug 2023 08:54:43 +0000 (08:54 +0000)]
Revert "inorder.py: Use insn_trace more consistently."
This reverts commit
755b918d6dad6fc2d1a2a75beb1fdd39223679c7.
Andrey Miroshnikov [Mon, 21 Aug 2023 16:38:37 +0000 (16:38 +0000)]
inorder.py: Use insn_trace more consistently.
Andrey Miroshnikov [Mon, 21 Aug 2023 16:35:29 +0000 (16:35 +0000)]
inorder.py: Enough additions and fixes to get the test case to run all the way.
Jacob Lifshay [Tue, 1 Aug 2023 04:52:56 +0000 (21:52 -0700)]
don't warn for directories
Jacob Lifshay [Tue, 1 Aug 2023 04:49:57 +0000 (21:49 -0700)]
ignore indented comments too
Jacob Lifshay [Tue, 1 Aug 2023 02:52:05 +0000 (19:52 -0700)]
demo moving pseudocode to separate file
Jacob Lifshay [Tue, 1 Aug 2023 02:44:00 +0000 (19:44 -0700)]
add support for pseudocode being a [[!inline]] directive
Jacob Lifshay [Mon, 31 Jul 2023 01:31:51 +0000 (18:31 -0700)]
put reason for checking for old files in error msg
Jacob Lifshay [Mon, 31 Jul 2023 01:23:01 +0000 (18:23 -0700)]
move generated files to .../decoder/isa/generated
add code to check for old generated files and prompt you to remove
them, to avoid accidentally commiting them.
doesn't move all.py so we don't need to change all the imports
Konstantinos Margaritis [Tue, 25 Jul 2023 08:40:38 +0000 (08:40 +0000)]
split testcase for separate maddrs/msubrs
Jacob Lifshay [Tue, 25 Jul 2023 03:34:22 +0000 (20:34 -0700)]
fix set[n]bc[r]
Jacob Lifshay [Tue, 25 Jul 2023 03:33:34 +0000 (20:33 -0700)]
don't convert CR[BI] to CR.BI
Jacob Lifshay [Tue, 25 Jul 2023 02:51:46 +0000 (19:51 -0700)]
add set[n]bc[r] -- tests broken
Jacob Lifshay [Tue, 25 Jul 2023 02:50:12 +0000 (19:50 -0700)]
add missing test_caller_cr.py
Jacob Lifshay [Tue, 25 Jul 2023 02:10:37 +0000 (19:10 -0700)]
format code
Jacob Lifshay [Tue, 25 Jul 2023 01:54:45 +0000 (18:54 -0700)]
restore use of ? : operator in bfp_ROUND_TO_BFP32/64 pseudocode
this changes it to match the PowerISA spec. better
Jacob Lifshay [Tue, 25 Jul 2023 01:42:27 +0000 (18:42 -0700)]
add support for C conditional operator
its used by setbc's pseudocode and by the bfp_* functions
Luke Kenneth Casson Leighton [Sat, 22 Jul 2023 11:35:51 +0000 (12:35 +0100)]
shortened variable names,
used itertools.product to get indentation down
used temporary variables rather than unnatural-looking indentation
replaced PHP-style string formatting with project-standard "%" format
Jacob Lifshay [Sat, 22 Jul 2023 01:47:34 +0000 (18:47 -0700)]
add SVP64 test for byte reverse insns
Jacob Lifshay [Sat, 22 Jul 2023 01:46:17 +0000 (18:46 -0700)]
add SVP64 tests for cfuged, cntlzdm, cnttzdm, pdepd, and pextd
Jacob Lifshay [Sat, 22 Jul 2023 00:53:19 +0000 (17:53 -0700)]
format code
Jacob Lifshay [Sat, 22 Jul 2023 00:34:24 +0000 (17:34 -0700)]
add pdepd/pextd
Jacob Lifshay [Sat, 22 Jul 2023 00:33:38 +0000 (17:33 -0700)]
add cfuged
Jacob Lifshay [Sat, 22 Jul 2023 00:31:04 +0000 (17:31 -0700)]
add cntlzdm/cnttzdm
Jacob Lifshay [Fri, 21 Jul 2023 23:55:41 +0000 (16:55 -0700)]
format code
Konstantinos Margaritis [Fri, 21 Jul 2023 14:05:54 +0000 (14:05 +0000)]
Moved maddsubrs/maddrs/msubrs instructions to separate files
As per Jacob's suggestion, simplified maddsubrs by removing masks
and fixing overflow problems.
Jacob Lifshay [Thu, 20 Jul 2023 22:42:25 +0000 (15:42 -0700)]
add much more exhaustive maddrs unit tests
Jacob Lifshay [Thu, 20 Jul 2023 22:19:19 +0000 (15:19 -0700)]
add much more exhaustive maddsubrs unit tests
Jacob Lifshay [Thu, 20 Jul 2023 22:18:18 +0000 (15:18 -0700)]
format code
Konstantinos Margaritis [Thu, 20 Jul 2023 15:51:39 +0000 (15:51 +0000)]
Fix failing cases, all tests pass now
Jacob Lifshay [Thu, 20 Jul 2023 01:00:58 +0000 (18:00 -0700)]
add byte reverse instructions from PowerISA v3.1B
Jacob Lifshay [Thu, 20 Jul 2023 00:59:32 +0000 (17:59 -0700)]
support official instructions that need .long format
Konstantinos Margaritis [Wed, 19 Jul 2023 17:07:43 +0000 (17:07 +0000)]
revert to correct value
Konstantinos Margaritis [Wed, 19 Jul 2023 16:49:51 +0000 (16:49 +0000)]
Unify XLEN =64 special case in the new code
Konstantinos Margaritis [Wed, 19 Jul 2023 13:41:31 +0000 (13:41 +0000)]
Fix XLEN != 64 cases where maddsubrs fails
Jacob Lifshay [Wed, 19 Jul 2023 03:01:30 +0000 (20:01 -0700)]
add fminmax tests with corresponding pseudocode fixes
Jacob Lifshay [Mon, 17 Jul 2023 22:49:17 +0000 (15:49 -0700)]
update to use new fminmax instruction
Luke Kenneth Casson Leighton [Sat, 24 Jun 2023 10:03:19 +0000 (11:03 +0100)]
leeetle bit excessive on the log of SPRs...
Dmitry Selyutin [Fri, 23 Jun 2023 08:36:19 +0000 (11:36 +0300)]
insndb/db: update traversal algorithm
Dmitry Selyutin [Thu, 22 Jun 2023 20:22:38 +0000 (23:22 +0300)]
insndb/db: introduce section command
Dmitry Selyutin [Thu, 22 Jun 2023 19:24:40 +0000 (22:24 +0300)]
insndb/core: hide section priority type
Dmitry Selyutin [Thu, 22 Jun 2023 19:24:07 +0000 (22:24 +0300)]
insndb/core: hide section opcode type
Dmitry Selyutin [Thu, 22 Jun 2023 19:23:00 +0000 (22:23 +0300)]
insndb/core: hide section bitsel type
Dmitry Selyutin [Thu, 22 Jun 2023 19:16:51 +0000 (22:16 +0300)]
insndb/core: introduce section path type
Dmitry Selyutin [Thu, 22 Jun 2023 19:10:56 +0000 (22:10 +0300)]
insndb/db: fix SVP64 instruction check
Dmitry Selyutin [Thu, 22 Jun 2023 19:09:07 +0000 (22:09 +0300)]
insndb/db: introduce etype command
Dmitry Selyutin [Thu, 22 Jun 2023 19:07:59 +0000 (22:07 +0300)]
power_enum: modify SVPtype stringification
Dmitry Selyutin [Thu, 22 Jun 2023 18:57:48 +0000 (21:57 +0300)]
insndb/db: introduce ptype command
Jacob Lifshay [Fri, 23 Jun 2023 03:10:45 +0000 (20:10 -0700)]
rename fmv[ft]g*/fcvt[ft]g* to m[tf]fpr*/c[tf]fpr*
Jacob Lifshay [Fri, 23 Jun 2023 02:58:04 +0000 (19:58 -0700)]
use the CSV "CR out" column to compute which mode to use for Rc=1
this works much better than trying to bodge it by checking if the
instruction name meets some pattern
Dmitry Selyutin [Thu, 22 Jun 2023 21:26:30 +0000 (00:26 +0300)]
.gitlab-ci.yml: introduce mdis dependency
Dmitry Selyutin [Thu, 22 Jun 2023 18:43:03 +0000 (21:43 +0300)]
insndb/db: introduce selectors command
Dmitry Selyutin [Thu, 22 Jun 2023 18:31:59 +0000 (21:31 +0300)]
insndb/db: refactor extras command
Dmitry Selyutin [Thu, 22 Jun 2023 15:32:18 +0000 (18:32 +0300)]
insndb/core: introduce basic walker
Dmitry Selyutin [Thu, 22 Jun 2023 15:23:28 +0000 (18:23 +0300)]
insndb/core: switch to mdis
Jacob Lifshay [Sat, 17 Jun 2023 00:52:07 +0000 (17:52 -0700)]
remove Rc=1 from fmvfg[s]
Jacob Lifshay [Sat, 17 Jun 2023 00:40:01 +0000 (17:40 -0700)]
sv_analysis: raise error instead of outputting TODO
Jacob Lifshay [Fri, 16 Jun 2023 03:29:29 +0000 (20:29 -0700)]
add sv.fmv/sv.fcvt tests
Jacob Lifshay [Fri, 16 Jun 2023 01:41:18 +0000 (18:41 -0700)]
add fmvfg[s] and fmvtg[s][.] tests
Jacob Lifshay [Wed, 14 Jun 2023 05:56:10 +0000 (22:56 -0700)]
deepcopy is really slow and unnecessary here
Jacob Lifshay [Wed, 14 Jun 2023 05:55:49 +0000 (22:55 -0700)]
speed up StateSPRs.__init__
Jacob Lifshay [Wed, 14 Jun 2023 05:55:20 +0000 (22:55 -0700)]
cache FPSCR computation since it's slow