Commit Graph

1510 Commits

Author SHA1 Message Date
Károly Balogh
c6d60979d2 set errno after syscalls. this fixes tiorte test at least. this code ideally should be in assembly, but it seems the assembler reader needs some fixing first...
git-svn-id: trunk@26828 -
2014-02-22 05:30:04 +00:00
svenbarth
1e48c7c930 Now that spilling correctly works on m68k we definitely need to store/restore the registers inside the FpSyscall functions. Fixes quite some tests.
* rtl/linux/m68k/syscall.inc:
    Remove "assembler" modifier and instead use an inline asm block with an accurate list of modified registers so that the compiler correctly stores/restores them

git-svn-id: trunk@26804 -
2014-02-16 21:21:40 +00:00
sergei
ead8d0c1d4 * Clean up i386-Linux startup code for shared libraries:
* The initialization code is a normal function called by runtime linker, stack layout at process startup is irrelevant.
  * Stack pointer can be replaced by frame pointer, they are just a few bytes away.
  * IsLibrary is set to true in fpc_libinitializeunits and therefore assigning it here is redundant.
  * The exitcode is passed as argument to haltproc, so messing with PIC is not necessary.

git-svn-id: trunk@26759 -
2014-02-13 04:54:21 +00:00
sergei
83fda1e6a9 * Frame size on MIPS must be divisible by 8, thanks to Vsevolod Alekseyev for spotting this.
git-svn-id: trunk@26734 -
2014-02-08 21:06:30 +00:00
yury
73c26bd6be * mipsel-android: Regenerated makefiles. From now the mipsel-android target can be built and used.
git-svn-id: trunk@26705 -
2014-02-07 12:37:17 +00:00
Tomas Hajny
be6fdf21ce + character sets for central Europe added also to Makefiles as implicit units
git-svn-id: trunk@26527 -
2014-01-20 00:23:36 +00:00
marco
f09374a197 * winsock(and -2), sockets and gpm to rtl-extra.
git-svn-id: trunk@26426 -
2014-01-11 19:45:37 +00:00
marco
dea2c743d5 * Initial active version of
rtl-extra : objects matrix ucomplex
   rtl-objpas: convutil(s) dateutil(s) stdconvs variants varutils
   

git-svn-id: trunk@26398 -
2014-01-05 19:20:15 +00:00
paul
14a34239cc rtl: add cp856 to makefiles
git-svn-id: trunk@26387 -
2014-01-05 06:03:28 +00:00
marco
a001e12d04 * rtl-console initial version.
git-svn-id: trunk@26372 -
2014-01-03 22:19:02 +00:00
marco
ebe262762a * Clean out of $i textrec and filerec includes that are redundant now that cpstrrtl exposes
those records via system. 

git-svn-id: trunk@26356 -
2014-01-02 13:26:09 +00:00
sergei
62a5ba14a3 + SPARC: support finalization routine supplied by dynamic linker.
+ Added "stack not executable" marker.

git-svn-id: trunk@26287 -
2013-12-26 09:09:23 +00:00
sergei
16156cbcd7 - SPARC RTL: removed assembler PIC/threadvar hacks.
git-svn-id: trunk@26260 -
2013-12-22 13:42:53 +00:00
marco
a8671e550e * fix FPC_USE_LIBC for inotify and clock* functions, and always link librt when this unit is used under FPC_USE_LIBC.
make all building failed otherwise because fppkg seems to import unit linux somewhere. 

git-svn-id: trunk@26199 -
2013-12-08 20:23:09 +00:00
marco
e93413fae7 * Initial FPC_USE_LIBC implementation of termios for Linux.
* Removed VER2_0 defines.

