Added sparc description, don't put constants in regs on M68020

This commit is contained in:
ceriel 1990-11-01 09:37:02 +00:00
parent b314975f0f
commit ab1b54b56d
5 changed files with 113 additions and 5 deletions

View file

@ -9,3 +9,4 @@ vax4.descr
em22.descr
em24.descr
em44.descr
sparc.descr

View file

@ -61,3 +61,6 @@ em24descr: em24.descr descr.sed
em44descr: em44.descr descr.sed
$(CPP) -P -I$(EMH) em44.descr | sed -f descr.sed > em44descr
sparcdescr: sparc.descr descr.sed
$(CPP) -P -I$(EMH) sparc.descr | sed -f descr.sed > sparcdescr

View file

@ -8,6 +8,7 @@ s/sizes//
s/size//
s/->//
s/pointer/2/g
s/float/3/g
s/general/0/g
s/fitbyte/1/
s/default/0/

View file

@ -25,9 +25,9 @@ register score parameters:
default -> (2,2)
constant:
(3 sizes)
in_0_8 -> (0,0)
fitbyte -> (2,2)
default -> (4,4)
in_0_8 -> (-1,-1)
fitbyte -> (-1,-1)
default -> (-1,-1)
double constant:
(1 size)
default -> (-1,-1)
@ -57,8 +57,8 @@ opening cost parameters:
general -> (4,4)
constant:
(2 sizes)
fitbyte -> (4,2)
default -> (6,6)
fitbyte -> (1000,1000)
default -> (1000,1000)
double constant:
(1 size)
default -> (1000,1000)

103
util/ego/descr/sparc.descr Normal file
View file

@ -0,0 +1,103 @@
wordsize: 4
pointersize: 4
%%RA
general registers: 12
address registers: 0
floating point registers: 16
use general as pointer: yes
register score parameters:
local variable:
(3 cases)
general,general
(1 size)
default -> (2,1)
pointer,general
(1 size)
default -> (2,1)
float,float
(1 size)
default -> (2,1)
address of local variable:
(1 case)
general,general
(1 size)
default -> (-1,-1)
constant:
(1 sizes)
default -> (-1,-1)
double constant:
(1 size)
default -> (-1,-1)
address of global variable:
(1 size)
default -> (1,1)
address of procedure:
(1 size)
default -> (-1,-1)
opening cost parameters:
local variable:
(1 case)
general
(1 size)
default -> (2,1)
address of local variable:
(1 case)
general
(1 size)
default -> (-1,-1)
constant:
(1 size)
default -> (-1,-1)
double constant:
(1 size)
default -> (-1,-1)
address of global variable:
(1 size)
default -> (2,2)
address of procedure:
(1 size)
default -> (-1,-1)
register save costs:
(14 cases)
0 -> (0,0)
1 -> (0,0)
2 -> (0,0)
3 -> (0,0)
4 -> (0,0)
5 -> (0,0)
6 -> (0,0)
7 -> (0,0)
8 -> (0,0)
9 -> (0,0)
10 -> (0,0)
11 -> (0,0)
12 -> (0,0)
0 -> (0,0)
%%UD
access costs of global variables:
(1 size)
default -> (3,2)
access costs of local variables:
(1 size)
default -> (2,1)
%%SR
overflow harmful?: no
array bound harmful?: yes
%%CS
#include "../../../h/em_mnem.h"
first time then space:
addressing modes: -1
-1
cheap operations: op_cuu op_ciu op_cui op_cii -1
op_cuu op_ciu op_cui op_cii -1
lexical tresholds: 1 1
indirection limit: 8
do not eliminate sli if index on shiftcounts: -1
-1
forbidden operators: -1 -1
%%SP
global stack pollution allowed?: yes