openpower-isa.git
17 months agobitmanip.mdwn: add missing Rc static operand
Dmitry Selyutin [Tue, 24 Jan 2023 13:22:13 +0000 (16:22 +0300)]
bitmanip.mdwn: add missing Rc static operand

17 months agosvp64_utf_8_validation.py: convert labels to addresses
Dmitry Selyutin [Sun, 22 Jan 2023 17:46:58 +0000 (20:46 +0300)]
svp64_utf_8_validation.py: convert labels to addresses

17 months agopower_insn: fix dst/src duplication detection
Dmitry Selyutin [Sun, 22 Jan 2023 00:32:47 +0000 (03:32 +0300)]
power_insn: fix dst/src duplication detection

17 months agopower_insn: canonicalize SVP64 insn name
Dmitry Selyutin [Sat, 21 Jan 2023 22:06:23 +0000 (01:06 +0300)]
power_insn: canonicalize SVP64 insn name

18 months agopower_insn: hack CR assembly
Dmitry Selyutin [Sat, 21 Jan 2023 18:58:22 +0000 (21:58 +0300)]
power_insn: hack CR assembly

18 months agopower_insn: override bogus FMA instructions
Dmitry Selyutin [Fri, 20 Jan 2023 16:07:27 +0000 (19:07 +0300)]
power_insn: override bogus FMA instructions

18 months agopower_insn: refactor operands; simplify lookups
Dmitry Selyutin [Thu, 19 Jan 2023 21:33:31 +0000 (00:33 +0300)]
power_insn: refactor operands; simplify lookups

18 months agopysvp64asm: drop obsolete code
Dmitry Selyutin [Thu, 19 Jan 2023 04:25:01 +0000 (07:25 +0300)]
pysvp64asm: drop obsolete code

18 months agopower_insn: fix paired registers disassembly
Dmitry Selyutin [Wed, 18 Jan 2023 19:58:00 +0000 (22:58 +0300)]
power_insn: fix paired registers disassembly

18 months agopower_insn: support legacy style
Dmitry Selyutin [Mon, 16 Jan 2023 19:10:44 +0000 (22:10 +0300)]
power_insn: support legacy style

18 months agopower_insn: major refactoring and cleanup
Dmitry Selyutin [Mon, 19 Dec 2022 22:34:00 +0000 (01:34 +0300)]
power_insn: major refactoring and cleanup

18 months agopysvp64dis: do not create temporary bytes upon load
Dmitry Selyutin [Sun, 15 Jan 2023 08:35:18 +0000 (11:35 +0300)]
pysvp64dis: do not create temporary bytes upon load

18 months agopower_enums: support paired registers
Dmitry Selyutin [Sun, 15 Jan 2023 08:32:38 +0000 (11:32 +0300)]
power_enums: support paired registers

18 months agopower_fields: support assignment to same class instance
Dmitry Selyutin [Fri, 6 Jan 2023 17:22:53 +0000 (20:22 +0300)]
power_fields: support assignment to same class instance

18 months agopower_enums: fix CR register types
Dmitry Selyutin [Sun, 18 Dec 2022 20:16:28 +0000 (23:16 +0300)]
power_enums: fix CR register types

18 months agopower_enums: fix RC1 predicates conversion
Dmitry Selyutin [Sun, 18 Dec 2022 19:13:20 +0000 (22:13 +0300)]
power_enums: fix RC1 predicates conversion

18 months agopysvp64asm: avoid empty fields
Dmitry Selyutin [Sun, 18 Dec 2022 18:36:09 +0000 (21:36 +0300)]
pysvp64asm: avoid empty fields

18 months agoisatables: split dsld/dsrd Rc versions
Dmitry Selyutin [Sun, 18 Dec 2022 18:35:26 +0000 (21:35 +0300)]
isatables: split dsld/dsrd Rc versions

18 months agopower_insn: fix signed operands assembly
Dmitry Selyutin [Tue, 13 Dec 2022 23:32:43 +0000 (02:32 +0300)]
power_insn: fix signed operands assembly

18 months agopower_insn: fix arguments conversion
Dmitry Selyutin [Tue, 13 Dec 2022 19:47:23 +0000 (22:47 +0300)]
power_insn: fix arguments conversion