git-svn-id: trunk@26189 -
2013-12-06 15:00:55 +00:00
Jonas Maebe
5b58162d6b * increased the size of tdirent to
a) compensate for the fact that the kernel assumes it's a multiple of 8
      bytes
   b) reduce the number of system calls we have to perform when walking a
      directory
  (fixes mantis #24885 and probably also #20125 and #23732)

git-svn-id: trunk@26150 -
2013-11-27 22:57:17 +00:00
sergei
ca445577ff - Linux RTL: MIPS no longer needs the softfloat code, don't compile it.
git-svn-id: trunk@25882 -
2013-10-30 12:25:11 +00:00
nickysn
714ca3a61d * fixed the stack traces under linux (StackTop wasn't initialized)
git-svn-id: trunk@25861 -
2013-10-27 12:37:32 +00:00
sergei
a3364a4b80 - RTL, Linux/FreeBSD shared library startup: removed FPC_SHARED_LIB_EXIT label, it is a leftover from times when library startup code was erroneously halting owning process on exit.
git-svn-id: trunk@25737 -
2013-10-10 13:14:56 +00:00
nickysn
1bea98995b * regenerated fpcmake makefiles after r25642
git-svn-id: trunk@25644 -
2013-10-05 10:11:27 +00:00
Jonas Maebe
de56f909d5 * synchronized with trunk up to and including r25430
git-svn-id: branches/cpstrrtl@25431 -
2013-09-06 10:09:26 +00:00
florian
7df123aa1e * insert it statements for arm thumb2 in syscall assembler procedures
git-svn-id: trunk@25342 -
2013-08-23 15:22:38 +00:00
Jonas Maebe
29132f45b7 * synchronised with trunk up to r25167 (fixes glib compilation via r25164,
and occasional crashes in executeprocess on libc platforms via r25167)

git-svn-id: branches/cpstrrtl@25169 -
2013-07-24 14:24:49 +00:00
Jonas Maebe
da7a67bc74 + FPCRTL_FILESYSTEM_SINGLE_BYTE_API define that is set for targets where we
use a single byte API for file system operations
  + FPCRTL_FILESYSTEM_TWO_BYTE_API define that is set for targets where we
    use a single byte API for file system operations
   o in principle, both can be set if both are supprted and implemented in
     the RTL in order to minimise conversions depending on the scenario

git-svn-id: branches/cpstrrtl@24991 -
2013-06-27 21:37:39 +00:00
Jonas Maebe
81597bf171 * updated address of FSF (mantis #24646, patch by Alexey Svistunov)
git-svn-id: trunk@24986 -
2013-06-27 14:01:18 +00:00
Jonas Maebe
ecd3cba02b * synchronised with trunk up to r24912
o resolved conflict in updated morphos sysutils unit
   o moved code that had been added to the now deleted  sysunix.inc to the
     unix-specific block of the fpwidestring unit's init code

git-svn-id: branches/cpstrrtl@24913 -
2013-06-17 20:50:02 +00:00
Jonas Maebe
78f94ab035 * made calls to seterrno position-independent
git-svn-id: trunk@24640 -
2013-05-30 12:23:50 +00:00
pierre
78a7043352 Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit)
git-svn-id: trunk@24367 -
2013-04-29 12:30:54 +00:00
florian
3d7033d81e * Makefiles regenerated
git-svn-id: trunk@24325 -
2013-04-25 20:25:57 +00:00
paul
a592e77f35 rtl: add missing windows codepages (mantis #0024294)
git-svn-id: trunk@24295 -
2013-04-22 01:48:12 +00:00
florian
308fb42f4b * fix parameter handling in FPC_SYSCALL4 to FPC_SYSCALL6
git-svn-id: trunk@24193 -
2013-04-07 21:01:01 +00:00
florian
a86531c225 * load exit code in _haltproc for thumb
git-svn-id: trunk@24191 -
2013-04-07 21:00:54 +00:00
florian
5ee9fe75e9 * unicodenumtable is also an implicitly built unit
git-svn-id: trunk@24062 -
2013-03-29 18:48:59 +00:00
paul
d80f47a601 rtl: apply similar to r24022-r24026 changes made by Jonas to other targets
git-svn-id: trunk@24027 -
2013-03-28 02:37:17 +00:00
paul
8e0c211b9a rtl: enable collations build for linux
git-svn-id: trunk@24020 -
2013-03-27 01:03:54 +00:00
florian
4328e8c7b8 * remove superfluous texts after endif
git-svn-id: trunk@23999 -
2013-03-25 17:55:17 +00:00
florian
a433d53117 + linux syscalls for arm thumb
git-svn-id: trunk@23987 -
2013-03-24 21:39:34 +00:00
florian
9dc03c809e + in_edsp_test is only available if FPC_SYSTEM_FPC_MOVE is defined
git-svn-id: trunk@23985 -
2013-03-24 20:25:42 +00:00
florian
c7edbb70a6 * armv6-m support for linux rtl Makefile
git-svn-id: trunk@23982 -
2013-03-24 20:23:43 +00:00
florian
767e932e0e + arm-linux startup code for thumb
git-svn-id: trunk@23981 -
2013-03-24 20:23:00 +00:00
sergei
6f1997f5e5 + MIPS: added profiling support
git-svn-id: trunk@23950 -
2013-03-21 13:40:50 +00:00
sergei
be1fcc8e3d * Forgotten delay slot was causing exit code loss in most library-related tests.
git-svn-id: trunk@23874 -
2013-03-16 20:01:33 +00:00
sergei
0a155e3ae1 MIPS startup code:
- Removed tabs.
- Removed nonsense code involving $s7.
+ Call finalization procedure in the end, fixes webtbs/tw9089.
+ added non-executable stack marker.

git-svn-id: trunk@23842 -
2013-03-15 12:33:10 +00:00
paul
db357320d7 rtl: install all cpXXX .ppu and .o files
git-svn-id: trunk@23802 -
2013-03-12 11:44:15 +00:00
paul
5157304998 rtl: build fpwidestring for the same platforms as character unit
git-svn-id: trunk@23801 -
2013-03-12 03:23:08 +00:00
paul
e379daaf9c compiler, rtl: move cpXXXX.pas files from compiler to RTL\charmaps directory and cleanup them, enable charmaps building for the majority of targets
git-svn-id: trunk@23799 -
2013-03-12 01:35:25 +00:00
yury
2b2a68446d * Added new unit unixcp. It contains stuff from winiconv.inc - a table to map Windows code page identifiers to locale names on unix. Also GetSystemCodePage function in this unit can be used to detect which code page is used currently.
* Build unixcp for all unix-like systems.
* Use the unixcp unit in cwstring instead of winiconv.inc.
- Deleted winiconv.inc
- Reverted r22410,r22411,r22428. The compiler will use the unixcp unit to get a default code page for ansistrings.

git-svn-id: trunk@23670 -
2013-02-28 18:21:28 +00:00
florian
776f4cc18f * build statement for the cpu unit, resolves #23910
git-svn-id: trunk@23629 -
2013-02-18 20:32:09 +00:00
florian
2a99cef7c3 * compile command for uuchar, resolves #23907
git-svn-id: trunk@23625 -
2013-02-17 16:13:54 +00:00
sergei
58f8a00814 * MIPS fppipe(): added error handling, and fixed parameter location (assembler procedures should not modify initial location of parameters, but one of MIPS code generator hacks copies parameters to stack. That hack is subject to remove).
git-svn-id: trunk@23610 -
2013-02-13 18:01:12 +00:00