~ubuntu-branches/ubuntu/dapper/fpc/dapper

« back to all changes in this revision

Viewing changes to compiler/x86_64/cpuinfo.pas

  • Committer: Bazaar Package Importer
  • Author(s): Carlos Laviola
  • Date: 2005-05-30 11:59:10 UTC
  • mfrom: (1.2.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20050530115910-x5pbzm4qqta4i94h
Tags: 2.0.0-2
debian/fp-compiler.postinst.in: forgot to reapply the patch that
correctly creates the slave link to pc(1).  (Closes: #310907)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
{
2
 
    $Id: cpuinfo.pas,v 1.12 2004/04/28 15:19:03 florian Exp $
 
2
    $Id: cpuinfo.pas,v 1.16 2005/02/14 17:13:10 peter Exp $
3
3
    Copyright (c) 1998-2000 by Florian Klaempfl
4
4
 
5
5
    Basic Processor information
30
30
    globtype;
31
31
 
32
32
Type
33
 
   AWord = QWord;
34
 
   PAWord = ^AWord;
35
 
   AInt = int64;
36
 
   PAInt = ^AInt;
37
 
 
38
 
   { the ordinal type used when evaluating constant integer expressions }
39
 
   TConstExprInt = int64;
40
 
   { ... the same unsigned }
41
 
   TConstExprUInt = {$ifdef fpc}qword{$else}int64{$endif};
42
 
 
43
 
   { this must be an ordinal type with the same size as a pointer }
44
 
   { Note: must be unsigned!! Otherwise, ugly code like           }
45
 
   { pointer(-1) will result in a pointer with the value          }
46
 
   { $fffffffffffffff on a 32bit machine if the compiler uses     }
47
 
   { int64 constants internally (JM)                              }
48
 
   TConstPtrUInt = qword;
49
 
 
50
33
   bestreal = extended;
51
34
   ts32real = single;
52
35
   ts64real = double;
69
52
Const
70
53
   { Size of native extended type }
71
54
   extended_size = 10;
72
 
   { Size of a pointer }
73
 
   pointer_size  = 8;
74
55
   { Size of a multimedia register }
75
56
   mmreg_size = 16;
76
57
   { target cpu string (used by compiler options) }
77
58
   target_cpu_string = 'x86_64';
78
 
   { size of the buffer used for setjump/longjmp
79
 
     the size of this buffer is deduced from the
80
 
     jmp_buf structure in setjumph.inc file
81
 
   }
82
 
   {$warning FIX: jmp_buf_size }
83
 
   jmp_buf_size = 48;
84
 
 
85
59
 
86
60
   { calling conventions supported by the code generator }
87
61
   supported_calling_conventions : tproccalloptions = [
111
85
end.
112
86
{
113
87
  $Log: cpuinfo.pas,v $
114
 
  Revision 1.12  2004/04/28 15:19:03  florian
115
 
    + syscall directive support for MorphOS added
116
 
 
117
 
  Revision 1.11  2004/04/12 18:25:26  florian
118
 
    + AInt added
119
 
 
120
 
  Revision 1.10  2003/12/25 01:07:09  florian
121
 
    + $fputype directive support
122
 
    + single data type operations with sse unit
123
 
    * fixed more x86-64 stuff
124
 
 
125
 
  Revision 1.9  2003/12/22 19:00:17  florian
126
 
    * fixed some x86-64 issues
127
 
 
128
 
  Revision 1.8  2003/12/20 12:38:51  florian
129
 
    * some x86-64 compilation fixe
130
 
 
131
 
  Revision 1.7  2003/09/24 17:12:02  florian
132
 
    * several fixes for new reg allocator
133
 
 
134
 
  Revision 1.6  2003/01/05 13:36:54  florian
135
 
    * x86-64 compiles
136
 
    + very basic support for float128 type (x86-64 only)
137
 
 
138
 
  Revision 1.5  2002/09/07 15:25:15  peter
139
 
    * old logs removed and tabs fixed
140
 
 
141
 
  Revision 1.4  2002/08/12 15:08:45  carl
142
 
    + stab register indexes for powerpc (moved from gdb to cpubase)
143
 
    + tprocessor enumeration moved to cpuinfo
144
 
    + linker in target_info is now a class
145
 
    * many many updates for m68k (will soon start to compile)
146
 
    - removed some ifdef or correct them for correct cpu
147
 
 
148
 
  Revision 1.3  2002/08/10 14:53:38  carl
149
 
    + moved target_cpu_string to cpuinfo
150
 
    * renamed asmmode enum.
151
 
    * assembler reader has now less ifdef's
152
 
    * move from nppcmem.pas -> ncgmem.pas vec. node.
153
 
 
154
 
  Revision 1.2  2002/07/25 22:55:34  florian
155
 
    * several fixes, small test units can be compiled
156
 
 
157
 
  Revision 1.1  2002/07/24 22:38:15  florian
158
 
    + initial release of x86-64 target code
 
88
  Revision 1.16  2005/02/14 17:13:10  peter
 
89
    * truncate log
 
90
 
 
91
  Revision 1.15  2005/01/20 16:38:45  peter
 
92
    * load jmp_buf_size from system unit
159
93
 
160
94
}