rtl/inc/systemh.inc:
+ add field OS of type TEntryInformationOS if the target specifies HAS_ENTRYINFORMATION_OS
rtl/java/jsystemh_types.inc:
+ same adjustments as above for consistency reasons despite it being not used there anyway
git-svn-id: trunk@33024 -
packages/fcl-process/src/winall/simpleipc.inc:
* a WndProc needs to be declared as cdecl
* WinCE does not provide Get-/SetWindowLongPtr() as it's 32-bit only anyway, so Get-/SetWindowLong() needs to be used
git-svn-id: trunk@33019 -
wince/wininc/struct.inc:
* the Windows unit of WinCE is compiled with $calling cdecl, but cdecl functions don't support high parameters, thus we need to adjust the calling convention when including the typshrd*.inc files
git-svn-id: trunk@33018 -
selected instruction set define (CPU8086/CPU80186/CPU80286, etc.)
For a generic i8086 target define, 'CPUI8086' should be used instead of
'CPU8086'.
git-svn-id: trunk@33006 -
* updated TAOptObj.RegUsedAfterInstruction with the arm implementation and removed the arm specific implementation
* RegLoadedWithNewValue and InstructionLoadsFromReg are now a methods of TAoptBase
* moved RegEndOfLife to TAOptObj
* during this refactoring, fixed also TCpuAsmOptimizer.RegLoadedWithNewValue for arm regarding post/preindexed
memory references: those modify the register but do not load it with a new value in the sense of RegLoadedWithNewValue
git-svn-id: trunk@33000 -
* Don't replace intended initialization routines with dummy ones, so libc can properly initialize itself.
* Profiling support (si_c21g.pp) only needs to contain the __gmon_start__ procedure, so it can reuse the entire si_c21.inc, and separate si_21g.inc file is no longer needed.
git-svn-id: trunk@32984 -
Fix a potential access violation when exporting symbols on a Unix based system.
expunix.pas, texportlibunix:
* generatelib: check whether hp2.sym is really assigned before accessing it
........
git-svn-id: trunk@32983 -
Merged revision(s) 28793, 28903, 31951 from branches/svenbarth/packages:
psub.pas, read_proc:
* don't generate assembler symbols for compiler internal code
........
Ensure that unneeded initialization/finalization procedures don't leave assembler symbols.
ncgutil.pas:
+ new function release_proc_symbol which removes all assembler symbols of a procdef
pmodules.pas, proc_unit:
* if the initialization or finalization procedure is empty also remove their assembler symbols so they are exported
........
Ensure that readonly sections that need relocations are indeed declared as such.
Thanks to Jonas for this.
ncgvmt.pas, TVMTWriter:
* writeinterfaceids: use sec_rodata instead of sec_rodata_norel
........
git-svn-id: trunk@32982 -
Extract reading of the PPU/PCP version into tentryfile.
entfile.pas:
+ add new getversion method which uses the pointer returned by getheaderaddr to read the PPU/PCP version
ppu.pas:
- remove GetPPUVersion method
fppu.pas, pmodules.pas, utils/ppufiles.pp, utils/ppumove.pp, utils/ppuutils/ppudump.pp
* replace call to GetPPUVersion by call to getversion
........
git-svn-id: trunk@32980 -
Add a new target flag which determines whether the target supports dynamic packages or not.
systems.pas:
+ new flag tf_supports_packages
pmodules.pas, proc_package:
* error out when flag tf_supports_packages is not set for the current target
msg/errore.msg:
+ error message for when tf_supports_packages is missing and a package file is compiled
........
git-svn-id: trunk@32978 -
Provide possibility to register callbacks that are called from InitGlobals and DoneGlobals.
globals.pas:
+ new function register_initdone_proc which allows to register a callback for InitGlobals and DoneGlobals respectively
+ add functions callinitprocs, calldoneprocs, allocinitdoneprocs, freeinitdoneprocs to manage and access the init/done-callbacks
* InitGlobals: call callinitprocs
* DoneGlobals: call calldoneprocs
........
git-svn-id: trunk@32977 -
Extract functionality that is shared between the metadata files for units (PPU) and for packages (PCP) into a parent class called tentryfile
+ add new unit entfile which contains the new tentryfile class and related types and constants
* ppu.pas:
- remove methods, fields, types and constants which were moved to entfile.pas
* replace the parts of tppuheader shared with tentryheader by a field of type tentryheader
fppu.pas, pmodules.pas, utils/ppumove.pp, utils/ppuutils/ppudump.pp:
+ add entfile to uses
* adjust access to common header fields
node.pas, symdef.pas, symsym.pas, symtable.pas, wpoinfo.pas, utils/ppufiles.pp:
+ add entfile to uses
........
git-svn-id: trunk@32976 -