%EXTERNALROUTINE ICL9CEZPERQIMP %CONSTINTEGER RELEASE=4 %CONSTINTEGER YES=1,NO=0 %CONSTINTEGER EMAS=10 %CONSTINTEGER PERQ=11 %CONSTINTEGER PNX=12 %CONSTINTEGER HOST=EMAS %CONSTINTEGER TARGET=PERQ %CONSTINTEGER STANDARDPT=X'41' %CONSTINTEGER MINAPT=X'41'; ! MINIMUM PTYPE FOR WHICH ARITHMETIC ! OPERATORS ARE AVAILABLE %CONSTINTEGER MINAPREC=MINAPT>>4 %CONSTHALFINTEGERARRAY TYPEFLAG(0:12)=0, X'51'{%INTEGER}, X'52'{%REAL}, X'8009'{%LONG SOMETHING}, X'4031'{%BYTE}, X'35'{%STRING}, X'6051'{%HALF->%INTEGER+WARNING}, X'4041'{%SHORT}, X'33'{%RECORD}, 0, X'1051'{%LONG INTEGER FAULT}, X'62'{%LONG REAL}, X'2062'{%LONGLONGREAL WARN}; ! ! 2****15 SET FOR RELAY TO LOWER PART OF TYPEFLAGS ! 2****14 SET TO SKIP NEXT AR ENTRY FOR BYTE(INTEGER?) ETC ! 2****13 SET IF A DIFFERENT PRECISION USED GIVES WARNING ! 2****12 SET FOR COMBINATION WE CANT SUPPORT GIVES FAULT99 ! %CONSTBYTEINTEGERARRAY PTRSIZE(0:127)= %C 8,0(15) {PREC=0}, 0(16) {PREC=1}, 0(16) {PREC=2}, 8,6,0,4,0,6,0,4,0(8) {PREC=3}, 8,4,0(14) {PREC=4}, 8,4,4,0(13) {PREC=5}, 8,0,4,0(13) {PREC=6}, 8,0(15) {PREC=7}; %CONSTINTEGER SFRAMEMISALIGN=0; ! NEEDED ONLY FOR 2900 WHERE PRECALL ! MISALIGNS STACK FRAMES ! %CONSTINTEGER AHEADSIZE=8; ! SIZE OF ARRAY HEAD(BYTES) %CONSTINTEGER MINPARAMSIZE=2; ! MINIMUM STACKABLE PARAMETER(BYTES) %CONSTINTEGER RTPARAMSIZE=8; ! SIZE OF RT PARAMETER (BYTES) %CONSTINTEGER RECORDROUNDING=1; ! RECORDS TO 2 BYTE BNDRY %CONSTINTEGER STRINGROUNDING=1; ! STRING TI 2 BYTE BNDRY %CONSTINTEGER ARRAYROUNDING=1; ! ALL ARRAYS TO 2 BYTE BNDR %CONSTINTEGER STRVALINWA=NO; ! STRING VALUE PARAMETERS STACKED %CONSTINTEGER STRRESINWA=0; ! STRING&RECORD FN RESULTS STACKED ! %CONSTBYTEINTEGERARRAY ROUNDING(0:3*16-1)={16 VALS FOR PRECS 0-F IN VARIOUS SITUATIONS} %C 0(4),1(12) {IN RECORDS}, 0(4),1(12) {IN STACK FRAME}, 1(16) {AS PARAMETERS}; %CONSTBYTEINTEGERARRAY BYTES(0:7)=0(3),1,2,4,8,16; %CONSTBYTEINTEGERARRAY WORDS(0:7)=0(3),1,1,2,4,8; %CONSTINTEGER DAREA=6; ! SPECIAL DIAGS AREA ON PERQ %CONSTINTEGER LHSADDRFIRST=YES; ! EVALUATE LHS ADDR BEFORE RHS ON ASSNMNT ! ! ENDED OF CONCATENATED DEFINITIONS !