Commit Graph

2025 Commits

Author SHA1 Message Date
Michael VAN CANNEYT
0d0317b3af * string -> shortstring 2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
9d6a495c02 * string -> shortstring 2023-07-14 17:26:11 +02:00
Michael VAN CANNEYT
4c2b54ee0d * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
Michaël Van Canneyt
fcb5cf42bf * Additional fix 2023-06-21 11:59:37 +02:00
Michaël Van Canneyt
a3a827eba5 * Fix for i386 breakage after merge request !433 2023-06-21 11:55:31 +02:00
Jinyang He
f202dda5c5 Use prlimit64 in FpSetRLimit and FpSetRLimit 2023-06-21 07:27:36 +00:00
Jinyang He
2928837225 fix store stacklength but not its addr in info 2023-06-21 07:27:36 +00:00
Jinyang He
bad62d51fa fix when FPC_USE_LIBC is disabled not call PASCALMAIN 2023-06-21 07:27:36 +00:00
Jinyang He
bcf7701887 Support use statx syscall in fpstat and fpfstat 2023-06-21 07:27:36 +00:00
Pierre Muller
0efa4cbc67 Attempt to use local _init and _fini procedures 2023-05-11 01:02:04 +00:00
Pierre Muller
a304962ea0 Try to implement linux si_uc.inc for xtensa CPU 2023-05-11 01:02:04 +00:00
Dmytro Bogatskyy
327aac7f24 Add aarch64-iphonesim target 2023-03-27 18:45:00 +00:00
florian
3e3b96e088 * fix of Erroneous reading of the value of the StackLength variable at program start based on issue report by Sergey Larin, resolves #40211 2023-03-21 22:37:40 +01:00
Pierre Muller
be1cc68a99 Change libc statx function to weakexternal
Test if statx is nil before call
2023-03-12 16:28:58 +01:00
Jinyang He
783bbb66f9 Update Makefiles 2023-02-05 19:18:48 +00:00
Jinyang He
92e60d2107 add loongarch64 linux rtl support 2023-02-05 19:18:48 +00:00
florian
a06c034189 * cleanup of outdated defines 2023-01-20 23:31:04 +01:00
Pierre Muller
0641ea33d1 Both _STAT_VER_KERNEL and _STAT_VER_LINUX are equal to zero for aarch64-linux 2023-01-09 10:29:38 +01:00
Jonas Maebe
88ae6721c6 Linux mutex: restored the __m_kind field
This particular field is at the same offset on all architectures with the same
bit width, and is guaranteed by glibc to remain at this offset for backward
compatibility with static initialisers.

Resolves #40021
2022-12-03 21:17:18 +01:00
Jonas Maebe
f1abd2c2f0 Linux: fix pthread types
Remove legacy implementation-specific fields (they don't match the current
glibc fields anymore since a long time) and fix alignment fields (they are
union fields that overlap with the rest of the record).

