Luke Kenneth Casson Leighton [Wed, 2 Jun 2021 12:33:31 +0000 (13:33 +0100)]
add commented-out debug prints
Luke Kenneth Casson Leighton [Wed, 2 Jun 2021 12:33:17 +0000 (13:33 +0100)]
whoops sorting SPRs, stop that for now
Luke Kenneth Casson Leighton [Wed, 2 Jun 2021 12:32:51 +0000 (13:32 +0100)]
get qemu FP regs correctly
Luke Kenneth Casson Leighton [Wed, 2 Jun 2021 12:31:29 +0000 (13:31 +0100)]
FP basic qemu sim, testing fadds loads and stores
Luke Kenneth Casson Leighton [Wed, 2 Jun 2021 12:23:44 +0000 (13:23 +0100)]
appears that the FP operation takes place at full 64-bit precision
then is truncated afterwards to 32-bit, then converted to fit into 64
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:42:39 +0000 (14:42 +0100)]
whoops missing argument
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:41:15 +0000 (14:41 +0100)]
move spot-check mem compare to a function
use for further debugging by checking a corrupted address
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:32:43 +0000 (14:32 +0100)]
check both LD and ST in qemu compare
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:21:13 +0000 (14:21 +0100)]
bizarre, GPR 3 is set by qemu to non-zero at startup.
clear all GPRs: set to zero
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:16:41 +0000 (14:16 +0100)]
whoops start basic sim from 0x20000000
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 13:12:49 +0000 (14:12 +0100)]
bit more memdump debugging on qemu sim
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 11:55:39 +0000 (12:55 +0100)]
comment cleanup, record last LD/ST address in simulator
for checking with a snapshop on memory operations
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 10:40:12 +0000 (11:40 +0100)]
whoops crank down the debug level
Luke Kenneth Casson Leighton [Tue, 1 Jun 2021 02:59:34 +0000 (03:59 +0100)]
sorting out qemu co-simulation to read/write FP regs
Luke Kenneth Casson Leighton [Sun, 30 May 2021 11:40:08 +0000 (12:40 +0100)]
add "normal" element-strided LD/ST decode/support to ISACaller
Luke Kenneth Casson Leighton [Sat, 29 May 2021 19:17:49 +0000 (20:17 +0100)]
comments
Luke Kenneth Casson Leighton [Sat, 29 May 2021 19:12:18 +0000 (20:12 +0100)]
add unit-strided LD/ST ISACaller SVP64 unit test
Luke Kenneth Casson Leighton [Sat, 29 May 2021 17:42:19 +0000 (18:42 +0100)]
initialise SVP64 ld/st mode decoding in PowerDecoder2
Luke Kenneth Casson Leighton [Sat, 29 May 2021 17:19:15 +0000 (18:19 +0100)]
comments
Luke Kenneth Casson Leighton [Sat, 29 May 2021 17:13:56 +0000 (18:13 +0100)]
extract LDST mode from SVP64 RM
Luke Kenneth Casson Leighton [Sat, 29 May 2021 15:25:02 +0000 (16:25 +0100)]
can't stand python 'format'
Luke Kenneth Casson Leighton [Sat, 29 May 2021 15:13:15 +0000 (16:13 +0100)]
dump memory from qemu in pypowersim
Luke Kenneth Casson Leighton [Fri, 28 May 2021 17:45:40 +0000 (18:45 +0100)]
add SVP64 RM LDST mode enum
Lauri Kasanen [Fri, 28 May 2021 16:26:50 +0000 (19:26 +0300)]
Begin on SV for mp3_0
Luke Kenneth Casson Leighton [Fri, 28 May 2021 13:35:44 +0000 (14:35 +0100)]
print out offset for load address in hex
Luke Kenneth Casson Leighton [Fri, 28 May 2021 12:55:42 +0000 (13:55 +0100)]
probably got MSR.FP bit set... maybe
Luke Kenneth Casson Leighton [Fri, 28 May 2021 12:55:26 +0000 (13:55 +0100)]
add quick stfd test to make sure MSR.FP is set
Lauri Kasanen [Fri, 28 May 2021 11:42:25 +0000 (14:42 +0300)]
Correct mp3_1 dump size
Lauri Kasanen [Fri, 28 May 2021 11:41:35 +0000 (14:41 +0300)]
Add 16kb stack space (total 20kb before it hits vecs at 0x3000)
Lauri Kasanen [Fri, 28 May 2021 11:41:08 +0000 (14:41 +0300)]
Undo qemu address changes
Luke Kenneth Casson Leighton [Thu, 27 May 2021 18:05:13 +0000 (19:05 +0100)]
increase RAM sizes for media memmap
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:59:37 +0000 (18:59 +0100)]
moving stack and parameters higher up for media test
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:44:31 +0000 (18:44 +0100)]
move stack pointer higher up to keep qemu happier in audio tests
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:43:43 +0000 (18:43 +0100)]
move SPR set to qemu.py
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:37:38 +0000 (18:37 +0100)]
debug print qemu and simulator LR
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:32:07 +0000 (18:32 +0100)]
set SPRs inside qemu run_program
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:25:50 +0000 (18:25 +0100)]
add disassembly dump and set_lr to qemu
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:08:37 +0000 (18:08 +0100)]
hex dump debug
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:08:29 +0000 (18:08 +0100)]
skip step, program pointing at correct location already
Luke Kenneth Casson Leighton [Thu, 27 May 2021 17:08:12 +0000 (18:08 +0100)]
whoops yield in setup_one ISACaller
Luke Kenneth Casson Leighton [Thu, 27 May 2021 16:13:41 +0000 (17:13 +0100)]
speed up bytes upload in qemu.py
Luke Kenneth Casson Leighton [Thu, 27 May 2021 11:26:13 +0000 (12:26 +0100)]
set PC in pypowersim
Luke Kenneth Casson Leighton [Thu, 27 May 2021 11:24:13 +0000 (12:24 +0100)]
pass output dump argument to shell script for audio tests
Luke Kenneth Casson Leighton [Thu, 27 May 2021 11:15:19 +0000 (12:15 +0100)]
get full qemu list of registers, on each cycle, saves time
Luke Kenneth Casson Leighton [Thu, 27 May 2021 10:35:11 +0000 (11:35 +0100)]
report log expected different qemu values rather than all of them
Luke Kenneth Casson Leighton [Thu, 27 May 2021 10:30:37 +0000 (11:30 +0100)]
whoops inverted logic on qemu endian set
Luke Kenneth Casson Leighton [Thu, 27 May 2021 10:28:38 +0000 (11:28 +0100)]
add setting of qemu GPRs/FPRs in pypowersim
Luke Kenneth Casson Leighton [Thu, 27 May 2021 10:20:05 +0000 (11:20 +0100)]
slightly messy: qemu goes haywire at the last instruction.
reset bigendian to sane value
Luke Kenneth Casson Leighton [Thu, 27 May 2021 09:06:37 +0000 (10:06 +0100)]
oops syntax error
Luke Kenneth Casson Leighton [Thu, 27 May 2021 09:04:50 +0000 (10:04 +0100)]
add qemu gpr/fpr set/get
Luke Kenneth Casson Leighton [Thu, 27 May 2021 08:59:53 +0000 (09:59 +0100)]
create a register cache for qemu machine interface, very slow
Luke Kenneth Casson Leighton [Thu, 27 May 2021 08:51:05 +0000 (09:51 +0100)]
get qemu operational single-step mode, use in pypowersim
Lauri Kasanen [Wed, 26 May 2021 08:56:43 +0000 (11:56 +0300)]
QoL tuning
Lauri Kasanen [Wed, 26 May 2021 08:50:10 +0000 (11:50 +0300)]
Missed semicolon
Lauri Kasanen [Wed, 26 May 2021 08:49:03 +0000 (11:49 +0300)]
Dedup them via scripts
Lauri Kasanen [Wed, 26 May 2021 08:39:11 +0000 (11:39 +0300)]
Fill in first mp3_1 incantation
Lauri Kasanen [Wed, 26 May 2021 08:31:41 +0000 (11:31 +0300)]
Fill in all mp3_0 runs, move the spr to a common file
Lauri Kasanen [Wed, 26 May 2021 08:21:58 +0000 (11:21 +0300)]
Undo log in mem dump
Lauri Kasanen [Wed, 26 May 2021 08:21:30 +0000 (11:21 +0300)]
Use log in decoder/*
Lauri Kasanen [Wed, 26 May 2021 08:14:14 +0000 (11:14 +0300)]
Undo log in isa/caller reg dump
Lauri Kasanen [Wed, 26 May 2021 08:11:43 +0000 (11:11 +0300)]
Use log in isa/mem
Luke Kenneth Casson Leighton [Tue, 25 May 2021 13:32:53 +0000 (14:32 +0100)]
extracting memory for dump must be big-endian ordered
Luke Kenneth Casson Leighton [Tue, 25 May 2021 13:09:50 +0000 (14:09 +0100)]
add loading of data and output dump of samples to mp3 pypowersim example
Luke Kenneth Casson Leighton [Tue, 25 May 2021 13:09:05 +0000 (14:09 +0100)]
whoops two options "-l", rename one "-a" for "assembly listing"
Luke Kenneth Casson Leighton [Tue, 25 May 2021 13:02:38 +0000 (14:02 +0100)]
allow comments in SPR / GPR / FPR files
Lauri Kasanen [Tue, 25 May 2021 12:57:52 +0000 (15:57 +0300)]
Use log in pypowersim, add counter TODO in help
Lauri Kasanen [Tue, 25 May 2021 12:43:15 +0000 (15:43 +0300)]
Switch to log in decoder/helpers
Lauri Kasanen [Tue, 25 May 2021 12:39:49 +0000 (15:39 +0300)]
Switch to log in isa/caller
Luke Kenneth Casson Leighton [Tue, 25 May 2021 10:29:16 +0000 (11:29 +0100)]
more notes on pypowersim
Luke Kenneth Casson Leighton [Tue, 25 May 2021 10:21:08 +0000 (11:21 +0100)]
add dump-out option to pypowersim
Luke Kenneth Casson Leighton [Tue, 25 May 2021 09:41:12 +0000 (10:41 +0100)]
add add setting of LR so that code jumps outside of executable range when done
Luke Kenneth Casson Leighton [Mon, 24 May 2021 16:37:46 +0000 (17:37 +0100)]
quick add of pypowersim command to run the apply_window_float binary
Lauri Kasanen [Mon, 24 May 2021 12:54:39 +0000 (15:54 +0300)]
Save initial mp3_0 regs
Lauri Kasanen [Mon, 24 May 2021 12:48:56 +0000 (15:48 +0300)]
Save a local copy of the calling conventions
Luke Kenneth Casson Leighton [Mon, 24 May 2021 10:57:49 +0000 (11:57 +0100)]
add TODO comment running simulator
Luke Kenneth Casson Leighton [Mon, 24 May 2021 10:50:27 +0000 (11:50 +0100)]
add extra (dummy) mul operation, 0*0
Luke Kenneth Casson Leighton [Mon, 24 May 2021 10:48:23 +0000 (11:48 +0100)]
sigh, initialise FPRs to zeros to engage FP decode
Luke Kenneth Casson Leighton [Mon, 24 May 2021 10:12:33 +0000 (11:12 +0100)]
fmuls is fine
Luke Kenneth Casson Leighton [Mon, 24 May 2021 09:59:16 +0000 (10:59 +0100)]
add nop support to ISACaller
Lauri Kasanen [Mon, 24 May 2021 08:30:07 +0000 (11:30 +0300)]
Save initial mp3 C baseline asm
Luke Kenneth Casson Leighton [Sun, 23 May 2021 21:13:47 +0000 (22:13 +0100)]
read all lines in advance, in case of in-place overwrite
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
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.
Cesar Strauss [Sat, 22 May 2021 21:22:44 +0000 (18:22 -0300)]
Add new generated files to .gitignore
Luke Kenneth Casson Leighton [Fri, 21 May 2021 17:34:42 +0000 (18:34 +0100)]
add demo --load option to pypowersim
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
Luke Kenneth Casson Leighton [Fri, 21 May 2021 14:08:39 +0000 (15:08 +0100)]
add GPRs to pypowersim demo
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:57:11 +0000 (14:57 +0100)]
return register values from GPR.dump in ISACaller
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)
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:50:58 +0000 (14:50 +0100)]
add dump of SPRs to pypowersim
Luke Kenneth Casson Leighton [Fri, 21 May 2021 13:39:46 +0000 (14:39 +0100)]
add testloop.s
Luke Kenneth Casson Leighton [Fri, 21 May 2021 12:27:53 +0000 (13:27 +0100)]
add first pypowersim example
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
Luke Kenneth Casson Leighton [Fri, 21 May 2021 12:10:17 +0000 (13:10 +0100)]
add pypowersim to commands installed
Luke Kenneth Casson Leighton [Fri, 21 May 2021 11:58:25 +0000 (12:58 +0100)]
add first command-line version of ISACaller
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
Luke Kenneth Casson Leighton [Wed, 19 May 2021 14:07:24 +0000 (15:07 +0100)]
switch over to log function in SelectableInt
Luke Kenneth Casson Leighton [Wed, 19 May 2021 14:04:25 +0000 (15:04 +0100)]
document test_fp_single_ldst
Luke Kenneth Casson Leighton [Wed, 19 May 2021 13:41:44 +0000 (14:41 +0100)]
re-enable other SVP64 FP tests
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