fpc/rtl
nickysn fc59649a98 + added inline nodes for handling and/or/xor in place (i.e. x:=x op y, where
op=and/or/xor). They generate more optimal code on certain architectures
  (including x86). The new inline nodes aren't generated by the compiler yet,
  but will be used in the future, at certain optimization levels, whenever the
  pattern x:=x op y is detected by the compiler.

git-svn-id: trunk@35666 -
2017-03-26 23:16:53 +00:00
..
aarch64
aix * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
amicommon sysutils: enable FINDHANDLE_IS_POINTER for Amiga-like systems and Atari. this allows to remove some Pointer<->THandle casts from the amicommon code 2016-12-27 03:23:54 +00:00
amiga amigaos4: fixed some alignment SNAFU in exec structures. this allows to fix the startup code properly 2017-01-14 01:57:46 +00:00
android * android: Use proper code page when calling a fallback implementation. 2017-03-09 22:14:38 +00:00
arm * split fpc_mul_<64 bit> into separate procedures with and without overflow checking 2017-02-19 19:15:14 +00:00
aros aros: implemented pascal sysinit, will be shared across all cpus. also refactored the RTL build 2017-01-05 00:21:59 +00:00
atari atari: FSearch impementation for DOS unit, copied from msdos target 2017-01-07 04:33:00 +00:00
avr * interlocked methods with smallint parameters, resolves #31158 2016-12-31 19:42:47 +00:00
beos * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
bsd * Fix bug #31555, disbablefile locking 2017-03-17 07:58:59 +00:00
charmaps
darwin - removed double compilation commands for two units 2016-12-18 13:57:19 +00:00
dragonfly
embedded Added more Nordic Semi controllers. Created a new unit for NRF52x controllers with a more precise register naming following Nordic SDK conventions. 2017-01-10 20:30:20 +00:00
emx
freebsd * allow to set value on cmdline since llvm versions don't work atm. 2016-12-10 15:04:32 +00:00
gba * patch from #30405, fix build after executeprocess merges. 2016-12-24 19:42:55 +00:00
go32v2 * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
haiku * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
i386 * split fpc_mul_<64 bit> into separate procedures with and without overflow checking 2017-02-19 19:15:14 +00:00
i8086 * split fpc_mul_<64 bit> into separate procedures with and without overflow checking 2017-02-19 19:15:14 +00:00
inc + added inline nodes for handling and/or/xor in place (i.e. x:=x op y, where 2017-03-26 23:16:53 +00:00
java * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
jvm
linux * Fix bug #31555, disbablefile locking 2017-03-17 07:58:59 +00:00
m68k m68k: fix frame pointer register on atari, and a few other non-amiga systems 2016-12-27 17:09:06 +00:00
macos
mips
mipsel
morphos morphos: take two on the Pascal startup code. this version works as a drop-in replacement for the asm one, and doesn't need system unit patching. this will be important when linking against LibC and when the approach gets ported to other Amiga-like platforms 2016-12-04 14:02:01 +00:00
msdos
nativent Regenerate Makefile after: Add explicit rule for uuchar unit 2017-02-16 18:24:33 +00:00
nds * patch from #30405, fix build after executeprocess merges. 2016-12-24 19:42:55 +00:00
netbsd netbsd: bits of the m68k support I started to hack together. non functional yet. 2017-03-01 17:26:23 +00:00
netware * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
netwlibc
objpas * Fix bug ID #21458 2017-03-16 13:48:38 +00:00
openbsd
os2
palmos
powerpc * optimized PowerPC version of changes in r35454 2017-02-19 20:27:39 +00:00
powerpc64
qnx
solaris * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
sparc
symbian
ucmaps
unix * make webtbs/tw30535 also working on OSes using cthreads 2017-03-12 09:28:41 +00:00
watcom
wii
win * do not set IsMultithread on windows, if no second thread is started, resolves #30535 2017-03-11 21:35:48 +00:00
win16
win32 * build unit update 2016-12-30 15:25:23 +00:00
win64 * use correctly prefixed variant of tls_used (Win64 does not have a C prefix) 2017-02-28 20:39:36 +00:00
wince * more occured -> occurred spelling fixes. 2016-12-14 20:05:21 +00:00
x86_64 * comment spelling fix (modifed->modified) 2016-12-13 12:50:38 +00:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile
Makefile.fpc
README.txt

This is the Run-Time Library (RTL) tree for Free Pascal.

To recompile the RTL, edit the main makefile. The makefiles NEED a GNU make
compatible make, they need unix-like 'rm' and 'mv' commands, as well as some
others. You can find these in the gnuutils package on the ftp site.

The main makefile is located ABOVE the RTL tree. It uses the FPC
makefile.fpc to guess reasonable defaults for everything it needs.
(these files can be found in base.zip on the FTP site)

The only variable that you may want to set are
FPC             - What compiler to use. Use an absolute path. 
                  (default is ppc386)
INSTALL_UNITDIR - Where to install the RTL units 
OPT             - any special options you want to set for the compiler.

In principle, you can also descend into the subdirectory of your OS, and
type 'make' there, that should also compile everything.

The tree contains subdirectories for all the supported operating systems,
as well as all processor architectures. The processor directories contain
low-level routines which are required for the system unit (if they are not 
available in high-level language form), as well as optimized versions of
the pascal generic routines (the generic routine source code is localed in
the inc subdirectory).

The following directories are not supported officially and may not work
correctly with FreePascal v1.0:

go32v1 - The DJGPP go32v1 DOS extender (no longer supported)
palmos - The PalmOS directory for the Dragonball (incomplete)


Enjoy.