Monday, 2022-12-12

*** lkcl <lkcl!> has joined #libre-soc00:33
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC02:59
*** ckie <ckie!~ckie@user/cookie> has quit IRC05:41
*** ckie <ckie!~ckie@user/cookie> has joined #libre-soc05:42
*** ghostmansd <ghostmansd!> has quit IRC07:55
*** octavius <octavius!> has joined #libre-soc09:36
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC10:41
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc10:45
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC10:49
*** ghostmansd[m] <ghostmansd[m]!> has joined #libre-soc10:50
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC13:00
*** octavius <octavius!> has quit IRC16:41
*** ghostmansd <ghostmansd!> has joined #libre-soc18:35
ghostmansdI found that we lack some tables from maddedus. The name doesn't ring a bell. Is it a recent addition?19:45
*** octavius <octavius!> has joined #libre-soc19:46
ghostmansdAh yeah, I see19:46
ghostmansdcommit d7967c3c21fbf1d37f200b9284232aec15a7fadd (origin/master, origin/HEAD, master)19:46
ghostmansdAuthor: Jacob Lifshay <>19:46
ghostmansdDate:   Fri Nov 11 00:52:36 2022 -080019:46
ghostmansdMultiply and Add Extended Doubleword Unsigned Signed19:46
ghostmansdUnsigned signed? Eh?19:47
ghostmansdcast programmerjake19:47
programmerjakeit multiplies an unsigned value by a signed value and adds to a signed value iirc19:51
ghostmansdAh, OK. Couldn't this be implemented in terms of the existing instructions?19:52
ghostmansd(that's not a suggestion to discard it, just curious)19:52
programmerjakeyes, powerpc is turing complete after all, it wouldn't be efficient though since you'd need 128-bit multiplies since there is no other unsigned-signed multiply instruction19:54
ghostmansdAha, got it19:54
ghostmansdShould it share the same intop with maddedu? Seems like yes.19:55
programmerjakeit can if you like, though it seems just as reasonable to have its own19:56
programmerjakeicr what i put in the csv19:56
ghostmansdOK stay tuned, I'll find out soon :-)19:57
ghostmansdI'm currently checking why insndb cannot find this19:57
ghostmansdfuck, stupid IRC19:57
ghostmansd`/tmp/py.s:1: Error: unrecognized opcode: `maddedus'`19:57
ghostmansdI'll never get used to this slash handling19:58
programmerjakeiirc when i added it i searched for all occurrences of maddedu and added it there...20:00
ghostmansdYeah that'd be the path any of us would follow :-)20:01
ghostmansdNever mind, I'm checking it, sorry for bothering20:01
ghostmansdHm. Local assembly is fine.20:01
ghostmansdAh damn20:02
ghostmansdShould have taken a look at the error20:02
ghostmansdIt's not in insndb, it's in the test itself20:02
ghostmansd  File "/home/ghostmansd/src/openpower-isa/src/openpower/decoder/isa/", line 1840, in call20:03
ghostmansd    info = self.instrs[ins_name]20:03
ghostmansdKeyError: 'maddedus'20:03
ghostmansdinsndb is fine, the test is wrong20:03
ghostmansdOr, well, not the test but the caller.py20:03
ghostmansdThat's src/openpower/decoder/isa/test_caller_bigint.py20:05
ghostmansdAh wait, I think I know20:05
ghostmansdI need to re-launch pywriter, eh?20:05
ghostmansdI always forget this bit20:06
ghostmansdSorry for bothering, again20:06
ghostmansdAt least this time it took about half an hour to debug20:06
ghostmansdOne day I'll be able to recall it in a minute20:06
programmerjakei rerun make right before running any tests in openpower-isa, it's fast enough...20:06
programmerjake`make && pytest -n auto -v |& less`20:07
ghostmansdI think I'll follow the same strategy20:07
ghostmansdWhere do you execute the pytest incantation?20:07
programmerjakeplus some env vars to prevent excessive output20:07
programmerjakerepo's root20:07
ghostmansdYeah but which repo? openpower-isa?20:07
ghostmansdI'm going to check insndb branch...20:08
ghostmansdBut the thing is that it needs one env exported20:08
ghostmansdAny way to check it fast on our CI?20:08
ghostmansdOr maybe pytest inherits exported variables?20:08
programmerjakeadd it to .gitlab-ci.yml and push20:09
programmerjakeit inherits env vars20:09
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc20:09
programmerjakeif you add that env var please add it in a new pytest line, otherwise it'll prevent testing the old codepath20:10
ghostmansd--- a/.gitlab-ci.yml20:10
ghostmansd+++ b/.gitlab-ci.yml20:10
ghostmansd@@ -94,4 +94,4 @@ build:20:10
ghostmansd         - make generate &> generate.log || { cat generate.log; false; }20:10
ghostmansd-        - SILENCELOG='!*,default' pytest -n auto -v src/openpower --maxfail=520:10
ghostmansd+        - SILENCELOG='!*,default' INSNDB=true pytest -n auto -v src/openpower --maxfail=520:10
ghostmansdI'm doing this on a separate branch, insndb, not on master20:10
programmerjakeplease don't delete the old line unless we won't be using the old code path ever again20:11
ghostmansdHow to add a new one?20:12
programmerjake(at which point imho the env var is useless and should be assumed to be always set)20:12
ghostmansdCould you help me, please?20:12
ghostmansdinsndb branch in openpower-isa20:12
programmerjakein your git diff, just delete the line deletion and leave the line addition20:12
ghostmansdAh, so just a separate step in CI duplicating the original line with the different env?20:13
ghostmansdAnd then the results are at...?20:13
ghostmansdI recall something with salsa20:13
programmerjakeactually, that won't work, since pytest fails so gitlab terminates the test terminates at the first failing statement kinda like bash set -e20:15
programmerjakeresults here:
ghostmansdOK I'll run pytest locally for now20:16
ghostmansd$(sudo apt-get install python3-pytest) under schroot20:16
ghostmansd$ SILENCELOG='!*,default' INSNDB=true pytest-3 -n auto -v src/openpower --maxfail=520:16
ghostmansd  File "/home/ghostmansd/.local/lib/python3.7/site-packages/xdist/", line 17, in <module>20:17
ghostmansd    from _pytest._io import TerminalWriter20:17
ghostmansdModuleNotFoundError: No module named '_pytest._io'20:17
programmerjakeinstall pytest-xdist using pip20:18
programmerjakenot using apt20:18
ghostmansd$(sudo python3 -m pip install pytest-xdist) ?20:19
programmerjakepython3 -m pip install --user pytest-xdist20:19
programmerjakeor you can use sudo if you like20:19
programmerjakeyou need to uninstall apt pytest first so pip downloads it20:19
ghostmansdYep, just removed it20:20
ghostmansd$ ILENCELOG='!*,default' INSNDB=true pytest -n auto -v src/openpower-isa --maxfail=520:20
ghostmansdbash: pytest: command not found20:20
ghostmansdStill not here :-(20:20
programmerjakedid you add the user bin path to PATH?20:21
programmerjake~/.local/bin iirc20:21
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC20:33
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc20:33
ghostmansdThanks, it helped!20:39
ghostmansdRunning the pytest20:39
programmerjakeghostmansd: i modified .gitlab-ci.yml to add a INSNDB=true pass on top of your insndb branch, i pushed it to the add-insndb-to-gitlab-ci branch:;a=commitdiff;h=40878d1f299aee44be4943fa6319f1567b03448d21:06
programmerjakethat way you can rebase it into your insndb branch whenever you update it next21:06
programmerjakeci at
ghostmansdthanks programmerjake!21:08
*** octavius <octavius!> has quit IRC21:51
*** doppo_ <doppo_!~doppo@2604:180::e0fc:a07f> has quit IRC23:49
*** doppo <doppo!~doppo@2604:180::e0fc:a07f> has joined #libre-soc23:50

Generated by 2.17.1 by Marius Gedminas - find it at!