openpower-isa.git
3 years agoadd svp64 assembler "processor" commandline for replacing svp64
Luke Kenneth Casson Leighton [Sun, 23 May 2021 21:06:28 +0000 (22:06 +0100)]
add svp64 assembler "processor" commandline for replacing svp64
with prefix-plus-v3.0b asm

3 years agoGive a trace name for each exception type
Cesar Strauss [Sun, 23 May 2021 18:53:51 +0000 (15:53 -0300)]
Give a trace name for each exception type

This helps to identify them in GTKWave for debugging.

3 years agoAdd new generated files to .gitignore
Cesar Strauss [Sat, 22 May 2021 21:22:44 +0000 (18:22 -0300)]
Add new generated files to .gitignore

3 years agoadd demo --load option to pypowersim
Luke Kenneth Casson Leighton [Fri, 21 May 2021 17:34:42 +0000 (18:34 +0100)]
add demo --load option to pypowersim

3 years agotest with default godbolt.org loop example, slightly modified
Luke Kenneth Casson Leighton [Fri, 21 May 2021 14:19:39 +0000 (15:19 +0100)]
test with default godbolt.org loop example, slightly modified
to run attn in order to halt

3 years agoadd GPRs to pypowersim demo
Luke Kenneth Casson Leighton [Fri, 21 May 2021 14:08:39 +0000 (15:08 +0100)]
add GPRs to pypowersim demo

3 years agoreturn register values from GPR.dump in ISACaller
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:57:11 +0000 (14:57 +0100)]
return register values from GPR.dump in ISACaller

3 years agoreturn dump of SPRs (to be used for saving, later)
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:54:45 +0000 (14:54 +0100)]
return dump of SPRs (to be used for saving, later)

3 years agoadd dump of SPRs to pypowersim
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:50:58 +0000 (14:50 +0100)]
add dump of SPRs to pypowersim

3 years agoadd testloop.s
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:39:46 +0000 (14:39 +0100)]
add testloop.s

3 years agoadd first pypowersim example
Luke Kenneth Casson Leighton [Fri, 21 May 2021 12:27:53 +0000 (13:27 +0100)]
add first pypowersim example

3 years agoadd option to run without a disassembly listing to ISACaller
Luke Kenneth Casson Leighton [Fri, 21 May 2021 12:25:34 +0000 (13:25 +0100)]
add option to run without a disassembly listing to ISACaller

3 years agoadd pypowersim to commands installed
Luke Kenneth Casson Leighton [Fri, 21 May 2021 12:10:17 +0000 (13:10 +0100)]
add pypowersim to commands installed

3 years agoadd first command-line version of ISACaller
Luke Kenneth Casson Leighton [Fri, 21 May 2021 11:58:25 +0000 (12:58 +0100)]
add first command-line version of ISACaller

3 years agoonly place underscore in front of index if it is a GPR or FPR
Luke Kenneth Casson Leighton [Thu, 20 May 2021 22:02:38 +0000 (23:02 +0100)]
only place underscore in front of index if it is a GPR or FPR

3 years agoswitch over to log function in SelectableInt
Luke Kenneth Casson Leighton [Wed, 19 May 2021 14:07:24 +0000 (15:07 +0100)]
switch over to log function in SelectableInt

3 years agodocument test_fp_single_ldst
Luke Kenneth Casson Leighton [Wed, 19 May 2021 14:04:25 +0000 (15:04 +0100)]
document test_fp_single_ldst

3 years agore-enable other SVP64 FP tests
Luke Kenneth Casson Leighton [Wed, 19 May 2021 13:41:44 +0000 (14:41 +0100)]
re-enable other SVP64 FP tests

3 years agocomments for SVP64 ASM LD/ST-with-update duplicate RA
Luke Kenneth Casson Leighton [Wed, 19 May 2021 13:40:36 +0000 (14:40 +0100)]
comments for SVP64 ASM LD/ST-with-update duplicate RA

3 years agoadd silent log debug option, if SILENCELOG env var is set, no debug output
Luke Kenneth Casson Leighton [Wed, 19 May 2021 13:35:02 +0000 (14:35 +0100)]
add silent log debug option, if SILENCELOG env var is set, no debug output

3 years agoresolve merge conflicts, effectively reverting "verbose" setting
Luke Kenneth Casson Leighton [Wed, 19 May 2021 13:19:11 +0000 (14:19 +0100)]
resolve merge conflicts, effectively reverting "verbose" setting
because it's critically essential at this stage

../openpower/isatables/

update SVP64 CSV tables