All platforms now use the modern opaque array-based definitions.
2022-12-01 22:43:26 +01:00
Michaël Van Canneyt
75c252fd8f * Extra linux fcntl constants 2022-11-13 23:46:59 +01:00
Jonas Maebe
0758aa1143 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
Karoly Balogh
fd83fd5779 m68k-linux: try to be as ColdFire compatible in the startup code as possible, so explicitly use jsr, otherwise this might compile to a long bsr, that is not CF compatible (except cfv4) 2022-08-31 22:14:15 +02:00
Pierre Muller
cdfe3aa1eb Avoid null array size field for aarch64-linux TUContext 2022-06-18 14:53:16 +02:00
Pierre Muller
28d32b2010 Fix compilation of sparc64-linux rtl with -dFPC_USE_LIBC 2022-06-08 00:12:20 +02:00
Pierre Muller
1433c4f2f8 Fix compilation of sparc-linux rtl with -dFPC_USE_LIBC 2022-06-08 00:10:48 +02:00
Nikolay Nikolov
8c562995d7 * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
florian
143c2ec232 * powerpc-linux: provide also local __libc_csu_* routines 2022-04-17 21:26:15 +02:00
florian
7ff6d78543 * mips(el)-linux: provide __libc_csu_* as weak symbols 2022-04-11 22:22:34 +02:00
florian
a20a7e3497 * define __libc_csu_* symbols as weak symbols on aarch64-linux 2022-04-10 23:19:34 +02:00
florian
35a7490ae1 * provide __libc_csu_init and __libc_csu_fini as weak symbols 2022-04-09 21:12:28 +02:00
florian
727e25e93e * make __lib_csu* weak symbols on m68k-linux 2022-04-02 16:03:49 +02:00
florian
cb2704dfb2 * some more use of __libc_csu_* removed 2022-03-31 22:32:28 +02:00
Pierre Muller
497dd20a08 Regenerate Makefile's with trunk fpcmake 2022-03-27 08:23:22 +00:00
inoussa
163d2ab344 Unicode' unicodenumtable.pas removed : update Makefile.fpc. 2022-03-26 21:17:54 +00:00
Pierre Muller
2f28c5596f Regenerate all Makefile's to fix problem on x86_64 linux 2022-03-07 23:46:15 +00:00
Pierre Muller
ad2ac98858 Update Makefile's 2022-03-07 22:35:29 +00:00
Pierre Muller
ae3c0a2151 Add _IO_stdin_used global 2022-03-06 12:14:51 +00:00
Pierre Muller
4da4c96349 Regenerate Makefile's with mips gcc fixes and new enabled mips64-linux target 2022-02-15 15:45:15 +00:00
Pierre Muller
1fce64fa0a Disable range and overflow checks inside detect_linuxvcs procedure 2022-02-11 23:27:07 +00:00
florian
d42f577a3f + additional skeleton files for mips64 2022-02-06 21:57:01 +01:00
florian
c1ef094457 + startup code skeleton for MIPS64 2022-02-06 13:50:32 +01:00
Nikolay Nikolov
b407b67ca1 * regenerate all makefiles with latest fpcmake 2022-01-19 07:08:32 +02:00
florian
b00fe0e4e4 * all references to libc_csu_ cleaned, should resolve #39295 2022-01-05 21:42:17 +01:00
florian
abee68df92 * powerpc64-linux: libc_csu_* are not available anymore in newer glibc,
make them dummy calls, x86_64-linux does the same for years
2022-01-05 21:33:32 +01:00
florian
0b2a58027c * powerpc64-linux: unused assembler loader files removed 2022-01-05 21:01:39 +01:00
florian
644263277f * clean up of assembler files not used anymore 2022-01-05 20:52:35 +01:00
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
Pierre Muller
271ba59cf1 All Makefile's regenerated 2021-11-25 22:13:32 +00:00
florian
65ef6f1f37 * regenerated Makefiles 2021-11-24 22:50:37 +01:00
florian
baa28faa19 * pic'fied startup code 2021-10-25 21:39:24 +02:00
florian
7baf2461f0 * check paramstr argument for negative values, resolves #39410 2021-10-20 20:04:32 +02:00
florian
f8c92914c2 * indention fixed 2021-09-06 23:05:35 +02:00
florian
aca327d787 + added baud rate constants for arm as proposed by Piotr Kardasz in #39101
git-svn-id: trunk@49570 -
2021-06-29 21:09:31 +00:00
nickysn
433050a2c4 * set EXEEXT to .wasm for the WASI target in fpcmake
git-svn-id: trunk@49552 -
2021-06-24 00:16:00 +00:00
pierre
0ed69fc662 Fix compilation with 3.2.2 release for arm and i386 CPUs
git-svn-id: trunk@49411 -
2021-05-29 21:25:16 +00:00
Jonas Maebe
500e29e5e2 * regenerated with FreeBSD/AArch64 support
git-svn-id: trunk@49159 -
2021-04-10 08:19:40 +00:00
florian
e4cc8af8fc * Makefiles regenerated
git-svn-id: trunk@49124 -
2021-04-05 15:39:07 +00:00
nickysn
e42330a7ad * synchronized with trunk
git-svn-id: branches/wasm@48949 -
2021-03-13 21:47:24 +00:00
florian
62ea31f255 * riscv64-linux: generate PIC for all units as it is required for shared libraries
git-svn-id: trunk@48948 -
2021-03-13 16:33:31 +00:00
florian
a399627aee + RiscV: initial implementation of gprof support
* cleanup