18 months agopower_insn: fix specifiers errors
Dmitry Selyutin [Tue, 13 Dec 2022 19:46:14 +0000 (22:46 +0300)]
power_insn: fix specifiers errors

18 months agopower_insn: common records lookup
Dmitry Selyutin [Tue, 13 Dec 2022 09:03:52 +0000 (12:03 +0300)]
power_insn: common records lookup

18 months agopower_insn: consider EXTS operand as signed
Dmitry Selyutin [Mon, 12 Dec 2022 21:55:32 +0000 (00:55 +0300)]
power_insn: consider EXTS operand as signed

18 months agopower_insn: discard SVP64 record for word instructions
Dmitry Selyutin [Mon, 12 Dec 2022 19:42:49 +0000 (22:42 +0300)]
power_insn: discard SVP64 record for word instructions

18 months agopower_insn: support pi/lf specifiers
Dmitry Selyutin [Sun, 11 Dec 2022 16:53:25 +0000 (19:53 +0300)]
power_insn: support pi/lf specifiers

18 months agopower_insn: support ctr/cti specifiers
Dmitry Selyutin [Mon, 21 Nov 2022 17:58:15 +0000 (20:58 +0300)]
power_insn: support ctr/cti specifiers

18 months agopower_insn: support vs/vsi/vsb/vsbi specifiers
Dmitry Selyutin [Mon, 21 Nov 2022 17:54:52 +0000 (20:54 +0300)]
power_insn: support vs/vsi/vsb/vsbi specifiers

18 months agopower_insn: support lru specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:36:57 +0000 (20:36 +0300)]
power_insn: support lru specifier

18 months agopower_insn: support slu specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:36:29 +0000 (20:36 +0300)]
power_insn: support slu specifier

18 months agopower_insn: support sl specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:35:24 +0000 (20:35 +0300)]
power_insn: support sl specifier

18 months agopower_insn: support snz specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:34:11 +0000 (20:34 +0300)]
power_insn: support snz specifier

18 months agopower_insn: support all specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:33:22 +0000 (20:33 +0300)]
power_insn: support all specifier

18 months agopower_insn: support crm specifier
Dmitry Selyutin [Mon, 21 Nov 2022 17:32:54 +0000 (20:32 +0300)]
power_insn: support crm specifier

18 months agopower_insn: support mr/mrr specifiers
Dmitry Selyutin [Mon, 21 Nov 2022 16:48:26 +0000 (19:48 +0300)]
power_insn: support mr/mrr specifiers

18 months agopower_insn: support sats/satu specifiers
Dmitry Selyutin [Mon, 21 Nov 2022 16:34:06 +0000 (19:34 +0300)]
power_insn: support sats/satu specifiers

18 months agopower_insn: simplify assembly validation
Dmitry Selyutin [Mon, 21 Nov 2022 16:12:13 +0000 (19:12 +0300)]
power_insn: simplify assembly validation

18 months agopower_insn: support sea specifier assembly
Dmitry Selyutin [Sun, 20 Nov 2022 14:49:44 +0000 (17:49 +0300)]
power_insn: support sea specifier assembly

18 months agopower_insn: support els specifier assembly
Dmitry Selyutin [Sun, 20 Nov 2022 14:17:32 +0000 (17:17 +0300)]
power_insn: support els specifier assembly

18 months agopower_fields: avoid unknown attributes
Dmitry Selyutin [Sun, 20 Nov 2022 13:56:33 +0000 (16:56 +0300)]
power_fields: avoid unknown attributes

18 months agopower_insn: fix combined zz disassembly
Dmitry Selyutin [Wed, 16 Nov 2022 22:41:55 +0000 (01:41 +0300)]
power_insn: fix combined zz disassembly

18 months agopower_insn: refactor w/sw/dw specifiers
Dmitry Selyutin [Wed, 16 Nov 2022 22:03:20 +0000 (01:03 +0300)]
power_insn: refactor w/sw/dw specifiers

18 months agopower_insn: support zz/sz/dz specifiers
Dmitry Selyutin [Wed, 16 Nov 2022 21:43:14 +0000 (00:43 +0300)]
power_insn: support zz/sz/dz specifiers

