pierre
b279f24f26
Add FPC_SOFT_FPUX80 and FPC_SOFT_FPU128 define handling
...
git-svn-id: trunk@39732 -
2018-09-11 08:02:48 +00:00
Jeppe Johansen
ba8245dccb
argc is a longint.
...
git-svn-id: branches/laksen/riscv_new@39696 -
2018-09-01 19:46:04 +00:00
marco
315fe21718
* deprecations, remove oldlinux.
...
git-svn-id: trunk@39663 -
2018-08-23 07:57:56 +00:00
marco
1e60364572
* another stat file cleanup.
...
git-svn-id: trunk@39655 -
2018-08-20 14:27:59 +00:00
marco
bffbff73e1
* remove deprecated parts linux stat records (FPC 1.0 leftovers)
...
git-svn-id: trunk@39644 -
2018-08-19 15:10:22 +00:00
marco
d143ab60e1
* regenned makefile without date/rev components for easier merging.
...
git-svn-id: trunk@39630 -
2018-08-18 15:06:25 +00:00
pierre
bc75e8547e
Improve detect_linuxvcs to allow parsing of /proc/PID/stat even with spaces in exe name
...
git-svn-id: trunk@39579 -
2018-08-06 16:10:28 +00:00
Jeppe Johansen
90d5f5e760
Added library search paths.
...
Removed GP and TP from allocatable registers for now. GP should not be overwritten.
Ported dllprt0.as
Fixed register usage in cprt0.as
git-svn-id: branches/laksen/riscv_new@39522 -
2018-07-29 13:08:15 +00:00
Jeppe Johansen
27ab039366
Fixed _fini and _init references in cprt0.as
...
Add RiscV to fcl-res and fpcres.
Check that constant is a valid imm12 when doing overflow checking.
git-svn-id: branches/laksen/riscv_new@39494 -
2018-07-23 11:40:55 +00:00
florian
65a415c13e
* fix assembling with official binutils
...
* fix compilation on 32 bit hosts
+ compile with -Sew
git-svn-id: branches/laksen/riscv_new@39482 -
2018-07-22 13:10:24 +00:00
Jeppe Johansen
dcb0f4fdb5
Fixed setjmp that overwrote a callee save register.
...
Disable relaxation for the gp load part of the prt0 code.
Fixed up some syscall definitions.
git-svn-id: branches/laksen/riscv_new@39478 -
2018-07-20 15:00:14 +00:00
Jeppe Johansen
2aaf481d89
Regenerated makefiles.
...
git-svn-id: branches/laksen/riscv_new@39476 -
2018-07-20 10:40:57 +00:00
Jeppe Johansen
6352328f3a
Update packages with information about RiscV.
...
Fix g_external_wrapper, since it uses a register.
Fixed calling of gas.
Ported cprt0.
git-svn-id: branches/laksen/riscv_new@39475 -
2018-07-20 10:40:28 +00:00
Jeppe Johansen
ceb38833f2
Added RiscV32/64 target, from a cleaned up version of branches/laksen/riscv/trunk.
...
git-svn-id: branches/laksen/riscv_new@39474 -
2018-07-20 08:21:15 +00:00
nickysn
65d8836952
* updated dependencies of unit ports (objpas and x86 is no longer required on
...
certain platforms) and regenerated makefiles
git-svn-id: trunk@39373 -
2018-07-04 00:33:12 +00:00
pierre
d6be56e225
Regenerated Makefile's after addition of ppas and ppaslink script removal in rev 38745
...
git-svn-id: trunk@38750 -
2018-04-12 15:23:03 +00:00
florian
b24eb3cce7
* x86_64-linux uses now pascal init code
...
git-svn-id: trunk@38409 -
2018-03-04 18:22:04 +00:00
florian
05a92d55e4
* partly reverted #38320 , the code was correct
...
git-svn-id: trunk@38402 -
2018-03-03 16:41:52 +00:00
florian
c6af4e42c0
* ensure that the stack is aligned after haltproc, should resolve #33311
...
git-svn-id: trunk@38400 -
2018-03-03 16:14:51 +00:00
florian
92776e1864
* keep stack aligned when using profiler stubs
...
git-svn-id: trunk@38320 -
2018-02-23 19:35:20 +00:00
michael
94b6fe6ad3
* added O_CLOEXEC
...
git-svn-id: trunk@38100 -
2018-02-02 10:33:13 +00:00
pierre
595938637e
Add explicit FPC_SYSTEM_OPT variable that is only used for compilation of system units, thus allowing to explicitly pass -Sf option
...
git-svn-id: trunk@37890 -
2018-01-02 16:50:58 +00:00
florian
5bedaf11f4
* fpcmake.inc and Makefiles renerated after last commit
...
git-svn-id: trunk@37834 -
2017-12-27 15:08:18 +00:00
Károly Balogh
a3a7285df4
linux: an attempt to clean up and fix syscall calling conventions for ftruncate64, pread64 and pwrite64 on platforms which use aligned register pairs to pass the 64bit parameters
...
git-svn-id: trunk@37719 -
2017-12-12 02:39:45 +00:00
Károly Balogh
961757934a
linux: removed some old junk which was commented out over a decade ago
...
git-svn-id: trunk@37718 -
2017-12-12 02:24:40 +00:00
Károly Balogh
ee37c507d0
tabs to spaces. no functional changes
...
git-svn-id: trunk@37717 -
2017-12-12 02:03:34 +00:00
yury
af0fdea815
* Android: Include list of supported syscalls for each CPU.
...
Adjust Linux RTL to work with supported Android syscalls.
It should fix issues with Android 8.
git-svn-id: trunk@37480 -
2017-10-17 18:15:02 +00:00
yury
dbf482d62b
* Fixed version of FpSysCall() with 6 params for Linux with PIC.
...
git-svn-id: trunk@37479 -
2017-10-17 18:03:29 +00:00
svenbarth
ddf91a4d19
* regenerate Makefile after r37337
...
git-svn-id: trunk@37338 -
2017-09-27 20:18:45 +00:00
svenbarth
c38efb692b
* fix parallel compilation of Linux RTL: the software FPU units require the ObjPas unit
...
git-svn-id: trunk@37337 -
2017-09-27 20:18:15 +00:00
pierre
a706c3900f
Fix loading of argc field (longint type) of TEntryInformation.OS record
...
git-svn-id: trunk@37329 -
2017-09-26 21:02:45 +00:00
pierre
e7fe9ddfbc
Add units softfpu, sfpux80, sfpu128, ufloatx80 and ufloat128 to list of units for all linux targets
...
git-svn-id: trunk@37258 -
2017-09-19 21:01:08 +00:00
florian
50fab14389
* TIOCtlRequest is 64 bit on sparc64
...
git-svn-id: trunk@36946 -
2017-08-20 15:21:50 +00:00
pierre
dc0e8de99f
Fix PIC code
...
git-svn-id: trunk@36791 -
2017-07-26 14:52:12 +00:00
pierre
1c3996979a
Fix PIC code
...
git-svn-id: trunk@36790 -
2017-07-26 14:47:28 +00:00
pierre
5491cf9519
Force PIC usage for sparc64 CPU
...
git-svn-id: trunk@36789 -
2017-07-26 14:46:41 +00:00
pierre
031c28c58e
Add -KPIC to ASSHAREDOPT for sparc and sparc64
...
git-svn-id: trunk@36785 -
2017-07-25 06:51:06 +00:00
pierre
1ff7f061ff
Sparc64 uses the same value as sparc for O_APPEND
...
git-svn-id: trunk@36782 -
2017-07-24 10:01:14 +00:00
florian
3b48c6e316
* sparc64 uses the same different signal numbers as sparc32 on linux
...
git-svn-id: trunk@36764 -
2017-07-22 13:26:48 +00:00
florian
d4e6824862
* sparc64-linux has to use syscall_nr_gettimeofday instead of syscall_nr_time as well
...
git-svn-id: trunk@36761 -
2017-07-21 19:51:44 +00:00
florian
10f52f1cac
* fixed fppipe for sparc64-linux
...
git-svn-id: trunk@36760 -
2017-07-21 19:32:52 +00:00
pierre
0c404918e1
sparc64 also uses 0245408 TCGETS constant
...
git-svn-id: trunk@36728 -
2017-07-13 22:01:28 +00:00
florian
13e76ccc01
* some type declarations for sparc64-linux fixed
...
git-svn-id: trunk@36714 -
2017-07-09 20:28:30 +00:00
florian
4a107ac079
* cosmetics
...
git-svn-id: trunk@36713 -
2017-07-09 20:28:28 +00:00
michael
52cd572cec
* Use specific type for TFPSet elements
...
git-svn-id: trunk@36710 -
2017-07-09 14:47:27 +00:00
svenbarth
c66daeb69f
* forgot to correctly enable bootstrapping from direct to indirect entry for x86_64-linux
...
git-svn-id: trunk@36695 -
2017-07-08 21:40:50 +00:00
svenbarth
0f9451fbb7
* switch x86_64-linux to indirect entry, essentially allowing for the use of dynamic packages on that target
...
git-svn-id: trunk@36690 -
2017-07-08 20:39:36 +00:00
svenbarth
533789777b
* prepare Linux RTL for a platform-by-platform switch to indirect entry information, including the capability to bootstrap a direct entry target to an indirect one while using the assembly startup files of the indirect one
...
git-svn-id: trunk@36689 -
2017-07-08 20:37:43 +00:00
florian
47bdbb2d1f
* fix Fpfstat as Fpstat has been fixed in r36664, sparc64 needs explictly an stat64 call for 64 bit stat
...
git-svn-id: trunk@36674 -
2017-07-07 22:18:14 +00:00
florian
8ce6140476
* initial implementation of c startup code for sparc64-linux
...
git-svn-id: trunk@36673 -
2017-07-07 22:18:13 +00:00
florian
568d6d1486
* revert r36666 as it interferes with r36664
...
git-svn-id: trunk@36671 -
2017-07-07 20:30:05 +00:00
pierre
de3f4e72ed
Try to get a correct stat record
...
git-svn-id: trunk@36666 -
2017-07-07 15:10:46 +00:00
florian
e2226598ab
* force usage of stat64 on sparc64
...
* always use packrecords c for the stat records on sparc64
git-svn-id: trunk@36664 -
2017-07-07 12:22:49 +00:00
pierre
b6d2c7ee69
Fix fprt_sigreturn_stub for sparc64 cpu
...
git-svn-id: trunk@36654 -
2017-07-06 07:17:25 +00:00
pierre
56039f2fc6
Share SPARC signal constants with SPARC64 cpu
...
git-svn-id: trunk@36652 -
2017-07-05 21:23:11 +00:00
pierre
ece9547ea7
* Sparc64 CPU also uses Fprt_sigreturn for extra rt_sigaction syscall
...
git-svn-id: trunk@36651 -
2017-07-05 20:59:39 +00:00
florian
0d296001a8
* argv is a longint in fpc
...
git-svn-id: trunk@36640 -
2017-07-03 20:49:08 +00:00
florian
7fd359bb78
* setup of envp fixed
...
* use STACK_BIAS constant
git-svn-id: trunk@36544 -
2017-06-19 21:18:01 +00:00
florian
1e619a3479
* syscall error and parameter handling for sparc64 fixed
...
git-svn-id: trunk@36543 -
2017-06-19 21:18:00 +00:00
florian
e78dbbccc4
* adaption of some rtl code for sparc64-linux
...
git-svn-id: trunk@36516 -
2017-06-18 15:44:30 +00:00
florian
c7d4a64ae4
+ basic sparc64-linux specific rtl code, based on the sparc-linux one
...
git-svn-id: trunk@36515 -
2017-06-18 15:44:06 +00:00
florian
278d33f611
+ first implementation of sparc64-linux startup code, partly dummies
...
git-svn-id: trunk@36512 -
2017-06-18 15:39:37 +00:00
Károly Balogh
78970fa3c4
linux/m68k: enable inlining and compiler mul32to64 in the softfpu
...
git-svn-id: trunk@36490 -
2017-06-12 13:05:09 +00:00
nickysn
748428b637
+ support the KOI8-R and KOI8-U Cyrillic encodings
...
git-svn-id: trunk@36445 -
2017-06-07 13:51:53 +00:00
nickysn
fce5fbd726
+ added cp3021 (Bulgarian MIK) code page support
...
git-svn-id: trunk@36444 -
2017-06-07 13:19:20 +00:00
florian
4036ecb5b5
+ stat record definition for SPARC64
...
git-svn-id: trunk@36432 -
2017-06-05 21:35:06 +00:00
florian
8754858c2d
* SPARC64 uses pascal startup code
...
git-svn-id: trunk@36426 -
2017-06-05 21:30:22 +00:00
nickysn
396eebbfb5
+ added support for iso8859-[3,4,6,7,8,9,10,11,13,14,15,16]
...
* charmap .txt files in rtl/ucmaps for iso8859-[1,2,5] also updated
git-svn-id: trunk@36425 -
2017-06-05 16:36:24 +00:00
nickysn
35be7348fb
+ added code pages 737, 775, 857, 860, 861, 862, 863, 864, 865 and 869
...
git-svn-id: trunk@36423 -
2017-06-05 14:25:15 +00:00
nickysn
ef25c33d69
+ added cp855 to the implicit unit list in the rtl makefiles
...
git-svn-id: trunk@36421 -
2017-06-05 12:19:01 +00:00
florian
96f28cbb11
* move sysnr.inc to a rtl/linux/sparcgen dir
...
* adapt makefiles to reflect this
git-svn-id: trunk@36411 -
2017-06-03 20:52:41 +00:00
pierre
bc3adb9078
Regenerated after: Add -32 to ASTARGET for sparc 32-bit and add sparc64 ASTARGET modifications
...
git-svn-id: trunk@36390 -
2017-06-01 13:35:32 +00:00
pierre
4a5f5f84d0
Add -32 to ASTARGET for sparc 32-bit and add sparc64 ASTARGET modifications
...
git-svn-id: trunk@36389 -
2017-06-01 13:34:47 +00:00
florian
a3aa2616fc
* Makefiles regenerated
...
git-svn-id: trunk@36382 -
2017-05-31 20:59:41 +00:00
pierre
ac3b9ac979
Avoid placing COMPILER_UNITTARGETDIR in the prerequisite list of assmebler files,
...
as those directories are modified by any new file in that directory, which
lead to repeated (and useless) recompilation of assembler files on linux systems.
git-svn-id: trunk@36173 -
2017-05-10 13:06:39 +00:00
pierre
17b2671213
Regenerate all Makefile's after changes related to FPCDIR checks
...
git-svn-id: trunk@35833 -
2017-04-18 14:15:47 +00:00
michael
5bbf299c22
* Fix bug #31555 , disbablefile locking
...
git-svn-id: trunk@35611 -
2017-03-17 07:58:59 +00:00
marco
7ef8f00100
* more occured -> occurred spelling fixes.
...
git-svn-id: trunk@35130 -
2016-12-14 20:05:21 +00:00
Jonas Maebe
e5a1231931
* updated FSF address (mantis #30198 , patch by Paul Gevers)
...
git-svn-id: trunk@34598 -
2016-10-02 12:56:59 +00:00
michael
480d22a4aa
* Reallocmem uses installed memory manager
...
git-svn-id: trunk@34487 -
2016-09-10 17:56:17 +00:00
michael
bd775267ca
* Fix bug #30310
...
git-svn-id: trunk@34484 -
2016-09-10 17:08:07 +00:00
yury
419c6ce61e
* android:
...
+ API to write to the Android system log.
+ API to redirect standard output and error to the Android system log. The redirection is performed automatically for shared libraries loaded by Java applications.
git-svn-id: trunk@34352 -
2016-08-19 20:21:52 +00:00
yury
c2ba68df44
* android: Added functions GetSystemProperty() and SystemApiLevel().
...
git-svn-id: trunk@34346 -
2016-08-19 14:50:18 +00:00
pierre
b2467eae3b
* Pass exitcode correctly down to __libc_start_main in _haltproc
...
git-svn-id: trunk@34258 -
2016-08-09 06:50:54 +00:00
svenbarth
7f5352280d
Fix si_g.inc for x86_64-linux:
...
* it's 'atexit' and not '__libc_atexit'
* initialstkptr is a global symbol so it needs to be loaded using GOTPCREL
git-svn-id: trunk@34235 -
2016-07-29 22:03:54 +00:00
marco
c335a3ea6e
* change TDIR fields to longint. Should have been abandonned long ago.
...
git-svn-id: trunk@34041 -
2016-06-30 18:51:05 +00:00
marco
5038b944f1
* fix for bug #30331
...
git-svn-id: trunk@34039 -
2016-06-30 18:45:33 +00:00
nickysn
5306ee552b
* regenerated makefiles with latest fpcmake
...
git-svn-id: trunk@34008 -
2016-06-18 01:00:45 +00:00
nickysn
a58dd988a4
* regenerate makefiles after the fpcmake update
...
git-svn-id: trunk@34002 -
2016-06-17 22:05:59 +00:00
svenbarth
266eccde9f
Merge revision(s) 32484 from branches/svenbarth/packages
...
Move PascalMain external from the si_*.inc files to a new include file si_impl.inc that's included in the implementation sections of the si_*.pp units
git-svn-id: trunk@33970 -
2016-06-12 16:49:56 +00:00
Jonas Maebe
69ad962544
* fixed cross-assembling the Linux/ppc32 loader files on a 64 bit Linux host
...
git-svn-id: trunk@33538 -
2016-04-20 22:17:11 +00:00
marco
2221e4e4bd
* fix timespec=nil for -dgeneric_linux_syscalls (aarch64) case.
...
git-svn-id: trunk@33392 -
2016-03-30 19:21:05 +00:00
marco
9c03d0d6ba
* fix for mantis #25931 return error 5 on EBUSY and ENOTDIR
...
git-svn-id: trunk@33262 -
2016-03-17 21:14:07 +00:00
florian
84bb46a35d
+ cpu unit for arm (linux only so far)
...
git-svn-id: trunk@33184 -
2016-03-06 13:33:20 +00:00
Jonas Maebe
9e3c7f175f
* load the address of envp before storing it, so we don't overwrite argv
...
with envp (fixes bug in fix from r32528, mantis #29587 for FPC 3.0.x
-- FPC 3.1.1+ uses si_*.inc instead, which already works correctly)
git-svn-id: trunk@33045 -
2016-02-04 11:37:29 +00:00
Jonas Maebe
2e64c63993
* fixed dependencies for lineinfo unit after r33007
...
* also made lnfodwrf dependent on lineinfo for all platforms,
because both units implicitly depend on the exeinfo unit
and if both are compiled at the same time they can fall
over each other while writing its .ppu or .s file
git-svn-id: trunk@33039 -
2016-02-01 22:52:50 +00:00
sergei
77285b63eb
* i386-linux: reworked and cleaned up libc-related startup code:
...
* 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 -
2016-01-22 17:11:08 +00:00
sergei
53d7018482
* removed 'nostackframe' attribute, since on i386 assembler procedures reference non-register parameters relative to ebp.
...
git-svn-id: trunk@32981 -
2016-01-22 16:35:20 +00:00
sergei
7381c66161
- i386-linux RTL: removed assembler startup files, which are unused since version 2.0.x.
...
git-svn-id: trunk@32972 -
2016-01-21 15:11:31 +00:00
Jonas Maebe
ec4342cc65
* fixed parallel building after r32857
...
git-svn-id: trunk@32924 -
2016-01-11 15:27:48 +00:00