Conversation
Notices
-
Peter Babič (peter@babic.dev)'s status on Sunday, 27-Jun-2021 11:09:59 CEST Peter Babič @ekaitz_zarraga wow, people at university I attended get degrees for shorter works -
shamar@qoto.org's status on Monday, 28-Jun-2021 17:44:48 CEST Shamar No I didn't sorry.
But the since the first sentence I know I'll love it! 😉
-
Vertigo #$FF (vertigo@hackers.town)'s status on Monday, 28-Jun-2021 19:15:35 CEST Vertigo #$FF @ekaitz_zarraga Concerning long literals, what I've done in the past is to maintain two buffers, one for constants, and one for code. When emitting the code, I'd then spit out both buffers, one after the other (order doesn't usually matter). That way, a single AUIPC can be used and constants can be referenced using larger offsets.
One thing to make sure of though: make sure your constants are 64-bit aligned. I didn't see reference to this in your article. I know that RV64GC Linux ABI supports non-aligned references, but not all RISC-V environments do.
-