cpuinfo.pas 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. {
  2. $Id$
  3. Copyright (c) 1998-2002 by the Free Pascal development team
  4. Basic Processor information for the PowerPC
  5. See the file COPYING.FPC, included in this distribution,
  6. for details about the copyright.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  10. **********************************************************************}
  11. Unit CPUInfo;
  12. Interface
  13. Type
  14. { Architecture word - Native unsigned type }
  15. AWord = Cardinal;
  16. PAWord = ^AWord;
  17. { this must be an ordinal type with the same size as a pointer }
  18. { to allow some dirty type casts for example when using }
  19. { tconstsym.value }
  20. { Note: must be unsigned!! Otherwise, ugly code like }
  21. { pointer(-1) will result in a pointer with the value }
  22. { $fffffffffffffff on a 32bit machine if the compiler uses }
  23. { int64 constants internally (JM) }
  24. TConstPtrUInt = Cardinal;
  25. Const
  26. {# Size of native extended floating point type }
  27. extended_size = 8;
  28. {# Size of a pointer }
  29. pointer_size = 4;
  30. {# Size of a multimedia register }
  31. mmreg_size = 16;
  32. { target cpu string (used by compiler options) }
  33. target_cpu_string = 'powerpc';
  34. Implementation
  35. end.
  36. {
  37. $Log$
  38. Revision 1.8 2002-08-10 14:52:52 carl
  39. + moved target_cpu_string to cpuinfo
  40. * renamed asmmode enum.
  41. * assembler reader has now less ifdef's
  42. * move from nppcmem.pas -> ncgmem.pas vec. node.
  43. Revision 1.7 2002/05/18 13:34:26 peter
  44. * readded missing revisions
  45. Revision 1.6 2002/05/16 19:46:53 carl
  46. + defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
  47. + try to fix temp allocation (still in ifdef)
  48. + generic constructor calls
  49. + start of tassembler / tmodulebase class cleanup
  50. Revision 1.4 2002/05/13 19:52:46 peter
  51. * a ppcppc can be build again
  52. Revision 1.3 2002/04/07 13:43:11 carl
  53. - moved type constant
  54. }