18 months agopower_enums: unify predicates classes
Dmitry Selyutin [Wed, 16 Nov 2022 19:47:40 +0000 (22:47 +0300)]
power_enums: unify predicates classes

18 months agopower_enums: deprecate CRType enum
Dmitry Selyutin [Wed, 16 Nov 2022 19:47:40 +0000 (22:47 +0300)]
power_enums: deprecate CRType enum

18 months agopower_enums: clean code
Dmitry Selyutin [Wed, 16 Nov 2022 19:47:40 +0000 (22:47 +0300)]
power_enums: clean code

18 months agopower_enums: support 8/16/32 in SVP64Width
Dmitry Selyutin [Wed, 16 Nov 2022 19:47:40 +0000 (22:47 +0300)]
power_enums: support 8/16/32 in SVP64Width

18 months agopower_insn: switch to SVP64SubVL enum
Dmitry Selyutin [Tue, 15 Nov 2022 20:56:13 +0000 (23:56 +0300)]
power_insn: switch to SVP64SubVL enum

18 months agopower_enums: support subvl conversions
Dmitry Selyutin [Tue, 15 Nov 2022 20:04:53 +0000 (23:04 +0300)]
power_enums: support subvl conversions

18 months agopower_insn: validate predicates masks
Dmitry Selyutin [Tue, 15 Nov 2022 19:57:36 +0000 (22:57 +0300)]
power_insn: validate predicates masks

18 months agopower_enums: support predicate type property
Dmitry Selyutin [Tue, 15 Nov 2022 19:41:13 +0000 (22:41 +0300)]
power_enums: support predicate type property

18 months agopower_insn: introduce validation stubs
Dmitry Selyutin [Tue, 15 Nov 2022 19:25:10 +0000 (22:25 +0300)]
power_insn: introduce validation stubs

18 months agopower_insn: support predicates masks
Dmitry Selyutin [Tue, 15 Nov 2022 15:49:23 +0000 (18:49 +0300)]
power_insn: support predicates masks

18 months agopower_insn: support failfirst/predresult
Dmitry Selyutin [Sun, 13 Nov 2022 21:04:09 +0000 (00:04 +0300)]
power_insn: support failfirst/predresult

18 months agopower_enums: support predicates
Dmitry Selyutin [Mon, 14 Nov 2022 19:17:43 +0000 (22:17 +0300)]
power_enums: support predicates

18 months agopower_insn: support subvector length specifiers
Dmitry Selyutin [Fri, 11 Nov 2022 19:24:00 +0000 (22:24 +0300)]
power_insn: support subvector length specifiers

18 months agopower_insn: support width specifier
Dmitry Selyutin [Fri, 11 Nov 2022 17:20:23 +0000 (20:20 +0300)]
power_insn: support width specifier

18 months agopower_insn: fix Rc record property
Dmitry Selyutin [Sun, 13 Nov 2022 21:10:47 +0000 (00:10 +0300)]
power_insn: fix Rc record property

18 months agopysvp64asm: allow insndb-based assembly
Dmitry Selyutin [Sun, 13 Nov 2022 21:07:01 +0000 (00:07 +0300)]
pysvp64asm: allow insndb-based assembly

18 months agopower_enums: clean CR definitions
Dmitry Selyutin [Sun, 13 Nov 2022 18:52:23 +0000 (21:52 +0300)]
power_enums: clean CR definitions

18 months agopower_fields: support field bits assignment
Dmitry Selyutin [Sun, 13 Nov 2022 14:26:06 +0000 (17:26 +0300)]
power_fields: support field bits assignment

18 months agopower_insn: support empty arguments
Dmitry Selyutin [Fri, 11 Nov 2022 17:05:08 +0000 (20:05 +0300)]
power_insn: support empty arguments

18 months agopower_insn: support CR operands disassembly
Dmitry Selyutin [Tue, 8 Nov 2022 20:26:12 +0000 (23:26 +0300)]
power_insn: support CR operands disassembly

18 months agopower_insn: fix opcodes generation (again)
Dmitry Selyutin [Tue, 8 Nov 2022 18:56:38 +0000 (21:56 +0300)]
power_insn: fix opcodes generation (again)

18 months agopower_insn: simplify spans and bytes conversion
Dmitry Selyutin [Mon, 7 Nov 2022 21:50:07 +0000 (00:50 +0300)]
power_insn: simplify spans and bytes conversion

