Commit Graph

89 Commits

Author SHA1 Message Date
Károly Balogh
452de9187c * removed debug writelns from florian's previous commit 2005-02-02 02:19:42 +00:00
florian
49347a0117 * fixed:
r1 = record
      p : procedure stdcall;
      i : longint;
    end;
2005-02-01 23:18:54 +00:00
peter
e820bc93f2 * interface wrapper generation moved to cgobj
* generate interface wrappers after the module is parsed
2005-01-24 22:08:32 +00:00
peter
5c98e04106 * write realname for published methods 2005-01-10 20:41:55 +00:00
peter
bb32ee0457 * fix interface vtbl optimization
* replace ugly pointer construct of ioffset()
2005-01-09 15:05:29 +00:00
peter
272cf5b9f1 * also compare procoptions and proctype when searching interface
implementations
2004-12-26 20:16:44 +00:00
florian
1943e6a5ab * write nil entry after last entry to vmt table so the size of the vmt can be determined 2004-11-20 14:39:27 +00:00
peter
14d25d278b mangledname setting moved to place after the complete proc declaration is read
import generation moved to place where body is also parsed (still gives problems with win32)
2004-11-17 22:21:35 +00:00
peter
e740a66636 * tparaitem removed, use tparavarsym instead
* parameter order is now calculated from paranr value in tparavarsym
2004-11-15 23:35:30 +00:00
peter
6458bd0ce1 * tvarsym splitted 2004-11-08 22:09:58 +00:00
peter
3eebc18aab * fixed writing of methodtable 2004-10-24 13:35:39 +00:00
mazen
581b52422c - remove $IFDEF DELPHI and related code
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
peter
6ffca1688e * fixed visibility for procsyms
* fixed override check when there was no entry yet
2004-10-12 14:34:49 +00:00
peter
33a834821f * paraloc branch merged 2004-09-21 17:25:12 +00:00
peter
29207e007a * fixed and cleanup of overriding non-visible methods 2004-09-13 20:31:07 +00:00
peter
a939095dbe * revert has_localst patch
* replace aktstaticsymtable/aktglobalsymtable with current_module
2004-07-09 22:17:31 +00:00
peter
cf5c3b77c2 * ignore po_haslocalst 2004-07-06 20:58:50 +00:00
peter
e448a6731d * fix writing of private virtual/overriden methods that aren't
visibile in the current class, bug #3184
2004-06-29 20:58:46 +00:00
florian
8a9758c5e2 * logs truncated 2004-06-20 08:55:28 +00:00
florian
588e2c38bf * dwarf branch merged 2004-06-16 20:07:06 +00:00
florian
b7d006777c * vtbls are now properly aligned 2004-03-31 21:01:01 +00:00
olle
a7f25327f6 * change AT_FUNCTION to AT_DATA where appropriate 2004-03-18 11:43:57 +00:00
peter
abbd54f334 * stabs updates to write stabs for def for all implictly used
units
2004-03-08 22:07:46 +00:00
peter
f8c0dd3a62 * fix compare of parameters, they need to match exact 2004-03-04 17:23:50 +00:00
olle
4fecc1a56f * big transformation of Tai_[const_]Symbol.Create[data]name* 2004-03-02 00:36:32 +00:00
florian
fabb9c33ac * top_symbol killed
+ refaddr to treference added
  + refsymbol to treference added
  * top_local stuff moved to an extra record to save memory
  + aint introduced
  * tppufile.get/putint64/aint implemented
2004-02-27 10:21:04 +00:00
peter
356b3378e8 * tai_const.create_ptr added 2004-02-26 16:16:38 +00:00
florian
06a33abebd * fixed arg. area calculation 2004-02-19 17:07:42 +00:00
peter
4f913922fa * overload directive checking for methods is now done
when the vmt is generated
2004-02-13 15:41:24 +00:00
florian
b4bbc5c383 * web bug #2942 fixed: reintroduce isn't necessary in methods of child classes of course 2004-02-08 23:30:43 +00:00
peter
2d8d788211 * record alignment splitted in fieldalignment and recordalignment,
the latter is used when this record is inserted in another record.
2004-01-28 20:30:18 +00:00
florian
75e2de9f2c + reintroduce implemented 2004-01-21 14:22:00 +00:00
peter
84b1451a34 * tai_const.create_32bit changed to cardinal 2003-12-08 22:34:24 +00:00
peter
b26e3c444a * reversed offset calculation for caller side so it works
correctly for interfaces
2003-11-28 17:24:22 +00:00
peter
19727a3609 * don't search for overloads in parents for constructors 2003-10-30 16:23:13 +00:00
peter
cac39ccfd4 * renamed mangeldname_prefix to make_mangledname and made it more
generic
  * make_mangledname is now also used for internal threadvar/resstring
    lists
  * Add P$ in front of program modulename to prevent duplicated symbols
    at assembler level, because the main program can have the same name
    as a unit, see webtbs/tw1251b
2003-10-29 19:48:50 +00:00
peter
303b5252e4 * removed is_visible_for_proc
* search also for class overloads when finding interface
    implementations
2003-10-13 14:05:12 +00:00
peter
fb81b7ebbb * old trgobj moved to x86/rgcpu and renamed to trgx86fpu
* tregisteralloctor renamed to trgobj
  * removed rgobj from a lot of units
  * moved location_* and reference_* to cgobj
  * first things for mmx register allocation
2003-10-10 17:48:13 +00:00
peter
e720d73bd9 * compare_paras() has a parameter to ignore hidden parameters
* cross unit overload searching ignores hidden parameters when
    comparing parameter lists. Now function(string):string is
    not overriden with procedure(string) which has the same visible
    parameter list
2003-10-07 21:14:32 +00:00
peter
d582ff8fca * inherited forced calling convention
* show hints when forward doesn't match
2003-10-07 20:44:22 +00:00
peter
70fe77ca7c * procinfo unit contains tprocinfo
* cginfo renamed to cgbase
  * moved cgmessage to verbose
  * fixed ppc and sparc compiles
2003-10-01 20:34:48 +00:00
peter
8af51ea6d3 * locals and paras are allocated in the code generation
* tvarsym.localloc contains the location of para/local when
    generating code for the current procedure
2003-09-23 17:56:05 +00:00
peter
8cf0c122f4 * remove convert_registers 2003-08-21 14:47:41 +00:00
daniel
ebb1f3a361 * New register coding now mandatory, some more convert_registers calls
removed.
2003-08-20 09:07:00 +00:00
peter
6731abb0db * fixed some reported bugs 2003-08-10 17:25:23 +00:00
peter
230a14ff68 * getregisterfpu size parameter added
* op_const_reg size parameter added
  * sparc updates
2003-06-01 21:38:06 +00:00
peter
8ff5792776 * remove some unit dependencies
* current_procinfo changes to store more info
2003-05-23 14:27:35 +00:00
peter
f4b818fc1d * removed funcretn,funcretsym, function result is now in varsym
and aliases for result and function name are added using absolutesym
  * vs_hidden parameter for funcret passed in parameter
  * vs_hidden fixes
  * writenode changed to printnode and released from extdebug
  * -vp option added to generate a tree.log with the nodetree
  * nicer printnode for statements, callnode
2003-04-25 20:59:33 +00:00
peter
a13db1decb * range check error for GUID fixed 2003-04-23 10:11:22 +00:00
daniel
cbe0383afe * Further work to convert codegenerator register convention;
internalerror bug fixed.
2003-01-13 14:54:34 +00:00