Browse Source

+ basic k6 and 6x86 optimizing support (-O7 and -O8)

Jonas Maebe 27 years ago
parent
commit
fd467e9496
4 changed files with 58 additions and 43 deletions
  1. 5 2
      compiler/cgi386.pas
  2. 7 5
      compiler/optione.msg
  3. 39 34
      compiler/optmsg.inc
  4. 7 2
      compiler/opts386.pas

+ 5 - 2
compiler/cgi386.pas

@@ -5254,7 +5254,7 @@ do_jmp:
                      inc(max_linear_list,3);
                        if opt_processors=pentium then
                      inc(max_linear_list,6);
-                   if opt_processors=pentiumpro then
+                   if opt_processors>=pentiumpro then
                      inc(max_linear_list,9);
 
                    if (labels<=max_linear_list) then
@@ -5709,7 +5709,10 @@ do_jmp:
 end.
 {
   $Log$
-  Revision 1.6  1998-04-08 11:34:20  peter
+  Revision 1.7  1998-04-09 14:28:05  jonas
+    + basic k6 and 6x86 optimizing support (-O7 and -O8)
+
+  Revision 1.6  1998/04/08 11:34:20  peter
     * nasm works (linux only tested)
 
   Revision 1.5  1998/04/07 22:45:04  florian

+ 7 - 5
compiler/optione.msg

@@ -135,11 +135,13 @@ Report bugs,suggestions etc to:
 3*2OG_optimize for time
 3*2Ox_optimize maximum
 3*2Oz_uncertain optimizes (see docs)
-3*2O2_optimize for Pentium II (tm)
-3*2O3_optimize for i386
-3*2O4_optimize for i486
-3*2O5_optimize for Pentium (tm)
-3*2O6_optimizations for PentiumPro (tm)
+3*2O2_optimize for the Pentium II (tm)
+3*2O3_optimize for the i386
+3*2O4_optimize for the i486
+3*2O5_optimize for the Pentium (tm)
+3*2O6_optimize for the PentiumPro (tm)
+3*2O7_optimize for the Cyrix 6x86
+3*2O8_optimize for the AMD K6
 6*1A_output format
 6*2Agas_GNU Motorola assembler
 6*2Ao_UNIX o-file

+ 39 - 34
compiler/optmsg.inc

@@ -1,4 +1,4 @@
-const optiontxt : array[1..04676] of char=(
+const optiontxt : array[1..04755] of char=(
   ' ','[','o','p','t','i','o','n','s',']',' ','<','i','n','p',
   'u','t','f','i','l','e','>',' ','[','o','p','t','i','o','n',
   's',']',#000,'O','n','l','y',' ','o','n','e',' ','s','o','u',
@@ -278,36 +278,41 @@ const optiontxt : array[1..04676] of char=(
   'O','z','_','u','n','c','e','r','t','a','i','n',' ','o','p',
   't','i','m','i','z','e','s',' ','(','s','e','e',' ','d','o',
   'c','s',')',#000,'3','*','2','O','2','_','o','p','t','i','m',
-  'i','z','e',' ','f','o','r',' ','P','e','n','t','i','u','m',
-  ' ','I','I',' ','(','t','m',')',#000,'3','*','2','O','3','_',
-  'o','p','t','i','m','i','z','e',' ','f','o','r',' ','i','3',
-  '8','6',#000,'3','*','2','O','4','_','o','p','t','i','m','i',
-  'z','e',' ','f','o','r',' ','i','4','8','6',#000,'3','*','2',
-  'O','5','_','o','p','t','i','m','i','z','e',' ','f','o','r',
-  ' ','P','e','n','t','i','u','m',' ','(','t','m',')',#000,'3',
-  '*','2','O','6','_','o','p','t','i','m','i','z','a','t','i',
-  'o','n','s',' ','f','o','r',' ','P','e','n','t','i','u','m',
-  'P','r','o',' ','(','t','m',')',#000,'6','*','1','A','_','o',
-  'u','t','p','u','t',' ','f','o','r','m','a','t',#000,'6','*',
-  '2','A','g','a','s','_','G','N','U',' ','M','o','t','o','r',
-  'o','l','a',' ','a','s','s','e','m','b','l','e','r',#000,'6',
-  '*','2','A','o','_','U','N','I','X',' ','o','-','f','i','l',
-  'e',#000,'6','*','2','A','m','_','S','t','a','n','d','a','r',
-  'd',' ','M','o','t','o','r','o','l','a',' ','a','s','s','e',
-  'm','b','l','e','r',#000,'6','*','2','A','i','_','M','I','T',
-  ' ','S','y','n','t','a','x',' ','(','o','l','d',' ','G','A',
-  'S',')',#000,'6','*','1','O','_','o','p','t','i','m','i','z',
-  'a','t','i','o','n','s',#000,'6','*','2','O','a','_','s','i',
-  'm','p','l','e',' ','o','p','t','i','m','i','z','a','t','i',
-  'o','n','s',#000,'6','*','2','O','g','_','o','p','t','i','m',
-  'i','z','e',' ','f','o','r',' ','s','i','z','e',#000,'6','*',
-  '2','O','G','_','o','p','t','i','m','i','z','e',' ','f','o',
-  'r',' ','t','i','m','e',#000,'6','*','2','O','x','_','o','p',
-  't','i','m','i','z','e',' ','m','a','x','i','m','u','m',#000,
-  '6','*','2','O','2','_','t','a','r','g','e','t',' ','i','s',
-  ' ','a',' ','M','C','6','8','0','2','0','+',' ','p','r','o',
-  'c','e','s','s','o','r',#000,'*','*','1','*','_',#000,'*','*',
-  '1','?','_','s','h','o','w','s',' ','t','h','i','s',' ','h',
-  'e','l','p',#000,'*','*','1','h','_','s','h','o','w','s',' ',
-  't','h','i','s',' ','h','e','l','p',' ','w','i','t','h','o',
-  'u','t',' ','w','a','i','t','i','n','g',#000);
+  'i','z','e',' ','f','o','r',' ','t','h','e',' ','P','e','n',
+  't','i','u','m',' ','I','I',' ','(','t','m',')',#000,'3','*',
+  '2','O','3','_','o','p','t','i','m','i','z','e',' ','f','o',
+  'r',' ','t','h','e',' ','i','3','8','6',#000,'3','*','2','O',
+  '4','_','o','p','t','i','m','i','z','e',' ','f','o','r',' ',
+  't','h','e',' ','i','4','8','6',#000,'3','*','2','O','5','_',
+  'o','p','t','i','m','i','z','e',' ','f','o','r',' ','t','h',
+  'e',' ','P','e','n','t','i','u','m',' ','(','t','m',')',#000,
+  '3','*','2','O','6','_','o','p','t','i','m','i','z','e',' ',
+  'f','o','r',' ','t','h','e',' ','P','e','n','t','i','u','m',
+  'P','r','o',' ','(','t','m',')',#000,'3','*','2','O','7','_',
+  'o','p','t','i','m','i','z','e',' ','f','o','r',' ','t','h',
+  'e',' ','C','y','r','i','x',' ','6','x','8','6',#000,'3','*',
+  '2','O','8','_','o','p','t','i','m','i','z','e',' ','f','o',
+  'r',' ','t','h','e',' ','A','M','D',' ','K','6',#000,'6','*',
+  '1','A','_','o','u','t','p','u','t',' ','f','o','r','m','a',
+  't',#000,'6','*','2','A','g','a','s','_','G','N','U',' ','M',
+  'o','t','o','r','o','l','a',' ','a','s','s','e','m','b','l',
+  'e','r',#000,'6','*','2','A','o','_','U','N','I','X',' ','o',
+  '-','f','i','l','e',#000,'6','*','2','A','m','_','S','t','a',
+  'n','d','a','r','d',' ','M','o','t','o','r','o','l','a',' ',
+  'a','s','s','e','m','b','l','e','r',#000,'6','*','2','A','i',
+  '_','M','I','T',' ','S','y','n','t','a','x',' ','(','o','l',
+  'd',' ','G','A','S',')',#000,'6','*','1','O','_','o','p','t',
+  'i','m','i','z','a','t','i','o','n','s',#000,'6','*','2','O',
+  'a','_','s','i','m','p','l','e',' ','o','p','t','i','m','i',
+  'z','a','t','i','o','n','s',#000,'6','*','2','O','g','_','o',
+  'p','t','i','m','i','z','e',' ','f','o','r',' ','s','i','z',
+  'e',#000,'6','*','2','O','G','_','o','p','t','i','m','i','z',
+  'e',' ','f','o','r',' ','t','i','m','e',#000,'6','*','2','O',
+  'x','_','o','p','t','i','m','i','z','e',' ','m','a','x','i',
+  'm','u','m',#000,'6','*','2','O','2','_','t','a','r','g','e',
+  't',' ','i','s',' ','a',' ','M','C','6','8','0','2','0','+',
+  ' ','p','r','o','c','e','s','s','o','r',#000,'*','*','1','*',
+  '_',#000,'*','*','1','?','_','s','h','o','w','s',' ','t','h',
+  'i','s',' ','h','e','l','p',#000,'*','*','1','h','_','s','h',
+  'o','w','s',' ','t','h','i','s',' ','h','e','l','p',' ','w',
+  'i','t','h','o','u','t',' ','w','a','i','t','i','n','g',#000);

+ 7 - 2
compiler/opts386.pas

@@ -95,6 +95,8 @@ begin
             '4' : opt_processors:=i486;
             '5' : opt_processors:=pentium;
             '6' : opt_processors:=pentiumpro;
+            '7' : opt_processors:=cx6x86;
+            '8' : opt_processors:=amdk6;
             else IllegalPara(opt);
             end;
           end;
@@ -117,8 +119,11 @@ end;
 end.
 {
   $Log$
-  Revision 1.1  1998-03-25 11:18:14  root
-  Initial revision
+  Revision 1.2  1998-04-09 14:28:09  jonas
+    + basic k6 and 6x86 optimizing support (-O7 and -O8)
+
+  Revision 1.1.1.1  1998/03/25 11:18:14  root
+  * Restored version
 
   Revision 1.17  1998/03/10 01:17:21  peter
     * all files have the same header