(no commit message)
[libreriscv.git] / openpower / sv / toc_data_pointer.mdwn
1 # Data Pointer (aka TOC) Immediate Loading
2
3 See <https://bugs.libre-soc.org/show_bug.cgi?id=286>
4
5 The concept and convention of a Table of Contents in RISC is a common one, to deal with the fsct that immediates range is short and very inefficient to get a 64 bit immediate (6 instructions in v3.0B). The TOC allows a short-range immediate to access full 64 bit data via LDs.
6
7 However with a huge percentage of typical instructions being TOC style LDs (typically 6%) it makes them a high priority target for reducing executable size and I-Cache pressure. What if there were a way to indicate that a given use of an immediate, in any instruction, was to be a micro-coded implicit TOC Load?