3 years agocorrections to stf/lf RA_OR_ZERO not in all cases
Luke Kenneth Casson Leighton [Wed, 19 May 2021 10:28:25 +0000 (11:28 +0100)]
corrections to stf/lf RA_OR_ZERO not in all cases

3 years agoStop spamming the world whenever PowerDecoder is fired up
Lauri Kasanen [Wed, 19 May 2021 10:33:48 +0000 (13:33 +0300)]
Stop spamming the world whenever PowerDecoder is fired up

3 years agorm -f
Lauri Kasanen [Wed, 19 May 2021 10:07:24 +0000 (13:07 +0300)]
rm -f

3 years agoBasic media infra
Lauri Kasanen [Wed, 19 May 2021 10:02:53 +0000 (13:02 +0300)]
Basic media infra

3 years agoadd SVP64 IEEE754 FP unit test
Luke Kenneth Casson Leighton [Tue, 18 May 2021 19:00:58 +0000 (20:00 +0100)]
add SVP64 IEEE754 FP unit test

3 years agofix SVP64 EXTRA2/3 decode for IEEE754 FP LD/ST operations
Luke Kenneth Casson Leighton [Tue, 18 May 2021 17:24:19 +0000 (18:24 +0100)]
fix SVP64 EXTRA2/3 decode for IEEE754 FP LD/ST operations

3 years agoadd beginning support for SVP64 IEEE754 FP
Luke Kenneth Casson Leighton [Tue, 18 May 2021 16:48:02 +0000 (17:48 +0100)]
add beginning support for SVP64 IEEE754 FP

3 years agoadd more totally random bpermd unit tests, just to be sure
Luke Kenneth Casson Leighton [Tue, 18 May 2021 12:22:01 +0000 (13:22 +0100)]
add more totally random bpermd unit tests, just to be sure

3 years agofinally fix bpermd pseudocode, index was being treated as signed
Luke Kenneth Casson Leighton [Tue, 18 May 2021 12:16:45 +0000 (13:16 +0100)]
finally fix bpermd pseudocode, index was being treated as signed
(index < 64) when it is unsigned (inedx <u 64)

3 years agorevert register reordering in ISACaller
Luke Kenneth Casson Leighton [Tue, 18 May 2021 11:49:45 +0000 (12:49 +0100)]
revert register reordering in ISACaller

3 years agoadd os.makedirs on pyfnwriter output path
Luke Kenneth Casson Leighton [Tue, 18 May 2021 09:06:10 +0000 (10:06 +0100)]
add os.makedirs on pyfnwriter output path

3 years agoadd python function writer, takes Appendix v3.0B pseudocode functions
Luke Kenneth Casson Leighton [Tue, 18 May 2021 08:56:48 +0000 (09:56 +0100)]
add python function writer, takes Appendix v3.0B pseudocode functions
and generates executable python

3 years agoupdate reg sort order in ISACaller
Luke Kenneth Casson Leighton [Mon, 17 May 2021 15:33:31 +0000 (16:33 +0100)]
update reg sort order in ISACaller

3 years agogrr syntax incorrect, use <- operator not =
Luke Kenneth Casson Leighton [Mon, 17 May 2021 15:05:07 +0000 (16:05 +0100)]
grr syntax incorrect, use <- operator not =

3 years agomark RN as TODO
Luke Kenneth Casson Leighton [Mon, 17 May 2021 13:15:01 +0000 (14:15 +0100)]
mark RN as TODO

3 years agomust not add to read regs unless in the authorised list
Luke Kenneth Casson Leighton [Mon, 17 May 2021 13:04:24 +0000 (14:04 +0100)]
must not add to read regs unless in the authorised list

3 years agoremove MISSING (theyre not), fix a couple of errors in pseudocode
Luke Kenneth Casson Leighton [Mon, 17 May 2021 12:57:28 +0000 (13:57 +0100)]
remove MISSING (theyre not), fix a couple of errors in pseudocode
for lmw and stmw, these are not supported but are there for spec
"completeness"

3 years agoadd new RC reg to get pywriter to build
Luke Kenneth Casson Leighton [Mon, 17 May 2021 12:41:58 +0000 (13:41 +0100)]
add new RC reg to get pywriter to build

3 years agoupdate to 0.0.3 0.0.3
Luke Kenneth Casson Leighton [Sun, 16 May 2021 16:06:53 +0000 (17:06 +0100)]
update to 0.0.3

3 years agodocument addition of pyfnwriter
Luke Kenneth Casson Leighton [Sun, 16 May 2021 16:06:01 +0000 (17:06 +0100)]
document addition of pyfnwriter

