fpc/rtl/i386
Jonas Maebe 9273856e84 * disallow pusha*/popa* for x86_64 (mantis #14862)
* disallow pushfd/popfd for x86_64 (mantis #14862)
  * fixed assembling popfq with the internal assembler (it needs a rex.w
    prefisx, while pushfq doesn't)
  * changed the default opcode size of pushf/popf/pusha/popa in
    {$asmmode intel} from "native size" to 16 bit (compatible with Intel
    manuals and Kylix; in AT&T mode, the default size for those operations
    remains the native one)
  * changed pushf/popf in rtl/i386/* into pushfd/popfd because of the
    previous change

git-svn-id: trunk@15546 -
2010-07-10 16:22:46 +00:00
..
cpu.pp * disallow pusha*/popa* for x86_64 (mantis #14862) 2010-07-10 16:22:46 +00:00
fastmove.inc * win32 system unit doesn't depend anymore directly on the main program, this is necessary to be able to keep it in a dll 2007-11-01 21:59:43 +00:00
i386.inc * disallow pusha*/popa* for x86_64 (mantis #14862) 2010-07-10 16:22:46 +00:00
int64p.inc
makefile.cpu
math.inc * reset FPU properly after an exception, resolves #12214 2008-09-25 19:15:54 +00:00
mathu.inc resolves #15453: 2010-01-03 14:59:01 +00:00
mathuh.inc * moved *SSECSR to system unit 2006-05-11 19:13:54 +00:00
mmx.pp * save/restore ebx around cpuid invocations 2006-07-11 20:50:44 +00:00
readme
set.inc - removed FPC_NEW_BIGENDIAN_SETS define and if(n)defs 2009-08-23 08:16:40 +00:00
setjump.inc * Fixed warnings about EBP based access. 2007-11-03 18:05:12 +00:00
setjumph.inc
strings.inc * fixed i386/linux rtl compilation and functionality when compiled 2008-05-21 15:20:13 +00:00
stringss.inc
strpas.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)