+ hlcgobj: high level code generator class. It has basically the same

interface as cgobj, except that all type parameters are defs instead
    of tcgsize. Also includes some procedures from ncgutil (over time,
    all of ncgutil will probably integrated here so it can be easily
    overridden)
  + hlcg2ll: pass-through implementation of thlcg that forwards everything
    either to cgobj or ncgutil, for use by the classic code generator
    clients (all current platforms)
  + added "def" field to tcgpara to record the tdef of the parameter
    (used by the high level code generator)

git-svn-id: branches/jvmbackend@18279 -
This commit is contained in:
Jonas Maebe 2011-08-20 07:21:09 +00:00
parent d885bb66a0
commit db203431b2
4 changed files with 2632 additions and 0 deletions

2
.gitattributes vendored
View File

@ -149,6 +149,8 @@ compiler/gendef.pas svneol=native#text/plain
compiler/generic/cpuinfo.pas svneol=native#text/plain
compiler/globals.pas svneol=native#text/plain
compiler/globtype.pas svneol=native#text/plain
compiler/hlcg2ll.pas svneol=native#text/plain
compiler/hlcgobj.pas svneol=native#text/plain
compiler/html/i386/readme.txt svneol=native#text/plain
compiler/html/powerpc/readme.txt svneol=native#text/plain
compiler/htypechk.pas svneol=native#text/plain

1144
compiler/hlcg2ll.pas Normal file

File diff suppressed because it is too large Load Diff

1485
compiler/hlcgobj.pas Normal file

File diff suppressed because it is too large Load Diff

View File

@ -66,6 +66,7 @@ unit parabase;
IntSize : tcgint; { size of the total location in bytes }
Alignment : ShortInt;
Size : TCGSize; { Size of the parameter included in all locations }
Def : tdef; { Type of the parameter }
{$ifdef powerpc}
composite: boolean; { under the AIX abi, how certain parameters are passed depends on whether they are composite or not }
{$endif powerpc}