Commit Graph

346 Commits

Author SHA1 Message Date
svenbarth
c26348a3dd * follow up to r42457: FreeTerminateProcs needs to be called before DoneExceptions just in case an exception is triggered due to a corrupted list
git-svn-id: trunk@42461 -
2019-07-20 08:41:59 +00:00
svenbarth
176a63b67b * fix for Mantis #35862: free the list of functions added with AddTerminateProc to avoid memory leaks
+ added test

git-svn-id: trunk@42457 -
2019-07-19 15:55:21 +00:00
Jonas Maebe
faf75095cd * synchronised with trunk till r42189
git-svn-id: branches/debug_eh@42190 -
2019-06-07 18:24:38 +00:00
nickysn
0f205470bc * set DL=0 in dos.setverify for compatibility with DOS 2.x
git-svn-id: trunk@42149 -
2019-05-31 13:58:19 +00:00
Jonas Maebe
128bf046b4 * regenerated Makefiles with LLVM bitcode installation support
git-svn-id: branches/debug_eh@41914 -
2019-04-20 18:56:45 +00:00
pierre
74fed2a4cd Regenerate Makefile's after fpcmake change in commit #41721
git-svn-id: trunk@41723 -
2019-03-17 14:45:03 +00:00
nickysn
4f573b50ad * access the Default8087CW global variable directly from within inline asm,
instead of copying it to a local var first, since the concern about PIC code
  (this asm code started out as a copy of the i386 rtl code) doesn't exist on
  the i8086, since there's no such thing as PIC code on the i8086

git-svn-id: trunk@41311 -
2019-02-12 16:31:16 +00:00
nickysn
178217821c + added sortbase as a dependency to unit fgl in the makefiles
git-svn-id: trunk@41180 -
2019-02-02 23:22:09 +00:00
nickysn
c24d525b9f * compilation fixes for many platforms after r41167
git-svn-id: trunk@41168 -
2019-02-02 20:22:07 +00:00
nickysn
248fd313f8 + introduced unit SortBase, which implements the foundation for pluggable
sorting algorithms. A default QuickSort implementation is provided by the
  unit. Other units can be added, to provide other sorting algorithms (e.g.
  HeapSort, MergeSort, IntroSort, etc.)
* TList and TFPList updated to use the current default sorting algorithm defined
  in SortBase for their .Sort method.

git-svn-id: trunk@41167 -
2019-02-02 20:06:50 +00:00
Károly Balogh
5182dc37af haiku-x86_64: regenerated all Makefiles, take 2
git-svn-id: trunk@40758 -
2019-01-04 03:18:42 +00:00
yury
a29290202f * Regenerated makefiles to support x86_64-android.
git-svn-id: trunk@39958 -
2018-10-17 17:12:20 +00:00
yury
8c59eb1ce5 * Regenerated makefiles to support aarch64-android.
git-svn-id: trunk@39863 -
2018-10-06 09:36:03 +00:00
pierre
fe61157cae Update all rtl Makefile's
git-svn-id: trunk@39824 -
2018-09-27 06:55:12 +00:00
florian
a34d4e715c Merged riscv_new branch
git-svn-id: trunk@39813 -
2018-09-26 19:49:08 +00:00
pierre
b219fa9023 pass -D__I8086_SMARTLINK_SECTIONS__ to nasm if FPCOPT contains -dTEST_I8086_SMARTLINK_SECTIONS
git-svn-id: trunk@39726 -
2018-09-10 13:30:42 +00:00
svenbarth
09e5f463dc + add Delphi-compatible FileGetSymLinkTarget functions to all platforms (currently returns False on all platforms); this also includes TSymLinkRec variants for both RawByteString and UnicodeString
git-svn-id: trunk@39669 -
2018-08-24 15:33:45 +00:00
svenbarth
92dcdd8b5b + add Delphi compatible FollowLink parameter (default is True) to FileExists and DirectoryExists; support for it is up to each target
git-svn-id: trunk@39668 -
2018-08-24 15:33:09 +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
Jeppe Johansen
2aaf481d89 Regenerated makefiles.
git-svn-id: branches/laksen/riscv_new@39476 -
2018-07-20 10:40:57 +00:00
nickysn
62fe6cb5d3 + integrated the port access via Port[] in the i8086-msdos system unit to ease
porting TP7 code. The ports unit also remains for compatibility with code that
  has already been ported to FPC.

git-svn-id: trunk@39422 -
2018-07-09 15:40:12 +00:00
nickysn
5318a04a5b * moved the interface and implementation parts of the i8086-msdos ports unit to
include files portsh.inc and ports.inc in the i8086 rtl directory