3 years agoadd NEWS update
Luke Kenneth Casson Leighton [Sun, 16 May 2021 16:04:18 +0000 (17:04 +0100)]
add NEWS update

3 years agoadd fpcvt.mdwn pseudocode which calls new auto-generated function
Luke Kenneth Casson Leighton [Sun, 16 May 2021 15:01:35 +0000 (16:01 +0100)]
add fpcvt.mdwn pseudocode which calls new auto-generated function
taken from Section A.3 for FP conversion

3 years agoadd new pyfnwriter command, converts v3.0B spec pseudocode helper functions
Luke Kenneth Casson Leighton [Sun, 16 May 2021 13:29:30 +0000 (14:29 +0100)]
add new pyfnwriter command, converts v3.0B spec pseudocode helper functions
into python

3 years agocreate compiler for general pseudo-code functions in v3.0B spec
Luke Kenneth Casson Leighton [Sun, 16 May 2021 13:24:25 +0000 (14:24 +0100)]
create compiler for general pseudo-code functions in v3.0B spec
specifically to support FP such as convert from int etc

3 years agoadd function reader for appendix and other v3.0B pseudocode
Luke Kenneth Casson Leighton [Sun, 16 May 2021 12:58:52 +0000 (13:58 +0100)]
add function reader for appendix and other v3.0B pseudocode

3 years agocomments in fp convert, fix carry out, comment out FPSCR for now
Luke Kenneth Casson Leighton [Sun, 16 May 2021 12:39:48 +0000 (13:39 +0100)]
comments in fp convert, fix carry out, comment out FPSCR for now

3 years agospelling
Luke Kenneth Casson Leighton [Sat, 15 May 2021 23:08:55 +0000 (00:08 +0100)]
spelling

3 years agomove round_float to separate file
Luke Kenneth Casson Leighton [Sat, 15 May 2021 23:08:34 +0000 (00:08 +0100)]
move round_float to separate file

3 years agoadd fpfromint.mdwn new file, to be used for FP conversion
Luke Kenneth Casson Leighton [Sat, 15 May 2021 23:06:12 +0000 (00:06 +0100)]
add fpfromint.mdwn new file, to be used for FP conversion
contains pseudocode from v3.0B spec, A.3 p782 book I

3 years agoextra debug print
Luke Kenneth Casson Leighton [Sat, 15 May 2021 19:16:45 +0000 (20:16 +0100)]
extra debug print

3 years agowhoops, FRC taken from FormX.FRB not FormA.FRC
Luke Kenneth Casson Leighton [Sat, 15 May 2021 19:16:25 +0000 (20:16 +0100)]
whoops, FRC taken from FormX.FRB not FormA.FRC

3 years agoFP mul test, correct pseudocode to use FRC
Luke Kenneth Casson Leighton [Sat, 15 May 2021 19:09:54 +0000 (20:09 +0100)]
FP mul test, correct pseudocode to use FRC

3 years agoadd minor_59.csv file, corrected, and power enums
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:54:02 +0000 (19:54 +0100)]
add minor_59.csv file, corrected, and power enums
operations fcfids, fcfidus, fsqrt etc.

3 years agoreturn result in FPXXX64 functions (whoops)
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:47:33 +0000 (19:47 +0100)]
return result in FPXXX64 functions (whoops)

3 years agowhen calling multi-arg function with regs, add to read list
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:47:17 +0000 (19:47 +0100)]
when calling multi-arg function with regs, add to read list

3 years agoissue with sub-decoders
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:31:16 +0000 (19:31 +0100)]
issue with sub-decoders
merged FP HI/LO 63 (minor_63.csv only) due to clash on pattern 63

3 years agoadd fadd/sub/mul/div to power_enums
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:09:13 +0000 (19:09 +0100)]
add fadd/sub/mul/div to power_enums

3 years agoadd FP basic arithmetic operations, pseudocode, fparith.mdwn
Luke Kenneth Casson Leighton [Sat, 15 May 2021 18:02:29 +0000 (19:02 +0100)]
add FP basic arithmetic operations, pseudocode, fparith.mdwn

3 years agocomments
Luke Kenneth Casson Leighton [Sat, 15 May 2021 17:06:15 +0000 (18:06 +0100)]
comments

3 years agoadd fcpsgn unit test
Luke Kenneth Casson Leighton [Sat, 15 May 2021 17:04:54 +0000 (18:04 +0100)]
add fcpsgn unit test