git-svn-id: trunk@48945 -
2021-03-12 21:27:51 +00:00
pierre
e8fbe6696b Update Makefile's after commits 48929/48930
git-svn-id: trunk@48940 -
2021-03-12 13:23:41 +00:00
florian
3ac178f519 * RiscV: corrected setup of gp
git-svn-id: trunk@48938 -
2021-03-11 21:10:04 +00:00
nickysn
f8052134e3 * synchronized with trunk
git-svn-id: branches/wasm@48906 -
2021-03-08 00:52:43 +00:00
florian
813cf7b45e o RiscV64 glibc startup code fixed:
* there is no _init/_fini, call libc_csu_* instead
    * fix loading of global_pointer

git-svn-id: trunk@48904 -
2021-03-07 22:28:18 +00:00
nickysn
940738a3a1 * synchronized with trunk
git-svn-id: branches/wasm@48846 -
2021-03-01 13:21:24 +00:00
florian
5afa26ddd1 * fix compilation for CPUs without thumb
git-svn-id: trunk@48794 -
2021-02-23 20:39:25 +00:00
nickysn
d7df2d45c6 * synchronized with trunk
git-svn-id: branches/wasm@48680 -
2021-02-14 23:47:42 +00:00
florian
5e7a512777 * arm-linux: sighnd.inc must check for CPUTHUMB and CPUTHUMB2
git-svn-id: trunk@48670 -
2021-02-13 21:26:15 +00:00
nickysn
a74024e7d5 * synchronized with trunk
git-svn-id: branches/wasm@48654 -
2021-02-12 01:54:24 +00:00
florian
71c314d7d4 * another FPC_VERSION => FPC_FULLVERSIOn fix
* switch back to 32 Bit mode if no thumb code is generated

git-svn-id: trunk@48630 -
2021-02-10 20:46:15 +00:00
florian
3a0eb110ec * FPC_VERSION => FPC_FULLVERSION
git-svn-id: trunk@48547 -
2021-02-08 21:41:04 +00:00
nickysn
cf3b883bce * synchronized with trunk
git-svn-id: branches/wasm@48513 -
2021-02-04 21:34:40 +00:00
florian
91586331b5 * x86_64-linux: assembler helpers syscalls do not need a stackframe
git-svn-id: trunk@48512 -
2021-02-04 20:57:11 +00:00
pierre
64bd8336f1 Fix compilation of linux unit with -dFPC_USE_LIBC option
git-svn-id: trunk@48504 -
2021-02-02 23:56:22 +00:00
nickysn
9de09f1d28 * synchronized with trunk
git-svn-id: branches/wasm@48498 -
2021-02-02 04:02:02 +00:00
florian
3922926d17 * disable new syscalls on android
git-svn-id: trunk@48495 -
2021-02-01 21:05:23 +00:00
nickysn
d52e918fc8 * synchronized with trunk
git-svn-id: branches/wasm@48480 -
2021-02-01 01:13:27 +00:00
florian
b4a1c27c58 * renamed new syscall wrapper in linux to be consist with the others
git-svn-id: trunk@48479 -
2021-01-31 22:25:18 +00:00
florian
b8ab06aae7 + futimens syscall
* make use of futimens syscall in sysutils unit
  + tests

git-svn-id: trunk@48472 -
2021-01-31 17:12:39 +00:00
florian
0c77536f11 + linux.fputimensat which properly uses the _tim64 version if needed and available
+ test