18 months agopower_insn: fix operands iteration
Dmitry Selyutin [Mon, 7 Nov 2022 19:29:34 +0000 (22:29 +0300)]
power_insn: fix operands iteration

18 months agopower_insn: support CR operands assembly
Dmitry Selyutin [Mon, 7 Nov 2022 18:54:35 +0000 (21:54 +0300)]
power_insn: support CR operands assembly

18 months agopower_insn: refactor extandable operands assembly
Dmitry Selyutin [Mon, 7 Nov 2022 18:22:05 +0000 (21:22 +0300)]
power_insn: refactor extandable operands assembly

18 months agopower_insn: remap GPR and FPR operands
Dmitry Selyutin [Mon, 7 Nov 2022 18:16:23 +0000 (21:16 +0300)]
power_insn: remap GPR and FPR operands

18 months agopower_insn: unify GPR and FPR assembly
Dmitry Selyutin [Sun, 6 Nov 2022 17:06:41 +0000 (20:06 +0300)]
power_insn: unify GPR and FPR assembly

18 months agopower_insn: provide SVP64 assembly stub
Dmitry Selyutin [Sun, 6 Nov 2022 16:50:14 +0000 (19:50 +0300)]
power_insn: provide SVP64 assembly stub

18 months agopysvp64asm: deprecate custom_insn helper
Dmitry Selyutin [Sun, 6 Nov 2022 09:30:40 +0000 (12:30 +0300)]
pysvp64asm: deprecate custom_insn helper

18 months agopower_insn: discard overlaps for dynamic operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: discard overlaps for dynamic operands

18 months agopower_insn: fix DOperandDX span
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: fix DOperandDX span

18 months agopower_insn: fix XO static operand
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: fix XO static operand

18 months agopower_insn: hide records repr from operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: hide records repr from operands

18 months agopower_insn: sort opcodes by sections
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: sort opcodes by sections

18 months agopower_insn: fix repr for opcode mask and value
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: fix repr for opcode mask and value

18 months agopower_insn: support tables priorities
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: support tables priorities

18 months agopower_insn: provide operands helpers
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: provide operands helpers

18 months agopower_insn: cache operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: cache operands

18 months agopower_insn: deprecate operand record argument
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: deprecate operand record argument

18 months agopower_insn: simplify word instruction assembly
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: simplify word instruction assembly

18 months agopower_insn: introduce PO and XO static operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: introduce PO and XO static operands

18 months agopower_insn: introduce record operands helpers
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: introduce record operands helpers

18 months agopower_insn: convert spans into properties
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: convert spans into properties

18 months agopower_insn: bind records to operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: bind records to operands

18 months agopower_insn: postpone operands initialization
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: postpone operands initialization

18 months agopower_insn: ensure operands are always dataclasses
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: ensure operands are always dataclasses

18 months agopower_insn: provide basics for insndb assembly
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: provide basics for insndb assembly

18 months agopower_insn: return None for unknown insn names
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: return None for unknown insn names

18 months agopower_insn: introduce signed immediate operand class
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: introduce signed immediate operand class

18 months agopower_insn: rename register operand class
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: rename register operand class

18 months agopower_insn: clean and simplify EXTS operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: clean and simplify EXTS operands

18 months agopower_insn: support FPR operands assembly
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: support FPR operands assembly

18 months agopower_insn: support GPR operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: support GPR operands

18 months agopower_insn: support non-zero operands
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: support non-zero operands

18 months agopower_insn: allow sign only for SignedOperand
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: allow sign only for SignedOperand

18 months agopower_insn: add support for a trivial assembly
Dmitry Selyutin [Sun, 6 Nov 2022 09:29:55 +0000 (12:29 +0300)]
power_insn: add support for a trivial assembly

18 months agoadd INSNDB=true test pass to .gitlab-ci.yml
Jacob Lifshay [Mon, 12 Dec 2022 21:01:46 +0000 (13:01 -0800)]
add INSNDB=true test pass to .gitlab-ci.yml

18 months agocorrect name for Mem test function
Luke Kenneth Casson Leighton [Sun, 1 Jan 2023 23:37:15 +0000 (23:37 +0000)]
correct name for Mem test function