*** gnucode <gnucode!~gnucode@user/jab> has quit IRC | 00:20 | |
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc | 00:21 | |
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC | 01:50 | |
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc | 01:50 | |
*** Gooberpatrol66 <Gooberpatrol66!~Gooberpat@user/gooberpatrol66> has quit IRC | 06:02 | |
*** openpowerbot <openpowerbot!~openpower@94-226-187-44.access.telenet.be> has quit IRC | 06:02 | |
*** Lucretia <Lucretia!~laguest@user/lucretia> has quit IRC | 06:02 | |
*** hl <hl!~hl@user/hl> has quit IRC | 06:02 | |
*** sauce <sauce!~sauce@free.and.open.sauce.icu> has quit IRC | 06:02 | |
*** JTL <JTL!~jtl@user/jtl> has quit IRC | 06:02 | |
*** rsc <rsc!~robert@fedora/rsc> has quit IRC | 06:02 | |
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC | 06:02 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC | 06:02 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has quit IRC | 06:02 | |
*** leah <leah!~leah@libreboot/developer/leah> has quit IRC | 06:02 | |
*** libredev <libredev!libredev@libredev.ircforever.org> has quit IRC | 06:02 | |
*** jn <jn!~quassel@user/jn/x-3390946> has quit IRC | 06:02 | |
*** toshywoshy <toshywoshy!~toshywosh@ptr-377wf33o3bnthuddmycb.18120a2.ip6.access.telenet.be> has quit IRC | 06:02 | |
*** mx08 <mx08!~mx08@user/mx08> has quit IRC | 06:02 | |
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc | 06:03 | |
*** openpowerbot <openpowerbot!~openpower@94-226-187-44.access.telenet.be> has joined #libre-soc | 06:03 | |
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc | 06:03 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has joined #libre-soc | 06:03 | |
*** Lucretia <Lucretia!~laguest@user/lucretia> has joined #libre-soc | 06:03 | |
*** Gooberpatrol66 <Gooberpatrol66!~Gooberpat@user/gooberpatrol66> has joined #libre-soc | 06:03 | |
*** JTL <JTL!~jtl@user/jtl> has joined #libre-soc | 06:03 | |
*** hl <hl!~hl@user/hl> has joined #libre-soc | 06:03 | |
*** sauce <sauce!~sauce@free.and.open.sauce.icu> has joined #libre-soc | 06:03 | |
*** rsc <rsc!~robert@fedora/rsc> has joined #libre-soc | 06:03 | |
*** jn <jn!~quassel@user/jn/x-3390946> has joined #libre-soc | 06:03 | |
*** leah <leah!~leah@libreboot/developer/leah> has joined #libre-soc | 06:03 | |
*** libredev <libredev!libredev@libredev.ircforever.org> has joined #libre-soc | 06:03 | |
*** mx08 <mx08!~mx08@user/mx08> has joined #libre-soc | 06:03 | |
*** toshywoshy <toshywoshy!~toshywosh@ptr-377wf33o3bnthuddmycb.18120a2.ip6.access.telenet.be> has joined #libre-soc | 06:03 | |
*** HumanGeek <HumanGeek!~HumanG33k@82.66.65.160> has quit IRC | 06:07 | |
*** HumanGeek <HumanGeek!~HumanG33k@82.66.65.160> has joined #libre-soc | 06:08 | |
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC | 07:23 | |
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc | 07:24 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has quit IRC | 10:34 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.164.179> has joined #libre-soc | 10:34 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.164.179> has quit IRC | 10:50 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has joined #libre-soc | 10:51 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has quit IRC | 10:55 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.234> has joined #libre-soc | 10:55 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.234> has quit IRC | 11:22 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has joined #libre-soc | 11:23 | |
*** psydroid <psydroid!~psydroid@user/psydroid> has joined #libre-soc | 12:41 | |
*** psydroid <psydroid!~psydroid@user/psydroid> has quit IRC | 12:42 | |
*** psydroid <psydroid!~psydroid@user/psydroid> has joined #libre-soc | 12:42 | |
*** octavius <octavius!~octavius@92.40.216.139.threembb.co.uk> has joined #libre-soc | 13:36 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has quit IRC | 14:14 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has joined #libre-soc | 14:14 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has quit IRC | 14:18 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.54.86> has joined #libre-soc | 14:19 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.54.86> has quit IRC | 14:49 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.16> has joined #libre-soc | 14:49 | |
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC | 15:09 | |
ghostmansd[m] | Assuming we have matched several opcodes which correspond to the same instruction name, what'd be the best way to handle this? I'm looking for something short and simple. | 16:08 |
---|---|---|
ghostmansd[m] | Say isel, or svshape. | 16:08 |
markos_ | that's by accident right? I mean it shouldn't be like that on purpose | 16:13 |
ghostmansd[m] | No, that's not an accident. :-) | 16:25 |
ghostmansd[m] | Check isel in major_31.csv | 16:26 |
openpowerbot | [irc] <programmerjake> isel just has a register field that takes up some of what minor_31.csv thinks is the XO field, if minor_31.csv used the proper syntax, it would have one entry with XO `------1111` | 16:29 |
openpowerbot | [irc] <programmerjake> but it doesn't and putting 64 entries is easier than changing the entire file's format | 16:30 |
ghostmansd[m] | Yes, but, still, technically, these are "one name : several records" | 16:30 |
openpowerbot | [irc] <programmerjake> for disassembly, it shouldn't matter, just output the name of the record corresponding to the opcode you got | 16:31 |
ghostmansd[m] | So, back to the original question raised. Assume I have several records found by name... how to assemble this? | 16:32 |
ghostmansd[m] | Yes, disassembly is fine, the question is about the assembly | 16:32 |
ghostmansd[m] | I can collect all entries and then merge somehow (IIRC I remove bits where dynamic operands map) | 16:33 |
ghostmansd[m] | But maybe something better | 16:33 |
openpowerbot | [irc] <programmerjake> that should work | 16:33 |
ghostmansd[m] | Or just owrewrite the stuff :-) | 16:33 |
ghostmansd[m] | I mean, we know where the dynamic operands map, hey | 16:34 |
ghostmansd[m] | So we can write directly | 16:34 |
openpowerbot | [irc] <programmerjake> for svshape, if you pass invalid operands, imho it's fine to end up generating svshape2, though it'd be nice to give an error | 16:34 |
ghostmansd[m] | That said, the format is pissed | 16:34 |
ghostmansd[m] | Because, as markos_ said, it shouldn't be like that on purpose :-) | 16:35 |
ghostmansd[m] | 1 name : 1 opcode. Anything else goes to "aliases" section. | 16:35 |
openpowerbot | [irc] <programmerjake> so, basically, if after removing the bits covered by operands, there are still different XO values, report an error, that shouldn't happen | 16:35 |
openpowerbot | [irc] <programmerjake> they should end up with 64 identical entries for isel and several for svshape, just deduplicate | 16:36 |
openpowerbot | [irc] <programmerjake> if that doesn't work (I'd be surprised), we can re-think then | 16:38 |
ghostmansd[m] | We don't even check whether all records match :-) | 16:39 |
ghostmansd[m] | I mean, hey, all such entries should have the identical operands | 16:39 |
ghostmansd[m] | And everything identical | 16:39 |
ghostmansd[m] | (or, better, another format, but Luke will object) | 16:39 |
openpowerbot | [irc] <programmerjake> well, just insert the records in a dict[str, insn-record] (after removing opcode bits from XO) while generating and report an error when there's an entry with a different insn-record, i don't expect that to be more than a few lines of code extra | 16:42 |
ghostmansd[m] | Yeah I know. | 16:43 |
openpowerbot | [irc] <programmerjake> :) | 16:43 |
ghostmansd[m] | My point was, the format sucks :-) | 16:43 |
ghostmansd[m] | But still we don't attempt to cover ourselves from a possible BOOM | 16:44 |
openpowerbot | [irc] <programmerjake> i agree, but changing it is too much work for now (I'm counting convincing lkcl as part of that work) | 16:44 |
ghostmansd[m] | If you count that, the work naturally takes decades :-) | 16:45 |
ghostmansd[m] | lkcl, no offense, Luke, I'm just kidding :-) | 16:46 |
openpowerbot | [irc] <programmerjake> yeah, i don't like that the general philosophy of the project is no error checking for a lot of stuff... | 16:46 |
ghostmansd[m] | Nah, that's actually my fault. I simply didn't stop at this place. | 16:54 |
ghostmansd[m] | But I hope next iteration will be better | 16:55 |
openpowerbot | [irc] <programmerjake> no, i'm referring to far more than just what you worked on, e.g. the pseudo-code parser, and consistency checking for fields.txt and many others... | 16:56 |
ghostmansd[m] | Oh, speaking of fields.txt: if there's something worse than our CSVs, it's the first candidate | 16:59 |
ghostmansd[m] | It's good for print, sure | 16:59 |
ghostmansd[m] | But so damn awful for parsing | 16:59 |
markos_ | shouldn't the opcodes be something like a dict of bitsets? | 16:59 |
openpowerbot | [irc] <programmerjake> I did add some error checking...so it will error if you misalign stuff | 17:00 |
openpowerbot | [irc] <programmerjake> if i were designing it, i'd follow vulkan's lead and encode the info in xml or json or something and have a generator that generates the pdf format rather than the other way around | 17:01 |
openpowerbot | [irc] <programmerjake> vulkan has the whole spec in xml so it's easy to extract the right info | 17:02 |
openpowerbot | [irc] <programmerjake> plus they distribute autogenerated json and a few other formats | 17:02 |
octavius | Unless we already have such a task, it's probably worth noting as a bug in the Future milestone. | 17:03 |
octavius | No resources to work on now, but definitely needed to include in future grants | 17:04 |
openpowerbot | [irc] <programmerjake> imho it's not worth the effort for now especially with the spec hopefully being released in latex soon and I've heard rumors of it coming with a parser for extracting stuff | 17:05 |
octavius | Ah of course, I keep forgetting about the eventual latex spec. Please ignore what I said | 17:16 |
*** choozy <choozy!~choozy@80-62-174-82.ftth.glasoperator.nl> has joined #libre-soc | 18:15 | |
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc | 19:17 | |
*** octavius <octavius!~octavius@92.40.216.139.threembb.co.uk> has quit IRC | 21:41 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.43.16> has quit IRC | 21:49 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.168.161> has joined #libre-soc | 21:50 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@176.59.168.161> has quit IRC | 21:56 | |
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@37.204.162.147> has joined #libre-soc | 21:57 | |
*** choozy <choozy!~choozy@80-62-174-82.ftth.glasoperator.nl> has quit IRC | 22:00 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!