Commit History

Author SHA1 Message Date
  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 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