fpc/rtl
Robert Roland 53e5a4a03a Adding aaarch64-embedded target
This adds support for aarch64-embedded, specifically for the Raspberry Pi 3.

Uses UART0 at 115200 baud 8N1 for console IO.
2022-01-05 12:29:00 +00:00
..
aarch64 + initial files for intrinsics support on AArch64 2021-11-21 21:11:23 +01:00
aix Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
amicommon amiga: check if P is nil while processing params. this should never happen, except sometimes in real world it still happens. so lets be defensive about it 2021-03-25 16:33:22 +00:00
amiga Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
android Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
arm * thumb2: Optimize fillchar a bit more with a wider inner loop chunk size 2021-04-01 20:55:21 +00:00
aros Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
atari Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
avr * AVR: made avr_des intrinsic more usefull 2021-05-13 18:59:28 +00:00
beos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
bsd * check paramstr argument for negative values, resolves #39410 2021-10-20 20:04:32 +02:00
charmaps
darwin Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
dragonfly Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
embedded Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
emx Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
freebsd Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
freertos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
gba Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
go32v2 Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
haiku Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
i386 + x86: ADXSupport 2022-01-03 22:51:00 +01:00
i8086 * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
inc * seperator => separator 2022-01-02 13:12:33 +01:00
java Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
jvm
linux Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
m68k * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
macos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
mips * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
mipsel
morphos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
msdos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
msxdos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
nativent Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
nds Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
netbsd Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
netware Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
netwlibc Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
objpas * proper range checking for TryStrToDWord, should resolve all issues in #39406 2022-01-02 21:46:14 +01:00
openbsd Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
os2 Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
palmos Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
powerpc * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
powerpc64 * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
qnx All Makefile's regenerated 2021-11-25 22:13:32 +00:00
riscv * RiscV: unified cpu initialization and FPU exception handling, resolves #38893 2021-05-15 20:53:56 +00:00
riscv32 * RiscV: unified cpu initialization and FPU exception handling, resolves #38893 2021-05-15 20:53:56 +00:00
riscv64 * RiscV: unified cpu initialization and FPU exception handling, resolves #38893 2021-05-15 20:53:56 +00:00
sinclairql Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
solaris Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
sparc * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
sparc64 * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
symbian Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
ucmaps
unix LLVM: add Read/WritePort* implementations 2021-12-16 21:17:42 +01:00
wasi Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
wasm32 - removed the DebugWriteXXX functions from the WASI system unit, since console 2021-10-10 20:25:29 +03:00
watcom Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
wii Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
win win: fix default ShortDateFormat and LongDateFormat 2021-08-11 11:37:43 +00:00
win16 Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
win32 Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
win64 Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
wince Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
x86_64 + x86: ADXSupport 2022-01-03 22:51:00 +01:00
xtensa * patch by Christo Crause: Xtensa [patch] Use syscall 0 to spill registers on ESP32, resolves #39221 2021-07-14 21:47:29 +00:00
z80
zxspectrum Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile Adding aaarch64-embedded target 2022-01-05 12:29:00 +00:00
Makefile.fpc + added WASI to the main RTL makefile 2021-01-02 22:58:19 +00:00
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).

Enjoy.