Luke Kenneth Casson Leighton [Mon, 5 Feb 2024 21:39:28 +0000 (21:39 +0000)]
bug 676: cleanup on maxloc. comments, remove redundant code
Luke Kenneth Casson Leighton [Mon, 5 Feb 2024 21:24:16 +0000 (21:24 +0000)]
bug 676: maxloc, use crternlogi to reduce op count
Luke Kenneth Casson Leighton [Mon, 5 Feb 2024 21:12:04 +0000 (21:12 +0000)]
bug 1034: add crbinlog unit test
Luke Kenneth Casson Leighton [Mon, 5 Feb 2024 14:39:12 +0000 (14:39 +0000)]
bug 1034: invert ordering of lut indices to match xxeval
Luke Kenneth Casson Leighton [Mon, 5 Feb 2024 13:57:03 +0000 (13:57 +0000)]
bug 676: tidy up pseudocode
Luke Kenneth Casson Leighton [Sat, 3 Feb 2024 08:20:18 +0000 (08:20 +0000)]
sigh, when maddsubrs (etc) moved to PO5, PowerDecoder2 hack update
Luke Kenneth Casson Leighton [Sat, 3 Feb 2024 07:42:53 +0000 (07:42 +0000)]
missing BC in get_cr_in
Luke Kenneth Casson Leighton [Sat, 3 Feb 2024 04:32:08 +0000 (04:32 +0000)]
remove accidental print
Luke Kenneth Casson Leighton [Sat, 3 Feb 2024 04:25:02 +0000 (04:25 +0000)]
fix merge
Luke Kenneth Casson Leighton [Fri, 2 Feb 2024 20:48:47 +0000 (20:48 +0000)]
bug 1034: hooray! sv.crternlogi works. was the test not the op
Luke Kenneth Casson Leighton [Wed, 31 Jan 2024 15:25:39 +0000 (15:25 +0000)]
bug 1034: redo BFB field lookup for namespace
Luke Kenneth Casson Leighton [Wed, 31 Jan 2024 15:19:27 +0000 (15:19 +0000)]
bug 1034: sigh undo damage caused by rebase merge
Luke Kenneth Casson Leighton [Wed, 17 Jan 2024 14:56:16 +0000 (14:56 +0000)]
bug 1034: add crternlogi. involved adding a new CR field BFA_BFB_BF sigh
Luke Kenneth Casson Leighton [Mon, 15 Jan 2024 22:42:01 +0000 (22:42 +0000)]
bug 676: maxloc - finally got something working
Luke Kenneth Casson Leighton [Sun, 14 Jan 2024 20:11:57 +0000 (20:11 +0000)]
bug 676: nearly there. just <= vs < to deal with
Luke Kenneth Casson Leighton [Sun, 14 Jan 2024 19:24:22 +0000 (19:24 +0000)]
fix ISACaller BA/BB vector read
Luke Kenneth Casson Leighton [Sat, 13 Jan 2024 21:33:48 +0000 (21:33 +0000)]
bug 676: closer to working maxloc. a lot of cr ops
Luke Kenneth Casson Leighton [Fri, 12 Jan 2024 16:54:33 +0000 (16:54 +0000)]
bug 676: more experimenting with maxloc assembler
Luke Kenneth Casson Leighton [Fri, 12 Jan 2024 16:54:16 +0000 (16:54 +0000)]
enforce scalar offset in ISACaller when is_vec is false
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 16:40:52 +0000 (16:40 +0000)]
bug 676: use dest-mask on sv.addi to get scalar max into vector
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 16:27:35 +0000 (16:27 +0000)]
add heading option to GPR dump
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 15:53:19 +0000 (15:53 +0000)]
improve debug output in ISACaller, for ".long xyzabcdef"
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 15:48:38 +0000 (15:48 +0000)]
whitespace
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 13:45:30 +0000 (13:45 +0000)]
grrrr
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:33:34 +0000 (16:33 +0000)]
bug 676: although spotted under maxloc, sv.mcrf was incomplete
https://bugs.libre-soc.org/show_bug.cgi?id=1239
BF was "vectorised" (through a rewrite of the immediate field)
but BFA was not. a *lot* more unit tests are needed for ISACaller
to be "up to spec"
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 13:39:28 +0000 (13:39 +0000)]
bug 1248: add a stack of missing CR 3/5-bit operand vector naming
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 11:59:45 +0000 (11:59 +0000)]
bug 1248: add beginnings of sv.creqv test, see what is going on
Luke Kenneth Casson Leighton [Mon, 8 Jan 2024 22:37:02 +0000 (22:37 +0000)]
bug 676: sorting out maxloc assembler, found bug in sv.creqv vector
raised https://bugs.libre-soc.org/show_bug.cgi?id=1248
Luke Kenneth Casson Leighton [Fri, 22 Dec 2023 08:59:53 +0000 (08:59 +0000)]
bug 676: maxloc experimentation
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:35:38 +0000 (16:35 +0000)]
bug 676: with messing about got at least an inner maxloc loop working
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:33:34 +0000 (16:33 +0000)]
bug 676: although spotted under maxloc, sv.mcrf was incomplete
https://bugs.libre-soc.org/show_bug.cgi?id=1239
BF was "vectorised" (through a rewrite of the immediate field)
but BFA was not. a *lot* more unit tests are needed for ISACaller
to be "up to spec"
Luke Kenneth Casson Leighton [Sun, 17 Dec 2023 22:24:13 +0000 (22:24 +0000)]
add first cut at parallel maxloc, adding random tests
Luke Kenneth Casson Leighton [Mon, 18 Dec 2023 10:59:49 +0000 (10:59 +0000)]
bug 676: add start of svp64 maxloc, based on pospopcount
Luke Kenneth Casson Leighton [Sat, 16 Dec 2023 08:37:31 +0000 (08:37 +0000)]
bug 1236: add extra argument to svstep: RA.
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:28:53 +0000 (23:28 +0000)]
bug 676: put maxloc.py test data into array
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:26:23 +0000 (23:26 +0000)]
remove unneeded tests
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:25:16 +0000 (23:25 +0000)]
bug 672: add python-based maxloc.py for unit testing
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:23:37 +0000 (23:23 +0000)]
bug 676: add first cut at maxloc copy/paste from ddffirst test
Jacob Lifshay [Tue, 16 Jan 2024 09:18:58 +0000 (01:18 -0800)]
fixedsync.mdwn: change sync from v3.1B version to v3.0B version
to use the v3.1B version requires fixing fields.text to use the new
L and SC fields, which requires deciphering all the places where the
current L (named L2) field is used and making sure they'll be correct still.
using the old interpretation of sync should be correct, but less optimal,
assuming OpenPower got their backwards compatibility correct.
Luke Kenneth Casson Leighton [Mon, 15 Jan 2024 22:42:01 +0000 (22:42 +0000)]
bug 676: maxloc - finally got something working
Luke Kenneth Casson Leighton [Sun, 14 Jan 2024 20:11:57 +0000 (20:11 +0000)]
bug 676: nearly there. just <= vs < to deal with
Luke Kenneth Casson Leighton [Sun, 14 Jan 2024 19:24:22 +0000 (19:24 +0000)]
fix ISACaller BA/BB vector read
Luke Kenneth Casson Leighton [Sat, 13 Jan 2024 21:33:48 +0000 (21:33 +0000)]
bug 676: closer to working maxloc. a lot of cr ops
Luke Kenneth Casson Leighton [Fri, 12 Jan 2024 16:54:33 +0000 (16:54 +0000)]
bug 676: more experimenting with maxloc assembler
Luke Kenneth Casson Leighton [Fri, 12 Jan 2024 16:54:16 +0000 (16:54 +0000)]
enforce scalar offset in ISACaller when is_vec is false
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 16:40:52 +0000 (16:40 +0000)]
bug 676: use dest-mask on sv.addi to get scalar max into vector
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 16:27:35 +0000 (16:27 +0000)]
add heading option to GPR dump
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 15:53:19 +0000 (15:53 +0000)]
improve debug output in ISACaller, for ".long xyzabcdef"
Luke Kenneth Casson Leighton [Wed, 10 Jan 2024 15:48:38 +0000 (15:48 +0000)]
whitespace
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 13:45:30 +0000 (13:45 +0000)]
grrrr
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:33:34 +0000 (16:33 +0000)]
bug 676: although spotted under maxloc, sv.mcrf was incomplete
https://bugs.libre-soc.org/show_bug.cgi?id=1239
BF was "vectorised" (through a rewrite of the immediate field)
but BFA was not. a *lot* more unit tests are needed for ISACaller
to be "up to spec"
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 13:39:28 +0000 (13:39 +0000)]
bug 1248: add a stack of missing CR 3/5-bit operand vector naming
Luke Kenneth Casson Leighton [Tue, 9 Jan 2024 11:59:45 +0000 (11:59 +0000)]
bug 1248: add beginnings of sv.creqv test, see what is going on
Luke Kenneth Casson Leighton [Mon, 8 Jan 2024 22:37:02 +0000 (22:37 +0000)]
bug 676: sorting out maxloc assembler, found bug in sv.creqv vector
raised https://bugs.libre-soc.org/show_bug.cgi?id=1248
Luke Kenneth Casson Leighton [Fri, 22 Dec 2023 08:59:53 +0000 (08:59 +0000)]
bug 676: maxloc experimentation
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:35:38 +0000 (16:35 +0000)]
bug 676: with messing about got at least an inner maxloc loop working
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 16:33:34 +0000 (16:33 +0000)]
bug 676: although spotted under maxloc, sv.mcrf was incomplete
https://bugs.libre-soc.org/show_bug.cgi?id=1239
BF was "vectorised" (through a rewrite of the immediate field)
but BFA was not. a *lot* more unit tests are needed for ISACaller
to be "up to spec"
Luke Kenneth Casson Leighton [Sun, 17 Dec 2023 22:24:13 +0000 (22:24 +0000)]
add first cut at parallel maxloc, adding random tests
Luke Kenneth Casson Leighton [Mon, 18 Dec 2023 10:59:49 +0000 (10:59 +0000)]
bug 676: add start of svp64 maxloc, based on pospopcount
Luke Kenneth Casson Leighton [Sat, 16 Dec 2023 08:37:31 +0000 (08:37 +0000)]
bug 1236: add extra argument to svstep: RA.
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:28:53 +0000 (23:28 +0000)]
bug 676: put maxloc.py test data into array
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:26:23 +0000 (23:26 +0000)]
remove unneeded tests
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:25:16 +0000 (23:25 +0000)]
bug 672: add python-based maxloc.py for unit testing
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:23:37 +0000 (23:23 +0000)]
bug 676: add first cut at maxloc copy/paste from ddffirst test
Luke Kenneth Casson Leighton [Mon, 29 Jan 2024 14:05:36 +0000 (14:05 +0000)]
bug 1034: make sv.crternlogi test a vector-vector-scalar on *0,*16,31
Luke Kenneth Casson Leighton [Mon, 29 Jan 2024 14:04:59 +0000 (14:04 +0000)]
shorten call to ISACaller.prep_namespace
Luke Kenneth Casson Leighton [Mon, 29 Jan 2024 13:31:22 +0000 (13:31 +0000)]
bug 1034: cut/paste error on crternlogi, 4*BT+32 should be just BT+32
Luke Kenneth Casson Leighton [Sun, 28 Jan 2024 21:46:07 +0000 (21:46 +0000)]
bug 1034: clarify CR field encoding (extra/value)
Luke Kenneth Casson Leighton [Sun, 28 Jan 2024 20:45:14 +0000 (20:45 +0000)]
whoops
Luke Kenneth Casson Leighton [Sun, 28 Jan 2024 20:42:50 +0000 (20:42 +0000)]
add BA_BFB decode to PPCRecord and SVP64Record
Luke Kenneth Casson Leighton [Sat, 27 Jan 2024 20:18:07 +0000 (20:18 +0000)]
bug 1034: add first version of sv.crternlogi unit test
Luke Kenneth Casson Leighton [Sat, 27 Jan 2024 11:57:10 +0000 (11:57 +0000)]
bug 1034: yet again move crternlogi due to size of operands
Luke Kenneth Casson Leighton [Sat, 27 Jan 2024 11:14:38 +0000 (11:14 +0000)]
bug 10344: had to move crfternlogi to TLI-Form
Luke Kenneth Casson Leighton [Thu, 25 Jan 2024 17:28:05 +0000 (17:28 +0000)]
bug 1034: add crbinlog and crternlogi, rename crbinlog to crfbinlog
Luke Kenneth Casson Leighton [Sat, 20 Jan 2024 18:33:10 +0000 (18:33 +0000)]
bug 1034: properly qualify crbinlog and crternlogi in sv_analysys.py
Luke Kenneth Casson Leighton [Sat, 20 Jan 2024 14:58:46 +0000 (14:58 +0000)]
bug 1034: add crbinlog unit test, fix binlog test, move maddsub*
Luke Kenneth Casson Leighton [Sat, 20 Jan 2024 14:14:27 +0000 (14:14 +0000)]
bug 1034: add crbinlog and binlog, unit test binlog done
Luke Kenneth Casson Leighton [Wed, 17 Jan 2024 14:56:16 +0000 (14:56 +0000)]
bug 1034: add crternlogi. involved adding a new CR field BFA_BFB_BF sigh
Jacob Lifshay [Tue, 16 Jan 2024 09:18:58 +0000 (01:18 -0800)]
fixedsync.mdwn: change sync from v3.1B version to v3.0B version
to use the v3.1B version requires fixing fields.text to use the new
L and SC fields, which requires deciphering all the places where the
current L (named L2) field is used and making sure they'll be correct still.
using the old interpretation of sync should be correct, but less optimal,
assuming OpenPower got their backwards compatibility correct.
Luke Kenneth Casson Leighton [Sun, 14 Jan 2024 19:36:18 +0000 (19:36 +0000)]
bug 1251: WIP stbcx removed
Luke Kenneth Casson Leighton [Mon, 8 Jan 2024 13:53:39 +0000 (13:53 +0000)]
fix memory locations in linked-list test_caller_svp64_ldst.py
Jacob Lifshay [Tue, 9 Jan 2024 08:01:44 +0000 (00:01 -0800)]
fptrans.mdwn: don't parenthesize register being assigned to
Fixes: https://bugs.libre-soc.org/show_bug.cgi?id=1247
Luke Kenneth Casson Leighton [Thu, 21 Dec 2023 17:22:52 +0000 (17:22 +0000)]
whitespace
Jacob Lifshay [Tue, 19 Dec 2023 01:46:13 +0000 (17:46 -0800)]
.gitlab-ci.yml: re-add maxschedchunk, it provides massive speedups -- ~2x on CI
this essentially reverts
bfb9d7f312ebb5f394414b5e1ea8f03728af4489
on CI,
bfb9d7f312ebb5f394414b5e1ea8f03728af4489 took 5h45m:
https://salsa.debian.org/Kazan-team/mirrors/openpower-isa/-/jobs/
5038101
the parent commit took 2h37m:
https://salsa.debian.org/Kazan-team/mirrors/openpower-isa/-/jobs/
5034703
Luke Kenneth Casson Leighton [Fri, 15 Dec 2023 23:22:16 +0000 (23:22 +0000)]
bug 1183: correct comments from cut/paste
lkcl [Wed, 13 Dec 2023 22:36:45 +0000 (22:36 +0000)]
remove pytest option which hard-codes assumptions about installed version
Jacob Lifshay [Tue, 12 Dec 2023 18:20:03 +0000 (10:20 -0800)]
elf/simple_cases: disable case_static_glibc for now, re-enable when we work on it again.
Jacob Lifshay [Tue, 12 Dec 2023 18:11:04 +0000 (10:11 -0800)]
add make_gdb_vm_image.sh script, it doesn't work yet but could be useful
see https://bugs.libre-soc.org/show_bug.cgi?id=1228#c15
Jacob Lifshay [Thu, 7 Dec 2023 08:55:22 +0000 (00:55 -0800)]
load_elf: dump a sequence of gdb commands for easy debugging
dumps a sequence of gdb commands that can easily be copied from
the output and pasted into gdb to reset the stack to what load_elf
uses, instead of what gdb's execve does.
Jacob Lifshay [Thu, 7 Dec 2023 08:53:20 +0000 (00:53 -0800)]
MemMMap: fix brk_syscall -- use unrounded input address as heap end
it should use the input address as given when tracking the end of
the heap and returning addresses. it still needs to align addresses
when mapping/unmapping pages.
Jacob Lifshay [Thu, 7 Dec 2023 08:52:48 +0000 (00:52 -0800)]
load_elf: add forgotten auxv entries
Jacob Lifshay [Thu, 7 Dec 2023 07:36:14 +0000 (23:36 -0800)]
load_elf: copy linux's auxv, argv, and env layout
Jacob Lifshay [Wed, 6 Dec 2023 09:11:56 +0000 (01:11 -0800)]
load_elf: match linux better for statically-linked binaries
we still need more auxv entries, but the rest should match close
enough now.
Jacob Lifshay [Wed, 6 Dec 2023 09:09:42 +0000 (01:09 -0800)]
elf/simple_cases: enable debug info for statically-linked glibc demo
Jacob Lifshay [Wed, 6 Dec 2023 09:08:25 +0000 (01:08 -0800)]
MemMMap: raise error for bad load/fetch addresses when emulating mmap
Jacob Lifshay [Wed, 6 Dec 2023 09:07:42 +0000 (01:07 -0800)]
caller.py: don't try to make zero-sized memory accesses, they error
Jacob Lifshay [Wed, 6 Dec 2023 09:06:26 +0000 (01:06 -0800)]
test/elf/__init__: make objdump go to default log kind -- it's quieter
Jacob Lifshay [Mon, 4 Dec 2023 10:15:47 +0000 (02:15 -0800)]
caller.py: implement writev syscall
Jacob Lifshay [Mon, 4 Dec 2023 10:15:30 +0000 (02:15 -0800)]
fixedsync.mdwn: add sync instruction
Jacob Lifshay [Mon, 4 Dec 2023 10:13:52 +0000 (02:13 -0800)]
MemMMap: use modified_pages.discard instead of remove since pages may not be modified