svenbarth
|
0c316deab5
* readd SmallInt typecasts to SmallInt overload of SwapEndian
|
5 years ago |
svenbarth
|
9d86fed95b
* avoid range check error when using SwapEndian with 16-bit constants
|
5 years ago |
florian
|
33fa211b84
+ x86-64: assembler implementation for u128_div_u64_to_u64 for SysV ABI
|
5 years ago |
florian
|
62f890efa3
* improved floating point signal handling on x86/linux
|
6 years ago |
florian
|
5b766a1e67
* fixed CompareByte for x86-64 after r37528
|
7 years ago |
florian
|
0c7306e1cd
* improved CompareByte for x86-64 based on a patch by Markus Beth
|
7 years ago |
marco
|
bc39eb29d3
* comment spelling fix (modifed->modified)
|
8 years ago |
sergei
|
b16c6f8ced
* i386 and x86_64 changes for Delphi compatibility:
|
11 years ago |
sergei
|
d1348d3f9b
- i386 and x86_64: Once softfloat stuff has been cleaned up, SysResetFPU and SysInitFPU end up doing exactly the same. Removed one of them.
|
11 years ago |
sergei
|
4952754184
- i386 and x86_64 no longer use any softfloat stuff.
|
11 years ago |
sergei
|
690995fa12
* RTL: fixed some warnings when compiling for x86_64:
|
12 years ago |
pierre
|
c26ef20f30
Use OLDBINUTILS conditional to disable assembler code unsupported by older GNU assmebler for x86_64.inc as in cpu.pp to allow use for openbsd for instance
|
12 years ago |
Jonas Maebe
|
da32d99b7e
* declare Sptr() and get_frame() as "nostackframe"
|
13 years ago |
sergei
|
1112041ff1
* get_pc_addr on x86_64 needs nostackframe attribute to return the correct value.
|
13 years ago |
pierre
|
f340ef87e3
* get_addr function renamed to get_pc_addr
|
13 years ago |
pierre
|
8469741700
+ Added additional addr pointer parameter to
|
13 years ago |
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
|
15 years ago |