ivost
2c22173534
* Added InterlockedCompareExchange64 for i386 (supported over cmpxchg8b instruction)
...
git-svn-id: trunk@6753 -
2007-03-09 09:29:17 +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
peter
cd767cf5c8
* i386 uses generic fpc_compare_shortstr_equal
...
git-svn-id: trunk@6335 -
2007-02-04 16:24:02 +00:00
Jonas Maebe
5ea26c5f5f
* fixed darwin compilation
...
git-svn-id: trunk@6310 -
2007-02-02 22:48:02 +00:00
florian
bcf65051e3
* detect sse properly on linux, fixes tmask*.pp in the testsuite with -Cfsse2
...
git-svn-id: trunk@6277 -
2007-01-31 21:51:47 +00:00
daniel
e8050233af
+ Patch by Thorsten Engler to optimize string comparisons for = and <> cases. (Mantis #8231 )
...
git-svn-id: trunk@6241 -
2007-01-28 10:58:52 +00:00
florian
b3a1868ff0
* correct masking of exceptions in genmath code
...
git-svn-id: trunk@5965 -
2007-01-14 10:44:10 +00:00
Jonas Maebe
3381fd2ea1
* ismultithread is a longbool nowadays (cmpb -> cmpl)
...
git-svn-id: trunk@5893 -
2007-01-11 17:32:15 +00:00
florian
4ee9f1b394
* use DefaultCW to reload fpu settings
...
git-svn-id: trunk@5169 -
2006-11-02 08:58:01 +00:00
Jonas Maebe
5acc8b44a8
* activated internal get_frame for x86
...
* turn off stackframe optimizations on x86 if get_frame is called
in the current routine, or if the address of a nested function
is taken in the current routine
+ test for the above
* this fixes the IDE when compiled with stackframe optimizations
on x86
git-svn-id: trunk@5146 -
2006-11-01 12:48:53 +00:00
peter
2f0ce31751
* string concat changed from function to procedure to
...
allow runtime optimization if the destination is the
same as a source parameter
* tassignmentnode now sets aktassignmentnode global that can be used
to use the left node as a destination parameter and
skip the assignment
* disabled all cpu specific shortstr concat/append
git-svn-id: trunk@4770 -
2006-10-02 20:00:06 +00:00
florian
0ade2e487d
* cleaned up and fixed (from mftq75) sse unit initialization, fixes #7268
...
git-svn-id: trunk@4501 -
2006-08-24 20:00:06 +00:00
florian
b24388da8d
* fix comparedword, fixes #7143
...
git-svn-id: trunk@4153 -
2006-07-12 20:50:48 +00:00
florian
81b98c9d82
+ added more ebx saving to cpuid invocations
...
git-svn-id: trunk@4147 -
2006-07-12 07:23:03 +00:00
Jonas Maebe
b9125f97d0
* fixed InterlockedCompareExchange
...
git-svn-id: trunk@3947 -
2006-06-25 18:52:12 +00:00
peter
4c065bce45
* move InterLocked functions to system unit
...
git-svn-id: trunk@3933 -
2006-06-25 09:26:23 +00:00
daniel
6f1e0eff45
* Add ifdef internal_backtrace
...
git-svn-id: trunk@3518 -
2006-05-14 08:49:34 +00:00
florian
47fac4ee6e
* moved *SSECSR to system unit
...
* exposed cpu feature detection on i386 from system unit
+ SafeLoadLibrary
git-svn-id: trunk@3481 -
2006-05-11 19:13:54 +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
Jonas Maebe
83b1c3736a
* fixed assembler version of fpc_AnsiStr_Decr_Ref (based on remark
...
from Martin Schreiber)
git-svn-id: trunk@2856 -
2006-03-11 14:16:11 +00:00
Jonas Maebe
15270b67be
- disabled assembler ansistring helpers for darwin/x86 because they don't
...
keep 16 byte stack alignment
git-svn-id: trunk@2852 -
2006-03-11 13:18:28 +00:00
peter
f411f615c6
* nostackframe directives
...
git-svn-id: trunk@2648 -
2006-02-20 10:37:42 +00:00
peter
340cf721b5
* faster int_str
...
* removed i386 int_str since the generic implementation is faster
git-svn-id: trunk@2646 -
2006-02-20 08:31:20 +00:00
florian
0d61229d63
* fpc_ansistring_decr improved
...
git-svn-id: trunk@2629 -
2006-02-19 14:38:06 +00:00
florian
af9d6344b8
* activated fastmove on win32
...
git-svn-id: trunk@2218 -
2006-01-08 10:10:28 +00:00
florian
fb4557d71e
* first implementation of pic for i386
...
git-svn-id: trunk@2107 -
2006-01-01 20:14:48 +00:00
Jonas Maebe
5b9f58ef73
* reverted r2037 because of braindead "out" semantics for refcounted
...
types
git-svn-id: trunk@2045 -
2005-12-24 01:06:05 +00:00
Jonas Maebe
84aab46550
* changed formal "var" paramters of move, movechar0 and fill* into
...
"out" parameters to avoid wrong "uninitialized" warnings
git-svn-id: trunk@2037 -
2005-12-23 20:59:08 +00:00
florian
e2a4dac215
+ i386 assembler versions of decr_ansistring and unique_ansistring
...
git-svn-id: trunk@1963 -
2005-12-15 19:51:57 +00:00
marco
8f50bb556e
* small fix to inclocked inlining changes
...
git-svn-id: trunk@1340 -
2005-10-09 11:06:47 +00:00
marco
5c92d88da8
* inlined a few funcs, inlined the non threaded part of inc/declocked. The lock prefixed one
...
remains a separate proc, as it is slow anyway.
git-svn-id: trunk@1339 -
2005-10-09 10:57:29 +00:00
michael
9beb37574e
+ Removed SHORTSTRCOMPAREINREG define
...
git-svn-id: trunk@309 -
2005-06-09 17:59:46 +00:00
michael
addadd41bf
+ removed HAS_GENERICCONSTRUCTOR define
...
git-svn-id: trunk@297 -
2005-06-09 17:43:58 +00:00
michael
a775d3d487
+ Removed HASCURRENCY VALUEGETMEM VALUEFREEMEM defines
...
git-svn-id: trunk@293 -
2005-06-09 17:33:22 +00:00
michael
3a2eaa94b1
+ Removed INTERNCONSTINTF define
...
git-svn-id: trunk@267 -
2005-06-07 22:04:18 +00:00
michael
93ba0409be
+ Removed HASCOMPILERPROC define
...
git-svn-id: trunk@265 -
2005-06-07 21:41:02 +00:00
michael
0fe5266f4d
+ Removed NOBOUNDCHECK define
...
git-svn-id: trunk@263 -
2005-06-07 21:17:22 +00:00
michael
db5d9d75aa
+ Removed INTERNCOPY define
...
git-svn-id: trunk@259 -
2005-06-07 21:11:49 +00:00
peter
4ace790492
* remove $Log
...
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
9445db95f3
* widestring manager can handle now ansi<->wide string conversions even if the lens don't match
2005-03-14 21:09:04 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
florian
3600b51d32
+ fastmove from John O'Harrow integrated
2005-01-23 20:03:23 +00:00
peter
14eb8f59b4
internconst, internproc and some external declarations moved to interface
2004-11-17 22:19:04 +00:00
peter
f80f3fc0fa
* shortstr compare with empty string fixed
...
* removed special i386 code
2004-11-01 12:43:28 +00:00
florian
7a7c34e1b7
+ several unicode (to/from utf-8 conversion) stuff added
...
* some longint -> SizeInt changes
2004-07-18 20:21:44 +00:00
Jonas Maebe
d43436e1cd
* fixed indexbyte/word/dword when length is 0 (return -1 instead of 0)
2004-07-18 16:40:08 +00:00
daniel
509870553d
* Aligment code in fillchar proved to slow down stuff seriously instead of
...
speeding it up. This is logical, the compiler aligns everything very well,
it is possible that fillchar gets called on misaligned data, but it seems
this never happens.
2004-07-07 17:38:58 +00:00
peter
269d24955a
* inclocked_longint ifdef fixed
2004-04-29 20:00:47 +00:00