git-svn-id: trunk@39396 -
2018-07-06 15:41:44 +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
nickysn
1c9d0d445b * moved the compiler intrinsics for the i8086 'in' and 'out' instructions to the
system unit (with a 'fpc_x86_' prefix added)

git-svn-id: trunk@39368 -
2018-07-03 22:32:17 +00:00
nickysn
26a3ac3fd4 * moved the fpc_in_x86_*port* constants to the system unit in cpuinnr.inc in the
i8086, i386 and x86_64 rtl directories. This is done for consistency with
  other compiler internal function numbers (which are declared in innr.inc).

git-svn-id: trunk@39367 -
2018-07-03 21:30:43 +00:00
nickysn
f93bda6e15 + also add {$inline on} to unit ports in order to enable inlining
git-svn-id: trunk@39366 -
2018-07-03 20:37:13 +00:00
nickysn
8b55c071fa + declare the readport and writeport methods as inline in the interface part of
the ports unit, so the new inlining of in and out instructions actually works

git-svn-id: trunk@39364 -
2018-07-03 20:14:05 +00:00
nickysn
fdc896ad0a + inline support for the x86 'in' and 'out' instructions. Currently only enabled
in the i8086-msdos 'ports' unit, but will be enabled on other targets (e.g.
  go32v2) in the future as well. 32-bit 'in' and 'out' not inlined on i8086, but
  will be on i386 and x86_64.

git-svn-id: trunk@39362 -
2018-07-03 17:01:42 +00:00
nickysn
46b82e3208 + added the necessary changes for section based smartlinking to the msdos
startup code, behind ifdef __I8086_SMARTLINK_SECTIONS__

git-svn-id: trunk@39278 -
2018-06-22 15:42:19 +00:00
nickysn
db3c88c871 + enabled compilation of unit lnfodwrf on i8086-msdos
- disabled compilation of unit lineinfo on i8086-msdos (no stabs support on this target)

git-svn-id: trunk@39035 -
2018-05-20 11:25:27 +00:00
pierre
b917533a9f Fix SetFAttr function
git-svn-id: trunk@38764 -
2018-04-13 22:18:21 +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
c63c3e99c7 * load environment on msdos if parameters are loaded, so paramstr(0) is loaded as well
git-svn-id: trunk@38205 -
2018-02-11 17:49:17 +00:00
Károly Balogh
444d032607 msdos: enable FPC_STDOUT_TRUE_ALIAS by default
git-svn-id: trunk@38197 -
2018-02-10 22:46:48 +00:00
florian
961f7fd25b * msdos target uses already non 8.3 file names, so it makes no sense to get in trouble by using rtlconst instead of rtlconsts
git-svn-id: trunk@38194 -
2018-02-10 22:20:02 +00:00
florian
37c987c3ea * dependencies fixed
git-svn-id: trunk@38193 -
2018-02-10 22:20:00 +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
nickysn
7cc581d4c7 * replaced Intr($21,regs) with MsDos(regs) in the i8086-msdos sysutils unit
git-svn-id: trunk@37733 -
2017-12-15 14:58:26 +00:00
nickysn
0119e7afb3 * changed the codepointer type in the i8086 small and compact memory models from
nearpointer to nearcspointer

git-svn-id: trunk@37730 -
2017-12-14 17:36:15 +00:00
nickysn
4f498c9e3c * always enable portl (32-bit port access) in the i8086 ports unit
git-svn-id: trunk@37560 -
2017-11-06 16:32:36 +00:00
florian
a230826357 - remove obsolete comment after r37555
git-svn-id: trunk@37557 -
2017-11-05 22:04:06 +00:00
florian
13df5b51db * objects support also default properties, so the ports unit does not depend on objpas anymore
git-svn-id: trunk@37555 -
2017-11-05 15:10:55 +00:00
nickysn
e4a405dcd9 + added unit 'cpu' for i8086
git-svn-id: trunk@37332 -
2017-09-27 16:55:56 +00:00
Károly Balogh
04dee0fc04 regenerated Makefiles for m68k-macos target
git-svn-id: trunk@37034 -
2017-08-22 11:16:42 +00:00
pierre
ba7586a5c8 Fix for FPU generated exception as interrupt 0x10, contributed by Max Nazhalov
git-svn-id: trunk@36813 -
2017-07-29 11:50:21 +00:00
pierre
963d109331 Add two word variables to store fpu control and status register in interrupt 0x10
git-svn-id: trunk@36653 -
2017-07-05 22:03:27 +00:00
pierre
adfd578659 Correct error in commit 36437: restore interrupt must be $10, not $06
git-svn-id: trunk@36497 -
2017-06-13 21:02:10 +00:00
pierre
d68ebf7cfb Disable specific coprocessor int 0x10 handler if possible
git-svn-id: trunk@36488 -
2017-06-12 06:52:35 +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