fpcdefs.inc 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. {$ifdef FPC}
  2. {$ifdef DELPHI}
  3. {$mode delphi}
  4. {$asmmode intel}
  5. {$else}
  6. {$mode objfpc}
  7. {$H-}
  8. {$goto on}
  9. { This reduces the memory requirements a lot }
  10. {$PACKENUM 1}
  11. { We don't use exceptions, so turn off the implicit
  12. exceptions in the constructors }
  13. {$ifndef VER1_0}
  14. {$IMPLICITEXCEPTIONS OFF}
  15. {$endif VER1_0}
  16. {$define FPCPROCVAR}
  17. {$ifdef I386}
  18. {$define USEEXCEPT}
  19. {$endif}
  20. {$endif}
  21. {$endif}
  22. {$ifdef DELPHI}
  23. {$H-}
  24. {$J+}
  25. {$Z1}
  26. {$undef FPCPROCVAR}
  27. {$endif}
  28. { assume a processor with flags }
  29. {$define cpuflags}
  30. {$ifdef i386}
  31. {$ifdef delphi}
  32. {$define oldset}
  33. {$endif}
  34. {$define x86}
  35. {$define cpuextended}
  36. {$endif i386}
  37. {$ifdef x86_64}
  38. {$define x86}
  39. {$define cpu64bit}
  40. {$define cpuextended}
  41. {$endif x86_64}
  42. {$ifdef alpha}
  43. {$define cpu64bit}
  44. {$undef cpuflags}
  45. {$define noopt}
  46. {$define oldset}
  47. {$endif alpha}
  48. {$ifdef sparc}
  49. {$define noopt}
  50. {$define oldset}
  51. {$endif sparc}
  52. {$ifdef powerpc}
  53. {$define noopt}
  54. {$define oldset}
  55. {$endif powerpc}
  56. {$ifdef arm}
  57. {$define cpuneedsdiv32helper}
  58. {$define noopt}
  59. {$define oldset}
  60. {$endif arm}
  61. {$ifdef m68k}
  62. {$define cpufpemu}
  63. {$define noopt}
  64. {$define oldset}
  65. {$endif m68k}
  66. {
  67. $Log$
  68. Revision 1.24 2003-09-03 15:55:00 peter
  69. * NEWRA branch merged
  70. Revision 1.23 2003/09/03 11:18:36 florian
  71. * fixed arm concatcopy
  72. + arm support in the common compiler sources added
  73. * moved some generic cg code around
  74. + tfputype added
  75. * ...
  76. Revision 1.22.2.2 2003/08/31 21:07:44 daniel
  77. * callparatemp ripped
  78. Revision 1.22.2.1 2003/08/27 20:11:29 peter
  79. * newra default
  80. >>>>>>> 1.22.2.2
  81. Revision 1.22 2003/08/11 21:18:20 peter
  82. * start of sparc support for newra
  83. Revision 1.21 2003/07/21 11:52:57 florian
  84. * very basic stuff for the arm
  85. Revision 1.20 2003/05/24 21:12:57 florian
  86. * if something doesn't work with callparatemp, the define callparatemp
  87. should be used because other processors with reigster calling conventions
  88. depend on this as well
  89. Revision 1.19 2003/05/09 17:47:02 peter
  90. * self moved to hidden parameter
  91. * removed hdisposen,hnewn,selfn
  92. Revision 1.18 2003/04/30 09:42:42 florian
  93. + first changes to make self a hidden parameter
  94. Revision 1.17 2003/04/24 22:29:57 florian
  95. * fixed a lot of PowerPC related stuff
  96. Revision 1.16 2003/04/23 13:47:41 peter
  97. * optimizer is x86
  98. Revision 1.15 2003/04/23 12:35:34 florian
  99. * fixed several issues with powerpc
  100. + applied a patch from Jonas for nested function calls (PowerPC only)
  101. * ...
  102. Revision 1.14 2002/12/06 16:56:57 peter
  103. * only compile cs_fp_emulation support when cpufpuemu is defined
  104. * define cpufpuemu for m68k only
  105. Revision 1.13 2002/10/16 19:01:43 peter
  106. + $IMPLICITEXCEPTIONS switch to turn on/off generation of the
  107. implicit exception frames for procedures with initialized variables
  108. and for constructors. The default is on for compatibility
  109. Revision 1.12 2002/10/05 12:43:24 carl
  110. * fixes for Delphi 6 compilation
  111. (warning : Some features do not work under Delphi)
  112. Revision 1.11 2002/09/30 07:00:45 florian
  113. * fixes to common code to get the alpha compiler compiled applied
  114. Revision 1.10 2002/09/29 23:19:05 florian
  115. + added define 64bit
  116. Revision 1.9 2002/09/07 15:25:02 peter
  117. * old logs removed and tabs fixed
  118. Revision 1.8 2002/08/30 13:42:29 mazen
  119. - undefining win32 when SPARC defined removed, no more needed.
  120. Revision 1.6 2002/08/19 18:17:48 carl
  121. + optimize64_op_const_reg implemented (optimizes 64-bit constant opcodes)
  122. * more fixes to m68k for 64-bit operations
  123. Revision 1.5 2002/08/15 15:11:53 carl
  124. * oldset define is now correct for all cpu's except i386
  125. * correct compilation problems because of the above
  126. Revision 1.4 2002/07/23 12:34:29 daniel
  127. * Readded old set code. To use it define 'oldset'. Activated by default
  128. for ppc.
  129. Revision 1.3 2002/07/04 18:56:50 florian
  130. + log added
  131. }