Commit Graph

13161 Commits

Author SHA1 Message Date
nickysn
9fc701c75e * changed the type of the .eh_frame section to 'unwind'
git-svn-id: trunk@41660 -
2019-03-09 18:30:31 +00:00
nickysn
6713f943c2 * use PIC in the eh_frame section as well
git-svn-id: trunk@41659 -
2019-03-09 17:48:28 +00:00
nickysn
692a3fe3e4 * fixed bug, due to a typo in the previous commit
git-svn-id: trunk@41654 -
2019-03-09 16:58:25 +00:00
nickysn
2771e8c717 * PIC fixes in OpenBSD's prt0.as for x86_64
git-svn-id: trunk@41653 -
2019-03-09 16:54:39 +00:00
nickysn
f7ee1a1da9 - removed duplicated ".note.openbsd.ident" sections, committed erroneously in r41645
git-svn-id: trunk@41649 -
2019-03-09 15:40:34 +00:00
nickysn
85981b0a32 * applied all the OpenBSD startup code patches from the OpenBSD ports tree
git-svn-id: trunk@41645 -
2019-03-09 14:33:25 +00:00
nickysn
7b00c732b8 * Adjust for OpenBSD struct changes in the 'dir' structure. Based on OpenBSD
ports patch patch-fpcsrc_rtl_bsd_ostypes_inc

git-svn-id: trunk@41643 -
2019-03-08 16:26:40 +00:00
nickysn
2564588bf7 * Adjust for OpenBSD struct changes in the 'dirent' structure. Based on OpenBSD
ports patch patch-fpcsrc_rtl_bsd_ostypes_inc

git-svn-id: trunk@41642 -
2019-03-08 16:22:53 +00:00
nickysn
c183b49125 * refactored the ifdefs around the dirent structure
git-svn-id: trunk@41641 -
2019-03-08 16:18:17 +00:00
nickysn
d9509a22ad * Adjust for OpenBSD struct changes in the 'stat' structure. Based on OpenBSD
ports patch patch-fpcsrc_rtl_bsd_ostypes_inc

git-svn-id: trunk@41640 -
2019-03-08 16:14:40 +00:00
svenbarth
a735dc28ae * fix for Mantis #35204: TThreadID is a DWord even on Windows 64-bit, so declare it accordingly
git-svn-id: trunk@41636 -
2019-03-08 14:47:25 +00:00
svenbarth
9ddf90b059 + fix for Mantis #35203: add TLS_OUT_OF_INDEXES constant to Windows unit
git-svn-id: trunk@41635 -
2019-03-08 14:47:22 +00:00
Károly Balogh
bda626d450 amicommon: add some naive RTLEventWaitFor implementation, add long standing tthread.inc patch by Sven. Synchronize/CheckSynchronize should now work on Amiga
git-svn-id: trunk@41584 -
2019-03-04 01:43:42 +00:00
svenbarth
07b1a3d211 * adjust signature of variant managers olevarfromint so that 64-bit values can be passed as well (as was probably intended originally)
git-svn-id: trunk@41570 -
2019-03-03 14:50:05 +00:00
marco
12e98d891a * GetComputerNameEx/A/W Mantis #35115
git-svn-id: trunk@41562 -
2019-03-02 21:09:18 +00:00
marco
474ecfba3a * fix for #35119 geterrormode declaration by 440bx.
git-svn-id: trunk@41560 -
2019-03-02 18:24:42 +00:00
marco
a5ce9a9ab6 * fix for #35111 EnumTimeFormatsEx. Prepared by 440bx
git-svn-id: trunk@41559 -
2019-03-02 18:22:01 +00:00
marco
eb5aa0f8cf * add missing file_attribute constants, mantis #35120
git-svn-id: trunk@41556 -
2019-03-02 14:46:27 +00:00
marco
980d812ca4 * Fix for #35146 getfullpathname.
* asc* uni* versions become pointer variants.
 * delphi overloads move to redef. 
 * remove old comment (<2005) from redef. Possible related to constness. (LPCSTR vs LPSTR)
 * also added $ifdef unicode version. Most redefs don't. 

