Commit Graph

10 Commits

Author SHA1 Message Date
Jonas Maebe
9a8a323578 * (again) fixed loading the address of the string data of an ansi/
unicodestring constants: specify the type of the pointer to the
    string record (which is indirect) rather than that of the string
    array (which will implicitly be the result of the getelementptr)

git-svn-id: trunk@31256 -
2015-07-30 16:58:19 +00:00
Jonas Maebe
f40ea04540 * changed getarraydef() into a tarraydef.getreusable() class method
git-svn-id: trunk@31147 -
2015-06-23 21:23:18 +00:00
Jonas Maebe
f402b0d7df * changed getpointerdef() into a tpointerdef.getreusable() class method
o allows removing the ugly x86 hacks

git-svn-id: trunk@31144 -
2015-06-22 08:17:49 +00:00
Jonas Maebe
4c11d34169 * fixed loading the address of the string data of an ansi/unicodestring
constant in the llvm code generator (the constant is a record rather than
    a pointer to a record -> not indirect)

git-svn-id: trunk@31062 -
2015-06-13 22:48:43 +00:00
Jonas Maebe
b176ed9f80 * ensure that the llvmst is initialised before using a field's llvmfieldnr
(and at the same time take advantage of this to perform a sanity check)

git-svn-id: trunk@31061 -
2015-06-13 22:48:40 +00:00
Jonas Maebe
9e074d036b * migrated the handling of ansi/unicodestring constants to the high level
typed constant builder + llvm implementation

git-svn-id: branches/hlcgllvm@28327 -
2014-08-06 18:04:40 +00:00
Jonas Maebe
4f906fb9c9 * fixed datadef for untyped string constants (terminating #0 is one
character, not two)

git-svn-id: branches/hlcgllvm@28320 -
2014-08-06 18:04:19 +00:00
Jonas Maebe
5c8e723cf8 * handle the fact that we emit constant strings that can be longer or shorter
than their type at the Pascal level

git-svn-id: branches/hlcgllvm@28211 -
2014-07-12 22:42:31 +00:00
Jonas Maebe
80c6225bf4 * fixed handling of comp and currency when they have to be handled by the
fpu: treat them as extended when they are loaded into registers, and as
    int64 when loading from/storing to memory

git-svn-id: branches/hlcgllvm@26048 -
2013-11-11 11:16:01 +00:00
Jonas Maebe
d04e05ff82 + handling of floating point constants in llvm code (just load them in a
register, llvm will take care of putting them in memory if necessary)

git-svn-id: branches/hlcgllvm@26046 -
2013-11-11 11:15:54 +00:00