[libre-riscv-dev] [Bug 286] DataPointer concept: long-immediate references
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Wed Apr 15 10:10:58 BST 2020
https://bugs.libre-soc.org/show_bug.cgi?id=286
--- Comment #2 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to cand from comment #1)
> A banked data scheme, like on the 65816, would be a slightly simpler
> version. Instead of incrementing a pointer, the data bank register contains
> the high bits, and the instruction contains the low bits.
that's the 2nd version i came up with
> Such a setup also
> lets you access larger-than-11-bit immediates,
however you still need bits (or an instruction) specifying the immediate width,
somehow.
which is why i borrowed a couple of bits from the immediate to do that.
> and is basically MIPS's small
> data section made customizable.
interesting. worth investigating.
> It would still be relocatable, just in 11 bit alignments. The linker would
> adjust the set-data-bank-register instructions on program load, for
> position-independent code.
nice.
my feeling is we should take thus seriously because large immediate data load
is such a massive part of programs yet they are highly space inefficient.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-riscv-dev
mailing list