fpc/rtl/i386
2021-01-30 18:46:58 +00:00
..
cpu.pp * do not execute xend twice which was introduced in r48430 2021-01-30 18:46:58 +00:00
cpuh.inc * disabled mm procs again, they are not usable yet neither supposed to be 2020-01-18 11:37:57 +00:00
cpuinnr.inc * first part of merging parts of Jeppe's intrinsics patch, mainly r31135 2020-01-14 21:52:39 +00:00
cpumminnr.inc Add most SSE instructions as intrinsics. 2020-03-06 21:34:22 +00:00
cpummprocs.inc * regenerated 2020-07-12 20:46:54 +00:00
fastmove.inc Add conditional FASTMOVE_DISABLE_SSE3 to be able to discard SSE specific code, needed for Watcom Assembler support 2017-08-04 20:51:58 +00:00
i386.inc * fpc_geteipasebx and fpc_geteipasecx are used as procedures, not functions, so declare them as such 2020-08-01 17:26:34 +00:00
int64p.inc * split fpc_mul_<64 bit> into separate procedures with and without overflow checking 2017-02-19 19:15:14 +00:00
makefile.cpu * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
math.inc Use .byte substitutes for ldmxcsr and stmxcsr instructions 2017-08-21 13:29:29 +00:00
mathu.inc * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs. 2021-01-03 21:44:18 +00:00
mmx.pp + patch by fanjinke: Hygon support for the mmx unit, resolves #37391 2020-07-24 20:53:54 +00:00
ports.inc * set the stdcall calling convention explicitly for each method, that requires 2018-07-06 15:59:26 +00:00
portsh.inc * changed the visibility of the writeport and readport methods in the ports unit 2018-07-09 14:55:20 +00:00
readme
set.inc * Added CLDs in the RTL i386 inline asm routines, wrapped in {$ifdef 2013-09-29 10:53:49 +00:00
setjump.inc * i386-win32 setjmp and longjmp: if SEH support is enabled, save/restore head of exception registration chain. Without this, a longjmp out of a function with exception frame(s) will leave these exception frames below ESP, which will fail integrity checks in OS and cause process termination if an exception occurs later on (or they may be overwritten by subsequent operations on stack and, again, cause undesired results). 2013-12-16 10:12:36 +00:00
setjumph.inc * i386-win32 setjmp and longjmp: if SEH support is enabled, save/restore head of exception registration chain. Without this, a longjmp out of a function with exception frame(s) will leave these exception frames below ESP, which will fail integrity checks in OS and cause process termination if an exception occurs later on (or they may be overwritten by subsequent operations on stack and, again, cause undesired results). 2013-12-16 10:12:36 +00:00
strings.inc - removed one asm instruction from i386's StrEnd() implementation 2017-11-23 16:43:51 +00:00
stringss.inc * put the cld instructions behind {$ifdef FPC_ENABLED_CLD} in i386/strings*.inc 2013-09-28 12:06:47 +00:00

This directory contains only RTL parts specific to the processor I386 family.

(They are specific because they contain assembler instructions)

Include files for system are :
  heap.inc (heap handling)
  set.inc  (sets operations)
  math.inc (mathematic operations using the coprocessor)
  i386.inc (several functions/procedures containing assembler parts)
  setjump.inc (setjmp/longjmp implementation for exceptions)
  rttip.inc (rtti handling, for speed reasons)
  
Units are :
  strings.pp (written in assembler for speed)
  cpu.pp     (routines to access cpu info)
  mmx.pp     (special mmx routines)