fpc/rtl/inc
svenbarth 6afda909d4 Rework TlsKey handling on Windows so that it works as intended with indirect main information
rtl/inc/system.inc:
  * SetupEntryInformation: call new, optional function OSSetupEntryInformation to handle platform specific entry information initialization
rtl/win/sysosh.inc, TEntryInformationOS:
  + new field TlsKeyAddr which will hold the address to the main binary's TlsKey variable
win32/sysinit.inc:
  + provide the variable holding the TlsKey and pass that on to the entry information record
win32/system.pp:
  + new OS specific entry information initialization (currently only the TlsKey)
win/systhrd.inc:
  * declare TlsKey as a pointer to a DWord value instead of a DWord; on non-indirect entry platforms this is initialized with the address of new variable TlsKeyVar, on indirect entry platforms it will be initialized by the entry information initialization
  * adjust usages of TlsKey from DWord to PDWord
win/systlsdir.inc:
  * TlsKey is now a PDWord and (in sysinit) points to TlsKeyVar
win/syswin.inc:
  * adjust TlsKey usage
inc/heaptrc.pp:
  * TlsKey is now a PDWord, thus adjust the import and the usage

git-svn-id: trunk@33091 -
2016-02-12 17:03:52 +00:00
..
aliases.inc * fixed the type of the "count" parameter of the int_FinalizeArray() forward 2015-08-05 21:06:07 +00:00
astrings.inc * when inserting a non-empty ansistring into an empty ansistring, the 2015-10-16 19:15:40 +00:00
blockrtl.pp * changed the syntax for block procvars from "xxx is block" to 2014-07-18 09:15:29 +00:00
cgeneric.inc Fix cycling with -dFPC_USE_LIBC on Linux systems to allow usage of FPC Linux programs on OSv. 2015-03-10 18:34:04 +00:00
cgenmath.inc * Moved declarations of TFPURoundingMode,TFPUExceptionMask and TFPUPrecisionMode to System unit. Declarations in Math unit changed to aliases. 2014-03-20 22:44:46 +00:00
cgenstr.inc * fixed type of size parameter of strn(case)cmp 2015-04-07 19:35:28 +00:00
charset.pp Remove wrong close call after failed Reset 2014-12-04 13:10:08 +00:00
cmem.pp
compproc.inc - removed FPC_HAS_STR_CURRENCY-related code, FPC 2.6.4 has it 2015-09-15 11:51:48 +00:00
ctypes.pp * long double = double on Darwin/AArch64 2015-02-23 22:51:15 +00:00
currh.inc
dos.inc * use a farpointer on i8086 in the getintvec and setintvec generic "do nothing" 2015-09-29 13:16:56 +00:00
dosh.inc * respect feature defines 2015-03-29 19:43:25 +00:00
dynarr.inc * patch by Dmitry Boyarintsev: initialize dyn. arrays more cleverly in a setlength call with ref. count>1, resolves issue #29250 2015-12-26 08:53:56 +00:00
dynarrh.inc * system unit additions from mantis #27206. Exports some dynarray related RTTI functions. 2015-01-01 00:21:40 +00:00
dynlib.inc * changed the return type of GetProcAddress in the generic dynlibs interface to 2015-09-29 16:30:27 +00:00
dynlibh.inc * changed the return type of GetProcAddress in the generic dynlibs interface to 2015-09-29 16:30:27 +00:00
dynlibs.pas + added unit dynlibs to the win16 rtl 2015-10-01 13:10:40 +00:00
except.inc * split off the texceptaddr declaration into rtl/inc/excepth.inc, so it can 2014-08-10 19:40:29 +00:00
excepth.inc * split off the texceptaddr declaration into rtl/inc/excepth.inc, so it can 2014-08-10 19:40:29 +00:00
exeinfo.pp Fix phdr pointer increment and use envp variable from system unit for Solaris operating system 2016-01-27 10:47:16 +00:00
extpas.pp o basic extended pascal support: 2015-11-15 15:13:36 +00:00
extres.inc
fexpand.inc * fix by Charlie correcting treatment of a trailing directory separator on Amiga(-likes) 2015-04-18 18:29:19 +00:00
file.inc * more procedures excluded to avoid internalerrors on avr after the trgobj.conservative fix 2015-08-28 18:49:07 +00:00
filerec.inc
flt_conv.inc * fixed compilation of new str<->float code on the JVM target (patch by 2013-11-06 16:13:50 +00:00
flt_core.inc * force shl operations to be 32 bit on 16/8 bit platforms (patch by 2013-11-10 10:24:54 +00:00
flt_pack.inc added some float64() casts, based on similar casts in the 32bit code path, which makes ARM to build again 2013-11-02 17:44:47 +00:00
fpextres.pp
fpintres.pp
gencurr.inc
generic.inc * fix Fill* code for CPUs with 8 Bit ALU 2015-12-12 15:49:51 +00:00
genmath.inc * Moved local typed constants having the same value in several routines to global scope. 2014-12-06 13:07:32 +00:00
genset.inc
genstr.inc
genstrs.inc
getopts.pp
heap.inc - RTL: cleaned out FPC_FREEMEM_X. We now have a dedicated compilerproc 'fpc_freemem' for this purpose. 2014-03-23 02:11:38 +00:00
heaph.inc
heaptrc.pp Rework TlsKey handling on Windows so that it works as intended with indirect main information 2016-02-12 17:03:52 +00:00
innr.inc * made setstring() a compiler intrinsic so it can set the compile-time 2014-10-12 20:27:06 +00:00
int64.inc * more procedures excluded to avoid internalerrors on avr after the trgobj.conservative fix 2015-08-28 18:49:07 +00:00
intres.inc * Patch from Anton Kavalenka to fix bug #17805 (load resources from libraries) 2015-04-13 19:05:54 +00:00
iso7185.pp * respect feature defines 2015-03-29 19:43:25 +00:00
lineinfo.pp * Patch from Denis Kozlov to fix bug ID #28288 2016-01-10 20:02:08 +00:00
llvmintr.inc + support for get_frame() for the LLVM target (using the llvm.frameaddress() 2015-08-24 22:07:03 +00:00
lnfodwrf.pp * Fix for bug ID #28283 by Denis Kozlov 2016-01-10 20:14:28 +00:00
lstrings.pp * Clean out of $i textrec and filerec includes that are redundant now that cpstrrtl exposes 2014-01-02 13:26:09 +00:00
macpas.pp
makefile.inc
mathh.inc + implements TExtended80Rec, TDoubleRec, TSingleRec 2014-11-16 20:47:33 +00:00
objc1.inc
objc.pp * added Darwin/AArch64 support to the objc unit 2015-02-23 22:53:20 +00:00
objcbase.pp
objcnf.inc + Darwin/AArch64 support 2015-02-23 22:53:50 +00:00
objpas.inc * updated all the RTL helper functions related to exceptions and stack traces to use codepointer instead of pointer 2013-09-17 21:25:26 +00:00
objpash.inc - removed "packed" and dummy field (that was required because of 2015-11-21 12:36:03 +00:00
pagemem.pp
readme
real2str.inc
resh.inc + added the win16 api resource functions 2015-09-09 00:35:45 +00:00
rtti.inc * system unit additions from mantis #27206. Exports some dynarray related RTTI functions. 2015-01-01 00:21:40 +00:00
rttih.inc * system unit additions from mantis #27206. Exports some dynarray related RTTI functions. 2015-01-01 00:21:40 +00:00
sfpu128.pp
sfpux80.pp
softfpu.pp two cases of use casts instead of anding with when extracting 16bit values 2014-09-07 23:38:33 +00:00
sstrings.inc - removed FPC_HAS_STR_CURRENCY-related code, FPC 2.6.4 has it 2015-09-15 11:51:48 +00:00
strings.pp - do not set the parameter to nil in strings.strdispose, because it's not a var 2015-10-12 14:28:46 +00:00
stringsi.inc
sysres.inc + added the win16 api resource functions 2015-09-09 00:35:45 +00:00
system.fpd * Power no longer in system, but in Math 2016-02-06 18:57:49 +00:00
system.inc Rework TlsKey handling on Windows so that it works as intended with indirect main information 2016-02-12 17:03:52 +00:00
systemh.inc Pass further main program data through the indirect entry information. 2016-01-29 16:51:27 +00:00
text.inc * Removed unused vars in RTL. 2015-09-17 16:48:53 +00:00
textrec.inc
thread.inc * use 16-bit offsets for threadvars on CPUs with 16-bit address space 2015-10-11 12:16:26 +00:00
threadh.inc * use 16-bit offsets for threadvars on CPUs with 16-bit address space 2015-10-11 12:16:26 +00:00
threadvr.inc * use 16-bit offsets for threadvars on CPUs with 16-bit address space 2015-10-11 12:16:26 +00:00
tinyheap.inc + optimization in tinyheap's reallocmem for the case when there's not enough 2014-10-07 14:36:23 +00:00
tnyheaph.inc + implemented Mark and Release for the tiny heap 2014-09-20 23:33:54 +00:00
typefile.inc * Removed unused vars in RTL. 2015-09-17 16:48:53 +00:00
typshrd.inc * Some fixes from Ondrej Pokorny (bug ID 29538) 2016-02-06 15:03:28 +00:00
typshrdh.inc * Some fixes from Ondrej Pokorny (bug ID 29538) 2016-02-06 15:03:28 +00:00
ufloat128.pp
ustringh.inc * Added Offset argument to Pos (exists in wide and ansi/short, forgotten for unicode) 2016-02-06 12:16:00 +00:00
ustrings.inc * Added Offset argument to Pos (exists in wide and ansi/short, forgotten for unicode) 2016-02-06 12:16:00 +00:00
uuchar.pp * Fixed string conversion warnings in RTL. 2015-09-17 17:25:57 +00:00
varerror.inc
variant.inc - removed FPC_HASINTERNALOLEVARIANT2VARIANTCAST-related checks, FPC 2.6.4 2015-09-15 11:51:38 +00:00
varianth.inc - removed FPC_HASINTERNALOLEVARIANT2VARIANTCAST-related checks, FPC 2.6.4 2015-09-15 11:51:38 +00:00
wstringh.inc * Correct signature of pos 2015-08-31 19:34:15 +00:00
wstrings.inc Revert r33057. MaxLen is the maximum value that Pos can return and does not need to be adjusted by (Offset - 1). Also there's no buffer that could be overrun as i is not used to access the string's buffer. Fixes failure of tests/test/units/system/tstring.pp 2016-02-12 16:07:26 +00:00

This directory contains only RTL parts independent
of the processor and of the operating system.

The include files contain the following:

astrings.pp     AnsiStrings implementation.
except.inc      Delphi styled exception support.
file.inc        Untyped file support routines.
filerec.inc     Untyped file record definition.
heap.inc        Runtime heap manager .
heaph.inc       Declarations of Heap functions.
innr.inc        Internal function delcarations.
int64.inc       Support for 64-bit integer arithmetic.
lstrings.pp     LongStrings routine implementation.
mathh.inc       Declarations of mathematical functions.
real2str.inc    Routine to convert floating point numbers to strings.
rtti.inc        Delphi like runtime type information
sstrings.inc    ShortStrings (TP/BP pascal like strings) implementation.
system.inc      OS and Processor independent implementation part of system unit.
systemh.inc     Interface part of the system unit.
text.inc        Text file support routines.
textrec.inc     Definition of Textrec record.
typefile.inc    Text file record definition.
generic.inc     Processor independant implementation of assembler procs on i386
                (to allow easy porting to new processors).
genset.inc      Processor independant implementation of set handling
genmath.inc     Processor independant implementation of mathematical routines
genrrti.inc     Processor independant implementation of runtime type information routines

The unit files are:

ucomplex.pp     Complex functions using operator overloading
getopts.pp      Pascal implementation of the GNU Getops
objects.pp      Turbo Pascal like implementation of objects unit
heaptrc.pp      Runtime memory leak tracer and tests for memory integrity.