diff options
author | jonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2006-08-19 11:14:43 +0000 |
---|---|---|
committer | jonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2006-08-19 11:14:43 +0000 |
commit | 0ff62b3a3caf5e53d903e32438757987c9698089 (patch) | |
tree | cebed9021825b607b8247f6759c5a312ba6fd444 /compiler/cgutils.pas | |
parent | 7de245cc83716f9a95070788b4d5d3c077207ea2 (diff) | |
download | fpc-0ff62b3a3caf5e53d903e32438757987c9698089.tar.gz |
* code generator support for subsetreferences (memory locations which
are not a multiple of 8 bits, nor necessarily aligned at a
multiple of 8 bits). Supports both constant and variable bit
indices.
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@4443 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/cgutils.pas')
-rw-r--r-- | compiler/cgutils.pas | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/cgutils.pas b/compiler/cgutils.pas index 192c9e7e34..7c3a8ca300 100644 --- a/compiler/cgutils.pas +++ b/compiler/cgutils.pas @@ -67,6 +67,12 @@ unit cgutils; subsetregsize: tcgsize; end; + tsubsetreference = record + ref: treference; + bitindexreg: tregister; + startbit, bitlen: byte; + end; + tlocation = record loc : TCGLoc; size : TCGSize; @@ -103,6 +109,9 @@ unit cgutils; LOC_CSUBSETREG : ( sreg: tsubsetregister; ); + LOC_SUBSETREF : ( + sref: tsubsetreference; + ) end; |