3 years agoadd fnabs unit test
Luke Kenneth Casson Leighton [Sat, 15 May 2021 17:02:14 +0000 (18:02 +0100)]
add fnabs unit test

3 years agoadd fabs unit test
Luke Kenneth Casson Leighton [Sat, 15 May 2021 16:41:52 +0000 (17:41 +0100)]
add fabs unit test

3 years agoadd fp mv test, correct pseudocode
Luke Kenneth Casson Leighton [Sat, 15 May 2021 16:38:03 +0000 (17:38 +0100)]
add fp mv test, correct pseudocode

3 years agowhoops initialise FPRs from GPRs in ISACaller
Luke Kenneth Casson Leighton [Sat, 15 May 2021 16:08:01 +0000 (17:08 +0100)]
whoops initialise FPRs from GPRs in ISACaller

3 years agomissed an assignment-copy for simple expressions
Luke Kenneth Casson Leighton [Sat, 15 May 2021 16:05:26 +0000 (17:05 +0100)]
missed an assignment-copy for simple expressions

3 years agoadd fmr test and associated decoder (optional with include_fp)
Luke Kenneth Casson Leighton [Sat, 15 May 2021 15:57:27 +0000 (16:57 +0100)]
add fmr test and associated decoder (optional with include_fp)

3 years agoadd X-Form and A-Form to minor_63l and minor_63h csv files
Luke Kenneth Casson Leighton [Sat, 15 May 2021 15:13:07 +0000 (16:13 +0100)]
add X-Form and A-Form to minor_63l and minor_63h csv files
add option to create_pdecode to include FP ops

3 years agowhoops need to reverse bits in minor_63l.csv to match linear switch
Luke Kenneth Casson Leighton [Sat, 15 May 2021 14:52:18 +0000 (15:52 +0100)]
whoops need to reverse bits in minor_63l.csv to match linear switch

3 years agoFP 63L/H ops need to add in extra 0/1 minor_63l.csv minor_63h.csv
Luke Kenneth Casson Leighton [Sat, 15 May 2021 14:46:00 +0000 (15:46 +0100)]
FP 63L/H ops need to add in extra 0/1 minor_63l.csv minor_63h.csv
a hard-coded test in microwatt decode1.vhdl tests bit 5
we need an automated switch statement

3 years agoadd fp move opcodes to power_enums.py
Luke Kenneth Casson Leighton [Sat, 15 May 2021 14:37:05 +0000 (15:37 +0100)]
add fp move opcodes to power_enums.py

3 years agoadd new fp load / store with update unit test
Luke Kenneth Casson Leighton [Sat, 15 May 2021 13:11:18 +0000 (14:11 +0100)]
add new fp load / store with update unit test

3 years agoadd FP store op names to power_enums.py opcode list
Luke Kenneth Casson Leighton [Sat, 15 May 2021 12:44:34 +0000 (13:44 +0100)]
add FP store op names to power_enums.py opcode list

3 years agowhitespace on instruction mnemonics
Luke Kenneth Casson Leighton [Sat, 15 May 2021 12:41:39 +0000 (13:41 +0100)]
whitespace on instruction mnemonics

3 years agoadd FP LD/ST D-Form operations to major.csv
Luke Kenneth Casson Leighton [Sat, 15 May 2021 11:40:05 +0000 (12:40 +0100)]
add FP LD/ST D-Form operations to major.csv

3 years agoadd load/store FP indexed instructions to minor_31.csv
Luke Kenneth Casson Leighton [Sat, 15 May 2021 11:29:46 +0000 (12:29 +0100)]
add load/store FP indexed instructions to minor_31.csv

3 years agoadd FP load test lfsx
Luke Kenneth Casson Leighton [Fri, 14 May 2021 21:18:25 +0000 (22:18 +0100)]
add FP load test lfsx

3 years agowhen setting x <- GPR(RA) make sure read_regs is added to in parser
Luke Kenneth Casson Leighton [Fri, 14 May 2021 20:29:21 +0000 (21:29 +0100)]
when setting  x <- GPR(RA) make sure read_regs is added to in parser

3 years agoadd GPR-underscore read of regs
Luke Kenneth Casson Leighton [Fri, 14 May 2021 20:19:15 +0000 (21:19 +0100)]
add GPR-underscore read of regs

3 years agoadd FRA ISACaller name decoding
Luke Kenneth Casson Leighton [Fri, 14 May 2021 19:54:29 +0000 (20:54 +0100)]
add FRA ISACaller name decoding

3 years agoadd FRA-FRT to power enums
Luke Kenneth Casson Leighton [Fri, 14 May 2021 19:36:19 +0000 (20:36 +0100)]
add FRA-FRT to power enums

