IRC channel logs
2025-03-14.log
back to list of logs
<oriansj>gtker: for byte based architectures the way to express signed 16bit values is @0x1234 but for unsigned 16bit values is $0x1234 <oriansj>stikonas: it is ok to break knight architecture, I'll fix it later <stikonas>well, it's still an ugly hack (this diff above) <stikonas>but I guess our tokenizer is not very good with : <oriansj>well originally I only supported : for goto labels <oriansj>as I could see a real need for goto in M2-Planet but not many other real uses <stikonas>maybe it would be cleaner to manually split ":token" into "token" followed by another token ":" <oriansj>easy to do, just requires more logic to handle labels as they would no longer be prefixed by : <stikonas>or that might simply be me using old mescc-tools <oriansj>knight can be sacrificed; I doubt anyone besides me was interested in making it real hardware. <stikonas>no, this was simply me not having your latest changes <oriansj>stikonas: technically I added support for !@$%& to knight <ekaitz>i'm still building with the numbers <ekaitz>stikonas: works for at least building it <ekaitz>i didn't test yet if the resulting mes works <stikonas>anyway, we can try to make a release tomorrow or on saturday then... <stikonas>sounds like you would benefit a lot from new M2-Planet <stikonas>quite a few things since the last release <stikonas>it's probably not yet at that point, but soon M2-Planet will be approaching mescc... <ekaitz>and I'm trying to make mes faster! <ekaitz>my view is that mes could become more than an interpreter that runs a compiler <ekaitz>and also, if mes is faster the compiler could be more interesting <stikonas>I guess the better M2-Planet is, the easier your life in developing mes would be <stikonas>no need to manually restrict to small subset of C <ekaitz>stikonas: worked and mes-m2 runs perfectly <stikonas>well, I'll keep PR open till tomorrow in case there are review <stikonas>I suspect obvious review comment would be to add tests... <ekaitz>but i didn't test with enums or any other thing <ekaitz>feel free to use my switch/case as a test <ekaitz>it's a pretty common parser for escape codes in a string <oriansj>well we don't support the full range of escape codes in M2-Planet <ekaitz>i don't think mes supports all of them either <ekaitz>but i mean the test case is a pretty common pattern to have in code, specially in compilers <stikonas>yeah... it's that classic example of "trusting trust" <stikonas>where you can't find the actual value in source of the compiler <ekaitz>well, tomorrow i'll test more things <matrix_bridge><gtker> Stikonas: Maybe update tests with the new constant expr things? <matrix_bridge><Andrius Štikonas> gtker: we also need to submit your new M1 defines to mes repo... <matrix_bridge><gtker> stikonas: How exactly do we do that? I'm getting a 502 with that link <matrix_bridge><gtker> Also, I would like to add oriansj suggestion regarding 2 byte values in a quick PR <matrix_bridge><Andrius Štikonas> gtker: that link should work, I guess just server is too overloaded <matrix_bridge><Andrius Štikonas> but submission is via email patches to bug-mes@gnu.org <matrix_bridge><gtker> I'm not too fond of email based patches, do you mind doing it? <matrix_bridge><gtker> I could add some tests for the new constant expressions instead if you want <matrix_bridge><Andrius Štikonas> but yeah, if you want to create some tests <matrix_bridge><gtker> Feel free to merge your PR, I'll create a new PR based on it with the 2 byte changes and some tests for the new constant expressions <stikonas>gtker: I'm now looking at 101. So tat 2 byte changes is still not clear to me <stikonas>we could perhaps make $ work on risc-v too since that is unused <stikonas>but @ is already used there for other purpose <matrix_bridge><gtker> It's based on oriansjs comment previously: "gtker: for byte based architectures the way to express signed 16bit values is @0x1234 but for unsigned 16bit values is $0x1234" <stikonas>hmm, need to think how to do it properly :( <matrix_bridge><gtker> Yeah, either that or manually keep track in M2-Planet and switch them. It's probably best to do it in M1 though <stikonas>cauase this 16-bit feature is still useful <stikonas>which was a workaround for missing initializers <stikonas>well, here of course it's eventually using emit_load_immediate() <matrix_bridge><gtker> We'll probably need M1 support. It's probably the cleanest way as well <matrix_bridge><gtker> stikonas: Is the known_issues.org file still used for tracking or should I just create github issues for the ones that are currently there and remove it? <stikonas>well, we do have some duplication though <stikonas>I guess known_issues.org is more like a note to users <matrix_bridge><gtker> The first one, "AMD64 & AArch64 int initialization wrong" I'm not even sure if that's true any more? <matrix_bridge><gtker> Personally I looked at the github issue tracker first when I had a problem. Only realized the file was there afterwards <stikonas>hmm, not sure what it means either. oriansj, do you know?