Commit History

Author SHA1 Message Date
  paul 17ef986b17 compiler: don't treat methods without self node (static class methods, class contructors, destructors, operators) as method pointers, fix comparison of procdef and procvardef to allow assignment of a static class method to a regular procedural variable (issue #24486) 12 years ago
  florian 3d90ac82f8 * disable regable 4 bytes records on 16 bit alu targets, to enable them, location handling should be rewritten else gen_load_cgpara_loc gets even more messy 12 years ago
  nickysn 259bb5421e * tobjectdef.vmtmethodoffset updated to take into account the current i8086 memory model code pointer size 12 years ago
  svenbarth 53ea24a0b1 Correctly specialize generics if locally declared types are used (e.g. two procedures could both define a different "TRec" type which is used to specialize a generic inside the procedures). 12 years ago
  sergei 8b1463aedc * tprocdef.customprocname: fixed bug introduced in r21069 that was causing result to always contain 'procedure' or 'function' word. These should be included only if pno_proctypeoption flag is given. Resolves #24640. 12 years ago
  florian 541d67771b * keep managed types in registers if possible. Under certain circumstances (if they don't require init/final code, 12 years ago
  nickysn 2809ed6fb9 * updated tfiledef.setsize to support the size of textrec in the medium memory model 12 years ago
  nickysn b5c032874f * set the po_far flag by default in far code memory models 12 years ago
  nickysn b6c979e55f + added tabstractprocdef.address_size which returns the actual address size of the proc, taking into account far procs 12 years ago
  nickysn c1984bdf56 * take into account far code and far data in tprocvardef.size 12 years ago
  nickysn 5966cc088d * got rid of tpointerdef.update_savesize, overrode size instead 12 years ago
  nickysn 5b503f42c7 + implemented Mem/MemW/MemL[] for i8086 12 years ago
  svenbarth 956b26bc97 Completely reworked implementation of generic constraints, by moving the generic constraint data from the symbols to the definitions (I originally thought that this would simplyfy things, but the more correct approach is to add it to the defs). 12 years ago
  svenbarth cc5a108cca Allocate the list for generic parameters in tstoreddef only on demand as most defs won't contain generic parameters anyway (avoids a little bit of runtime and memory overhead per def). 12 years ago
  nickysn e810cabf50 * set tpointerdef.savesize correctly for far and huge pointers 12 years ago
  nickysn f571aebdd0 * tx86pointertyp moved from unit symdef to symconst, so it can be used by ppudump 12 years ago
  nickysn d95c995894 - rm the commented out code of tpointerdef.createfar 12 years ago
  nickysn ae74cd17d2 * tarraydef.ppuload/ppuwrite: use ppufile.getasizeint/putasizeint for reading/writing lowrange and highrange as they're asizeint type, not aint 12 years ago
  nickysn b0f7786782 + added support for special versions of near data pointers associated with a x86 segment register. They are supported on all x86 platforms: i8086, i386 and x86_64 12 years ago
  florian 0e41df598e * merge i8086 branch by Nikolay Nikolov 12 years ago
  nickysn 5caadbbc40 + added method tabstractprocdef.is_pushleftright that exists on all platforms and returns whether parameters must be loaded left to right 12 years ago
  florian e1233e0111 * asizeint => longint, it is unlikely that an variant record well ever have more than 2^31 branches 12 years ago
  florian 2fdd3e2d0a + introduce tvariantrecbranch to be able to store 12 years ago
  florian 7ba197a221 * fix stack parameter handling for arm thumb 12 years ago
  nickysn b178a038f5 * set the FileRec size for i8086 12 years ago
  nickysn a0e683bed6 * set the proper TextRec size for i8086 12 years ago
  nickysn 30d661734c + enable tprocdef.fpu_used for i8086 also 12 years ago
  nickysn a9809323dc some more generic i8086 defines added 12 years ago
  svenbarth 344571cb4e Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants. 12 years ago
  svenbarth 6fb958a491 symdef.pas, tstoreddef: 12 years ago