git-svn-id: trunk@48470 -
2021-01-31 16:24:47 +00:00
nickysn
1d9d1ab859 * regenerated makefiles
git-svn-id: branches/wasm@48369 -
2021-01-24 02:01:11 +00:00
nickysn
780ded903a * synchronized with trunk
git-svn-id: branches/wasm@48225 -
2021-01-19 23:01:55 +00:00
pierre
0055023394 Also set __stkptr inside cprt0.as and dllprt0.as startup assembly sources
git-svn-id: trunk@48223 -
2021-01-19 22:30:59 +00:00
pierre
83a1f5fbc3 Also set __stkptr inside cprt0.as startup assembly source
git-svn-id: trunk@48222 -
2021-01-19 22:28:37 +00:00
nickysn
8b4aceea50 * synchronized with trunk
git-svn-id: branches/wasm@48134 -
2021-01-11 07:01:01 +00:00
svenbarth
359bb64aed * if the Linux target is compiled with FPC_USE_LIBC the initialization of TLS is not required (according to one comment by Florian), so disable all related code in that case (as for example the syscall numbers are not available then)
git-svn-id: trunk@48120 -
2021-01-09 15:58:13 +00:00
nickysn
c1b37a3cb5 * synchronized with trunk
git-svn-id: branches/wasm@48109 -
2021-01-08 08:46:38 +00:00
florian
d2b0bcdf1f + linux implementation of System.GetCPUCount
git-svn-id: trunk@48106 -
2021-01-07 22:44:49 +00:00
nickysn
cf6c173653 * regenerated makefiles
git-svn-id: branches/wasm@47988 -
2021-01-02 22:25:27 +00:00
nickysn
a84b091b5e * makefiles regenerated after fpcmake update
git-svn-id: branches/wasm@47985 -
2021-01-02 22:15:42 +00:00
florian
7b88d1127f * remove unused file
git-svn-id: trunk@47619 -
2020-11-28 13:41:44 +00:00
ondrej
1a0ba60de6 * revert r47598: implement TRandomGenerator
git-svn-id: trunk@47605 -
2020-11-27 04:53:06 +00:00
ondrej
c4dd3b661a * rtl: implement TRandomGenerator for thread-safe random
git-svn-id: trunk@47598 -
2020-11-26 05:59:00 +00:00
pierre
233d883731 Correct computation of operatingsystem_parameter_envp, which wrongly pointed to the NIL pointer separating argv from environment variables
git-svn-id: trunk@47552 -
2020-11-24 09:39:55 +00:00
pierre
68d3962889 Regenerate all Makefile's, and update utils/fpcm/fpcmake.inc and utils/fpcm/revision.inc after commit 47483
git-svn-id: trunk@47484 -
2020-11-20 14:03:57 +00:00
Károly Balogh
9d67adcbb6 * regenerated all Makefiles after Sinclair QL support was added
git-svn-id: trunk@47453 -
2020-11-19 02:58:27 +00:00
pierre
e154b9933f Add some types and records to rtl/linux/t_linux.h2paschk and set macro _LARGEFILE64_SOURCE for __i386__ C code
git-svn-id: trunk@47439 -
2020-11-16 22:37:04 +00:00
florian
b2a67d4656 * fixed comments in sysnr.inc files
git-svn-id: trunk@47426 -
2020-11-15 19:30:19 +00:00
Jonas Maebe
629b2a8951 * regenerated
git-svn-id: trunk@47303 -
2020-11-03 21:34:30 +00:00
Jonas Maebe
24e188f0d2 * add missing unixutils -> baseunix dependency
git-svn-id: trunk@47302 -
2020-11-03 21:34:26 +00:00
svenbarth
985c4fafeb * regenerate Makefiles after adding the softfpu units
git-svn-id: trunk@47188 -
2020-10-24 20:58:24 +00:00
svenbarth
0df460f56e * simplify rules for softfpu units
git-svn-id: trunk@47186 -
2020-10-24 20:57:56 +00:00
florian
80394fc6e8 - removed cvs remainders ($Id$ and $Log$ tags)
git-svn-id: trunk@47119 -
2020-10-16 21:19:10 +00:00
florian
91fe098eb4 * check first for x86 exception and only for sse if no x87 exceptions is thrown, clear all exception afterwards
* throw rte 206 instead of rte 216 for denormal on m68k-linux as well

