ghostmansd | lkcl, about 5bf3c705cc0736cf34456d173fc4c50da5aba037 | 03:59 |
---|---|---|
ghostmansd | I know what the fix is :-) | 03:59 |
ghostmansd | the problem is, I don't understand what's going wrong if I pass FSI instead of SI | 04:00 |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 04:36 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@broadband-188-32-220-156.ip.moscow.rt.ru> has quit IRC | 06:51 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.162.153> has joined #libre-soc | 06:52 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.162.153> has quit IRC | 08:57 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@broadband-188-32-220-156.ip.moscow.rt.ru> has joined #libre-soc | 08:58 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 09:51 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 10:38 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 10:38 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 10:54 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 10:58 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 11:11 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 11:20 | |
programmerjake | interesting reading: https://people.kernel.org/linusw/rust-in-perspective | 11:46 |
markos | nice article, I like the historical background given behind all those languages | 12:07 |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 12:25 | |
*** octavius <octavius!~octavius@23.125.93.209.dyn.plus.net> has joined #libre-soc | 13:35 | |
*** octavius <octavius!~octavius@23.125.93.209.dyn.plus.net> has quit IRC | 13:39 | |
*** josuah <josuah!~irc@46.23.94.12> has quit IRC | 15:27 | |
*** josuah <josuah!~irc@46.23.94.12> has joined #libre-soc | 15:32 | |
ghostmansd | I'm now re-considering the way we handle field mappings. I posted some of the investigations here: https://bugs.libre-soc.org/show_bug.cgi?id=898#c1. Below you can find how the new fields look. | 16:10 |
ghostmansd | test_caller_svp64.py works | 16:16 |
ghostmansd | Unsurprizingly, though: I haven't yet switched the code to these new classes (except for insndb and binutils). | 16:17 |
*** tplaten <tplaten!~isengaara@55d43f42.access.ecotel.net> has joined #libre-soc | 16:23 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@broadband-188-32-220-156.ip.moscow.rt.ru> has quit IRC | 16:37 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.162.59> has joined #libre-soc | 16:37 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.162.59> has quit IRC | 16:46 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.12> has joined #libre-soc | 16:50 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.12> has quit IRC | 17:00 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@broadband-188-32-220-156.ip.moscow.rt.ru> has joined #libre-soc | 17:01 | |
lkcl | ghostmansd, as long as PowerDecoderSubset can recognise the fields in their original form (by CSV column names), it's perfectly fine | 17:18 |
lkcl | or | 17:18 |
lkcl | more to the point | 17:18 |
lkcl | if the fieldnames created as a PowerOp remain absolutely the same under all circumstances and under absolutely no circumstances change | 17:19 |
lkcl | for all **TWELVE** uses across twelve pipelines | 17:19 |
lkcl | and in the ISACaller Simulator | 17:19 |
lkcl | it's "fine" | 17:19 |
lkcl | the good news there, being: get it wrong it'll be bloody obvious | 17:20 |
ghostmansd | Well I'm mostly centered on pysvp64asm/pysvp64dis/binutils for now | 17:21 |
ghostmansd | But, what was obvious too, many our tricks are really covered by such fields, let's call them mappings. | 17:22 |
ghostmansd | Mostly stuff from consts.py. | 17:23 |
ghostmansd | Plus also some bits which were in the caller.py (RM and Prefix fields). | 17:23 |
ghostmansd | What I really like about it is how it's remapped according to the actual layout. | 17:25 |
ghostmansd | For example, how RM adopts the layout to match it to Prefix bits. | 17:25 |
ghostmansd | In fact, inherit or incorporate these structures as many times you want, there will be exactly 1 selectable int throughout the whole course. And only 1 layer of access: the fields are remapped upon the time the class is created. | 17:28 |
ghostmansd | That is, svp64_insn.prefix.rm.elwidth keeps the same SelectableInt created by the time we created svp64_insn instance. | 17:29 |
ghostmansd | And all offsets were already "statically" known upon module import. That is, when I access elwidth, I access SI immediately with the exact index. | 17:29 |
ghostmansd | This index already took into account all the changes related to layout. | 17:30 |
lkcl | yes - i very much wanted the spec to be directly reflected in the code, so preserving field names/layout was important | 19:45 |
lkcl | there is a huge penalty associated with arithmetic done on FSIs though! it literally has to do a bit-level reconstruction of the value, perform the arithmetic operation, then push the result back again *one bit at a time* into the underlying SI | 19:51 |
lkcl | which is mental | 19:51 |
lkcl | and we don't care | 19:51 |
lkcl | ISACaller is still 1,000 times faster than running against TestIssuer, so serves its purpose extremely well | 19:52 |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 20:58 | |
*** tplaten <tplaten!~isengaara@55d43f42.access.ecotel.net> has quit IRC | 20:59 | |
*** ghostmansd <ghostmansd!~ghostmans@broadband-188-32-220-156.ip.moscow.rt.ru> has quit IRC | 21:43 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!