florian
|
ceb1becfa1
* align cmp byte loop
|
13 years ago |
florian
|
59040465d8
+ simple assembler implementation of CompareByte
|
13 years ago |
sergei
|
9b2614684e
* Return values of get_caller_addr and get_caller_frame was undefined for nil argument.
|
14 years ago |
sergei
|
c73b6cfbd4
- removed register lists after pure assembler procedures
|
14 years ago |
sergei
|
576250bc5b
* Reverted r17343, and IFDEF'ed out the newer assembler procedures for FreeBSD for now. They require fixes to assembler writer, and after it's done they still have to be disabled during bootstrapping.
|
14 years ago |
sergei
|
0666ab09ae
* Changed 'movnti' to 'movntiq', the former is rejected by FreeBSD GAS.
|
14 years ago |
sergei
|
dd950d3ceb
* Fixed bug #19188 again, this time with *correct* value of the AND mask.
|
14 years ago |
sergei
|
e1616fd8ef
* Replaced 'movzbl %r8b, %r8' because it is rejected by GAS (suffix does not match the operand size). The correct instruction is 'movzbq %r8b, %r8' but that one is rejected by FPC reader instead. Provides a fix for broken builds of targets using external assembler (Mantis #19188).
|
14 years ago |
sergei
|
30f7bff09d
* Did a clean rewrite of IndexByte and IndexWord, resulting in somewhat less instructions.
|
14 years ago |
sergei
|
c5e7902e4b
+ x86_64 optimized assembler functions IndexByte and IndexWord
|
14 years ago |
Jonas Maebe
|
da16630c50
* fixed compilation on FPC_USE_LIBC platforms after r17249 (they already
|
14 years ago |
sergei
|
6e09d76b07
+ x86_64 assembler implementations of Move and FillChar. Does not use SIMD, so probably not the fastest for large move sizes, but for small to medium sizes it should be competitive.
|
14 years ago |
Jonas Maebe
|
c14574bb56
* don't change the fpu control word in the initialisation code of dynamic
|
15 years ago |
pierre
|
05c1097395
* simplify SysInitFPU assmebler using local variables
|
16 years ago |
florian
|
3ce72907c2
+ implementation of WriteBarrier
|
16 years ago |
florian
|
f17943371c
* assembler implementation of SwapEndian on x86-64, resolves #14203
|
16 years ago |
yury
|
bba2b87064
* Use RIP relative symbol addressing in assembler blocks. Finally bug #13657 is fixed.
|
16 years ago |
florian
|
50b63884cb
+ applied a fix similar to 11820 to x86-64
|
17 years ago |
florian
|
7da7364ee7
* refactored SysResetFPU into SysInitFPU and SysResetFPU
|
18 years ago |
peter
|
2e47433989
* fix typo
|
18 years ago |
micha
|
d95b9082bb
* add memory barrier prototypes + implementation for i386 and sparc + use lwsync for powerpc64
|
18 years ago |
florian
|
605e82489a
* reset fpu on win64 as well, certain operations like ln use it
|
18 years ago |
florian
|
87bc8a4471
* fixed InterlockedCompareExchange(64) of x86_64.inc for win64 too
|
18 years ago |
ivost
|
f1e218ffe0
* fixed InterlockedCompareExchange(64) of x86_64.inc (I dont know if win64 version is wrong also!)
|
18 years ago |
florian
|
b3a1868ff0
* correct masking of exceptions in genmath code
|
19 years ago |
Jonas Maebe
|
5acc8b44a8
* activated internal get_frame for x86
|
19 years ago |
florian
|
0ade2e487d
* cleaned up and fixed (from mftq75) sse unit initialization, fixes #7268
|
19 years ago |
peter
|
4c065bce45
* move InterLocked functions to system unit
|
19 years ago |
daniel
|
ebec34c224
* Add {$IFNDEF INTERNAL_BACKTRACE}
|
19 years ago |
florian
|
398cb8e0fe
* fixed calling conventions for winx64
|
19 years ago |