git-svn-id: trunk@47117 -
2020-10-16 19:44:25 +00:00
florian
15695b317c * denormalized value floating point exception has to result in an rte 206, resolves part of #37926
git-svn-id: trunk@47114 -
2020-10-15 19:52:57 +00:00
florian
1a2b99bc09 * correctly reset fpu on x86_64-linux after a floating point exception, resolves second part of #37468
git-svn-id: trunk@46992 -
2020-09-28 20:50:25 +00:00
Jonas Maebe
322d04cdee * regenerated after adding unixtype dependencies
git-svn-id: trunk@46990 -
2020-09-28 14:02:03 +00:00
Jonas Maebe
de095258a7 * add missing unixtype dependencies
git-svn-id: trunk@46989 -
2020-09-28 14:02:00 +00:00
pierre
2b023c62c5 Do not set __USE_LARGEFILE64 macro for sparc CPU, as it does not seem to be used for regular linux kernels
git-svn-id: trunk@46882 -
2020-09-16 20:40:36 +00:00
florian
1b60060eb1 * Aarch64-linux: debugging define disabled
git-svn-id: trunk@46872 -
2020-09-15 21:08:58 +00:00
florian
a22d8a7c38 * Aarch64-linux: return properly from the signal handler
* Aarch64-linux: clear FPU exception flags before returning from the signal handler

git-svn-id: trunk@46870 -
2020-09-15 20:35:15 +00:00
Tomas Hajny
288c7e3c9e * Do_IsDevice treats pipes and sockets the same way as character devices
git-svn-id: trunk@46863 -
2020-09-13 22:08:18 +00:00
Károly Balogh
277d98431c * linux: use ugetrlimit syscall on m68k for rlimits retrieval. this fixes fpgetrlimit() call, and stack checking on Linux/m68k (tstack.pp test), at least on anything newer than kernel 2.4+ (2001)
git-svn-id: trunk@46811 -
2020-09-09 15:15:52 +00:00
Károly Balogh
b49aa071ca * linux: fix some formatting in ostypes.inc, no functional change
git-svn-id: trunk@46810 -
2020-09-09 14:58:45 +00:00
Károly Balogh
313790502d * linux-m68k: depend on FPU defines to compile FPU code, instead of CPU68020. also, minor cosmetics
git-svn-id: trunk@46447 -
2020-08-15 09:07:30 +00:00
pierre
ca40956a3a Regenerated all Makefile's
git-svn-id: trunk@46224 -
2020-08-04 10:19:49 +00:00
florian
7281ea7a2c * floating point division by zero should throw run time error 208, fixed
git-svn-id: trunk@46210 -
2020-08-03 19:42:16 +00:00
florian
b60ac4c2db * @PLT is needed for calls to link it properly with pic code
git-svn-id: trunk@46209 -
2020-08-03 19:42:14 +00:00
florian
4c2c540b29 * fixed resetting of state, broken in r45995
+ debugging output
  * check magic properly
  * cosmetics