3 years agoadd first FP load test, still a lot TODO
Luke Kenneth Casson Leighton [Fri, 14 May 2021 19:29:35 +0000 (20:29 +0100)]
add first FP load test, still a lot TODO

3 years agoadd FPR (FP Regfile) to ISACaller
Luke Kenneth Casson Leighton [Fri, 14 May 2021 19:13:06 +0000 (20:13 +0100)]
add FPR (FP Regfile) to ISACaller

3 years agoadd in FPR.getz and support for FPR(x) in ISA parser
Luke Kenneth Casson Leighton [Fri, 14 May 2021 19:07:00 +0000 (20:07 +0100)]
add in FPR.getz and support for FPR(x) in ISA parser

3 years agoadd FRA-FRT fp reg names to ISACaller parser
Luke Kenneth Casson Leighton [Fri, 14 May 2021 18:53:52 +0000 (19:53 +0100)]
add FRA-FRT fp reg names to ISACaller parser

3 years agoadd fpmove.mdwn from v3.0B p150 book I section 4.6.5
Luke Kenneth Casson Leighton [Fri, 14 May 2021 17:59:20 +0000 (18:59 +0100)]
add fpmove.mdwn from v3.0B p150 book I section 4.6.5

3 years agoclarify, comments
Luke Kenneth Casson Leighton [Fri, 14 May 2021 17:50:08 +0000 (18:50 +0100)]
clarify, comments

3 years agoadd FPADD, FPSUB, FPMUL, FPDIV quick hacked functions
Luke Kenneth Casson Leighton [Fri, 14 May 2021 17:49:10 +0000 (18:49 +0100)]
add FPADD, FPSUB, FPMUL, FPDIV quick hacked functions

3 years agoadd very quick float convert to SelectableInt
Luke Kenneth Casson Leighton [Fri, 14 May 2021 17:28:31 +0000 (18:28 +0100)]
add very quick float convert to SelectableInt

3 years agoadd import of DOUBLE/SINGLE to pywriter
Luke Kenneth Casson Leighton [Fri, 14 May 2021 16:56:06 +0000 (17:56 +0100)]
add import of DOUBLE/SINGLE to pywriter

3 years agoadd SINGLE function to helpers, for FP Store
Luke Kenneth Casson Leighton [Fri, 14 May 2021 16:47:48 +0000 (17:47 +0100)]
add SINGLE function to helpers, for FP Store

3 years agoadd first pass at DOUBLE helper function for FP ISACaller simulation
Luke Kenneth Casson Leighton [Fri, 14 May 2021 16:31:35 +0000 (17:31 +0100)]
add first pass at DOUBLE helper function for FP ISACaller simulation

3 years agoadd zero-variant (RA|0) in fpload pseudocode, cleaner, clearer
Luke Kenneth Casson Leighton [Fri, 14 May 2021 16:13:09 +0000 (17:13 +0100)]
add zero-variant (RA|0) in fpload pseudocode, cleaner, clearer

3 years agoadd fpstore.mdwn
Luke Kenneth Casson Leighton [Fri, 14 May 2021 16:11:42 +0000 (17:11 +0100)]
add fpstore.mdwn

3 years agoadd fpload.mdwn for FP simulation
Luke Kenneth Casson Leighton [Fri, 14 May 2021 15:49:24 +0000 (16:49 +0100)]
add fpload.mdwn for FP simulation

3 years agoadd setting of MSR "PR" bit for when running MMU test
Luke Kenneth Casson Leighton [Tue, 11 May 2021 11:27:00 +0000 (12:27 +0100)]
add setting of MSR "PR" bit for when running MMU test

3 years agoextra checks on ldst exception unit test
Luke Kenneth Casson Leighton [Mon, 10 May 2021 17:13:29 +0000 (18:13 +0100)]
extra checks on ldst exception unit test

3 years agofix MemException, return correct address in DAR
Luke Kenneth Casson Leighton [Mon, 10 May 2021 17:03:24 +0000 (18:03 +0100)]
fix MemException, return correct address in DAR

3 years agotesting load misaligned
Luke Kenneth Casson Leighton [Mon, 10 May 2021 17:01:01 +0000 (18:01 +0100)]
testing load misaligned

3 years agotest_maxint, add zero onto 0xffffffffffffff
Luke Kenneth Casson Leighton [Mon, 10 May 2021 17:00:47 +0000 (18:00 +0100)]
test_maxint, add zero onto 0xffffffffffffff