fpc/rtl/i386
2015-09-15 11:51:45 +00:00
..
cpu.pp
fastmove.inc - removed FPC_HAS_VALGRINDBOOL-related checks, FPC 2.6.4 has it 2015-09-15 11:51:45 +00:00
i386.inc * i386 and x86_64 changes for Delphi compatibility: 2014-04-25 15:10:12 +00:00
int64p.inc i386: added signed 64bit div/mod helpers in assembly. we have some 64bit heavy code where a direct helper results in about 8-10% of performance advantage compared to going through the generic wrapper + the unsigned function 2014-07-24 21:06:23 +00:00
makefile.cpu + added missing i386 system unit includes fastmove.inc and int64p.inc to makefile.cpu 2015-03-07 22:35:23 +00:00
math.inc * sqr(real) and sqrt(real): remove typeconv node inserted by initial call processing (see explanation in comments), allowing these functions to be evaluated using precision of argument. In particular, sqrt(single) and sqrt(double) now emit 'sqrtss' and 'sqrtsd' instructions on x86 targets with -Cfsse3. Non-x86 targets already have the necessary support in code generators. 2014-05-21 14:53:47 +00:00
mathu.inc * i386 and x86_64 changes for Delphi compatibility: 2014-04-25 15:10:12 +00:00
mmx.pp
readme
set.inc
setjump.inc
setjumph.inc
strings.inc
stringss.inc

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)