Post A8gvkT0ghcE2EhM8H2 by peter@babic.dev
(DIR) More posts by peter@babic.dev
(DIR) Post #A8gvkSREpPrwSklp1E by ekaitz_zarraga@mastodon.social
2021-06-26T22:15:29Z
0 likes, 3 repeats
So I published a kilometric blogpost about some stuff I learned on machine code generation.Random #riscv and #JIT compilation stuff here.Hope you enjoy the mess, because it gets messy.https://ekaitz.elenq.tech/machine-code-generation.html
(DIR) Post #A8gvkT0ghcE2EhM8H2 by peter@babic.dev
2021-06-26T22:24:30.641041Z
0 likes, 0 repeats
@ekaitz_zarraga wow, people at university I attended get degrees for shorter works
(DIR) Post #A8gvkU1QwKPrNIiF4i by ekaitz_zarraga@mastodon.social
2021-06-26T22:16:03Z
1 likes, 0 repeats
When your blogpost has an index, you know you wrote too much.
(DIR) Post #A8htIhc0oV9QfHPJEe by ekaitz_zarraga@mastodon.social
2021-06-27T09:09:57Z
1 likes, 0 repeats
@peter yeah... :DThanks
(DIR) Post #A8kUzD4mJ4sJ1zul2O by ekaitz_zarraga@mastodon.social
2021-06-28T15:42:09Z
0 likes, 0 repeats
Did you read this thing @Shamar ?
(DIR) Post #A8kUzDcSHroUiRfeWu by Shamar@qoto.org
2021-06-28T15:43:29Z
0 likes, 0 repeats
@ekaitz_zarraga No I didn't sorry.But the since the first sentence I know I'll love it! 😉
(DIR) Post #A8kV6TiMqLvOf5tjDk by ekaitz_zarraga@mastodon.social
2021-06-28T15:44:47Z
0 likes, 0 repeats
@Shamar ping me with your feedback when you read it!
(DIR) Post #A8khupXFBiW0GZTGUq by Shamar@qoto.org
2021-06-28T18:08:21Z
0 likes, 0 repeats
@ekaitz_zarragaFantastic read.I wish I had something like this to read a few years ago. Having always worked with x86_64, I didn't know about constant pools or veneers, but in fact they are clever tricks.To be honest I'm not sure if like #JIT compliation.On one hand, it makes clear that code is data and data is code, that is a good thing.But on the other it means that at runtime you cannot mark all writable memory as No Execute, that is a valuable security feature (I do this by default in #Jehanne and there is no mmap there).Obviously a JIT compiler could compile the program, save it into a ELF executable file and fork/exec/wait for it, but all the speedup would probably go with the context switches.As an alternative (fantasticating of a homoiconic language to build an homogeneous OS) could be to turn the kernel itself into a JIT compiler.This way, the both the readonly and executable permission of a script would just be preserved in the compiled memory, while allowing the kernel to write it.Well just thinking aloud... you know...Anyway, great read Ekaitz, thanks for sharing! You are becoming incredibly good at writing divulgative texts about #Informatics!Compliments!
(DIR) Post #A8kijrzJpOxwdswMWu by ekaitz_zarraga@mastodon.social
2021-06-28T18:17:35Z
0 likes, 0 repeats
@Shamar Thanks man, I appreciate your words.I'm interested on JIT compilation. It could be really cool to have a script based OS like based on Scheme or something like that but à la Oberon: monouser and all that.In that case the interpreter/OS could be also the JIT compiler.That's a good thing to fantasize about.
(DIR) Post #A8miib6bV3VUJCf2rA by Kooda@merveilles.town
2021-06-29T12:34:27Z
0 likes, 1 repeats
@ekaitz_zarraga @Shamar@qoto.org I haven’t planned JIT compilation, but I’m currently working on the first prototype of my Scheme-like system for RISC-V computers.It has an assembly-like DSL in it, so it can generate code at runtime. 😄 The language itself is implemented in this DSL so it’ll self-host pretty soon I hope.(here is the repo for the DSL, check out the examples/*.k files for a quick lookhttps://www.upyum.com/cgit.cgi/comfy-rv/ )I’ll definitely check out this huge article, it’ll probable help me a lot!
(DIR) Post #A8mjb5mvdeVl6gRXoO by Shamar@qoto.org
2021-06-29T17:36:36Z
0 likes, 0 repeats
@Kooda That check.rc has all my sympathy.@ekaitz_zarraga