121 lines
2.2 KiB
Plaintext
121 lines
2.2 KiB
Plaintext
wordsize: 4
|
|
pointersize: 4
|
|
%%RA
|
|
general registers: 8
|
|
address registers: 0
|
|
floating point registers: 0
|
|
use general as pointer: yes
|
|
|
|
register score parameters:
|
|
local variable:
|
|
(2 cases)
|
|
pointer,general
|
|
(2 sizes)
|
|
fitbyte -> (5,2)
|
|
default -> (4,3)
|
|
general,general
|
|
(2 sizes)
|
|
fitbyte -> (3,1)
|
|
default -> (2,2)
|
|
address of local variable:
|
|
(2 cases)
|
|
pointer,general
|
|
(2 sizes)
|
|
fitbyte -> (0,1)
|
|
default -> (0,2)
|
|
general,general
|
|
(2 sizes)
|
|
fitbyte -> (0,1)
|
|
default -> (0,2)
|
|
constant:
|
|
(3 sizes)
|
|
in_0_63 -> (0,0)
|
|
fitbyte -> (0,1)
|
|
default -> (1,2)
|
|
double constant:
|
|
(1 size)
|
|
default -> (-1,-1)
|
|
address of global variable:
|
|
(1 size)
|
|
default -> (2,4)
|
|
address of procedure:
|
|
(1 size)
|
|
default -> (2,4)
|
|
|
|
opening cost parameters:
|
|
local variable:
|
|
(2 cases)
|
|
pointer
|
|
(2 sizes)
|
|
fitbyte -> (10,4)
|
|
default -> (9,5)
|
|
general
|
|
(2 sizes)
|
|
fitbyte -> (8,4)
|
|
default -> (7,5)
|
|
address of local variable:
|
|
(2 cases)
|
|
pointer
|
|
(2 sizes)
|
|
fitbyte -> (0,4)
|
|
default -> (0,5)
|
|
general
|
|
(2 sizes)
|
|
fitbyte -> (0,4)
|
|
general -> (0,5)
|
|
constant:
|
|
(3 sizes)
|
|
in_0_63 -> (4,2)
|
|
fitbyte -> (5,3)
|
|
default -> (6,4)
|
|
double constant:
|
|
(1 size)
|
|
default -> (1000,1000)
|
|
address of global variable:
|
|
(1 size)
|
|
default -> (6,7)
|
|
address of procedure:
|
|
(1 size)
|
|
default -> (6,7)
|
|
|
|
register save costs:
|
|
(10 cases)
|
|
0 -> (0,0)
|
|
1 -> (1,0)
|
|
2 -> (2,0)
|
|
3 -> (3,0)
|
|
4 -> (4,0)
|
|
5 -> (5,0)
|
|
6 -> (6,0)
|
|
7 -> (7,0)
|
|
8 -> (8,0)
|
|
0 -> (0,0)
|
|
%%UD
|
|
access costs of global variables:
|
|
(1 size)
|
|
default -> (7,4)
|
|
access costs of local variables:
|
|
(2 sizes)
|
|
fitbyte -> (3,1)
|
|
default -> (2,2)
|
|
%%SR
|
|
overflow harmful?: no
|
|
array bound harmful?: no
|
|
reduce sli if shift count larger than: 3
|
|
%%CS
|
|
#include "em_mnem.h"
|
|
first time then space:
|
|
addressing modes: op_adp op_lof op_ldf op_loi op_dch op_lpb -1
|
|
op_adp op_lof op_ldf op_loi op_dch op_lpb -1
|
|
cheap operations: op_cii op_cui op_cfi op_ciu op_cff op_cuu op_cif
|
|
op_cmi op_cmu op_cmf op_cms op_cmp -1
|
|
op_cii op_cui op_cfi op_ciu op_cff op_cuu op_cif
|
|
op_cmi op_cmu op_cmf op_cms op_cmp -1
|
|
lexical thresholds: 1 1
|
|
indirection limit: 8
|
|
do not eliminate sli if index on shiftcounts: 1 2 3 -1
|
|
1 2 3 -1
|
|
forbidden operators: -1 -1
|
|
%%SP
|
|
global stack pollution allowed?: yes
|