- Do not remove the $parentfp parameter as was done in the previous optimization approach. Instead when $parentfp is unused to the following:
- On the caller side: Omit passing the value for $parentfp for targets where tcgcallparanode.push_zero_sized_value_para=false (classic CPU targets).
Pass 0/nil as $parentfp for targets where tcgcallparanode.push_zero_sized_value_para=true;
- On the callee side: Prevent allocation of registers/resources for $parentfp.
- When possible keep $parentfp in a register.
- Set the pio_nested_access flag in tprocinfo.set_needs_parentfp() to properly handle deep nesting levels;
git-svn-id: trunk@45436 -
-> fixes failed compilation of webtbs/25600 with debug info
(broken since 6 June, possibly because of r27874)
* don't allocate class fields defined in generic types, as the
only reason for this was to have valid debug info
git-svn-id: trunk@27928 -
hierarchies from other units that were compiled without debug information
in case not all classes from the hierarchy are explicitly used
(mantis #22495, #21503, #21259)
git-svn-id: trunk@21972 -
- extended write_symtable_procdefs to handle record definitions
- fix stabs info generator to use prefixed symbol names for record methods, also handle records static symbols the same way as for object types
- fix dwarf info record generation: add visibility info and write methods, also prefix record members the same way as object members
git-svn-id: branches/paul/extended_records@16570 -
because they have to be written multiple times in case the procdef
is also written multiple times (such as with DWARF on
tf_dwarf_only_local_labels systems)
git-svn-id: trunk@14214 -
special treatment required to put self as the first parameter in the
debug info
+ added Apple-specific Objective-C related DWARF attributes
* properly emit debug information for Objective-C classes and methods
* fixed some typos in comments
* properly mark "absolute" local variables mapped to parameters as
variables in the debug info rather than as parameters (gdb expects one
parameter to be passed when calling functions from inside gdb per
parameter mentioned in the debug info, even if multiple parameters
have the same stack address)
git-svn-id: branches/objc@13723 -
* symtables based on TFPHashObjectList and TFPObjectList
* rename torddef.typ to torddef.ordtype
* rename tfloatdef.typ to tfloatdef.floattype
* rename tdef.deftype to tdef.typ
* remove obsolete browser code, browcol is kept so the ide
can still be compiled
git-svn-id: trunk@5192 -
getjumplabel and added type para to getlabel for specific types
* moved lineinfo generation from assemble and aggas to dbgstabs
git-svn-id: trunk@1120 -