git-svn-id: trunk@46208 -
2020-08-03 19:42:13 +00:00
florian
893225770c * updated tfpstate
git-svn-id: trunk@46207 -
2020-08-03 19:42:13 +00:00
florian
eac6675cba * reset exception flags, resolves #37468 on x86_64
git-svn-id: trunk@45995 -
2020-08-02 21:23:29 +00:00
svenbarth
48cc5250f9 * fpc_geteipasebx and fpc_geteipasecx are used as procedures, not functions, so declare them as such
git-svn-id: trunk@45980 -
2020-08-01 17:26:34 +00:00
svenbarth
04cbf32b1b * rename local import of fpc_geteipasebx
git-svn-id: trunk@45979 -
2020-08-01 17:26:29 +00:00
pierre
2e6bba76bf Define __USE_LARGEFILE64 for sparc-linux, and adapt filed ffree type to that macro
git-svn-id: trunk@45837 -
2020-07-23 21:03:19 +00:00
pierre
1d5c714ff2 Fix error in assembly startup code for sparc linux
git-svn-id: trunk@45836 -
2020-07-23 20:59:03 +00:00
pierre
9f60f5093d F_GetLk/SetLk have different values for sparc/sparc64
git-svn-id: trunk@45829 -
2020-07-22 23:15:03 +00:00
florian
d6d92e3666 * revert part of r44879: flock must use kernel_off_t: off_t breaks e.g. i386
git-svn-id: trunk@45810 -
2020-07-19 19:54:22 +00:00
Jonas Maebe
fb23834367 * regenerated Makefiles again
git-svn-id: trunk@45766 -
2020-07-11 09:51:28 +00:00
Jonas Maebe
350d2d92f9 * regenerated Makesfiles
git-svn-id: trunk@45762 -
2020-07-10 22:08:30 +00:00
svenbarth
eb6f503bad * fix O_LARGEFILE for Aarch64, RISC-V 32-bit and RISC-V 64-bit
git-svn-id: trunk@45613 -
2020-06-07 19:09:08 +00:00
svenbarth
b3ddd4e786 * regenerate Makefiles
git-svn-id: trunk@45601 -
2020-06-06 17:18:48 +00:00
pierre
c77ef7d6dd Regenerate all Makefile's after change in utils/fpcm/fpcmake.ini to better support use of i386 compiler on x86_64 machines
git-svn-id: trunk@45356 -
2020-05-13 13:53:15 +00:00
nickysn
56b79257a1 * fixed fpmake invokation when building an i386-linux snapshot on a x86_64-linux host
git-svn-id: trunk@45298 -
2020-05-06 20:41:01 +00:00
svenbarth
0906714aa4 * fix for Mantis #36950: apply (slightly adjusted) patch by Bi0T1N to implement SetThreadDebugNameA and -U for Linux and Android targets
git-svn-id: trunk@45233 -
2020-05-03 15:08:35 +00:00
svenbarth
2840e5e1fd * fix for Mantis #36895: the new epoll_pwait was missing the size parameter for the sigmask parameter
git-svn-id: trunk@45208 -
2020-05-01 13:11:02 +00:00
svenbarth
4faf56353e * fix for Mantis #36949: apply patch by Bi0T1N to exclude the same pthread functions for Android for the static case that are excluded for the dynamic case
git-svn-id: trunk@45207 -
2020-05-01 13:10:58 +00:00
nickysn
86643f8a34 * synchronized with trunk
git-svn-id: branches/z80@44981 -
2020-04-21 23:36:44 +00:00
svenbarth
184d6d61ed * regenerate makefiles
git-svn-id: trunk@44958 -
2020-04-21 06:09:20 +00:00
nickysn
d57ffc4745 * changed the object file format for z80-embedded and z80-zxspectrum to .rel
git-svn-id: branches/z80@44899 -
2020-04-20 23:36:15 +00:00
nickysn
2f68090dd6 * synchronized with trunk
git-svn-id: branches/z80@44898 -
2020-04-20 22:42:08 +00:00
pierre
cd6de6a4ca Regenerate all Makefiles
git-svn-id: trunk@44882 -
2020-04-20 13:58:47 +00:00
pierre
4d25558519 * Use off_t type for l_start and l_end fields instead of kernel_off_t
+ Distinguish rlim_t type depending on fs32bit macro being set or not.

git-svn-id: trunk@44879 -
2020-04-20 09:50:07 +00:00
pierre
4888c379c4 Use same field type and name as in /ust/include/sys/stat.h
git-svn-id: trunk@44878 -
2020-04-20 09:37:55 +00:00
nickysn
0f323df7a3 * synchronized with trunk
git-svn-id: branches/z80@44873 -
2020-04-19 21:10:31 +00:00
Jonas Maebe
26ec913725 * regenerated makefiles
git-svn-id: trunk@44861 -
2020-04-19 17:33:47 +00:00
nickysn
b868d653bb * regenerated makefiles after sync with trunk
git-svn-id: branches/z80@44847 -
2020-04-19 13:00:50 +00:00
nickysn
daf22383b0 * makefiles regenerated with the zxspectrum target
+ added zxspectrum to ppudump

git-svn-id: branches/z80@44820 -
2020-04-19 01:56:06 +00:00
Jonas Maebe
4b59bcb0ca * regenerated makefiles
git-svn-id: trunk@44793 -
2020-04-18 16:08:25 +00:00
Károly Balogh
afe8a7596a arm-linux: enable epoll_pwait syscall number. this fixes the ARM Linux build after r44666
git-svn-id: trunk@44675 -
2020-04-10 09:26:00 +00:00