diff options
Diffstat (limited to 'mips/compiler/cgutils.pas')
-rw-r--r-- | mips/compiler/cgutils.pas | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mips/compiler/cgutils.pas b/mips/compiler/cgutils.pas index 60a185c26f..76c60805fd 100644 --- a/mips/compiler/cgutils.pas +++ b/mips/compiler/cgutils.pas @@ -32,7 +32,17 @@ unit cgutils; aasmbase, cpubase,cgbase; + const + { implementation of max function using only functionality that can be + evaluated as a constant expression by the compiler -- this is + basically maxcpureg = max(max(first_int_imreg,first_fpu_imreg),first_mm_imreg)-1 } + tmpmaxcpufpuintreg = first_int_imreg + ((first_fpu_imreg - first_int_imreg) * ord(first_int_imreg < first_fpu_imreg)); + maxcpuregister = (tmpmaxcpufpuintreg + ((first_mm_imreg - tmpmaxcpufpuintreg) * ord(tmpmaxcpufpuintreg < first_mm_imreg)))-1; + type + { Set type definition for cpuregisters } + tcpuregisterset = set of 0..maxcpuregister; + {$ifdef jvm} tarrayreftype = (art_none,art_indexreg,art_indexref,art_indexconst); {$endif jvm} |