Rika Ichinose
73bf0c82bb
Disable _Plain versions when compiling RTL for newer CPUs.
2024-07-14 14:36:17 +00:00
Rika Ichinose
0b5998ee8b
Write two last values after 2× loops unconditionally instead of an extra check.
2024-02-10 22:47:40 +00:00
Rika Ichinose
e395166cb7
Check for Move overlaps in more obvious way (that also does no jumps in forward case).
2024-02-10 22:47:40 +00:00
Rika Ichinose
e4a0b1adb4
Use ERMS in all eligible cases, again.
...
Namely, when Move.count > NtThreshold but move distance is too short. 8310b169b7
messed with the logic and made this case fall back to a regular loop instead of more preferable ERMS.
2024-01-11 21:51:44 +00:00
Rika Ichinose
8310b169b7
Move ERMS branch into a separate function instead of runtime checks of fast_large_repmovstosb.
2023-12-31 09:54:09 +00:00
Rika Ichinose
f14aced9c5
Attempt to ERMS backward i386 ‘Move’s.
2023-12-31 09:54:09 +00:00
Rika Ichinose
ecc56d7e68
Attempt to save push/pop ebx on small non-GPR moves.
2023-12-10 13:26:39 +00:00
Rika Ichinose
0750777fc8
Supposedly better fastmove.inc.
2023-12-10 13:26:39 +00:00
pierre
f4ecf87a50
Add conditional FASTMOVE_DISABLE_SSE3 to be able to discard SSE specific code, needed for Watcom Assembler support
...
git-svn-id: trunk@36848 -
2017-08-04 20:51:58 +00:00
svenbarth
535621faaa
Rename FPC_HAS_INDIRECT_MAIN_INFORMATION to FPC_HAS_INDIRECT_ENTRY_INFORMATION which is more logical considering the record's name
...
git-svn-id: trunk@33950 -
2016-06-11 20:38:22 +00:00
Jonas Maebe
12030f904a
- removed FPC_HAS_VALGRINDBOOL-related checks, FPC 2.6.4 has it
...
git-svn-id: trunk@31691 -
2015-09-15 11:51:45 +00:00
nickysn
4b3bf874df
* Added CLDs in the RTL i386 inline asm routines, wrapped in {$ifdef
...
FPC_ENABLED_CLD}.
git-svn-id: trunk@25606 -
2013-09-29 10:53:49 +00:00
florian
b2b0e749bb
* win32 system unit doesn't depend anymore directly on the main program, this is necessary to be able to keep it in a dll
...
git-svn-id: trunk@9052 -
2007-11-01 21:59:43 +00:00
peter
e8322a83e4
* optimized generic implementations to use pointers instead of
...
array accesses. This also allows better register variable
optimizations
git-svn-id: trunk@8742 -
2007-10-07 18:36:18 +00:00
florian
a8062fafe7
* valgrind safe primitive move implementation
...
git-svn-id: trunk@7503 -
2007-05-28 18:21:44 +00:00
marco
57cfd89fbd
* Linux 64-bit FS patch from neli for FPC_USE_LIBC
...
git-svn-id: trunk@6517 -
2007-02-16 22:16:54 +00:00
florian
90787bb436
* disable sse/mmx fastmode code in case of valgrind usage
...
git-svn-id: trunk@5342 -
2006-11-12 16:54:44 +00:00
peter
2d3c01d83a
* basic work to make Move() and FillChar() internal under ifdef INTERNALMOVEFILLCHAR
...
git-svn-id: trunk@3021 -
2006-03-24 17:32:39 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
michael
ffb55c4254
+ Removed VER1_0 defines
...
git-svn-id: trunk@33 -
2005-05-19 21:14:45 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
d7dbd71881
* fastmove disabled, has too much drawbacks
2005-01-26 20:58:10 +00:00
peter
8be342c36b
* pinteger in non-delphi/objfpc mode is psmallint
2005-01-24 18:03:19 +00:00
florian
8a2bc0e507
* 1.0.x fix
2005-01-24 08:17:00 +00:00
florian
6780d226ce
* made IA32 the default
2005-01-23 20:10:05 +00:00
florian
3600b51d32
+ fastmove from John O'Harrow integrated
2005-01-23 20:03:23 +00:00