git-svn-id: trunk@41555 -
2019-03-02 14:35:33 +00:00
michael
905ccf9363 * Make FreeEncodings protected: they cannot be public, as it causes AVs (see bug ID #34856)
git-svn-id: trunk@41547 -
2019-03-02 10:42:19 +00:00
yury
ab92dcd162 * android: Mask SSE exceptions for i386 too.
git-svn-id: trunk@41459 -
2019-02-25 13:15:17 +00:00
florian
74275a9173 * in ISO mode, f^ is undefined after Rewrite
git-svn-id: trunk@41429 -
2019-02-24 10:32:59 +00:00
yury
ad6642edc0 * android: Fixed stdio redirection for threads.
git-svn-id: trunk@41400 -
2019-02-20 15:11:45 +00:00
michael
541bf05b94 * Add overloaded version of AssignFile with codepage. See bug ID #34889
git-svn-id: trunk@41342 -
2019-02-16 12:52:00 +00:00
michael
2b876c6079 * Actually call InitLeadBytes
git-svn-id: trunk@41337 -
2019-02-16 10:52:51 +00:00
michael
3fcc1c5f0e * Complete the implementation of IsLeadChar
git-svn-id: trunk@41336 -
2019-02-16 10:50:31 +00:00
michael
4143ecf6c0 Fix bug ID #35086: TParser should reset position (tentative)
git-svn-id: trunk@41331 -
2019-02-16 08:39:40 +00:00
michael
a750039f7c * Add overloaded version of stringreplace with replacement count (ID 23987)
git-svn-id: trunk@41330 -
2019-02-16 07:55:26 +00:00
nickysn
fe47db32be + added asm optimized version of fpc_pwidechar_length for i8086
git-svn-id: trunk@41317 -
2019-02-14 16:14:02 +00:00
nickysn
5db8d6bd5e * optimize the i8086 backwards move by using movsw instead of movsb in the Move
and MoveData procedures

git-svn-id: trunk@41316 -
2019-02-14 12:18:51 +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
svenbarth
b810d8f32b * fix for Mantis #35027: ensure that the synchronize event entry is reset correctly in case of an exception
+ added test

git-svn-id: trunk@41281 -
2019-02-10 15:43:03 +00:00
svenbarth
1502a13e7c * fix for Mantis #35028: when the mainthread executes a queued ThreadMethod make sure that the queue entry is released even if an exception is raised
+ added test

git-svn-id: trunk@41280 -
2019-02-10 15:42:58 +00:00
marco
a387e0b9bb * add reg_qword. Feedback on #35050
git-svn-id: trunk@41274 -
2019-02-10 09:20:54 +00:00
marco
d6b39276bb * makerop to dword mantis #34712
git-svn-id: trunk@41269 -
2019-02-09 17:53:05 +00:00
marco
93fcce4ba1 * tohexstring calls inttohex instead of hexstr. Hexstr has fixed number of
digits, inttohex a minimum number. Mantis #35015

git-svn-id: trunk@41268 -
2019-02-09 17:12:20 +00:00
marco
46aa5f2712 * _S_ and _E_ first and last were already there, just in an unexpected winerror. Found after testing ->revert all but the last line.
git-svn-id: trunk@41266 -
2019-02-09 13:41:22 +00:00
marco
ec87ab2870 * some _E_ and _S_ constants from winerror.h used in activex patch.
git-svn-id: trunk@41265 -
2019-02-09 13:34:52 +00:00
marco
3a6d0d9d41 * flashwindowex, mantis #35048, patch by 440bx
git-svn-id: trunk@41262 -
2019-02-09 12:07:30 +00:00
marco
6ec527df23 * add IDANI_CAPTION, mantis #35042
git-svn-id: trunk@41254 -
2019-02-08 10:25:30 +00:00
marco
76bb5d1a22 * add loadlibraryex flags, mantis #35041
git-svn-id: trunk@41253 -
2019-02-08 10:18:52 +00:00
nickysn
ff90e7622a + added .Sort overloads, that specify an algorithm and use the sortbase defined
algorithms for sorting TList, TFPList and TStringList when FPC_TESTGENERICS is
  defined as well. Unfortunately, I couldn't test it, because the RTL doesn't
  compile with FPC_TESTGENERICS, due to errors, completely unrelated to the
  sortbase changes.

git-svn-id: trunk@41248 -
2019-02-07 15:45:13 +00:00
Jonas Maebe
3b87b10904 * explicitly link libobjc to prevent the symbol __objc_empty_cache from
resolving to CoreFoundation on macOS 10.14 (which will break running
    such programs on older macOS/(Mac) OS X versions)

git-svn-id: trunk@41243 -
2019-02-06 19:48:47 +00:00
nickysn
1c64f4c751 * some formatting changes to avoid very large lines in the source code
git-svn-id: trunk@41242 -
2019-02-06 18:26:05 +00:00
nickysn
00a67caa40 * select the middle element in the default quicksort implementation in a way
that doesn't generate arithmetic overflow for very large arrays

git-svn-id: trunk@41241 -
2019-02-06 18:05:48 +00:00
pierre
e467d2387d Add sortbase unit to global units list, as it can be compiled for all CPUs
git-svn-id: trunk@41240 -
2019-02-06 15:51:54 +00:00
nickysn
f4718831ca * fixed quicksort comment about memory use - our implementation uses O(log n) stack, not O(n log n)
git-svn-id: trunk@41236 -
2019-02-06 12:22:08 +00:00
nickysn
f32748a8e7 + added comment with information about QuickSort and its specific implementation in unit SortBase
git-svn-id: trunk@41232 -
2019-02-05 18:02:48 +00:00
nickysn
eca60a0a89 * partition elements equal to the pivot on both sides of the pivot, since that
leads to much better performance when sorting lots of repeating elements

git-svn-id: trunk@41231 -
2019-02-05 17:32:28 +00:00
nickysn
bea9961d2d * use SizeUInt instead of longint for the array indices in the quicksort
implementations. This:
  1) allows sorting arrays with >4G elements on 64-bit systems
  2) allows sorting arrays with up to 4G (>2G) elements on 32-bit systems
  3) uses 16-bit instead of the less efficient 32-bit indices on 16-bit and
     8-bit platforms

git-svn-id: trunk@41230 -
2019-02-05 16:20:56 +00:00