#include <perms.h>

                                                                //      1  !! %option stack=40
                                                                //      2  !!!!!!  19-Feb-82!!!! 26/6/78 - IMPASEMS412
                                                                //      3  {Modified to run on new subsystem so that old supervisor can be supported}
                                                                //      4  
                                                                //      5  %own %integer FREE SPACE = 65536
#line 5 "regression-compile-tmp/asems412.imp"
static int FREESPACE = 65536;
                                                                //      6  
                                                                //      7  %OWNSTRING(4) P2VERSION = "4.13"
#line 7 "regression-compile-tmp/asems412.imp"
static _imp_string /*%string(4)*/ P2VERSION = _imp_str_literal("4.13");
                                                                //      8  
                                                                //      9  
                                                                //     10  !!!!!!%CONTROL 3;                     ! CHECK SWITCHES AND STACK LIMIT
                                                                //     11  %BEGIN;                         ! INTERDATA 7/32 IMP ASSEMBLER !
#line 11 "regression-compile-tmp/asems412.imp"
int main(int argc, char **argv) {
  _imp_initialise(argc, argv);
                                                                //     12  
                                                                //     13  ! SIZE CONSTANTS
                                                                //     14  
                                                                //     15     %CONSTINTEGER MAX ENVIRS = 13
                                                                //     16  !  %CONSTINTEGER MAX VARS   = 490
                                                                //     17     %CONSTINTEGER MAX LABELS = 80
                                                                //     18     %CONSTINTEGER MAX DEPTH  = 16
                                                                //     19     %CONSTINTEGER MAX STACK  = 31
                                                                //     20     %CONSTINTEGER INIT GLA   = 32;    !  **USED LOCALLY AND IN PASS 3**
                                                                //     21     %CONSTINTEGER LAST PERM  = -24;   ! MUST MATCH PERM TABLE IN PASS 3
                                                                //     22  
                                                                //     23  !  STATIC GLA LAYOUT
                                                                //     24  !
                                                                //     25  !     0:  STACK LIMIT
                                                                //     26  !     4:  @diag tables (zero if missing)
                                                                //     27  !     8:  IOCP switch base
                                                                //     28  !    12:  IOCP gla base
                                                                //     29  !    16:  IOCP code base
                                                                //     30  !    20:  IOCP base level locals
                                                                //     31  !    24:  -spare-
                                                                //     32  !    28:  -spare-
                                                                //     33  !
                                                                //     34  
                                                                //     35  
                                                                //     36     %CONSTINTEGER INITIAL FREE = 5120;  ! INITIAL FREE STACK(BYTES)
                                                                //     37     %CONSTINTEGER MIN FREE = 600;   ! LOWER LIMIT ON FREE STACK SPACE
                                                                //     38  
                                                                //     39  ! ON THE 32-BIT SERIES, EFFICIENT(RX1) BASE+DISPLACEMENT ADDRESSING
                                                                //     40  ! IS ONLY AVAILABLE FOR VALUES OF DISPLACEMENT < 16*1024.
                                                                //     41  ! ARRAYS WITH FIXED BOUNDS ARE PUT INTO THE STATIC STACK FRAME
                                                                //     42  ! UNTIL THE FRAME SIZE > 'MAX STATIC' LEAVING [16*1024 - MAX STATIC]
                                                                //     43  ! BYTES AVAILABLE FOR SCALARS.  THERE MAY STILL BE PROBLEMS WITH
                                                                //     44  ! LARGE RECORDS (WHICH CAN CONTAIN ARRAYS).
                                                                //     45  
                                                                //     46     %CONSTINTEGER  MAX STATIC = 13000
                                                                //     47  
                                                                //     48  
                                                                //     49  
                                                                //     50  ! WORDLENGTH DEPENDENT VALUES:
                                                                //     51  
                                                                //     52     %CONSTINTEGER  REGLEN=4;     ! REGISTER LENGTH(IN 8-BIT BYTES)
                                                                //     53  
                                                                //     54  
                                                                //     55  
                                                                //     56  !  COMPILER CONTROL OPTIONS (DEFAULT MARKED *)
                                                                //     57     %CONSTINTEGER TEST SWITCH = 1;   !* CHECK SWITCH JUMPS
                                                                //     58     %CONSTINTEGER STKDIAG     = 2;   !* CHECK EXTENT OF STACK
                                                                //     59     %CONSTINTEGER ARRAY DIAG  = 4;   !* CHECK ARRAY BOUNDS
                                                                //     60     %CONSTINTEGER FORDIAG     = 8;   !* VALIDATE %FOR PARAMETERS
                                                                //     61     %CONSTINTEGER ASS DIAG    =16;   !* TEST FOR TRUNCATION
                                                                //     62     %CONSTINTEGER UNASS DIAG  =32;   !* CHECK FOR UNASSIGNED VARIABLES
                                                                //     63     !
                                                                //     64     %CONSTINTEGER TRUSTED     =4096; !  ENABLE DIRTY OPTIMISATIONS
                                                                //     65  
                                                                //     66  ! %CONTROL 0 GIVES TIGHTEST CODE (NO CHECKING AT ALL!)
                                                                //     67  
                                                                //     68  
                                                                //     69  
                                                                //     70  
                                                                //     71  !  COMPILER ERROR CODES
                                                                //     72  !  --------------------
                                                                //     73  !  CODE      ROUTINE                    MEANING
                                                                //     74  !  ----      -------                    -------
                                                                //     75  !    1       RELEASE                    TOO MANY CALLS ON 'RELEASE'
                                                                //     76  !    2       CHECK RELEASED             TOO FEW CALLS ON 'RELEASE'
                                                                //     77  !    3       HAZARD                     FAULTY PARAM. SUPPLIED TO HAZARD??
                                                                //     78  !    4       ""                         "" ????
                                                                //     79  !    5       RX, RI2, RI3               ILLEGAL ADDRESS FIELD GENERATE
                                                                //     80  !    6       LOOKUP                     UNDEFINED NAME IN INTERMEDIATE COD
                                                                //     81  !    7       STACK, SSTACK ETC          DESCRIPTOR STACK OVERFLO
                                                                //     82  !    8       SET BOTH, POP LHS, ASSIGN  DESCRIPTOR STACK UNDERFLO
                                                                //     83  !    9       AMAP                       FAULTY PARAM. SUPPLIED TO 'AMAP'
                                                                //     84  !    10      LOAD                       'REAL' AS ADDRESS?
                                                                //     85  !    11      LOAD                       FLOATING REG. REQ'D
                                                                //     86  !    12      "                          "
                                                                //     87  !    13      COP                        FAULTY PARAM. SUPPLIED TO 'COP'
                                                                //     88  !    14      ASSEMBLE                   DESCRIPTOR STACK NON-EMPTY AT 'O
                                                                //     89  !    15      ASSIGN                     FAULTY PARAM. SUPPLIED TO 'ASSIGN'
                                                                //     90  !    16      LOAD                       'REAL', INTEGER REQ''D
                                                                //     91  !    17      DESCRIPTOR                 NO FREE DESCRIPTORS
                                                                //     92  !    18      DROP                       DESCRIPTOR NOT IN USE
                                                                //     93  !    19      ASSEMBLE                   DANGLING DESCRIPTOR
                                                                //     94  
                                                                //     95  ! REGISTERS
                                                                //     96  
                                                                //     97     %CONSTINTEGER R0   = 1
                                                                //     98     %CONSTINTEGER R1   = 2
                                                                //     99     %CONSTINTEGER R2   = 3
                                                                //    100     %CONSTINTEGER R3   = 4
                                                                //    101     %CONSTINTEGER R4   = 5
                                                                //    102     %CONSTINTEGER P2   = 6
                                                                //    103     %CONSTINTEGER P1   = 7
                                                                //    104     %CONSTINTEGER R9   = 8
                                                                //    105     %CONSTINTEGER R10  = 9
                                                                //    106     %CONSTINTEGER R11  = 10
                                                                //    107     %CONSTINTEGER R12  = 11
                                                                //    108     %CONSTINTEGER LINK = 12
                                                                //    109     %CONSTINTEGER FPR0 = 13
                                                                //    110     %CONSTINTEGER FPR2 = 14
                                                                //    111     !             FPR4 = 15
                                                                //    112     !             FPR6 = 16
                                                                //    113     !             FPR8 = 17
                                                                //    114     !             FPR10= 18
                                                                //    115     !             FPR12= 19
                                                                //    116     %CONSTINTEGER FPR14= 20
                                                                //    117  
                                                                //    118     !   21 - 40 ARE STORE EQUIVALENTS OF ABOVE
                                                                //    119  
                                                                //    120     %CONSTINTEGER R15  = 41
                                                                //    121     %CONSTINTEGER GLA  = 42
                                                                //    122     %CONSTINTEGER WSP  = 43
                                                                //    123     %CONSTINTEGER CODE = 44
                                                                //    124  
                                                                //    125     %CONSTINTEGER ANY  = 45
                                                                //    126     %CONSTINTEGER ANY0 = 46
                                                                //    127     %CONSTINTEGER ANYF = 47
                                                                //    128     %CONSTINTEGER PARAM= 48
                                                                //    129  
                                                                //    130     %CONSTINTEGER STORE= 20
                                                                //    131  
                                                                //    132     %CONSTBYTEINTEGERARRAY BASE REG(0:5) = R0, R15, R9, R10, R11, R12
#line 132 "regression-compile-tmp/asems412.imp"
const unsigned char BASEREG[6] = { 1, 41, 8, 9, 10, 11,  };
                                                                //    133     %CONSTBYTEINTEGERARRAY ACTUAL(0:44) = 0,
#line 133 "regression-compile-tmp/asems412.imp"
const unsigned char ACTUAL[45] = { 0, 0, 1, 2, 3, 4, 5, 6, 9, 10, 11, 12, 8, 0, 2, 4, 6, 8, 10, 12, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 13, 7, 14,  };
                                                                //    134                                       0, 1, 2, 3, 4, 5, 6, 9,
                                                                //    135                                      10,11,12, 8,
                                                                //    136                                       0, 2, 4, 6, 8,10,12,14,
                                                                //    137                                       0(20), 15, 13, 7, 14
                                                                //    138  
                                                                //    139  
                                                                //    140  ! DATA FORMS
                                                                //    141  
                                                                //    142     !  EXTERNAL
                                                                //    143  
                                                                //    144     %CONSTINTEGER SWITCH    = 6
                                                                //    145     %CONSTINTEGER ARRAY     = 11
                                                                //    146     %CONSTINTEGER ARRAYNAME = 12
                                                                //    147  
                                                                //    148     !  INTERNAL
                                                                //    149  
                                                                //    150     %CONSTINTEGER CONSTANT = 0
                                                                //    151     %CONSTINTEGER V IN R   = 1
                                                                //    152     %CONSTINTEGER A IN S   = 2
                                                                //    153     %CONSTINTEGER V IN S   = 3
                                                                //    154     %CONSTINTEGER A IN REC = 4
                                                                //    155     %CONSTINTEGER V IN REC = 5
                                                                //    156     %CONSTINTEGER AV IN S  = 6
                                                                //    157     %CONSTINTEGER AV IN REC= 7
                                                                //    158  
                                                                //    159  !  LABEL CONSTANTS
                                                                //    160  
                                                                //    161     %CONSTINTEGER DEFINE   = 0
                                                                //    162     %CONSTINTEGER REDEFINE = 1
                                                                //    163  
                                                                //    164  ! DATA TYPES
                                                                //    165  
                                                                //    166     %CONSTINTEGER INTEGER = 1
                                                                //    167     %CONSTINTEGER BYTE    = 2
                                                                //    168     %CONSTINTEGER SHORT   = 3
                                                                //    169     %CONSTINTEGER STRING  = 4
                                                                //    170     %CONSTINTEGER RECORD  = 5
                                                                //    171     %CONSTINTEGER REALS   = 6
                                                                //    172     %CONSTINTEGER LONG    = 7
                                                                //    173  
                                                                //    174     %CONSTINTEGER UNSIGNED HALFWORD = 255;   ! INTERNAL TO PASS 2
                                                                //    175  
                                                                //    176  ! OWN INFO
                                                                //    177  
                                                                //    178  !  %CONSTINTEGER OWN    = 1
                                                                //    179     %CONSTINTEGER CON    = 2
                                                                //    180     %CONSTINTEGER PERMRT = 7
                                                                //    181  
                                                                //    182  ! PROC INFO
                                                                //    183  
                                                                //    184     %CONSTINTEGER FORMATS   = '2'
                                                                //    185     %CONSTINTEGER PROCEDURE = '1'
                                                                //    186     %CONSTINTEGER SPEC      = '0'
                                                                //    187  
                                                                //    188  !  OBJECT FILE DIRECTIVES
                                                                //    189  
                                                                //    190     %CONSTINTEGER START     = 1
                                                                //    191     %CONSTINTEGER LOAD CODE = 2
                                                                //    192     %CONSTINTEGER LOAD GLA  = 3
                                                                //    193     %CONSTINTEGER LINE FLAG = 4
                                                                //    194     %CONSTINTEGER C END     = 5
                                                                //    195  !  %CONSTINTEGER L DATA    = 6
                                                                //    196     %CONSTINTEGER DLINE     = 10
                                                                //    197     %CONSTINTEGER DIAGS     = 11
                                                                //    198  
                                                                //    199  ! DIRECTIVE FILE COMMANDS
                                                                //    200  
                                                                //    201     %CONSTINTEGER TAG DEF   = 1
                                                                //    202     %CONSTINTEGER C REF     = 2;  ! CONDITIONAL JUMP REF.
                                                                //    203     %CONSTINTEGER J REF     = 3;  ! UNCONDITIONAL JUMP REF.
                                                                //    204     %CONSTINTEGER R REF     = 4;  ! ROUTINE REF. (UNCONDITIONAL)
                                                                //    205     %CONSTINTEGER P REF     = 5;  ! PERM REF. (UNCONDITIONAL)
                                                                //    206     %CONSTINTEGER PATCH GLA = 6
                                                                //    207     %CONSTINTEGER PATCHCODE = 7
                                                                //    208     %CONSTINTEGER D END     = 8;  ! END OF DIRECTIVES FILE
                                                                //    209  
                                                                //    210  ! FILE DEFINITION
                                                                //    211  
                                                                //    212     %CONSTINTEGER INSTREAM = 2
                                                                //    213     %CONSTINTEGER REPORT   = 0;    ! ...ERROR MESSAGE STREAM
                                                                //    214     %CONSTINTEGER LIST     = 1
                                                                //    215     %CONSTINTEGER OBJECT   = 2
                                                                //    216     %CONSTINTEGER DIRECT   = 3
                                                                //    217  
                                                                //    218  
                                                                //    219  ! SYMBOLS
                                                                //    220  
                                                                //    221     %CONSTINTEGER COMMA = ','
                                                                //    222     %CONSTINTEGER MINUS = '-'
                                                                //    223  
                                                                //    224  ! PERM ROUTINES (FPR4,  FPR2,P1,P2,R4,  R3,R2,R1,R0)
                                                                //    225  
                                                                //    226     %CONSTINTEGER MONITOR    = X'1EF01'
                                                                //    227     %CONSTINTEGER R COPY     = X'00902'
                                                                //    228     %CONSTINTEGER R CLEAR    = X'00903'
                                                                //    229     %CONSTINTEGER SWJUMP     = X'1EF04'
                                                                //    230     %CONSTINTEGER ASET       = X'06F05'
                                                                //    231     %CONSTINTEGER IEXP       = X'00B07'
                                                                //    232     %CONSTINTEGER REXP       = X'18108'
                                                                //    233     %CONSTINTEGER ALLOC      = X'02E09'
                                                                //    234     %CONSTINTEGER SMOVE      = X'0090B', CONC1 = X'0090B'
                                                                //    235     %CONSTINTEGER CONC2      = X'0630C'
                                                                //    236     %CONSTINTEGER SCOMP      = X'06B0D'
                                                                //    237     %CONSTINTEGER RSYM       = X'1EF0E'
                                                                //    238  ! PERM ITEMS TO PERFORM VARIOUS RUN-TIME CHECKS
                                                                //    239     %CONSTINTEGER EXBUNASS   = X'01112'
                                                                //    240     %CONSTINTEGER EXB        = X'00113'
                                                                //    241     %CONSTINTEGER A REF      = X'00314'
                                                                //    242     %CONSTINTEGER STRINGASS  = X'00015';      ! ASSIGN TEST FOR STRINGS
                                                                //    243     %CONSTINTEGER ASSTH      = X'00016';      ! ASSIGN TEST FOR SHORTS
                                                                //    244     %CONSTINTEGER ASSTB      = X'00017';      ! ASSIGN TEST FOR BYTES
                                                                //    245     %CONSTINTEGER FORTEST    = X'1EF18'
                                                                //    246  
                                                                //    247  !   FIXED GLA WORDS
                                                                //    248  
                                                                //    249     !    (WORD 0 IS STACK LIMIT POINTER)
                                                                //    250     %CONSTINTEGER SIGNAL EP = 4;       ! ADDRESS OF %SIGNAL
                                                                //    251  
                                                                //    252  
                                                                //    253  !   NOTEWORTHY CODE BLOCK DISPLACEMENTS
                                                                //    254  
                                                                //    255     %CONSTINTEGER UNASS PAT = 16;       ! UNASSIGNED VARIABLE PATTERN (80808080)
                                                                //    256  
                                                                //    257  ! OPERATIONS
                                                                //    258  
                                                                //    259     %CONSTINTEGER NOT = 1
                                                                //    260     %CONSTINTEGER NEG = 2
                                                                //    261     %CONSTINTEGER ADD = 3
                                                                //    262     %CONSTINTEGER SUB = 4
                                                                //    263     %CONSTINTEGER MUL = 6
                                                                //    264     %CONSTINTEGER DIV = 7
                                                                //    265     %CONSTINTEGER AND = 8
                                                                //    266     %CONSTINTEGER IOR = 9
                                                                //    267     %CONSTINTEGER XOR = 10
                                                                //    268     %CONSTINTEGER LSH = 11
                                                                //    269     %CONSTINTEGER RSH = 12
                                                                //    270     %CONSTINTEGER EXP = 13
                                                                //    271     %CONSTINTEGER CONC= 14
                                                                //    272     %CONSTINTEGER SADD= 15;                !  SPECIAL ADD (V=V+??)
                                                                //    273     %CONSTINTEGER RDIV= 16
                                                                //    274     %CONSTINTEGER REM = 17
                                                                //    275  
                                                                //    276  ! OPCODES
                                                                //    277  
                                                                //    278     %CONSTINTEGER LIS = X'2400', LCS = X'2500'
                                                                //    279     %CONSTINTEGER LR  = X'0800'
                                                                //    280     %CONSTINTEGER LH  = X'4800', STH = X'4000'
                                                                //    281     %CONSTINTEGER LHI = X'C800'
                                                                //    282     %CONSTINTEGER LM  = X'D100', STM = X'D000'
                                                                //    283     %CONSTINTEGER LHL = X'7300'
                                                                //    284  
                                                                //    285  
                                                                //    286     %CONSTINTEGER AIS=X'2600', AHI=X'CA00', AH=X'4A00', AR=X'0A00'
                                                                //    287     %CONSTINTEGER SIS=X'2700', SHI=X'CB00', SH=X'4B00', SR=X'0B00'
                                                                //    288     %CONSTINTEGER AM  = X'5100'
                                                                //    289     %CONSTINTEGER AHM = X'6100'
                                                                //    290  
                                                                //    291     %CONSTINTEGER C   = X'5900',  CH =X'4900', CI =X'F900', CR =X'0900'
                                                                //    292     %CONSTINTEGER CL  = X'5500',  CLH=X'4500', CLI=X'F500', CLR=X'0500'
                                                                //    293     %CONSTINTEGER                 CHI=X'C900'
                                                                //    294     %CONSTINTEGER                CLHI=X'C500'
                                                                //    295     %CONSTINTEGER CHVR = X'1200'
                                                                //    296  
                                                                //    297  
                                                                //    298  
                                                                //    299  
                                                                //    300     %CONSTINTEGER TI  = X'F300', THI = X'C300'
                                                                //    301  
                                                                //    302     %CONSTINTEGER LBR = X'9300', LB  = X'D300', STB = X'D200'
                                                                //    303     %CONSTINTEGER CLB = X'D400'
                                                                //    304  
                                                                //    305     %CONSTINTEGER SRA = X'EE00'
                                                                //    306  
                                                                //    307     %CONSTINTEGER BAL = X'4100'
                                                                //    308     %CONSTINTEGER JUMP= 12
                                                                //    309     %CONSTINTEGER BFCR= X'0300'
                                                                //    310  
                                                                //    311     %CONSTINTEGER SVC = X'E100'
                                                                //    312     %CONSTINTEGER LME = X'7200', STME= X'7100'
                                                                //    313     %CONSTINTEGER LER = X'2800'
                                                                //    314     %CONSTINTEGER LE  = X'6800', STE = X'6000'
                                                                //    315     %CONSTINTEGER CER = X'2900'
                                                                //    316     %CONSTINTEGER CE  = X'6900'
                                                                //    317     %CONSTINTEGER AER=X'2A00', SER=X'2B00', MER=X'2C00', DER=X'2D00'
                                                                //    318     %CONSTINTEGER AE =X'6A00', SE =X'6B00', ME =X'6C00', DE =X'6D00'
                                                                //    319     %CONSTINTEGER FXR = X'2E00', FLR = X'2F00'
                                                                //    320  
                                                                //    321  !   FULLWORD OPCODES
                                                                //    322     %CONSTINTEGER LW  = X'5800', ST = X'5000'
                                                                //    323     %CONSTINTEGER LI  = X'F800'
                                                                //    324     %CONSTINTEGER LA  = X'E600'
                                                                //    325  
                                                                //    326     %CONSTINTEGER SLLS= X'1100'
                                                                //    327     %CONSTINTEGER SRLS= X'1000'
                                                                //    328     %CONSTINTEGER SLL = X'ED00'
                                                                //    329     %CONSTINTEGER SRL = X'EC00'
                                                                //    330  
                                                                //    331     %CONSTINTEGER AW  = X'5A00'
                                                                //    332     %CONSTINTEGER SW  = X'5B00'
                                                                //    333     %CONSTINTEGER AI  = X'FA00'
                                                                //    334     %CONSTINTEGER SI  = X'FB00'
                                                                //    335  
                                                                //    336     %CONSTINTEGER MW  = X'5C00'
                                                                //    337     %CONSTINTEGER MR  = X'1C00'
                                                                //    338     %CONSTINTEGER DW  = X'5D00'
                                                                //    339     %CONSTINTEGER DR  = X'1D00'
                                                                //    340  
                                                                //    341     %CONSTINTEGER OR=X'0600', OW=X'5600', OH=X'4600', OI=X'F600'
                                                                //    342     %CONSTINTEGER XR=X'0700', XW=X'5700', XH=X'4700', XI=X'F700'
                                                                //    343     %CONSTINTEGER NR=X'0400', NW=X'5400', NH=X'4400', NI=X'F400'
                                                                //    344     %CONSTINTEGER OHI = X'C600', XHI = X'C700', NHI = X'C400'
                                                                //    345  
                                                                //    346  
                                                                //    347     %RECORDFORMAT VARFM(%INTEGER DISP, %SHORTINTEGER FORMAT, EXTRA,  %C
#line 347 "regression-compile-tmp/asems412.imp"
typedef struct VARFM VARFM;
struct VARFM {
  int DISP;
  short FORMAT;
  short EXTRA;
  short ID;
  short LENGTH;
  unsigned char BASE;
  unsigned char TYPE;
  unsigned char FORM;
  unsigned char SIZE;
};
                                                                //    348                     ID, LENGTH,  %BYTEINTEGER BASE, TYPE, FORM, SIZE)
                                                                //    349     %RECORDFORMAT  STACKFM(%INTEGER  DISP, FORMAT, EXTRA, LENGTH, DV,  %C
#line 349 "regression-compile-tmp/asems412.imp"
typedef struct STACKFM STACKFM;
struct STACKFM {
  int DISP;
  int FORMAT;
  int EXTRA;
  int LENGTH;
  int DV;
  short BASE;
  short LOP;
  short TYPE;
  short FORM;
   STACKFM /*name*/*LINK;
};
                                                                //    350                            %SHORTINTEGER  BASE, LOP,TYPE, FORM,  %C
                                                                //    351                          %RECORD(STACKFM)%NAME  LINK)
                                                                //    352     %RECORDFORMAT SPTFM(%RECORD(STACKFM)%NAME V)
#line 352 "regression-compile-tmp/asems412.imp"
typedef struct SPTFM SPTFM;
struct SPTFM {
   STACKFM /*name*/*V;
};
                                                                //    353     %RECORDFORMAT LABELFM(%SHORTINTEGER ID, TAG, %C
#line 353 "regression-compile-tmp/asems412.imp"
typedef struct LABELFM LABELFM;
struct LABELFM {
  short ID;
  short TAG;
  unsigned char REG;
  unsigned char BASE;
  int LIMIT;
  int DISP;
};
                                                                //    354                           %BYTEINTEGER REG, BASE, %C
                                                                //    355                           %INTEGER LIMIT, DISP)
                                                                //    356     %RECORDFORMAT USEFM(%INTEGER  DISP, CA, %C
#line 356 "regression-compile-tmp/asems412.imp"
typedef struct USEFM USEFM;
struct USEFM {
  int DISP;
  int CA;
  short BASE;
  unsigned char TYPE;
  unsigned char FORM;
};
                                                                //    357                         %SHORTINTEGER BASE, %C
                                                                //    358                         %BYTEINTEGER TYPE,FORM)
                                                                //    359     %RECORDFORMAT ENVFM(%INTEGER LABEL, LIMEN, %C
#line 359 "regression-compile-tmp/asems412.imp"
typedef struct ENVFM ENVFM;
struct ENVFM {
  int LABEL;
  int LIMEN;
   USEFM E[40];
};
                                                                //    360                                   %RECORD(USEFM)%ARRAY E(1:40))
                                                                //    361  
                                                                //    362  !  DATA ARRAYS
                                                                //    363  
                                                                //    364     %RECORD(USEFM)%ARRAY USE(1 : 44);! REGISTER USAGE
#line 364 "regression-compile-tmp/asems412.imp"
 USEFM USE[44];
                                                                //    365     %RECORD(USEFM) KNOWN
#line 365 "regression-compile-tmp/asems412.imp"
 USEFM KNOWN;
                                                                //    366     %INTEGERARRAY ACTIVITY(0 : 44);! REGISTER ACTIVITY
#line 366 "regression-compile-tmp/asems412.imp"
int ACTIVITY[45];
                                                                //    367     %RECORD(LABELFM)%ARRAY LABELS(1 : MAX LABELS)
#line 367 "regression-compile-tmp/asems412.imp"
 LABELFM LABELS[80];
                                                                //    368     %RECORD(SPTFM)%ARRAY STACKED(1 : MAX DEPTH);! MAIN STACK
#line 368 "regression-compile-tmp/asems412.imp"
 SPTFM STACKED[16];
                                                                //    369     %RECORD(STACKFM)%ARRAY STAK(0 : MAX STACK); ! STACK ELEMENTS
#line 369 "regression-compile-tmp/asems412.imp"
 STACKFM STAK[32];
                                                                //    370     %INTEGERARRAY USED(0:20)
#line 370 "regression-compile-tmp/asems412.imp"
int USED[21];
                                                                //    371     %RECORDFORMAT DFM(%RECORD(STACKFM)%NAME D, %RECORD(DFM)%NAME LINK)
#line 371 "regression-compile-tmp/asems412.imp"
typedef struct DFM DFM;
struct DFM {
   STACKFM /*name*/*D;
   DFM /*name*/*LINK;
};
                                                                //    372     %RECORD(STACKFM)%NAME DESC ASL
#line 372 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*DESCASL;
                                                                //    373     %RECORD(DFM)%ARRAY DLIST(0:MAX STACK)
#line 373 "regression-compile-tmp/asems412.imp"
 DFM DLIST[32];
                                                                //    374     %RECORD(DFM)%NAME DASL
#line 374 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*DASL;
                                                                //    375     %RECORD(DFM) USING
#line 375 "regression-compile-tmp/asems412.imp"
 DFM USING;
                                                                //    376  
                                                                //    377     %OWNBYTEINTEGERARRAY VBUF(1:10)
#line 377 "regression-compile-tmp/asems412.imp"
static unsigned char VBUF[10];
                                                                //    378     %OWNINTEGER VP = 0
#line 378 "regression-compile-tmp/asems412.imp"
static int VP = 0;
                                                                //    379     %OWNINTEGER XLEVEL = 0
#line 379 "regression-compile-tmp/asems412.imp"
static int XLEVEL = 0;
                                                                //    380     %INTEGER BLOCK WORD
#line 380 "regression-compile-tmp/asems412.imp"
int BLOCKWORD;
                                                                //    381     %OWNRECORD(VARFM) BEGIN
#line 381 "regression-compile-tmp/asems412.imp"
static  VARFM BEGIN;
                                                                //    382     %RECORD(ENVFM) NULL ENV
#line 382 "regression-compile-tmp/asems412.imp"
 ENVFM NULLENV;
                                                                //    383  {   %constrecord(*)%name null == (0)      {   %OWNRECORD(STACKFM) NULL   }
                                                                //    384  %ownrecord(*)%name null == 0
#line 384 "regression-compile-tmp/asems412.imp"
static  void /*name*/*NULL = { 0 } /* Initialise all fields of a record to 0. */;
                                                                //    385     %RECORD(VARFM)%NAME DECVAR
#line 385 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*DECVAR;
                                                                //    386  
                                                                //    387     %OWNINTEGER CONTROL = B'11111111'; ! ALL CHECKS ENABLED INITIALLY
#line 387 "regression-compile-tmp/asems412.imp"
static int CONTROL = 255;
                                                                //    388     %OWNINTEGER PERMS = LAST PERM
#line 388 "regression-compile-tmp/asems412.imp"
static int PERMS = (-24);
                                                                //    389     %INTEGER DYNAMIC, DOPE
#line 389 "regression-compile-tmp/asems412.imp"
int DYNAMIC;
#line 389 "regression-compile-tmp/asems412.imp"
int DOPE;
                                                                //    390     %SHORTINTEGER HALF
#line 390 "regression-compile-tmp/asems412.imp"
short HALF;
                                                                //    391     %INTEGER J
#line 391 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    392     %INTEGER CA;           !  CODE ADDRESS
#line 392 "regression-compile-tmp/asems412.imp"
int CA;
                                                                //    393     %INTEGER GA, DIAG GLA; !  GLA ADDRESS
#line 393 "regression-compile-tmp/asems412.imp"
int GA;
#line 393 "regression-compile-tmp/asems412.imp"
int DIAGGLA;
                                                                //    394     %INTEGER DA
#line 394 "regression-compile-tmp/asems412.imp"
int DA;
                                                                //    395     %INTEGER LINE SIZE
#line 395 "regression-compile-tmp/asems412.imp"
int LINESIZE;
                                                                //    396     %OWNINTEGER REALGA;   ! FRIG FOR OWNREALARRAY
#line 396 "regression-compile-tmp/asems412.imp"
static int REALGA;
                                                                //    397     %INTEGER LIMEN;      !  BACKWARD EXTENT OF KNOWLEDGE
#line 397 "regression-compile-tmp/asems412.imp"
int LIMEN;
                                                                //    398     %INTEGER CURRENT LINE
#line 398 "regression-compile-tmp/asems412.imp"
int CURRENTLINE;
                                                                //    399     %INTEGER ENVP;       !  LAST ENVIRONMENT USED (CIRCULAR)
#line 399 "regression-compile-tmp/asems412.imp"
int ENVP;
                                                                //    400     %INTEGER STP;        ! STACK POINTER
#line 400 "regression-compile-tmp/asems412.imp"
int STP;
                                                                //    401     %INTEGER STACK ASL;  ! STACK DESCRIPTOR POINTER
#line 401 "regression-compile-tmp/asems412.imp"
int STACKASL;
                                                                //    402     %ownINTEGER FRAME = 0;      ! LOCAL STACK FRAME EXTENT
#line 402 "regression-compile-tmp/asems412.imp"
static int FRAME = 0;
                                                                //    403     %OWNINTEGER  MIN TEMP = 0
#line 403 "regression-compile-tmp/asems412.imp"
static int MINTEMP = 0;
                                                                //    404     %INTEGER PARMS;      ! START OF PARAMETER STACK
#line 404 "regression-compile-tmp/asems412.imp"
int PARMS;
                                                                //    405     %INTEGER LOCAL
#line 405 "regression-compile-tmp/asems412.imp"
int LOCAL;
                                                                //    406     %INTEGER INVERT,SWOPPED;!  CONDITION INVERSION FLAG
#line 406 "regression-compile-tmp/asems412.imp"
int INVERT;
#line 406 "regression-compile-tmp/asems412.imp"
int SWOPPED;
                                                                //    407     %INTEGER UNCOND JUMP;      !  ADDRESS OF CODE HOLE
#line 407 "regression-compile-tmp/asems412.imp"
int UNCONDJUMP;
                                                                //    408     %RECORD(LABELFM)%NAME FLAB;    ! %FOR LABEL
#line 408 "regression-compile-tmp/asems412.imp"
 LABELFM /*name*/*FLAB;
                                                                //    409     %INTEGER GTYPE,GMODE;      ! PARAMETER FLIP-FLOP
#line 409 "regression-compile-tmp/asems412.imp"
int GTYPE;
#line 409 "regression-compile-tmp/asems412.imp"
int GMODE;
                                                                //    410     %INTEGER OTYPE=0, OWNTYPE, OWNFORM, OWNVAL
#line 410 "regression-compile-tmp/asems412.imp"
int OTYPE;
#line 410 "regression-compile-tmp/asems412.imp"
OTYPE = 0;
#line 410 "regression-compile-tmp/asems412.imp"
int OWNTYPE;
#line 410 "regression-compile-tmp/asems412.imp"
int OWNFORM;
#line 410 "regression-compile-tmp/asems412.imp"
int OWNVAL;
                                                                //    411     %INTEGER  FAULTY, ENTER UNASS
#line 411 "regression-compile-tmp/asems412.imp"
int FAULTY;
#line 411 "regression-compile-tmp/asems412.imp"
int ENTERUNASS;
                                                                //    412  
                                                                //    413     %RECORD(STACKFM) ST WORK
#line 413 "regression-compile-tmp/asems412.imp"
 STACKFM STWORK;
                                                                //    414     %RECORD(STACKFM) CCV
#line 414 "regression-compile-tmp/asems412.imp"
 STACKFM CCV;
                                                                //    415     %INTEGER CCREG, CCCA=-1;      !  CONDITION-CODE INFO
#line 415 "regression-compile-tmp/asems412.imp"
int CCREG;
#line 415 "regression-compile-tmp/asems412.imp"
int CCCA;
#line 415 "regression-compile-tmp/asems412.imp"
CCCA = (-1);
                                                                //    416  
                                                                //    417     %RECORD(STACKFM)%NAME ACTIVE STRING
#line 417 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*ACTIVESTRING;
                                                                //    418     %BYTEINTEGERNAME CSLEN
#line 418 "regression-compile-tmp/asems412.imp"
unsigned char /*name*/*CSLEN;
                                                                //    419     %BYTEINTEGERARRAY CURRENT STRING(0 : 255)
#line 419 "regression-compile-tmp/asems412.imp"
unsigned char CURRENTSTRING[256];
                                                                //    420  
                                                                //    421     %RECORD(ENVFM)%ARRAY ENVIR(0:MAX ENVIRS);! WELL AWAY FROM ALL
#line 421 "regression-compile-tmp/asems412.imp"
 ENVFM ENVIR[14];
                                                                //    422  
                                                                //    423     %INTEGER  MAX VARS;  MAX VARS = FREE SPACE - INITIAL FREE
#line 423 "regression-compile-tmp/asems412.imp"
int MAXVARS;
#line 423 "regression-compile-tmp/asems412.imp"
MAXVARS = (((int)(FREESPACE)) - (5120));
                                                                //    424     %BEGIN
#line 424 "regression-compile-tmp/asems412.imp"
void _BLOCK_1_LEVEL_1_(void) {
                                                                //    425        MAX VARS = MAX VARS + INITIAL FREE//4 %IF MAX VARS <= 0
#line 425 "regression-compile-tmp/asems412.imp"
if (((MAXVARS) > (0))) goto L_0002;
#line 425 "regression-compile-tmp/asems412.imp"
MAXVARS = ((MAXVARS) + (((long)((long)((int)(5120)) / (long)((int)(4))))));
#line 425 "regression-compile-tmp/asems412.imp"
L_0002:;
                                                                //    426        MAX VARS = 16 %IF MAX VARS <= 0
#line 426 "regression-compile-tmp/asems412.imp"
if (((MAXVARS) > (0))) goto L_0003;
#line 426 "regression-compile-tmp/asems412.imp"
MAXVARS = 16;
#line 426 "regression-compile-tmp/asems412.imp"
L_0003:;
                                                                //    427        MAX VARS = MAX VARS>>4;  ! BYTE LENGTH OF 'VARFM'
#line 427 "regression-compile-tmp/asems412.imp"
MAXVARS = (int)((((unsigned int)(MAXVARS)) >> (4)));
                                                                //    428  !      SELECT OUTPUT(LIST)
                                                                //    429  !      PRINTSTRING("PASS 2 VERSION ");!  PRINTSTRING(P2VERSION)
                                                                //    430  !      WRITE(MAX VARS, 1);!  PRINTSTRING(" VARS");!  NEWLINE
                                                                //    431     %END
#line 431 "regression-compile-tmp/asems412.imp"
return;
} // End of block _BLOCK_1_LEVEL_1_ at level 2
_BLOCK_1_LEVEL_1_();
                                                                //    432  
                                                                //    433     %RECORD(VARFM)%ARRAY  VAR(1:MAX VARS)
#line 433 "regression-compile-tmp/asems412.imp"
 VARFM VAR[(((unsigned char)((((int)(MAXVARS)) - (1)))) + (1))];
                                                                //    434  
                                                                //    435  
                                                                //    436  %ROUTINESPEC  RX(%INTEGER  OP, R, X, D)
#line 436 "regression-compile-tmp/asems412.imp"
auto void RX( int OP, int R, int X, int D );
                                                                //    437  
                                                                //    438  
                                                                //    439  %ROUTINE PHEX(%INTEGER N)
#line 439 "regression-compile-tmp/asems412.imp"
void PHEX( int N )
#line 439 "regression-compile-tmp/asems412.imp"
{
                                                                //    440     %INTEGER J,K
#line 440 "regression-compile-tmp/asems412.imp"
int J;
#line 440 "regression-compile-tmp/asems412.imp"
int K;
                                                                //    441     %CYCLE J = 1,1,4
#line 441 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((4)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 4");
L_0004:;
if (J == 4) goto L_0005;
J += 1;
                                                                //    442        K = (N>>12)&15;  N = N<<4
#line 442 "regression-compile-tmp/asems412.imp"
K = (((int)((((unsigned int)(N)) >> (12)))) & (15));
#line 442 "regression-compile-tmp/asems412.imp"
N = ((N) << (4));
                                                                //    443        %IF K > 9 %THEN K = K-10+'A' %ELSE K = K+'0'
#line 443 "regression-compile-tmp/asems412.imp"
if (((K) <= (9))) goto L_0007;
#line 443 "regression-compile-tmp/asems412.imp"
K = (((int)((((int)(K)) - (10)))) + (65));
#line 443 "regression-compile-tmp/asems412.imp"
goto L_0008;
#line 443 "regression-compile-tmp/asems412.imp"
L_0007:;
#line 443 "regression-compile-tmp/asems412.imp"
K = (((int)(K)) + (48));
#line 443 "regression-compile-tmp/asems412.imp"
L_0008:;
                                                                //    444        PRINTSYMBOL(K)
#line 444 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(K);
                                                                //    445     %REPEAT
#line 445 "regression-compile-tmp/asems412.imp"
goto L_0004;
#line 445 "regression-compile-tmp/asems412.imp"
L_0005:;
                                                                //    446  %END
#line 446 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PHEX at level 2
                                                                //    447  
                                                                //    448  %ROUTINE DECODE(%INTEGER WORD)
#line 448 "regression-compile-tmp/asems412.imp"
void DECODE( int WORD )
#line 448 "regression-compile-tmp/asems412.imp"
{
                                                                //    449     %OWNINTEGER LAST,N
#line 449 "regression-compile-tmp/asems412.imp"
static int LAST;
#line 449 "regression-compile-tmp/asems412.imp"
static int N;
                                                                //    450     SELECTOUTPUT(LIST)
#line 450 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(1);
                                                                //    451     %IF LAST # CURRENT LINE %START
#line 451 "regression-compile-tmp/asems412.imp"
if (((LAST) == (CURRENTLINE))) goto L_0009;
                                                                //    452        LAST = CURRENT LINE
#line 452 "regression-compile-tmp/asems412.imp"
LAST = CURRENTLINE;
                                                                //    453        NEWLINE %UNLESS N = 0
#line 453 "regression-compile-tmp/asems412.imp"
if (((N) == (0))) goto L_000a;
#line 453 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
#line 453 "regression-compile-tmp/asems412.imp"
L_000a:;
                                                                //    454        N = 16
#line 454 "regression-compile-tmp/asems412.imp"
N = 16;
                                                                //    455        WRITE(CURRENT LINE, 4);  SPACE
#line 455 "regression-compile-tmp/asems412.imp"
_imp_WRITE(CURRENTLINE, 4);
#line 455 "regression-compile-tmp/asems412.imp"
_imp_SPACE();
                                                                //    456        PHEX(CA);  PRINTSYMBOL(':')
#line 456 "regression-compile-tmp/asems412.imp"
PHEX(CA);
#line 456 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(58);
                                                                //    457     %ELSE
#line 457 "regression-compile-tmp/asems412.imp"
goto L_000b;
#line 457 "regression-compile-tmp/asems412.imp"
L_0009:;
                                                                //    458        SPACES(11) %IF N = 16
#line 458 "regression-compile-tmp/asems412.imp"
if (((N) != (16))) goto L_000c;
#line 458 "regression-compile-tmp/asems412.imp"
_imp_SPACES(11);
#line 458 "regression-compile-tmp/asems412.imp"
L_000c:;
                                                                //    459     %FINISH
#line 459 "regression-compile-tmp/asems412.imp"
L_000b:;
                                                                //    460     SPACES(2);  PHEX(WORD)
#line 460 "regression-compile-tmp/asems412.imp"
_imp_SPACES(2);
#line 460 "regression-compile-tmp/asems412.imp"
PHEX(WORD);
                                                                //    461     N = N-1
#line 461 "regression-compile-tmp/asems412.imp"
N = (((int)(N)) - (1));
                                                                //    462     N = 16 %AND NEWLINE %IF N <= 0
#line 462 "regression-compile-tmp/asems412.imp"
if (((N) > (0))) goto L_000d;
#line 462 "regression-compile-tmp/asems412.imp"
N = 16;
#line 462 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
#line 462 "regression-compile-tmp/asems412.imp"
L_000d:;
                                                                //    463     SELECTOUTPUT(OBJECT)
#line 463 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    464  %END
#line 464 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DECODE at level 2
                                                                //    465     %ROUTINE SHOW(%RECORD(STACKFM)%NAME V)
#line 465 "regression-compile-tmp/asems412.imp"
void SHOW(  STACKFM /*name*/*V )
#line 465 "regression-compile-tmp/asems412.imp"
{
                                                                //    466        SELECTOUTPUT(REPORT) %IF CONTROL < 0
#line 466 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_000e;
#line 466 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(0);
#line 466 "regression-compile-tmp/asems412.imp"
L_000e:;
                                                                //    467        WRITE(V_TYPE, 1);  WRITE(V_FORM, 2)
#line 467 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->TYPE, 1);
#line 467 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->FORM, 2);
                                                                //    468        WRITE(V_BASE, 2);  WRITE(V_DISP, 5)
#line 468 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->BASE, 2);
#line 468 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->DISP, 5);
                                                                //    469        WRITE(V_EXTRA, 5);  WRITE(V_LENGTH, 5)
#line 469 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->EXTRA, 5);
#line 469 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->LENGTH, 5);
                                                                //    470        %IF V_LOP # 0 %START
#line 470 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_000f;
                                                                //    471           WRITE(V_LOP, 2);  PRINTSYMBOL(':')
#line 471 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->LOP, 2);
#line 471 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(58);
                                                                //    472           SHOW(V_LINK)
#line 472 "regression-compile-tmp/asems412.imp"
SHOW(V->LINK);
                                                                //    473        %ELSE
#line 473 "regression-compile-tmp/asems412.imp"
goto L_0010;
#line 473 "regression-compile-tmp/asems412.imp"
L_000f:;
                                                                //    474           NEWLINE
#line 474 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    475        %FINISH
#line 475 "regression-compile-tmp/asems412.imp"
L_0010:;
                                                                //    476        SELECTOUTPUT(OBJECT) %IF CONTROL < 0
#line 476 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0011;
#line 476 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
#line 476 "regression-compile-tmp/asems412.imp"
L_0011:;
                                                                //    477     %END
#line 477 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SHOW at level 2
                                                                //    478     %ROUTINE ABORT(%INTEGER CODE)
#line 478 "regression-compile-tmp/asems412.imp"
void ABORT( int CODE )
#line 478 "regression-compile-tmp/asems412.imp"
{
                                                                //    479        %INTEGER I,J,L,FATAL
#line 479 "regression-compile-tmp/asems412.imp"
int I;
#line 479 "regression-compile-tmp/asems412.imp"
int J;
#line 479 "regression-compile-tmp/asems412.imp"
int L;
#line 479 "regression-compile-tmp/asems412.imp"
int FATAL;
                                                                //    480        %SWITCH SW(-15:0)
#line 480 "regression-compile-tmp/asems412.imp"
static int sw1_SW_idx;
static const void * /*SWITCH*/ sw1_SW[16] = { &&sw1_SW_M_15, &&sw1_SW_M_14, &&sw1_SW_M_13, &&sw1_SW_M_12, &&sw1_SW_M_11, &&sw1_SW_M_10, &&sw1_SW_M_9, &&sw1_SW_M_8, &&sw1_SW_M_7, &&sw1_SW_M_6, &&sw1_SW_M_5, &&sw1_SW_M_4, &&sw1_SW_M_3, &&sw1_SW_M_2, &&sw1_SW_M_1, &&sw1_SW_0,  };
                                                                //    481        %RECORD(DFM)%NAME DD
#line 481 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*DD;
                                                                //    482        I = REPORT;  FATAL = 1
#line 482 "regression-compile-tmp/asems412.imp"
I = 0;
#line 482 "regression-compile-tmp/asems412.imp"
FATAL = 1;
                                                                //    483        CONTROL = 0
#line 483 "regression-compile-tmp/asems412.imp"
CONTROL = 0;
                                                                //    484        %CYCLE
#line 484 "regression-compile-tmp/asems412.imp"
L_0012:;
                                                                //    485           SELECT OUTPUT(I)
#line 485 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(I);
                                                                //    486           %IF CODE > 0 %START;      ! ... IT'S A COMPILER FAULT
#line 486 "regression-compile-tmp/asems412.imp"
if (((CODE) <= (0))) goto L_0015;
                                                                //    487              PRINT STRING("*COMPILER ERROR"); WRITE(CODE,1)
#line 487 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("*COMPILER ERROR"));
#line 487 "regression-compile-tmp/asems412.imp"
_imp_WRITE(CODE, 1);
                                                                //    488              PRINT STRING(" AT LINE");  WRITE(CURRENT LINE,1)
#line 488 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal(" AT LINE"));
#line 488 "regression-compile-tmp/asems412.imp"
_imp_WRITE(CURRENTLINE, 1);
                                                                //    489              NEWLINE
#line 489 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    490              %IF STP > 0 %START
#line 490 "regression-compile-tmp/asems412.imp"
if (((STP) <= (0))) goto L_0016;
                                                                //    491                 PRINT STRING("STACK"); NEWLINE
#line 491 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("STACK"));
#line 491 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    492                 SHOW(STACKED(J)_V) %FOR J = 1,1,STP
#line 492 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = STP; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, STP");
J -= _increment; _control -= _increment;
L_0017:;
if (J == _final) goto L_0018;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
#line 492 "regression-compile-tmp/asems412.imp"
SHOW(STACKED[(((int)(J)) - (1))].V);
#line 492 "regression-compile-tmp/asems412.imp"
goto L_0017;
#line 492 "regression-compile-tmp/asems412.imp"
L_0018:;
                                                                //    493              %FINISH
#line 493 "regression-compile-tmp/asems412.imp"
L_0016:;
                                                                //    494              %UNLESS USING_LINK == NULL %START
#line 494 "regression-compile-tmp/asems412.imp"
if (((USING.LINK) == (NULL))) goto L_001a;
                                                                //    495                 PRINTSTRING("USING:");  NEWLINE
#line 495 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("USING:"));
#line 495 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    496                 DD == USING_LINK
#line 496 "regression-compile-tmp/asems412.imp"
DD = USING.LINK;
                                                                //    497                 %CYCLE
#line 497 "regression-compile-tmp/asems412.imp"
L_001b:;
                                                                //    498                    SHOW(DD_D);  DD == DD_LINK
#line 498 "regression-compile-tmp/asems412.imp"
SHOW(DD->D);
#line 498 "regression-compile-tmp/asems412.imp"
DD = DD->LINK;
                                                                //    499                    %EXIT %IF DD == NULL
#line 499 "regression-compile-tmp/asems412.imp"
if (((DD) != (NULL))) goto L_001e;
#line 499 "regression-compile-tmp/asems412.imp"
goto L_001c;
#line 499 "regression-compile-tmp/asems412.imp"
L_001e:;
                                                                //    500                 %REPEAT
#line 500 "regression-compile-tmp/asems412.imp"
goto L_001b;
#line 500 "regression-compile-tmp/asems412.imp"
L_001c:;
                                                                //    501              %FINISH
#line 501 "regression-compile-tmp/asems412.imp"
L_001a:;
                                                                //    502              ->CONT %IF I = REPORT
#line 502 "regression-compile-tmp/asems412.imp"
if (((I) != (0))) goto L_001f;
#line 502 "regression-compile-tmp/asems412.imp"
goto U_1000;
#line 502 "regression-compile-tmp/asems412.imp"
L_001f:;
                                                                //    503              %SIGNAL 15,1;            ! ... SIGNAL COMPILER FAULT
#line 503 "regression-compile-tmp/asems412.imp"
_imp_signal(15, 1, 0, "");
                                                                //    504           %FINISH
#line 504 "regression-compile-tmp/asems412.imp"
L_0015:;
                                                                //    505           PRINT SYMBOL('*');  WRITE(CURRENT LINE,1);  PRINT STRING(": ")
#line 505 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(42);
#line 505 "regression-compile-tmp/asems412.imp"
_imp_WRITE(CURRENTLINE, 1);
#line 505 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal(": "));
                                                                //    506           -> SW(CODE)
#line 506 "regression-compile-tmp/asems412.imp"
sw1_SW_idx = CODE; if ((-15 <= sw1_SW_idx) && (sw1_SW_idx <= 0)) goto *(sw1_SW+15)[sw1_SW_idx];  /* Bounds=-15:0 */ else {
   /*_imp_signal(8, 2, sw1_SW_idx);*/
   fprintf(stderr, "%%SWITCH index SW(%d) not in range -15:0 at %s:%d\n",
           sw1_SW_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //    507  
                                                                //    508  SW(0):
#line 508 "regression-compile-tmp/asems412.imp"
sw1_SW_0:;
                                                                //    509     PRINT STRING("MORE STORE PLEASE!!");  -> CONT
#line 509 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("MORE STORE PLEASE!!"));
#line 509 "regression-compile-tmp/asems412.imp"
goto U_1000;
                                                                //    510  SW(-1):
#line 510 "regression-compile-tmp/asems412.imp"
sw1_SW_M_1:;
                                                                //    511  SW(-2):
#line 511 "regression-compile-tmp/asems412.imp"
sw1_SW_M_2:;
                                                                //    512     PRINT STRING("MORE STORE REQ'D FOR THIS COMPILATION");  -> CONT
#line 512 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("MORE STORE REQ'D FOR THIS COMPILATION"));
#line 512 "regression-compile-tmp/asems412.imp"
goto U_1000;
                                                                //    513  SW(-3):
#line 513 "regression-compile-tmp/asems412.imp"
sw1_SW_M_3:;
                                                                //    514     PRINT STRING("BLOCKS TOO DEEPLY NESTED");  -> CONT
#line 514 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("BLOCKS TOO DEEPLY NESTED"));
#line 514 "regression-compile-tmp/asems412.imp"
goto U_1000;
                                                                //    515  SW(-4):
#line 515 "regression-compile-tmp/asems412.imp"
sw1_SW_M_4:;
                                                                //    516     PRINT STRING("TOO MANY NAMES");  -> CONT
#line 516 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("TOO MANY NAMES"));
#line 516 "regression-compile-tmp/asems412.imp"
goto U_1000;
                                                                //    517  SW(-5):
#line 517 "regression-compile-tmp/asems412.imp"
sw1_SW_M_5:;
                                                                //    518     PRINT STRING("TOO MANY LABELS");  -> CONT
#line 518 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("TOO MANY LABELS"));
#line 518 "regression-compile-tmp/asems412.imp"
goto U_1000;
                                                                //    519  SW(-6):
#line 519 "regression-compile-tmp/asems412.imp"
sw1_SW_M_6:;
                                                                //    520     PRINT STRING("DIVISION BY ZERO");  -> NON FATAL
#line 520 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("DIVISION BY ZERO"));
#line 520 "regression-compile-tmp/asems412.imp"
goto U_1001;
                                                                //    521  SW(-7):
#line 521 "regression-compile-tmp/asems412.imp"
sw1_SW_M_7:;
                                                                //    522  SW(-8):
#line 522 "regression-compile-tmp/asems412.imp"
sw1_SW_M_8:;
                                                                //    523     PRINT STRING("ARRAY INSIDE OUT");  -> NON FATAL
#line 523 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("ARRAY INSIDE OUT"));
#line 523 "regression-compile-tmp/asems412.imp"
goto U_1001;
                                                                //    524  SW(-9):
#line 524 "regression-compile-tmp/asems412.imp"
sw1_SW_M_9:;
                                                                //    525     PRINT STRING("DECLARATION OUT OF CONTEXT");  -> NON FATAL
#line 525 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("DECLARATION OUT OF CONTEXT"));
#line 525 "regression-compile-tmp/asems412.imp"
goto U_1001;
                                                                //    526  SW(-10):
#line 526 "regression-compile-tmp/asems412.imp"
sw1_SW_M_10:;
                                                                //    527     PRINT STRING("FAULTY SWITCH DECLARATION");  -> NON FATAL
#line 527 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("FAULTY SWITCH DECLARATION"));
#line 527 "regression-compile-tmp/asems412.imp"
goto U_1001;
                                                                //    528  SW(-11):
#line 528 "regression-compile-tmp/asems412.imp"
sw1_SW_M_11:;
                                                                //    529     PRINT STRING("%RESULT UNSPECIFIED");  -> NON FATAL
#line 529 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("%RESULT UNSPECIFIED"));
#line 529 "regression-compile-tmp/asems412.imp"
goto U_1001;
                                                                //    530  SW(-12):
#line 530 "regression-compile-tmp/asems412.imp"
sw1_SW_M_12:;
                                                                //    531     PRINT STRING("ILLEGAL %FOR PARAMETERS");  ->WARNING
#line 531 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("ILLEGAL %FOR PARAMETERS"));
#line 531 "regression-compile-tmp/asems412.imp"
goto U_1002;
                                                                //    532  SW(-13):
#line 532 "regression-compile-tmp/asems412.imp"
sw1_SW_M_13:;
                                                                //    533     PRINTSTRING("STRING CONSTANT TOO LONG");  ->WARNING
#line 533 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("STRING CONSTANT TOO LONG"));
#line 533 "regression-compile-tmp/asems412.imp"
goto U_1002;
                                                                //    534  SW(-14):
#line 534 "regression-compile-tmp/asems412.imp"
sw1_SW_M_14:;
                                                                //    535     PRINTSTRING("UNASSIGNED CHECK INHIBITED")
#line 535 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("UNASSIGNED CHECK INHIBITED"));
                                                                //    536     CONTROL = CONTROL&(\UNASS DIAG);  ->WARNING
#line 536 "regression-compile-tmp/asems412.imp"
CONTROL = ((CONTROL) & ((~(32))));
#line 536 "regression-compile-tmp/asems412.imp"
goto U_1002;
                                                                //    537  SW(-15):
#line 537 "regression-compile-tmp/asems412.imp"
sw1_SW_M_15:;
                                                                //    538     PRINTSTRING("LOCALS > 16K ???")
#line 538 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("LOCALS > 16K ???"));
                                                                //    539  
                                                                //    540  WARNING:
#line 540 "regression-compile-tmp/asems412.imp"
U_1002:;
                                                                //    541        L = 0
#line 541 "regression-compile-tmp/asems412.imp"
L = 0;
                                                                //    542  
                                                                //    543  NON FATAL:
#line 543 "regression-compile-tmp/asems412.imp"
U_1001:;
                                                                //    544        FATAL = 0
#line 544 "regression-compile-tmp/asems412.imp"
FATAL = 0;
                                                                //    545  CONT:
#line 545 "regression-compile-tmp/asems412.imp"
U_1000:;
                                                                //    546        NEWLINE
#line 546 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    547        %IF I = LIST %START
#line 547 "regression-compile-tmp/asems412.imp"
if (((I) != (1))) goto L_0020;
                                                                //    548           %SIGNAL 15,2 %IF FATAL # 0
#line 548 "regression-compile-tmp/asems412.imp"
if (((FATAL) == (0))) goto L_0021;
#line 548 "regression-compile-tmp/asems412.imp"
_imp_signal(15, 2, 0, "");
#line 548 "regression-compile-tmp/asems412.imp"
L_0021:;
                                                                //    549           FAULTY = FAULTY+L;  SELECT OUTPUT(OBJECT); %RETURN
#line 549 "regression-compile-tmp/asems412.imp"
FAULTY = (((int)(FAULTY)) + (L));
#line 549 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
#line 549 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    550        %FINISH
#line 550 "regression-compile-tmp/asems412.imp"
L_0020:;
                                                                //    551        I = LIST
#line 551 "regression-compile-tmp/asems412.imp"
I = 1;
                                                                //    552  
                                                                //    553        %REPEAT
#line 553 "regression-compile-tmp/asems412.imp"
goto L_0012;
                                                                //    554     %END
#line 554 "regression-compile-tmp/asems412.imp"
return;
} // End of block ABORT at level 2
                                                                //    555     %ROUTINE DISPLAY VAR(%RECORD(VARFM)%NAME V)
#line 555 "regression-compile-tmp/asems412.imp"
void DISPLAYVAR(  VARFM /*name*/*V )
#line 555 "regression-compile-tmp/asems412.imp"
{
                                                                //    556        SELECTOUTPUT(LIST)
#line 556 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(1);
                                                                //    557        WRITE(V_ID, 3);  PRINTSYMBOL(':')
#line 557 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->ID, 3);
#line 557 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(58);
                                                                //    558        WRITE(V_TYPE, 2);  WRITE(V_FORM, 2)
#line 558 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->TYPE, 2);
#line 558 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->FORM, 2);
                                                                //    559        WRITE(V_BASE, 3);  WRITE(V_DISP, 4)
#line 559 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->BASE, 3);
#line 559 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->DISP, 4);
                                                                //    560        WRITE(V_EXTRA, 4);  WRITE(V_FORMAT, 4)
#line 560 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->EXTRA, 4);
#line 560 "regression-compile-tmp/asems412.imp"
_imp_WRITE(V->FORMAT, 4);
                                                                //    561        NEWLINE
#line 561 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    562        SELECTOUTPUT(OBJECT)
#line 562 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    563     %END
#line 563 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DISPLAYVAR at level 2
                                                                //    564     %ROUTINE REAL ERROR(%INTEGER N)
#line 564 "regression-compile-tmp/asems412.imp"
void REALERROR( int N )
#line 564 "regression-compile-tmp/asems412.imp"
{
                                                                //    565        %INTEGER I
#line 565 "regression-compile-tmp/asems412.imp"
int I;
                                                                //    566        %CONSTSHORTINTEGERARRAY SYM(1:14) = '\', '?', '?', '?', '@',
#line 566 "regression-compile-tmp/asems412.imp"
const short SYM[14] = { 92, 63, 63, 63, 64, 63, 63, 38, 33, (-33), (-60), (-62), 63, 46,  };
                                                                //    567                                            '?', '?', '&', '!',-'!',
                                                                //    568                                           -'<', -'>', '?', '.'
                                                                //    569        I = REPORT
#line 569 "regression-compile-tmp/asems412.imp"
I = 0;
                                                                //    570        %CYCLE
#line 570 "regression-compile-tmp/asems412.imp"
L_0022:;
                                                                //    571           SELECT OUTPUT(I)
#line 571 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(I);
                                                                //    572           PRINTSYMBOL('*');  WRITE(CURRENT LINE, 4)
#line 572 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(42);
#line 572 "regression-compile-tmp/asems412.imp"
_imp_WRITE(CURRENTLINE, 4);
                                                                //    573           PRINTSTRING(" ILLEGAL REAL OPERATION '")
#line 573 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal(" ILLEGAL REAL OPERATION '"));
                                                                //    574           N = SYM(N)
#line 574 "regression-compile-tmp/asems412.imp"
N = (SYM-1)[N];
                                                                //    575           PRINTSYMBOL(-N) %IF N < 0
#line 575 "regression-compile-tmp/asems412.imp"
if (((N) >= (0))) goto L_0025;
#line 575 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL((-(N)));
#line 575 "regression-compile-tmp/asems412.imp"
L_0025:;
                                                                //    576           PRINTSYMBOL(|N|);  PRINTSYMBOL('''');  NEWLINE
#line 576 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(_imp_IMOD(N));
#line 576 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(39);
#line 576 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    577           %EXIT %IF I = LIST
#line 577 "regression-compile-tmp/asems412.imp"
if (((I) != (1))) goto L_0026;
#line 577 "regression-compile-tmp/asems412.imp"
goto L_0023;
#line 577 "regression-compile-tmp/asems412.imp"
L_0026:;
                                                                //    578           I = LIST
#line 578 "regression-compile-tmp/asems412.imp"
I = 1;
                                                                //    579        %REPEAT
#line 579 "regression-compile-tmp/asems412.imp"
goto L_0022;
#line 579 "regression-compile-tmp/asems412.imp"
L_0023:;
                                                                //    580        FAULTY = FAULTY+1
#line 580 "regression-compile-tmp/asems412.imp"
FAULTY = (((int)(FAULTY)) + (1));
                                                                //    581        SELECTOUTPUT(OBJECT)
#line 581 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    582     %END
#line 582 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block REALERROR at level 2
                                                                //    583     %PREDICATE FLOATING(%RECORD(STACKFM)%NAME V)
#line 583 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ FLOATING(  STACKFM /*name*/*V )
#line 583 "regression-compile-tmp/asems412.imp"
{
                                                                //    584        %TRUE %IF V_TYPE = REALS %OR (V_LOP # 0    %C
#line 584 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (6))) goto L_0024;
#line 584 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_0027;
#line 584 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (16))) goto L_0024;
#line 584 "regression-compile-tmp/asems412.imp"
if (((V->LINK) == (NULL))) goto L_0027;
#line 584 "regression-compile-tmp/asems412.imp"
if (((V->LINK->TYPE) != (6))) goto L_0027;
#line 584 "regression-compile-tmp/asems412.imp"
L_0024:;
#line 584 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
#line 584 "regression-compile-tmp/asems412.imp"
L_0027:;
                                                                //    585               %AND (V_LOP = RDIV %OR (v_link ## NULL %and V_LINK_TYPE = REALS)))
                                                                //    586        %FALSE
#line 586 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
                                                                //    587     %END
#line 587 "regression-compile-tmp/asems412.imp"
} // End of block FLOATING at level 2
                                                                //    588     %PREDICATE SAME(%RECORD(STACKFM)%NAME L, R)
#line 588 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ SAME(  STACKFM /*name*/*L,  STACKFM /*name*/*R )
#line 588 "regression-compile-tmp/asems412.imp"
{
                                                                //    589        %FALSE %IF L_BASE # R_BASE %OR L_DISP # R_DISP
#line 589 "regression-compile-tmp/asems412.imp"
if (((L->BASE) != (R->BASE))) goto L_0028;
#line 589 "regression-compile-tmp/asems412.imp"
if (((L->DISP) == (R->DISP))) goto L_0029;
#line 589 "regression-compile-tmp/asems412.imp"
L_0028:;
#line 589 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 589 "regression-compile-tmp/asems412.imp"
L_0029:;
                                                                //    590        %FALSE %IF L_TYPE # R_TYPE %OR L_FORM # R_FORM
#line 590 "regression-compile-tmp/asems412.imp"
if (((L->TYPE) != (R->TYPE))) goto L_002a;
#line 590 "regression-compile-tmp/asems412.imp"
if (((L->FORM) == (R->FORM))) goto L_002b;
#line 590 "regression-compile-tmp/asems412.imp"
L_002a:;
#line 590 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 590 "regression-compile-tmp/asems412.imp"
L_002b:;
                                                                //    591        %FALSE %IF L_EXTRA # R_EXTRA
#line 591 "regression-compile-tmp/asems412.imp"
if (((L->EXTRA) == (R->EXTRA))) goto L_002c;
#line 591 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 591 "regression-compile-tmp/asems412.imp"
L_002c:;
                                                                //    592        %TRUE
#line 592 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    593     %END
#line 593 "regression-compile-tmp/asems412.imp"
} // End of block SAME at level 2
                                                                //    594     %PREDICATE ZERO(%RECORD(STACKFM)%NAME V)
#line 594 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ ZERO(  STACKFM /*name*/*V )
#line 594 "regression-compile-tmp/asems412.imp"
{
                                                                //    595        %FALSE %IF V_DISP # 0 %OR V_BASE # 0 %OR V_FORM # CONSTANT
#line 595 "regression-compile-tmp/asems412.imp"
if (((V->DISP) != (0))) goto L_002d;
#line 595 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (0))) goto L_002d;
#line 595 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (0))) goto L_002e;
#line 595 "regression-compile-tmp/asems412.imp"
L_002d:;
#line 595 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 595 "regression-compile-tmp/asems412.imp"
L_002e:;
                                                                //    596        %FALSE %IF V_LOP # 0
#line 596 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_002f;
#line 596 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 596 "regression-compile-tmp/asems412.imp"
L_002f:;
                                                                //    597        %TRUE
#line 597 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    598     %END
#line 598 "regression-compile-tmp/asems412.imp"
} // End of block ZERO at level 2
                                                                //    599     %PREDICATE CONST(%RECORD(STACKFM)%NAME V)
#line 599 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ CONST(  STACKFM /*name*/*V )
#line 599 "regression-compile-tmp/asems412.imp"
{
                                                                //    600        %FALSE %UNLESS V_FORM = CONSTANT %AND V_LOP = 0
#line 600 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (0))) goto L_0030;
#line 600 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_0031;
#line 600 "regression-compile-tmp/asems412.imp"
L_0030:;
#line 600 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 600 "regression-compile-tmp/asems412.imp"
L_0031:;
                                                                //    601        %FALSE %IF V_TYPE > SHORT
#line 601 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) <= (3))) goto L_0032;
#line 601 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 601 "regression-compile-tmp/asems412.imp"
L_0032:;
                                                                //    602        %TRUE
#line 602 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    603     %END
#line 603 "regression-compile-tmp/asems412.imp"
} // End of block CONST at level 2
                                                                //    604     %INTEGERFN POWER(%INTEGER N)
#line 604 "regression-compile-tmp/asems412.imp"
int POWER( int N )
#line 604 "regression-compile-tmp/asems412.imp"
{
                                                                //    605        %INTEGER MASK, J
#line 605 "regression-compile-tmp/asems412.imp"
int MASK;
#line 605 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    606        MASK = 1
#line 606 "regression-compile-tmp/asems412.imp"
MASK = 1;
                                                                //    607        %FOR J = 0, 1, 14 %CYCLE
#line 607 "regression-compile-tmp/asems412.imp"
J = (-1);
if ((((14)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, 14");
L_0033:;
if (J == 14) goto L_0034;
J += 1;
                                                                //    608           %RESULT = J %IF N = MASK
#line 608 "regression-compile-tmp/asems412.imp"
if (((N) != (MASK))) goto L_0036;
#line 608 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return J;
#line 608 "regression-compile-tmp/asems412.imp"
L_0036:;
                                                                //    609           MASK = MASK<<1
#line 609 "regression-compile-tmp/asems412.imp"
MASK = ((MASK) << (1));
                                                                //    610        %REPEAT
#line 610 "regression-compile-tmp/asems412.imp"
goto L_0033;
#line 610 "regression-compile-tmp/asems412.imp"
L_0034:;
                                                                //    611        %RESULT = -1
#line 611 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return (-1);
                                                                //    612     %END
#line 612 "regression-compile-tmp/asems412.imp"
} // End of block POWER at level 2
                                                                //    613     %INTEGERFN TEMP
#line 613 "regression-compile-tmp/asems412.imp"
int TEMP( void )
#line 613 "regression-compile-tmp/asems412.imp"
{
                                                                //    614        %INTEGER T
#line 614 "regression-compile-tmp/asems412.imp"
int T;
                                                                //    615        T = (FRAME+(REGLEN-1))&(\(REGLEN-1))
#line 615 "regression-compile-tmp/asems412.imp"
T = ((((FRAME) + ((int)(3)))) & ((~(3))));
                                                                //    616        FRAME = T+REGLEN
#line 616 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(T)) + (4));
                                                                //    617        %RESULT = T
#line 617 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return T;
                                                                //    618     %END
#line 618 "regression-compile-tmp/asems412.imp"
} // End of block TEMP at level 2
                                                                //    619     %INTEGERFN TAG
#line 619 "regression-compile-tmp/asems412.imp"
int TAG( void )
#line 619 "regression-compile-tmp/asems412.imp"
{
                                                                //    620        %INTEGER N, S
#line 620 "regression-compile-tmp/asems412.imp"
int N;
#line 620 "regression-compile-tmp/asems412.imp"
int S;
                                                                //    621        N = 0
#line 621 "regression-compile-tmp/asems412.imp"
N = 0;
                                                                //    622        %CYCLE
#line 622 "regression-compile-tmp/asems412.imp"
L_0037:;
                                                                //    623           S = NEXTSYMBOL
#line 623 "regression-compile-tmp/asems412.imp"
S = _imp_NEXTSYMBOL();
                                                                //    624           %RESULT = N %UNLESS '0' <= S <= '9'
#line 624 "regression-compile-tmp/asems412.imp"
if ((((48) > (S))) || (((S) <= (57)))) goto L_003b;
#line 624 "regression-compile-tmp/asems412.imp"
L_003a:;
#line 624 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return N;
#line 624 "regression-compile-tmp/asems412.imp"
L_003b:;
                                                                //    625           N = N*10+S-'0'
#line 625 "regression-compile-tmp/asems412.imp"
N = (((int)((((int)((((int)(N)) * (10)))) + (S)))) - (48));
                                                                //    626           SKIPSYMBOL
#line 626 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //    627        %REPEAT
#line 627 "regression-compile-tmp/asems412.imp"
goto L_0037;
                                                                //    628     %END
#line 628 "regression-compile-tmp/asems412.imp"
} // End of block TAG at level 2
                                                                //    629     %INTEGERFN EVAL(%INTEGER L)
#line 629 "regression-compile-tmp/asems412.imp"
int EVAL( int L )
#line 629 "regression-compile-tmp/asems412.imp"
{
                                                                //    630        %INTEGER J, N, B, S, MOD
#line 630 "regression-compile-tmp/asems412.imp"
int J;
#line 630 "regression-compile-tmp/asems412.imp"
int N;
#line 630 "regression-compile-tmp/asems412.imp"
int B;
#line 630 "regression-compile-tmp/asems412.imp"
int S;
#line 630 "regression-compile-tmp/asems412.imp"
int MOD;
                                                                //    631        %CONSTBYTEINTEGERARRAY BASIS('V' : 'Z') = 3, 1, 8, 4, 0
#line 631 "regression-compile-tmp/asems412.imp"
const unsigned char BASIS[5] = { 3, 1, 8, 4, 0,  };
                                                                //    632        %RESULT = 0 %IF L < 2
#line 632 "regression-compile-tmp/asems412.imp"
if (((L) >= (2))) goto L_0038;
#line 632 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 632 "regression-compile-tmp/asems412.imp"
L_0038:;
                                                                //    633        READSYMBOL(B);  B = BASIS(B)
#line 633 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&B);
#line 633 "regression-compile-tmp/asems412.imp"
B = (BASIS-86)[B];
                                                                //    634        N = 0
#line 634 "regression-compile-tmp/asems412.imp"
N = 0;
                                                                //    635        %IF B = 0 %START
#line 635 "regression-compile-tmp/asems412.imp"
if (((B) != (0))) goto L_003c;
                                                                //    636           %FOR J = 2,1,L %CYCLE
#line 636 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 2; _increment = 1; _final = L; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 2, 1, L");
J -= _increment; _control -= _increment;
L_003d:;
if (J == _final) goto L_003e;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //    637              READ SYMBOL(S)
#line 637 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&S);
                                                                //    638              N = (N*4+N)*2 + S-'A'
#line 638 "regression-compile-tmp/asems412.imp"
N = (((int)((((int)((((int)((((int)((((int)(N)) * (4)))) + (N)))) * (2)))) + (S)))) - (65));
                                                                //    639           %REPEAT
#line 639 "regression-compile-tmp/asems412.imp"
goto L_003d;
#line 639 "regression-compile-tmp/asems412.imp"
L_003e:;
                                                                //    640        %ELSE
#line 640 "regression-compile-tmp/asems412.imp"
goto L_0040;
#line 640 "regression-compile-tmp/asems412.imp"
L_003c:;
                                                                //    641           MOD = 'A';  MOD = 0 %IF B = 8
#line 641 "regression-compile-tmp/asems412.imp"
MOD = 65;
#line 641 "regression-compile-tmp/asems412.imp"
if (((B) != (8))) goto L_0041;
#line 641 "regression-compile-tmp/asems412.imp"
MOD = 0;
#line 641 "regression-compile-tmp/asems412.imp"
L_0041:;
                                                                //    642           %FOR J = 2,1,L %CYCLE
#line 642 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 2; _increment = 1; _final = L; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 2, 1, L");
J -= _increment; _control -= _increment;
L_0042:;
if (J == _final) goto L_0043;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //    643              READ SYMBOL(S)
#line 643 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&S);
                                                                //    644              N = N<<B + (S-MOD)
#line 644 "regression-compile-tmp/asems412.imp"
N = (((((N) << (B)))) + ((((int)(S)) - (MOD))));
                                                                //    645           %REPEAT
#line 645 "regression-compile-tmp/asems412.imp"
goto L_0042;
#line 645 "regression-compile-tmp/asems412.imp"
L_0043:;
                                                                //    646        %FINISH
#line 646 "regression-compile-tmp/asems412.imp"
L_0040:;
                                                                //    647        %RESULT = N
#line 647 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return N;
                                                                //    648     %END
#line 648 "regression-compile-tmp/asems412.imp"
} // End of block EVAL at level 2
                                                                //    649     %REALFN  REAL CONSTANT
#line 649 "regression-compile-tmp/asems412.imp"
float REALCONSTANT( void )
#line 649 "regression-compile-tmp/asems412.imp"
{
                                                                //    650     %INTEGER  I,L,S,J,M
#line 650 "regression-compile-tmp/asems412.imp"
int I;
#line 650 "regression-compile-tmp/asems412.imp"
int L;
#line 650 "regression-compile-tmp/asems412.imp"
int S;
#line 650 "regression-compile-tmp/asems412.imp"
int J;
#line 650 "regression-compile-tmp/asems412.imp"
int M;
                                                                //    651     %REAL  N,FACTOR,TEN,ONE
#line 651 "regression-compile-tmp/asems412.imp"
float N;
#line 651 "regression-compile-tmp/asems412.imp"
float FACTOR;
#line 651 "regression-compile-tmp/asems412.imp"
float TEN;
#line 651 "regression-compile-tmp/asems412.imp"
float ONE;
                                                                //    652        I = 10;  TEN = I;   ! ...TO PREVENT COMPILE-TIME FLOATING
#line 652 "regression-compile-tmp/asems412.imp"
I = 10;
#line 652 "regression-compile-tmp/asems412.imp"
TEN = I;
                                                                //    653        I = 1;  ONE = I;   ! ... AND AGAIN
#line 653 "regression-compile-tmp/asems412.imp"
I = 1;
#line 653 "regression-compile-tmp/asems412.imp"
ONE = I;
                                                                //    654        M = 0;  N = 0;  L = TAG;  SKIP SYMBOL
#line 654 "regression-compile-tmp/asems412.imp"
M = 0;
#line 654 "regression-compile-tmp/asems412.imp"
N = 0;
#line 654 "regression-compile-tmp/asems412.imp"
L = TAG();
#line 654 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //    655        %CYCLE  J = 1,1,L
#line 655 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = L; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, L");
J -= _increment; _control -= _increment;
L_0045:;
if (J == _final) goto L_0046;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //    656           READ SYMBOL(S)
#line 656 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&S);
                                                                //    657           %IF S = '.' %START
#line 657 "regression-compile-tmp/asems412.imp"
if (((S) != (46))) goto L_0048;
                                                                //    658              FACTOR = 1;  M = 1
#line 658 "regression-compile-tmp/asems412.imp"
FACTOR = 1;
#line 658 "regression-compile-tmp/asems412.imp"
M = 1;
                                                                //    659           %ELSE
#line 659 "regression-compile-tmp/asems412.imp"
goto L_0049;
#line 659 "regression-compile-tmp/asems412.imp"
L_0048:;
                                                                //    660              I = S-'A'
#line 660 "regression-compile-tmp/asems412.imp"
I = (((int)(S)) - (65));
                                                                //    661              %IF M = 0 %START
#line 661 "regression-compile-tmp/asems412.imp"
if (((M) != (0))) goto L_004a;
/*Warning: potential loss of precision converting from integer AST_VAR (I - 4 bytes) to real AST_BINOP ((((float)(N)) * (TEN)) - 0 bytes) detected at ast.c line 108 */
                                                                //    662                 N = N*TEN + I
#line 662 "regression-compile-tmp/asems412.imp"
N = (((((float)(N)) * (TEN))) + ((I)));
                                                                //    663              %ELSE
#line 663 "regression-compile-tmp/asems412.imp"
goto L_004b;
#line 663 "regression-compile-tmp/asems412.imp"
L_004a:;
                                                                //    664                 FACTOR = FACTOR/TEN
#line 664 "regression-compile-tmp/asems412.imp"
FACTOR = (double)((double)((float)(FACTOR)) / (double)((float)(TEN)));
/*Warning: potential loss of precision converting from integer AST_VAR (I - 4 bytes) to real AST_VAR (FACTOR - 4 bytes) detected at ast.c line 108 */
/*promote*/                                                                //    665                 N = N + I*FACTOR
#line 665 "regression-compile-tmp/asems412.imp"
N = ((N) + ((float)((((float)(I)) * (FACTOR)))));
                                                                //    666              %FINISH
#line 666 "regression-compile-tmp/asems412.imp"
L_004b:;
                                                                //    667           %FINISH
#line 667 "regression-compile-tmp/asems412.imp"
L_0049:;
                                                                //    668        %REPEAT
#line 668 "regression-compile-tmp/asems412.imp"
goto L_0045;
#line 668 "regression-compile-tmp/asems412.imp"
L_0046:;
                                                                //    669        %RESULT = N
#line 669 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return N;
                                                                //    670     %END
#line 670 "regression-compile-tmp/asems412.imp"
} // End of block REALCONSTANT at level 2
                                                                //    671     %ROUTINE RELEASE(%INTEGER REG)
#line 671 "regression-compile-tmp/asems412.imp"
void RELEASE( int REG )
#line 671 "regression-compile-tmp/asems412.imp"
{
                                                                //    672        %RETURN %IF REG = 0 %OR ACTIVITY(REG) < 0;!  LOCKED
#line 672 "regression-compile-tmp/asems412.imp"
if (((REG) == (0))) goto L_0047;
#line 672 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[REG]) >= (0))) goto L_004c;
#line 672 "regression-compile-tmp/asems412.imp"
L_0047:;
#line 672 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 672 "regression-compile-tmp/asems412.imp"
L_004c:;
                                                                //    673        ACTIVITY(REG) = ACTIVITY(REG)-1
#line 673 "regression-compile-tmp/asems412.imp"
ACTIVITY[REG] = (((int)(ACTIVITY[REG])) - (1));
                                                                //    674        ABORT(1) %IF ACTIVITY(REG) < 0
#line 674 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[REG]) >= (0))) goto L_004d;
#line 674 "regression-compile-tmp/asems412.imp"
ABORT(1);
#line 674 "regression-compile-tmp/asems412.imp"
L_004d:;
                                                                //    675     %END
#line 675 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RELEASE at level 2
                                                                //    676     %ROUTINE CLAIM(%INTEGER REG)
#line 676 "regression-compile-tmp/asems412.imp"
void CLAIM( int REG )
#line 676 "regression-compile-tmp/asems412.imp"
{
                                                                //    677        %RETURN %IF REG = 0 %OR ACTIVITY(REG) < 0
#line 677 "regression-compile-tmp/asems412.imp"
if (((REG) == (0))) goto L_004e;
#line 677 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[REG]) >= (0))) goto L_004f;
#line 677 "regression-compile-tmp/asems412.imp"
L_004e:;
#line 677 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 677 "regression-compile-tmp/asems412.imp"
L_004f:;
                                                                //    678        USED(REG) = CA
#line 678 "regression-compile-tmp/asems412.imp"
USED[REG] = CA;
                                                                //    679        ACTIVITY(REG) = ACTIVITY(REG)+1
#line 679 "regression-compile-tmp/asems412.imp"
ACTIVITY[REG] = (((int)(ACTIVITY[REG])) + (1));
                                                                //    680     %END
#line 680 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CLAIM at level 2
                                                                //    681     %ROUTINE FORGET(%INTEGER REG)
#line 681 "regression-compile-tmp/asems412.imp"
void FORGET( int REG )
#line 681 "regression-compile-tmp/asems412.imp"
{
                                                                //    682        USE(REG)_CA = LIMEN;  USE(REG+STORE)_CA = LIMEN
#line 682 "regression-compile-tmp/asems412.imp"
USE[(((int)(REG)) - (1))].CA = LIMEN;
#line 682 "regression-compile-tmp/asems412.imp"
USE[(((int)((((int)(REG)) + (20)))) - (1))].CA = LIMEN;
                                                                //    683     %END
#line 683 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FORGET at level 2
                                                                //    684     %ROUTINE FORGET DEST(%RECORD(STACKFM)%NAME V)
#line 684 "regression-compile-tmp/asems412.imp"
void FORGETDEST(  STACKFM /*name*/*V )
#line 684 "regression-compile-tmp/asems412.imp"
{
                                                                //    685        %CONSTBYTEINTEGERARRAY BITS(0:7) = 15,15,8,12,12,12,15,15
#line 685 "regression-compile-tmp/asems412.imp"
const unsigned char BITS[8] = { 15, 15, 8, 12, 12, 12, 15, 15,  };
                                                                //    686        %INTEGER R, MASK, ADDR, TYPE
#line 686 "regression-compile-tmp/asems412.imp"
int R;
#line 686 "regression-compile-tmp/asems412.imp"
int MASK;
#line 686 "regression-compile-tmp/asems412.imp"
int ADDR;
#line 686 "regression-compile-tmp/asems412.imp"
int TYPE;
                                                                //    687        %RECORD(USEFM)%NAME U
#line 687 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U;
                                                                //    688  
                                                                //    689        ADDR = V_DISP!3;  MASK = BITS(V_TYPE)>>(V_DISP&3)
#line 689 "regression-compile-tmp/asems412.imp"
ADDR = ((V->DISP) | (3));
#line 689 "regression-compile-tmp/asems412.imp"
MASK = (unsigned char)((((unsigned char)(BITS[V->TYPE])) >> (((V->DISP) & (3)))));
                                                                //    690  
                                                                //    691        %FOR R = 1, 1, 40 %CYCLE
#line 691 "regression-compile-tmp/asems412.imp"
R = 0;
if ((((40)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle R = 1, 1, 40");
L_0050:;
if (R == 40) goto L_0051;
R += 1;
                                                                //    692           U == USE(R)
#line 692 "regression-compile-tmp/asems412.imp"
U = &USE[(((int)(R)) - (1))];
                                                                //    693           %IF U_CA > LIMEN %START
#line 693 "regression-compile-tmp/asems412.imp"
if (((U->CA) <= (LIMEN))) goto L_0053;
                                                                //    694              %IF U_BASE&255 = V_BASE %AND U_FORM # A V IN S %START
#line 694 "regression-compile-tmp/asems412.imp"
if (((((U->BASE) & (255))) != (V->BASE))) goto L_0054;
#line 694 "regression-compile-tmp/asems412.imp"
if (((U->FORM) == (6))) goto L_0054;
                                                                //    695                 %IF U_DISP!3 = ADDR %START
#line 695 "regression-compile-tmp/asems412.imp"
if (((((U->DISP) | (3))) != (ADDR))) goto L_0055;
                                                                //    696                    TYPE = U_TYPE
#line 696 "regression-compile-tmp/asems412.imp"
TYPE = U->TYPE;
                                                                //    697                    TYPE = 7 %IF U_FORM&128 # 0
#line 697 "regression-compile-tmp/asems412.imp"
if (((((U->FORM) & (128))) == (0))) goto L_0056;
#line 697 "regression-compile-tmp/asems412.imp"
TYPE = 7;
#line 697 "regression-compile-tmp/asems412.imp"
L_0056:;
                                                                //    698                    type = 0 %if type = 255      {unsigned halfword}
#line 698 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (255))) goto L_0057;
#line 698 "regression-compile-tmp/asems412.imp"
TYPE = 0;
#line 698 "regression-compile-tmp/asems412.imp"
L_0057:;
                                                                //    699                    %IF BITS(TYPE)>>(U_DISP&3) & MASK # 0 %START
#line 699 "regression-compile-tmp/asems412.imp"
if ((((((unsigned char)((((unsigned char)(BITS[TYPE])) >> (((U->DISP) & (3)))))) & (MASK))) == (0))) goto L_0058;
                                                                //    700                       U_CA = LIMEN;        ! FORGET IT
#line 700 "regression-compile-tmp/asems412.imp"
U->CA = LIMEN;
                                                                //    701                    %FINISH
#line 701 "regression-compile-tmp/asems412.imp"
L_0058:;
                                                                //    702                 %FINISH
#line 702 "regression-compile-tmp/asems412.imp"
L_0055:;
                                                                //    703              %FINISH
#line 703 "regression-compile-tmp/asems412.imp"
L_0054:;
                                                                //    704           %FINISH
#line 704 "regression-compile-tmp/asems412.imp"
L_0053:;
                                                                //    705        %REPEAT
#line 705 "regression-compile-tmp/asems412.imp"
goto L_0050;
#line 705 "regression-compile-tmp/asems412.imp"
L_0051:;
                                                                //    706     %END
#line 706 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FORGETDEST at level 2
                                                                //    707     %ROUTINE HAZARD(%INTEGER REG)
#line 707 "regression-compile-tmp/asems412.imp"
void HAZARD( int REG )
#line 707 "regression-compile-tmp/asems412.imp"
{
                                                                //    708        %RECORD(DFM)%NAME P
#line 708 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*P;
                                                                //    709        %INTEGER N, T, OP
#line 709 "regression-compile-tmp/asems412.imp"
int N;
#line 709 "regression-compile-tmp/asems412.imp"
int T;
#line 709 "regression-compile-tmp/asems412.imp"
int OP;
                                                                //    710        %ROUTINE MOD(%RECORD(STACKFM)%NAME V)
#line 710 "regression-compile-tmp/asems412.imp"
void MOD(  STACKFM /*name*/*V )
#line 710 "regression-compile-tmp/asems412.imp"
{
                                                                //    711           %SWITCH S(0:7)
#line 711 "regression-compile-tmp/asems412.imp"
static int sw2_S_idx;
static const void * /*SWITCH*/ sw2_S[8] = { &&sw2_S_0, &&sw2_S_1, &&sw2_S_2, &&sw2_S_3, &&sw2_S_4, &&sw2_S_5, &&sw2_S_6, &&sw2_S_7,  };
                                                                //    712                 N = N-1
#line 712 "regression-compile-tmp/asems412.imp"
N = (((int)(N)) - (1));
                                                                //    713                 ->S(V_FORM)
#line 713 "regression-compile-tmp/asems412.imp"
sw2_S_idx = V->FORM; if ((0 <= sw2_S_idx) && (sw2_S_idx <= 7)) goto *sw2_S[sw2_S_idx]; else {
   /*_imp_signal(8, 2, sw2_S_idx);*/
   fprintf(stderr, "%%SWITCH index S(%d) not in range 0:7 at %s:%d\n",
           sw2_S_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //    714  S(CONSTANT):
#line 714 "regression-compile-tmp/asems412.imp"
sw2_S_0:;
                                                                //    715  S(A IN REC):
#line 715 "regression-compile-tmp/asems412.imp"
sw2_S_4:;
                                                                //    716  S(V IN REC):
#line 716 "regression-compile-tmp/asems412.imp"
sw2_S_5:;
                                                                //    717  S(AV IN REC):  ABORT(3)
#line 717 "regression-compile-tmp/asems412.imp"
sw2_S_7:;
#line 717 "regression-compile-tmp/asems412.imp"
ABORT(3);
                                                                //    718  S(A IN S):     V_FORM = A IN REC;  V_EXTRA = T;  ->DONE
#line 718 "regression-compile-tmp/asems412.imp"
sw2_S_2:;
#line 718 "regression-compile-tmp/asems412.imp"
V->FORM = 4;
#line 718 "regression-compile-tmp/asems412.imp"
V->EXTRA = T;
#line 718 "regression-compile-tmp/asems412.imp"
goto U_1003;
                                                                //    719  S(AV IN S):    V_FORM = AV IN REC;  V_EXTRA = T;  ->DONE
#line 719 "regression-compile-tmp/asems412.imp"
sw2_S_6:;
#line 719 "regression-compile-tmp/asems412.imp"
V->FORM = 7;
#line 719 "regression-compile-tmp/asems412.imp"
V->EXTRA = T;
#line 719 "regression-compile-tmp/asems412.imp"
goto U_1003;
                                                                //    720  S(V IN S):     V_FORM = V IN REC;  V_EXTRA = T;  ->DONE
#line 720 "regression-compile-tmp/asems412.imp"
sw2_S_3:;
#line 720 "regression-compile-tmp/asems412.imp"
V->FORM = 5;
#line 720 "regression-compile-tmp/asems412.imp"
V->EXTRA = T;
#line 720 "regression-compile-tmp/asems412.imp"
goto U_1003;
                                                                //    721  S(V IN R):     V_FORM = V IN S;  V_DISP = T
#line 721 "regression-compile-tmp/asems412.imp"
sw2_S_1:;
#line 721 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
#line 721 "regression-compile-tmp/asems412.imp"
V->DISP = T;
                                                                //    722  DONE:          V_BASE = LOCAL
#line 722 "regression-compile-tmp/asems412.imp"
U_1003:;
#line 722 "regression-compile-tmp/asems412.imp"
V->BASE = LOCAL;
                                                                //    723        %END
#line 723 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block MOD at level 3
                                                                //    724        N = ACTIVITY(REG)
#line 724 "regression-compile-tmp/asems412.imp"
N = ACTIVITY[REG];
                                                                //    725        %RETURN %IF N <= 0
#line 725 "regression-compile-tmp/asems412.imp"
if (((N) > (0))) goto L_0059;
#line 725 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 725 "regression-compile-tmp/asems412.imp"
L_0059:;
                                                                //    726        ACTIVITY(REG) = 0
#line 726 "regression-compile-tmp/asems412.imp"
ACTIVITY[REG] = 0;
                                                                //    727        T = TEMP
#line 727 "regression-compile-tmp/asems412.imp"
T = TEMP();
                                                                //    728        %IF FPR0 <= REG <= FPR14 %THEN OP = STE %ELSE OP = ST
#line 728 "regression-compile-tmp/asems412.imp"
if ((((13) > (REG))) || (((REG) > (20)))) goto L_005a;
#line 728 "regression-compile-tmp/asems412.imp"
OP = 24576;
#line 728 "regression-compile-tmp/asems412.imp"
goto L_005b;
#line 728 "regression-compile-tmp/asems412.imp"
L_005a:;
#line 728 "regression-compile-tmp/asems412.imp"
OP = 20480;
#line 728 "regression-compile-tmp/asems412.imp"
L_005b:;
                                                                //    729        RX(OP, REG, LOCAL, T)
#line 729 "regression-compile-tmp/asems412.imp"
RX(OP, REG, LOCAL, T);
                                                                //    730        P == USING_LINK
#line 730 "regression-compile-tmp/asems412.imp"
P = USING.LINK;
                                                                //    731        %CYCLE
#line 731 "regression-compile-tmp/asems412.imp"
L_005c:;
                                                                //    732           %EXIT %IF P == NULL
#line 732 "regression-compile-tmp/asems412.imp"
if (((P) != (NULL))) goto L_005f;
#line 732 "regression-compile-tmp/asems412.imp"
goto L_005d;
#line 732 "regression-compile-tmp/asems412.imp"
L_005f:;
                                                                //    733           MOD(P_D) %IF P_D_BASE = REG
#line 733 "regression-compile-tmp/asems412.imp"
if (((P->D->BASE) != (REG))) goto L_0060;
#line 733 "regression-compile-tmp/asems412.imp"
MOD(P->D);
#line 733 "regression-compile-tmp/asems412.imp"
L_0060:;
                                                                //    734           P == P_LINK
#line 734 "regression-compile-tmp/asems412.imp"
P = P->LINK;
                                                                //    735        %REPEAT
#line 735 "regression-compile-tmp/asems412.imp"
goto L_005c;
#line 735 "regression-compile-tmp/asems412.imp"
L_005d:;
                                                                //    736        ABORT(4) %IF N # 0
#line 736 "regression-compile-tmp/asems412.imp"
if (((N) == (0))) goto L_0061;
#line 736 "regression-compile-tmp/asems412.imp"
ABORT(4);
#line 736 "regression-compile-tmp/asems412.imp"
L_0061:;
                                                                //    737     %END
#line 737 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block HAZARD at level 2
                                                                //    738     %ROUTINE HAZARD ALL
#line 738 "regression-compile-tmp/asems412.imp"
void HAZARDALL( void )
#line 738 "regression-compile-tmp/asems412.imp"
{
                                                                //    739        %INTEGER J
#line 739 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    740        HAZARD(J) %FOR J = 1, 1, 20
#line 740 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((20)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 20");
L_0062:;
if (J == 20) goto L_0063;
J += 1;
#line 740 "regression-compile-tmp/asems412.imp"
HAZARD(J);
#line 740 "regression-compile-tmp/asems412.imp"
goto L_0062;
#line 740 "regression-compile-tmp/asems412.imp"
L_0063:;
                                                                //    741     %END
#line 741 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block HAZARDALL at level 2
                                                                //    742     %ROUTINE REMEMBER(%INTEGER REG, %RECORD(STACKFM)%NAME V)
#line 742 "regression-compile-tmp/asems412.imp"
void REMEMBER( int REG,  STACKFM /*name*/*V )
#line 742 "regression-compile-tmp/asems412.imp"
{
                                                                //    743        %RECORD(USEFM)%NAME U
#line 743 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U;
                                                                //    744        REMEMBER(REG+STORE,V) %IF REG <= STORE
#line 744 "regression-compile-tmp/asems412.imp"
if (((REG) > (20))) goto L_0065;
#line 744 "regression-compile-tmp/asems412.imp"
REMEMBER((((int)(REG)) + (20)), V);
#line 744 "regression-compile-tmp/asems412.imp"
L_0065:;
                                                                //    745        U == USE(REG)
#line 745 "regression-compile-tmp/asems412.imp"
U = &USE[(((int)(REG)) - (1))];
                                                                //    746        U_BASE = V_BASE
#line 746 "regression-compile-tmp/asems412.imp"
U->BASE = V->BASE;
                                                                //    747        U_DISP = V_DISP
#line 747 "regression-compile-tmp/asems412.imp"
U->DISP = V->DISP;
                                                                //    748        U_TYPE = V_TYPE
#line 748 "regression-compile-tmp/asems412.imp"
U->TYPE = V->TYPE;
                                                                //    749        U_FORM = V_FORM
#line 749 "regression-compile-tmp/asems412.imp"
U->FORM = V->FORM;
                                                                //    750        U_CA   = CA
#line 750 "regression-compile-tmp/asems412.imp"
U->CA = CA;
                                                                //    751        %IF CONTROL < 0 %START
#line 751 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0066;
                                                                //    752           SELECTOUTPUT(LIST)
#line 752 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(1);
                                                                //    753           PRINTSTRING(" REMEMBER:")
#line 753 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal(" REMEMBER:"));
                                                                //    754           WRITE(U_TYPE, 1);  WRITE(U_FORM, 1);  WRITE(U_BASE, 3)
#line 754 "regression-compile-tmp/asems412.imp"
_imp_WRITE(U->TYPE, 1);
#line 754 "regression-compile-tmp/asems412.imp"
_imp_WRITE(U->FORM, 1);
#line 754 "regression-compile-tmp/asems412.imp"
_imp_WRITE(U->BASE, 3);
                                                                //    755           WRITE(U_DISP,5)
#line 755 "regression-compile-tmp/asems412.imp"
_imp_WRITE(U->DISP, 5);
                                                                //    756           NEWLINE
#line 756 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //    757           SELECTOUTPUT(OBJECT)
#line 757 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    758        %FINISH
#line 758 "regression-compile-tmp/asems412.imp"
L_0066:;
                                                                //    759     %END
#line 759 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block REMEMBER at level 2
                                                                //    760     %INTEGERFN FIND USE(%INTEGER TYPE, FORM, BASE, DISP)
#line 760 "regression-compile-tmp/asems412.imp"
int FINDUSE( int TYPE, int FORM, int BASE, int DISP )
#line 760 "regression-compile-tmp/asems412.imp"
{
                                                                //    761        %RECORD(USEFM)%NAME U
#line 761 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U;
                                                                //    762        %INTEGER J, B, BB, BCA, BBCA
#line 762 "regression-compile-tmp/asems412.imp"
int J;
#line 762 "regression-compile-tmp/asems412.imp"
int B;
#line 762 "regression-compile-tmp/asems412.imp"
int BB;
#line 762 "regression-compile-tmp/asems412.imp"
int BCA;
#line 762 "regression-compile-tmp/asems412.imp"
int BBCA;
                                                                //    763        B = BASE&255;  BB = BASE>>8
#line 763 "regression-compile-tmp/asems412.imp"
B = ((BASE) & (255));
#line 763 "regression-compile-tmp/asems412.imp"
BB = (int)((((unsigned int)(BASE)) >> (8)));
                                                                //    764        %IF ACTIVITY(B) < 0 %THEN BCA = LIMEN+1 %ELSE BCA = USE(B)_CA
#line 764 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[B]) >= (0))) goto L_0067;
#line 764 "regression-compile-tmp/asems412.imp"
BCA = (((int)(LIMEN)) + (1));
#line 764 "regression-compile-tmp/asems412.imp"
goto L_0068;
#line 764 "regression-compile-tmp/asems412.imp"
L_0067:;
#line 764 "regression-compile-tmp/asems412.imp"
BCA = USE[(((int)(B)) - (1))].CA;
#line 764 "regression-compile-tmp/asems412.imp"
L_0068:;
                                                                //    765        %IF ACTIVITY(BB)< 0 %THEN BBCA= LIMEN+1 %ELSE BBCA= USE(BB)_CA
#line 765 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[BB]) >= (0))) goto L_0069;
#line 765 "regression-compile-tmp/asems412.imp"
BBCA = (((int)(LIMEN)) + (1));
#line 765 "regression-compile-tmp/asems412.imp"
goto L_006a;
#line 765 "regression-compile-tmp/asems412.imp"
L_0069:;
#line 765 "regression-compile-tmp/asems412.imp"
BBCA = USE[(((int)(BB)) - (1))].CA;
#line 765 "regression-compile-tmp/asems412.imp"
L_006a:;
                                                                //    766        %RESULT = 0 %IF BCA <= LIMEN %OR BBCA <= LIMEN
#line 766 "regression-compile-tmp/asems412.imp"
if (((BCA) <= (LIMEN))) goto L_0064;
#line 766 "regression-compile-tmp/asems412.imp"
if (((BBCA) > (LIMEN))) goto L_006b;
#line 766 "regression-compile-tmp/asems412.imp"
L_0064:;
#line 766 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 766 "regression-compile-tmp/asems412.imp"
L_006b:;
                                                                //    767        %FOR J = 1, 1, 40 %CYCLE
#line 767 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((40)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 40");
L_006c:;
if (J == 40) goto L_006d;
J += 1;
                                                                //    768           U == USE(J)
#line 768 "regression-compile-tmp/asems412.imp"
U = &USE[(((int)(J)) - (1))];
                                                                //    769           %IF BCA < U_CA %AND BBCA < U_CA %START
#line 769 "regression-compile-tmp/asems412.imp"
if (((BCA) >= (U->CA))) goto L_006f;
#line 769 "regression-compile-tmp/asems412.imp"
if (((BBCA) >= (U->CA))) goto L_006f;
                                                                //    770              %IF U_BASE = BASE  %AND U_DISP = DISP %START
#line 770 "regression-compile-tmp/asems412.imp"
if (((U->BASE) != (BASE))) goto L_0070;
#line 770 "regression-compile-tmp/asems412.imp"
if (((U->DISP) != (DISP))) goto L_0070;
                                                                //    771                 %IF U_TYPE = TYPE %AND U_FORM = FORM %START
#line 771 "regression-compile-tmp/asems412.imp"
if (((U->TYPE) != (TYPE))) goto L_0071;
#line 771 "regression-compile-tmp/asems412.imp"
if (((U->FORM) != (FORM))) goto L_0071;
                                                                //    772                    %IF J > STORE %START
#line 772 "regression-compile-tmp/asems412.imp"
if (((J) <= (20))) goto L_0072;
                                                                //    773                       J = J-STORE
#line 773 "regression-compile-tmp/asems412.imp"
J = (((int)(J)) - (20));
                                                                //    774                       USE(J) = U %IF USE(J)_CA <= LIMEN
#line 774 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(J)) - (1))].CA) > (LIMEN))) goto L_0073;
#line 774 "regression-compile-tmp/asems412.imp"
USE[(((int)(J)) - (1))] = *U;
#line 774 "regression-compile-tmp/asems412.imp"
L_0073:;
                                                                //    775                    %FINISH
#line 775 "regression-compile-tmp/asems412.imp"
L_0072:;
                                                                //    776                    CLAIM(J)
#line 776 "regression-compile-tmp/asems412.imp"
CLAIM(J);
                                                                //    777                    RELEASE(B);  RELEASE(BB)
#line 777 "regression-compile-tmp/asems412.imp"
RELEASE(B);
#line 777 "regression-compile-tmp/asems412.imp"
RELEASE(BB);
                                                                //    778                    %RESULT = J
#line 778 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return J;
                                                                //    779                 %FINISH
#line 779 "regression-compile-tmp/asems412.imp"
L_0071:;
                                                                //    780              %FINISH
#line 780 "regression-compile-tmp/asems412.imp"
L_0070:;
                                                                //    781           %FINISH
#line 781 "regression-compile-tmp/asems412.imp"
L_006f:;
                                                                //    782        %REPEAT
#line 782 "regression-compile-tmp/asems412.imp"
goto L_006c;
#line 782 "regression-compile-tmp/asems412.imp"
L_006d:;
                                                                //    783        %RESULT = 0
#line 783 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
                                                                //    784     %END
#line 784 "regression-compile-tmp/asems412.imp"
} // End of block FINDUSE at level 2
                                                                //    785     %INTEGERFN GPR(%INTEGER ADDR)
#line 785 "regression-compile-tmp/asems412.imp"
int GPR( int ADDR )
#line 785 "regression-compile-tmp/asems412.imp"
{
                                                                //    786        %RECORD(USEFM)%NAME UR, US
#line 786 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*UR;
#line 786 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*US;
                                                                //    787        %INTEGER R, BESTR, BESTCA, BOOTR, BOOTCA, REG, MAXCA
#line 787 "regression-compile-tmp/asems412.imp"
int R;
#line 787 "regression-compile-tmp/asems412.imp"
int BESTR;
#line 787 "regression-compile-tmp/asems412.imp"
int BESTCA;
#line 787 "regression-compile-tmp/asems412.imp"
int BOOTR;
#line 787 "regression-compile-tmp/asems412.imp"
int BOOTCA;
#line 787 "regression-compile-tmp/asems412.imp"
int REG;
#line 787 "regression-compile-tmp/asems412.imp"
int MAXCA;
                                                                //    788        %CONSTBYTEINTEGERARRAY PREF(0:11) =
#line 788 "regression-compile-tmp/asems412.imp"
const unsigned char PREF[12] = { 7, 10, 8, 6, 9, 11, 5, 4, 2, 3, 12, 1,  };
                                                                //    789                    P1, R11, R9, P2,
                                                                //    790                    R10, R12, R4, R3, R1, R2, LINK, R0
                                                                //    791  
                                                                //    792        BESTR = -1;  BOOTR = -1
#line 792 "regression-compile-tmp/asems412.imp"
BESTR = (-1);
#line 792 "regression-compile-tmp/asems412.imp"
BOOTR = (-1);
                                                                //    793        BESTCA = CA;  BOOTCA = CA
#line 793 "regression-compile-tmp/asems412.imp"
BESTCA = CA;
#line 793 "regression-compile-tmp/asems412.imp"
BOOTCA = CA;
                                                                //    794  
                                                                //    795        %CYCLE R = 0, 1, 11-ADDR
#line 795 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 0; _increment = 1; _final = (((int)(11)) - (ADDR)); R = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle R = 0, 1, (((int)(11)) - (ADDR))");
R -= _increment; _control -= _increment;
L_0074:;
if (R == _final) goto L_0075;
R += _increment; _control += _increment;
if (R != _control) _imp_signal(4,2,0,"Corrupt control variable R"); /* FOR loop control variable corrupted */
}
                                                                //    796           REG = PREF(R)
#line 796 "regression-compile-tmp/asems412.imp"
REG = PREF[R];
                                                                //    797           %IF ACTIVITY(REG) = 0 %START;! FREE
#line 797 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[REG]) != (0))) goto L_0077;
                                                                //    798              UR == USE(REG);  US == USE(REG+STORE)
#line 798 "regression-compile-tmp/asems412.imp"
UR = &USE[(((int)(REG)) - (1))];
#line 798 "regression-compile-tmp/asems412.imp"
US = &USE[(((int)((((int)(REG)) + (20)))) - (1))];
                                                                //    799              MAXCA = UR_CA
#line 799 "regression-compile-tmp/asems412.imp"
MAXCA = UR->CA;
                                                                //    800              MAXCA = US_CA %IF US_CA > MAXCA
#line 800 "regression-compile-tmp/asems412.imp"
if (((US->CA) <= (MAXCA))) goto L_0078;
#line 800 "regression-compile-tmp/asems412.imp"
MAXCA = US->CA;
#line 800 "regression-compile-tmp/asems412.imp"
L_0078:;
                                                                //    801              %RESULT = REG %IF MAXCA <= LIMEN;! NOT KNOWN
#line 801 "regression-compile-tmp/asems412.imp"
if (((MAXCA) > (LIMEN))) goto L_0079;
#line 801 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return REG;
#line 801 "regression-compile-tmp/asems412.imp"
L_0079:;
                                                                //    802              %IF MAXCA < BESTCA %START
#line 802 "regression-compile-tmp/asems412.imp"
if (((MAXCA) >= (BESTCA))) goto L_007a;
                                                                //    803                 BESTCA = MAXCA;  BESTR = REG
#line 803 "regression-compile-tmp/asems412.imp"
BESTCA = MAXCA;
#line 803 "regression-compile-tmp/asems412.imp"
BESTR = REG;
                                                                //    804              %FINISH
#line 804 "regression-compile-tmp/asems412.imp"
L_007a:;
                                                                //    805           %ELSE %IF 0 < ACTIVITY(REG) < 2 %AND USED(REG) < BOOTCA
#line 805 "regression-compile-tmp/asems412.imp"
goto L_007b;
#line 805 "regression-compile-tmp/asems412.imp"
L_0077:;
#line 805 "regression-compile-tmp/asems412.imp"
if ((((0) >= (ACTIVITY[REG]))) || (((ACTIVITY[REG]) >= (2)))) goto L_007c;
#line 805 "regression-compile-tmp/asems412.imp"
if (((USED[REG]) >= (BOOTCA))) goto L_007c;
                                                                //    806              BOOTR = REG;  BOOTCA = USED(REG)
#line 806 "regression-compile-tmp/asems412.imp"
BOOTR = REG;
#line 806 "regression-compile-tmp/asems412.imp"
BOOTCA = USED[REG];
                                                                //    807           %FINISH
#line 807 "regression-compile-tmp/asems412.imp"
L_007c:;
#line 807 "regression-compile-tmp/asems412.imp"
L_007b:;
                                                                //    808        %REPEAT
#line 808 "regression-compile-tmp/asems412.imp"
goto L_0074;
#line 808 "regression-compile-tmp/asems412.imp"
L_0075:;
                                                                //    809        %RESULT = BESTR %IF BESTR >= 0
#line 809 "regression-compile-tmp/asems412.imp"
if (((BESTR) < (0))) goto L_007d;
#line 809 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return BESTR;
#line 809 "regression-compile-tmp/asems412.imp"
L_007d:;
                                                                //    810        !  NONE FREE SO BOOT ONE OUT
                                                                //    811        BOOTR = R1 %IF BOOTR < 0;! NONE BETTER
#line 811 "regression-compile-tmp/asems412.imp"
if (((BOOTR) >= (0))) goto L_007e;
#line 811 "regression-compile-tmp/asems412.imp"
BOOTR = 2;
#line 811 "regression-compile-tmp/asems412.imp"
L_007e:;
                                                                //    812        HAZARD(BOOTR);  USED(BOOTR) = CA
#line 812 "regression-compile-tmp/asems412.imp"
HAZARD(BOOTR);
#line 812 "regression-compile-tmp/asems412.imp"
USED[BOOTR] = CA;
                                                                //    813        %RESULT = BOOTR
#line 813 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return BOOTR;
                                                                //    814     %END
#line 814 "regression-compile-tmp/asems412.imp"
} // End of block GPR at level 2
                                                                //    815     %INTEGERFN EVEN ODD PAIR
#line 815 "regression-compile-tmp/asems412.imp"
int EVENODDPAIR( void )
#line 815 "regression-compile-tmp/asems412.imp"
{
                                                                //    816        %CONSTBYTEINTEGERARRAY PAIRS(1:5) = R0, R10, R2, R4, LINK
#line 816 "regression-compile-tmp/asems412.imp"
const unsigned char PAIRS[5] = { 1, 9, 3, 5, 12,  };
                                                                //    817        %CONSTBYTEINTEGERARRAY NEXT(1:5)  = R1, R11, R3, P2, R9
#line 817 "regression-compile-tmp/asems412.imp"
const unsigned char NEXT[5] = { 2, 10, 4, 6, 8,  };
                                                                //    818        %INTEGER J, BEST, BESTCA, MAX, HELP, REG, NREG
#line 818 "regression-compile-tmp/asems412.imp"
int J;
#line 818 "regression-compile-tmp/asems412.imp"
int BEST;
#line 818 "regression-compile-tmp/asems412.imp"
int BESTCA;
#line 818 "regression-compile-tmp/asems412.imp"
int MAX;
#line 818 "regression-compile-tmp/asems412.imp"
int HELP;
#line 818 "regression-compile-tmp/asems412.imp"
int REG;
#line 818 "regression-compile-tmp/asems412.imp"
int NREG;
                                                                //    819        %RECORD(USEFM)%NAME U1, U2
#line 819 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U1;
#line 819 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U2;
                                                                //    820        BEST = 0;  BESTCA = CA;  HELP = 0
#line 820 "regression-compile-tmp/asems412.imp"
BEST = 0;
#line 820 "regression-compile-tmp/asems412.imp"
BESTCA = CA;
#line 820 "regression-compile-tmp/asems412.imp"
HELP = 0;
                                                                //    821        %CYCLE J = 1, 1, 5
#line 821 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((5)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 5");
L_007f:;
if (J == 5) goto L_0080;
J += 1;
                                                                //    822           REG = PAIRS(J);  NREG = NEXT(J)
#line 822 "regression-compile-tmp/asems412.imp"
REG = (PAIRS-1)[J];
#line 822 "regression-compile-tmp/asems412.imp"
NREG = (NEXT-1)[J];
                                                                //    823           U1 == USE(REG);  U2 == USE(NREG)
#line 823 "regression-compile-tmp/asems412.imp"
U1 = &USE[(((int)(REG)) - (1))];
#line 823 "regression-compile-tmp/asems412.imp"
U2 = &USE[(((int)(NREG)) - (1))];
                                                                //    824           %IF ACTIVITY(REG) = 0 %START
#line 824 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[REG]) != (0))) goto L_0082;
                                                                //    825              %IF ACTIVITY(NREG) = 0 %START
#line 825 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[NREG]) != (0))) goto L_0083;
                                                                //    826                 MAX = U1_CA
#line 826 "regression-compile-tmp/asems412.imp"
MAX = U1->CA;
                                                                //    827                 MAX = U2_CA %IF U2_CA > MAX
#line 827 "regression-compile-tmp/asems412.imp"
if (((U2->CA) <= (MAX))) goto L_0084;
#line 827 "regression-compile-tmp/asems412.imp"
MAX = U2->CA;
#line 827 "regression-compile-tmp/asems412.imp"
L_0084:;
                                                                //    828                 %IF MAX < BESTCA %START
#line 828 "regression-compile-tmp/asems412.imp"
if (((MAX) >= (BESTCA))) goto L_0085;
                                                                //    829                    BESTCA = MAX;  BEST = J
#line 829 "regression-compile-tmp/asems412.imp"
BESTCA = MAX;
#line 829 "regression-compile-tmp/asems412.imp"
BEST = J;
                                                                //    830                 %FINISH
#line 830 "regression-compile-tmp/asems412.imp"
L_0085:;
                                                                //    831              %ELSE
#line 831 "regression-compile-tmp/asems412.imp"
goto L_0086;
#line 831 "regression-compile-tmp/asems412.imp"
L_0083:;
                                                                //    832                 HELP = J
#line 832 "regression-compile-tmp/asems412.imp"
HELP = J;
                                                                //    833              %FINISH
#line 833 "regression-compile-tmp/asems412.imp"
L_0086:;
                                                                //    834           %ELSE
#line 834 "regression-compile-tmp/asems412.imp"
goto L_0087;
#line 834 "regression-compile-tmp/asems412.imp"
L_0082:;
                                                                //    835              HELP = J %IF ACTIVITY(NREG) = 0
#line 835 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[NREG]) != (0))) goto L_0088;
#line 835 "regression-compile-tmp/asems412.imp"
HELP = J;
#line 835 "regression-compile-tmp/asems412.imp"
L_0088:;
                                                                //    836           %FINISH
#line 836 "regression-compile-tmp/asems412.imp"
L_0087:;
                                                                //    837        %REPEAT
#line 837 "regression-compile-tmp/asems412.imp"
goto L_007f;
#line 837 "regression-compile-tmp/asems412.imp"
L_0080:;
                                                                //    838        %RESULT = NEXT(BEST) %IF BEST # 0
#line 838 "regression-compile-tmp/asems412.imp"
if (((BEST) == (0))) goto L_0089;
#line 838 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return (NEXT-1)[BEST];
#line 838 "regression-compile-tmp/asems412.imp"
L_0089:;
                                                                //    839        HELP = 2 %IF HELP = 0
#line 839 "regression-compile-tmp/asems412.imp"
if (((HELP) != (0))) goto L_008a;
#line 839 "regression-compile-tmp/asems412.imp"
HELP = 2;
#line 839 "regression-compile-tmp/asems412.imp"
L_008a:;
                                                                //    840        REG = PAIRS(HELP);  NREG = NEXT(HELP)
#line 840 "regression-compile-tmp/asems412.imp"
REG = (PAIRS-1)[HELP];
#line 840 "regression-compile-tmp/asems412.imp"
NREG = (NEXT-1)[HELP];
                                                                //    841        HAZARD(REG);  HAZARD(NREG)
#line 841 "regression-compile-tmp/asems412.imp"
HAZARD(REG);
#line 841 "regression-compile-tmp/asems412.imp"
HAZARD(NREG);
                                                                //    842        %RESULT = NREG
#line 842 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return NREG;
                                                                //    843     %END
#line 843 "regression-compile-tmp/asems412.imp"
} // End of block EVENODDPAIR at level 2
                                                                //    844     %INTEGERFN FPR
#line 844 "regression-compile-tmp/asems412.imp"
int FPR( void )
#line 844 "regression-compile-tmp/asems412.imp"
{
                                                                //    845        %RECORD(USEFM)%NAME UR, US
#line 845 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*UR;
#line 845 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*US;
                                                                //    846        %INTEGER R, BESTR, BESTCA, BOOTR, BOOTCA, MAXCA, BOOTA
#line 846 "regression-compile-tmp/asems412.imp"
int R;
#line 846 "regression-compile-tmp/asems412.imp"
int BESTR;
#line 846 "regression-compile-tmp/asems412.imp"
int BESTCA;
#line 846 "regression-compile-tmp/asems412.imp"
int BOOTR;
#line 846 "regression-compile-tmp/asems412.imp"
int BOOTCA;
#line 846 "regression-compile-tmp/asems412.imp"
int MAXCA;
#line 846 "regression-compile-tmp/asems412.imp"
int BOOTA;
                                                                //    847        BESTR = -1;  BESTCA = CA
#line 847 "regression-compile-tmp/asems412.imp"
BESTR = (-1);
#line 847 "regression-compile-tmp/asems412.imp"
BESTCA = CA;
                                                                //    848        BOOTR = -1;  BOOTCA = CA;  BOOTA = CA
#line 848 "regression-compile-tmp/asems412.imp"
BOOTR = (-1);
#line 848 "regression-compile-tmp/asems412.imp"
BOOTCA = CA;
#line 848 "regression-compile-tmp/asems412.imp"
BOOTA = CA;
                                                                //    849        %CYCLE R = FPR0, 1, FPR14
#line 849 "regression-compile-tmp/asems412.imp"
R = 12;
if ((((20)-(13)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle R = 13, 1, 20");
L_008b:;
if (R == 20) goto L_008c;
R += 1;
                                                                //    850           UR == USE(R);  US == USE(R+STORE)
#line 850 "regression-compile-tmp/asems412.imp"
UR = &USE[(((int)(R)) - (1))];
#line 850 "regression-compile-tmp/asems412.imp"
US = &USE[(((int)((((int)(R)) + (20)))) - (1))];
                                                                //    851           %IF ACTIVITY(R) = 0 %START
#line 851 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[R]) != (0))) goto L_008e;
                                                                //    852              MAXCA = UR_CA;  MAXCA = US_CA %IF US_CA > MAXCA
#line 852 "regression-compile-tmp/asems412.imp"
MAXCA = UR->CA;
#line 852 "regression-compile-tmp/asems412.imp"
if (((US->CA) <= (MAXCA))) goto L_008f;
#line 852 "regression-compile-tmp/asems412.imp"
MAXCA = US->CA;
#line 852 "regression-compile-tmp/asems412.imp"
L_008f:;
                                                                //    853              %RESULT = R %IF MAXCA <= LIMEN
#line 853 "regression-compile-tmp/asems412.imp"
if (((MAXCA) > (LIMEN))) goto L_0090;
#line 853 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return R;
#line 853 "regression-compile-tmp/asems412.imp"
L_0090:;
                                                                //    854              %IF MAXCA < BESTCA %START
#line 854 "regression-compile-tmp/asems412.imp"
if (((MAXCA) >= (BESTCA))) goto L_0091;
                                                                //    855                 BESTR = R;  BESTCA = MAXCA
#line 855 "regression-compile-tmp/asems412.imp"
BESTR = R;
#line 855 "regression-compile-tmp/asems412.imp"
BESTCA = MAXCA;
                                                                //    856              %FINISH
#line 856 "regression-compile-tmp/asems412.imp"
L_0091:;
                                                                //    857           %ELSE %IF 0 < ACTIVITY(R) < 2 %AND USED(R) < BOOTCA
#line 857 "regression-compile-tmp/asems412.imp"
goto L_0092;
#line 857 "regression-compile-tmp/asems412.imp"
L_008e:;
#line 857 "regression-compile-tmp/asems412.imp"
if ((((0) >= (ACTIVITY[R]))) || (((ACTIVITY[R]) >= (2)))) goto L_0093;
#line 857 "regression-compile-tmp/asems412.imp"
if (((USED[R]) >= (BOOTCA))) goto L_0093;
                                                                //    858              BOOTCA = USED(R);  BOOTR = R
#line 858 "regression-compile-tmp/asems412.imp"
BOOTCA = USED[R];
#line 858 "regression-compile-tmp/asems412.imp"
BOOTR = R;
                                                                //    859           %FINISH
#line 859 "regression-compile-tmp/asems412.imp"
L_0093:;
#line 859 "regression-compile-tmp/asems412.imp"
L_0092:;
                                                                //    860        %REPEAT
#line 860 "regression-compile-tmp/asems412.imp"
goto L_008b;
#line 860 "regression-compile-tmp/asems412.imp"
L_008c:;
                                                                //    861        %RESULT = BESTR %UNLESS BESTR < 0
#line 861 "regression-compile-tmp/asems412.imp"
if (((BESTR) < (0))) goto L_0094;
#line 861 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return BESTR;
#line 861 "regression-compile-tmp/asems412.imp"
L_0094:;
                                                                //    862        BOOTR = FPR0 %IF BOOTR < 0
#line 862 "regression-compile-tmp/asems412.imp"
if (((BOOTR) >= (0))) goto L_0095;
#line 862 "regression-compile-tmp/asems412.imp"
BOOTR = 13;
#line 862 "regression-compile-tmp/asems412.imp"
L_0095:;
                                                                //    863        HAZARD(BOOTR)
#line 863 "regression-compile-tmp/asems412.imp"
HAZARD(BOOTR);
                                                                //    864        %RESULT = BOOTR
#line 864 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return BOOTR;
                                                                //    865     %END
#line 865 "regression-compile-tmp/asems412.imp"
} // End of block FPR at level 2
                                                                //    866     %ROUTINE CHECK RELEASED
#line 866 "regression-compile-tmp/asems412.imp"
void CHECKRELEASED( void )
#line 866 "regression-compile-tmp/asems412.imp"
{
                                                                //    867        %INTEGER J
#line 867 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    868        %FOR J = 1, 1, 20 %CYCLE
#line 868 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((20)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 20");
L_0096:;
if (J == 20) goto L_0097;
J += 1;
                                                                //    869           ABORT(2) %IF ACTIVITY(J) > 0
#line 869 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[J]) <= (0))) goto L_0099;
#line 869 "regression-compile-tmp/asems412.imp"
ABORT(2);
#line 869 "regression-compile-tmp/asems412.imp"
L_0099:;
                                                                //    870        %REPEAT
#line 870 "regression-compile-tmp/asems412.imp"
goto L_0096;
#line 870 "regression-compile-tmp/asems412.imp"
L_0097:;
                                                                //    871     %END
#line 871 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CHECKRELEASED at level 2
                                                                //    872  
                                                                //    873  
                                                                //    874  ! OBJECT FILE HANDLING ROUTINES
                                                                //    875  
                                                                //    876     %ROUTINE COUNT DIAGS
#line 876 "regression-compile-tmp/asems412.imp"
void COUNTDIAGS( void )
#line 876 "regression-compile-tmp/asems412.imp"
{
                                                                //    877        %OWNINTEGER HERE = 0
#line 877 "regression-compile-tmp/asems412.imp"
static int HERE = 0;
                                                                //    878        LINE SIZE = LINE SIZE+4 %IF HERE # CURRENT LINE
#line 878 "regression-compile-tmp/asems412.imp"
if (((HERE) == (CURRENTLINE))) goto L_009a;
#line 878 "regression-compile-tmp/asems412.imp"
LINESIZE = (((int)(LINESIZE)) + (4));
#line 878 "regression-compile-tmp/asems412.imp"
L_009a:;
                                                                //    879        HERE = CURRENT LINE
#line 879 "regression-compile-tmp/asems412.imp"
HERE = CURRENTLINE;
                                                                //    880     %END
#line 880 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COUNTDIAGS at level 2
                                                                //    881  
                                                                //    882     %ROUTINE  PUT(%SHORTINTEGER  N)
#line 882 "regression-compile-tmp/asems412.imp"
void PUT( short N )
#line 882 "regression-compile-tmp/asems412.imp"
{
                                                                //    883        PRINT SYMBOL(N>>8);  PRINT SYMBOL(N&255)
#line 883 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL((short)((((unsigned short)(N)) >> (8))));
#line 883 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(((N) & (255)));
                                                                //    884     %END
#line 884 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PUT at level 2
                                                                //    885     %ROUTINE  DUMP(%SHORTINTEGER  N)
#line 885 "regression-compile-tmp/asems412.imp"
void DUMP( short N )
#line 885 "regression-compile-tmp/asems412.imp"
{
                                                                //    886        PRINT SYMBOL(LOAD CODE);  PUT(N)
#line 886 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(2);
#line 886 "regression-compile-tmp/asems412.imp"
PUT(N);
                                                                //    887        DECODE(N) %IF CONTROL < 0
#line 887 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_009b;
#line 887 "regression-compile-tmp/asems412.imp"
DECODE(N);
#line 887 "regression-compile-tmp/asems412.imp"
L_009b:;
                                                                //    888        CA = CA+2
#line 888 "regression-compile-tmp/asems412.imp"
CA = (((int)(CA)) + (2));
                                                                //    889     %END
#line 889 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DUMP at level 2
                                                                //    890     %ROUTINE  GHALF(%SHORTINTEGER  N)
#line 890 "regression-compile-tmp/asems412.imp"
void GHALF( short N )
#line 890 "regression-compile-tmp/asems412.imp"
{
                                                                //    891        PRINT SYMBOL(LOAD GLA);  PUT(N)
#line 891 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(3);
#line 891 "regression-compile-tmp/asems412.imp"
PUT(N);
                                                                //    892        GA = GA+2
#line 892 "regression-compile-tmp/asems412.imp"
GA = (((int)(GA)) + (2));
                                                                //    893     %END
#line 893 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GHALF at level 2
                                                                //    894     %ROUTINE  GWORD(%INTEGER  N)
#line 894 "regression-compile-tmp/asems412.imp"
void GWORD( int N )
#line 894 "regression-compile-tmp/asems412.imp"
{
                                                                //    895        GHALF(N>>16);  GHALF(N&X'FFFF')
#line 895 "regression-compile-tmp/asems412.imp"
GHALF((int)((((unsigned int)(N)) >> (16))));
#line 895 "regression-compile-tmp/asems412.imp"
GHALF(((N) & (65535)));
                                                                //    896     %END
#line 896 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GWORD at level 2
                                                                //    897     %ROUTINE  GBYTE(%SHORTINTEGER  N)
#line 897 "regression-compile-tmp/asems412.imp"
void GBYTE( short N )
#line 897 "regression-compile-tmp/asems412.imp"
{
                                                                //    898     %OWNINTEGER  V=0, F=0
#line 898 "regression-compile-tmp/asems412.imp"
static int V = 0;
#line 898 "regression-compile-tmp/asems412.imp"
static int F = 0;
                                                                //    899        F = \F
#line 899 "regression-compile-tmp/asems412.imp"
F = (~(F));
                                                                //    900        %IF F=0 %START
#line 900 "regression-compile-tmp/asems412.imp"
if (((F) != (0))) goto L_009c;
                                                                //    901           PRINT SYMBOL(LOAD GLA);  PUT(V<<8+N)
#line 901 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(3);
#line 901 "regression-compile-tmp/asems412.imp"
PUT((((short)(((V) << (8)))) + (N)));
                                                                //    902        %ELSE
#line 902 "regression-compile-tmp/asems412.imp"
goto L_009d;
#line 902 "regression-compile-tmp/asems412.imp"
L_009c:;
                                                                //    903           V = N
#line 903 "regression-compile-tmp/asems412.imp"
V = N;
                                                                //    904        %finish
#line 904 "regression-compile-tmp/asems412.imp"
L_009d:;
                                                                //    905        GA = GA+1
#line 905 "regression-compile-tmp/asems412.imp"
GA = (((int)(GA)) + (1));
                                                                //    906     %END
#line 906 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GBYTE at level 2
                                                                //    907     %ROUTINE  PATCH(%INTEGER  WHAT, WHERE)
#line 907 "regression-compile-tmp/asems412.imp"
void PATCH( int WHAT, int WHERE )
#line 907 "regression-compile-tmp/asems412.imp"
{
                                                                //    908        SELECT OUTPUT(DIRECT)
#line 908 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
                                                                //    909        PRINT SYMBOL(PATCH CODE);  PUT(WHAT);  PUT(WHERE)
#line 909 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(7);
#line 909 "regression-compile-tmp/asems412.imp"
PUT(WHAT);
#line 909 "regression-compile-tmp/asems412.imp"
PUT(WHERE);
                                                                //    910        SELECT OUTPUT(OBJECT)
#line 910 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    911     %END
#line 911 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PATCH at level 2
                                                                //    912     %ROUTINE  GPATCH(%INTEGER  WHAT, WHERE)
#line 912 "regression-compile-tmp/asems412.imp"
void GPATCH( int WHAT, int WHERE )
#line 912 "regression-compile-tmp/asems412.imp"
{
                                                                //    913        SELECT OUTPUT(DIRECT)
#line 913 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
                                                                //    914        PRINT SYMBOL(PATCH GLA);  PUT(WHAT);  PUT(WHERE)
#line 914 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(6);
#line 914 "regression-compile-tmp/asems412.imp"
PUT(WHAT);
#line 914 "regression-compile-tmp/asems412.imp"
PUT(WHERE);
                                                                //    915        SELECT OUTPUT(OBJECT)
#line 915 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    916     %END
#line 916 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GPATCH at level 2
                                                                //    917     %ROUTINE  GFIX(%INTEGER  ALIGNMENT)
#line 917 "regression-compile-tmp/asems412.imp"
void GFIX( int ALIGNMENT )
#line 917 "regression-compile-tmp/asems412.imp"
{
                                                                //    918        GBYTE(0) %WHILE GA&(ALIGNMENT-1) # 0
#line 918 "regression-compile-tmp/asems412.imp"
L_009e:;
#line 918 "regression-compile-tmp/asems412.imp"
if (((((GA) & ((((int)(ALIGNMENT)) - (1))))) == (0))) goto L_009f;
#line 918 "regression-compile-tmp/asems412.imp"
GBYTE(0);
#line 918 "regression-compile-tmp/asems412.imp"
goto L_009e;
#line 918 "regression-compile-tmp/asems412.imp"
L_009f:;
                                                                //    919     %END
#line 919 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GFIX at level 2
                                                                //    920     %ROUTINE  SF(%SHORTINTEGER OP, R, L)
#line 920 "regression-compile-tmp/asems412.imp"
void SF( short OP, short R, short L )
#line 920 "regression-compile-tmp/asems412.imp"
{
                                                                //    921        DUMP(OP + ACTUAL(R)<<4 + L)
#line 921 "regression-compile-tmp/asems412.imp"
DUMP((((short)(((OP) + ((short)(((ACTUAL[R]) << (4))))))) + (L)));
                                                                //    922     %END
#line 922 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SF at level 2
                                                                //    923     %ROUTINE  RR(%SHORTINTEGER  OP, R1, R2)
#line 923 "regression-compile-tmp/asems412.imp"
void RR( short OP, short R1, short R2 )
#line 923 "regression-compile-tmp/asems412.imp"
{
                                                                //    924        DUMP(OP + ACTUAL(R1)<<4 + ACTUAL(R2))
#line 924 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((OP) + ((short)(((ACTUAL[R1]) << (4))))))) + (ACTUAL[R2])));
                                                                //    925        RELEASE(R2)
#line 925 "regression-compile-tmp/asems412.imp"
RELEASE(R2);
                                                                //    926     %END
#line 926 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RR at level 2
                                                                //    927     %ROUTINE  RX(%INTEGER  OP, R, X, D)
#line 927 "regression-compile-tmp/asems412.imp"
void RX( int OP, int R, int X, int D )
#line 927 "regression-compile-tmp/asems412.imp"
{
                                                                //    928        ABORT(5) %IF X=R0 %OR D<0 %OR D>X'3FFF'
#line 928 "regression-compile-tmp/asems412.imp"
if (((X) == (1))) goto L_00a0;
#line 928 "regression-compile-tmp/asems412.imp"
if (((D) < (0))) goto L_00a0;
#line 928 "regression-compile-tmp/asems412.imp"
if (((D) <= (16383))) goto L_00a1;
#line 928 "regression-compile-tmp/asems412.imp"
L_00a0:;
#line 928 "regression-compile-tmp/asems412.imp"
ABORT(5);
#line 928 "regression-compile-tmp/asems412.imp"
L_00a1:;
                                                                //    929        RELEASE(X)
#line 929 "regression-compile-tmp/asems412.imp"
RELEASE(X);
                                                                //    930        DUMP(OP + ACTUAL(R)<<4 + ACTUAL(X));  DUMP(D)
#line 930 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((OP) + ((int)(((ACTUAL[R]) << (4))))))) + (ACTUAL[X])));
#line 930 "regression-compile-tmp/asems412.imp"
DUMP(D);
                                                                //    931        COUNT DIAGS %IF OP = BAL
#line 931 "regression-compile-tmp/asems412.imp"
if (((OP) != (16640))) goto L_00a2;
#line 931 "regression-compile-tmp/asems412.imp"
COUNTDIAGS();
#line 931 "regression-compile-tmp/asems412.imp"
L_00a2:;
                                                                //    932        %IF CONTROL&UNASS DIAG # 0 %START
#line 932 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_00a3;
                                                                //    933           %RETURN %IF OP # LW %AND OP # LE
#line 933 "regression-compile-tmp/asems412.imp"
if (((OP) == (22528))) goto L_00a4;
#line 933 "regression-compile-tmp/asems412.imp"
if (((OP) == (26624))) goto L_00a4;
#line 933 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 933 "regression-compile-tmp/asems412.imp"
L_00a4:;
                                                                //    934           %RETURN %IF X = LOCAL %AND D >= MIN TEMP
#line 934 "regression-compile-tmp/asems412.imp"
if (((X) != (LOCAL))) goto L_00a5;
#line 934 "regression-compile-tmp/asems412.imp"
if (((D) < (MINTEMP))) goto L_00a5;
#line 934 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 934 "regression-compile-tmp/asems412.imp"
L_00a5:;
                                                                //    935           %IF OP = LW %THEN OP = CL %ELSE OP = CE
#line 935 "regression-compile-tmp/asems412.imp"
if (((OP) != (22528))) goto L_00a6;
#line 935 "regression-compile-tmp/asems412.imp"
OP = 21760;
#line 935 "regression-compile-tmp/asems412.imp"
goto L_00a7;
#line 935 "regression-compile-tmp/asems412.imp"
L_00a6:;
#line 935 "regression-compile-tmp/asems412.imp"
OP = 26880;
#line 935 "regression-compile-tmp/asems412.imp"
L_00a7:;
                                                                //    936           DUMP(OP+ACTUAL(R)<<4+ACTUAL(CODE))
#line 936 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((OP) + ((int)(((ACTUAL[R]) << (4))))))) + (ACTUAL[44])));
                                                                //    937           DUMP(UNASS PAT)
#line 937 "regression-compile-tmp/asems412.imp"
DUMP(16);
                                                                //    938           PRINTSYMBOL(DLINE);          ! INFORM DIAGS OF 'BALR'
#line 938 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(10);
                                                                //    939           DUMP(ENTER UNASS)
#line 939 "regression-compile-tmp/asems412.imp"
DUMP(ENTERUNASS);
                                                                //    940           COUNT DIAGS
#line 940 "regression-compile-tmp/asems412.imp"
COUNTDIAGS();
                                                                //    941        %FINISH
#line 941 "regression-compile-tmp/asems412.imp"
L_00a3:;
                                                                //    942     %END
#line 942 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RX at level 2
                                                                //    943     %ROUTINE  RI2(%INTEGER  OP, R, X, D)
#line 943 "regression-compile-tmp/asems412.imp"
void RI2( int OP, int R, int X, int D )
#line 943 "regression-compile-tmp/asems412.imp"
{
                                                                //    944        ABORT(5) %IF X=R0
#line 944 "regression-compile-tmp/asems412.imp"
if (((X) != (1))) goto L_00a8;
#line 944 "regression-compile-tmp/asems412.imp"
ABORT(5);
#line 944 "regression-compile-tmp/asems412.imp"
L_00a8:;
                                                                //    945        RELEASE(X)
#line 945 "regression-compile-tmp/asems412.imp"
RELEASE(X);
                                                                //    946        DUMP(OP + ACTUAL(R)<<4 + ACTUAL(X));  DUMP(D)
#line 946 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((OP) + ((int)(((ACTUAL[R]) << (4))))))) + (ACTUAL[X])));
#line 946 "regression-compile-tmp/asems412.imp"
DUMP(D);
                                                                //    947        COUNT DIAGS %IF OP = BAL;     ! IF PERM REFERENCE
#line 947 "regression-compile-tmp/asems412.imp"
if (((OP) != (16640))) goto L_00a9;
#line 947 "regression-compile-tmp/asems412.imp"
COUNTDIAGS();
#line 947 "regression-compile-tmp/asems412.imp"
L_00a9:;
                                                                //    948     %END
#line 948 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RI2 at level 2
                                                                //    949     %ROUTINE  RI3(%INTEGER  OP, R, X, D)
#line 949 "regression-compile-tmp/asems412.imp"
void RI3( int OP, int R, int X, int D )
#line 949 "regression-compile-tmp/asems412.imp"
{
                                                                //    950        ABORT(5) %IF X=R0
#line 950 "regression-compile-tmp/asems412.imp"
if (((X) != (1))) goto L_00aa;
#line 950 "regression-compile-tmp/asems412.imp"
ABORT(5);
#line 950 "regression-compile-tmp/asems412.imp"
L_00aa:;
                                                                //    951        RELEASE(X)
#line 951 "regression-compile-tmp/asems412.imp"
RELEASE(X);
                                                                //    952        DUMP(OP + ACTUAL(R)<<4 + ACTUAL(X)); DUMP(D>>16); DUMP(D&X'FFFF')
#line 952 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((OP) + ((int)(((ACTUAL[R]) << (4))))))) + (ACTUAL[X])));
#line 952 "regression-compile-tmp/asems412.imp"
DUMP((int)((((unsigned int)(D)) >> (16))));
#line 952 "regression-compile-tmp/asems412.imp"
DUMP(((D) & (65535)));
                                                                //    953     %END
#line 953 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RI3 at level 2
                                                                //    954     %ROUTINE  DEFINE TAG(%SHORTINTEGER  REF)
#line 954 "regression-compile-tmp/asems412.imp"
void DEFINETAG( short REF )
#line 954 "regression-compile-tmp/asems412.imp"
{
                                                                //    955        SELECT OUTPUT(DIRECT)
#line 955 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
                                                                //    956        PRINT SYMBOL(TAG DEF);  PUT(REF);  PUT(CA)
#line 956 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(1);
#line 956 "regression-compile-tmp/asems412.imp"
PUT(REF);
#line 956 "regression-compile-tmp/asems412.imp"
PUT(CA);
                                                                //    957        SELECT OUTPUT(OBJECT)
#line 957 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    958     %END
#line 958 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DEFINETAG at level 2
                                                                //    959     %ROUTINE  DEFINE REFERENCE(%INTEGER  REF, TYPE)
#line 959 "regression-compile-tmp/asems412.imp"
void DEFINEREFERENCE( int REF, int TYPE )
#line 959 "regression-compile-tmp/asems412.imp"
{
                                                                //    960        SELECT OUTPUT(DIRECT)
#line 960 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
                                                                //    961        PRINT SYMBOL(TYPE);  PUT(REF);  PUT(CA)
#line 961 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(TYPE);
#line 961 "regression-compile-tmp/asems412.imp"
PUT(REF);
#line 961 "regression-compile-tmp/asems412.imp"
PUT(CA);
                                                                //    962        SELECT OUTPUT(OBJECT)
#line 962 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //    963     %END
#line 963 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DEFINEREFERENCE at level 2
                                                                //    964     %ROUTINE  SET LINE
#line 964 "regression-compile-tmp/asems412.imp"
void SETLINE( void )
#line 964 "regression-compile-tmp/asems412.imp"
{
                                                                //    965     %OWNINTEGER  HERE = 0
#line 965 "regression-compile-tmp/asems412.imp"
static int HERE = 0;
                                                                //    966        CURRENT LINE = TAG
#line 966 "regression-compile-tmp/asems412.imp"
CURRENTLINE = TAG();
                                                                //    967        %WHILE CURRENT LINE > HERE %CYCLE
#line 967 "regression-compile-tmp/asems412.imp"
L_00ab:;
#line 967 "regression-compile-tmp/asems412.imp"
if (((CURRENTLINE) <= (HERE))) goto L_00ac;
                                                                //    968           HERE = HERE+1;  PRINT SYMBOL(LINE FLAG)
#line 968 "regression-compile-tmp/asems412.imp"
HERE = (((int)(HERE)) + (1));
#line 968 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(4);
                                                                //    969        %REPEAT
#line 969 "regression-compile-tmp/asems412.imp"
goto L_00ab;
#line 969 "regression-compile-tmp/asems412.imp"
L_00ac:;
                                                                //    970     %END
#line 970 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SETLINE at level 2
                                                                //    971  
                                                                //    972  ! ENVIRONMENT CONTROL
                                                                //    973  
                                                                //    974     %RECORD(ENVFM)%MAP ENVIRONMENT(%SHORTINTEGER LABEL)
#line 974 "regression-compile-tmp/asems412.imp"
 ENVFM /*map*/*ENVIRONMENT( short LABEL )
#line 974 "regression-compile-tmp/asems412.imp"
{
                                                                //    975        %INTEGER J
#line 975 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    976        %RECORD(ENVFM)%NAME E
#line 976 "regression-compile-tmp/asems412.imp"
 ENVFM /*name*/*E;
                                                                //    977        %RESULT == NULL ENV %IF LABEL <= 0
#line 977 "regression-compile-tmp/asems412.imp"
if (((LABEL) > (0))) goto L_00ae;
#line 977 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return &NULLENV;
#line 977 "regression-compile-tmp/asems412.imp"
L_00ae:;
                                                                //    978        %FOR J = MAX ENVIRS, -1, 0 %CYCLE
#line 978 "regression-compile-tmp/asems412.imp"
J = 14;
if ((((0)-(13)) % ((-1))) != 0) _imp_signal(5,1,0,"Illegal cycle J = 13, (-1), 0");
L_00af:;
if (J == 0) goto L_00b0;
J += (-1);
                                                                //    979           E == ENVIR(J)
#line 979 "regression-compile-tmp/asems412.imp"
E = &ENVIR[J];
                                                                //    980           %RESULT == E %IF E_LABEL = LABEL
#line 980 "regression-compile-tmp/asems412.imp"
if (((E->LABEL) != (LABEL))) goto L_00b2;
#line 980 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return E;
#line 980 "regression-compile-tmp/asems412.imp"
L_00b2:;
                                                                //    981        %REPEAT
#line 981 "regression-compile-tmp/asems412.imp"
goto L_00af;
#line 981 "regression-compile-tmp/asems412.imp"
L_00b0:;
                                                                //    982        %RESULT == NULL ENV
#line 982 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return &NULLENV;
                                                                //    983     %END
#line 983 "regression-compile-tmp/asems412.imp"
} // End of block ENVIRONMENT at level 2
                                                                //    984     %ROUTINE REMEMBER ENVIRONMENT(%SHORTINTEGER LABEL)
#line 984 "regression-compile-tmp/asems412.imp"
void REMEMBERENVIRONMENT( short LABEL )
#line 984 "regression-compile-tmp/asems412.imp"
{
                                                                //    985        %INTEGER K
#line 985 "regression-compile-tmp/asems412.imp"
int K;
                                                                //    986        %RECORD(ENVFM)%NAME E
#line 986 "regression-compile-tmp/asems412.imp"
 ENVFM /*name*/*E;
                                                                //    987        %RETURN %IF LABEL <= 0
#line 987 "regression-compile-tmp/asems412.imp"
if (((LABEL) > (0))) goto L_00b3;
#line 987 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 987 "regression-compile-tmp/asems412.imp"
L_00b3:;
                                                                //    988        E == ENVIRONMENT(LABEL)
#line 988 "regression-compile-tmp/asems412.imp"
E = ENVIRONMENT(LABEL);
                                                                //    989        E_LABEL = 0
#line 989 "regression-compile-tmp/asems412.imp"
E->LABEL = 0;
                                                                //    990        ENVP = ENVP+1;  ENVP = 0 %IF ENVP > MAX ENVIRS
#line 990 "regression-compile-tmp/asems412.imp"
ENVP = (((int)(ENVP)) + (1));
#line 990 "regression-compile-tmp/asems412.imp"
if (((ENVP) <= (13))) goto L_00b4;
#line 990 "regression-compile-tmp/asems412.imp"
ENVP = 0;
#line 990 "regression-compile-tmp/asems412.imp"
L_00b4:;
                                                                //    991        E == ENVIR(ENVP)
#line 991 "regression-compile-tmp/asems412.imp"
E = &ENVIR[ENVP];
                                                                //    992        E_LABEL = LABEL
#line 992 "regression-compile-tmp/asems412.imp"
E->LABEL = LABEL;
                                                                //    993        E_LIMEN = LIMEN
#line 993 "regression-compile-tmp/asems412.imp"
E->LIMEN = LIMEN;
                                                                //    994        E_E(K) = USE(K) %FOR K = 1, 1, 40
#line 994 "regression-compile-tmp/asems412.imp"
K = 0;
if ((((40)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle K = 1, 1, 40");
L_00b5:;
if (K == 40) goto L_00b6;
K += 1;
#line 994 "regression-compile-tmp/asems412.imp"
E->E[(((int)(K)) - (1))] = USE[(((int)(K)) - (1))];
#line 994 "regression-compile-tmp/asems412.imp"
goto L_00b5;
#line 994 "regression-compile-tmp/asems412.imp"
L_00b6:;
                                                                //    995     %END
#line 995 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block REMEMBERENVIRONMENT at level 2
                                                                //    996     %ROUTINE MERGE ENVIRONMENT(%SHORTINTEGER LABEL)
#line 996 "regression-compile-tmp/asems412.imp"
void MERGEENVIRONMENT( short LABEL )
#line 996 "regression-compile-tmp/asems412.imp"
{
                                                                //    997        %INTEGER J
#line 997 "regression-compile-tmp/asems412.imp"
int J;
                                                                //    998        %RECORD(ENVFM)%NAME E
#line 998 "regression-compile-tmp/asems412.imp"
 ENVFM /*name*/*E;
                                                                //    999        %RECORD(USEFM)%NAME U, V
#line 999 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U;
#line 999 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*V;
                                                                //   1000        E == ENVIRONMENT(LABEL)
#line 1000 "regression-compile-tmp/asems412.imp"
E = ENVIRONMENT(LABEL);
                                                                //   1001        %UNLESS E == NULL ENV %START
#line 1001 "regression-compile-tmp/asems412.imp"
if (((E) == (&NULLENV))) goto L_00b8;
                                                                //   1002           %FOR J = 1, 1, 40 %CYCLE
#line 1002 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((40)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 40");
L_00b9:;
if (J == 40) goto L_00ba;
J += 1;
                                                                //   1003              U == USE(J)
#line 1003 "regression-compile-tmp/asems412.imp"
U = &USE[(((int)(J)) - (1))];
                                                                //   1004              V == E_E(J)
#line 1004 "regression-compile-tmp/asems412.imp"
V = &E->E[(((int)(J)) - (1))];
                                                                //   1005              V_CA = E_LIMEN %UNLESS U_BASE = V_BASE %C
#line 1005 "regression-compile-tmp/asems412.imp"
if (((U->BASE) != (V->BASE))) goto L_00bc;
#line 1005 "regression-compile-tmp/asems412.imp"
if (((U->DISP) != (V->DISP))) goto L_00bc;
#line 1005 "regression-compile-tmp/asems412.imp"
if (((U->FORM) != (V->FORM))) goto L_00bc;
#line 1005 "regression-compile-tmp/asems412.imp"
if (((U->TYPE) != (V->TYPE))) goto L_00bc;
#line 1005 "regression-compile-tmp/asems412.imp"
if (((U->CA) > (LIMEN))) goto L_00bd;
#line 1005 "regression-compile-tmp/asems412.imp"
L_00bc:;
#line 1005 "regression-compile-tmp/asems412.imp"
V->CA = E->LIMEN;
#line 1005 "regression-compile-tmp/asems412.imp"
L_00bd:;
                                                                //   1006                                %AND U_DISP = V_DISP %C
                                                                //   1007                                %AND U_FORM = V_FORM %C
                                                                //   1008                                %AND U_TYPE = V_TYPE %C
                                                                //   1009                                %AND U_CA   > LIMEN
                                                                //   1010           %REPEAT
#line 1010 "regression-compile-tmp/asems412.imp"
goto L_00b9;
#line 1010 "regression-compile-tmp/asems412.imp"
L_00ba:;
                                                                //   1011        %FINISH
#line 1011 "regression-compile-tmp/asems412.imp"
L_00b8:;
                                                                //   1012     %END
#line 1012 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block MERGEENVIRONMENT at level 2
                                                                //   1013     %ROUTINE RESTORE ENVIRONMENT(%SHORTINTEGER LABEL)
#line 1013 "regression-compile-tmp/asems412.imp"
void RESTOREENVIRONMENT( short LABEL )
#line 1013 "regression-compile-tmp/asems412.imp"
{
                                                                //   1014        %INTEGER J
#line 1014 "regression-compile-tmp/asems412.imp"
int J;
                                                                //   1015        %RECORD(ENVFM)%NAME E
#line 1015 "regression-compile-tmp/asems412.imp"
 ENVFM /*name*/*E;
                                                                //   1016        E == ENVIRONMENT(LABEL)
#line 1016 "regression-compile-tmp/asems412.imp"
E = ENVIRONMENT(LABEL);
                                                                //   1017        %IF E == NULL ENV %START
#line 1017 "regression-compile-tmp/asems412.imp"
if (((E) != (&NULLENV))) goto L_00be;
                                                                //   1018           LIMEN = CA
#line 1018 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
                                                                //   1019        %ELSE
#line 1019 "regression-compile-tmp/asems412.imp"
goto L_00bf;
#line 1019 "regression-compile-tmp/asems412.imp"
L_00be:;
                                                                //   1020           E_LABEL = 0
#line 1020 "regression-compile-tmp/asems412.imp"
E->LABEL = 0;
                                                                //   1021           LIMEN = E_LIMEN
#line 1021 "regression-compile-tmp/asems412.imp"
LIMEN = E->LIMEN;
                                                                //   1022           USE(J) = E_E(J) %FOR J = 1, 1, 40
#line 1022 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((40)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 40");
L_00c0:;
if (J == 40) goto L_00c1;
J += 1;
#line 1022 "regression-compile-tmp/asems412.imp"
USE[(((int)(J)) - (1))] = E->E[(((int)(J)) - (1))];
#line 1022 "regression-compile-tmp/asems412.imp"
goto L_00c0;
#line 1022 "regression-compile-tmp/asems412.imp"
L_00c1:;
                                                                //   1023        %FINISH
#line 1023 "regression-compile-tmp/asems412.imp"
L_00bf:;
                                                                //   1024     %END
#line 1024 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RESTOREENVIRONMENT at level 2
                                                                //   1025  
                                                                //   1026     %ROUTINE PERM(%INTEGER N)
#line 1026 "regression-compile-tmp/asems412.imp"
void PERM( int N )
#line 1026 "regression-compile-tmp/asems412.imp"
{
                                                                //   1027        %INTEGER MASK, J, R
#line 1027 "regression-compile-tmp/asems412.imp"
int MASK;
#line 1027 "regression-compile-tmp/asems412.imp"
int J;
#line 1027 "regression-compile-tmp/asems412.imp"
int R;
                                                                //   1028        %CONSTBYTEINTEGERARRAY REG(1:15) =
#line 1028 "regression-compile-tmp/asems412.imp"
const unsigned char REG[15] = { 1, 2, 3, 4, 5, 6, 7, 13, 14, 15, 16, 17, 18, 19, 20,  };
                                                                //   1029           R0, R1, R2, R3, R4, P2, P1, FPR0, FPR2,15,16,17,18,19,20
                                                                //   1030        MASK = X'80'
#line 1030 "regression-compile-tmp/asems412.imp"
MASK = 128;
                                                                //   1031        N = N!X'FFFF0000'
#line 1031 "regression-compile-tmp/asems412.imp"
N = ((N) | ((-65536)));
                                                                //   1032        %CYCLE J = 1, 1, 15
#line 1032 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((15)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 15");
L_00c3:;
if (J == 15) goto L_00c4;
J += 1;
                                                                //   1033           MASK = MASK<<1
#line 1033 "regression-compile-tmp/asems412.imp"
MASK = ((MASK) << (1));
                                                                //   1034           %IF N&MASK # 0 %START
#line 1034 "regression-compile-tmp/asems412.imp"
if (((((N) & (MASK))) == (0))) goto L_00c6;
                                                                //   1035              R = REG(J)
#line 1035 "regression-compile-tmp/asems412.imp"
R = (REG-1)[J];
                                                                //   1036              HAZARD(R);  FORGET(R)
#line 1036 "regression-compile-tmp/asems412.imp"
HAZARD(R);
#line 1036 "regression-compile-tmp/asems412.imp"
FORGET(R);
                                                                //   1037           %FINISH
#line 1037 "regression-compile-tmp/asems412.imp"
L_00c6:;
                                                                //   1038        %REPEAT
#line 1038 "regression-compile-tmp/asems412.imp"
goto L_00c3;
#line 1038 "regression-compile-tmp/asems412.imp"
L_00c4:;
                                                                //   1039        HAZARD(LINK);  FORGET(LINK)
#line 1039 "regression-compile-tmp/asems412.imp"
HAZARD(12);
#line 1039 "regression-compile-tmp/asems412.imp"
FORGET(12);
                                                                //   1040        DEFINE REFERENCE(N&255, P REF)
#line 1040 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(((N) & (255)), 5);
                                                                //   1041        RI2(BAL, LINK, CODE, N&255)
#line 1041 "regression-compile-tmp/asems412.imp"
RI2(16640, 12, 44, ((N) & (255)));
                                                                //   1042     %END
#line 1042 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PERM at level 2
                                                                //   1043     %ROUTINE SET DIAG(%INTEGER BASE, DISP, TYPE, FORM)
#line 1043 "regression-compile-tmp/asems412.imp"
void SETDIAG( int BASE, int DISP, int TYPE, int FORM )
#line 1043 "regression-compile-tmp/asems412.imp"
{
                                                                //   1044        !! PROC<1><1>LEVEL<3>NAME<1>BASE<3>TYPE<3>DISP<20>
                                                                //   1045        %INTEGER V1, V2, P, MARK
#line 1045 "regression-compile-tmp/asems412.imp"
int V1;
#line 1045 "regression-compile-tmp/asems412.imp"
int V2;
#line 1045 "regression-compile-tmp/asems412.imp"
int P;
#line 1045 "regression-compile-tmp/asems412.imp"
int MARK;
                                                                //   1046        %ROUTINE FILL(%INTEGERNAME V)
#line 1046 "regression-compile-tmp/asems412.imp"
void FILL( int /*name*/*V )
#line 1046 "regression-compile-tmp/asems412.imp"
{
                                                                //   1047           %INTEGER SHIFT
#line 1047 "regression-compile-tmp/asems412.imp"
int SHIFT;
                                                                //   1048           SHIFT = 0;  V = 0
#line 1048 "regression-compile-tmp/asems412.imp"
SHIFT = 0;
#line 1048 "regression-compile-tmp/asems412.imp"
*V = 0;
                                                                //   1049           %CYCLE
#line 1049 "regression-compile-tmp/asems412.imp"
L_00c7:;
                                                                //   1050              %RETURN %IF P = VP %OR SHIFT = 30
#line 1050 "regression-compile-tmp/asems412.imp"
if (((P) == (VP))) goto L_00c2;
#line 1050 "regression-compile-tmp/asems412.imp"
if (((SHIFT) != (30))) goto L_00ca;
#line 1050 "regression-compile-tmp/asems412.imp"
L_00c2:;
#line 1050 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1050 "regression-compile-tmp/asems412.imp"
L_00ca:;
                                                                //   1051              P = P+1
#line 1051 "regression-compile-tmp/asems412.imp"
P = (((int)(P)) + (1));
                                                                //   1052              V = V+(VBUF(P)-32)<<SHIFT
#line 1052 "regression-compile-tmp/asems412.imp"
*V = ((*V) + ((int)((((((int)((VBUF-1)[P])) - (32))) << (SHIFT)))));
                                                                //   1053              SHIFT = SHIFT+6
#line 1053 "regression-compile-tmp/asems412.imp"
SHIFT = (((int)(SHIFT)) + (6));
                                                                //   1054           %REPEAT
#line 1054 "regression-compile-tmp/asems412.imp"
goto L_00c7;
                                                                //   1055        %END
#line 1055 "regression-compile-tmp/asems412.imp"
return;
} // End of block FILL at level 3
                                                                //   1056        P = 0;  MARK = 0
#line 1056 "regression-compile-tmp/asems412.imp"
P = 0;
#line 1056 "regression-compile-tmp/asems412.imp"
MARK = 0;
                                                                //   1057        FILL(V1);  FILL(V2)
#line 1057 "regression-compile-tmp/asems412.imp"
FILL(&V1);
#line 1057 "regression-compile-tmp/asems412.imp"
FILL(&V2);
                                                                //   1058        %IF FORM = 0 %START;          ! NON-VARIABLE
#line 1058 "regression-compile-tmp/asems412.imp"
if (((FORM) != (0))) goto L_00c8;
                                                                //   1059           PRINT SYMBOL(DLINE)
#line 1059 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(10);
                                                                //   1060           MARK = 16;  FORM = 1
#line 1060 "regression-compile-tmp/asems412.imp"
MARK = 16;
#line 1060 "regression-compile-tmp/asems412.imp"
FORM = 1;
                                                                //   1061           %IF BASE = 0 %START;       ! %BEGIN
#line 1061 "regression-compile-tmp/asems412.imp"
if (((BASE) != (0))) goto L_00cb;
                                                                //   1062              V2 = 0;  V1 = BLOCK WORD;! 'BLOCK'
#line 1062 "regression-compile-tmp/asems412.imp"
V2 = 0;
#line 1062 "regression-compile-tmp/asems412.imp"
V1 = BLOCKWORD;
                                                                //   1063           %FINISH
#line 1063 "regression-compile-tmp/asems412.imp"
L_00cb:;
                                                                //   1064        %FINISH
#line 1064 "regression-compile-tmp/asems412.imp"
L_00c8:;
                                                                //   1065        BASE = ACTUAL(BASE)
#line 1065 "regression-compile-tmp/asems412.imp"
BASE = ACTUAL[BASE];
                                                                //   1066        BASE = BASE-8 %IF BASE >= 8
#line 1066 "regression-compile-tmp/asems412.imp"
if (((BASE) < (8))) goto L_00cc;
#line 1066 "regression-compile-tmp/asems412.imp"
BASE = (((int)(BASE)) - (8));
#line 1066 "regression-compile-tmp/asems412.imp"
L_00cc:;
                                                                //   1067        PRINTSYMBOL(DIAGS)
#line 1067 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(11);
                                                                //   1068        %IF FORM = -1 %START;                ! END OF BLOCK
#line 1068 "regression-compile-tmp/asems412.imp"
if (((FORM) != ((-1)))) goto L_00cd;
                                                                //   1069           PUT(-1);  PUT(-1);  DA = DA+4;  %RETURN
#line 1069 "regression-compile-tmp/asems412.imp"
PUT((-1));
#line 1069 "regression-compile-tmp/asems412.imp"
PUT((-1));
#line 1069 "regression-compile-tmp/asems412.imp"
DA = (((int)(DA)) + (4));
#line 1069 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1070        %FINISH
#line 1070 "regression-compile-tmp/asems412.imp"
L_00cd:;
                                                                //   1071        PUT(((((MARK+XLEVEL)<<1+FORM-1)<<3+BASE)<<3+TYPE)<<4)
#line 1071 "regression-compile-tmp/asems412.imp"
PUT((((((int)((((((int)((((((int)((((int)((((((int)(MARK)) + (XLEVEL))) << (1)))) + (FORM)))) - (1))) << (3)))) + (BASE))) << (3)))) + (TYPE))) << (4)));
                                                                //   1072        PUT(DISP)
#line 1072 "regression-compile-tmp/asems412.imp"
PUT(DISP);
                                                                //   1073        PUT(V1>>16);  PUT(V1&X'FFFF')
#line 1073 "regression-compile-tmp/asems412.imp"
PUT((int)((((unsigned int)(V1)) >> (16))));
#line 1073 "regression-compile-tmp/asems412.imp"
PUT(((V1) & (65535)));
                                                                //   1074        PUT(V2>>16);  PUT(V2&X'FFFF')
#line 1074 "regression-compile-tmp/asems412.imp"
PUT((int)((((unsigned int)(V2)) >> (16))));
#line 1074 "regression-compile-tmp/asems412.imp"
PUT(((V2) & (65535)));
                                                                //   1075        DA = DA+12
#line 1075 "regression-compile-tmp/asems412.imp"
DA = (((int)(DA)) + (12));
                                                                //   1076     %END
#line 1076 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SETDIAG at level 2
                                                                //   1077     %ROUTINE ASSEMBLE(%SHORTINTEGER AMODE, LABS, NAMES)
#line 1077 "regression-compile-tmp/asems412.imp"
void ASSEMBLE( short AMODE, short LABS, short NAMES )
#line 1077 "regression-compile-tmp/asems412.imp"
{
                                                                //   1078        %OWNINTEGER ASS LEVEL = 0
#line 1078 "regression-compile-tmp/asems412.imp"
static int ASSLEVEL = 0;
                                                                //   1079        %SWITCH Z(33:126)
#line 1079 "regression-compile-tmp/asems412.imp"
static int sw3_Z_idx;
static const void * /*SWITCH*/ sw3_Z[94] = { &&sw3_Z_33, &&sw3_Z_34, &&sw3_Z_35, &&sw3_Z_36, &&sw3_Z_37, &&sw3_Z_38, &&sw3_Z_39, &&sw3_Z_40, &&sw3_Z_41, &&sw3_Z_42, &&sw3_Z_43, &&sw3_Z_44, &&sw3_Z_45, &&sw3_Z_46, &&sw3_Z_47, &&sw3_Z_48, &&sw3_Z_49, &&sw3_Z_50, &&sw3_Z_51, &&sw3_Z_52, &&sw3_Z_53, &&sw3_Z_54, &&sw3_Z_55, &&sw3_Z_56, &&sw3_Z_57, &&sw3_Z_58, &&sw3_Z_59, &&sw3_Z_60, &&sw3_Z_61, &&sw3_Z_62, &&sw3_Z_63, &&sw3_Z_64, &&sw3_Z_65, &&sw3_Z_66, &&sw3_Z_67, &&sw3_Z_68, &&sw3_Z_69, &&sw3_Z_70, &&sw3_Z_71, &&sw3_Z_72, &&sw3_Z_73, &&sw3_Z_74, &&sw3_Z_75, &&sw3_Z_76, &&sw3_Z_77, &&sw3_Z_78, &&sw3_Z_79, &&sw3_Z_80, &&sw3_Z_81, &&sw3_Z_82, &&sw3_Z_83, &&sw3_Z_84, &&sw3_Z_85, &&sw3_Z_86, &&sw3_Z_87, &&sw3_Z_88, &&sw3_Z_89, &&sw3_Z_90, &&sw3_Z_91, &&sw3_Z_92, &&sw3_Z_93, &&sw3_Z_94, &&sw3_Z_95, &&sw3_Z_96, &&sw3_Z_97, &&sw3_Z_98, &&sw3_Z_99, &&sw3_Z_100, &&sw3_Z_101, &&sw3_Z_102, &&sw3_Z_103, &&sw3_Z_104, &&sw3_Z_105, &&sw3_Z_106, &&sw3_Z_107, &&sw3_Z_108, &&sw3_Z_109, &&sw3_Z_110, &&sw3_Z_111, &&sw3_Z_112, &&sw3_Z_113, &&sw3_Z_114, &&sw3_Z_115, &&sw3_Z_116, &&sw3_Z_117, &&sw3_Z_118, &&sw3_Z_119, &&sw3_Z_120, &&sw3_Z_121, &&sw3_Z_122, &&sw3_Z_123, &&sw3_Z_124, &&sw3_Z_125, &&sw3_Z_126,  };
                                                                //   1080        %RECORD(VARFM)%NAME V, GVAR, FP, AP
#line 1080 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*V;
#line 1080 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*GVAR;
#line 1080 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*FP;
#line 1080 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*AP;
                                                                //   1081        %RECORD(STACKFM)%NAME LHS, RHS, X
#line 1081 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*LHS;
#line 1081 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*RHS;
#line 1081 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*X;
                                                                //   1082        %INTEGER SYM;            ! CURRENT CODE ITEM
#line 1082 "regression-compile-tmp/asems412.imp"
int SYM;
                                                                //   1083        %INTEGER VLB, VUB
#line 1083 "regression-compile-tmp/asems412.imp"
int VLB;
#line 1083 "regression-compile-tmp/asems412.imp"
int VUB;
                                                                //   1084        %INTEGER DATA SIZE, OLD FRAME, GSTART, WDISP, NEW DISP, SDISP
#line 1084 "regression-compile-tmp/asems412.imp"
int DATASIZE;
#line 1084 "regression-compile-tmp/asems412.imp"
int OLDFRAME;
#line 1084 "regression-compile-tmp/asems412.imp"
int GSTART;
#line 1084 "regression-compile-tmp/asems412.imp"
int WDISP;
#line 1084 "regression-compile-tmp/asems412.imp"
int NEWDISP;
#line 1084 "regression-compile-tmp/asems412.imp"
int SDISP;
                                                                //   1085        %INTEGER OPR, N
#line 1085 "regression-compile-tmp/asems412.imp"
int OPR;
#line 1085 "regression-compile-tmp/asems412.imp"
int N;
                                                                //   1086        %INTEGER SIZE PATCH, WARNING
#line 1086 "regression-compile-tmp/asems412.imp"
int SIZEPATCH;
#line 1086 "regression-compile-tmp/asems412.imp"
int WARNING;
                                                                //   1087        %OWNINTEGER GG = 0
#line 1087 "regression-compile-tmp/asems412.imp"
static int GG = 0;
                                                                //   1088        %INTEGER J,K, LEN, VAL, APARM, SPS
#line 1088 "regression-compile-tmp/asems412.imp"
int J;
#line 1088 "regression-compile-tmp/asems412.imp"
int K;
#line 1088 "regression-compile-tmp/asems412.imp"
int LEN;
#line 1088 "regression-compile-tmp/asems412.imp"
int VAL;
#line 1088 "regression-compile-tmp/asems412.imp"
int APARM;
#line 1088 "regression-compile-tmp/asems412.imp"
int SPS;
                                                                //   1089        %INTEGER LABEL START;! FIRST LABEL FOR THIS LEVEL
#line 1089 "regression-compile-tmp/asems412.imp"
int LABELSTART;
                                                                //   1090        %INTEGER RT LAB;     ! ROUTINE JUMP ADDRESS
#line 1090 "regression-compile-tmp/asems412.imp"
int RTLAB;
                                                                //   1091  
                                                                //   1092        %CONSTBYTEINTEGERARRAY COMM(1:17)= 0, 0, 1, 0, 1, 1, 0,
#line 1092 "regression-compile-tmp/asems412.imp"
const unsigned char COMM[17] = { 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0,  };
                                                                //   1093                                           1, 1, 1, 0, 0, 0, 0, 1, 0, 0
                                                                //   1094  
                                                                //   1095     %ROUTINESPEC AMAP(%RECORD(STACKFM)%NAME V)
#line 1095 "regression-compile-tmp/asems412.imp"
auto void AMAP(  STACKFM /*name*/*V );
                                                                //   1096     %ROUTINESPEC LOAD(%RECORD(STACKFM)%NAME V, %INTEGER REG)
#line 1096 "regression-compile-tmp/asems412.imp"
auto void LOAD(  STACKFM /*name*/*V, int REG );
                                                                //   1097     %INTEGERFNSPEC NEW TAG
#line 1097 "regression-compile-tmp/asems412.imp"
auto int NEWTAG( void );
                                                                //   1098     %ROUTINESPEC JOIN(%RECORD(STACKFM)%NAME W)
#line 1098 "regression-compile-tmp/asems412.imp"
auto void JOIN(  STACKFM /*name*/*W );
                                                                //   1099     %ROUTINESPEC OPERATE(%INTEGER N)
#line 1099 "regression-compile-tmp/asems412.imp"
auto void OPERATE( int N );
                                                                //   1100     %ROUTINESPEC COMPARE(%RECORD(STACKFM)%NAME L, R)
#line 1100 "regression-compile-tmp/asems412.imp"
auto void COMPARE(  STACKFM /*name*/*L,  STACKFM /*name*/*R );
                                                                //   1101     %ROUTINESPEC HEADER(%RECORD(VARFM)%NAME V)
#line 1101 "regression-compile-tmp/asems412.imp"
auto void HEADER(  VARFM /*name*/*V );
                                                                //   1102  
                                                                //   1103     ABORT(-1) %IF FREE SPACE < MIN FREE;  !  ...STACK OVERFLOW?
#line 1103 "regression-compile-tmp/asems412.imp"
if (((FREESPACE) >= (600))) goto L_00ce;
#line 1103 "regression-compile-tmp/asems412.imp"
ABORT((-1));
#line 1103 "regression-compile-tmp/asems412.imp"
L_00ce:;
                                                                //   1104  
                                                                //   1105     XLEVEL = XLEVEL+1
#line 1105 "regression-compile-tmp/asems412.imp"
XLEVEL = (((int)(XLEVEL)) + (1));
                                                                //   1106     RT LAB = 0;  LABEL START = LABS; OLD FRAME = FRAME
#line 1106 "regression-compile-tmp/asems412.imp"
RTLAB = 0;
#line 1106 "regression-compile-tmp/asems412.imp"
LABELSTART = LABS;
#line 1106 "regression-compile-tmp/asems412.imp"
OLDFRAME = FRAME;
                                                                //   1107     WDISP = 0;  WARNING = 0
#line 1107 "regression-compile-tmp/asems412.imp"
WDISP = 0;
#line 1107 "regression-compile-tmp/asems412.imp"
WARNING = 0;
                                                                //   1108     GVAR == DECVAR;  GSTART = NAMES
#line 1108 "regression-compile-tmp/asems412.imp"
GVAR = DECVAR;
#line 1108 "regression-compile-tmp/asems412.imp"
GSTART = NAMES;
                                                                //   1109     %IF AMODE > 0 %START
#line 1109 "regression-compile-tmp/asems412.imp"
if (((AMODE) <= (0))) goto L_00cf;
                                                                //   1110        %IF AMODE = 1 %THEN FRAME = REGLEN %ELSE FRAME = 11*REGLEN
#line 1110 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (1))) goto L_00d0;
#line 1110 "regression-compile-tmp/asems412.imp"
FRAME = 4;
#line 1110 "regression-compile-tmp/asems412.imp"
goto L_00d1;
#line 1110 "regression-compile-tmp/asems412.imp"
L_00d0:;
#line 1110 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(11)) * (4));
#line 1110 "regression-compile-tmp/asems412.imp"
L_00d1:;
                                                                //   1111        ABORT(-3) %IF ASS LEVEL = 5
#line 1111 "regression-compile-tmp/asems412.imp"
if (((ASSLEVEL) != (5))) goto L_00d2;
#line 1111 "regression-compile-tmp/asems412.imp"
ABORT((-3));
#line 1111 "regression-compile-tmp/asems412.imp"
L_00d2:;
                                                                //   1112        ASS LEVEL = ASS LEVEL+1;  LOCAL = BASE REG(ASS LEVEL)
#line 1112 "regression-compile-tmp/asems412.imp"
ASSLEVEL = (((int)(ASSLEVEL)) + (1));
#line 1112 "regression-compile-tmp/asems412.imp"
LOCAL = BASEREG[ASSLEVEL];
                                                                //   1113        ACTIVITY(LOCAL) = -1
#line 1113 "regression-compile-tmp/asems412.imp"
ACTIVITY[LOCAL] = (-1);
                                                                //   1114        %IF AMODE = 2 %START
#line 1114 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (2))) goto L_00d3;
                                                                //   1115           SET DIAG(R15, 0, 0, 0)
#line 1115 "regression-compile-tmp/asems412.imp"
SETDIAG(41, 0, 0, 0);
                                                                //   1116        %FINISH
#line 1116 "regression-compile-tmp/asems412.imp"
L_00d3:;
                                                                //   1117        %IF OTYPE = PERMRT %START
#line 1117 "regression-compile-tmp/asems412.imp"
if (((OTYPE) != (7))) goto L_00d4;
                                                                //   1118           PERMS = PERMS-1;  GVAR_DISP = PERMS
#line 1118 "regression-compile-tmp/asems412.imp"
PERMS = (((int)(PERMS)) - (1));
#line 1118 "regression-compile-tmp/asems412.imp"
GVAR->DISP = PERMS;
                                                                //   1119        %FINISH
#line 1119 "regression-compile-tmp/asems412.imp"
L_00d4:;
                                                                //   1120        SET DIAG(LOCAL, 0, 0, 0) %IF GG = PROCEDURE
#line 1120 "regression-compile-tmp/asems412.imp"
if (((GG) != (49))) goto L_00d5;
#line 1120 "regression-compile-tmp/asems412.imp"
SETDIAG(LOCAL, 0, 0, 0);
#line 1120 "regression-compile-tmp/asems412.imp"
L_00d5:;
                                                                //   1121     %ELSE %IF AMODE < 0
#line 1121 "regression-compile-tmp/asems412.imp"
goto L_00d6;
#line 1121 "regression-compile-tmp/asems412.imp"
L_00cf:;
#line 1121 "regression-compile-tmp/asems412.imp"
if (((AMODE) >= (0))) goto L_00d7;
                                                                //   1122        FRAME = 0
#line 1122 "regression-compile-tmp/asems412.imp"
FRAME = 0;
                                                                //   1123     %ELSE
#line 1123 "regression-compile-tmp/asems412.imp"
goto L_00d6;
#line 1123 "regression-compile-tmp/asems412.imp"
L_00d7:;
                                                                //   1124        SET DIAG(0, 0, 0 ,0);      ! BLOCK
#line 1124 "regression-compile-tmp/asems412.imp"
SETDIAG(0, 0, 0, 0);
                                                                //   1125     %FINISH
#line 1125 "regression-compile-tmp/asems412.imp"
L_00d6:;
                                                                //   1126  
                                                                //   1127     ! DESCRIPTOR PROCESSING
                                                                //   1128  
                                                                //   1129     %INTEGERFN LOOKUP(%INTEGER NAME)
#line 1129 "regression-compile-tmp/asems412.imp"
int LOOKUP( int NAME )
#line 1129 "regression-compile-tmp/asems412.imp"
{
                                                                //   1130        %INTEGER P, P1, P2
#line 1130 "regression-compile-tmp/asems412.imp"
int P;
#line 1130 "regression-compile-tmp/asems412.imp"
int P1;
#line 1130 "regression-compile-tmp/asems412.imp"
int P2;
                                                                //   1131        %RECORD(VARFM)%NAME V
#line 1131 "regression-compile-tmp/asems412.imp"
 VARFM /*name*/*V;
                                                                //   1132        P1 = 1;  P2 = NAMES
#line 1132 "regression-compile-tmp/asems412.imp"
P1 = 1;
#line 1132 "regression-compile-tmp/asems412.imp"
P2 = NAMES;
                                                                //   1133        %WHILE P2 >= P1 %CYCLE
#line 1133 "regression-compile-tmp/asems412.imp"
L_00d8:;
#line 1133 "regression-compile-tmp/asems412.imp"
if (((P2) < (P1))) goto L_00d9;
                                                                //   1134           P = (P1+P2)>>1
#line 1134 "regression-compile-tmp/asems412.imp"
P = (((((((int)(P1)) + (P2)))) >> (1)));
                                                                //   1135           V == VAR(P)
#line 1135 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)(P)) - (1))];
                                                                //   1136           %RESULT = P %IF V_ID = NAME
#line 1136 "regression-compile-tmp/asems412.imp"
if (((V->ID) != (NAME))) goto L_00db;
#line 1136 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return P;
#line 1136 "regression-compile-tmp/asems412.imp"
L_00db:;
                                                                //   1137           %IF V_ID > NAME %THEN P2 = P-1 %ELSE P1 = P+1
#line 1137 "regression-compile-tmp/asems412.imp"
if (((V->ID) <= (NAME))) goto L_00dc;
#line 1137 "regression-compile-tmp/asems412.imp"
P2 = (((int)(P)) - (1));
#line 1137 "regression-compile-tmp/asems412.imp"
goto L_00dd;
#line 1137 "regression-compile-tmp/asems412.imp"
L_00dc:;
#line 1137 "regression-compile-tmp/asems412.imp"
P1 = (((int)(P)) + (1));
#line 1137 "regression-compile-tmp/asems412.imp"
L_00dd:;
                                                                //   1138        %REPEAT
#line 1138 "regression-compile-tmp/asems412.imp"
goto L_00d8;
#line 1138 "regression-compile-tmp/asems412.imp"
L_00d9:;
                                                                //   1139        ABORT(6)
#line 1139 "regression-compile-tmp/asems412.imp"
ABORT(6);
                                                                //   1140        %STOP
#line 1140 "regression-compile-tmp/asems412.imp"
exit(0);
                                                                //   1141     %END
#line 1141 "regression-compile-tmp/asems412.imp"
} // End of block LOOKUP at level 3
                                                                //   1142     %ROUTINE DEFINE VAR
#line 1142 "regression-compile-tmp/asems412.imp"
void DEFINEVAR( void )
#line 1142 "regression-compile-tmp/asems412.imp"
{
                                                                //   1143        %CONSTBYTEINTEGERARRAY VSIZE(0:7) = 0, 4, 1, 2, 0, 4, 4, 0
#line 1143 "regression-compile-tmp/asems412.imp"
const unsigned char VSIZE[8] = { 0, 4, 1, 2, 0, 4, 4, 0,  };
                                                                //   1144        %CONSTBYTEINTEGERARRAY ROUND(0:7) = 3,3,0,1,1,3,3,3
#line 1144 "regression-compile-tmp/asems412.imp"
const unsigned char ROUND[8] = { 3, 3, 0, 1, 1, 3, 3, 3,  };
                                                                //   1145        %INTEGER TYPE, FORM, TF, F, SIZE, FORMAT, S
#line 1145 "regression-compile-tmp/asems412.imp"
int TYPE;
#line 1145 "regression-compile-tmp/asems412.imp"
int FORM;
#line 1145 "regression-compile-tmp/asems412.imp"
int TF;
#line 1145 "regression-compile-tmp/asems412.imp"
int F;
#line 1145 "regression-compile-tmp/asems412.imp"
int SIZE;
#line 1145 "regression-compile-tmp/asems412.imp"
int FORMAT;
#line 1145 "regression-compile-tmp/asems412.imp"
int S;
                                                                //   1146        %OWNINTEGER PERM NO = -1
#line 1146 "regression-compile-tmp/asems412.imp"
static int PERMNO = (-1);
                                                                //   1147  
                                                                //   1148        NAMES = NAMES+1;  ABORT(-4) %IF NAMES >= PARMS
#line 1148 "regression-compile-tmp/asems412.imp"
NAMES = (((int)(NAMES)) + (1));
#line 1148 "regression-compile-tmp/asems412.imp"
if (((NAMES) < (PARMS))) goto L_00de;
#line 1148 "regression-compile-tmp/asems412.imp"
ABORT((-4));
#line 1148 "regression-compile-tmp/asems412.imp"
L_00de:;
                                                                //   1149        DECVAR == VAR(NAMES);  DECVAR = 0
#line 1149 "regression-compile-tmp/asems412.imp"
DECVAR = &VAR[(((int)(NAMES)) - (1))];
#line 1149 "regression-compile-tmp/asems412.imp"
*DECVAR = (VARFM){ 0 } /* Assign 0's to all fields of record */;
                                                                //   1150        DECVAR_ID = TAG
#line 1150 "regression-compile-tmp/asems412.imp"
DECVAR->ID = TAG();
                                                                //   1151        VP = 0
#line 1151 "regression-compile-tmp/asems412.imp"
VP = 0;
                                                                //   1152        %CYCLE
#line 1152 "regression-compile-tmp/asems412.imp"
L_00df:;
                                                                //   1153           READSYMBOL(S);  %EXIT %IF S = COMMA
#line 1153 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&S);
#line 1153 "regression-compile-tmp/asems412.imp"
if (((S) != (44))) goto L_00e2;
#line 1153 "regression-compile-tmp/asems412.imp"
goto L_00e0;
#line 1153 "regression-compile-tmp/asems412.imp"
L_00e2:;
                                                                //   1154           %IF VP # 10 %START
#line 1154 "regression-compile-tmp/asems412.imp"
if (((VP) == (10))) goto L_00e3;
                                                                //   1155              VP = VP+1;  VBUF(VP) = S
#line 1155 "regression-compile-tmp/asems412.imp"
VP = (((int)(VP)) + (1));
#line 1155 "regression-compile-tmp/asems412.imp"
(VBUF-1)[VP] = S;
                                                                //   1156           %FINISH
#line 1156 "regression-compile-tmp/asems412.imp"
L_00e3:;
                                                                //   1157        %REPEAT
#line 1157 "regression-compile-tmp/asems412.imp"
goto L_00df;
#line 1157 "regression-compile-tmp/asems412.imp"
L_00e0:;
                                                                //   1158  
                                                                //   1159        TF = TAG;  TYPE = TF>>4;  FORM = TF&15;  SKIPSYMBOL
#line 1159 "regression-compile-tmp/asems412.imp"
TF = TAG();
#line 1159 "regression-compile-tmp/asems412.imp"
TYPE = (int)((((unsigned int)(TF)) >> (4)));
#line 1159 "regression-compile-tmp/asems412.imp"
FORM = ((TF) & (15));
#line 1159 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //   1160        %IF TYPE = LONG %START
#line 1160 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (7))) goto L_00e4;
                                                                //   1161           TYPE = REALS
#line 1161 "regression-compile-tmp/asems412.imp"
TYPE = 6;
                                                                //   1162        %FINISH
#line 1162 "regression-compile-tmp/asems412.imp"
L_00e4:;
                                                                //   1163        SIZE = TAG
#line 1163 "regression-compile-tmp/asems412.imp"
SIZE = TAG();
                                                                //   1164        DECVAR_TYPE = TYPE
#line 1164 "regression-compile-tmp/asems412.imp"
DECVAR->TYPE = TYPE;
                                                                //   1165        DECVAR_FORM = FORM
#line 1165 "regression-compile-tmp/asems412.imp"
DECVAR->FORM = FORM;
                                                                //   1166        SKIPSYMBOL
#line 1166 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //   1167        OTYPE = TAG
#line 1167 "regression-compile-tmp/asems412.imp"
OTYPE = TAG();
                                                                //   1168        %IF NEXTSYMBOL = COMMA %START
#line 1168 "regression-compile-tmp/asems412.imp"
if (((_imp_NEXTSYMBOL()) != (44))) goto L_00e5;
                                                                //   1169           SKIPSYMBOL
#line 1169 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //   1170           FORMAT = TAG;  F = LOOKUP(FORMAT)
#line 1170 "regression-compile-tmp/asems412.imp"
FORMAT = TAG();
#line 1170 "regression-compile-tmp/asems412.imp"
F = LOOKUP(FORMAT);
                                                                //   1171           DECVAR_FORMAT = F;  SIZE = VAR(F)_LENGTH;! IN BYTES
#line 1171 "regression-compile-tmp/asems412.imp"
DECVAR->FORMAT = F;
#line 1171 "regression-compile-tmp/asems412.imp"
SIZE = VAR[(((int)(F)) - (1))].LENGTH;
                                                                //   1172           DECVAR_LENGTH = SIZE
#line 1172 "regression-compile-tmp/asems412.imp"
DECVAR->LENGTH = SIZE;
                                                                //   1173        %ELSE %IF TYPE = STRING
#line 1173 "regression-compile-tmp/asems412.imp"
goto L_00e6;
#line 1173 "regression-compile-tmp/asems412.imp"
L_00e5:;
#line 1173 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (4))) goto L_00e7;
                                                                //   1174           DECVAR_SIZE = SIZE
#line 1174 "regression-compile-tmp/asems412.imp"
DECVAR->SIZE = SIZE;
                                                                //   1175           SIZE = SIZE+1
#line 1175 "regression-compile-tmp/asems412.imp"
SIZE = (((int)(SIZE)) + (1));
                                                                //   1176           SIZE = (SIZE+1)&(\1) %IF FORM = ARRAY
#line 1176 "regression-compile-tmp/asems412.imp"
if (((FORM) != (11))) goto L_00e8;
#line 1176 "regression-compile-tmp/asems412.imp"
SIZE = (((((int)(SIZE)) + (1))) & ((~(1))));
#line 1176 "regression-compile-tmp/asems412.imp"
L_00e8:;
                                                                //   1177        %ELSE
#line 1177 "regression-compile-tmp/asems412.imp"
goto L_00e6;
#line 1177 "regression-compile-tmp/asems412.imp"
L_00e7:;
                                                                //   1178           SIZE = VSIZE(TYPE)
#line 1178 "regression-compile-tmp/asems412.imp"
SIZE = VSIZE[TYPE];
                                                                //   1179        %FINISH
#line 1179 "regression-compile-tmp/asems412.imp"
L_00e6:;
                                                                //   1180        %IF 7 <= FORM <= 10 %START;! PROCEDURE
#line 1180 "regression-compile-tmp/asems412.imp"
if ((((7) > (FORM))) || (((FORM) > (10)))) goto L_00e9;
                                                                //   1181           GTYPE = 1
#line 1181 "regression-compile-tmp/asems412.imp"
GTYPE = 1;
                                                                //   1182           F = LOOKUP(DECVAR_ID)
#line 1182 "regression-compile-tmp/asems412.imp"
F = LOOKUP(DECVAR->ID);
                                                                //   1183           %IF F # NAMES %START;! SPEC GIVEN
#line 1183 "regression-compile-tmp/asems412.imp"
if (((F) == (NAMES))) goto L_00ea;
                                                                //   1184              NAMES = NAMES-1;  DECVAR == VAR(F);  %RETURN
#line 1184 "regression-compile-tmp/asems412.imp"
NAMES = (((int)(NAMES)) - (1));
#line 1184 "regression-compile-tmp/asems412.imp"
DECVAR = &VAR[(((int)(F)) - (1))];
#line 1184 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1185           %FINISH
#line 1185 "regression-compile-tmp/asems412.imp"
L_00ea:;
                                                                //   1186           %IF OTYPE # 0 %AND OTYPE # 7 %START;! TREAT AS INTRINSIC
#line 1186 "regression-compile-tmp/asems412.imp"
if (((OTYPE) == (0))) goto L_00eb;
#line 1186 "regression-compile-tmp/asems412.imp"
if (((OTYPE) == (7))) goto L_00eb;
                                                                //   1187              PERMNO = PERMNO+1
#line 1187 "regression-compile-tmp/asems412.imp"
PERMNO = (((int)(PERMNO)) + (1));
                                                                //   1188              DECVAR_DISP = PERMNO;  DECVAR_BASE = LINK
#line 1188 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = PERMNO;
#line 1188 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 12;
                                                                //   1189              %RETURN
#line 1189 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1190           %FINISH
#line 1190 "regression-compile-tmp/asems412.imp"
L_00eb:;
                                                                //   1191           DECVAR_DISP = NEW TAG!X'4000'
#line 1191 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = ((NEWTAG()) | (16384));
                                                                //   1192           DECVAR_BASE = CODE
#line 1192 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 44;
                                                                //   1193           DECVAR_TYPE=INTEGER %IF FORM=8 %AND (TYPE=BYTE %OR TYPE=SHORT)
#line 1193 "regression-compile-tmp/asems412.imp"
if (((FORM) != (8))) goto L_00ec;
#line 1193 "regression-compile-tmp/asems412.imp"
if (((TYPE) == (2))) goto L_00ed;
#line 1193 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (3))) goto L_00ec;
#line 1193 "regression-compile-tmp/asems412.imp"
L_00ed:;
#line 1193 "regression-compile-tmp/asems412.imp"
DECVAR->TYPE = 1;
#line 1193 "regression-compile-tmp/asems412.imp"
L_00ec:;
                                                                //   1194           %RETURN %UNLESS AMODE = 1 %AND GMODE # 0;! PARAMETER
#line 1194 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (1))) goto L_00ee;
#line 1194 "regression-compile-tmp/asems412.imp"
if (((GMODE) != (0))) goto L_00ef;
#line 1194 "regression-compile-tmp/asems412.imp"
L_00ee:;
#line 1194 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1194 "regression-compile-tmp/asems412.imp"
L_00ef:;
                                                                //   1195           OTYPE = 0;  TYPE = 0;  FORM = 1;  SIZE = 2*REGLEN
#line 1195 "regression-compile-tmp/asems412.imp"
OTYPE = 0;
#line 1195 "regression-compile-tmp/asems412.imp"
TYPE = 0;
#line 1195 "regression-compile-tmp/asems412.imp"
FORM = 1;
#line 1195 "regression-compile-tmp/asems412.imp"
SIZE = (((int)(2)) * (4));
                                                                //   1196        %FINISH
#line 1196 "regression-compile-tmp/asems412.imp"
L_00e9:;
                                                                //   1197  
                                                                //   1198        DATA SIZE = SIZE
#line 1198 "regression-compile-tmp/asems412.imp"
DATASIZE = SIZE;
                                                                //   1199        DECVAR_LENGTH = DATA SIZE
#line 1199 "regression-compile-tmp/asems412.imp"
DECVAR->LENGTH = DATASIZE;
                                                                //   1200  
                                                                //   1201        %IF FORM # 1 %START
#line 1201 "regression-compile-tmp/asems412.imp"
if (((FORM) == (1))) goto L_00f0;
                                                                //   1202           %IF TYPE = 0 %START
#line 1202 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (0))) goto L_00f1;
                                                                //   1203              TYPE = 10;  SIZE = 2*REGLEN;  DECVAR_TYPE = 10
#line 1203 "regression-compile-tmp/asems412.imp"
TYPE = 10;
#line 1203 "regression-compile-tmp/asems412.imp"
SIZE = (((int)(2)) * (4));
#line 1203 "regression-compile-tmp/asems412.imp"
DECVAR->TYPE = 10;
                                                                //   1204           %ELSE %IF FORM = ARRAYNAME
#line 1204 "regression-compile-tmp/asems412.imp"
goto L_00f2;
#line 1204 "regression-compile-tmp/asems412.imp"
L_00f1:;
#line 1204 "regression-compile-tmp/asems412.imp"
if (((FORM) != (12))) goto L_00f3;
                                                                //   1205              SIZE = 2*REGLEN;  DECVAR_EXTRA = -1
#line 1205 "regression-compile-tmp/asems412.imp"
SIZE = (((int)(2)) * (4));
#line 1205 "regression-compile-tmp/asems412.imp"
DECVAR->EXTRA = (-1);
                                                                //   1206           %ELSE %IF FORM = ARRAY
#line 1206 "regression-compile-tmp/asems412.imp"
goto L_00f2;
#line 1206 "regression-compile-tmp/asems412.imp"
L_00f3:;
#line 1206 "regression-compile-tmp/asems412.imp"
if (((FORM) != (11))) goto L_00f4;
                                                                //   1207              SIZE = 0
#line 1207 "regression-compile-tmp/asems412.imp"
SIZE = 0;
                                                                //   1208           %ELSE
#line 1208 "regression-compile-tmp/asems412.imp"
goto L_00f2;
#line 1208 "regression-compile-tmp/asems412.imp"
L_00f4:;
                                                                //   1209              SIZE = REGLEN
#line 1209 "regression-compile-tmp/asems412.imp"
SIZE = 4;
                                                                //   1210           %FINISH
#line 1210 "regression-compile-tmp/asems412.imp"
L_00f2:;
                                                                //   1211        %FINISH
#line 1211 "regression-compile-tmp/asems412.imp"
L_00f0:;
                                                                //   1212        %IF OTYPE # 0 %START;! OWN DATA
#line 1212 "regression-compile-tmp/asems412.imp"
if (((OTYPE) == (0))) goto L_00f5;
                                                                //   1213           %IF OTYPE = CON %START;! CONSTINTEGER ETC.
#line 1213 "regression-compile-tmp/asems412.imp"
if (((OTYPE) != (2))) goto L_00f6;
                                                                //   1214              DATA SIZE = 0 %IF TF = X'41';! CONSTSTRING
#line 1214 "regression-compile-tmp/asems412.imp"
if (((TF) != (65))) goto L_00f7;
#line 1214 "regression-compile-tmp/asems412.imp"
DATASIZE = 0;
#line 1214 "regression-compile-tmp/asems412.imp"
L_00f7:;
                                                                //   1215              OTYPE = 0 %IF (TYPE<=SHORT %AND (FORM<=2 %OR FORM = 5)) %C
#line 1215 "regression-compile-tmp/asems412.imp"
if (((TYPE) > (3))) goto L_00f8;
#line 1215 "regression-compile-tmp/asems412.imp"
if (((FORM) <= (2))) goto L_00f9;
#line 1215 "regression-compile-tmp/asems412.imp"
if (((FORM) == (5))) goto L_00f9;
#line 1215 "regression-compile-tmp/asems412.imp"
L_00f8:;
#line 1215 "regression-compile-tmp/asems412.imp"
if (((TF) == (82))) goto L_00f9;
#line 1215 "regression-compile-tmp/asems412.imp"
if (((FORM) != (12))) goto L_00fa;
#line 1215 "regression-compile-tmp/asems412.imp"
L_00f9:;
#line 1215 "regression-compile-tmp/asems412.imp"
OTYPE = 0;
#line 1215 "regression-compile-tmp/asems412.imp"
L_00fa:;
                                                                //   1216                        %OR TF = X'52' %OR FORM = ARRAYNAME
                                                                //   1217           %FINISH
#line 1217 "regression-compile-tmp/asems412.imp"
L_00f6:;
                                                                //   1218           OWNTYPE = TYPE;  OWNFORM = FORM
#line 1218 "regression-compile-tmp/asems412.imp"
OWNTYPE = TYPE;
#line 1218 "regression-compile-tmp/asems412.imp"
OWNFORM = FORM;
                                                                //   1219           %IF FORM = ARRAY %START
#line 1219 "regression-compile-tmp/asems412.imp"
if (((FORM) != (11))) goto L_00fb;
                                                                //   1220              GFIX(4)
#line 1220 "regression-compile-tmp/asems412.imp"
GFIX(4);
                                                                //   1221              DECVAR_EXTRA=GA;  GWORD(VLB);  GWORD(VUB);  GWORD(DATASIZE)
#line 1221 "regression-compile-tmp/asems412.imp"
DECVAR->EXTRA = GA;
#line 1221 "regression-compile-tmp/asems412.imp"
GWORD(VLB);
#line 1221 "regression-compile-tmp/asems412.imp"
GWORD(VUB);
#line 1221 "regression-compile-tmp/asems412.imp"
GWORD(DATASIZE);
                                                                //   1222              DECVAR_BASE = GLA;  DECVAR_DISP = GA-VLB*DATASIZE
#line 1222 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 42;
#line 1222 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = ((GA) - ((int)((((int)(VLB)) * (DATASIZE)))));
                                                                //   1223           %ELSE
#line 1223 "regression-compile-tmp/asems412.imp"
goto L_00fc;
#line 1223 "regression-compile-tmp/asems412.imp"
L_00fb:;
                                                                //   1224              OWNTYPE = INTEGER %AND DATA SIZE = REGLEN %IF FORM # 1
#line 1224 "regression-compile-tmp/asems412.imp"
if (((FORM) == (1))) goto L_00fd;
#line 1224 "regression-compile-tmp/asems412.imp"
OWNTYPE = 1;
#line 1224 "regression-compile-tmp/asems412.imp"
DATASIZE = 4;
#line 1224 "regression-compile-tmp/asems412.imp"
L_00fd:;
                                                                //   1225              %IF OTYPE # 0 %START
#line 1225 "regression-compile-tmp/asems412.imp"
if (((OTYPE) == (0))) goto L_00fe;
                                                                //   1226                 %IF TF # X'21' %START
#line 1226 "regression-compile-tmp/asems412.imp"
if (((TF) == (33))) goto L_00ff;
                                                                //   1227                    %IF TF = X'31' %OR TF = X'41' %THEN GFIX(2) %C
#line 1227 "regression-compile-tmp/asems412.imp"
if (((TF) == (49))) goto L_0100;
#line 1227 "regression-compile-tmp/asems412.imp"
if (((TF) != (65))) goto L_0101;
#line 1227 "regression-compile-tmp/asems412.imp"
L_0100:;
#line 1227 "regression-compile-tmp/asems412.imp"
GFIX(2);
#line 1227 "regression-compile-tmp/asems412.imp"
goto L_0102;
#line 1227 "regression-compile-tmp/asems412.imp"
L_0101:;
#line 1227 "regression-compile-tmp/asems412.imp"
GFIX(4);
#line 1227 "regression-compile-tmp/asems412.imp"
L_0102:;
                                                                //   1228                                                  %ELSE GFIX(4)
                                                                //   1229                 %FINISH
#line 1229 "regression-compile-tmp/asems412.imp"
L_00ff:;
                                                                //   1230                 %IF OWNFORM <= 2 %AND TYPE # RECORD %START
#line 1230 "regression-compile-tmp/asems412.imp"
if (((OWNFORM) > (2))) goto L_0103;
#line 1230 "regression-compile-tmp/asems412.imp"
if (((TYPE) == (5))) goto L_0103;
                                                                //   1231                    SET DIAG(GLA, GA+DIAG GLA, TYPE, FORM)
#line 1231 "regression-compile-tmp/asems412.imp"
SETDIAG(42, (((int)(GA)) + (DIAGGLA)), TYPE, FORM);
                                                                //   1232                    DIAG GLA = DIAG GLA+DATA SIZE
#line 1232 "regression-compile-tmp/asems412.imp"
DIAGGLA = (((int)(DIAGGLA)) + (DATASIZE));
                                                                //   1233                 %FINISH
#line 1233 "regression-compile-tmp/asems412.imp"
L_0103:;
                                                                //   1234              %FINISH
#line 1234 "regression-compile-tmp/asems412.imp"
L_00fe:;
                                                                //   1235           %FINISH
#line 1235 "regression-compile-tmp/asems412.imp"
L_00fc:;
                                                                //   1236           %RETURN
#line 1236 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1237        %FINISH
#line 1237 "regression-compile-tmp/asems412.imp"
L_00f5:;
                                                                //   1238  
                                                                //   1239        %IF FORM = SWITCH %START
#line 1239 "regression-compile-tmp/asems412.imp"
if (((FORM) != (6))) goto L_0104;
                                                                //   1240           GFIX(2)
#line 1240 "regression-compile-tmp/asems412.imp"
GFIX(2);
                                                                //   1241           DECVAR_BASE = GLA;  DECVAR_DISP = GA
#line 1241 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 42;
#line 1241 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = GA;
                                                                //   1242           GHALF(VLB);  GHALF(VUB)
#line 1242 "regression-compile-tmp/asems412.imp"
GHALF(VLB);
#line 1242 "regression-compile-tmp/asems412.imp"
GHALF(VUB);
                                                                //   1243           DECVAR_EXTRA = GA-VLB*2
#line 1243 "regression-compile-tmp/asems412.imp"
DECVAR->EXTRA = ((GA) - ((int)((((int)(VLB)) * (2)))));
                                                                //   1244           GHALF(0) %FOR F = VLB, 1, VUB
#line 1244 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = VLB; _increment = 1; _final = VUB; F = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle F = VLB, 1, VUB");
F -= _increment; _control -= _increment;
L_0105:;
if (F == _final) goto L_0106;
F += _increment; _control += _increment;
if (F != _control) _imp_signal(4,2,0,"Corrupt control variable F"); /* FOR loop control variable corrupted */
}
#line 1244 "regression-compile-tmp/asems412.imp"
GHALF(0);
#line 1244 "regression-compile-tmp/asems412.imp"
goto L_0105;
#line 1244 "regression-compile-tmp/asems412.imp"
L_0106:;
                                                                //   1245           %RETURN
#line 1245 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1246        %FINISH
#line 1246 "regression-compile-tmp/asems412.imp"
L_0104:;
                                                                //   1247  
                                                                //   1248        %IF FORM = 4 %START
#line 1248 "regression-compile-tmp/asems412.imp"
if (((FORM) != (4))) goto L_0108;
                                                                //   1249           GTYPE = -1;  %RETURN
#line 1249 "regression-compile-tmp/asems412.imp"
GTYPE = (-1);
#line 1249 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1250        %FINISH
#line 1250 "regression-compile-tmp/asems412.imp"
L_0108:;
                                                                //   1251  
                                                                //   1252        %IF FORM = 1 %THEN F = ROUND(TYPE) %ELSE F = REGLEN-1
#line 1252 "regression-compile-tmp/asems412.imp"
if (((FORM) != (1))) goto L_0109;
#line 1252 "regression-compile-tmp/asems412.imp"
F = ROUND[TYPE];
#line 1252 "regression-compile-tmp/asems412.imp"
goto L_010a;
#line 1252 "regression-compile-tmp/asems412.imp"
L_0109:;
#line 1252 "regression-compile-tmp/asems412.imp"
F = 3;
#line 1252 "regression-compile-tmp/asems412.imp"
L_010a:;
                                                                //   1253        FRAME = (FRAME+F)&(\F)
#line 1253 "regression-compile-tmp/asems412.imp"
FRAME = (((((int)(FRAME)) + (F))) & ((~(F))));
                                                                //   1254        %IF FRAME <= REGLEN %START;!  SPECIAL PARAMETER ?
#line 1254 "regression-compile-tmp/asems412.imp"
if (((FRAME) > (4))) goto L_010b;
                                                                //   1255           %IF AMODE = 1 %AND GMODE # 0 %START;!  IN FP LIST
#line 1255 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (1))) goto L_010c;
#line 1255 "regression-compile-tmp/asems412.imp"
if (((GMODE) == (0))) goto L_010c;
                                                                //   1256              %IF (FORM = 2 %AND TYPE # 10) %OR TF = X'11' %C
#line 1256 "regression-compile-tmp/asems412.imp"
if (((FORM) != (2))) goto L_010d;
#line 1256 "regression-compile-tmp/asems412.imp"
if (((TYPE) != (10))) goto L_010e;
#line 1256 "regression-compile-tmp/asems412.imp"
L_010d:;
#line 1256 "regression-compile-tmp/asems412.imp"
if (((TF) == (17))) goto L_010e;
#line 1256 "regression-compile-tmp/asems412.imp"
if (((TF) != (49))) goto L_010f;
#line 1256 "regression-compile-tmp/asems412.imp"
L_010e:;
                                                                //   1257                                            %OR TF = X'31' %START;! TO A REG
                                                                //   1258                 DECVAR_BASE = PARAM;  DECVAR_DISP = FRAME
#line 1258 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 48;
#line 1258 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = FRAME;
                                                                //   1259                 DECVAR_DISP = DECVAR_DISP+(REGLEN-2) %IF TF = X'31'
#line 1259 "regression-compile-tmp/asems412.imp"
if (((TF) != (49))) goto L_0110;
#line 1259 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = ((DECVAR->DISP) + ((int)(2)));
#line 1259 "regression-compile-tmp/asems412.imp"
L_0110:;
                                                                //   1260                 FRAME = FRAME-REGLEN;  FRAME = 11*REGLEN %IF FRAME < 0
#line 1260 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) - (4));
#line 1260 "regression-compile-tmp/asems412.imp"
if (((FRAME) >= (0))) goto L_0111;
#line 1260 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(11)) * (4));
#line 1260 "regression-compile-tmp/asems412.imp"
L_0111:;
                                                                //   1261                 -> DECD;   ! ...GO DUMP DIAG. ENTRY
#line 1261 "regression-compile-tmp/asems412.imp"
goto U_1004;
                                                                //   1262              %FINISH
#line 1262 "regression-compile-tmp/asems412.imp"
L_010f:;
                                                                //   1263           %FINISH
#line 1263 "regression-compile-tmp/asems412.imp"
L_010c:;
                                                                //   1264           FRAME = 11*REGLEN %IF AMODE >= 0
#line 1264 "regression-compile-tmp/asems412.imp"
if (((AMODE) < (0))) goto L_0112;
#line 1264 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(11)) * (4));
#line 1264 "regression-compile-tmp/asems412.imp"
L_0112:;
                                                                //   1265        %FINISH
#line 1265 "regression-compile-tmp/asems412.imp"
L_010b:;
                                                                //   1266        DECVAR_BASE = LOCAL;  DECVAR_DISP = FRAME
#line 1266 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = LOCAL;
#line 1266 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = FRAME;
                                                                //   1267        FRAME = FRAME+SIZE
#line 1267 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) + (SIZE));
                                                                //   1268  DECD: %IF AMODE = 0 %OR (AMODE = 1 %AND GG # SPEC) %START
#line 1268 "regression-compile-tmp/asems412.imp"
U_1004:;
#line 1268 "regression-compile-tmp/asems412.imp"
if (((AMODE) == (0))) goto L_00e1;
#line 1268 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (1))) goto L_0113;
#line 1268 "regression-compile-tmp/asems412.imp"
if (((GG) == (48))) goto L_0113;
#line 1268 "regression-compile-tmp/asems412.imp"
L_00e1:;
                                                                //   1269           %IF TYPE # RECORD %AND TYPE # 10 %START
#line 1269 "regression-compile-tmp/asems412.imp"
if (((TYPE) == (5))) goto L_0114;
#line 1269 "regression-compile-tmp/asems412.imp"
if (((TYPE) == (10))) goto L_0114;
                                                                //   1270              %IF FORM = 1 %OR FORM = 2 %START
#line 1270 "regression-compile-tmp/asems412.imp"
if (((FORM) == (1))) goto L_0115;
#line 1270 "regression-compile-tmp/asems412.imp"
if (((FORM) != (2))) goto L_0116;
#line 1270 "regression-compile-tmp/asems412.imp"
L_0115:;
                                                                //   1271                 SET DIAG(LOCAL, DECVAR_DISP, TYPE, FORM)
#line 1271 "regression-compile-tmp/asems412.imp"
SETDIAG(LOCAL, DECVAR->DISP, TYPE, FORM);
                                                                //   1272              %FINISH
#line 1272 "regression-compile-tmp/asems412.imp"
L_0116:;
                                                                //   1273           %FINISH
#line 1273 "regression-compile-tmp/asems412.imp"
L_0114:;
                                                                //   1274        %FINISH
#line 1274 "regression-compile-tmp/asems412.imp"
L_0113:;
                                                                //   1275     %END
#line 1275 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DEFINEVAR at level 3
                                                                //   1276     %RECORD(STACKFM)%MAP DESCRIPTOR
#line 1276 "regression-compile-tmp/asems412.imp"
 STACKFM /*map*/*DESCRIPTOR( void )
#line 1276 "regression-compile-tmp/asems412.imp"
{
                                                                //   1277        %RECORD(STACKFM)%NAME V;  %RECORD(DFM)%NAME D
#line 1277 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*V;
#line 1277 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*D;
                                                                //   1278        V == DESC ASL;  ABORT(17) %IF V == NULL
#line 1278 "regression-compile-tmp/asems412.imp"
V = DESCASL;
#line 1278 "regression-compile-tmp/asems412.imp"
if (((V) != (NULL))) goto L_0117;
#line 1278 "regression-compile-tmp/asems412.imp"
ABORT(17);
#line 1278 "regression-compile-tmp/asems412.imp"
L_0117:;
                                                                //   1279        D == DASL;      ABORT(17) %IF D == NULL
#line 1279 "regression-compile-tmp/asems412.imp"
D = DASL;
#line 1279 "regression-compile-tmp/asems412.imp"
if (((D) != (NULL))) goto L_0118;
#line 1279 "regression-compile-tmp/asems412.imp"
ABORT(17);
#line 1279 "regression-compile-tmp/asems412.imp"
L_0118:;
                                                                //   1280        DESC ASL == V_LINK;  V = 0
#line 1280 "regression-compile-tmp/asems412.imp"
DESCASL = V->LINK;
#line 1280 "regression-compile-tmp/asems412.imp"
*V = (STACKFM){ 0 } /* Assign 0's to all fields of record */;
                                                                //   1281        DASL == D_LINK;  D_LINK == USING_LINK;  USING_LINK == D
#line 1281 "regression-compile-tmp/asems412.imp"
DASL = D->LINK;
#line 1281 "regression-compile-tmp/asems412.imp"
D->LINK = USING.LINK;
#line 1281 "regression-compile-tmp/asems412.imp"
USING.LINK = D;
                                                                //   1282        D_D == V
#line 1282 "regression-compile-tmp/asems412.imp"
D->D = V;
                                                                //   1283        V_LINK ==NULL
#line 1283 "regression-compile-tmp/asems412.imp"
V->LINK = NULL;
                                                                //   1284        %RESULT == V
#line 1284 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return V;
                                                                //   1285     %END
#line 1285 "regression-compile-tmp/asems412.imp"
} // End of block DESCRIPTOR at level 3
                                                                //   1286     %ROUTINE DROP(%RECORD(STACKFM)%NAME D)
#line 1286 "regression-compile-tmp/asems412.imp"
void DROP(  STACKFM /*name*/*D )
#line 1286 "regression-compile-tmp/asems412.imp"
{
                                                                //   1287        %RECORD(DFM)%NAME P, Q
#line 1287 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*P;
#line 1287 "regression-compile-tmp/asems412.imp"
 DFM /*name*/*Q;
                                                                //   1288        P == USING
#line 1288 "regression-compile-tmp/asems412.imp"
P = &USING;
                                                                //   1289        %CYCLE
#line 1289 "regression-compile-tmp/asems412.imp"
L_0119:;
                                                                //   1290           Q == P_LINK
#line 1290 "regression-compile-tmp/asems412.imp"
Q = P->LINK;
                                                                //   1291           ABORT(18) %IF Q == NULL
#line 1291 "regression-compile-tmp/asems412.imp"
if (((Q) != (NULL))) goto L_011c;
#line 1291 "regression-compile-tmp/asems412.imp"
ABORT(18);
#line 1291 "regression-compile-tmp/asems412.imp"
L_011c:;
                                                                //   1292           %EXIT %IF Q_D == D
#line 1292 "regression-compile-tmp/asems412.imp"
if (((Q->D) != (D))) goto L_011d;
#line 1292 "regression-compile-tmp/asems412.imp"
goto L_011a;
#line 1292 "regression-compile-tmp/asems412.imp"
L_011d:;
                                                                //   1293           P == Q
#line 1293 "regression-compile-tmp/asems412.imp"
P = Q;
                                                                //   1294        %REPEAT
#line 1294 "regression-compile-tmp/asems412.imp"
goto L_0119;
#line 1294 "regression-compile-tmp/asems412.imp"
L_011a:;
                                                                //   1295        P_LINK == Q_LINK
#line 1295 "regression-compile-tmp/asems412.imp"
P->LINK = Q->LINK;
                                                                //   1296        Q_LINK == DASL;  DASL == Q
#line 1296 "regression-compile-tmp/asems412.imp"
Q->LINK = DASL;
#line 1296 "regression-compile-tmp/asems412.imp"
DASL = Q;
                                                                //   1297        D_LINK == DESC ASL;  DESC ASL == D
#line 1297 "regression-compile-tmp/asems412.imp"
D->LINK = DESCASL;
#line 1297 "regression-compile-tmp/asems412.imp"
DESCASL = D;
                                                                //   1298     %END
#line 1298 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DROP at level 3
                                                                //   1299     %ROUTINE STACK(%INTEGER DISP, BASE, TYPE, FORM, FORMAT, EXTRA, LENGTH)
#line 1299 "regression-compile-tmp/asems412.imp"
void STACK( int DISP, int BASE, int TYPE, int FORM, int FORMAT, int EXTRA, int LENGTH )
#line 1299 "regression-compile-tmp/asems412.imp"
{
                                                                //   1300        %CONSTBYTEINTEGERARRAY FMAP(0:15) = CONSTANT, V IN S, A IN S,0(4),
#line 1300 "regression-compile-tmp/asems412.imp"
const unsigned char FMAP[16] = { 0, 3, 2, 0, 0, 0, 0, 16, 17, 19, 19, 3, 2, 0, 0, 0,  };
                                                                //   1301                                        16,17,19,19,
                                                                //   1302                                        !0, V IN R, V IN S, V IN S,
                                                                //   1303                                        V IN S, A IN S,
                                                                //   1304                                        0(3)
                                                                //   1305        %RECORD(STACKFM)%NAME V
#line 1305 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*V;
                                                                //   1306        STP = STP+1;  ABORT(7) %IF STP > MAX DEPTH
#line 1306 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) + (1));
#line 1306 "regression-compile-tmp/asems412.imp"
if (((STP) <= (16))) goto L_011e;
#line 1306 "regression-compile-tmp/asems412.imp"
ABORT(7);
#line 1306 "regression-compile-tmp/asems412.imp"
L_011e:;
                                                                //   1307        V == DESCRIPTOR
#line 1307 "regression-compile-tmp/asems412.imp"
V = DESCRIPTOR();
                                                                //   1308        V_BASE = BASE
#line 1308 "regression-compile-tmp/asems412.imp"
V->BASE = BASE;
                                                                //   1309        V_DISP = DISP
#line 1309 "regression-compile-tmp/asems412.imp"
V->DISP = DISP;
                                                                //   1310        V_FORMAT = FORMAT
#line 1310 "regression-compile-tmp/asems412.imp"
V->FORMAT = FORMAT;
                                                                //   1311        V_EXTRA = EXTRA;  V_DV = EXTRA
#line 1311 "regression-compile-tmp/asems412.imp"
V->EXTRA = EXTRA;
#line 1311 "regression-compile-tmp/asems412.imp"
V->DV = EXTRA;
                                                                //   1312        V_TYPE = TYPE
#line 1312 "regression-compile-tmp/asems412.imp"
V->TYPE = TYPE;
                                                                //   1313        V_LENGTH = LENGTH
#line 1313 "regression-compile-tmp/asems412.imp"
V->LENGTH = LENGTH;
                                                                //   1314        V_FORM = FMAP(FORM)
#line 1314 "regression-compile-tmp/asems412.imp"
V->FORM = FMAP[FORM];
                                                                //   1315        STACKED(STP)_V == V
#line 1315 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = V;
                                                                //   1316        LHS == V
#line 1316 "regression-compile-tmp/asems412.imp"
LHS = V;
                                                                //   1317        SHOW(V) %IF CONTROL < 0
#line 1317 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_011f;
#line 1317 "regression-compile-tmp/asems412.imp"
SHOW(V);
#line 1317 "regression-compile-tmp/asems412.imp"
L_011f:;
                                                                //   1318     %END
#line 1318 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STACK at level 3
                                                                //   1319     %ROUTINE VSTACK(%RECORD(VARFM)%NAME V)
#line 1319 "regression-compile-tmp/asems412.imp"
void VSTACK(  VARFM /*name*/*V )
#line 1319 "regression-compile-tmp/asems412.imp"
{
                                                                //   1320        STACK(V_DISP, V_BASE, V_TYPE, V_FORM, V_FORMAT, V_EXTRA, V_LENGTH)
#line 1320 "regression-compile-tmp/asems412.imp"
STACK(V->DISP, V->BASE, V->TYPE, V->FORM, V->FORMAT, V->EXTRA, V->LENGTH);
                                                                //   1321     %END
#line 1321 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block VSTACK at level 3
                                                                //   1322     %ROUTINE SSTACK(%RECORD(STACKFM)%NAME V)
#line 1322 "regression-compile-tmp/asems412.imp"
void SSTACK(  STACKFM /*name*/*V )
#line 1322 "regression-compile-tmp/asems412.imp"
{
                                                                //   1323        %RECORD(STACKFM)%NAME T
#line 1323 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*T;
                                                                //   1324        STP = STP+1;  ABORT(7) %IF STP > MAX DEPTH
#line 1324 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) + (1));
#line 1324 "regression-compile-tmp/asems412.imp"
if (((STP) <= (16))) goto L_0120;
#line 1324 "regression-compile-tmp/asems412.imp"
ABORT(7);
#line 1324 "regression-compile-tmp/asems412.imp"
L_0120:;
                                                                //   1325        T == DESCRIPTOR;  T = V
#line 1325 "regression-compile-tmp/asems412.imp"
T = DESCRIPTOR();
#line 1325 "regression-compile-tmp/asems412.imp"
*T = *V;
                                                                //   1326        STACKED(STP)_V == T;  CLAIM(T_BASE)
#line 1326 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = T;
#line 1326 "regression-compile-tmp/asems412.imp"
CLAIM(T->BASE);
                                                                //   1327        SHOW(T) %IF CONTROL < 0
#line 1327 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0121;
#line 1327 "regression-compile-tmp/asems412.imp"
SHOW(T);
#line 1327 "regression-compile-tmp/asems412.imp"
L_0121:;
                                                                //   1328     %END
#line 1328 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SSTACK at level 3
                                                                //   1329     %ROUTINE C STACK(%INTEGER N)
#line 1329 "regression-compile-tmp/asems412.imp"
void CSTACK( int N )
#line 1329 "regression-compile-tmp/asems412.imp"
{
                                                                //   1330        RHS == DESCRIPTOR
#line 1330 "regression-compile-tmp/asems412.imp"
RHS = DESCRIPTOR();
                                                                //   1331        RHS_BASE = 0
#line 1331 "regression-compile-tmp/asems412.imp"
RHS->BASE = 0;
                                                                //   1332        RHS_DISP = N
#line 1332 "regression-compile-tmp/asems412.imp"
RHS->DISP = N;
                                                                //   1333        RHS_TYPE = INTEGER
#line 1333 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 1;
                                                                //   1334        RHS_FORM = CONSTANT
#line 1334 "regression-compile-tmp/asems412.imp"
RHS->FORM = 0;
                                                                //   1335        STP = STP+1;  ABORT(7) %IF STP > MAX DEPTH
#line 1335 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) + (1));
#line 1335 "regression-compile-tmp/asems412.imp"
if (((STP) <= (16))) goto L_0122;
#line 1335 "regression-compile-tmp/asems412.imp"
ABORT(7);
#line 1335 "regression-compile-tmp/asems412.imp"
L_0122:;
                                                                //   1336        STACKED(STP)_V == RHS
#line 1336 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = RHS;
                                                                //   1337        SHOW(RHS) %IF CONTROL < 0
#line 1337 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0123;
#line 1337 "regression-compile-tmp/asems412.imp"
SHOW(RHS);
#line 1337 "regression-compile-tmp/asems412.imp"
L_0123:;
                                                                //   1338     %END
#line 1338 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CSTACK at level 3
                                                                //   1339     %ROUTINE  FP CSTACK(%REAL X, %RECORD(STACK FM)%NAME  R)
#line 1339 "regression-compile-tmp/asems412.imp"
void FPCSTACK( float X,  STACKFM /*name*/*R )
#line 1339 "regression-compile-tmp/asems412.imp"
{
                                                                //   1340        %RECORDFORMAT  F(%INTEGER  VAL, GDISP)
#line 1340 "regression-compile-tmp/asems412.imp"
typedef struct F F;
struct F {
  int VAL;
  int GDISP;
};
                                                                //   1341        %CONSTINTEGER  L=31;    ! ... MUST BE 2\\N - 1
                                                                //   1342        %OWNRECORD(F)%ARRAY CONST LIST(0:L)
#line 1342 "regression-compile-tmp/asems412.imp"
static  F CONSTLIST[32];
                                                                //   1343        %OWNSHORTINTEGER  LAST PNTR = 0, NEXT PNTR = 0
#line 1343 "regression-compile-tmp/asems412.imp"
static short LASTPNTR = 0;
#line 1343 "regression-compile-tmp/asems412.imp"
static short NEXTPNTR = 0;
                                                                //   1344        %INTEGER  N;  %SHORTINTEGER I
#line 1344 "regression-compile-tmp/asems412.imp"
int N;
#line 1344 "regression-compile-tmp/asems412.imp"
short I;
                                                                //   1345  !!!      %RECORDFORMAT  FI(%INTEGER X)
                                                                //   1346  !!!      %RECORDFORMAT  FR(%REAL X)
                                                                //   1347  !!!      %RECORD(FR) RV;  %RECORD(FI)%NAME  IV
                                                                //   1348  !!!      RV_X = X;  IV == RV;  N = IV_X
                                                                //   1349  
                                                                //   1350        %recordformat  convfm(%integer  n %or %real x)
#line 1350 "regression-compile-tmp/asems412.imp"
typedef struct CONVFM CONVFM;
struct CONVFM {
  int N;
  float X;
};
                                                                //   1351        %record(convfm)  conv
#line 1351 "regression-compile-tmp/asems412.imp"
 CONVFM CONV;
                                                                //   1352        conv_x = x;  n = conv_n
#line 1352 "regression-compile-tmp/asems412.imp"
CONV.X = X;
#line 1352 "regression-compile-tmp/asems412.imp"
N = CONV.N;
                                                                //   1353  
                                                                //   1354        OWNVAL = N;  REALGA = GA
#line 1354 "regression-compile-tmp/asems412.imp"
OWNVAL = N;
#line 1354 "regression-compile-tmp/asems412.imp"
REALGA = GA;
                                                                //   1355  !
                                                                //   1356        I = NEXT PNTR
#line 1356 "regression-compile-tmp/asems412.imp"
I = NEXTPNTR;
                                                                //   1357        %WHILE  I # LAST PNTR %CYCLE
#line 1357 "regression-compile-tmp/asems412.imp"
L_0124:;
#line 1357 "regression-compile-tmp/asems412.imp"
if (((I) == (LASTPNTR))) goto L_0125;
                                                                //   1358           I = (I-1)&L
#line 1358 "regression-compile-tmp/asems412.imp"
I = (((((int)(I)) - (1))) & (31));
                                                                //   1359           -> FOUND IT %IF CONST LIST(I)_VAL = N
#line 1359 "regression-compile-tmp/asems412.imp"
if (((CONSTLIST[I].VAL) != (N))) goto L_0127;
#line 1359 "regression-compile-tmp/asems412.imp"
goto U_1005;
#line 1359 "regression-compile-tmp/asems412.imp"
L_0127:;
                                                                //   1360        %REPEAT
#line 1360 "regression-compile-tmp/asems412.imp"
goto L_0124;
#line 1360 "regression-compile-tmp/asems412.imp"
L_0125:;
                                                                //   1361        GFIX(4);  I = GA;    ! FULLWORD ALIGN AND REMEMBER ADDR.
#line 1361 "regression-compile-tmp/asems412.imp"
GFIX(4);
#line 1361 "regression-compile-tmp/asems412.imp"
I = GA;
                                                                //   1362        GWORD(N)
#line 1362 "regression-compile-tmp/asems412.imp"
GWORD(N);
                                                                //   1363        CONST LIST(NEXT PNTR)_VAL = N
#line 1363 "regression-compile-tmp/asems412.imp"
CONSTLIST[NEXTPNTR].VAL = N;
                                                                //   1364        CONST LIST(NEXT PNTR)_GDISP = I
#line 1364 "regression-compile-tmp/asems412.imp"
CONSTLIST[NEXTPNTR].GDISP = I;
                                                                //   1365        I = NEXT PNTR;   ! ...FOR USE AT 'FOUND IT:'
#line 1365 "regression-compile-tmp/asems412.imp"
I = NEXTPNTR;
                                                                //   1366        NEXT PNTR = (NEXT PNTR+1)&L
#line 1366 "regression-compile-tmp/asems412.imp"
NEXTPNTR = (((((int)(NEXTPNTR)) + (1))) & (31));
                                                                //   1367        LAST PNTR = (LAST PNTR+1)&L %IF LAST PNTR = NEXT PNTR
#line 1367 "regression-compile-tmp/asems412.imp"
if (((LASTPNTR) != (NEXTPNTR))) goto L_0128;
#line 1367 "regression-compile-tmp/asems412.imp"
LASTPNTR = (((((int)(LASTPNTR)) + (1))) & (31));
#line 1367 "regression-compile-tmp/asems412.imp"
L_0128:;
                                                                //   1368  FOUND IT:
#line 1368 "regression-compile-tmp/asems412.imp"
U_1005:;
                                                                //   1369        R_BASE = GLA
#line 1369 "regression-compile-tmp/asems412.imp"
R->BASE = 42;
                                                                //   1370        R_DISP = CONST LIST(I)_GDISP
#line 1370 "regression-compile-tmp/asems412.imp"
R->DISP = CONSTLIST[I].GDISP;
                                                                //   1371        R_TYPE = REALS
#line 1371 "regression-compile-tmp/asems412.imp"
R->TYPE = 6;
                                                                //   1372        R_FORM = V IN S
#line 1372 "regression-compile-tmp/asems412.imp"
R->FORM = 3;
                                                                //   1373        STP = STP+1;  ABORT(7) %IF STP > MAX DEPTH
#line 1373 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) + (1));
#line 1373 "regression-compile-tmp/asems412.imp"
if (((STP) <= (16))) goto L_0129;
#line 1373 "regression-compile-tmp/asems412.imp"
ABORT(7);
#line 1373 "regression-compile-tmp/asems412.imp"
L_0129:;
                                                                //   1374        STACKED(STP)_V == R
#line 1374 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = R;
                                                                //   1375     %END
#line 1375 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FPCSTACK at level 3
                                                                //   1376     %ROUTINE SSET(%INTEGER BASE, DISP, FORM, EXTRA)
#line 1376 "regression-compile-tmp/asems412.imp"
void SSET( int BASE, int DISP, int FORM, int EXTRA )
#line 1376 "regression-compile-tmp/asems412.imp"
{
                                                                //   1377        RHS == DESCRIPTOR
#line 1377 "regression-compile-tmp/asems412.imp"
RHS = DESCRIPTOR();
                                                                //   1378        RHS_BASE = BASE
#line 1378 "regression-compile-tmp/asems412.imp"
RHS->BASE = BASE;
                                                                //   1379        RHS_DISP = DISP
#line 1379 "regression-compile-tmp/asems412.imp"
RHS->DISP = DISP;
                                                                //   1380        RHS_TYPE = INTEGER
#line 1380 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 1;
                                                                //   1381        RHS_FORM = FORM
#line 1381 "regression-compile-tmp/asems412.imp"
RHS->FORM = FORM;
                                                                //   1382        RHS_EXTRA = EXTRA
#line 1382 "regression-compile-tmp/asems412.imp"
RHS->EXTRA = EXTRA;
                                                                //   1383        STP = STP+1;  ABORT(7) %IF STP > MAX DEPTH
#line 1383 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) + (1));
#line 1383 "regression-compile-tmp/asems412.imp"
if (((STP) <= (16))) goto L_012a;
#line 1383 "regression-compile-tmp/asems412.imp"
ABORT(7);
#line 1383 "regression-compile-tmp/asems412.imp"
L_012a:;
                                                                //   1384        STACKED(STP)_V == RHS
#line 1384 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = RHS;
                                                                //   1385     %END
#line 1385 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SSET at level 3
                                                                //   1386     %ROUTINE SET LHS
#line 1386 "regression-compile-tmp/asems412.imp"
void SETLHS( void )
#line 1386 "regression-compile-tmp/asems412.imp"
{
                                                                //   1387        LHS == STACKED(STP)_V
#line 1387 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   1388     %END
#line 1388 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SETLHS at level 3
                                                                //   1389     %ROUTINE SET BOTH
#line 1389 "regression-compile-tmp/asems412.imp"
void SETBOTH( void )
#line 1389 "regression-compile-tmp/asems412.imp"
{
                                                                //   1390        ABORT(8) %IF STP <= 1
#line 1390 "regression-compile-tmp/asems412.imp"
if (((STP) > (1))) goto L_012b;
#line 1390 "regression-compile-tmp/asems412.imp"
ABORT(8);
#line 1390 "regression-compile-tmp/asems412.imp"
L_012b:;
                                                                //   1391        LHS == STACKED(STP-1)_V
#line 1391 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)((((int)(STP)) - (1)))) - (1))].V;
                                                                //   1392        RHS == STACKED(STP)_V
#line 1392 "regression-compile-tmp/asems412.imp"
RHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   1393     %END
#line 1393 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SETBOTH at level 3
                                                                //   1394     %ROUTINE POP LHS
#line 1394 "regression-compile-tmp/asems412.imp"
void POPLHS( void )
#line 1394 "regression-compile-tmp/asems412.imp"
{
                                                                //   1395        ABORT(8) %IF STP <= 0
#line 1395 "regression-compile-tmp/asems412.imp"
if (((STP) > (0))) goto L_012c;
#line 1395 "regression-compile-tmp/asems412.imp"
ABORT(8);
#line 1395 "regression-compile-tmp/asems412.imp"
L_012c:;
                                                                //   1396        LHS == STACKED(STP)_V
#line 1396 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   1397        STP = STP-1
#line 1397 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   1398     %END
#line 1398 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block POPLHS at level 3
                                                                //   1399  
                                                                //   1400   ! STRING PROCESSING
                                                                //   1401  
                                                                //   1402     %ROUTINE DUMP STRING(%INTEGER MAX)
#line 1402 "regression-compile-tmp/asems412.imp"
void DUMPSTRING( int MAX )
#line 1402 "regression-compile-tmp/asems412.imp"
{
                                                                //   1403        %INTEGER J
#line 1403 "regression-compile-tmp/asems412.imp"
int J;
                                                                //   1404        GFIX(2)
#line 1404 "regression-compile-tmp/asems412.imp"
GFIX(2);
                                                                //   1405        %IF MAX <= 0 %START
#line 1405 "regression-compile-tmp/asems412.imp"
if (((MAX) > (0))) goto L_012d;
                                                                //   1406           ->OUT %IF ACTIVE STRING == NULL %OR (MAX < 0 %AND CSLEN = 0)
#line 1406 "regression-compile-tmp/asems412.imp"
if (((ACTIVESTRING) == (NULL))) goto L_0107;
#line 1406 "regression-compile-tmp/asems412.imp"
if (((MAX) >= (0))) goto L_012e;
#line 1406 "regression-compile-tmp/asems412.imp"
if (((*CSLEN) != (0))) goto L_012e;
#line 1406 "regression-compile-tmp/asems412.imp"
L_0107:;
#line 1406 "regression-compile-tmp/asems412.imp"
goto U_1006;
#line 1406 "regression-compile-tmp/asems412.imp"
L_012e:;
                                                                //   1407           ACTIVE STRING_BASE = GLA;  ACTIVE STRING_DISP = GA
#line 1407 "regression-compile-tmp/asems412.imp"
ACTIVESTRING->BASE = 42;
#line 1407 "regression-compile-tmp/asems412.imp"
ACTIVESTRING->DISP = GA;
                                                                //   1408           ACTIVE STRING_FORM = V IN S
#line 1408 "regression-compile-tmp/asems412.imp"
ACTIVESTRING->FORM = 3;
                                                                //   1409           MAX = CSLEN
#line 1409 "regression-compile-tmp/asems412.imp"
MAX = *CSLEN;
                                                                //   1410        %ELSE
#line 1410 "regression-compile-tmp/asems412.imp"
goto L_012f;
#line 1410 "regression-compile-tmp/asems412.imp"
L_012d:;
                                                                //   1411           MAX = MAX-1
#line 1411 "regression-compile-tmp/asems412.imp"
MAX = (((int)(MAX)) - (1));
                                                                //   1412           ABORT(-13) %IF MAX < CSLEN
#line 1412 "regression-compile-tmp/asems412.imp"
if (((MAX) >= (*CSLEN))) goto L_0130;
#line 1412 "regression-compile-tmp/asems412.imp"
ABORT((-13));
#line 1412 "regression-compile-tmp/asems412.imp"
L_0130:;
                                                                //   1413        %FINISH
#line 1413 "regression-compile-tmp/asems412.imp"
L_012f:;
                                                                //   1414        GBYTE(CURRENT STRING(J)) %FOR J = 0, 1, MAX
#line 1414 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 0; _increment = 1; _final = MAX; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, MAX");
J -= _increment; _control -= _increment;
L_0131:;
if (J == _final) goto L_0132;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
#line 1414 "regression-compile-tmp/asems412.imp"
GBYTE(CURRENTSTRING[J]);
#line 1414 "regression-compile-tmp/asems412.imp"
goto L_0131;
#line 1414 "regression-compile-tmp/asems412.imp"
L_0132:;
                                                                //   1415        CSLEN = 0
#line 1415 "regression-compile-tmp/asems412.imp"
*CSLEN = 0;
                                                                //   1416  OUT:  ACTIVE STRING == NULL
#line 1416 "regression-compile-tmp/asems412.imp"
U_1006:;
#line 1416 "regression-compile-tmp/asems412.imp"
ACTIVESTRING = NULL;
                                                                //   1417     %END
#line 1417 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DUMPSTRING at level 3
                                                                //   1418     %ROUTINE GET STRING
#line 1418 "regression-compile-tmp/asems412.imp"
void GETSTRING( void )
#line 1418 "regression-compile-tmp/asems412.imp"
{
                                                                //   1419        %INTEGER L, S
#line 1419 "regression-compile-tmp/asems412.imp"
int L;
#line 1419 "regression-compile-tmp/asems412.imp"
int S;
                                                                //   1420        DUMP STRING(0) %UNLESS ACTIVE STRING == NULL
#line 1420 "regression-compile-tmp/asems412.imp"
if (((ACTIVESTRING) == (NULL))) goto L_0134;
#line 1420 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
#line 1420 "regression-compile-tmp/asems412.imp"
L_0134:;
                                                                //   1421        L = TAG;  SKIPSYMBOL %IF L # 0
#line 1421 "regression-compile-tmp/asems412.imp"
L = TAG();
#line 1421 "regression-compile-tmp/asems412.imp"
if (((L) == (0))) goto L_0135;
#line 1421 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
#line 1421 "regression-compile-tmp/asems412.imp"
L_0135:;
                                                                //   1422        CSLEN = 0
#line 1422 "regression-compile-tmp/asems412.imp"
*CSLEN = 0;
                                                                //   1423        %WHILE L > 0 %CYCLE
#line 1423 "regression-compile-tmp/asems412.imp"
L_0136:;
#line 1423 "regression-compile-tmp/asems412.imp"
if (((L) <= (0))) goto L_0137;
                                                                //   1424           L = L-1
#line 1424 "regression-compile-tmp/asems412.imp"
L = (((int)(L)) - (1));
                                                                //   1425           READSYMBOL(S)
#line 1425 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&S);
                                                                //   1426           CSLEN = CSLEN+1;  CURRENT STRING(CSLEN) = S
#line 1426 "regression-compile-tmp/asems412.imp"
*CSLEN = ((*(int *)(CSLEN)) + (1));
#line 1426 "regression-compile-tmp/asems412.imp"
CURRENTSTRING[*CSLEN] = S;
                                                                //   1427        %REPEAT
#line 1427 "regression-compile-tmp/asems412.imp"
goto L_0136;
#line 1427 "regression-compile-tmp/asems412.imp"
L_0137:;
                                                                //   1428        STACK(0, 0, STRING, 0, 0, 0, 0)
#line 1428 "regression-compile-tmp/asems412.imp"
STACK(0, 0, 4, 0, 0, 0, 0);
                                                                //   1429        ACTIVE STRING == STACKED(STP)_V
#line 1429 "regression-compile-tmp/asems412.imp"
ACTIVESTRING = STACKED[(((int)(STP)) - (1))].V;
                                                                //   1430     %END
#line 1430 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GETSTRING at level 3
                                                                //   1431  
                                                                //   1432  ! LABEL PROCESSING
                                                                //   1433  
                                                                //   1434        %INTEGERFN NEW TAG
#line 1434 "regression-compile-tmp/asems412.imp"
int NEWTAG( void )
#line 1434 "regression-compile-tmp/asems412.imp"
{
                                                                //   1435           %OWNINTEGER TAG = 0
#line 1435 "regression-compile-tmp/asems412.imp"
static int TAG = 0;
                                                                //   1436           TAG = TAG+1
#line 1436 "regression-compile-tmp/asems412.imp"
TAG = (((int)(TAG)) + (1));
                                                                //   1437           %RESULT = TAG
#line 1437 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return TAG;
                                                                //   1438        %END
#line 1438 "regression-compile-tmp/asems412.imp"
} // End of block NEWTAG at level 3
                                                                //   1439        %RECORD(LABELFM)%MAP NEW LABEL
#line 1439 "regression-compile-tmp/asems412.imp"
 LABELFM /*map*/*NEWLABEL( void )
#line 1439 "regression-compile-tmp/asems412.imp"
{
                                                                //   1440           LABS = LABS+1;  ABORT(-5) %IF LABS > MAX LABELS
#line 1440 "regression-compile-tmp/asems412.imp"
LABS = (((int)(LABS)) + (1));
#line 1440 "regression-compile-tmp/asems412.imp"
if (((LABS) <= (80))) goto L_0139;
#line 1440 "regression-compile-tmp/asems412.imp"
ABORT((-5));
#line 1440 "regression-compile-tmp/asems412.imp"
L_0139:;
                                                                //   1441           FLAB == LABELS(LABS)
#line 1441 "regression-compile-tmp/asems412.imp"
FLAB = &LABELS[(((int)(LABS)) - (1))];
                                                                //   1442           %RESULT == FLAB
#line 1442 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return FLAB;
                                                                //   1443        %END
#line 1443 "regression-compile-tmp/asems412.imp"
} // End of block NEWLABEL at level 3
                                                                //   1444        %RECORD(LABELFM)%MAP FIND(%INTEGER LABEL)
#line 1444 "regression-compile-tmp/asems412.imp"
 LABELFM /*map*/*FIND( int LABEL )
#line 1444 "regression-compile-tmp/asems412.imp"
{
                                                                //   1445           %INTEGER LP
#line 1445 "regression-compile-tmp/asems412.imp"
int LP;
                                                                //   1446           LP = LABS
#line 1446 "regression-compile-tmp/asems412.imp"
LP = LABS;
                                                                //   1447           %WHILE LP # LABEL START %CYCLE
#line 1447 "regression-compile-tmp/asems412.imp"
L_013a:;
#line 1447 "regression-compile-tmp/asems412.imp"
if (((LP) == (LABELSTART))) goto L_013b;
                                                                //   1448              FLAB == LABELS(LP)
#line 1448 "regression-compile-tmp/asems412.imp"
FLAB = &LABELS[(((int)(LP)) - (1))];
                                                                //   1449              %RESULT == FLAB %IF FLAB_ID = LABEL
#line 1449 "regression-compile-tmp/asems412.imp"
if (((FLAB->ID) != (LABEL))) goto L_013d;
#line 1449 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return FLAB;
#line 1449 "regression-compile-tmp/asems412.imp"
L_013d:;
                                                                //   1450              LP = LP-1
#line 1450 "regression-compile-tmp/asems412.imp"
LP = (((int)(LP)) - (1));
                                                                //   1451           %REPEAT
#line 1451 "regression-compile-tmp/asems412.imp"
goto L_013a;
#line 1451 "regression-compile-tmp/asems412.imp"
L_013b:;
                                                                //   1452           %RESULT == NULL
#line 1452 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return NULL;
                                                                //   1453        %END
#line 1453 "regression-compile-tmp/asems412.imp"
} // End of block FIND at level 3
                                                                //   1454        %ROUTINE DEFINE LABEL(%INTEGER LABEL)
#line 1454 "regression-compile-tmp/asems412.imp"
void DEFINELABEL( int LABEL )
#line 1454 "regression-compile-tmp/asems412.imp"
{
                                                                //   1455           %RECORD(ENVFM)%NAME E
#line 1455 "regression-compile-tmp/asems412.imp"
 ENVFM /*name*/*E;
                                                                //   1456           %RECORD(LABELFM)%NAME L
#line 1456 "regression-compile-tmp/asems412.imp"
 LABELFM /*name*/*L;
                                                                //   1457           L == FIND(LABEL)
#line 1457 "regression-compile-tmp/asems412.imp"
L = FIND(LABEL);
                                                                //   1458           %IF L == NULL %START
#line 1458 "regression-compile-tmp/asems412.imp"
if (((L) != (NULL))) goto L_013e;
                                                                //   1459              %IF CONTROL < 0 %START
#line 1459 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_013f;
                                                                //   1460                 SELECTOUTPUT(REPORT)
#line 1460 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(0);
                                                                //   1461                 PRINTSTRING(" DEF:");  WRITE(LABEL, 2)
#line 1461 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal(" DEF:"));
#line 1461 "regression-compile-tmp/asems412.imp"
_imp_WRITE(LABEL, 2);
                                                                //   1462                 PRINTSTRING("  LABS =");  WRITE(LABS, 2);  NEWLINE
#line 1462 "regression-compile-tmp/asems412.imp"
_imp_PRINTSTRING(_imp_str_literal("  LABS ="));
#line 1462 "regression-compile-tmp/asems412.imp"
_imp_WRITE(LABS, 2);
#line 1462 "regression-compile-tmp/asems412.imp"
_imp_NEWLINE();
                                                                //   1463                 SELECTOUTPUT(OBJECT)
#line 1463 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
                                                                //   1464              %FINISH
#line 1464 "regression-compile-tmp/asems412.imp"
L_013f:;
                                                                //   1465              L == NEW LABEL
#line 1465 "regression-compile-tmp/asems412.imp"
L = NEWLABEL();
                                                                //   1466              L_ID = LABEL;  L_TAG = NEW TAG;  L_REG = 0
#line 1466 "regression-compile-tmp/asems412.imp"
L->ID = LABEL;
#line 1466 "regression-compile-tmp/asems412.imp"
L->TAG = NEWTAG();
#line 1466 "regression-compile-tmp/asems412.imp"
L->REG = 0;
                                                                //   1467              LIMEN = CA
#line 1467 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
                                                                //   1468              E == ENVIRONMENT(LABEL);  E_LABEL = 0
#line 1468 "regression-compile-tmp/asems412.imp"
E = ENVIRONMENT(LABEL);
#line 1468 "regression-compile-tmp/asems412.imp"
E->LABEL = 0;
                                                                //   1469           %ELSE %IF L_TAG < 0 %AND LABEL >= 0
#line 1469 "regression-compile-tmp/asems412.imp"
goto L_0140;
#line 1469 "regression-compile-tmp/asems412.imp"
L_013e:;
#line 1469 "regression-compile-tmp/asems412.imp"
if (((L->TAG) >= (0))) goto L_0141;
#line 1469 "regression-compile-tmp/asems412.imp"
if (((LABEL) < (0))) goto L_0141;
                                                                //   1470              L_TAG = NEW TAG;  L_REG = 0
#line 1470 "regression-compile-tmp/asems412.imp"
L->TAG = NEWTAG();
#line 1470 "regression-compile-tmp/asems412.imp"
L->REG = 0;
                                                                //   1471              E == ENVIRONMENT(LABEL);  E_LABEL = 0
#line 1471 "regression-compile-tmp/asems412.imp"
E = ENVIRONMENT(LABEL);
#line 1471 "regression-compile-tmp/asems412.imp"
E->LABEL = 0;
                                                                //   1472           %FINISH
#line 1472 "regression-compile-tmp/asems412.imp"
L_0141:;
#line 1472 "regression-compile-tmp/asems412.imp"
L_0140:;
                                                                //   1473           L_TAG = L_TAG!X'8000'
#line 1473 "regression-compile-tmp/asems412.imp"
L->TAG = ((L->TAG) | (32768));
                                                                //   1474           DEFINE TAG(L_TAG&X'7FFF')
#line 1474 "regression-compile-tmp/asems412.imp"
DEFINETAG(((L->TAG) & (32767)));
                                                                //   1475           MERGE ENVIRONMENT(LABEL) %IF UNCOND JUMP # CA
#line 1475 "regression-compile-tmp/asems412.imp"
if (((UNCONDJUMP) == (CA))) goto L_0142;
#line 1475 "regression-compile-tmp/asems412.imp"
MERGEENVIRONMENT(LABEL);
#line 1475 "regression-compile-tmp/asems412.imp"
L_0142:;
                                                                //   1476           RESTORE ENVIRONMENT(LABEL)
#line 1476 "regression-compile-tmp/asems412.imp"
RESTOREENVIRONMENT(LABEL);
                                                                //   1477           RT LAB = CA %IF LABEL = 0
#line 1477 "regression-compile-tmp/asems412.imp"
if (((LABEL) != (0))) goto L_0143;
#line 1477 "regression-compile-tmp/asems412.imp"
RTLAB = CA;
#line 1477 "regression-compile-tmp/asems412.imp"
L_0143:;
                                                                //   1478           CCCA = 0
#line 1478 "regression-compile-tmp/asems412.imp"
CCCA = 0;
                                                                //   1479           UNCOND JUMP = 0;! YOU CAN GET HERE!
#line 1479 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = 0;
                                                                //   1480        %END
#line 1480 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DEFINELABEL at level 3
                                                                //   1481        %ROUTINE JUMP TO(%INTEGER LABEL, COND, DEF)
#line 1481 "regression-compile-tmp/asems412.imp"
void JUMPTO( int LABEL, int COND, int DEF )
#line 1481 "regression-compile-tmp/asems412.imp"
{
                                                                //   1482           %INTEGER REF, LTAG
#line 1482 "regression-compile-tmp/asems412.imp"
int REF;
#line 1482 "regression-compile-tmp/asems412.imp"
int LTAG;
                                                                //   1483           %RECORD(LABELFM)%NAME LAB
#line 1483 "regression-compile-tmp/asems412.imp"
 LABELFM /*name*/*LAB;
                                                                //   1484           %RECORD(USEFM)%NAME U
#line 1484 "regression-compile-tmp/asems412.imp"
 USEFM /*name*/*U;
                                                                //   1485           INVERT = 0;! EXPEND CONDITION INVERSION
#line 1485 "regression-compile-tmp/asems412.imp"
INVERT = 0;
                                                                //   1486           LAB == FIND(LABEL)
#line 1486 "regression-compile-tmp/asems412.imp"
LAB = FIND(LABEL);
                                                                //   1487           %IF LABEL = 0 %AND RT LAB = CA %START;! JUMP ROUND ROUTINE
#line 1487 "regression-compile-tmp/asems412.imp"
if (((LABEL) != (0))) goto L_0144;
#line 1487 "regression-compile-tmp/asems412.imp"
if (((RTLAB) != (CA))) goto L_0144;
                                                                //   1488              LAB_TAG = LAB_TAG&X'7FFF';  %RETURN
#line 1488 "regression-compile-tmp/asems412.imp"
LAB->TAG = ((LAB->TAG) & (32767));
#line 1488 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1489           %FINISH
#line 1489 "regression-compile-tmp/asems412.imp"
L_0144:;
                                                                //   1490           %IF LAB == NULL %START
#line 1490 "regression-compile-tmp/asems412.imp"
if (((LAB) != (NULL))) goto L_0145;
                                                                //   1491              LAB == NEW LABEL
#line 1491 "regression-compile-tmp/asems412.imp"
LAB = NEWLABEL();
                                                                //   1492              LAB_ID = LABEL;  LAB_REG = 0
#line 1492 "regression-compile-tmp/asems412.imp"
LAB->ID = LABEL;
#line 1492 "regression-compile-tmp/asems412.imp"
LAB->REG = 0;
                                                                //   1493              LAB_TAG = NEW TAG
#line 1493 "regression-compile-tmp/asems412.imp"
LAB->TAG = NEWTAG();
                                                                //   1494              REMEMBER ENVIRONMENT(LABEL)
#line 1494 "regression-compile-tmp/asems412.imp"
REMEMBERENVIRONMENT(LABEL);
                                                                //   1495           %ELSE %IF LAB_REG # 0 %AND SYM # 'B'
#line 1495 "regression-compile-tmp/asems412.imp"
goto L_0146;
#line 1495 "regression-compile-tmp/asems412.imp"
L_0145:;
#line 1495 "regression-compile-tmp/asems412.imp"
if (((LAB->REG) == (0))) goto L_0147;
#line 1495 "regression-compile-tmp/asems412.imp"
if (((SYM) == (66))) goto L_0147;
                                                                //   1496              LAB_BASE = LAB_BASE!128
#line 1496 "regression-compile-tmp/asems412.imp"
LAB->BASE = ((LAB->BASE) | (128));
                                                                //   1497              JUMP TO(LABEL+3, COND, DEF)
#line 1497 "regression-compile-tmp/asems412.imp"
JUMPTO((((int)(LABEL)) + (3)), COND, DEF);
                                                                //   1498              %RETURN
#line 1498 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1499           %ELSE %IF LAB_TAG < 0 %AND DEF = REDEFINE
#line 1499 "regression-compile-tmp/asems412.imp"
L_0147:;
#line 1499 "regression-compile-tmp/asems412.imp"
if (((LAB->TAG) >= (0))) goto L_0148;
#line 1499 "regression-compile-tmp/asems412.imp"
if (((DEF) != (1))) goto L_0148;
                                                                //   1500              LAB_REG = 0;  LAB_TAG = NEW TAG
#line 1500 "regression-compile-tmp/asems412.imp"
LAB->REG = 0;
#line 1500 "regression-compile-tmp/asems412.imp"
LAB->TAG = NEWTAG();
                                                                //   1501              REMEMBER ENVIRONMENT(LABEL)
#line 1501 "regression-compile-tmp/asems412.imp"
REMEMBERENVIRONMENT(LABEL);
                                                                //   1502           %ELSE
#line 1502 "regression-compile-tmp/asems412.imp"
goto L_0146;
#line 1502 "regression-compile-tmp/asems412.imp"
L_0148:;
                                                                //   1503              MERGE ENVIRONMENT(LABEL) %IF LAB_TAG >= 0
#line 1503 "regression-compile-tmp/asems412.imp"
if (((LAB->TAG) < (0))) goto L_0149;
#line 1503 "regression-compile-tmp/asems412.imp"
MERGEENVIRONMENT(LABEL);
#line 1503 "regression-compile-tmp/asems412.imp"
L_0149:;
                                                                //   1504           %FINISH
#line 1504 "regression-compile-tmp/asems412.imp"
L_0146:;
                                                                //   1505           LTAG = LAB_TAG&X'7FFF'
#line 1505 "regression-compile-tmp/asems412.imp"
LTAG = ((LAB->TAG) & (32767));
                                                                //   1506           %IF LAB_REG # 0 %START
#line 1506 "regression-compile-tmp/asems412.imp"
if (((LAB->REG) == (0))) goto L_014a;
                                                                //   1507              DEFINE LABEL(LABEL+3) %IF LAB_BASE&128 # 0
#line 1507 "regression-compile-tmp/asems412.imp"
if (((((LAB->BASE) & (128))) == (0))) goto L_014b;
#line 1507 "regression-compile-tmp/asems412.imp"
DEFINELABEL((((int)(LABEL)) + (3)));
#line 1507 "regression-compile-tmp/asems412.imp"
L_014b:;
                                                                //   1508              SSET(LAB_BASE&127, LAB_DISP, V IN S, 0)
#line 1508 "regression-compile-tmp/asems412.imp"
SSET(((LAB->BASE) & (127)), LAB->DISP, 3, 0);
                                                                //   1509              LHS == RHS;  LOAD(LHS, LAB_REG)
#line 1509 "regression-compile-tmp/asems412.imp"
LHS = RHS;
#line 1509 "regression-compile-tmp/asems412.imp"
LOAD(LHS, LAB->REG);
                                                                //   1510              SSET(0, LAB_LIMIT, CONSTANT, 0)
#line 1510 "regression-compile-tmp/asems412.imp"
SSET(0, LAB->LIMIT, 0, 0);
                                                                //   1511              COMPARE(LHS, RHS);  COND = 1
#line 1511 "regression-compile-tmp/asems412.imp"
COMPARE(LHS, RHS);
#line 1511 "regression-compile-tmp/asems412.imp"
COND = 1;
                                                                //   1512              STP = STP-2;  DROP(LHS);  DROP(RHS)
#line 1512 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
#line 1512 "regression-compile-tmp/asems412.imp"
DROP(LHS);
#line 1512 "regression-compile-tmp/asems412.imp"
DROP(RHS);
                                                                //   1513           %FINISH
#line 1513 "regression-compile-tmp/asems412.imp"
L_014a:;
                                                                //   1514           %IF COND = JUMP %THEN REF = J REF %ELSE REF = C REF
#line 1514 "regression-compile-tmp/asems412.imp"
if (((COND) != (12))) goto L_014c;
#line 1514 "regression-compile-tmp/asems412.imp"
REF = 3;
#line 1514 "regression-compile-tmp/asems412.imp"
goto L_014d;
#line 1514 "regression-compile-tmp/asems412.imp"
L_014c:;
#line 1514 "regression-compile-tmp/asems412.imp"
REF = 2;
#line 1514 "regression-compile-tmp/asems412.imp"
L_014d:;
                                                                //   1515           DEFINE REFERENCE(LTAG, REF)
#line 1515 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(LTAG, REF);
                                                                //   1516           DUMP(COND+X'8000');  CCCA = CCCA+2
#line 1516 "regression-compile-tmp/asems412.imp"
DUMP((((int)(COND)) + (32768)));
#line 1516 "regression-compile-tmp/asems412.imp"
CCCA = (((int)(CCCA)) + (2));
                                                                //   1517           UNCOND JUMP = CA %IF COND = JUMP;! NO WAY PAST HERE
#line 1517 "regression-compile-tmp/asems412.imp"
if (((COND) != (12))) goto L_014e;
#line 1517 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = CA;
#line 1517 "regression-compile-tmp/asems412.imp"
L_014e:;
                                                                //   1518           %IF KNOWN_CA = 0 %START;! SOMETHING TO LEARN
#line 1518 "regression-compile-tmp/asems412.imp"
if (((KNOWN.CA) != (0))) goto L_014f;
                                                                //   1519              KNOWN_CA = 1
#line 1519 "regression-compile-tmp/asems412.imp"
KNOWN.CA = 1;
                                                                //   1520              U == USE(KNOWN_BASE)
#line 1520 "regression-compile-tmp/asems412.imp"
U = &USE[(((int)(KNOWN.BASE)) - (1))];
                                                                //   1521              U_TYPE = KNOWN_TYPE;  U_FORM = CONSTANT
#line 1521 "regression-compile-tmp/asems412.imp"
U->TYPE = KNOWN.TYPE;
#line 1521 "regression-compile-tmp/asems412.imp"
U->FORM = 0;
                                                                //   1522              U_BASE = 0;  U_DISP = KNOWN_DISP
#line 1522 "regression-compile-tmp/asems412.imp"
U->BASE = 0;
#line 1522 "regression-compile-tmp/asems412.imp"
U->DISP = KNOWN.DISP;
                                                                //   1523              U_CA = CA
#line 1523 "regression-compile-tmp/asems412.imp"
U->CA = CA;
                                                                //   1524           %FINISH
#line 1524 "regression-compile-tmp/asems412.imp"
L_014f:;
                                                                //   1525        %END
#line 1525 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block JUMPTO at level 3
                                                                //   1526     %ROUTINE FLOAT(%RECORD(STACKFM)%NAME V, %INTEGER REG)
#line 1526 "regression-compile-tmp/asems412.imp"
void FLOAT(  STACKFM /*name*/*V, int REG )
#line 1526 "regression-compile-tmp/asems412.imp"
{
                                                                //   1527        %INTEGER  D
#line 1527 "regression-compile-tmp/asems412.imp"
int D;
                                                                //   1528        %IF V_FORM = CONSTANT %START
#line 1528 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (0))) goto L_0150;
                                                                //   1529        !  FLOAT CONSTANTS AT COMPILE-TIME
                                                                //   1530           D = V_DISP
#line 1530 "regression-compile-tmp/asems412.imp"
D = V->DISP;
                                                                //   1531           %IF D = 0 %START
#line 1531 "regression-compile-tmp/asems412.imp"
if (((D) != (0))) goto L_0151;
                                                                //   1532              REG = FPR %IF REG = ANYF
#line 1532 "regression-compile-tmp/asems412.imp"
if (((REG) != (47))) goto L_0152;
#line 1532 "regression-compile-tmp/asems412.imp"
REG = FPR();
#line 1532 "regression-compile-tmp/asems412.imp"
L_0152:;
                                                                //   1533              CLAIM(REG)
#line 1533 "regression-compile-tmp/asems412.imp"
CLAIM(REG);
                                                                //   1534              RR(SER, REG, REG);  CLAIM (REG)
#line 1534 "regression-compile-tmp/asems412.imp"
RR(11008, REG, REG);
#line 1534 "regression-compile-tmp/asems412.imp"
CLAIM(REG);
                                                                //   1535              V_BASE = REG;  V_DISP = 0;  V_TYPE = REALS;  V_FORM = V IN R
#line 1535 "regression-compile-tmp/asems412.imp"
V->BASE = REG;
#line 1535 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1535 "regression-compile-tmp/asems412.imp"
V->TYPE = 6;
#line 1535 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1536           %ELSE
#line 1536 "regression-compile-tmp/asems412.imp"
goto L_0153;
#line 1536 "regression-compile-tmp/asems412.imp"
L_0151:;
                                                                //   1537              FP CSTACK(D,V);  ! ...N.B. 'D' FLOATED BY PARAMETER PASSING
#line 1537 "regression-compile-tmp/asems412.imp"
FPCSTACK(D, V);
                                                                //   1538              STP = STP-1;      ! ...WE DON'T WANT A NEW STACK ITEM
#line 1538 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   1539           %FINISH
#line 1539 "regression-compile-tmp/asems412.imp"
L_0153:;
                                                                //   1540           %RETURN
#line 1540 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1541        %FINISH
#line 1541 "regression-compile-tmp/asems412.imp"
L_0150:;
                                                                //   1542        LOAD(V, REG) %AND %RETURN %IF V_LOP # 0
#line 1542 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_0154;
#line 1542 "regression-compile-tmp/asems412.imp"
LOAD(V, REG);
#line 1542 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1542 "regression-compile-tmp/asems412.imp"
L_0154:;
                                                                //   1543        LOAD(V, ANY)
#line 1543 "regression-compile-tmp/asems412.imp"
LOAD(V, 45);
                                                                //   1544        REG = FPR %IF REG = ANYF
#line 1544 "regression-compile-tmp/asems412.imp"
if (((REG) != (47))) goto L_0155;
#line 1544 "regression-compile-tmp/asems412.imp"
REG = FPR();
#line 1544 "regression-compile-tmp/asems412.imp"
L_0155:;
                                                                //   1545        RR(FLR, REG, V_BASE)
#line 1545 "regression-compile-tmp/asems412.imp"
RR(12032, REG, V->BASE);
                                                                //   1546        CLAIM(REG)
#line 1546 "regression-compile-tmp/asems412.imp"
CLAIM(REG);
                                                                //   1547        V_TYPE = REALS;  V_FORM = V IN R
#line 1547 "regression-compile-tmp/asems412.imp"
V->TYPE = 6;
#line 1547 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1548        V_BASE = REG;  V_DISP = 0
#line 1548 "regression-compile-tmp/asems412.imp"
V->BASE = REG;
#line 1548 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   1549     %END
#line 1549 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FLOAT at level 3
                                                                //   1550     %ROUTINE LRD(%RECORD(STACKFM)%NAME V, %INTEGER REG)
#line 1550 "regression-compile-tmp/asems412.imp"
void LRD(  STACKFM /*name*/*V, int REG )
#line 1550 "regression-compile-tmp/asems412.imp"
{
                                                                //   1551        LOAD(V, REG)
#line 1551 "regression-compile-tmp/asems412.imp"
LOAD(V, REG);
                                                                //   1552        RELEASE(V_BASE)
#line 1552 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
                                                                //   1553        DROP(V)
#line 1553 "regression-compile-tmp/asems412.imp"
DROP(V);
                                                                //   1554     %END
#line 1554 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block LRD at level 3
                                                                //   1555     %ROUTINE REDUCE(%RECORD(STACKFM)%NAME V)
#line 1555 "regression-compile-tmp/asems412.imp"
void REDUCE(  STACKFM /*name*/*V )
#line 1555 "regression-compile-tmp/asems412.imp"
{
                                                                //   1556        %INTEGER TYPE, FORM, DISP
#line 1556 "regression-compile-tmp/asems412.imp"
int TYPE;
#line 1556 "regression-compile-tmp/asems412.imp"
int FORM;
#line 1556 "regression-compile-tmp/asems412.imp"
int DISP;
                                                                //   1557        TYPE = V_TYPE;  FORM = V_FORM - 2
#line 1557 "regression-compile-tmp/asems412.imp"
TYPE = V->TYPE;
#line 1557 "regression-compile-tmp/asems412.imp"
FORM = (((int)(V->FORM)) - (2));
                                                                //   1558        FORM = AV IN S  %IF FORM = AV IN REC-2
#line 1558 "regression-compile-tmp/asems412.imp"
if (((FORM) != (5))) goto L_0156;
#line 1558 "regression-compile-tmp/asems412.imp"
FORM = 6;
#line 1558 "regression-compile-tmp/asems412.imp"
L_0156:;
                                                                //   1559        DISP = V_DISP
#line 1559 "regression-compile-tmp/asems412.imp"
DISP = V->DISP;
                                                                //   1560        V_DISP = V_EXTRA;  V_TYPE = INTEGER;  V_FORM = V IN S
#line 1560 "regression-compile-tmp/asems412.imp"
V->DISP = V->EXTRA;
#line 1560 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
#line 1560 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1561        LOAD(V, ANY0)
#line 1561 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
                                                                //   1562        V_TYPE = TYPE;  V_FORM = FORM
#line 1562 "regression-compile-tmp/asems412.imp"
V->TYPE = TYPE;
#line 1562 "regression-compile-tmp/asems412.imp"
V->FORM = FORM;
                                                                //   1563        V_DISP = DISP
#line 1563 "regression-compile-tmp/asems412.imp"
V->DISP = DISP;
                                                                //   1564     %END
#line 1564 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block REDUCE at level 3
                                                                //   1565     %ROUTINE VMAP(%RECORD(STACKFM)%NAME V)
#line 1565 "regression-compile-tmp/asems412.imp"
void VMAP(  STACKFM /*name*/*V )
#line 1565 "regression-compile-tmp/asems412.imp"
{
                                                                //   1566        %INTEGER N
#line 1566 "regression-compile-tmp/asems412.imp"
int N;
                                                                //   1567        %CONSTBYTEINTEGERARRAY MAP(0:15) =
#line 1567 "regression-compile-tmp/asems412.imp"
const unsigned char MAP[16] = { 3, 3, 3, 2, 3, 4, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0,  };
                                                                //   1568           V IN S, V IN S, V IN S, A IN S, V IN S,
                                                                //   1569           A IN REC, V IN S, V IN REC, 0(8)
                                                                //   1570        LOAD(V, ANY0) %IF V_FORM = AINS %OR V_FORM = AINREC
#line 1570 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (2))) goto L_013c;
#line 1570 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (4))) goto L_0157;
#line 1570 "regression-compile-tmp/asems412.imp"
L_013c:;
#line 1570 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
#line 1570 "regression-compile-tmp/asems412.imp"
L_0157:;
                                                                //   1571        %IF V_LOP # 0 %START
#line 1571 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_0158;
                                                                //   1572           %IF V_LOP = ADD %AND CONST(V_LINK) %START
#line 1572 "regression-compile-tmp/asems412.imp"
if (((V->LOP) != (3))) goto L_0159;
#line 1572 "regression-compile-tmp/asems412.imp"
if (!(CONST(V->LINK))) goto L_0159;
                                                                //   1573              N = V_LINK_DISP
#line 1573 "regression-compile-tmp/asems412.imp"
N = V->LINK->DISP;
                                                                //   1574              V_LOP = 0;  DROP(V_LINK)
#line 1574 "regression-compile-tmp/asems412.imp"
V->LOP = 0;
#line 1574 "regression-compile-tmp/asems412.imp"
DROP(V->LINK);
                                                                //   1575              %IF V_FORM = AVINS %OR V_FORM = AVINREC %START
#line 1575 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (6))) goto L_015a;
#line 1575 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (7))) goto L_015b;
#line 1575 "regression-compile-tmp/asems412.imp"
L_015a:;
                                                                //   1576                 V_DISP = V_DISP+N
#line 1576 "regression-compile-tmp/asems412.imp"
V->DISP = (((int)(V->DISP)) + (N));
                                                                //   1577              %ELSE
#line 1577 "regression-compile-tmp/asems412.imp"
goto L_015c;
#line 1577 "regression-compile-tmp/asems412.imp"
L_015b:;
                                                                //   1578                 LOAD(V, ANY0);  V_DISP = N
#line 1578 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
#line 1578 "regression-compile-tmp/asems412.imp"
V->DISP = N;
                                                                //   1579              %FINISH
#line 1579 "regression-compile-tmp/asems412.imp"
L_015c:;
                                                                //   1580           %ELSE
#line 1580 "regression-compile-tmp/asems412.imp"
goto L_015d;
#line 1580 "regression-compile-tmp/asems412.imp"
L_0159:;
                                                                //   1581              LOAD(V, ANY0)
#line 1581 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
                                                                //   1582           %FINISH
#line 1582 "regression-compile-tmp/asems412.imp"
L_015d:;
                                                                //   1583        %FINISH
#line 1583 "regression-compile-tmp/asems412.imp"
L_0158:;
                                                                //   1584        V_FORM = MAP(V_FORM)
#line 1584 "regression-compile-tmp/asems412.imp"
V->FORM = MAP[V->FORM];
                                                                //   1585     %END
#line 1585 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block VMAP at level 3
                                                                //   1586     %ROUTINE AMAP(%RECORD(STACKFM)%NAME V)
#line 1586 "regression-compile-tmp/asems412.imp"
void AMAP(  STACKFM /*name*/*V )
#line 1586 "regression-compile-tmp/asems412.imp"
{
                                                                //   1587        %CONSTSHORTINTEGERARRAY MAP(0:7) =
#line 1587 "regression-compile-tmp/asems412.imp"
const short MAP[8] = { (-1), (-1), 3, 6, 5, 7, (-1), (-1),  };
                                                                //   1588              -1, -1, V IN S, AV IN S, V IN REC, AV IN REC, -1, -1
                                                                //   1589        V_FORM = MAP(V_FORM)
#line 1589 "regression-compile-tmp/asems412.imp"
V->FORM = MAP[V->FORM];
                                                                //   1590        %IF  V_FORM = AV IN S %START
#line 1590 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (6))) goto L_015e;
                                                                //   1591           %IF  V_BASE = 0 %THEN  V_FORM = CONSTANT  %ELSE %START
#line 1591 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (0))) goto L_015f;
#line 1591 "regression-compile-tmp/asems412.imp"
V->FORM = 0;
#line 1591 "regression-compile-tmp/asems412.imp"
goto L_0160;
#line 1591 "regression-compile-tmp/asems412.imp"
L_015f:;
                                                                //   1592              V_FORM = V IN R %IF V_DISP = 0
#line 1592 "regression-compile-tmp/asems412.imp"
if (((V->DISP) != (0))) goto L_0161;
#line 1592 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
#line 1592 "regression-compile-tmp/asems412.imp"
L_0161:;
                                                                //   1593           %FINISH
#line 1593 "regression-compile-tmp/asems412.imp"
L_0160:;
                                                                //   1594        %FINISH
#line 1594 "regression-compile-tmp/asems412.imp"
L_015e:;
                                                                //   1595        ABORT(9) %IF V_FORM < 0
#line 1595 "regression-compile-tmp/asems412.imp"
if (((V->FORM) >= (0))) goto L_0162;
#line 1595 "regression-compile-tmp/asems412.imp"
ABORT(9);
#line 1595 "regression-compile-tmp/asems412.imp"
L_0162:;
                                                                //   1596        V_TYPE = INTEGER
#line 1596 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
                                                                //   1597     %END
#line 1597 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block AMAP at level 3
                                                                //   1598     %ROUTINE OPTIMISE(%RECORD(STACKFM)%NAME V)
#line 1598 "regression-compile-tmp/asems412.imp"
void OPTIMISE(  STACKFM /*name*/*V )
#line 1598 "regression-compile-tmp/asems412.imp"
{
                                                                //   1599        %INTEGER R
#line 1599 "regression-compile-tmp/asems412.imp"
int R;
                                                                //   1600        %RETURN %IF V_FORM = V IN R %OR V_LOP # 0
#line 1600 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (1))) goto L_0163;
#line 1600 "regression-compile-tmp/asems412.imp"
if (((V->LOP) == (0))) goto L_0164;
#line 1600 "regression-compile-tmp/asems412.imp"
L_0163:;
#line 1600 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1600 "regression-compile-tmp/asems412.imp"
L_0164:;
                                                                //   1601        REDUCE(V) %IF V_FORM >= A IN REC %AND V_FORM # AV IN S
#line 1601 "regression-compile-tmp/asems412.imp"
if (((V->FORM) < (4))) goto L_0165;
#line 1601 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (6))) goto L_0165;
#line 1601 "regression-compile-tmp/asems412.imp"
REDUCE(V);
#line 1601 "regression-compile-tmp/asems412.imp"
L_0165:;
                                                                //   1602        R = FIND USE(V_TYPE, V_FORM, V_BASE, V_DISP)
#line 1602 "regression-compile-tmp/asems412.imp"
R = FINDUSE(V->TYPE, V->FORM, V->BASE, V->DISP);
                                                                //   1603        %IF R # 0 %START
#line 1603 "regression-compile-tmp/asems412.imp"
if (((R) == (0))) goto L_0166;
                                                                //   1604           V_BASE = R;  V_DISP = 0;  V_FORM = V IN R
#line 1604 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1604 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1604 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1605        %ELSE %IF V_FORM = A IN S
#line 1605 "regression-compile-tmp/asems412.imp"
goto L_0167;
#line 1605 "regression-compile-tmp/asems412.imp"
L_0166:;
#line 1605 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (2))) goto L_0168;
                                                                //   1606           R = FIND USE(INTEGER, V IN S, V_BASE, V_DISP)
#line 1606 "regression-compile-tmp/asems412.imp"
R = FINDUSE(1, 3, V->BASE, V->DISP);
                                                                //   1607           %RETURN %IF R = 0
#line 1607 "regression-compile-tmp/asems412.imp"
if (((R) != (0))) goto L_0169;
#line 1607 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1607 "regression-compile-tmp/asems412.imp"
L_0169:;
                                                                //   1608           V_BASE = R;  V_DISP = 0;  V_FORM = V IN S
#line 1608 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1608 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1608 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1609           OPTIMISE(V)
#line 1609 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
                                                                //   1610        %FINISH
#line 1610 "regression-compile-tmp/asems412.imp"
L_0168:;
#line 1610 "regression-compile-tmp/asems412.imp"
L_0167:;
                                                                //   1611     %END
#line 1611 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block OPTIMISE at level 3
                                                                //   1612     %ROUTINE RANGE(%SHORTINTEGERNAME BASE, %INTEGERNAME DISP)
#line 1612 "regression-compile-tmp/asems412.imp"
void RANGE( short /*name*/*BASE, int /*name*/*DISP )
#line 1612 "regression-compile-tmp/asems412.imp"
{
                                                                //   1613        %RECORD(STACKFM) V
#line 1613 "regression-compile-tmp/asems412.imp"
 STACKFM V;
                                                                //   1614        %RETURN %IF 0 <= DISP <= X'3FFF'
#line 1614 "regression-compile-tmp/asems412.imp"
if ((((0) > (*DISP))) || (((*DISP) > (16383)))) goto L_016a;
#line 1614 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1614 "regression-compile-tmp/asems412.imp"
L_016a:;
                                                                //   1615        V_TYPE = INTEGER;  V_FORM = AV IN S
#line 1615 "regression-compile-tmp/asems412.imp"
V.TYPE = 1;
#line 1615 "regression-compile-tmp/asems412.imp"
V.FORM = 6;
                                                                //   1616        V_BASE = BASE;  V_DISP = DISP&(\X'3FFF')
#line 1616 "regression-compile-tmp/asems412.imp"
V.BASE = *BASE;
#line 1616 "regression-compile-tmp/asems412.imp"
V.DISP = ((*DISP) & ((~(16383))));
                                                                //   1617        DISP = DISP-V_DISP
#line 1617 "regression-compile-tmp/asems412.imp"
*DISP = ((*(int *)(DISP)) - (V.DISP));
                                                                //   1618        V_LOP = 0
#line 1618 "regression-compile-tmp/asems412.imp"
V.LOP = 0;
                                                                //   1619        LOAD(V, ANY0)
#line 1619 "regression-compile-tmp/asems412.imp"
LOAD(&V, 46);
                                                                //   1620        BASE = V_BASE
#line 1620 "regression-compile-tmp/asems412.imp"
*BASE = V.BASE;
                                                                //   1621     %END
#line 1621 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RANGE at level 3
                                                                //   1622     %ROUTINE ADDRESS(%RECORD(STACKFM)%NAME V)
#line 1622 "regression-compile-tmp/asems412.imp"
void ADDRESS(  STACKFM /*name*/*V )
#line 1622 "regression-compile-tmp/asems412.imp"
{
                                                                //   1623        %INTEGER TYPE, FORM
#line 1623 "regression-compile-tmp/asems412.imp"
int TYPE;
#line 1623 "regression-compile-tmp/asems412.imp"
int FORM;
                                                                //   1624        FORM = V_FORM;  TYPE = V_TYPE
#line 1624 "regression-compile-tmp/asems412.imp"
FORM = V->FORM;
#line 1624 "regression-compile-tmp/asems412.imp"
TYPE = V->TYPE;
                                                                //   1625        %IF FORM = V IN REC %OR FORM = A IN REC %START
#line 1625 "regression-compile-tmp/asems412.imp"
if (((FORM) == (5))) goto L_016b;
#line 1625 "regression-compile-tmp/asems412.imp"
if (((FORM) != (4))) goto L_016c;
#line 1625 "regression-compile-tmp/asems412.imp"
L_016b:;
                                                                //   1626           REDUCE(V);  FORM = V_FORM
#line 1626 "regression-compile-tmp/asems412.imp"
REDUCE(V);
#line 1626 "regression-compile-tmp/asems412.imp"
FORM = V->FORM;
                                                                //   1627        %FINISH
#line 1627 "regression-compile-tmp/asems412.imp"
L_016c:;
                                                                //   1628        %UNLESS FORM = V IN S %OR FORM = V IN R %START
#line 1628 "regression-compile-tmp/asems412.imp"
if (((FORM) == (3))) goto L_016d;
#line 1628 "regression-compile-tmp/asems412.imp"
if (((FORM) == (1))) goto L_016d;
                                                                //   1629           %IF FORM = A IN S %START
#line 1629 "regression-compile-tmp/asems412.imp"
if (((FORM) != (2))) goto L_016e;
                                                                //   1630              FORM = V IN S;  V_FORM = FORM
#line 1630 "regression-compile-tmp/asems412.imp"
FORM = 3;
#line 1630 "regression-compile-tmp/asems412.imp"
V->FORM = FORM;
                                                                //   1631              V_TYPE = INTEGER
#line 1631 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
                                                                //   1632              LOAD(V, ANY0)
#line 1632 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
                                                                //   1633           %ELSE
#line 1633 "regression-compile-tmp/asems412.imp"
goto L_016f;
#line 1633 "regression-compile-tmp/asems412.imp"
L_016e:;
                                                                //   1634              LOAD(V, ANY)
#line 1634 "regression-compile-tmp/asems412.imp"
LOAD(V, 45);
                                                                //   1635              FORM = V IN R;  TYPE = INTEGER
#line 1635 "regression-compile-tmp/asems412.imp"
FORM = 1;
#line 1635 "regression-compile-tmp/asems412.imp"
TYPE = 1;
                                                                //   1636           %FINISH
#line 1636 "regression-compile-tmp/asems412.imp"
L_016f:;
                                                                //   1637        %FINISH
#line 1637 "regression-compile-tmp/asems412.imp"
L_016d:;
                                                                //   1638        RANGE(V_BASE, V_DISP)
#line 1638 "regression-compile-tmp/asems412.imp"
RANGE(&V->BASE, &V->DISP);
                                                                //   1639        V_TYPE = TYPE;  V_FORM = FORM
#line 1639 "regression-compile-tmp/asems412.imp"
V->TYPE = TYPE;
#line 1639 "regression-compile-tmp/asems412.imp"
V->FORM = FORM;
                                                                //   1640     %END
#line 1640 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ADDRESS at level 3
                                                                //   1641     %ROUTINE LOAD(%RECORD(STACKFM)%NAME V, %INTEGER R)
#line 1641 "regression-compile-tmp/asems412.imp"
void LOAD(  STACKFM /*name*/*V, int R )
#line 1641 "regression-compile-tmp/asems412.imp"
{
                                                                //   1642        %RECORD(STACKFM) H
#line 1642 "regression-compile-tmp/asems412.imp"
 STACKFM H;
                                                                //   1643        %CONSTSHORTINTEGERARRAY OP KEY(1:17) = -1, 0, 0, 6, 4, 2, 0,
#line 1643 "regression-compile-tmp/asems412.imp"
const short OPKEY[17] = { (-1), 0, 0, 6, 4, 2, 0, 0, 5, 10, 0, 2, 0, 0, 0, 0, 0,  };
                                                                //   1644                                                0, 5,10, 0, 2, 0, 0, 0,0 ,0
                                                                //   1645        %CONSTSHORTINTEGERARRAY PM(0:11) =
#line 1645 "regression-compile-tmp/asems412.imp"
const short PM[12] = { 2560, 9728, 51712, 23040, 18944, 64000, 2816, 9984, 51968, 23296, 19200, 64256,  };
                                                                //   1646                        AR, AIS, AHI, AW, AH, AI,
                                                                //   1647                        SR, SIS, SHI, SW, SH, SI
                                                                //   1648        %CONSTSHORTINTEGERARRAY MULDIV(0:5) = DR, DW,
#line 1648 "regression-compile-tmp/asems412.imp"
const short MULDIV[6] = { 7424, 23808, 7168, 23552, 7168, 23552,  };
                                                                //   1649                                              MR, MW,
                                                                //   1650                                              MR, MW
                                                                //   1651        %CONSTSHORTINTEGERARRAY LOGICAL(0:14) =
#line 1651 "regression-compile-tmp/asems412.imp"
const short LOGICAL[15] = { 1024, 50176, 21504, 17408, 62464, 1536, 50688, 22016, 17920, 62976, 1792, 50944, 22272, 18176, 63232,  };
                                                                //   1652                                             NR, NHI, NW, NH, NI,
                                                                //   1653                                             OR, OHI, OW, OH, OI,
                                                                //   1654                                             XR, XHI, XW, XH, XI
                                                                //   1655  
                                                                //   1656        %CONSTSHORTINTEGERARRAY SHIFT(0:3) = SLLS, SLL, SRLS, SRL
#line 1656 "regression-compile-tmp/asems412.imp"
const short SHIFT[4] = { 4352, 60672, 4096, 60416,  };
                                                                //   1657  
                                                                //   1658        %CONSTSHORTINTEGERARRAY REAL OP(3:14) = AER, SER, 0,
#line 1658 "regression-compile-tmp/asems412.imp"
const short REALOP[12] = { 10752, 11008, 0, 11264, 11520, 0, 0, 27136, 27392, 0, 27648, 27904,  };
                                                                //   1659                                                MER, DER, 0, 0,
                                                                //   1660                                                AE, SE, 0,
                                                                //   1661                                                ME, DE
                                                                //   1662        %INTEGERFN PRED(%INTEGER R)
#line 1662 "regression-compile-tmp/asems412.imp"
int PRED( int R )
#line 1662 "regression-compile-tmp/asems412.imp"
{
                                                                //   1663           %CONSTBYTEINTEGERARRAY INV(0:15) = R0, R1, R2, R3,
#line 1663 "regression-compile-tmp/asems412.imp"
const unsigned char INV[16] = { 1, 2, 3, 4, 5, 6, 7, 43, 12, 8, 9, 10, 11, 42, 44, 41,  };
                                                                //   1664                                              R4, P2, P1, WSP,
                                                                //   1665                                              LINK, R9, R10, R11,
                                                                //   1666                                              R12, GLA, CODE, R15
                                                                //   1667           %RESULT = INV(ACTUAL(R)!!1)
#line 1667 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return INV[((ACTUAL[R]) ^ (1))];
                                                                //   1668        %END
#line 1668 "regression-compile-tmp/asems412.imp"
} // End of block PRED at level 4
                                                                //   1669        %RECORD(STACKFM)%NAME W
#line 1669 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*W;
                                                                //   1670        %SWITCH F(0:8), IOP(1:17), ROP(1:17)
#line 1670 "regression-compile-tmp/asems412.imp"
static int sw4_F_idx;
static const void * /*SWITCH*/ sw4_F[9] = { &&sw4_F_0, &&sw4_F_1, &&sw4_F_2, &&sw4_F_3, &&sw4_F_4, &&sw4_F_5, &&sw4_F_6, &&sw4_F_7, &&sw4_F_8,  };
#line 1670 "regression-compile-tmp/asems412.imp"
static int sw5_IOP_idx;
static const void * /*SWITCH*/ sw5_IOP[17] = { &&sw5_IOP_1, &&sw5_IOP_2, &&sw5_IOP_3, &&sw5_IOP_4, &&sw5_IOP_5, &&sw5_IOP_6, &&sw5_IOP_7, &&sw5_IOP_8, &&sw5_IOP_9, &&sw5_IOP_10, &&sw5_IOP_11, &&sw5_IOP_12, &&sw5_IOP_13, &&sw5_IOP_14, &&sw5_IOP_15, &&sw5_IOP_16, &&sw5_IOP_17,  };
#line 1670 "regression-compile-tmp/asems412.imp"
static int sw6_ROP_idx;
static const void * /*SWITCH*/ sw6_ROP[17] = { &&sw6_ROP_1, &&sw6_ROP_2, &&sw6_ROP_3, &&sw6_ROP_4, &&sw6_ROP_5, &&sw6_ROP_6, &&sw6_ROP_7, &&sw6_ROP_8, &&sw6_ROP_9, &&sw6_ROP_10, &&sw6_ROP_11, &&sw6_ROP_12, &&sw6_ROP_13, &&sw6_ROP_14, &&sw6_ROP_15, &&sw6_ROP_16, &&sw6_ROP_17,  };
                                                                //   1671        %INTEGER OP, T, D, TYPE, FORM, KEY, TEMP, N
#line 1671 "regression-compile-tmp/asems412.imp"
int OP;
#line 1671 "regression-compile-tmp/asems412.imp"
int T;
#line 1671 "regression-compile-tmp/asems412.imp"
int D;
#line 1671 "regression-compile-tmp/asems412.imp"
int TYPE;
#line 1671 "regression-compile-tmp/asems412.imp"
int FORM;
#line 1671 "regression-compile-tmp/asems412.imp"
int KEY;
#line 1671 "regression-compile-tmp/asems412.imp"
int TEMP;
#line 1671 "regression-compile-tmp/asems412.imp"
int N;
                                                                //   1672        %OWNINTEGER  ADDXCA=0, ADDXD=0, ADDXS=0, ADDXKEY=0
#line 1672 "regression-compile-tmp/asems412.imp"
static int ADDXCA = 0;
#line 1672 "regression-compile-tmp/asems412.imp"
static int ADDXD = 0;
#line 1672 "regression-compile-tmp/asems412.imp"
static int ADDXS = 0;
#line 1672 "regression-compile-tmp/asems412.imp"
static int ADDXKEY = 0;
                                                                //   1673  
                                                                //   1674        ABORT(-2) %IF FREE SPACE < MIN FREE;   ! ...STACK OVERFLOW?
#line 1674 "regression-compile-tmp/asems412.imp"
if (((FREESPACE) >= (600))) goto L_0170;
#line 1674 "regression-compile-tmp/asems412.imp"
ABORT((-2));
#line 1674 "regression-compile-tmp/asems412.imp"
L_0170:;
                                                                //   1675        ->REALZ %IF FLOATING(V) %OR FPR0 <= R <= FPR14 %OR R = ANYF
#line 1675 "regression-compile-tmp/asems412.imp"
if (FLOATING(V)) goto L_0171;
#line 1675 "regression-compile-tmp/asems412.imp"
if ((((13) > (R))) || (((R) <= (20)))) goto L_0171;
#line 1675 "regression-compile-tmp/asems412.imp"
L_0172:;
#line 1675 "regression-compile-tmp/asems412.imp"
if (((R) != (47))) goto L_0173;
#line 1675 "regression-compile-tmp/asems412.imp"
L_0171:;
#line 1675 "regression-compile-tmp/asems412.imp"
goto U_1007;
#line 1675 "regression-compile-tmp/asems412.imp"
L_0173:;
                                                                //   1676        OP = V_LOP;  V_LOP = 0
#line 1676 "regression-compile-tmp/asems412.imp"
OP = V->LOP;
#line 1676 "regression-compile-tmp/asems412.imp"
V->LOP = 0;
                                                                //   1677        %IF OP # 0 %START
#line 1677 "regression-compile-tmp/asems412.imp"
if (((OP) == (0))) goto L_0174;
                                                                //   1678           W == V_LINK
#line 1678 "regression-compile-tmp/asems412.imp"
W = V->LINK;
                                                                //   1679           OPTIMISE(V);  OPTIMISE(W) %UNLESS W == NULL
#line 1679 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
#line 1679 "regression-compile-tmp/asems412.imp"
if (((W) == (NULL))) goto L_0175;
#line 1679 "regression-compile-tmp/asems412.imp"
OPTIMISE(W);
#line 1679 "regression-compile-tmp/asems412.imp"
L_0175:;
                                                                //   1680           %IF OP = SUB %AND W_FORM = CONSTANT %START
#line 1680 "regression-compile-tmp/asems412.imp"
if (((OP) != (4))) goto L_0176;
#line 1680 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_0176;
                                                                //   1681              OP = ADD;  W_DISP = -W_DISP
#line 1681 "regression-compile-tmp/asems412.imp"
OP = 3;
#line 1681 "regression-compile-tmp/asems412.imp"
W->DISP = (-(W->DISP));
                                                                //   1682           %FINISH
#line 1682 "regression-compile-tmp/asems412.imp"
L_0176:;
                                                                //   1683           %IF COMM(OP) # 0 %START;! SWOP OPERANDS ?
#line 1683 "regression-compile-tmp/asems412.imp"
if ((((COMM-1)[OP]) == (0))) goto L_0177;
                                                                //   1684              T = 0
#line 1684 "regression-compile-tmp/asems412.imp"
T = 0;
                                                                //   1685              T = 1 %IF W_BASE = R %OR (W_FORM = V IN R %AND V_FORM # V IN R)
#line 1685 "regression-compile-tmp/asems412.imp"
if (((W->BASE) == (R))) goto L_0178;
#line 1685 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_0179;
#line 1685 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (1))) goto L_0179;
#line 1685 "regression-compile-tmp/asems412.imp"
L_0178:;
#line 1685 "regression-compile-tmp/asems412.imp"
T = 1;
#line 1685 "regression-compile-tmp/asems412.imp"
L_0179:;
                                                                //   1686              T = 1 %IF V_TYPE # BYTE %AND W_TYPE = BYTE %AND V_BASE # R
#line 1686 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (2))) goto L_017a;
#line 1686 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (2))) goto L_017a;
#line 1686 "regression-compile-tmp/asems412.imp"
if (((V->BASE) == (R))) goto L_017a;
#line 1686 "regression-compile-tmp/asems412.imp"
T = 1;
#line 1686 "regression-compile-tmp/asems412.imp"
L_017a:;
                                                                //   1687              T = 1 %IF W_FORM = CONSTANT %AND R < ANY %AND R # V_BASE %C
#line 1687 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_017b;
#line 1687 "regression-compile-tmp/asems412.imp"
if (((R) >= (45))) goto L_017b;
#line 1687 "regression-compile-tmp/asems412.imp"
if (((R) == (V->BASE))) goto L_017b;
#line 1687 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (2))) goto L_017b;
#line 1687 "regression-compile-tmp/asems412.imp"
T = 1;
#line 1687 "regression-compile-tmp/asems412.imp"
L_017b:;
                                                                //   1688                                          %AND V_TYPE # BYTE
                                                                //   1689              T = 0 %IF V_BASE = R %C
#line 1689 "regression-compile-tmp/asems412.imp"
if (((V->BASE) == (R))) goto L_017c;
#line 1689 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_017d;
#line 1689 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[W->BASE]) >= (0))) goto L_017d;
#line 1689 "regression-compile-tmp/asems412.imp"
L_017c:;
#line 1689 "regression-compile-tmp/asems412.imp"
T = 0;
#line 1689 "regression-compile-tmp/asems412.imp"
L_017d:;
                                                                //   1690                    %OR (W_FORM = V IN R %AND ACTIVITY(W_BASE) < 0)
                                                                //   1691              %IF T # 0 %START
#line 1691 "regression-compile-tmp/asems412.imp"
if (((T) == (0))) goto L_017e;
                                                                //   1692                 H = W;  W = V;  V = H
#line 1692 "regression-compile-tmp/asems412.imp"
H = *W;
#line 1692 "regression-compile-tmp/asems412.imp"
*W = *V;
#line 1692 "regression-compile-tmp/asems412.imp"
*V = H;
                                                                //   1693              %FINISH
#line 1693 "regression-compile-tmp/asems412.imp"
L_017e:;
                                                                //   1694           %FINISH
#line 1694 "regression-compile-tmp/asems412.imp"
L_0177:;
                                                                //   1695           %IF CONTROL&UNASS DIAG # 0 %START
#line 1695 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_017f;
                                                                //   1696              LOAD(W, ANY0) %UNLESS W_FORM = CONSTANT %C
#line 1696 "regression-compile-tmp/asems412.imp"
if (((W->FORM) == (0))) goto L_0180;
#line 1696 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) == (1))) goto L_0181;
#line 1696 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (6))) goto L_0180;
#line 1696 "regression-compile-tmp/asems412.imp"
L_0181:;
#line 1696 "regression-compile-tmp/asems412.imp"
LOAD(W, 46);
#line 1696 "regression-compile-tmp/asems412.imp"
L_0180:;
                                                                //   1697                                %OR (W_TYPE # INTEGER %AND W_TYPE # REALS)
                                                                //   1698           %FINISH
#line 1698 "regression-compile-tmp/asems412.imp"
L_017f:;
                                                                //   1699           KEY = OP KEY(OP)
#line 1699 "regression-compile-tmp/asems412.imp"
KEY = (OPKEY-1)[OP];
                                                                //   1700           ->IOP(OP)
#line 1700 "regression-compile-tmp/asems412.imp"
sw5_IOP_idx = OP; if ((1 <= sw5_IOP_idx) && (sw5_IOP_idx <= 17)) goto *(sw5_IOP-1)[sw5_IOP_idx];  /* Bounds=1:17 */ else {
   /*_imp_signal(8, 2, sw5_IOP_idx);*/
   fprintf(stderr, "%%SWITCH index IOP(%d) not in range 1:17 at %s:%d\n",
           sw5_IOP_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   1701        %FINISH
#line 1701 "regression-compile-tmp/asems412.imp"
L_0174:;
                                                                //   1702        %IF V_TYPE = STRING %OR V_TYPE = 0 %START
#line 1702 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (4))) goto L_0182;
#line 1702 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (0))) goto L_0183;
#line 1702 "regression-compile-tmp/asems412.imp"
L_0182:;
                                                                //   1703           AMAP(V)
#line 1703 "regression-compile-tmp/asems412.imp"
AMAP(V);
                                                                //   1704        %FINISH
#line 1704 "regression-compile-tmp/asems412.imp"
L_0183:;
                                                                //   1705        %IF  V_FORM > V IN S  %AND  V_FORM # AV IN S  %THEN REDUCE(V)
#line 1705 "regression-compile-tmp/asems412.imp"
if (((V->FORM) <= (3))) goto L_0184;
#line 1705 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (6))) goto L_0184;
#line 1705 "regression-compile-tmp/asems412.imp"
REDUCE(V);
#line 1705 "regression-compile-tmp/asems412.imp"
L_0184:;
                                                                //   1706        OPTIMISE(V)
#line 1706 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
                                                                //   1707        %IF R >= ANY %START
#line 1707 "regression-compile-tmp/asems412.imp"
if (((R) < (45))) goto L_0185;
                                                                //   1708           %RETURN %IF V_FORM = V IN R %AND (R = ANY %OR V_BASE # R0) %C
#line 1708 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_0186;
#line 1708 "regression-compile-tmp/asems412.imp"
if (((R) == (45))) goto L_0187;
#line 1708 "regression-compile-tmp/asems412.imp"
if (((V->BASE) == (1))) goto L_0186;
#line 1708 "regression-compile-tmp/asems412.imp"
L_0187:;
#line 1708 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[V->BASE]) < (0))) goto L_0186;
#line 1708 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1708 "regression-compile-tmp/asems412.imp"
L_0186:;
                                                                //   1709                                       %AND ACTIVITY(V_BASE) >= 0
                                                                //   1710           R = GPR(R-ANY)
#line 1710 "regression-compile-tmp/asems412.imp"
R = GPR((((int)(R)) - (45)));
                                                                //   1711        %ELSE
#line 1711 "regression-compile-tmp/asems412.imp"
goto L_0188;
#line 1711 "regression-compile-tmp/asems412.imp"
L_0185:;
                                                                //   1712           HAZARD(R) %UNLESS V_BASE = R %AND ACTIVITY(R) = 1
#line 1712 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (R))) goto L_0189;
#line 1712 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[R]) == (1))) goto L_018a;
#line 1712 "regression-compile-tmp/asems412.imp"
L_0189:;
#line 1712 "regression-compile-tmp/asems412.imp"
HAZARD(R);
#line 1712 "regression-compile-tmp/asems412.imp"
L_018a:;
                                                                //   1713        %FINISH
#line 1713 "regression-compile-tmp/asems412.imp"
L_0188:;
                                                                //   1714        ->F(V_FORM)
#line 1714 "regression-compile-tmp/asems412.imp"
sw4_F_idx = V->FORM; if ((0 <= sw4_F_idx) && (sw4_F_idx <= 8)) goto *sw4_F[sw4_F_idx]; else {
   /*_imp_signal(8, 2, sw4_F_idx);*/
   fprintf(stderr, "%%SWITCH index F(%d) not in range 0:8 at %s:%d\n",
           sw4_F_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   1715  F(AV IN REC):
#line 1715 "regression-compile-tmp/asems412.imp"
sw4_F_7:;
                                                                //   1716  F(A IN REC):
#line 1716 "regression-compile-tmp/asems412.imp"
sw4_F_4:;
                                                                //   1717  F(V IN REC):
#line 1717 "regression-compile-tmp/asems412.imp"
sw4_F_5:;
                                                                //   1718        CLAIM(R);  REDUCE(V);  RELEASE(R)
#line 1718 "regression-compile-tmp/asems412.imp"
CLAIM(R);
#line 1718 "regression-compile-tmp/asems412.imp"
REDUCE(V);
#line 1718 "regression-compile-tmp/asems412.imp"
RELEASE(R);
                                                                //   1719        ->F(V_FORM)
#line 1719 "regression-compile-tmp/asems412.imp"
sw4_F_idx = V->FORM; if ((0 <= sw4_F_idx) && (sw4_F_idx <= 8)) goto *sw4_F[sw4_F_idx]; else {
   /*_imp_signal(8, 2, sw4_F_idx);*/
   fprintf(stderr, "%%SWITCH index F(%d) not in range 0:8 at %s:%d\n",
           sw4_F_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   1720  F(AV IN S):
#line 1720 "regression-compile-tmp/asems412.imp"
sw4_F_6:;
                                                                //   1721        ABORT(10) %IF V_TYPE = REALS
#line 1721 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (6))) goto L_018b;
#line 1721 "regression-compile-tmp/asems412.imp"
ABORT(10);
#line 1721 "regression-compile-tmp/asems412.imp"
L_018b:;
                                                                //   1722        %IF V_BASE # R0 %START
#line 1722 "regression-compile-tmp/asems412.imp"
if (((V->BASE) == (1))) goto L_018c;
                                                                //   1723           %IF -X'8000' <= V_DISP <= X'7FFF' %START
#line 1723 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (V->DISP))) || (((V->DISP) > (32767)))) goto L_018d;
                                                                //   1724              %IF V_DISP # 0 %START
#line 1724 "regression-compile-tmp/asems412.imp"
if (((V->DISP) == (0))) goto L_018e;
                                                                //   1725                 RI2(LHI, R, V_BASE, V_DISP)
#line 1725 "regression-compile-tmp/asems412.imp"
RI2(51200, R, V->BASE, V->DISP);
                                                                //   1726              %ELSE
#line 1726 "regression-compile-tmp/asems412.imp"
goto L_018f;
#line 1726 "regression-compile-tmp/asems412.imp"
L_018e:;
                                                                //   1727                 RR(LR,R,V_BASE)
#line 1727 "regression-compile-tmp/asems412.imp"
RR(2048, R, V->BASE);
                                                                //   1728              %FINISH
#line 1728 "regression-compile-tmp/asems412.imp"
L_018f:;
                                                                //   1729           %ELSE
#line 1729 "regression-compile-tmp/asems412.imp"
goto L_0190;
#line 1729 "regression-compile-tmp/asems412.imp"
L_018d:;
                                                                //   1730              RI3(LI, R, V_BASE, V_DISP)
#line 1730 "regression-compile-tmp/asems412.imp"
RI3(63488, R, V->BASE, V->DISP);
                                                                //   1731           %FINISH
#line 1731 "regression-compile-tmp/asems412.imp"
L_0190:;
                                                                //   1732           CLAIM(R)
#line 1732 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1733           REMEMBER(R, V)
#line 1733 "regression-compile-tmp/asems412.imp"
REMEMBER(R, V);
                                                                //   1734           V_BASE = R;  V_DISP = 0
#line 1734 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1734 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   1735           V_TYPE = INTEGER;  V_FORM = V IN R
#line 1735 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
#line 1735 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1736           %RETURN
#line 1736 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1737        %FINISH
#line 1737 "regression-compile-tmp/asems412.imp"
L_018c:;
                                                                //   1738  F(CONSTANT):
#line 1738 "regression-compile-tmp/asems412.imp"
sw4_F_0:;
                                                                //   1739        ABORT(16) %IF V_TYPE = REALS
#line 1739 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (6))) goto L_0191;
#line 1739 "regression-compile-tmp/asems412.imp"
ABORT(16);
#line 1739 "regression-compile-tmp/asems412.imp"
L_0191:;
                                                                //   1740        D = V_DISP
#line 1740 "regression-compile-tmp/asems412.imp"
D = V->DISP;
                                                                //   1741        %IF -15 <= D <= 15 %START
#line 1741 "regression-compile-tmp/asems412.imp"
if (((((-15)) > (D))) || (((D) > (15)))) goto L_0192;
                                                                //   1742           %IF D >= 0 %START
#line 1742 "regression-compile-tmp/asems412.imp"
if (((D) < (0))) goto L_0193;
                                                                //   1743              SF(LIS, R, D)
#line 1743 "regression-compile-tmp/asems412.imp"
SF(9216, R, D);
                                                                //   1744           %ELSE
#line 1744 "regression-compile-tmp/asems412.imp"
goto L_0194;
#line 1744 "regression-compile-tmp/asems412.imp"
L_0193:;
                                                                //   1745              SF(LCS, R, -D)
#line 1745 "regression-compile-tmp/asems412.imp"
SF(9472, R, (-(D)));
                                                                //   1746           %FINISH
#line 1746 "regression-compile-tmp/asems412.imp"
L_0194:;
                                                                //   1747        %ELSE
#line 1747 "regression-compile-tmp/asems412.imp"
goto L_0195;
#line 1747 "regression-compile-tmp/asems412.imp"
L_0192:;
                                                                //   1748           %IF -X'8000' <= D <= X'7FFF' %START
#line 1748 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (D))) || (((D) > (32767)))) goto L_0196;
                                                                //   1749              RI2(LHI, R, 0, D)
#line 1749 "regression-compile-tmp/asems412.imp"
RI2(51200, R, 0, D);
                                                                //   1750           %ELSE
#line 1750 "regression-compile-tmp/asems412.imp"
goto L_0197;
#line 1750 "regression-compile-tmp/asems412.imp"
L_0196:;
                                                                //   1751              RI3(LI, R, 0, D)
#line 1751 "regression-compile-tmp/asems412.imp"
RI3(63488, R, 0, D);
                                                                //   1752           %FINISH
#line 1752 "regression-compile-tmp/asems412.imp"
L_0197:;
                                                                //   1753        %FINISH
#line 1753 "regression-compile-tmp/asems412.imp"
L_0195:;
                                                                //   1754        CLAIM(R);  REMEMBER(R, V)
#line 1754 "regression-compile-tmp/asems412.imp"
CLAIM(R);
#line 1754 "regression-compile-tmp/asems412.imp"
REMEMBER(R, V);
                                                                //   1755        V_BASE = R;  V_DISP = 0
#line 1755 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1755 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   1756        V_TYPE = INTEGER;  V_FORM = V IN R
#line 1756 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
#line 1756 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1757        %RETURN
#line 1757 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1758  F(V IN R):
#line 1758 "regression-compile-tmp/asems412.imp"
sw4_F_1:;
                                                                //   1759        OP = LR
#line 1759 "regression-compile-tmp/asems412.imp"
OP = 2048;
                                                                //   1760        %RETURN %IF V_BASE = R
#line 1760 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (R))) goto L_0198;
#line 1760 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1760 "regression-compile-tmp/asems412.imp"
L_0198:;
                                                                //   1761        OP = LER %IF V_TYPE = REALS
#line 1761 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (6))) goto L_0199;
#line 1761 "regression-compile-tmp/asems412.imp"
OP = 10240;
#line 1761 "regression-compile-tmp/asems412.imp"
L_0199:;
                                                                //   1762        RR(OP, R, V_BASE);  CLAIM(R)
#line 1762 "regression-compile-tmp/asems412.imp"
RR(OP, R, V->BASE);
#line 1762 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1763        CCREG = R;  CCCA = CA
#line 1763 "regression-compile-tmp/asems412.imp"
CCREG = R;
#line 1763 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   1764        FORGET(R)
#line 1764 "regression-compile-tmp/asems412.imp"
FORGET(R);
                                                                //   1765        USE(R) = USE(V_BASE)
#line 1765 "regression-compile-tmp/asems412.imp"
USE[(((int)(R)) - (1))] = USE[(((int)(V->BASE)) - (1))];
                                                                //   1766        V_BASE = R
#line 1766 "regression-compile-tmp/asems412.imp"
V->BASE = R;
                                                                //   1767        %RETURN
#line 1767 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1768  F(A IN S):
#line 1768 "regression-compile-tmp/asems412.imp"
sw4_F_2:;
                                                                //   1769        TYPE = V_TYPE
#line 1769 "regression-compile-tmp/asems412.imp"
TYPE = V->TYPE;
                                                                //   1770        V_TYPE = INTEGER;  V_FORM = V IN S
#line 1770 "regression-compile-tmp/asems412.imp"
V->TYPE = 1;
#line 1770 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1771        CLAIM(R);  LOAD(V, ANY0);  RELEASE(R)
#line 1771 "regression-compile-tmp/asems412.imp"
CLAIM(R);
#line 1771 "regression-compile-tmp/asems412.imp"
LOAD(V, 46);
#line 1771 "regression-compile-tmp/asems412.imp"
RELEASE(R);
                                                                //   1772        V_TYPE = TYPE;  V_FORM = V IN S
#line 1772 "regression-compile-tmp/asems412.imp"
V->TYPE = TYPE;
#line 1772 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1773  F(V IN S):
#line 1773 "regression-compile-tmp/asems412.imp"
sw4_F_3:;
                                                                //   1774        RANGE(V_BASE, V_DISP)
#line 1774 "regression-compile-tmp/asems412.imp"
RANGE(&V->BASE, &V->DISP);
                                                                //   1775        CCREG = R;  CCCA = CA+4
#line 1775 "regression-compile-tmp/asems412.imp"
CCREG = R;
#line 1775 "regression-compile-tmp/asems412.imp"
CCCA = (((int)(CA)) + (4));
                                                                //   1776        %IF V_TYPE = INTEGER %START
#line 1776 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (1))) goto L_019a;
                                                                //   1777           OP = LW
#line 1777 "regression-compile-tmp/asems412.imp"
OP = 22528;
                                                                //   1778        %ELSE %IF V_TYPE = SHORT
#line 1778 "regression-compile-tmp/asems412.imp"
goto L_019b;
#line 1778 "regression-compile-tmp/asems412.imp"
L_019a:;
#line 1778 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (3))) goto L_019c;
                                                                //   1779           OP = LH
#line 1779 "regression-compile-tmp/asems412.imp"
OP = 18432;
                                                                //   1780        %ELSE %IF V_TYPE = BYTE
#line 1780 "regression-compile-tmp/asems412.imp"
goto L_019b;
#line 1780 "regression-compile-tmp/asems412.imp"
L_019c:;
#line 1780 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (2))) goto L_019d;
                                                                //   1781           OP = LB;  CCCA = 0
#line 1781 "regression-compile-tmp/asems412.imp"
OP = 54016;
#line 1781 "regression-compile-tmp/asems412.imp"
CCCA = 0;
                                                                //   1782        %ELSE %IF V_TYPE = REALS
#line 1782 "regression-compile-tmp/asems412.imp"
goto L_019b;
#line 1782 "regression-compile-tmp/asems412.imp"
L_019d:;
#line 1782 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (6))) goto L_019e;
                                                                //   1783           OP = LE
#line 1783 "regression-compile-tmp/asems412.imp"
OP = 26624;
                                                                //   1784        %ELSE
#line 1784 "regression-compile-tmp/asems412.imp"
goto L_019b;
#line 1784 "regression-compile-tmp/asems412.imp"
L_019e:;
                                                                //   1785           OP = LHL;        ! INTERNALLY GENERATED 'UNSIGNED HALFWORD'
#line 1785 "regression-compile-tmp/asems412.imp"
OP = 29440;
                                                                //   1786        %FINISH
#line 1786 "regression-compile-tmp/asems412.imp"
L_019b:;
                                                                //   1787        RX(OP, R, V_BASE, V_DISP)
#line 1787 "regression-compile-tmp/asems412.imp"
RX(OP, R, V->BASE, V->DISP);
                                                                //   1788        CLAIM(R);  REMEMBER(R, V)
#line 1788 "regression-compile-tmp/asems412.imp"
CLAIM(R);
#line 1788 "regression-compile-tmp/asems412.imp"
REMEMBER(R, V);
                                                                //   1789        V_BASE = R;  V_DISP = 0
#line 1789 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1789 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   1790        V_FORM = V IN R
#line 1790 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1791        %RETURN
#line 1791 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1792  IOP(ADD):
#line 1792 "regression-compile-tmp/asems412.imp"
sw5_IOP_3:;
                                                                //   1793        %IF W_FORM = V IN R %AND W_BASE # R %AND V_FORM = CONSTANT %START
#line 1793 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_019f;
#line 1793 "regression-compile-tmp/asems412.imp"
if (((W->BASE) == (R))) goto L_019f;
#line 1793 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (0))) goto L_019f;
                                                                //   1794           D = V_DISP
#line 1794 "regression-compile-tmp/asems412.imp"
D = V->DISP;
                                                                //   1795           %IF (USE(W_BASE)_CA > LIMEN %OR USE(W_BASE+STORE)_CA > LIMEN %C
#line 1795 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(W->BASE)) - (1))].CA) > (LIMEN))) goto L_01a0;
#line 1795 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)((((int)(W->BASE)) + (20)))) - (1))].CA) > (LIMEN))) goto L_01a0;
#line 1795 "regression-compile-tmp/asems412.imp"
if (((D) < ((-15)))) goto L_01a0;
#line 1795 "regression-compile-tmp/asems412.imp"
if (((D) <= (15))) goto L_01a1;
#line 1795 "regression-compile-tmp/asems412.imp"
L_01a0:;
#line 1795 "regression-compile-tmp/asems412.imp"
if (((CA) == (ADDXCA))) goto L_01a1;
                                                                //   1796                 %OR D < -15 %OR D > 15) %AND CA # ADDXCA %START
                                                                //   1797              %IF R >= ANY %START
#line 1797 "regression-compile-tmp/asems412.imp"
if (((R) < (45))) goto L_01a2;
                                                                //   1798                 R = GPR(R-ANY)
#line 1798 "regression-compile-tmp/asems412.imp"
R = GPR((((int)(R)) - (45)));
                                                                //   1799              %ELSE %IF W_BASE # R %OR ACTIVITY(R) # 1
#line 1799 "regression-compile-tmp/asems412.imp"
goto L_01a3;
#line 1799 "regression-compile-tmp/asems412.imp"
L_01a2:;
#line 1799 "regression-compile-tmp/asems412.imp"
if (((W->BASE) != (R))) goto L_01a4;
#line 1799 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[R]) == (1))) goto L_01a5;
#line 1799 "regression-compile-tmp/asems412.imp"
L_01a4:;
                                                                //   1800                 HAZARD(R)
#line 1800 "regression-compile-tmp/asems412.imp"
HAZARD(R);
                                                                //   1801              %FINISH
#line 1801 "regression-compile-tmp/asems412.imp"
L_01a5:;
#line 1801 "regression-compile-tmp/asems412.imp"
L_01a3:;
                                                                //   1802              %IF -X'8000'<=D<=X'7FFF' %THEN RI2(LHI,R,W_BASE,D) %C
#line 1802 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (D))) || (((D) > (32767)))) goto L_01a6;
#line 1802 "regression-compile-tmp/asems412.imp"
RI2(51200, R, W->BASE, D);
#line 1802 "regression-compile-tmp/asems412.imp"
goto L_01a7;
#line 1802 "regression-compile-tmp/asems412.imp"
L_01a6:;
#line 1802 "regression-compile-tmp/asems412.imp"
RI3(63488, R, W->BASE, D);
#line 1802 "regression-compile-tmp/asems412.imp"
L_01a7:;
                                                                //   1803                 %ELSE RI3(LI,R,W_BASE,D)
                                                                //   1804              CCREG = R;  CCCA = CA
#line 1804 "regression-compile-tmp/asems412.imp"
CCREG = R;
#line 1804 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   1805              V_DISP = 0;  V_FORM = V IN R
#line 1805 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1805 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1806              V_BASE = R;  CLAIM(R)
#line 1806 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1806 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1807              ->END OP
#line 1807 "regression-compile-tmp/asems412.imp"
goto U_1008;
                                                                //   1808           %FINISH
#line 1808 "regression-compile-tmp/asems412.imp"
L_01a1:;
                                                                //   1809        %FINISH
#line 1809 "regression-compile-tmp/asems412.imp"
L_019f:;
                                                                //   1810  IOP(SADD):
#line 1810 "regression-compile-tmp/asems412.imp"
sw5_IOP_15:;
                                                                //   1811  IOP(SUB):
#line 1811 "regression-compile-tmp/asems412.imp"
sw5_IOP_4:;
                                                                //   1812        LOAD(V, R);  R = V_BASE
#line 1812 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 1812 "regression-compile-tmp/asems412.imp"
R = V->BASE;
                                                                //   1813        LOAD(W, ANY) %IF W_TYPE = BYTE %OR W_TYPE = UNSIGNED HALFWORD
#line 1813 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) == (2))) goto L_01a8;
#line 1813 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (255))) goto L_01a9;
#line 1813 "regression-compile-tmp/asems412.imp"
L_01a8:;
#line 1813 "regression-compile-tmp/asems412.imp"
LOAD(W, 45);
#line 1813 "regression-compile-tmp/asems412.imp"
L_01a9:;
                                                                //   1814        %IF W_FORM = CONSTANT %START
#line 1814 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_01aa;
                                                                //   1815           D = W_DISP
#line 1815 "regression-compile-tmp/asems412.imp"
D = W->DISP;
                                                                //   1816           %IF -15 <= D <= 15 %START
#line 1816 "regression-compile-tmp/asems412.imp"
if (((((-15)) > (D))) || (((D) > (15)))) goto L_01ab;
                                                                //   1817              D = -D %AND KEY = 6-KEY %IF D < 0
#line 1817 "regression-compile-tmp/asems412.imp"
if (((D) >= (0))) goto L_01ac;
#line 1817 "regression-compile-tmp/asems412.imp"
D = (-(D));
#line 1817 "regression-compile-tmp/asems412.imp"
KEY = (((int)(6)) - (KEY));
#line 1817 "regression-compile-tmp/asems412.imp"
L_01ac:;
                                                                //   1818              SF(PM(KEY+1), R, D)
#line 1818 "regression-compile-tmp/asems412.imp"
SF(PM[(((int)(KEY)) + (1))], R, D);
                                                                //   1819           %ELSE
#line 1819 "regression-compile-tmp/asems412.imp"
goto L_01ad;
#line 1819 "regression-compile-tmp/asems412.imp"
L_01ab:;
                                                                //   1820              %IF -X'8000' <= D <= X'7FFF' %START
#line 1820 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (D))) || (((D) > (32767)))) goto L_01ae;
                                                                //   1821                 %IF CA = ADDXCA %AND R = ADDXD %START
#line 1821 "regression-compile-tmp/asems412.imp"
if (((CA) != (ADDXCA))) goto L_01af;
#line 1821 "regression-compile-tmp/asems412.imp"
if (((R) != (ADDXD))) goto L_01af;
                                                                //   1822                    D = -D %IF ADDXKEY # KEY
#line 1822 "regression-compile-tmp/asems412.imp"
if (((ADDXKEY) == (KEY))) goto L_01b0;
#line 1822 "regression-compile-tmp/asems412.imp"
D = (-(D));
#line 1822 "regression-compile-tmp/asems412.imp"
L_01b0:;
                                                                //   1823                    DUMP(D)
#line 1823 "regression-compile-tmp/asems412.imp"
DUMP(D);
                                                                //   1824                    PATCH(PM(ADDXKEY+2)+ACTUAL(R)<<4+ACTUAL(ADDXS),   %C
#line 1824 "regression-compile-tmp/asems412.imp"
PATCH((((unsigned char)(((PM[(((int)(ADDXKEY)) + (2))]) + ((short)(((ACTUAL[R]) << (4))))))) + (ACTUAL[ADDXS])), (((int)(ADDXCA)) - (2)));
                                                                //   1825                                                                 ADDXCA-2)
                                                                //   1826                 %FINISH %ELSE RI2(PM(KEY+2), R, 0, D)
#line 1826 "regression-compile-tmp/asems412.imp"
goto L_01b1;
#line 1826 "regression-compile-tmp/asems412.imp"
L_01af:;
#line 1826 "regression-compile-tmp/asems412.imp"
RI2(PM[(((int)(KEY)) + (2))], R, 0, D);
#line 1826 "regression-compile-tmp/asems412.imp"
L_01b1:;
                                                                //   1827              %ELSE
#line 1827 "regression-compile-tmp/asems412.imp"
goto L_01b2;
#line 1827 "regression-compile-tmp/asems412.imp"
L_01ae:;
                                                                //   1828                 RI3(PM(KEY+5), R, 0, D)
#line 1828 "regression-compile-tmp/asems412.imp"
RI3(PM[(((int)(KEY)) + (5))], R, 0, D);
                                                                //   1829              %FINISH
#line 1829 "regression-compile-tmp/asems412.imp"
L_01b2:;
                                                                //   1830           %FINISH
#line 1830 "regression-compile-tmp/asems412.imp"
L_01ad:;
                                                                //   1831        %ELSE %IF W_FORM = V IN R
#line 1831 "regression-compile-tmp/asems412.imp"
goto L_01b3;
#line 1831 "regression-compile-tmp/asems412.imp"
L_01aa:;
#line 1831 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01b4;
                                                                //   1832           RR(PM(KEY), R, W_BASE)
#line 1832 "regression-compile-tmp/asems412.imp"
RR(PM[KEY], R, W->BASE);
                                                                //   1833           ADDXCA = CA;  ADDXD = R;  ADDXKEY = KEY;  ADDXS = W_BASE
#line 1833 "regression-compile-tmp/asems412.imp"
ADDXCA = CA;
#line 1833 "regression-compile-tmp/asems412.imp"
ADDXD = R;
#line 1833 "regression-compile-tmp/asems412.imp"
ADDXKEY = KEY;
#line 1833 "regression-compile-tmp/asems412.imp"
ADDXS = W->BASE;
                                                                //   1834        %ELSE %IF W_FORM = AV IN S
#line 1834 "regression-compile-tmp/asems412.imp"
goto L_01b3;
#line 1834 "regression-compile-tmp/asems412.imp"
L_01b4:;
#line 1834 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (6))) goto L_01b5;
                                                                //   1835           RI2(PM(KEY+2), R, W_BASE, W_DISP)
#line 1835 "regression-compile-tmp/asems412.imp"
RI2(PM[(((int)(KEY)) + (2))], R, W->BASE, W->DISP);
                                                                //   1836        %ELSE
#line 1836 "regression-compile-tmp/asems412.imp"
goto L_01b3;
#line 1836 "regression-compile-tmp/asems412.imp"
L_01b5:;
                                                                //   1837           ADDRESS(W)
#line 1837 "regression-compile-tmp/asems412.imp"
ADDRESS(W);
                                                                //   1838           KEY = KEY-1 %IF W_FORM = V IN R
#line 1838 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01b6;
#line 1838 "regression-compile-tmp/asems412.imp"
KEY = (((int)(KEY)) - (1));
#line 1838 "regression-compile-tmp/asems412.imp"
L_01b6:;
                                                                //   1839           KEY = KEY+1 %IF W_TYPE = SHORT
#line 1839 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (3))) goto L_01b7;
#line 1839 "regression-compile-tmp/asems412.imp"
KEY = (((int)(KEY)) + (1));
#line 1839 "regression-compile-tmp/asems412.imp"
L_01b7:;
                                                                //   1840           RX(PM(KEY+3), R, W_BASE, W_DISP)
#line 1840 "regression-compile-tmp/asems412.imp"
RX(PM[(((int)(KEY)) + (3))], R, W->BASE, W->DISP);
                                                                //   1841        %FINISH
#line 1841 "regression-compile-tmp/asems412.imp"
L_01b3:;
                                                                //   1842        ->SET CC
#line 1842 "regression-compile-tmp/asems412.imp"
goto U_1009;
                                                                //   1843  IOP(MUL):
#line 1843 "regression-compile-tmp/asems412.imp"
sw5_IOP_6:;
                                                                //   1844  IOP(DIV):
#line 1844 "regression-compile-tmp/asems412.imp"
sw5_IOP_7:;
                                                                //   1845  IOP(REM):
#line 1845 "regression-compile-tmp/asems412.imp"
sw5_IOP_17:;
                                                                //   1846        %IF R >= ANY %START
#line 1846 "regression-compile-tmp/asems412.imp"
if (((R) < (45))) goto L_01b8;
                                                                //   1847           %IF KEY = 0 %THEN N = 0 %ELSE N = 1
#line 1847 "regression-compile-tmp/asems412.imp"
if (((KEY) != (0))) goto L_01b9;
#line 1847 "regression-compile-tmp/asems412.imp"
N = 0;
#line 1847 "regression-compile-tmp/asems412.imp"
goto L_01ba;
#line 1847 "regression-compile-tmp/asems412.imp"
L_01b9:;
#line 1847 "regression-compile-tmp/asems412.imp"
N = 1;
#line 1847 "regression-compile-tmp/asems412.imp"
L_01ba:;
                                                                //   1848           %IF V_FORM = V IN R %AND ACTUAL(V_BASE)&1 = N %C
#line 1848 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_01bb;
#line 1848 "regression-compile-tmp/asems412.imp"
if (((((ACTUAL[V->BASE]) & (1))) != (N))) goto L_01bb;
#line 1848 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[PRED(V->BASE)]) != (0))) goto L_01bb;
                                                                //   1849                               %AND ACTIVITY(PRED(V_BASE)) = 0 %START
                                                                //   1850              TEMP = V_BASE
#line 1850 "regression-compile-tmp/asems412.imp"
TEMP = V->BASE;
                                                                //   1851              TEMP = PRED(TEMP) %IF KEY = 0
#line 1851 "regression-compile-tmp/asems412.imp"
if (((KEY) != (0))) goto L_01bc;
#line 1851 "regression-compile-tmp/asems412.imp"
TEMP = PRED(TEMP);
#line 1851 "regression-compile-tmp/asems412.imp"
L_01bc:;
                                                                //   1852           %ELSE
#line 1852 "regression-compile-tmp/asems412.imp"
goto L_01bd;
#line 1852 "regression-compile-tmp/asems412.imp"
L_01bb:;
                                                                //   1853              TEMP = EVEN ODD PAIR
#line 1853 "regression-compile-tmp/asems412.imp"
TEMP = EVENODDPAIR();
                                                                //   1854           %FINISH
#line 1854 "regression-compile-tmp/asems412.imp"
L_01bd:;
                                                                //   1855        %ELSE %IF ACTUAL(R)&1 = 0 %OR ACTIVITY(PRED(R)) # 0
#line 1855 "regression-compile-tmp/asems412.imp"
goto L_01be;
#line 1855 "regression-compile-tmp/asems412.imp"
L_01b8:;
#line 1855 "regression-compile-tmp/asems412.imp"
if (((((ACTUAL[R]) & (1))) == (0))) goto L_01bf;
#line 1855 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[PRED(R)]) == (0))) goto L_01c0;
#line 1855 "regression-compile-tmp/asems412.imp"
L_01bf:;
                                                                //   1856           TEMP = EVEN ODD PAIR
#line 1856 "regression-compile-tmp/asems412.imp"
TEMP = EVENODDPAIR();
                                                                //   1857        %ELSE
#line 1857 "regression-compile-tmp/asems412.imp"
goto L_01be;
#line 1857 "regression-compile-tmp/asems412.imp"
L_01c0:;
                                                                //   1858           TEMP = R
#line 1858 "regression-compile-tmp/asems412.imp"
TEMP = R;
                                                                //   1859        %FINISH
#line 1859 "regression-compile-tmp/asems412.imp"
L_01be:;
                                                                //   1860        N = PRED(TEMP);  HAZARD(N)
#line 1860 "regression-compile-tmp/asems412.imp"
N = PRED(TEMP);
#line 1860 "regression-compile-tmp/asems412.imp"
HAZARD(N);
                                                                //   1861        %IF KEY # 0 %START
#line 1861 "regression-compile-tmp/asems412.imp"
if (((KEY) == (0))) goto L_01c1;
                                                                //   1862           CLAIM(N);  LOAD(V, TEMP)
#line 1862 "regression-compile-tmp/asems412.imp"
CLAIM(N);
#line 1862 "regression-compile-tmp/asems412.imp"
LOAD(V, TEMP);
                                                                //   1863        %ELSE
#line 1863 "regression-compile-tmp/asems412.imp"
goto L_01c2;
#line 1863 "regression-compile-tmp/asems412.imp"
L_01c1:;
                                                                //   1864           CLAIM(TEMP);  LOAD(V, N)
#line 1864 "regression-compile-tmp/asems412.imp"
CLAIM(TEMP);
#line 1864 "regression-compile-tmp/asems412.imp"
LOAD(V, N);
                                                                //   1865           RR(LR, TEMP, N)
#line 1865 "regression-compile-tmp/asems412.imp"
RR(2048, TEMP, N);
                                                                //   1866           USE(TEMP) = USE(N);  USE(TEMP+STORE) = USE(N)
#line 1866 "regression-compile-tmp/asems412.imp"
USE[(((int)(TEMP)) - (1))] = USE[(((int)(N)) - (1))];
#line 1866 "regression-compile-tmp/asems412.imp"
USE[(((int)((((int)(TEMP)) + (20)))) - (1))] = USE[(((int)(N)) - (1))];
                                                                //   1867           CLAIM(N)
#line 1867 "regression-compile-tmp/asems412.imp"
CLAIM(N);
                                                                //   1868           RX(SRA, N, 0, 31);  FORGET(N)
#line 1868 "regression-compile-tmp/asems412.imp"
RX(60928, N, 0, 31);
#line 1868 "regression-compile-tmp/asems412.imp"
FORGET(N);
                                                                //   1869        %FINISH
#line 1869 "regression-compile-tmp/asems412.imp"
L_01c2:;
                                                                //   1870        LOAD(W,ANY) %IF W_FORM = CONSTANT %OR W_TYPE # INTEGER
#line 1870 "regression-compile-tmp/asems412.imp"
if (((W->FORM) == (0))) goto L_01c3;
#line 1870 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) == (1))) goto L_01c4;
#line 1870 "regression-compile-tmp/asems412.imp"
L_01c3:;
#line 1870 "regression-compile-tmp/asems412.imp"
LOAD(W, 45);
#line 1870 "regression-compile-tmp/asems412.imp"
L_01c4:;
                                                                //   1871        ADDRESS(W)
#line 1871 "regression-compile-tmp/asems412.imp"
ADDRESS(W);
                                                                //   1872        %IF W_FORM = V IN R %START
#line 1872 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01c5;
                                                                //   1873           RR(MULDIV(KEY), N, W_BASE)
#line 1873 "regression-compile-tmp/asems412.imp"
RR(MULDIV[KEY], N, W->BASE);
                                                                //   1874        %ELSE
#line 1874 "regression-compile-tmp/asems412.imp"
goto L_01c6;
#line 1874 "regression-compile-tmp/asems412.imp"
L_01c5:;
                                                                //   1875           RX(MULDIV(KEY+1), N, W_BASE, W_DISP)
#line 1875 "regression-compile-tmp/asems412.imp"
RX(MULDIV[(((int)(KEY)) + (1))], N, W->BASE, W->DISP);
                                                                //   1876        %FINISH
#line 1876 "regression-compile-tmp/asems412.imp"
L_01c6:;
                                                                //   1877        %IF OP = REM %START
#line 1877 "regression-compile-tmp/asems412.imp"
if (((OP) != (17))) goto L_01c7;
                                                                //   1878           D = TEMP;  TEMP = N;  N = D
#line 1878 "regression-compile-tmp/asems412.imp"
D = TEMP;
#line 1878 "regression-compile-tmp/asems412.imp"
TEMP = N;
#line 1878 "regression-compile-tmp/asems412.imp"
N = D;
                                                                //   1879        %FINISH
#line 1879 "regression-compile-tmp/asems412.imp"
L_01c7:;
                                                                //   1880        RELEASE(N)
#line 1880 "regression-compile-tmp/asems412.imp"
RELEASE(N);
                                                                //   1881        FORGET(N);  FORGET(TEMP)
#line 1881 "regression-compile-tmp/asems412.imp"
FORGET(N);
#line 1881 "regression-compile-tmp/asems412.imp"
FORGET(TEMP);
                                                                //   1882        V_BASE = TEMP;  V_DISP = 0;  V_FORM = V IN R
#line 1882 "regression-compile-tmp/asems412.imp"
V->BASE = TEMP;
#line 1882 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1882 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1883        LOAD(V, R) %IF TEMP # R
#line 1883 "regression-compile-tmp/asems412.imp"
if (((TEMP) == (R))) goto L_01c8;
#line 1883 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 1883 "regression-compile-tmp/asems412.imp"
L_01c8:;
                                                                //   1884        ->END OP
#line 1884 "regression-compile-tmp/asems412.imp"
goto U_1008;
                                                                //   1885  IOP(AND):
#line 1885 "regression-compile-tmp/asems412.imp"
sw5_IOP_8:;
                                                                //   1886        %IF V_FORM = CONSTANT %AND V_DISP = 255 %START
#line 1886 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (0))) goto L_01c9;
#line 1886 "regression-compile-tmp/asems412.imp"
if (((V->DISP) != (255))) goto L_01c9;
                                                                //   1887           %IF W_FORM = V IN R %START
#line 1887 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01ca;
                                                                //   1888              %IF R >= ANY %START
#line 1888 "regression-compile-tmp/asems412.imp"
if (((R) < (45))) goto L_01cb;
                                                                //   1889                 %IF ACTIVITY(W_BASE) = 1 %THEN R = W_BASE %C
#line 1889 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[W->BASE]) != (1))) goto L_01cc;
#line 1889 "regression-compile-tmp/asems412.imp"
R = W->BASE;
#line 1889 "regression-compile-tmp/asems412.imp"
goto L_01cd;
#line 1889 "regression-compile-tmp/asems412.imp"
L_01cc:;
#line 1889 "regression-compile-tmp/asems412.imp"
R = GPR((((int)(R)) - (45)));
#line 1889 "regression-compile-tmp/asems412.imp"
L_01cd:;
                                                                //   1890                                          %ELSE R = GPR(R-ANY)
                                                                //   1891              %ELSE %IF R # W_BASE %OR ACTIVITY(R) # 1
#line 1891 "regression-compile-tmp/asems412.imp"
goto L_01ce;
#line 1891 "regression-compile-tmp/asems412.imp"
L_01cb:;
#line 1891 "regression-compile-tmp/asems412.imp"
if (((R) != (W->BASE))) goto L_01cf;
#line 1891 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[R]) == (1))) goto L_01d0;
#line 1891 "regression-compile-tmp/asems412.imp"
L_01cf:;
                                                                //   1892                 HAZARD(R)
#line 1892 "regression-compile-tmp/asems412.imp"
HAZARD(R);
                                                                //   1893              %FINISH
#line 1893 "regression-compile-tmp/asems412.imp"
L_01d0:;
#line 1893 "regression-compile-tmp/asems412.imp"
L_01ce:;
                                                                //   1894           %ELSE
#line 1894 "regression-compile-tmp/asems412.imp"
goto L_01d1;
#line 1894 "regression-compile-tmp/asems412.imp"
L_01ca:;
                                                                //   1895              LOAD(W,R);  R = W_BASE
#line 1895 "regression-compile-tmp/asems412.imp"
LOAD(W, R);
#line 1895 "regression-compile-tmp/asems412.imp"
R = W->BASE;
                                                                //   1896           %FINISH
#line 1896 "regression-compile-tmp/asems412.imp"
L_01d1:;
                                                                //   1897           CLAIM(R)
#line 1897 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1898           RR(LBR,R,W_BASE)
#line 1898 "regression-compile-tmp/asems412.imp"
RR(37632, R, W->BASE);
                                                                //   1899           V_BASE = R;  V_DISP = 0;  V_FORM = V IN R
#line 1899 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 1899 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
#line 1899 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   1900           -> FEND
#line 1900 "regression-compile-tmp/asems412.imp"
goto U_100a;
                                                                //   1901        %FINISH
#line 1901 "regression-compile-tmp/asems412.imp"
L_01c9:;
                                                                //   1902  IOP(IOR):
#line 1902 "regression-compile-tmp/asems412.imp"
sw5_IOP_9:;
                                                                //   1903  IOP(XOR):
#line 1903 "regression-compile-tmp/asems412.imp"
sw5_IOP_10:;
                                                                //   1904        %IF W_FORM = CONSTANT %AND -15 <= W_DISP <= 15 %START
#line 1904 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_01d2;
#line 1904 "regression-compile-tmp/asems412.imp"
if (((((-15)) > (W->DISP))) || (((W->DISP) > (15)))) goto L_01d2;
                                                                //   1905           %IF V_FORM # V IN R %OR (R < ANY %AND V_BASE # R) %START
#line 1905 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_01d3;
#line 1905 "regression-compile-tmp/asems412.imp"
if (((R) >= (45))) goto L_01d4;
#line 1905 "regression-compile-tmp/asems412.imp"
if (((V->BASE) == (R))) goto L_01d4;
#line 1905 "regression-compile-tmp/asems412.imp"
L_01d3:;
                                                                //   1906              H = W;  W = V;  V = H
#line 1906 "regression-compile-tmp/asems412.imp"
H = *W;
#line 1906 "regression-compile-tmp/asems412.imp"
*W = *V;
#line 1906 "regression-compile-tmp/asems412.imp"
*V = H;
                                                                //   1907           %FINISH
#line 1907 "regression-compile-tmp/asems412.imp"
L_01d4:;
                                                                //   1908        %FINISH
#line 1908 "regression-compile-tmp/asems412.imp"
L_01d2:;
                                                                //   1909        LOAD(V, R);  R = V_BASE
#line 1909 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 1909 "regression-compile-tmp/asems412.imp"
R = V->BASE;
                                                                //   1910        LOAD(W, ANY) %IF W_TYPE = BYTE
#line 1910 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (2))) goto L_01d5;
#line 1910 "regression-compile-tmp/asems412.imp"
LOAD(W, 45);
#line 1910 "regression-compile-tmp/asems412.imp"
L_01d5:;
                                                                //   1911        %IF W_FORM = CONSTANT %START
#line 1911 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_01d6;
                                                                //   1912           %IF KEY = 0 %AND W_DISP = 255 %START;!  N&255
#line 1912 "regression-compile-tmp/asems412.imp"
if (((KEY) != (0))) goto L_01d7;
#line 1912 "regression-compile-tmp/asems412.imp"
if (((W->DISP) != (255))) goto L_01d7;
                                                                //   1913              CLAIM(R)
#line 1913 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1914              RR(LBR, R, R);  -> FEND
#line 1914 "regression-compile-tmp/asems412.imp"
RR(37632, R, R);
#line 1914 "regression-compile-tmp/asems412.imp"
goto U_100a;
                                                                //   1915           %FINISH
#line 1915 "regression-compile-tmp/asems412.imp"
L_01d7:;
                                                                //   1916           %IF -X'8000' <= W_DISP <= X'7FFF' %START
#line 1916 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (W->DISP))) || (((W->DISP) > (32767)))) goto L_01d8;
                                                                //   1917              RI2(LOGICAL(KEY+1), R, 0, W_DISP)
#line 1917 "regression-compile-tmp/asems412.imp"
RI2(LOGICAL[(((int)(KEY)) + (1))], R, 0, W->DISP);
                                                                //   1918           %ELSE
#line 1918 "regression-compile-tmp/asems412.imp"
goto L_01d9;
#line 1918 "regression-compile-tmp/asems412.imp"
L_01d8:;
                                                                //   1919              RI3(LOGICAL(KEY+4), R, 0, W_DISP)
#line 1919 "regression-compile-tmp/asems412.imp"
RI3(LOGICAL[(((int)(KEY)) + (4))], R, 0, W->DISP);
                                                                //   1920           %FINISH
#line 1920 "regression-compile-tmp/asems412.imp"
L_01d9:;
                                                                //   1921        %ELSE %IF W_FORM = V IN R
#line 1921 "regression-compile-tmp/asems412.imp"
goto L_01da;
#line 1921 "regression-compile-tmp/asems412.imp"
L_01d6:;
#line 1921 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01db;
                                                                //   1922           RR(LOGICAL(KEY), R, W_BASE)
#line 1922 "regression-compile-tmp/asems412.imp"
RR(LOGICAL[KEY], R, W->BASE);
                                                                //   1923        %ELSE
#line 1923 "regression-compile-tmp/asems412.imp"
goto L_01da;
#line 1923 "regression-compile-tmp/asems412.imp"
L_01db:;
                                                                //   1924           ADDRESS(W)
#line 1924 "regression-compile-tmp/asems412.imp"
ADDRESS(W);
                                                                //   1925           KEY = KEY+1 %IF W_TYPE = SHORT %OR W_TYPE = UNSIGNED HALFWORD
#line 1925 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) == (3))) goto L_01dc;
#line 1925 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (255))) goto L_01dd;
#line 1925 "regression-compile-tmp/asems412.imp"
L_01dc:;
#line 1925 "regression-compile-tmp/asems412.imp"
KEY = (((int)(KEY)) + (1));
#line 1925 "regression-compile-tmp/asems412.imp"
L_01dd:;
                                                                //   1926           RX(LOGICAL(KEY+2), R, W_BASE, W_DISP)
#line 1926 "regression-compile-tmp/asems412.imp"
RX(LOGICAL[(((int)(KEY)) + (2))], R, W->BASE, W->DISP);
                                                                //   1927        %FINISH
#line 1927 "regression-compile-tmp/asems412.imp"
L_01da:;
                                                                //   1928        ->SET CC
#line 1928 "regression-compile-tmp/asems412.imp"
goto U_1009;
                                                                //   1929  IOP(RSH):
#line 1929 "regression-compile-tmp/asems412.imp"
sw5_IOP_12:;
                                                                //   1930  IOP(LSH):
#line 1930 "regression-compile-tmp/asems412.imp"
sw5_IOP_11:;
                                                                //   1931        LOAD(V, R);  R = V_BASE
#line 1931 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 1931 "regression-compile-tmp/asems412.imp"
R = V->BASE;
                                                                //   1932        !  IGNORE ANY VALUE IN A REGISTER WHICH HAPPENS TO BE THE
                                                                //   1933        !  SAME AS A CONSTANT SHIFT COUNT <=15 AS OTHERWISE THE LONG FORM
                                                                //   1934        !  OF SHIFT INSTRUCTION WILL BE GENERATED NEEDLESSLY.
                                                                //   1935        %IF W_FORM = V IN R %AND USE(W_BASE)_CA > LIMEN  %C
#line 1935 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01de;
#line 1935 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(W->BASE)) - (1))].CA) <= (LIMEN))) goto L_01de;
#line 1935 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(W->BASE)) - (1))].FORM) != (0))) goto L_01de;
#line 1935 "regression-compile-tmp/asems412.imp"
if ((((0) > (USE[(((int)(W->BASE)) - (1))].DISP))) || (((USE[(((int)(W->BASE)) - (1))].DISP) > (15)))) goto L_01de;
                                                                //   1936                            %AND USE(W_BASE)_FORM = CONSTANT  %C
                                                                //   1937                            %AND 0 <= USE(W_BASE)_DISP <= 15  %START
                                                                //   1938           W_DISP = USE(W_BASE)_DISP
#line 1938 "regression-compile-tmp/asems412.imp"
W->DISP = USE[(((int)(W->BASE)) - (1))].DISP;
                                                                //   1939           W_FORM = CONSTANT
#line 1939 "regression-compile-tmp/asems412.imp"
W->FORM = 0;
                                                                //   1940           RELEASE(W_BASE)
#line 1940 "regression-compile-tmp/asems412.imp"
RELEASE(W->BASE);
                                                                //   1941        %FINISH
#line 1941 "regression-compile-tmp/asems412.imp"
L_01de:;
                                                                //   1942        %IF W_FORM = CONSTANT %START
#line 1942 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_01df;
                                                                //   1943           %IF KEY = 0 %AND W_DISP = 1 %START
#line 1943 "regression-compile-tmp/asems412.imp"
if (((KEY) != (0))) goto L_01e0;
#line 1943 "regression-compile-tmp/asems412.imp"
if (((W->DISP) != (1))) goto L_01e0;
                                                                //   1944              CLAIM(R)
#line 1944 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   1945              RR(AR, R, R)
#line 1945 "regression-compile-tmp/asems412.imp"
RR(2560, R, R);
                                                                //   1946           %ELSE %IF W_DISP > 15
#line 1946 "regression-compile-tmp/asems412.imp"
goto L_01e1;
#line 1946 "regression-compile-tmp/asems412.imp"
L_01e0:;
#line 1946 "regression-compile-tmp/asems412.imp"
if (((W->DISP) <= (15))) goto L_01e2;
                                                                //   1947              RX(SHIFT(KEY+1), R, 0, W_DISP)
#line 1947 "regression-compile-tmp/asems412.imp"
RX(SHIFT[(((int)(KEY)) + (1))], R, 0, W->DISP);
                                                                //   1948           %ELSE
#line 1948 "regression-compile-tmp/asems412.imp"
goto L_01e1;
#line 1948 "regression-compile-tmp/asems412.imp"
L_01e2:;
                                                                //   1949              SF(SHIFT(KEY), R, W_DISP&15)
#line 1949 "regression-compile-tmp/asems412.imp"
SF(SHIFT[KEY], R, ((W->DISP) & (15)));
                                                                //   1950           %FINISH
#line 1950 "regression-compile-tmp/asems412.imp"
L_01e1:;
                                                                //   1951        %ELSE
#line 1951 "regression-compile-tmp/asems412.imp"
goto L_01e3;
#line 1951 "regression-compile-tmp/asems412.imp"
L_01df:;
                                                                //   1952           LOAD(W, ANY0)
#line 1952 "regression-compile-tmp/asems412.imp"
LOAD(W, 46);
                                                                //   1953           RX(SHIFT(KEY+1), R, W_BASE, 0)
#line 1953 "regression-compile-tmp/asems412.imp"
RX(SHIFT[(((int)(KEY)) + (1))], R, W->BASE, 0);
                                                                //   1954        %FINISH
#line 1954 "regression-compile-tmp/asems412.imp"
L_01e3:;
                                                                //   1955        ->SET CC
#line 1955 "regression-compile-tmp/asems412.imp"
goto U_1009;
                                                                //   1956  IOP(NEG):
#line 1956 "regression-compile-tmp/asems412.imp"
sw5_IOP_2:;
                                                                //   1957  IOP(NOT):
#line 1957 "regression-compile-tmp/asems412.imp"
sw5_IOP_1:;
                                                                //   1958        %IF V_BASE = R %START
#line 1958 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (R))) goto L_01e4;
                                                                //   1959           LOAD(V, R)
#line 1959 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
                                                                //   1960           RI2(XHI, V_BASE, 0, -1)
#line 1960 "regression-compile-tmp/asems412.imp"
RI2(50944, V->BASE, 0, (-1));
                                                                //   1961           SF(AIS, V_BASE, 1) %IF KEY = 0
#line 1961 "regression-compile-tmp/asems412.imp"
if (((KEY) != (0))) goto L_01e5;
#line 1961 "regression-compile-tmp/asems412.imp"
SF(9728, V->BASE, 1);
#line 1961 "regression-compile-tmp/asems412.imp"
L_01e5:;
                                                                //   1962        %ELSE
#line 1962 "regression-compile-tmp/asems412.imp"
goto L_01e6;
#line 1962 "regression-compile-tmp/asems412.imp"
L_01e4:;
                                                                //   1963           W == RHS;  CSTACK(KEY);  RHS == W
#line 1963 "regression-compile-tmp/asems412.imp"
W = RHS;
#line 1963 "regression-compile-tmp/asems412.imp"
CSTACK(KEY);
#line 1963 "regression-compile-tmp/asems412.imp"
RHS = W;
                                                                //   1964           SSTACK(V);  RELEASE(V_BASE);  V_BASE = 0
#line 1964 "regression-compile-tmp/asems412.imp"
SSTACK(V);
#line 1964 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
#line 1964 "regression-compile-tmp/asems412.imp"
V->BASE = 0;
                                                                //   1965           OPERATE(SUB);  STP = STP-1
#line 1965 "regression-compile-tmp/asems412.imp"
OPERATE(4);
#line 1965 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   1966           V = STACKED(STP+1)_V;  DROP(STACKED(STP+1)_V)
#line 1966 "regression-compile-tmp/asems412.imp"
*V = *STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V;
#line 1966 "regression-compile-tmp/asems412.imp"
DROP(STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V);
                                                                //   1967           LOAD(V, R)
#line 1967 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
                                                                //   1968        %FINISH
#line 1968 "regression-compile-tmp/asems412.imp"
L_01e6:;
                                                                //   1969        FORGET(V_BASE)
#line 1969 "regression-compile-tmp/asems412.imp"
FORGET(V->BASE);
                                                                //   1970        CCREG = V_BASE;  CCCA = CA
#line 1970 "regression-compile-tmp/asems412.imp"
CCREG = V->BASE;
#line 1970 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   1971        %RETURN
#line 1971 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   1972  IOP(EXP):
#line 1972 "regression-compile-tmp/asems412.imp"
sw5_IOP_13:;
                                                                //   1973        LOAD(V, R2);  LOAD(W, R3)
#line 1973 "regression-compile-tmp/asems412.imp"
LOAD(V, 3);
#line 1973 "regression-compile-tmp/asems412.imp"
LOAD(W, 4);
                                                                //   1974        RELEASE(R2);  RELEASE(R3)
#line 1974 "regression-compile-tmp/asems412.imp"
RELEASE(3);
#line 1974 "regression-compile-tmp/asems412.imp"
RELEASE(4);
                                                                //   1975        PERM(IEXP)
#line 1975 "regression-compile-tmp/asems412.imp"
PERM(2823);
                                                                //   1976        CLAIM(R1);  V_BASE = R1
#line 1976 "regression-compile-tmp/asems412.imp"
CLAIM(2);
#line 1976 "regression-compile-tmp/asems412.imp"
V->BASE = 2;
                                                                //   1977        ->END OP
#line 1977 "regression-compile-tmp/asems412.imp"
goto U_1008;
                                                                //   1978  IOP(CONC):
#line 1978 "regression-compile-tmp/asems412.imp"
sw5_IOP_14:;
                                                                //   1979        %IF V_TYPE # 0 %START
#line 1979 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (0))) goto L_01e7;
                                                                //   1980           LOAD(V, R1);  RELEASE(R1)
#line 1980 "regression-compile-tmp/asems412.imp"
LOAD(V, 2);
#line 1980 "regression-compile-tmp/asems412.imp"
RELEASE(2);
                                                                //   1981           HAZARD(R2)
#line 1981 "regression-compile-tmp/asems412.imp"
HAZARD(3);
                                                                //   1982           %IF WDISP = 0 %START
#line 1982 "regression-compile-tmp/asems412.imp"
if (((WDISP) != (0))) goto L_01e8;
                                                                //   1983              RR(LR , R2, WSP)
#line 1983 "regression-compile-tmp/asems412.imp"
RR(2048, 3, 43);
                                                                //   1984           %ELSE
#line 1984 "regression-compile-tmp/asems412.imp"
goto L_01e9;
#line 1984 "regression-compile-tmp/asems412.imp"
L_01e8:;
                                                                //   1985              RI2(LHI, R2, WSP, WDISP)
#line 1985 "regression-compile-tmp/asems412.imp"
RI2(51200, 3, 43, WDISP);
                                                                //   1986           %FINISH
#line 1986 "regression-compile-tmp/asems412.imp"
L_01e9:;
                                                                //   1987           FORGET(R2)
#line 1987 "regression-compile-tmp/asems412.imp"
FORGET(3);
                                                                //   1988           WDISP = WDISP+256
#line 1988 "regression-compile-tmp/asems412.imp"
WDISP = (((int)(WDISP)) + (256));
                                                                //   1989           PERM(CONC1)
#line 1989 "regression-compile-tmp/asems412.imp"
PERM(2315);
                                                                //   1990        %ELSE
#line 1990 "regression-compile-tmp/asems412.imp"
goto L_01ea;
#line 1990 "regression-compile-tmp/asems412.imp"
L_01e7:;
                                                                //   1991           LOAD(V, R2);  RELEASE(R2)
#line 1991 "regression-compile-tmp/asems412.imp"
LOAD(V, 3);
#line 1991 "regression-compile-tmp/asems412.imp"
RELEASE(3);
                                                                //   1992        %FINISH
#line 1992 "regression-compile-tmp/asems412.imp"
L_01ea:;
                                                                //   1993        JOIN(W)
#line 1993 "regression-compile-tmp/asems412.imp"
JOIN(W);
                                                                //   1994        CLAIM(R2)
#line 1994 "regression-compile-tmp/asems412.imp"
CLAIM(3);
                                                                //   1995        V_TYPE = 0;  V_FORM = V IN S
#line 1995 "regression-compile-tmp/asems412.imp"
V->TYPE = 0;
#line 1995 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1996        V_BASE = R2;  V_DISP = 0
#line 1996 "regression-compile-tmp/asems412.imp"
V->BASE = 3;
#line 1996 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   1997        %IF R # ANY %START;! NOT FROM OPERATE
#line 1997 "regression-compile-tmp/asems412.imp"
if (((R) == (45))) goto L_01eb;
                                                                //   1998           LOAD(V, R);  V_TYPE = 0;  V_FORM = V IN S
#line 1998 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 1998 "regression-compile-tmp/asems412.imp"
V->TYPE = 0;
#line 1998 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   1999        %FINISH
#line 1999 "regression-compile-tmp/asems412.imp"
L_01eb:;
                                                                //   2000        %RETURN
#line 2000 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2001  REALZ:ABORT(11) %IF R = ANY;     ! ...SHOULD BE FLOATING REGISTER!!!
#line 2001 "regression-compile-tmp/asems412.imp"
U_1007:;
#line 2001 "regression-compile-tmp/asems412.imp"
if (((R) != (45))) goto L_01ec;
#line 2001 "regression-compile-tmp/asems412.imp"
ABORT(11);
#line 2001 "regression-compile-tmp/asems412.imp"
L_01ec:;
                                                                //   2002        OP = V_LOP;  V_LOP = 0
#line 2002 "regression-compile-tmp/asems412.imp"
OP = V->LOP;
#line 2002 "regression-compile-tmp/asems412.imp"
V->LOP = 0;
                                                                //   2003        %IF OP # 0 %START
#line 2003 "regression-compile-tmp/asems412.imp"
if (((OP) == (0))) goto L_01ed;
                                                                //   2004           -> ROP NEG %IF OP = NEG
#line 2004 "regression-compile-tmp/asems412.imp"
if (((OP) != (2))) goto L_01ee;
#line 2004 "regression-compile-tmp/asems412.imp"
goto U_100b;
#line 2004 "regression-compile-tmp/asems412.imp"
L_01ee:;
                                                                //   2005           W == V_LINK
#line 2005 "regression-compile-tmp/asems412.imp"
W = V->LINK;
                                                                //   2006  IOP(RDIV):
#line 2006 "regression-compile-tmp/asems412.imp"
sw5_IOP_16:;
                                                                //   2007           FLOAT(W, ANYF) %IF W_TYPE # REALS %AND OP # EXP
#line 2007 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) == (6))) goto L_01ef;
#line 2007 "regression-compile-tmp/asems412.imp"
if (((OP) == (13))) goto L_01ef;
#line 2007 "regression-compile-tmp/asems412.imp"
FLOAT(W, 47);
#line 2007 "regression-compile-tmp/asems412.imp"
L_01ef:;
                                                                //   2008           FLOAT(V, R) %IF V_TYPE # REALS
#line 2008 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (6))) goto L_01f0;
#line 2008 "regression-compile-tmp/asems412.imp"
FLOAT(V, R);
#line 2008 "regression-compile-tmp/asems412.imp"
L_01f0:;
                                                                //   2009           %IF OP = ADD %OR OP = MUL %START
#line 2009 "regression-compile-tmp/asems412.imp"
if (((OP) == (3))) goto L_01f1;
#line 2009 "regression-compile-tmp/asems412.imp"
if (((OP) != (6))) goto L_01f2;
#line 2009 "regression-compile-tmp/asems412.imp"
L_01f1:;
                                                                //   2010              OPTIMISE(V);  OPTIMISE(W) %UNLESS W == NULL
#line 2010 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
#line 2010 "regression-compile-tmp/asems412.imp"
if (((W) == (NULL))) goto L_01f3;
#line 2010 "regression-compile-tmp/asems412.imp"
OPTIMISE(W);
#line 2010 "regression-compile-tmp/asems412.imp"
L_01f3:;
                                                                //   2011              %IF W_BASE=R %OR (V_FORM # V IN R %AND W_FORM = V IN R) %START
#line 2011 "regression-compile-tmp/asems412.imp"
if (((W->BASE) == (R))) goto L_01f4;
#line 2011 "regression-compile-tmp/asems412.imp"
if (((V->FORM) == (1))) goto L_01f5;
#line 2011 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01f5;
#line 2011 "regression-compile-tmp/asems412.imp"
L_01f4:;
                                                                //   2012                 H = W;  W = V;  V = H
#line 2012 "regression-compile-tmp/asems412.imp"
H = *W;
#line 2012 "regression-compile-tmp/asems412.imp"
*W = *V;
#line 2012 "regression-compile-tmp/asems412.imp"
*V = H;
                                                                //   2013              %FINISH
#line 2013 "regression-compile-tmp/asems412.imp"
L_01f5:;
                                                                //   2014           %FINISH
#line 2014 "regression-compile-tmp/asems412.imp"
L_01f2:;
                                                                //   2015           ADDRESS(W) %UNLESS W == NULL
#line 2015 "regression-compile-tmp/asems412.imp"
if (((W) == (NULL))) goto L_01f6;
#line 2015 "regression-compile-tmp/asems412.imp"
ADDRESS(W);
#line 2015 "regression-compile-tmp/asems412.imp"
L_01f6:;
                                                                //   2016           ->ROP(OP)
#line 2016 "regression-compile-tmp/asems412.imp"
sw6_ROP_idx = OP; if ((1 <= sw6_ROP_idx) && (sw6_ROP_idx <= 17)) goto *(sw6_ROP-1)[sw6_ROP_idx];  /* Bounds=1:17 */ else {
   /*_imp_signal(8, 2, sw6_ROP_idx);*/
   fprintf(stderr, "%%SWITCH index ROP(%d) not in range 1:17 at %s:%d\n",
           sw6_ROP_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   2017  ROP(NOT):ROP(LSH):  ROP(RSH):
#line 2017 "regression-compile-tmp/asems412.imp"
sw6_ROP_1:;
#line 2017 "regression-compile-tmp/asems412.imp"
sw6_ROP_11:;
#line 2017 "regression-compile-tmp/asems412.imp"
sw6_ROP_12:;
                                                                //   2018  ROP(AND):ROP(IOR):    ROP(XOR):
#line 2018 "regression-compile-tmp/asems412.imp"
sw6_ROP_8:;
#line 2018 "regression-compile-tmp/asems412.imp"
sw6_ROP_9:;
#line 2018 "regression-compile-tmp/asems412.imp"
sw6_ROP_10:;
                                                                //   2019           REAL ERROR(OP)
#line 2019 "regression-compile-tmp/asems412.imp"
REALERROR(OP);
                                                                //   2020  ROP(RDIV):OP = DIV
#line 2020 "regression-compile-tmp/asems412.imp"
sw6_ROP_16:;
#line 2020 "regression-compile-tmp/asems412.imp"
OP = 7;
                                                                //   2021  ROP(ADD):
#line 2021 "regression-compile-tmp/asems412.imp"
sw6_ROP_3:;
                                                                //   2022  ROP(SUB):
#line 2022 "regression-compile-tmp/asems412.imp"
sw6_ROP_4:;
                                                                //   2023  ROP(MUL):
#line 2023 "regression-compile-tmp/asems412.imp"
sw6_ROP_6:;
                                                                //   2024           LOAD(V, R);  R = V_BASE
#line 2024 "regression-compile-tmp/asems412.imp"
LOAD(V, R);
#line 2024 "regression-compile-tmp/asems412.imp"
R = V->BASE;
                                                                //   2025           %IF W_FORM = V IN R %START
#line 2025 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_01f7;
                                                                //   2026              RR(REALOP(OP), R, W_BASE)
#line 2026 "regression-compile-tmp/asems412.imp"
RR((REALOP-3)[OP], R, W->BASE);
                                                                //   2027           %ELSE
#line 2027 "regression-compile-tmp/asems412.imp"
goto L_01f8;
#line 2027 "regression-compile-tmp/asems412.imp"
L_01f7:;
                                                                //   2028              RX(REALOP(OP+7), R, W_BASE, W_DISP)
#line 2028 "regression-compile-tmp/asems412.imp"
RX((REALOP-3)[(((int)(OP)) + (7))], R, W->BASE, W->DISP);
                                                                //   2029           %FINISH
#line 2029 "regression-compile-tmp/asems412.imp"
L_01f8:;
                                                                //   2030           ->SET CC
#line 2030 "regression-compile-tmp/asems412.imp"
goto U_1009;
                                                                //   2031  ROP NEG:
#line 2031 "regression-compile-tmp/asems412.imp"
U_100b:;
                                                                //   2032  ROP(NEG):LOAD(V, ANYF) %IF V_BASE = R
#line 2032 "regression-compile-tmp/asems412.imp"
sw6_ROP_2:;
#line 2032 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (R))) goto L_01f9;
#line 2032 "regression-compile-tmp/asems412.imp"
LOAD(V, 47);
#line 2032 "regression-compile-tmp/asems412.imp"
L_01f9:;
                                                                //   2033           R = FPR %IF R = ANYF
#line 2033 "regression-compile-tmp/asems412.imp"
if (((R) != (47))) goto L_01fa;
#line 2033 "regression-compile-tmp/asems412.imp"
R = FPR();
#line 2033 "regression-compile-tmp/asems412.imp"
L_01fa:;
                                                                //   2034           HAZARD(R)
#line 2034 "regression-compile-tmp/asems412.imp"
HAZARD(R);
                                                                //   2035           CLAIM(R);  RR(SER, R, R);  CLAIM(R)
#line 2035 "regression-compile-tmp/asems412.imp"
CLAIM(R);
#line 2035 "regression-compile-tmp/asems412.imp"
RR(11008, R, R);
#line 2035 "regression-compile-tmp/asems412.imp"
CLAIM(R);
                                                                //   2036           ADDRESS(V)
#line 2036 "regression-compile-tmp/asems412.imp"
ADDRESS(V);
                                                                //   2037           %IF V_FORM = V IN R %START
#line 2037 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_01fb;
                                                                //   2038              RR(SER, R, V_BASE)
#line 2038 "regression-compile-tmp/asems412.imp"
RR(11008, R, V->BASE);
                                                                //   2039           %ELSE
#line 2039 "regression-compile-tmp/asems412.imp"
goto L_01fc;
#line 2039 "regression-compile-tmp/asems412.imp"
L_01fb:;
                                                                //   2040              RX(SE, R, V_BASE, V_DISP)
#line 2040 "regression-compile-tmp/asems412.imp"
RX(27392, R, V->BASE, V->DISP);
                                                                //   2041           %FINISH
#line 2041 "regression-compile-tmp/asems412.imp"
L_01fc:;
                                                                //   2042           CCREG = R;  CCCA = CA
#line 2042 "regression-compile-tmp/asems412.imp"
CCREG = R;
#line 2042 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   2043           FORGET(R)
#line 2043 "regression-compile-tmp/asems412.imp"
FORGET(R);
                                                                //   2044           V_BASE = R;  V_DISP = 0
#line 2044 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 2044 "regression-compile-tmp/asems412.imp"
V->DISP = 0;
                                                                //   2045           V_FORM = V IN R
#line 2045 "regression-compile-tmp/asems412.imp"
V->FORM = 1;
                                                                //   2046           %RETURN
#line 2046 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2047        %FINISH
#line 2047 "regression-compile-tmp/asems412.imp"
L_01ed:;
                                                                //   2048        FLOAT(V, R) %IF V_TYPE # REALS
#line 2048 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) == (6))) goto L_01fd;
#line 2048 "regression-compile-tmp/asems412.imp"
FLOAT(V, R);
#line 2048 "regression-compile-tmp/asems412.imp"
L_01fd:;
                                                                //   2049        OPTIMISE(V)
#line 2049 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
                                                                //   2050        %IF V_FORM = V IN R %START
#line 2050 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_01fe;
                                                                //   2051           %RETURN %IF R = ANYF %OR V_BASE = R
#line 2051 "regression-compile-tmp/asems412.imp"
if (((R) == (47))) goto L_01ff;
#line 2051 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (R))) goto L_0200;
#line 2051 "regression-compile-tmp/asems412.imp"
L_01ff:;
#line 2051 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2051 "regression-compile-tmp/asems412.imp"
L_0200:;
                                                                //   2052           RR(LER, R, V_BASE);  USE(R) = USE(V_BASE)
#line 2052 "regression-compile-tmp/asems412.imp"
RR(10240, R, V->BASE);
#line 2052 "regression-compile-tmp/asems412.imp"
USE[(((int)(R)) - (1))] = USE[(((int)(V->BASE)) - (1))];
                                                                //   2053           V_BASE = R;  CLAIM(V_BASE)
#line 2053 "regression-compile-tmp/asems412.imp"
V->BASE = R;
#line 2053 "regression-compile-tmp/asems412.imp"
CLAIM(V->BASE);
                                                                //   2054           CCREG = R;  CCCA = CA
#line 2054 "regression-compile-tmp/asems412.imp"
CCREG = R;
#line 2054 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   2055           %RETURN
#line 2055 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2056        %FINISH
#line 2056 "regression-compile-tmp/asems412.imp"
L_01fe:;
                                                                //   2057        R = FPR %IF R = ANYF
#line 2057 "regression-compile-tmp/asems412.imp"
if (((R) != (47))) goto L_0201;
#line 2057 "regression-compile-tmp/asems412.imp"
R = FPR();
#line 2057 "regression-compile-tmp/asems412.imp"
L_0201:;
                                                                //   2058        ABORT(12) %UNLESS FPR0 <= R <= FPR14
#line 2058 "regression-compile-tmp/asems412.imp"
if ((((13) > (R))) || (((R) <= (20)))) goto L_0203;
#line 2058 "regression-compile-tmp/asems412.imp"
L_0202:;
#line 2058 "regression-compile-tmp/asems412.imp"
ABORT(12);
#line 2058 "regression-compile-tmp/asems412.imp"
L_0203:;
                                                                //   2059        ->F(V_FORM)
#line 2059 "regression-compile-tmp/asems412.imp"
sw4_F_idx = V->FORM; if ((0 <= sw4_F_idx) && (sw4_F_idx <= 8)) goto *sw4_F[sw4_F_idx]; else {
   /*_imp_signal(8, 2, sw4_F_idx);*/
   fprintf(stderr, "%%SWITCH index F(%d) not in range 0:8 at %s:%d\n",
           sw4_F_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   2060  ROP(EXP):
#line 2060 "regression-compile-tmp/asems412.imp"
sw6_ROP_13:;
                                                                //   2061        REAL ERROR(1) %AND W_TYPE = INTEGER %IF W_TYPE = REALS
#line 2061 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (6))) goto L_0204;
#line 2061 "regression-compile-tmp/asems412.imp"
REALERROR(1);
#line 2061 "regression-compile-tmp/asems412.imp"
W->TYPE = 1;
#line 2061 "regression-compile-tmp/asems412.imp"
L_0204:;
                                                                //   2062        LOAD(V, FPR2);  LOAD(W, R1)
#line 2062 "regression-compile-tmp/asems412.imp"
LOAD(V, 14);
#line 2062 "regression-compile-tmp/asems412.imp"
LOAD(W, 2);
                                                                //   2063        RELEASE(FPR2);  RELEASE(R1)
#line 2063 "regression-compile-tmp/asems412.imp"
RELEASE(14);
#line 2063 "regression-compile-tmp/asems412.imp"
RELEASE(2);
                                                                //   2064        PERM(REXP)
#line 2064 "regression-compile-tmp/asems412.imp"
PERM(98568);
                                                                //   2065        CLAIM(FPR0);  V_BASE = FPR0
#line 2065 "regression-compile-tmp/asems412.imp"
CLAIM(13);
#line 2065 "regression-compile-tmp/asems412.imp"
V->BASE = 13;
                                                                //   2066        ->ENDOP
#line 2066 "regression-compile-tmp/asems412.imp"
goto U_1008;
                                                                //   2067  SET CC:
#line 2067 "regression-compile-tmp/asems412.imp"
U_1009:;
                                                                //   2068        CCCA = CA;  CCREG = R
#line 2068 "regression-compile-tmp/asems412.imp"
CCCA = CA;
#line 2068 "regression-compile-tmp/asems412.imp"
CCREG = R;
                                                                //   2069  FEND: FORGET(R)
#line 2069 "regression-compile-tmp/asems412.imp"
U_100a:;
#line 2069 "regression-compile-tmp/asems412.imp"
FORGET(R);
                                                                //   2070  END OP:DROP(W)
#line 2070 "regression-compile-tmp/asems412.imp"
U_1008:;
#line 2070 "regression-compile-tmp/asems412.imp"
DROP(W);
                                                                //   2071     %END
#line 2071 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
sw6_ROP_5:;
sw6_ROP_7:;
sw6_ROP_14:;
sw6_ROP_15:;
sw6_ROP_17:;
/*_imp_signal(6,3,sw6_ROP_idx,"SWITCH LABEL NOT SET - sw6_ROP");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw6_ROP(%d): at line %s:%d", sw6_ROP_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
sw5_IOP_5:;
/*_imp_signal(6,3,sw5_IOP_idx,"SWITCH LABEL NOT SET - sw5_IOP");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw5_IOP(%d): at line %s:%d", sw5_IOP_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
sw4_F_8:;
/*_imp_signal(6,3,sw4_F_idx,"SWITCH LABEL NOT SET - sw4_F");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw4_F(%d): at line %s:%d", sw4_F_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
} // End of block LOAD at level 3
                                                                //   2072        %ROUTINE COP(%INTEGER OP, %INTEGERNAME L, %INTEGER R)
#line 2072 "regression-compile-tmp/asems412.imp"
void COP( int OP, int /*name*/*L, int R )
#line 2072 "regression-compile-tmp/asems412.imp"
{
                                                                //   2073           %SWITCH S(1:17)
#line 2073 "regression-compile-tmp/asems412.imp"
static int sw7_S_idx;
static const void * /*SWITCH*/ sw7_S[17] = { &&sw7_S_1, &&sw7_S_2, &&sw7_S_3, &&sw7_S_4, &&sw7_S_5, &&sw7_S_6, &&sw7_S_7, &&sw7_S_8, &&sw7_S_9, &&sw7_S_10, &&sw7_S_11, &&sw7_S_12, &&sw7_S_13, &&sw7_S_14, &&sw7_S_15, &&sw7_S_16, &&sw7_S_17,  };
                                                                //   2074           ->S(OP)
#line 2074 "regression-compile-tmp/asems412.imp"
sw7_S_idx = OP; if ((1 <= sw7_S_idx) && (sw7_S_idx <= 17)) goto *(sw7_S-1)[sw7_S_idx];  /* Bounds=1:17 */ else {
   /*_imp_signal(8, 2, sw7_S_idx);*/
   fprintf(stderr, "%%SWITCH index S(%d) not in range 1:17 at %s:%d\n",
           sw7_S_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   2075  S(SADD):
#line 2075 "regression-compile-tmp/asems412.imp"
sw7_S_15:;
                                                                //   2076  S(RDIV):
#line 2076 "regression-compile-tmp/asems412.imp"
sw7_S_16:;
                                                                //   2077  S(NEG):
#line 2077 "regression-compile-tmp/asems412.imp"
sw7_S_2:;
                                                                //   2078  S(NOT):
#line 2078 "regression-compile-tmp/asems412.imp"
sw7_S_1:;
                                                                //   2079  S(CONC):    ABORT(13)
#line 2079 "regression-compile-tmp/asems412.imp"
sw7_S_14:;
#line 2079 "regression-compile-tmp/asems412.imp"
ABORT(13);
                                                                //   2080  S(ADD):     L = L+R;    %RETURN
#line 2080 "regression-compile-tmp/asems412.imp"
sw7_S_3:;
#line 2080 "regression-compile-tmp/asems412.imp"
*L = ((*(int *)(L)) + (R));
#line 2080 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2081  S(SUB):     L = L-R;    %RETURN
#line 2081 "regression-compile-tmp/asems412.imp"
sw7_S_4:;
#line 2081 "regression-compile-tmp/asems412.imp"
*L = ((*(int *)(L)) - (R));
#line 2081 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2082  S(IOR):     L = L!R;    %RETURN
#line 2082 "regression-compile-tmp/asems412.imp"
sw7_S_9:;
#line 2082 "regression-compile-tmp/asems412.imp"
*L = ((*L) | (R));
#line 2082 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2083  S(AND):     L = L&R;    %RETURN
#line 2083 "regression-compile-tmp/asems412.imp"
sw7_S_8:;
#line 2083 "regression-compile-tmp/asems412.imp"
*L = ((*L) & (R));
#line 2083 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2084  S(XOR):     L = L!!R;   %RETURN
#line 2084 "regression-compile-tmp/asems412.imp"
sw7_S_10:;
#line 2084 "regression-compile-tmp/asems412.imp"
*L = ((*L) ^ (R));
#line 2084 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2085  S(LSH):     L = L<<R;   %RETURN
#line 2085 "regression-compile-tmp/asems412.imp"
sw7_S_11:;
#line 2085 "regression-compile-tmp/asems412.imp"
*L = ((*L) << (R));
#line 2085 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2086  S(MUL):     L = L*R;    %RETURN
#line 2086 "regression-compile-tmp/asems412.imp"
sw7_S_6:;
#line 2086 "regression-compile-tmp/asems412.imp"
*L = ((*(int *)(L)) * (R));
#line 2086 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2087  S(RSH):     L = L>>R;   %RETURN
#line 2087 "regression-compile-tmp/asems412.imp"
sw7_S_12:;
#line 2087 "regression-compile-tmp/asems412.imp"
*L = (int)(((*(unsigned int *)(L)) >> (R)));
#line 2087 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2088  S(EXP):     L = L\\R;   %RETURN
#line 2088 "regression-compile-tmp/asems412.imp"
sw7_S_13:;
#line 2088 "regression-compile-tmp/asems412.imp"
*L = _imp_IEXP(*L, R);
#line 2088 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2089  S(DIV):     ABORT(-6) %AND R = 1 %IF R = 0
#line 2089 "regression-compile-tmp/asems412.imp"
sw7_S_7:;
#line 2089 "regression-compile-tmp/asems412.imp"
if (((R) != (0))) goto L_0205;
#line 2089 "regression-compile-tmp/asems412.imp"
ABORT((-6));
#line 2089 "regression-compile-tmp/asems412.imp"
R = 1;
#line 2089 "regression-compile-tmp/asems412.imp"
L_0205:;
                                                                //   2090              L = L//R;   %RETURN
#line 2090 "regression-compile-tmp/asems412.imp"
*L = (long)((long)(*(int *)(L)) / (long)((int)(_Z(R))));
#line 2090 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2091  S(REM):     ABORT(-6) %AND R = 1 %IF R = 0
#line 2091 "regression-compile-tmp/asems412.imp"
sw7_S_17:;
#line 2091 "regression-compile-tmp/asems412.imp"
if (((R) != (0))) goto L_0206;
#line 2091 "regression-compile-tmp/asems412.imp"
ABORT((-6));
#line 2091 "regression-compile-tmp/asems412.imp"
R = 1;
#line 2091 "regression-compile-tmp/asems412.imp"
L_0206:;
                                                                //   2092              L = L-L//R*R
#line 2092 "regression-compile-tmp/asems412.imp"
*L = ((*L) - (((((long)((long)(*(int *)(L)) / (long)((int)(_Z(R)))))) * (R))));
                                                                //   2093        %END
#line 2093 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
sw7_S_5:;
/*_imp_signal(6,3,sw7_S_idx,"SWITCH LABEL NOT SET - sw7_S");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw7_S(%d): at line %s:%d", sw7_S_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
} // End of block COP at level 3
                                                                //   2094        %ROUTINE JOIN(%RECORD(STACKFM)%NAME W)
#line 2094 "regression-compile-tmp/asems412.imp"
void JOIN(  STACKFM /*name*/*W )
#line 2094 "regression-compile-tmp/asems412.imp"
{
                                                                //   2095           %RECORD(STACKFM)%NAME QW
#line 2095 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*QW;
                                                                //   2096           %CYCLE
#line 2096 "regression-compile-tmp/asems412.imp"
L_0207:;
                                                                //   2097              QW == W_LINK;  W_LOP = 0
#line 2097 "regression-compile-tmp/asems412.imp"
QW = W->LINK;
#line 2097 "regression-compile-tmp/asems412.imp"
W->LOP = 0;
                                                                //   2098              LRD(W, R1);  PERM(CONC2)
#line 2098 "regression-compile-tmp/asems412.imp"
LRD(W, 2);
#line 2098 "regression-compile-tmp/asems412.imp"
PERM(25356);
                                                                //   2099              %EXIT %IF QW == NULL
#line 2099 "regression-compile-tmp/asems412.imp"
if (((QW) != (NULL))) goto L_020a;
#line 2099 "regression-compile-tmp/asems412.imp"
goto L_0208;
#line 2099 "regression-compile-tmp/asems412.imp"
L_020a:;
                                                                //   2100              W == QW
#line 2100 "regression-compile-tmp/asems412.imp"
W = QW;
                                                                //   2101           %REPEAT
#line 2101 "regression-compile-tmp/asems412.imp"
goto L_0207;
#line 2101 "regression-compile-tmp/asems412.imp"
L_0208:;
                                                                //   2102        %END
#line 2102 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block JOIN at level 3
                                                                //   2103        %ROUTINE OPERATE(%INTEGER OPER)
#line 2103 "regression-compile-tmp/asems412.imp"
void OPERATE( int OPER )
#line 2103 "regression-compile-tmp/asems412.imp"
{
                                                                //   2104           %CONSTINTEGERARRAY NULL OP(3:17) = 0,0,1,1,1,-1,0(4),1,0,0,1,1
#line 2104 "regression-compile-tmp/asems412.imp"
const int NULLOP[15] = { 0, 0, 1, 1, 1, (-1), 0, 0, 0, 0, 1, 0, 0, 1, 1,  };
                                                                //   2105           %INTEGER RCON, LCON, WCON, LOP
#line 2105 "regression-compile-tmp/asems412.imp"
int RCON;
#line 2105 "regression-compile-tmp/asems412.imp"
int LCON;
#line 2105 "regression-compile-tmp/asems412.imp"
int WCON;
#line 2105 "regression-compile-tmp/asems412.imp"
int LOP;
                                                                //   2106           %INTEGER KEY, D, S
#line 2106 "regression-compile-tmp/asems412.imp"
int KEY;
#line 2106 "regression-compile-tmp/asems412.imp"
int D;
#line 2106 "regression-compile-tmp/asems412.imp"
int S;
                                                                //   2107           %RECORD(STACKFM)%NAME WITH, LH, RH
#line 2107 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*WITH;
#line 2107 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*LH;
#line 2107 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*RH;
                                                                //   2108           %CONSTBYTEINTEGERARRAY TRANS(1:17) = 2,2,0,0,1(6),2(4),0,15,15
#line 2108 "regression-compile-tmp/asems412.imp"
const unsigned char TRANS[17] = { 2, 2, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 0, 15, 15,  };
                                                                //   2109  
                                                                //   2110           %ROUTINE  SWOP
#line 2110 "regression-compile-tmp/asems412.imp"
void SWOP( void )
#line 2110 "regression-compile-tmp/asems412.imp"
{
                                                                //   2111              WCON = LCON;  LCON = RCON;  RCON = WCON
#line 2111 "regression-compile-tmp/asems412.imp"
WCON = LCON;
#line 2111 "regression-compile-tmp/asems412.imp"
LCON = RCON;
#line 2111 "regression-compile-tmp/asems412.imp"
RCON = WCON;
                                                                //   2112              WITH == LH;  LH == RH;  RH == WITH
#line 2112 "regression-compile-tmp/asems412.imp"
WITH = LH;
#line 2112 "regression-compile-tmp/asems412.imp"
LH = RH;
#line 2112 "regression-compile-tmp/asems412.imp"
RH = WITH;
                                                                //   2113              STACKED(STP)_V == LH
#line 2113 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = LH;
                                                                //   2114           %END
#line 2114 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SWOP at level 4
                                                                //   2115           %ROUTINE  PICKUP(%RECORD(STACKFM)%NAME  V)
#line 2115 "regression-compile-tmp/asems412.imp"
void PICKUP(  STACKFM /*name*/*V )
#line 2115 "regression-compile-tmp/asems412.imp"
{
                                                                //   2116              %IF FLOATING(V) %THEN LOAD(V,ANYF) %ELSE LOAD(V,ANY)
#line 2116 "regression-compile-tmp/asems412.imp"
if (!(FLOATING(V))) goto L_020b;
#line 2116 "regression-compile-tmp/asems412.imp"
LOAD(V, 47);
#line 2116 "regression-compile-tmp/asems412.imp"
goto L_020c;
#line 2116 "regression-compile-tmp/asems412.imp"
L_020b:;
#line 2116 "regression-compile-tmp/asems412.imp"
LOAD(V, 45);
#line 2116 "regression-compile-tmp/asems412.imp"
L_020c:;
                                                                //   2117           %END
#line 2117 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PICKUP at level 4
                                                                //   2118  
                                                                //   2119           %IF OPER <= NEG %START;! UNARY
#line 2119 "regression-compile-tmp/asems412.imp"
if (((OPER) > (2))) goto L_020d;
                                                                //   2120              LH == STACKED(STP)_V
#line 2120 "regression-compile-tmp/asems412.imp"
LH = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2121              %IF CONST(LH) %START
#line 2121 "regression-compile-tmp/asems412.imp"
if (!(CONST(LH))) goto L_020e;
                                                                //   2122                 LH_DISP = \LH_DISP+OPER-1
#line 2122 "regression-compile-tmp/asems412.imp"
LH->DISP = (((((~(LH->DISP))) + (OPER))) - (1));
                                                                //   2123              %ELSE
#line 2123 "regression-compile-tmp/asems412.imp"
goto L_020f;
#line 2123 "regression-compile-tmp/asems412.imp"
L_020e:;
                                                                //   2124                 PICKUP(LH) %IF LH_LOP # 0
#line 2124 "regression-compile-tmp/asems412.imp"
if (((LH->LOP) == (0))) goto L_0210;
#line 2124 "regression-compile-tmp/asems412.imp"
PICKUP(LH);
#line 2124 "regression-compile-tmp/asems412.imp"
L_0210:;
                                                                //   2125                 LH_LOP = OPER;  LH_LINK == NULL
#line 2125 "regression-compile-tmp/asems412.imp"
LH->LOP = OPER;
#line 2125 "regression-compile-tmp/asems412.imp"
LH->LINK = NULL;
                                                                //   2126              %FINISH
#line 2126 "regression-compile-tmp/asems412.imp"
L_020f:;
                                                                //   2127              %RETURN
#line 2127 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2128           %FINISH
#line 2128 "regression-compile-tmp/asems412.imp"
L_020d:;
                                                                //   2129           STP = STP-1
#line 2129 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2130           LCON = 0;  RCON = 0;  WCON = 0
#line 2130 "regression-compile-tmp/asems412.imp"
LCON = 0;
#line 2130 "regression-compile-tmp/asems412.imp"
RCON = 0;
#line 2130 "regression-compile-tmp/asems412.imp"
WCON = 0;
                                                                //   2131           LH == STACKED(STP)_V
#line 2131 "regression-compile-tmp/asems412.imp"
LH = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2132           RH == STACKED(STP+1)_V
#line 2132 "regression-compile-tmp/asems412.imp"
RH = STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V;
                                                                //   2133           LCON = 1 %IF CONST(LH)
#line 2133 "regression-compile-tmp/asems412.imp"
if (!(CONST(LH))) goto L_0211;
#line 2133 "regression-compile-tmp/asems412.imp"
LCON = 1;
#line 2133 "regression-compile-tmp/asems412.imp"
L_0211:;
                                                                //   2134           RCON = 1 %IF CONST(RH)
#line 2134 "regression-compile-tmp/asems412.imp"
if (!(CONST(RH))) goto L_0212;
#line 2134 "regression-compile-tmp/asems412.imp"
RCON = 1;
#line 2134 "regression-compile-tmp/asems412.imp"
L_0212:;
                                                                //   2135           %IF OPER = SUB %AND RCON # 0 %START
#line 2135 "regression-compile-tmp/asems412.imp"
if (((OPER) != (4))) goto L_0213;
#line 2135 "regression-compile-tmp/asems412.imp"
if (((RCON) == (0))) goto L_0213;
                                                                //   2136              OPER = ADD;  RH_DISP = -RH_DISP
#line 2136 "regression-compile-tmp/asems412.imp"
OPER = 3;
#line 2136 "regression-compile-tmp/asems412.imp"
RH->DISP = (-(RH->DISP));
                                                                //   2137           %FINISH
#line 2137 "regression-compile-tmp/asems412.imp"
L_0213:;
                                                                //   2138           %IF LH_LOP # 0 %START
#line 2138 "regression-compile-tmp/asems412.imp"
if (((LH->LOP) == (0))) goto L_0214;
                                                                //   2139              LOP = LH_LOP
#line 2139 "regression-compile-tmp/asems412.imp"
LOP = LH->LOP;
                                                                //   2140              %IF OPER = CONC %START
#line 2140 "regression-compile-tmp/asems412.imp"
if (((OPER) != (14))) goto L_0215;
                                                                //   2141                 WITH == LH
#line 2141 "regression-compile-tmp/asems412.imp"
WITH = LH;
                                                                //   2142                 WITH == WITH_LINK %WHILE WITH_LOP # 0
#line 2142 "regression-compile-tmp/asems412.imp"
L_0216:;
#line 2142 "regression-compile-tmp/asems412.imp"
if (((WITH->LOP) == (0))) goto L_0217;
#line 2142 "regression-compile-tmp/asems412.imp"
WITH = WITH->LINK;
#line 2142 "regression-compile-tmp/asems412.imp"
goto L_0216;
#line 2142 "regression-compile-tmp/asems412.imp"
L_0217:;
                                                                //   2143                 WITH_LINK == RH
#line 2143 "regression-compile-tmp/asems412.imp"
WITH->LINK = RH;
                                                                //   2144                 WITH_LOP = CONC
#line 2144 "regression-compile-tmp/asems412.imp"
WITH->LOP = 14;
                                                                //   2145                 %RETURN
#line 2145 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2146              %FINISH
#line 2146 "regression-compile-tmp/asems412.imp"
L_0215:;
                                                                //   2147              WITH == LH_LINK
#line 2147 "regression-compile-tmp/asems412.imp"
WITH = LH->LINK;
                                                                //   2148              WCON = 1 %IF OPER > NEG %AND CONST(WITH)
#line 2148 "regression-compile-tmp/asems412.imp"
if (((OPER) <= (2))) goto L_0219;
#line 2148 "regression-compile-tmp/asems412.imp"
if (!(CONST(WITH))) goto L_0219;
#line 2148 "regression-compile-tmp/asems412.imp"
WCON = 1;
#line 2148 "regression-compile-tmp/asems412.imp"
L_0219:;
                                                                //   2149              %IF LOP = NEG %AND OPER = ADD %START
#line 2149 "regression-compile-tmp/asems412.imp"
if (((LOP) != (2))) goto L_021a;
#line 2149 "regression-compile-tmp/asems412.imp"
if (((OPER) != (3))) goto L_021a;
                                                                //   2150                 RH_LOP = SUB;  RH_LINK == LH
#line 2150 "regression-compile-tmp/asems412.imp"
RH->LOP = 4;
#line 2150 "regression-compile-tmp/asems412.imp"
RH->LINK = LH;
                                                                //   2151                 LH_LOP = 0
#line 2151 "regression-compile-tmp/asems412.imp"
LH->LOP = 0;
                                                                //   2152                 STACKED(STP)_V == RH
#line 2152 "regression-compile-tmp/asems412.imp"
STACKED[(((int)(STP)) - (1))].V = RH;
                                                                //   2153                 %RETURN
#line 2153 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2154              %FINISH
#line 2154 "regression-compile-tmp/asems412.imp"
L_021a:;
                                                                //   2155              DUMP STRING(0) %IF WITH_TYPE = STRING
#line 2155 "regression-compile-tmp/asems412.imp"
if (((WITH->TYPE) != (4))) goto L_021b;
#line 2155 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
#line 2155 "regression-compile-tmp/asems412.imp"
L_021b:;
                                                                //   2156              %IF WCON&RCON # 0 %START
#line 2156 "regression-compile-tmp/asems412.imp"
if (((((WCON) & (RCON))) == (0))) goto L_021c;
                                                                //   2157                 KEY = TRANS(OPER)!TRANS(LOP)
#line 2157 "regression-compile-tmp/asems412.imp"
KEY = (((TRANS-1)[OPER]) | ((TRANS-1)[LOP]));
                                                                //   2158                 %IF KEY = 0 %OR (KEY = 1 %AND OPER = LOP) %START
#line 2158 "regression-compile-tmp/asems412.imp"
if (((KEY) == (0))) goto L_0218;
#line 2158 "regression-compile-tmp/asems412.imp"
if (((KEY) != (1))) goto L_021d;
#line 2158 "regression-compile-tmp/asems412.imp"
if (((OPER) != (LOP))) goto L_021d;
#line 2158 "regression-compile-tmp/asems412.imp"
L_0218:;
                                                                //   2159                    COP(OPER, WITH_DISP, RH_DISP);  DROP(RH)
#line 2159 "regression-compile-tmp/asems412.imp"
COP(OPER, &WITH->DISP, RH->DISP);
#line 2159 "regression-compile-tmp/asems412.imp"
DROP(RH);
                                                                //   2160                    %IF WITH_DISP = NULL OP(OPER) %START
#line 2160 "regression-compile-tmp/asems412.imp"
if (((WITH->DISP) != ((NULLOP-3)[OPER]))) goto L_021e;
                                                                //   2161                       LH_LOP = 0;  DROP(WITH)
#line 2161 "regression-compile-tmp/asems412.imp"
LH->LOP = 0;
#line 2161 "regression-compile-tmp/asems412.imp"
DROP(WITH);
                                                                //   2162                    %FINISH
#line 2162 "regression-compile-tmp/asems412.imp"
L_021e:;
                                                                //   2163                    %RETURN
#line 2163 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2164                 %FINISH
#line 2164 "regression-compile-tmp/asems412.imp"
L_021d:;
                                                                //   2165              %FINISH
#line 2165 "regression-compile-tmp/asems412.imp"
L_021c:;
                                                                //   2166              PICKUP(LH)
#line 2166 "regression-compile-tmp/asems412.imp"
PICKUP(LH);
                                                                //   2167           %FINISH
#line 2167 "regression-compile-tmp/asems412.imp"
L_0214:;
                                                                //   2168           %IF LCON&RCON # 0 %AND OPER # RDIV %START
#line 2168 "regression-compile-tmp/asems412.imp"
if (((((LCON) & (RCON))) == (0))) goto L_021f;
#line 2168 "regression-compile-tmp/asems412.imp"
if (((OPER) == (16))) goto L_021f;
                                                                //   2169              COP(OPER, LH_DISP, RH_DISP);  DROP(RH);  %RETURN
#line 2169 "regression-compile-tmp/asems412.imp"
COP(OPER, &LH->DISP, RH->DISP);
#line 2169 "regression-compile-tmp/asems412.imp"
DROP(RH);
#line 2169 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2170           %FINISH
#line 2170 "regression-compile-tmp/asems412.imp"
L_021f:;
                                                                //   2171           %IF LCON # 0 %AND COMM(OPER) # 0 %START
#line 2171 "regression-compile-tmp/asems412.imp"
if (((LCON) == (0))) goto L_0220;
#line 2171 "regression-compile-tmp/asems412.imp"
if ((((COMM-1)[OPER]) == (0))) goto L_0220;
                                                                //   2172              SWOP
#line 2172 "regression-compile-tmp/asems412.imp"
SWOP();
                                                                //   2173              PICKUP(LH) %IF LH_LOP # 0
#line 2173 "regression-compile-tmp/asems412.imp"
if (((LH->LOP) == (0))) goto L_0221;
#line 2173 "regression-compile-tmp/asems412.imp"
PICKUP(LH);
#line 2173 "regression-compile-tmp/asems412.imp"
L_0221:;
                                                                //   2174           %FINISH
#line 2174 "regression-compile-tmp/asems412.imp"
L_0220:;
                                                                //   2175           %IF RCON # 0 %AND (OPER = AND %OR OPER = RSH) %C
#line 2175 "regression-compile-tmp/asems412.imp"
if (((RCON) == (0))) goto L_0222;
#line 2175 "regression-compile-tmp/asems412.imp"
if (((OPER) == (8))) goto L_0209;
#line 2175 "regression-compile-tmp/asems412.imp"
if (((OPER) != (12))) goto L_0222;
#line 2175 "regression-compile-tmp/asems412.imp"
L_0209:;
#line 2175 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_0223;
#line 2175 "regression-compile-tmp/asems412.imp"
if (((LH->TYPE) != (3))) goto L_0222;
#line 2175 "regression-compile-tmp/asems412.imp"
L_0223:;
                                                                //   2176                  %AND (CONTROL&UNASS DIAG = 0 %OR LH_TYPE = SHORT) %START
                                                                //   2177              OPTIMISE(LH)
#line 2177 "regression-compile-tmp/asems412.imp"
OPTIMISE(LH);
                                                                //   2178              %IF LH_FORM # V IN R %AND (LH_TYPE = INTEGER %OR  %C
#line 2178 "regression-compile-tmp/asems412.imp"
if (((LH->FORM) == (1))) goto L_0224;
#line 2178 "regression-compile-tmp/asems412.imp"
if (((LH->TYPE) == (1))) goto L_0225;
#line 2178 "regression-compile-tmp/asems412.imp"
if (((LH->TYPE) != (3))) goto L_0224;
#line 2178 "regression-compile-tmp/asems412.imp"
L_0225:;
                                                                //   2179                                             LH_TYPE = SHORT) %START
                                                                //   2180                 ADDRESS(LH)
#line 2180 "regression-compile-tmp/asems412.imp"
ADDRESS(LH);
                                                                //   2181                 %IF OPER = AND %START
#line 2181 "regression-compile-tmp/asems412.imp"
if (((OPER) != (8))) goto L_0226;
                                                                //   2182                    S = LH_TYPE;  D = 0
#line 2182 "regression-compile-tmp/asems412.imp"
S = LH->TYPE;
#line 2182 "regression-compile-tmp/asems412.imp"
D = 0;
                                                                //   2183                    D = REGLEN//2 %IF LH_TYPE = INTEGER
#line 2183 "regression-compile-tmp/asems412.imp"
if (((LH->TYPE) != (1))) goto L_0227;
#line 2183 "regression-compile-tmp/asems412.imp"
D = (long)((long)((int)(4)) / (long)((int)(2)));
#line 2183 "regression-compile-tmp/asems412.imp"
L_0227:;
                                                                //   2184                    %IF RH_DISP = 255 %START
#line 2184 "regression-compile-tmp/asems412.imp"
if (((RH->DISP) != (255))) goto L_0228;
                                                                //   2185                       S = BYTE;  D = D + REGLEN//4
#line 2185 "regression-compile-tmp/asems412.imp"
S = 2;
#line 2185 "regression-compile-tmp/asems412.imp"
D = ((D) + (((long)((long)((int)(4)) / (long)((int)(4))))));
                                                                //   2186                    %ELSE %IF RH_DISP>>16 = 0
#line 2186 "regression-compile-tmp/asems412.imp"
goto L_0229;
#line 2186 "regression-compile-tmp/asems412.imp"
L_0228:;
#line 2186 "regression-compile-tmp/asems412.imp"
if ((((int)((((unsigned int)(RH->DISP)) >> (16)))) != (0))) goto L_022a;
                                                                //   2187                       RH_DISP = RH_DISP!X'FFFF0000' %IF RH_DISP>>15#0
#line 2187 "regression-compile-tmp/asems412.imp"
if ((((int)((((unsigned int)(RH->DISP)) >> (15)))) == (0))) goto L_022b;
#line 2187 "regression-compile-tmp/asems412.imp"
RH->DISP = ((RH->DISP) | ((-65536)));
#line 2187 "regression-compile-tmp/asems412.imp"
L_022b:;
                                                                //   2188                       LH_TYPE = UNSIGNED HALFWORD
#line 2188 "regression-compile-tmp/asems412.imp"
LH->TYPE = 255;
                                                                //   2189                       LH_DISP = LH_DISP+D
#line 2189 "regression-compile-tmp/asems412.imp"
LH->DISP = (((int)(LH->DISP)) + (D));
                                                                //   2190                       D = -1
#line 2190 "regression-compile-tmp/asems412.imp"
D = (-1);
                                                                //   2191                    %ELSE
#line 2191 "regression-compile-tmp/asems412.imp"
goto L_0229;
#line 2191 "regression-compile-tmp/asems412.imp"
L_022a:;
                                                                //   2192                       D = -1
#line 2192 "regression-compile-tmp/asems412.imp"
D = (-1);
                                                                //   2193                    %finish
#line 2193 "regression-compile-tmp/asems412.imp"
L_0229:;
                                                                //   2194                    %IF D >= 0 %START
#line 2194 "regression-compile-tmp/asems412.imp"
if (((D) < (0))) goto L_022c;
                                                                //   2195                       LH_TYPE = S;  LH_DISP = LH_DISP + D
#line 2195 "regression-compile-tmp/asems412.imp"
LH->TYPE = S;
#line 2195 "regression-compile-tmp/asems412.imp"
LH->DISP = (((int)(LH->DISP)) + (D));
                                                                //   2196                       DROP(RH);  %RETURN
#line 2196 "regression-compile-tmp/asems412.imp"
DROP(RH);
#line 2196 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2197                    %FINISH
#line 2197 "regression-compile-tmp/asems412.imp"
L_022c:;
                                                                //   2198                 %ELSE;                !...'OPER' MUST BE RSH
#line 2198 "regression-compile-tmp/asems412.imp"
goto L_022d;
#line 2198 "regression-compile-tmp/asems412.imp"
L_0226:;
                                                                //   2199                    %IF RH_DISP = (8*REGLEN)//2 %C
#line 2199 "regression-compile-tmp/asems412.imp"
if (((RH->DISP) != (((long)((long)(((((int)(8)) * (4)))) / (long)((int)(2))))))) goto L_022e;
#line 2199 "regression-compile-tmp/asems412.imp"
if (((LH->TYPE) == (3))) goto L_022e;
                                                                //   2200                       %AND LH_TYPE # SHORT %START
                                                                //   2201                       S = UNSIGNED HALFWORD
#line 2201 "regression-compile-tmp/asems412.imp"
S = 255;
                                                                //   2202                    %ELSE %IF RH_DISP = 8*(REGLEN-1)
#line 2202 "regression-compile-tmp/asems412.imp"
goto L_022f;
#line 2202 "regression-compile-tmp/asems412.imp"
L_022e:;
#line 2202 "regression-compile-tmp/asems412.imp"
if (((RH->DISP) != (((8) * ((int)(3)))))) goto L_0230;
                                                                //   2203                       S = BYTE
#line 2203 "regression-compile-tmp/asems412.imp"
S = 2;
                                                                //   2204                    %ELSE
#line 2204 "regression-compile-tmp/asems412.imp"
goto L_022f;
#line 2204 "regression-compile-tmp/asems412.imp"
L_0230:;
                                                                //   2205                       S = -1
#line 2205 "regression-compile-tmp/asems412.imp"
S = (-1);
                                                                //   2206                    %finish
#line 2206 "regression-compile-tmp/asems412.imp"
L_022f:;
                                                                //   2207                    %IF  S >= 0 %START
#line 2207 "regression-compile-tmp/asems412.imp"
if (((S) < (0))) goto L_0231;
                                                                //   2208                       LH_TYPE = S;  DROP(RH);  %RETURN
#line 2208 "regression-compile-tmp/asems412.imp"
LH->TYPE = S;
#line 2208 "regression-compile-tmp/asems412.imp"
DROP(RH);
#line 2208 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2209                    %FINISH
#line 2209 "regression-compile-tmp/asems412.imp"
L_0231:;
                                                                //   2210                 %FINISH
#line 2210 "regression-compile-tmp/asems412.imp"
L_022d:;
                                                                //   2211              %FINISH
#line 2211 "regression-compile-tmp/asems412.imp"
L_0224:;
                                                                //   2212           %FINISH
#line 2212 "regression-compile-tmp/asems412.imp"
L_0222:;
                                                                //   2213           PICKUP(RH) %IF RH_LOP # 0
#line 2213 "regression-compile-tmp/asems412.imp"
if (((RH->LOP) == (0))) goto L_0232;
#line 2213 "regression-compile-tmp/asems412.imp"
PICKUP(RH);
#line 2213 "regression-compile-tmp/asems412.imp"
L_0232:;
                                                                //   2214           %IF LCON!RCON # 0 %AND OPER = MUL %START
#line 2214 "regression-compile-tmp/asems412.imp"
if (((((LCON) | (RCON))) == (0))) goto L_0233;
#line 2214 "regression-compile-tmp/asems412.imp"
if (((OPER) != (6))) goto L_0233;
                                                                //   2215              SWOP %IF LCON # 0
#line 2215 "regression-compile-tmp/asems412.imp"
if (((LCON) == (0))) goto L_0234;
#line 2215 "regression-compile-tmp/asems412.imp"
SWOP();
#line 2215 "regression-compile-tmp/asems412.imp"
L_0234:;
                                                                //   2216              %IF FLOATING(LH) %THEN KEY = -1 %C
#line 2216 "regression-compile-tmp/asems412.imp"
if (!(FLOATING(LH))) goto L_0235;
#line 2216 "regression-compile-tmp/asems412.imp"
KEY = (-1);
#line 2216 "regression-compile-tmp/asems412.imp"
goto L_0236;
#line 2216 "regression-compile-tmp/asems412.imp"
L_0235:;
#line 2216 "regression-compile-tmp/asems412.imp"
KEY = POWER(RH->DISP);
#line 2216 "regression-compile-tmp/asems412.imp"
L_0236:;
                                                                //   2217                                %ELSE KEY = POWER(RH_DISP)
                                                                //   2218              %IF KEY >= 0 %START
#line 2218 "regression-compile-tmp/asems412.imp"
if (((KEY) < (0))) goto L_0237;
                                                                //   2219                 RH_DISP = KEY;  OPER = LSH
#line 2219 "regression-compile-tmp/asems412.imp"
RH->DISP = KEY;
#line 2219 "regression-compile-tmp/asems412.imp"
OPER = 11;
                                                                //   2220              %ELSE
#line 2220 "regression-compile-tmp/asems412.imp"
goto L_0238;
#line 2220 "regression-compile-tmp/asems412.imp"
L_0237:;
                                                                //   2221                 SWOP
#line 2221 "regression-compile-tmp/asems412.imp"
SWOP();
                                                                //   2222              %FINISH
#line 2222 "regression-compile-tmp/asems412.imp"
L_0238:;
                                                                //   2223           %FINISH
#line 2223 "regression-compile-tmp/asems412.imp"
L_0233:;
                                                                //   2224           DROP(RH) %AND %RETURN %IF RCON # 0 %AND RH_DISP = NULL OP(OPER)
#line 2224 "regression-compile-tmp/asems412.imp"
if (((RCON) == (0))) goto L_0239;
#line 2224 "regression-compile-tmp/asems412.imp"
if (((RH->DISP) != ((NULLOP-3)[OPER]))) goto L_0239;
#line 2224 "regression-compile-tmp/asems412.imp"
DROP(RH);
#line 2224 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2224 "regression-compile-tmp/asems412.imp"
L_0239:;
                                                                //   2225           LH_LOP = OPER;  LH_LINK == RH
#line 2225 "regression-compile-tmp/asems412.imp"
LH->LOP = OPER;
#line 2225 "regression-compile-tmp/asems412.imp"
LH->LINK = RH;
                                                                //   2226        %END
#line 2226 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block OPERATE at level 3
                                                                //   2227        %PREDICATE DIFFERENT(%RECORD(STACKFM)%NAME A, B)
#line 2227 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ DIFFERENT(  STACKFM /*name*/*A,  STACKFM /*name*/*B )
#line 2227 "regression-compile-tmp/asems412.imp"
{
                                                                //   2228           %WHILE %NOT B == NULL %CYCLE
#line 2228 "regression-compile-tmp/asems412.imp"
L_023a:;
#line 2228 "regression-compile-tmp/asems412.imp"
if (((B) == (NULL))) goto L_023b;
                                                                //   2229              %FALSE %IF SAME(A, B)
#line 2229 "regression-compile-tmp/asems412.imp"
if (!(SAME(A, B))) goto L_023d;
#line 2229 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2229 "regression-compile-tmp/asems412.imp"
L_023d:;
                                                                //   2230              B == B_LINK
#line 2230 "regression-compile-tmp/asems412.imp"
B = B->LINK;
                                                                //   2231           %REPEAT
#line 2231 "regression-compile-tmp/asems412.imp"
goto L_023a;
#line 2231 "regression-compile-tmp/asems412.imp"
L_023b:;
                                                                //   2232           %TRUE
#line 2232 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //   2233        %END
#line 2233 "regression-compile-tmp/asems412.imp"
} // End of block DIFFERENT at level 3
                                                                //   2234        %ROUTINE ASSIGN(%INTEGER ASSOP)
#line 2234 "regression-compile-tmp/asems412.imp"
void ASSIGN( int ASSOP )
#line 2234 "regression-compile-tmp/asems412.imp"
{
                                                                //   2235           %RECORD(STACKFM)%NAME LHS, RHS, W
#line 2235 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*LHS;
#line 2235 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*RHS;
#line 2235 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*W;
                                                                //   2236           %RECORD(STACKFM) TEMP, HOLD
#line 2236 "regression-compile-tmp/asems412.imp"
 STACKFM TEMP;
#line 2236 "regression-compile-tmp/asems412.imp"
 STACKFM HOLD;
                                                                //   2237           %INTEGER N, P, T, OP, VAL, SIZE
#line 2237 "regression-compile-tmp/asems412.imp"
int N;
#line 2237 "regression-compile-tmp/asems412.imp"
int P;
#line 2237 "regression-compile-tmp/asems412.imp"
int T;
#line 2237 "regression-compile-tmp/asems412.imp"
int OP;
#line 2237 "regression-compile-tmp/asems412.imp"
int VAL;
#line 2237 "regression-compile-tmp/asems412.imp"
int SIZE;
                                                                //   2238           ABORT(8) %IF STP < 2
#line 2238 "regression-compile-tmp/asems412.imp"
if (((STP) >= (2))) goto L_023e;
#line 2238 "regression-compile-tmp/asems412.imp"
ABORT(8);
#line 2238 "regression-compile-tmp/asems412.imp"
L_023e:;
                                                                //   2239           RHS == STACKED(STP)_V
#line 2239 "regression-compile-tmp/asems412.imp"
RHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2240           LHS == STACKED(STP-1)_V
#line 2240 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)((((int)(STP)) - (1)))) - (1))].V;
                                                                //   2241           %IF ASSOP < 0 %START
#line 2241 "regression-compile-tmp/asems412.imp"
if (((ASSOP) >= (0))) goto L_023f;
                                                                //   2242              %IF LHS_BASE = LINK %START;! INTRINSIC
#line 2242 "regression-compile-tmp/asems412.imp"
if (((LHS->BASE) != (12))) goto L_0240;
                                                                //   2243                 TEMP = LHS;  LHS = RHS;  RHS = TEMP
#line 2243 "regression-compile-tmp/asems412.imp"
TEMP = *LHS;
#line 2243 "regression-compile-tmp/asems412.imp"
*LHS = *RHS;
#line 2243 "regression-compile-tmp/asems412.imp"
*RHS = TEMP;
                                                                //   2244                 NEW DISP = 0
#line 2244 "regression-compile-tmp/asems412.imp"
NEWDISP = 0;
                                                                //   2245                 %RETURN
#line 2245 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2246              %FINISH
#line 2246 "regression-compile-tmp/asems412.imp"
L_0240:;
                                                                //   2247              LHS_EXTRA = LHS_EXTRA-1
#line 2247 "regression-compile-tmp/asems412.imp"
LHS->EXTRA = (((int)(LHS->EXTRA)) - (1));
                                                                //   2248              V == VAR(LHS_EXTRA)
#line 2248 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)(LHS->EXTRA)) - (1))];
                                                                //   2249              DISPLAY VAR(V) %IF CONTROL < 0
#line 2249 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0241;
#line 2249 "regression-compile-tmp/asems412.imp"
DISPLAYVAR(V);
#line 2249 "regression-compile-tmp/asems412.imp"
L_0241:;
                                                                //   2250              VSTACK(V);  LHS == STACKED(STP)_V
#line 2250 "regression-compile-tmp/asems412.imp"
VSTACK(V);
#line 2250 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2251              ASSOP = 0 %IF V_FORM > 1
#line 2251 "regression-compile-tmp/asems412.imp"
if (((V->FORM) <= (1))) goto L_0242;
#line 2251 "regression-compile-tmp/asems412.imp"
ASSOP = 0;
#line 2251 "regression-compile-tmp/asems412.imp"
L_0242:;
                                                                //   2252              NEW DISP = LHS_DISP+LHS_LENGTH
#line 2252 "regression-compile-tmp/asems412.imp"
NEWDISP = (((int)(LHS->DISP)) + (LHS->LENGTH));
                                                                //   2253              %IF LHS_FORM&16 # 0 %START;! PROCEDURE PARAMETER
#line 2253 "regression-compile-tmp/asems412.imp"
if (((((LHS->FORM) & (16))) == (0))) goto L_0243;
                                                                //   2254                 FORGET(LINK);  HAZARD(R0)
#line 2254 "regression-compile-tmp/asems412.imp"
FORGET(12);
#line 2254 "regression-compile-tmp/asems412.imp"
HAZARD(1);
                                                                //   2255                 NEW DISP = LHS_DISP+2*REGLEN
#line 2255 "regression-compile-tmp/asems412.imp"
NEWDISP = ((LHS->DISP) + ((int)((((int)(2)) * (4)))));
                                                                //   2256                 %IF RHS_DISP&X'4000' # 0 %START
#line 2256 "regression-compile-tmp/asems412.imp"
if (((((RHS->DISP) & (16384))) == (0))) goto L_0244;
                                                                //   2257                    RX(ST, WSP, WSP, LHS_DISP);! ENVIRONMENT REF
#line 2257 "regression-compile-tmp/asems412.imp"
RX(20480, 43, 43, LHS->DISP);
                                                                //   2258                    DEFINE REFERENCE(RHS_DISP&X'FFF', R REF)
#line 2258 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(((RHS->DISP) & (4095)), 4);
                                                                //   2259                    RX(LA, LINK, CODE, 0);       !  ADDRESS OF ROUTINE
#line 2259 "regression-compile-tmp/asems412.imp"
RX(58880, 12, 44, 0);
                                                                //   2260                    RX(ST, LINK, WSP, LHS_DISP+REGLEN);  ! ENVIRONMENT
#line 2260 "regression-compile-tmp/asems412.imp"
RX(20480, 12, 43, (((int)(LHS->DISP)) + (4)));
                                                                //   2261                 %ELSE
#line 2261 "regression-compile-tmp/asems412.imp"
goto L_0245;
#line 2261 "regression-compile-tmp/asems412.imp"
L_0244:;
                                                                //   2262                    RX(LW, LINK, RHS_BASE, RHS_DISP)
#line 2262 "regression-compile-tmp/asems412.imp"
RX(22528, 12, RHS->BASE, RHS->DISP);
                                                                //   2263                    RX(ST, LINK, WSP, LHS_DISP)
#line 2263 "regression-compile-tmp/asems412.imp"
RX(20480, 12, 43, LHS->DISP);
                                                                //   2264                    RX(LW, LINK, RHS_BASE, RHS_BASE+REGLEN)
#line 2264 "regression-compile-tmp/asems412.imp"
RX(22528, 12, RHS->BASE, (((int)(RHS->BASE)) + (4)));
                                                                //   2265                    RX(ST, LINK, WSP, LHS_DISP+REGLEN)
#line 2265 "regression-compile-tmp/asems412.imp"
RX(20480, 12, 43, (((int)(LHS->DISP)) + (4)));
                                                                //   2266                 %FINISH
#line 2266 "regression-compile-tmp/asems412.imp"
L_0245:;
                                                                //   2267                 DROP(RHS);  DROP(LHS)
#line 2267 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2267 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2268                 STP = STP-2
#line 2268 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   2269                 %RETURN
#line 2269 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2270              %FINISH
#line 2270 "regression-compile-tmp/asems412.imp"
L_0243:;
                                                                //   2271           %FINISH
#line 2271 "regression-compile-tmp/asems412.imp"
L_023f:;
                                                                //   2272           %IF LHS_DV < 0 %AND CONTROL&ARRAYDIAG # 0 %START;! ARRAYNAME
#line 2272 "regression-compile-tmp/asems412.imp"
if (((LHS->DV) >= (0))) goto L_0246;
#line 2272 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (4))) == (0))) goto L_0246;
                                                                //   2273              LHS_DV = 0
#line 2273 "regression-compile-tmp/asems412.imp"
LHS->DV = 0;
                                                                //   2274              HOLD = LHS;  TEMP = RHS
#line 2274 "regression-compile-tmp/asems412.imp"
HOLD = *LHS;
#line 2274 "regression-compile-tmp/asems412.imp"
TEMP = *RHS;
                                                                //   2275              HOLD_DISP = HOLD_DISP+4
#line 2275 "regression-compile-tmp/asems412.imp"
HOLD.DISP = (((int)(HOLD.DISP)) + (4));
                                                                //   2276              %IF TEMP_DV < 0 %START
#line 2276 "regression-compile-tmp/asems412.imp"
if (((TEMP.DV) >= (0))) goto L_0247;
                                                                //   2277                 TEMP_DISP = TEMP_DISP+4;  TEMP_FORM = A IN S
#line 2277 "regression-compile-tmp/asems412.imp"
TEMP.DISP = (((int)(TEMP.DISP)) + (4));
#line 2277 "regression-compile-tmp/asems412.imp"
TEMP.FORM = 2;
                                                                //   2278              %ELSE
#line 2278 "regression-compile-tmp/asems412.imp"
goto L_0248;
#line 2278 "regression-compile-tmp/asems412.imp"
L_0247:;
                                                                //   2279                 TEMP_BASE = GLA;  TEMP_DISP = TEMP_DV
#line 2279 "regression-compile-tmp/asems412.imp"
TEMP.BASE = 42;
#line 2279 "regression-compile-tmp/asems412.imp"
TEMP.DISP = TEMP.DV;
                                                                //   2280                 TEMP_FORM = V IN S
#line 2280 "regression-compile-tmp/asems412.imp"
TEMP.FORM = 3;
                                                                //   2281              %FINISH
#line 2281 "regression-compile-tmp/asems412.imp"
L_0248:;
                                                                //   2282              SSTACK(HOLD);  SSTACK(TEMP)
#line 2282 "regression-compile-tmp/asems412.imp"
SSTACK(&HOLD);
#line 2282 "regression-compile-tmp/asems412.imp"
SSTACK(&TEMP);
                                                                //   2283              ASSIGN(0)
#line 2283 "regression-compile-tmp/asems412.imp"
ASSIGN(0);
                                                                //   2284           %FINISH
#line 2284 "regression-compile-tmp/asems412.imp"
L_0246:;
                                                                //   2285           STP = STP-2
#line 2285 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   2286           %IF LHS_TYPE = 10 %START;! NAME PARAMETER
#line 2286 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (10))) goto L_0249;
                                                                //   2287              ABORT(15) %UNLESS ASSOP = 0
#line 2287 "regression-compile-tmp/asems412.imp"
if (((ASSOP) == (0))) goto L_024a;
#line 2287 "regression-compile-tmp/asems412.imp"
ABORT(15);
#line 2287 "regression-compile-tmp/asems412.imp"
L_024a:;
                                                                //   2288              T = RHS_TYPE<<13!(RHS_LENGTH&X'1FFF')
#line 2288 "regression-compile-tmp/asems412.imp"
T = ((((RHS->TYPE) << (13))) | (((RHS->LENGTH) & (8191))));
                                                                //   2289              AMAP(RHS);  LRD(RHS, ANY)
#line 2289 "regression-compile-tmp/asems412.imp"
AMAP(RHS);
#line 2289 "regression-compile-tmp/asems412.imp"
LRD(RHS, 45);
                                                                //   2290              RX(ST, RHS_BASE, LHS_BASE, LHS_DISP)
#line 2290 "regression-compile-tmp/asems412.imp"
RX(20480, RHS->BASE, LHS->BASE, LHS->DISP);
                                                                //   2291              RI2(LHI, RHS_BASE, 0, T)
#line 2291 "regression-compile-tmp/asems412.imp"
RI2(51200, RHS->BASE, 0, T);
                                                                //   2292              CLAIM(LHS_BASE); RX(ST, RHS_BASE, LHS_BASE, LHS_DISP+REGLEN)
#line 2292 "regression-compile-tmp/asems412.imp"
CLAIM(LHS->BASE);
#line 2292 "regression-compile-tmp/asems412.imp"
RX(20480, RHS->BASE, LHS->BASE, (((int)(LHS->DISP)) + (4)));
                                                                //   2293              FORGET(RHS_BASE)
#line 2293 "regression-compile-tmp/asems412.imp"
FORGET(RHS->BASE);
                                                                //   2294              DROP(LHS)
#line 2294 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2295              %RETURN
#line 2295 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2296           %FINISH
#line 2296 "regression-compile-tmp/asems412.imp"
L_0249:;
                                                                //   2297           %IF ASSOP = 0 %START
#line 2297 "regression-compile-tmp/asems412.imp"
if (((ASSOP) != (0))) goto L_024b;
                                                                //   2298              DUMP STRING(0) %IF RHS_TYPE = STRING %AND RHS_FORM = CONSTANT
#line 2298 "regression-compile-tmp/asems412.imp"
if (((RHS->TYPE) != (4))) goto L_024c;
#line 2298 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) != (0))) goto L_024c;
#line 2298 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
#line 2298 "regression-compile-tmp/asems412.imp"
L_024c:;
                                                                //   2299              AMAP(LHS);  AMAP(RHS)
#line 2299 "regression-compile-tmp/asems412.imp"
AMAP(LHS);
#line 2299 "regression-compile-tmp/asems412.imp"
AMAP(RHS);
                                                                //   2300           %FINISH
#line 2300 "regression-compile-tmp/asems412.imp"
L_024b:;
                                                                //   2301           %IF LHS_TYPE = RECORD %START
#line 2301 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (5))) goto L_024d;
                                                                //   2302              AMAP(LHS);  LOAD(LHS, R2)
#line 2302 "regression-compile-tmp/asems412.imp"
AMAP(LHS);
#line 2302 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 3);
                                                                //   2303              N = LHS_LENGTH>>1
#line 2303 "regression-compile-tmp/asems412.imp"
N = (int)((((unsigned int)(LHS->LENGTH)) >> (1)));
                                                                //   2304              %IF RHS_TYPE = RECORD %START
#line 2304 "regression-compile-tmp/asems412.imp"
if (((RHS->TYPE) != (5))) goto L_024e;
                                                                //   2305                 AMAP(RHS);  LOAD(RHS, R1);  RELEASE(R1)
#line 2305 "regression-compile-tmp/asems412.imp"
AMAP(RHS);
#line 2305 "regression-compile-tmp/asems412.imp"
LOAD(RHS, 2);
#line 2305 "regression-compile-tmp/asems412.imp"
RELEASE(2);
                                                                //   2306                 P = R COPY
#line 2306 "regression-compile-tmp/asems412.imp"
P = 2306;
                                                                //   2307              %ELSE
#line 2307 "regression-compile-tmp/asems412.imp"
goto L_024f;
#line 2307 "regression-compile-tmp/asems412.imp"
L_024e:;
                                                                //   2308                 P = R CLEAR
#line 2308 "regression-compile-tmp/asems412.imp"
P = 2307;
                                                                //   2309              %FINISH
#line 2309 "regression-compile-tmp/asems412.imp"
L_024f:;
                                                                //   2310              DROP(RHS);  DROP(LHS)
#line 2310 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2310 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2311              CSTACK(N);  STP = STP-1;  LRD(STACKED(STP+1)_V, R0)
#line 2311 "regression-compile-tmp/asems412.imp"
CSTACK(N);
#line 2311 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
#line 2311 "regression-compile-tmp/asems412.imp"
LRD(STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V, 1);
                                                                //   2312              RELEASE(R2)
#line 2312 "regression-compile-tmp/asems412.imp"
RELEASE(3);
                                                                //   2313              PERM(P)
#line 2313 "regression-compile-tmp/asems412.imp"
PERM(P);
                                                                //   2314              %RETURN
#line 2314 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2315           %FINISH
#line 2315 "regression-compile-tmp/asems412.imp"
L_024d:;
                                                                //   2316           %IF LHS_TYPE = 15 %START;        ! STRING PARAM (FINAL)
#line 2316 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (15))) goto L_0250;
                                                                //   2317              %IF RHS == ACTIVE STRING %START
#line 2317 "regression-compile-tmp/asems412.imp"
if (((RHS) != (ACTIVESTRING))) goto L_0251;
                                                                //   2318                 HAZARD(R1)
#line 2318 "regression-compile-tmp/asems412.imp"
HAZARD(2);
                                                                //   2319                 RHS_BASE = 17;  REMEMBER(R1, RHS);  ! DISCRIMINATE
#line 2319 "regression-compile-tmp/asems412.imp"
RHS->BASE = 17;
#line 2319 "regression-compile-tmp/asems412.imp"
REMEMBER(2, RHS);
                                                                //   2320                 ACTIVE STRING == NULL
#line 2320 "regression-compile-tmp/asems412.imp"
ACTIVESTRING = NULL;
                                                                //   2321                 T = NEW TAG;  DEFINE REFERENCE(T, R REF)
#line 2321 "regression-compile-tmp/asems412.imp"
T = NEWTAG();
#line 2321 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(T, 4);
                                                                //   2322                 RX(BAL, R1, CODE, T)
#line 2322 "regression-compile-tmp/asems412.imp"
RX(16640, 2, 44, T);
                                                                //   2323                 N = 0
#line 2323 "regression-compile-tmp/asems412.imp"
N = 0;
                                                                //   2324                 %CYCLE
#line 2324 "regression-compile-tmp/asems412.imp"
L_0252:;
                                                                //   2325                    DUMP(CURRENTSTRING(N)<<8+CURRENTSTRING(N+1))
#line 2325 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((CURRENTSTRING[N]) << (8)))) + (CURRENTSTRING[(((int)(N)) + (1))])));
                                                                //   2326                    N = N+2
#line 2326 "regression-compile-tmp/asems412.imp"
N = (((int)(N)) + (2));
                                                                //   2327                    %EXIT %IF N > CSLEN
#line 2327 "regression-compile-tmp/asems412.imp"
if (((N) <= (*CSLEN))) goto L_0255;
#line 2327 "regression-compile-tmp/asems412.imp"
goto L_0253;
#line 2327 "regression-compile-tmp/asems412.imp"
L_0255:;
                                                                //   2328                 %REPEAT
#line 2328 "regression-compile-tmp/asems412.imp"
goto L_0252;
#line 2328 "regression-compile-tmp/asems412.imp"
L_0253:;
                                                                //   2329                 CSLEN = 0
#line 2329 "regression-compile-tmp/asems412.imp"
*CSLEN = 0;
                                                                //   2330                 DEFINE TAG(T)
#line 2330 "regression-compile-tmp/asems412.imp"
DEFINETAG(T);
                                                                //   2331                 RHS_FORM = V IN S;  RHS_BASE = R1;  RHS_DISP = 0
#line 2331 "regression-compile-tmp/asems412.imp"
RHS->FORM = 3;
#line 2331 "regression-compile-tmp/asems412.imp"
RHS->BASE = 2;
#line 2331 "regression-compile-tmp/asems412.imp"
RHS->DISP = 0;
                                                                //   2332                 CLAIM(R1)
#line 2332 "regression-compile-tmp/asems412.imp"
CLAIM(2);
                                                                //   2333              %FINISH
#line 2333 "regression-compile-tmp/asems412.imp"
L_0251:;
                                                                //   2334              DUMP STRING(0)
#line 2334 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
                                                                //   2335              WDISP = 44 %IF WDISP = 0
#line 2335 "regression-compile-tmp/asems412.imp"
if (((WDISP) != (0))) goto L_0256;
#line 2335 "regression-compile-tmp/asems412.imp"
WDISP = 44;
#line 2335 "regression-compile-tmp/asems412.imp"
L_0256:;
                                                                //   2336              LRD(RHS, R1)
#line 2336 "regression-compile-tmp/asems412.imp"
LRD(RHS, 2);
                                                                //   2337              DROP(LHS)
#line 2337 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2338              %RETURN
#line 2338 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2339           %FINISH
#line 2339 "regression-compile-tmp/asems412.imp"
L_0250:;
                                                                //   2340           %IF LHS_TYPE = STRING %START
#line 2340 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (4))) goto L_0257;
                                                                //   2341              SIZE = LHS_LENGTH-1
#line 2341 "regression-compile-tmp/asems412.imp"
SIZE = (((int)(LHS->LENGTH)) - (1));
                                                                //   2342              SIZE = 0 %IF SIZE < 0 %OR SIZE = 255 %OR CONTROL&ASSDIAG=0
#line 2342 "regression-compile-tmp/asems412.imp"
if (((SIZE) < (0))) goto L_0258;
#line 2342 "regression-compile-tmp/asems412.imp"
if (((SIZE) == (255))) goto L_0258;
#line 2342 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (16))) != (0))) goto L_0259;
#line 2342 "regression-compile-tmp/asems412.imp"
L_0258:;
#line 2342 "regression-compile-tmp/asems412.imp"
SIZE = 0;
#line 2342 "regression-compile-tmp/asems412.imp"
L_0259:;
                                                                //   2343              DUMP STRING(-1)
#line 2343 "regression-compile-tmp/asems412.imp"
DUMPSTRING((-1));
                                                                //   2344              %IF RHS_FORM = CONSTANT %START;! NULL STRING!!
#line 2344 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) != (0))) goto L_025a;
                                                                //   2345                 RHS_TYPE = INTEGER;  LHS_TYPE = BYTE
#line 2345 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 1;
#line 2345 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 2;
                                                                //   2346              %ELSE
#line 2346 "regression-compile-tmp/asems412.imp"
goto L_025b;
#line 2346 "regression-compile-tmp/asems412.imp"
L_025a:;
                                                                //   2347                 WDISP = WDISP-256 %IF RHS_TYPE = 0
#line 2347 "regression-compile-tmp/asems412.imp"
if (((RHS->TYPE) != (0))) goto L_025c;
#line 2347 "regression-compile-tmp/asems412.imp"
WDISP = (((int)(WDISP)) - (256));
#line 2347 "regression-compile-tmp/asems412.imp"
L_025c:;
                                                                //   2348                 %IF RHS_LOP # 0 %AND SIZE = 0 %START
#line 2348 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) == (0))) goto L_025d;
#line 2348 "regression-compile-tmp/asems412.imp"
if (((SIZE) != (0))) goto L_025d;
                                                                //   2349                    W == RHS_LINK;  RHS_LOP = 0
#line 2349 "regression-compile-tmp/asems412.imp"
W = RHS->LINK;
#line 2349 "regression-compile-tmp/asems412.imp"
RHS->LOP = 0;
                                                                //   2350                    %IF SAME(LHS, RHS) %AND DIFFERENT(LHS, W) %START;! S = S.T
#line 2350 "regression-compile-tmp/asems412.imp"
if (!(SAME(LHS, RHS))) goto L_025e;
#line 2350 "regression-compile-tmp/asems412.imp"
if (!(DIFFERENT(LHS, W))) goto L_025e;
                                                                //   2351                       RELEASE(LHS_BASE)
#line 2351 "regression-compile-tmp/asems412.imp"
RELEASE(LHS->BASE);
                                                                //   2352                       LOAD(LHS, R2);  RELEASE(R2)
#line 2352 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 3);
#line 2352 "regression-compile-tmp/asems412.imp"
RELEASE(3);
                                                                //   2353                       DROP(RHS);  JOIN(W)
#line 2353 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2353 "regression-compile-tmp/asems412.imp"
JOIN(W);
                                                                //   2354                       DROP(LHS)
#line 2354 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2355                       %RETURN
#line 2355 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2356                    %FINISH
#line 2356 "regression-compile-tmp/asems412.imp"
L_025e:;
                                                                //   2357                    %IF DIFFERENT(LHS, W) %START;  ! S = P.Q
#line 2357 "regression-compile-tmp/asems412.imp"
if (!(DIFFERENT(LHS, W))) goto L_025f;
                                                                //   2358                       LRD(RHS, R1);  LRD(LHS, R2);  PERM(CONC1)
#line 2358 "regression-compile-tmp/asems412.imp"
LRD(RHS, 2);
#line 2358 "regression-compile-tmp/asems412.imp"
LRD(LHS, 3);
#line 2358 "regression-compile-tmp/asems412.imp"
PERM(2315);
                                                                //   2359                       JOIN(W)
#line 2359 "regression-compile-tmp/asems412.imp"
JOIN(W);
                                                                //   2360                       %RETURN
#line 2360 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2361                    %FINISH
#line 2361 "regression-compile-tmp/asems412.imp"
L_025f:;
                                                                //   2362                    RHS_LOP = CONC
#line 2362 "regression-compile-tmp/asems412.imp"
RHS->LOP = 14;
                                                                //   2363                 %FINISH
#line 2363 "regression-compile-tmp/asems412.imp"
L_025d:;
                                                                //   2364                 WDISP = 44 %IF WDISP = 0 %AND LHS_BASE = WSP
#line 2364 "regression-compile-tmp/asems412.imp"
if (((WDISP) != (0))) goto L_0260;
#line 2364 "regression-compile-tmp/asems412.imp"
if (((LHS->BASE) != (43))) goto L_0260;
#line 2364 "regression-compile-tmp/asems412.imp"
WDISP = 44;
#line 2364 "regression-compile-tmp/asems412.imp"
L_0260:;
                                                                //   2365                 LRD(RHS, R1);  LRD(LHS, R2)
#line 2365 "regression-compile-tmp/asems412.imp"
LRD(RHS, 2);
#line 2365 "regression-compile-tmp/asems412.imp"
LRD(LHS, 3);
                                                                //   2366                 %IF SIZE # 0 %START
#line 2366 "regression-compile-tmp/asems412.imp"
if (((SIZE) == (0))) goto L_0261;
                                                                //   2367                    CSTACK(SIZE);  STP = STP-1;  LRD(STACKED(STP+1)_V, R0)
#line 2367 "regression-compile-tmp/asems412.imp"
CSTACK(SIZE);
#line 2367 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
#line 2367 "regression-compile-tmp/asems412.imp"
LRD(STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V, 1);
                                                                //   2368                    PERM(STRING ASS)
#line 2368 "regression-compile-tmp/asems412.imp"
PERM(21);
                                                                //   2369                 %FINISH
#line 2369 "regression-compile-tmp/asems412.imp"
L_0261:;
                                                                //   2370                 PERM(SMOVE)
#line 2370 "regression-compile-tmp/asems412.imp"
PERM(2315);
                                                                //   2371                 %RETURN
#line 2371 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2372              %FINISH
#line 2372 "regression-compile-tmp/asems412.imp"
L_025b:;
                                                                //   2373           %FINISH
#line 2373 "regression-compile-tmp/asems412.imp"
L_0257:;
                                                                //   2374           ADDRESS(LHS)
#line 2374 "regression-compile-tmp/asems412.imp"
ADDRESS(LHS);
                                                                //   2375           %IF (LHS_TYPE = INTEGER %AND CONTROL&UNASS DIAG = 0) %C
#line 2375 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (1))) goto L_0262;
#line 2375 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_023c;
#line 2375 "regression-compile-tmp/asems412.imp"
L_0262:;
#line 2375 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (3))) goto L_0263;
#line 2375 "regression-compile-tmp/asems412.imp"
L_023c:;
                                                                //   2376           %OR LHS_TYPE = SHORT %START
                                                                //   2377              %IF RHS_LOP = ADD %START
#line 2377 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) != (3))) goto L_0264;
                                                                //   2378                 T = ADD;  T = SADD %IF SAME(LHS, RHS)
#line 2378 "regression-compile-tmp/asems412.imp"
T = 3;
#line 2378 "regression-compile-tmp/asems412.imp"
if (!(SAME(LHS, RHS))) goto L_0265;
#line 2378 "regression-compile-tmp/asems412.imp"
T = 15;
#line 2378 "regression-compile-tmp/asems412.imp"
L_0265:;
                                                                //   2379                 RHS_LOP = 0;  OPTIMISE(RHS);  RHS_LOP = T
#line 2379 "regression-compile-tmp/asems412.imp"
RHS->LOP = 0;
#line 2379 "regression-compile-tmp/asems412.imp"
OPTIMISE(RHS);
#line 2379 "regression-compile-tmp/asems412.imp"
RHS->LOP = T;
                                                                //   2380                 %IF SAME(LHS, RHS) %START
#line 2380 "regression-compile-tmp/asems412.imp"
if (!(SAME(LHS, RHS))) goto L_0266;
                                                                //   2381                    W == RHS_LINK
#line 2381 "regression-compile-tmp/asems412.imp"
W = RHS->LINK;
                                                                //   2382                    LOAD(W, ANY)
#line 2382 "regression-compile-tmp/asems412.imp"
LOAD(W, 45);
                                                                //   2383                    RELEASE(LHS_BASE)
#line 2383 "regression-compile-tmp/asems412.imp"
RELEASE(LHS->BASE);
                                                                //   2384                    CCV = LHS;  CCREG = -2
#line 2384 "regression-compile-tmp/asems412.imp"
CCV = *LHS;
#line 2384 "regression-compile-tmp/asems412.imp"
CCREG = (-2);
                                                                //   2385                    %IF LHS_TYPE = SHORT %THEN P = AHM %C
#line 2385 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (3))) goto L_0267;
#line 2385 "regression-compile-tmp/asems412.imp"
P = 24832;
#line 2385 "regression-compile-tmp/asems412.imp"
goto L_0268;
#line 2385 "regression-compile-tmp/asems412.imp"
L_0267:;
#line 2385 "regression-compile-tmp/asems412.imp"
P = 20736;
#line 2385 "regression-compile-tmp/asems412.imp"
L_0268:;
                                                                //   2386                                         %ELSE P = AM
                                                                //   2387                    RX(P, W_BASE, LHS_BASE, LHS_DISP)
#line 2387 "regression-compile-tmp/asems412.imp"
RX(P, W->BASE, LHS->BASE, LHS->DISP);
                                                                //   2388                    PERM(ASSTH) %IF CONTROL&ASSDIAG # 0 %C
#line 2388 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (16))) == (0))) goto L_0269;
#line 2388 "regression-compile-tmp/asems412.imp"
if (((P) != (24832))) goto L_0269;
#line 2388 "regression-compile-tmp/asems412.imp"
PERM(22);
#line 2388 "regression-compile-tmp/asems412.imp"
L_0269:;
                                                                //   2389                                     %AND P = AHM
                                                                //   2390                    FORGET DEST(LHS)
#line 2390 "regression-compile-tmp/asems412.imp"
FORGETDEST(LHS);
                                                                //   2391                    RELEASE(W_BASE)
#line 2391 "regression-compile-tmp/asems412.imp"
RELEASE(W->BASE);
                                                                //   2392                    DROP(RHS);  DROP(W);  DROP(LHS)
#line 2392 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2392 "regression-compile-tmp/asems412.imp"
DROP(W);
#line 2392 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2393                    CCCA = CA
#line 2393 "regression-compile-tmp/asems412.imp"
CCCA = CA;
                                                                //   2394                    %RETURN
#line 2394 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2395                 %FINISH
#line 2395 "regression-compile-tmp/asems412.imp"
L_0266:;
                                                                //   2396              %FINISH
#line 2396 "regression-compile-tmp/asems412.imp"
L_0264:;
                                                                //   2397           %FINISH
#line 2397 "regression-compile-tmp/asems412.imp"
L_0263:;
                                                                //   2398           %IF LHS_BASE = PARAM %START
#line 2398 "regression-compile-tmp/asems412.imp"
if (((LHS->BASE) != (48))) goto L_026a;
                                                                //   2399              NEW DISP = 0
#line 2399 "regression-compile-tmp/asems412.imp"
NEWDISP = 0;
                                                                //   2400              P = LHS_DISP
#line 2400 "regression-compile-tmp/asems412.imp"
P = LHS->DISP;
                                                                //   2401              LOAD(RHS, P) %IF RHS_LOP # 0;  DROP(LHS)
#line 2401 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) == (0))) goto L_026b;
#line 2401 "regression-compile-tmp/asems412.imp"
LOAD(RHS, P);
#line 2401 "regression-compile-tmp/asems412.imp"
L_026b:;
#line 2401 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2402              LHS == STACKED(STP)_V
#line 2402 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2403              RHS_LINK == LHS_LINK;  RHS_LOP = LHS_LOP
#line 2403 "regression-compile-tmp/asems412.imp"
RHS->LINK = LHS->LINK;
#line 2403 "regression-compile-tmp/asems412.imp"
RHS->LOP = LHS->LOP;
                                                                //   2404              LHS_LINK == RHS;  LHS_LOP = P
#line 2404 "regression-compile-tmp/asems412.imp"
LHS->LINK = RHS;
#line 2404 "regression-compile-tmp/asems412.imp"
LHS->LOP = P;
                                                                //   2405           %ELSE
#line 2405 "regression-compile-tmp/asems412.imp"
goto L_026c;
#line 2405 "regression-compile-tmp/asems412.imp"
L_026a:;
                                                                //   2406              P = ANY;  VAL = 0
#line 2406 "regression-compile-tmp/asems412.imp"
P = 45;
#line 2406 "regression-compile-tmp/asems412.imp"
VAL = 0;
                                                                //   2407              %IF LHS_TYPE = INTEGER %START
#line 2407 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (1))) goto L_026d;
                                                                //   2408                 OP = ST
#line 2408 "regression-compile-tmp/asems412.imp"
OP = 20480;
                                                                //   2409              %ELSE %IF LHS_TYPE = SHORT
#line 2409 "regression-compile-tmp/asems412.imp"
goto L_026e;
#line 2409 "regression-compile-tmp/asems412.imp"
L_026d:;
#line 2409 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (3))) goto L_026f;
                                                                //   2410                 OP = STH;  VAL = X'FFFF';  T = ASSTH
#line 2410 "regression-compile-tmp/asems412.imp"
OP = 16384;
#line 2410 "regression-compile-tmp/asems412.imp"
VAL = 65535;
#line 2410 "regression-compile-tmp/asems412.imp"
T = 22;
                                                                //   2411              %ELSE %IF LHS_TYPE = BYTE
#line 2411 "regression-compile-tmp/asems412.imp"
goto L_026e;
#line 2411 "regression-compile-tmp/asems412.imp"
L_026f:;
#line 2411 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (2))) goto L_0270;
                                                                //   2412                 OP = STB;  VAL = 255;      T = ASSTB
#line 2412 "regression-compile-tmp/asems412.imp"
OP = 53760;
#line 2412 "regression-compile-tmp/asems412.imp"
VAL = 255;
#line 2412 "regression-compile-tmp/asems412.imp"
T = 23;
                                                                //   2413              %ELSE
#line 2413 "regression-compile-tmp/asems412.imp"
goto L_026e;
#line 2413 "regression-compile-tmp/asems412.imp"
L_0270:;
                                                                //   2414                 OP = STE;  P = ANYF
#line 2414 "regression-compile-tmp/asems412.imp"
OP = 24576;
#line 2414 "regression-compile-tmp/asems412.imp"
P = 47;
                                                                //   2415              %FINISH
#line 2415 "regression-compile-tmp/asems412.imp"
L_026e:;
                                                                //   2416              %IF VAL # 0 %START;          ! POSSIBLE TEST REQUIRED
#line 2416 "regression-compile-tmp/asems412.imp"
if (((VAL) == (0))) goto L_0271;
                                                                //   2417                 %IF RHS_LOP = 0 %START
#line 2417 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) != (0))) goto L_0272;
                                                                //   2418                    VAL = 0 %IF (VAL = X'FFFF' %AND RHS_TYPE # INTEGER) %C
#line 2418 "regression-compile-tmp/asems412.imp"
if (((VAL) != (65535))) goto L_0273;
#line 2418 "regression-compile-tmp/asems412.imp"
if (((RHS->TYPE) != (1))) goto L_001d;
#line 2418 "regression-compile-tmp/asems412.imp"
L_0273:;
#line 2418 "regression-compile-tmp/asems412.imp"
if (((RHS->TYPE) != (2))) goto L_0274;
#line 2418 "regression-compile-tmp/asems412.imp"
L_001d:;
#line 2418 "regression-compile-tmp/asems412.imp"
VAL = 0;
#line 2418 "regression-compile-tmp/asems412.imp"
L_0274:;
                                                                //   2419                          %OR RHS_TYPE = BYTE
                                                                //   2420                 %ELSE %IF RHS_LOP = AND
#line 2420 "regression-compile-tmp/asems412.imp"
goto L_0275;
#line 2420 "regression-compile-tmp/asems412.imp"
L_0272:;
#line 2420 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) != (8))) goto L_0276;
                                                                //   2421                    %IF RHS_LINK_FORM=CONSTANT %AND RHS_LINK_DISP=VAL %START
#line 2421 "regression-compile-tmp/asems412.imp"
if (((RHS->LINK->FORM) != (0))) goto L_0277;
#line 2421 "regression-compile-tmp/asems412.imp"
if (((RHS->LINK->DISP) != (VAL))) goto L_0277;
                                                                //   2422                       DROP(RHS_LINK)
#line 2422 "regression-compile-tmp/asems412.imp"
DROP(RHS->LINK);
                                                                //   2423                       RHS_LOP = 0;  VAL = 0;   ! DISPENSE WITH TEST
#line 2423 "regression-compile-tmp/asems412.imp"
RHS->LOP = 0;
#line 2423 "regression-compile-tmp/asems412.imp"
VAL = 0;
                                                                //   2424                    %FINISH
#line 2424 "regression-compile-tmp/asems412.imp"
L_0277:;
                                                                //   2425                 %FINISH
#line 2425 "regression-compile-tmp/asems412.imp"
L_0276:;
#line 2425 "regression-compile-tmp/asems412.imp"
L_0275:;
                                                                //   2426              %FINISH
#line 2426 "regression-compile-tmp/asems412.imp"
L_0271:;
                                                                //   2427              %IF CONTROL&ASSDIAG # 0 %AND RHS_FORM = CONSTANT %START
#line 2427 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (16))) == (0))) goto L_0278;
#line 2427 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) != (0))) goto L_0278;
                                                                //   2428                 VAL = 0 %IF VAL = 255 %AND RHS_DISP>>8 = 0
#line 2428 "regression-compile-tmp/asems412.imp"
if (((VAL) != (255))) goto L_0279;
#line 2428 "regression-compile-tmp/asems412.imp"
if ((((int)((((unsigned int)(RHS->DISP)) >> (8)))) != (0))) goto L_0279;
#line 2428 "regression-compile-tmp/asems412.imp"
VAL = 0;
#line 2428 "regression-compile-tmp/asems412.imp"
L_0279:;
                                                                //   2429                 VAL = 0 %IF VAL = X'FFFF' %C
#line 2429 "regression-compile-tmp/asems412.imp"
if (((VAL) != (65535))) goto L_027a;
#line 2429 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (RHS->DISP))) || (((RHS->DISP) > (65536)))) goto L_027a;
#line 2429 "regression-compile-tmp/asems412.imp"
VAL = 0;
#line 2429 "regression-compile-tmp/asems412.imp"
L_027a:;
                                                                //   2430                                %AND X'FFFF8000'<=RHS_DISP<=X'10000'
                                                                //   2431              %FINISH
#line 2431 "regression-compile-tmp/asems412.imp"
L_0278:;
                                                                //   2432              LOAD(RHS, P)
#line 2432 "regression-compile-tmp/asems412.imp"
LOAD(RHS, P);
                                                                //   2433              FORGET DEST(LHS)
#line 2433 "regression-compile-tmp/asems412.imp"
FORGETDEST(LHS);
                                                                //   2434              RX(OP, RHS_BASE, LHS_BASE, LHS_DISP);  CCCA = CCCA+4
#line 2434 "regression-compile-tmp/asems412.imp"
RX(OP, RHS->BASE, LHS->BASE, LHS->DISP);
#line 2434 "regression-compile-tmp/asems412.imp"
CCCA = (((int)(CCCA)) + (4));
                                                                //   2435              REMEMBER(RHS_BASE+STORE, LHS);            !MOVED ONE LINE DOWN??
#line 2435 "regression-compile-tmp/asems412.imp"
REMEMBER((((int)(RHS->BASE)) + (20)), LHS);
                                                                //   2436              %IF VAL = 0 %OR CONTROL&ASSDIAG = 0 %START;! NO STORE TEST
#line 2436 "regression-compile-tmp/asems412.imp"
if (((VAL) == (0))) goto L_027b;
#line 2436 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (16))) != (0))) goto L_027c;
#line 2436 "regression-compile-tmp/asems412.imp"
L_027b:;
                                                                //   2437                 RELEASE(RHS_BASE)
#line 2437 "regression-compile-tmp/asems412.imp"
RELEASE(RHS->BASE);
                                                                //   2438              %ELSE
#line 2438 "regression-compile-tmp/asems412.imp"
goto L_027d;
#line 2438 "regression-compile-tmp/asems412.imp"
L_027c:;
                                                                //   2439                 %IF T = ASSTH %START
#line 2439 "regression-compile-tmp/asems412.imp"
if (((T) != (22))) goto L_027e;
                                                                //   2440                    RR(CHVR, RHS_BASE, RHS_BASE)
#line 2440 "regression-compile-tmp/asems412.imp"
RR(4608, RHS->BASE, RHS->BASE);
                                                                //   2441                 %ELSE
#line 2441 "regression-compile-tmp/asems412.imp"
goto L_027f;
#line 2441 "regression-compile-tmp/asems412.imp"
L_027e:;
                                                                //   2442                    HAZARD(R0)
#line 2442 "regression-compile-tmp/asems412.imp"
HAZARD(1);
                                                                //   2443                    RR(LBR, R0, RHS_BASE)
#line 2443 "regression-compile-tmp/asems412.imp"
RR(37632, 1, RHS->BASE);
                                                                //   2444                    CLAIM(RHS_BASE);  RR(CR, R0, RHS_BASE)
#line 2444 "regression-compile-tmp/asems412.imp"
CLAIM(RHS->BASE);
#line 2444 "regression-compile-tmp/asems412.imp"
RR(2304, 1, RHS->BASE);
                                                                //   2445                 %FINISH
#line 2445 "regression-compile-tmp/asems412.imp"
L_027f:;
                                                                //   2446                 PERM(T)
#line 2446 "regression-compile-tmp/asems412.imp"
PERM(T);
                                                                //   2447              %FINISH
#line 2447 "regression-compile-tmp/asems412.imp"
L_027d:;
                                                                //   2448              DROP(RHS);  DROP(LHS)
#line 2448 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2448 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2449           %FINISH
#line 2449 "regression-compile-tmp/asems412.imp"
L_026c:;
                                                                //   2450        %END
#line 2450 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ASSIGN at level 3
                                                                //   2451        %ROUTINE ARRAY REF
#line 2451 "regression-compile-tmp/asems412.imp"
void ARRAYREF( void )
#line 2451 "regression-compile-tmp/asems412.imp"
{
                                                                //   2452           %RECORD(STACKFM)%NAME A
#line 2452 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*A;
                                                                //   2453           %ownRECORD(STACKFM) T=0   {to prevent unassigned problems}
#line 2453 "regression-compile-tmp/asems412.imp"
static  STACKFM T = { 0 } /* Initialise all fields of a record to 0. */;
                                                                //   2454           %INTEGER R, D
#line 2454 "regression-compile-tmp/asems412.imp"
int R;
#line 2454 "regression-compile-tmp/asems412.imp"
int D;
                                                                //   2455           SET BOTH
#line 2455 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   2456           T_BASE = CODE
#line 2456 "regression-compile-tmp/asems412.imp"
T.BASE = 44;
                                                                //   2457           A == LHS
#line 2457 "regression-compile-tmp/asems412.imp"
A = LHS;
                                                                //   2458           REDUCE(A) %IF A_FORM > V IN S %AND A_FORM # AV IN S
#line 2458 "regression-compile-tmp/asems412.imp"
if (((A->FORM) <= (3))) goto L_0280;
#line 2458 "regression-compile-tmp/asems412.imp"
if (((A->FORM) == (6))) goto L_0280;
#line 2458 "regression-compile-tmp/asems412.imp"
REDUCE(A);
#line 2458 "regression-compile-tmp/asems412.imp"
L_0280:;
                                                                //   2459           D = 0
#line 2459 "regression-compile-tmp/asems412.imp"
D = 0;
                                                                //   2460           %IF RHS_LOP=ADD %AND CONST(RHS_LINK) %START
#line 2460 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) != (3))) goto L_0281;
#line 2460 "regression-compile-tmp/asems412.imp"
if (!(CONST(RHS->LINK))) goto L_0281;
                                                                //   2461              D = RHS_LINK_DISP*A_LENGTH
#line 2461 "regression-compile-tmp/asems412.imp"
D = (((int)(RHS->LINK->DISP)) * (A->LENGTH));
                                                                //   2462              RHS_LOP = 0
#line 2462 "regression-compile-tmp/asems412.imp"
RHS->LOP = 0;
                                                                //   2463              DROP(RHS_LINK)
#line 2463 "regression-compile-tmp/asems412.imp"
DROP(RHS->LINK);
                                                                //   2464           %FINISH
#line 2464 "regression-compile-tmp/asems412.imp"
L_0281:;
                                                                //   2465           %IF A_FORM = V IN S %START
#line 2465 "regression-compile-tmp/asems412.imp"
if (((A->FORM) != (3))) goto L_0282;
                                                                //   2466              %IF RHS_LOP = 0 %AND A_LENGTH <= 256 %START
#line 2466 "regression-compile-tmp/asems412.imp"
if (((RHS->LOP) != (0))) goto L_0283;
#line 2466 "regression-compile-tmp/asems412.imp"
if (((A->LENGTH) > (256))) goto L_0283;
                                                                //   2467                 ADDRESS(RHS) %UNLESS RHS_FORM = CONSTANT
#line 2467 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) == (0))) goto L_0284;
#line 2467 "regression-compile-tmp/asems412.imp"
ADDRESS(RHS);
#line 2467 "regression-compile-tmp/asems412.imp"
L_0284:;
                                                                //   2468                 T_BASE = RHS_BASE+A_BASE<<8
#line 2468 "regression-compile-tmp/asems412.imp"
T.BASE = ((RHS->BASE) + ((short)(((A->BASE) << (8)))));
                                                                //   2469                 T_DISP = RHS_DISP
#line 2469 "regression-compile-tmp/asems412.imp"
T.DISP = RHS->DISP;
                                                                //   2470                 T_TYPE = A_LENGTH
#line 2470 "regression-compile-tmp/asems412.imp"
T.TYPE = A->LENGTH;
                                                                //   2471                 T_FORM = RHS_FORM ! 128
#line 2471 "regression-compile-tmp/asems412.imp"
T.FORM = ((RHS->FORM) | (128));
                                                                //   2472                 R = FIND USE(T_TYPE, T_FORM, T_BASE, T_DISP)
#line 2472 "regression-compile-tmp/asems412.imp"
R = FINDUSE(T.TYPE, T.FORM, T.BASE, T.DISP);
                                                                //   2473                 %IF R # 0 %START
#line 2473 "regression-compile-tmp/asems412.imp"
if (((R) == (0))) goto L_0285;
                                                                //   2474                    STP = STP-1
#line 2474 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2475                    A_BASE = R;  A_DISP = A_DISP+D;  A_FORM = V IN S
#line 2475 "regression-compile-tmp/asems412.imp"
A->BASE = R;
#line 2475 "regression-compile-tmp/asems412.imp"
A->DISP = (((int)(A->DISP)) + (D));
#line 2475 "regression-compile-tmp/asems412.imp"
A->FORM = 3;
                                                                //   2476                    DROP(RHS)
#line 2476 "regression-compile-tmp/asems412.imp"
DROP(RHS);
                                                                //   2477                    %RETURN
#line 2477 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2478                 %FINISH
#line 2478 "regression-compile-tmp/asems412.imp"
L_0285:;
                                                                //   2479              %FINISH
#line 2479 "regression-compile-tmp/asems412.imp"
L_0283:;
                                                                //   2480           %FINISH
#line 2480 "regression-compile-tmp/asems412.imp"
L_0282:;
                                                                //   2481           CSTACK(A_LENGTH)
#line 2481 "regression-compile-tmp/asems412.imp"
CSTACK(A->LENGTH);
                                                                //   2482           OPERATE(MUL);  LHS == STACKED(STP)_V
#line 2482 "regression-compile-tmp/asems412.imp"
OPERATE(6);
#line 2482 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2483           SSET(A_BASE, A_DISP, V IN S, 0)
#line 2483 "regression-compile-tmp/asems412.imp"
SSET(A->BASE, A->DISP, 3, 0);
                                                                //   2484           %IF A_FORM = V IN S %START;! ARRAY
#line 2484 "regression-compile-tmp/asems412.imp"
if (((A->FORM) != (3))) goto L_0286;
                                                                //   2485              D = D+RHS_DISP;  RHS_DISP = 0
#line 2485 "regression-compile-tmp/asems412.imp"
D = (((int)(D)) + (RHS->DISP));
#line 2485 "regression-compile-tmp/asems412.imp"
RHS->DISP = 0;
                                                                //   2486              RHS_FORM = V IN R
#line 2486 "regression-compile-tmp/asems412.imp"
RHS->FORM = 1;
                                                                //   2487           %FINISH
#line 2487 "regression-compile-tmp/asems412.imp"
L_0286:;
                                                                //   2488           %IF CONST(LHS) %START
#line 2488 "regression-compile-tmp/asems412.imp"
if (!(CONST(LHS))) goto L_0287;
                                                                //   2489              LOAD(RHS, ANY0) %IF RHS_FORM = V IN S
#line 2489 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) != (3))) goto L_0288;
#line 2489 "regression-compile-tmp/asems412.imp"
LOAD(RHS, 46);
#line 2489 "regression-compile-tmp/asems412.imp"
L_0288:;
                                                                //   2490              D = D+LHS_DISP;  LHS_BASE = RHS_BASE
#line 2490 "regression-compile-tmp/asems412.imp"
D = (((int)(D)) + (LHS->DISP));
#line 2490 "regression-compile-tmp/asems412.imp"
LHS->BASE = RHS->BASE;
                                                                //   2491              STP = STP-1
#line 2491 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2492           %ELSE %IF RHS_BASE = 0 %AND RHS_FORM = V IN R
#line 2492 "regression-compile-tmp/asems412.imp"
goto L_0289;
#line 2492 "regression-compile-tmp/asems412.imp"
L_0287:;
#line 2492 "regression-compile-tmp/asems412.imp"
if (((RHS->BASE) != (0))) goto L_028a;
#line 2492 "regression-compile-tmp/asems412.imp"
if (((RHS->FORM) != (1))) goto L_028a;
                                                                //   2493              LOAD(LHS, ANY0)
#line 2493 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 46);
                                                                //   2494              STP = STP-1
#line 2494 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2495           %ELSE
#line 2495 "regression-compile-tmp/asems412.imp"
goto L_0289;
#line 2495 "regression-compile-tmp/asems412.imp"
L_028a:;
                                                                //   2496              OPERATE(ADD);  LHS == STACKED(STP)_V;  RHS == LHS
#line 2496 "regression-compile-tmp/asems412.imp"
OPERATE(3);
#line 2496 "regression-compile-tmp/asems412.imp"
LHS = STACKED[(((int)(STP)) - (1))].V;
#line 2496 "regression-compile-tmp/asems412.imp"
RHS = LHS;
                                                                //   2497           %FINISH
#line 2497 "regression-compile-tmp/asems412.imp"
L_0289:;
                                                                //   2498           LOAD(LHS, ANY0) %IF LHS_LOP # 0
#line 2498 "regression-compile-tmp/asems412.imp"
if (((LHS->LOP) == (0))) goto L_028b;
#line 2498 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 46);
#line 2498 "regression-compile-tmp/asems412.imp"
L_028b:;
                                                                //   2499           STP = STP-1
#line 2499 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2500           REMEMBER(LHS_BASE, T) %IF LHS_FORM = V IN R
#line 2500 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) != (1))) goto L_028c;
#line 2500 "regression-compile-tmp/asems412.imp"
REMEMBER(LHS->BASE, &T);
#line 2500 "regression-compile-tmp/asems412.imp"
L_028c:;
                                                                //   2501           A_FORM = V IN S;  A_BASE = LHS_BASE;  A_DISP = D
#line 2501 "regression-compile-tmp/asems412.imp"
A->FORM = 3;
#line 2501 "regression-compile-tmp/asems412.imp"
A->BASE = LHS->BASE;
#line 2501 "regression-compile-tmp/asems412.imp"
A->DISP = D;
                                                                //   2502           %IF D < 0 %START
#line 2502 "regression-compile-tmp/asems412.imp"
if (((D) >= (0))) goto L_028d;
                                                                //   2503              R = A_TYPE;  AMAP(A);  LOAD(A, ANY0)
#line 2503 "regression-compile-tmp/asems412.imp"
R = A->TYPE;
#line 2503 "regression-compile-tmp/asems412.imp"
AMAP(A);
#line 2503 "regression-compile-tmp/asems412.imp"
LOAD(A, 46);
                                                                //   2504              A_TYPE = R;  A_FORM = V IN S
#line 2504 "regression-compile-tmp/asems412.imp"
A->TYPE = R;
#line 2504 "regression-compile-tmp/asems412.imp"
A->FORM = 3;
                                                                //   2505           %FINISH
#line 2505 "regression-compile-tmp/asems412.imp"
L_028d:;
                                                                //   2506           DROP(RHS) %UNLESS RHS == LHS
#line 2506 "regression-compile-tmp/asems412.imp"
if (((RHS) == (LHS))) goto L_028e;
#line 2506 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2506 "regression-compile-tmp/asems412.imp"
L_028e:;
                                                                //   2507           DROP(LHS)
#line 2507 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2508        %END
#line 2508 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ARRAYREF at level 3
                                                                //   2509        %ROUTINE CHECKED ARRAY REF
#line 2509 "regression-compile-tmp/asems412.imp"
void CHECKEDARRAYREF( void )
#line 2509 "regression-compile-tmp/asems412.imp"
{
                                                                //   2510           %INTEGER D, FLAG
#line 2510 "regression-compile-tmp/asems412.imp"
int D;
#line 2510 "regression-compile-tmp/asems412.imp"
int FLAG;
                                                                //   2511           SET BOTH;  STP = STP-2
#line 2511 "regression-compile-tmp/asems412.imp"
SETBOTH();
#line 2511 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   2512           REDUCE(LHS) %IF LHS_FORM > V IN S %AND LHS_FORM # AV IN S
#line 2512 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) <= (3))) goto L_028f;
#line 2512 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) == (6))) goto L_028f;
#line 2512 "regression-compile-tmp/asems412.imp"
REDUCE(LHS);
#line 2512 "regression-compile-tmp/asems412.imp"
L_028f:;
                                                                //   2513           LRD(RHS, R1)
#line 2513 "regression-compile-tmp/asems412.imp"
LRD(RHS, 2);
                                                                //   2514           HAZARD(R2);  FORGET(R2)
#line 2514 "regression-compile-tmp/asems412.imp"
HAZARD(3);
#line 2514 "regression-compile-tmp/asems412.imp"
FORGET(3);
                                                                //   2515           %IF LHS_DV < 0 %START
#line 2515 "regression-compile-tmp/asems412.imp"
if (((LHS->DV) >= (0))) goto L_0290;
                                                                //   2516              FLAG = 0;  D = 0;  RX(LW, R2, LHS_BASE, LHS_DISP+REGLEN)
#line 2516 "regression-compile-tmp/asems412.imp"
FLAG = 0;
#line 2516 "regression-compile-tmp/asems412.imp"
D = 0;
#line 2516 "regression-compile-tmp/asems412.imp"
RX(22528, 3, LHS->BASE, (((int)(LHS->DISP)) + (4)));
                                                                //   2517              CLAIM(LHS_BASE)
#line 2517 "regression-compile-tmp/asems412.imp"
CLAIM(LHS->BASE);
                                                                //   2518           %ELSE
#line 2518 "regression-compile-tmp/asems412.imp"
goto L_0291;
#line 2518 "regression-compile-tmp/asems412.imp"
L_0290:;
                                                                //   2519              FLAG = 1;  D = LHS_DISP;  RI2(LHI, R2, GLA, LHS_DV)
#line 2519 "regression-compile-tmp/asems412.imp"
FLAG = 1;
#line 2519 "regression-compile-tmp/asems412.imp"
D = LHS->DISP;
#line 2519 "regression-compile-tmp/asems412.imp"
RI2(51200, 3, 42, LHS->DV);
                                                                //   2520           %FINISH
#line 2520 "regression-compile-tmp/asems412.imp"
L_0291:;
                                                                //   2521           PERM(A REF);  FORGET(R1)
#line 2521 "regression-compile-tmp/asems412.imp"
PERM(788);
#line 2521 "regression-compile-tmp/asems412.imp"
FORGET(2);
                                                                //   2522           %IF FLAG # 0 %START
#line 2522 "regression-compile-tmp/asems412.imp"
if (((FLAG) == (0))) goto L_0292;
                                                                //   2523              RR(AR, R1, LHS_BASE)
#line 2523 "regression-compile-tmp/asems412.imp"
RR(2560, 2, LHS->BASE);
                                                                //   2524           %ELSE
#line 2524 "regression-compile-tmp/asems412.imp"
goto L_0293;
#line 2524 "regression-compile-tmp/asems412.imp"
L_0292:;
                                                                //   2525              RX(AW, R1, LHS_BASE, LHS_DISP)
#line 2525 "regression-compile-tmp/asems412.imp"
RX(23040, 2, LHS->BASE, LHS->DISP);
                                                                //   2526           %FINISH
#line 2526 "regression-compile-tmp/asems412.imp"
L_0293:;
                                                                //   2527           LHS_BASE = R1;  LHS_DISP = D;  LHS_FORM = V IN S;  LHS_DV = 0
#line 2527 "regression-compile-tmp/asems412.imp"
LHS->BASE = 2;
#line 2527 "regression-compile-tmp/asems412.imp"
LHS->DISP = D;
#line 2527 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
#line 2527 "regression-compile-tmp/asems412.imp"
LHS->DV = 0;
                                                                //   2528           SSTACK(LHS)
#line 2528 "regression-compile-tmp/asems412.imp"
SSTACK(LHS);
                                                                //   2529           DROP(LHS)
#line 2529 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2530        %END
#line 2530 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CHECKEDARRAYREF at level 3
                                                                //   2531        %ROUTINE KNOW(%INTEGER REG, VALUE, TYPE)
#line 2531 "regression-compile-tmp/asems412.imp"
void KNOW( int REG, int VALUE, int TYPE )
#line 2531 "regression-compile-tmp/asems412.imp"
{
                                                                //   2532           KNOWN_BASE = REG+STORE;  KNOWN_DISP = VALUE
#line 2532 "regression-compile-tmp/asems412.imp"
KNOWN.BASE = (((int)(REG)) + (20));
#line 2532 "regression-compile-tmp/asems412.imp"
KNOWN.DISP = VALUE;
                                                                //   2533           KNOWN_TYPE = TYPE
#line 2533 "regression-compile-tmp/asems412.imp"
KNOWN.TYPE = TYPE;
                                                                //   2534           KNOWN_CA = 0 %IF USE(KNOWN_BASE)_CA < LIMEN %C
#line 2534 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(KNOWN.BASE)) - (1))].CA) < (LIMEN))) goto L_0294;
#line 2534 "regression-compile-tmp/asems412.imp"
if (((USE[(((int)(KNOWN.BASE)) - (1))].CA) != (USE[(((int)((((int)(KNOWN.BASE)) - (20)))) - (1))].CA))) goto L_0295;
#line 2534 "regression-compile-tmp/asems412.imp"
L_0294:;
#line 2534 "regression-compile-tmp/asems412.imp"
KNOWN.CA = 0;
#line 2534 "regression-compile-tmp/asems412.imp"
L_0295:;
                                                                //   2535                        %OR USE(KNOWN_BASE)_CA = USE(KNOWN_BASE-STORE)_CA
                                                                //   2536        %END
#line 2536 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block KNOW at level 3
                                                                //   2537        %ROUTINE TEST ZERO(%RECORD(STACKFM)%NAME V)
#line 2537 "regression-compile-tmp/asems412.imp"
void TESTZERO(  STACKFM /*name*/*V )
#line 2537 "regression-compile-tmp/asems412.imp"
{
                                                                //   2538           %RECORD(STACKFM)%NAME W
#line 2538 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*W;
                                                                //   2539           %INTEGER OP, COP, CR, CT, NOT
#line 2539 "regression-compile-tmp/asems412.imp"
int OP;
#line 2539 "regression-compile-tmp/asems412.imp"
int COP;
#line 2539 "regression-compile-tmp/asems412.imp"
int CR;
#line 2539 "regression-compile-tmp/asems412.imp"
int CT;
#line 2539 "regression-compile-tmp/asems412.imp"
int NOT;
                                                                //   2540           NOT = NEXTSYMBOL-'#'
#line 2540 "regression-compile-tmp/asems412.imp"
NOT = (((int)(_imp_NEXTSYMBOL())) - (35));
                                                                //   2541           OP = V_LOP
#line 2541 "regression-compile-tmp/asems412.imp"
OP = V->LOP;
                                                                //   2542           COP = LR ;  CR = ANY;  CT = INTEGER
#line 2542 "regression-compile-tmp/asems412.imp"
COP = 2048;
#line 2542 "regression-compile-tmp/asems412.imp"
CR = 45;
#line 2542 "regression-compile-tmp/asems412.imp"
CT = 1;
                                                                //   2543           %IF FLOATING(V) %START
#line 2543 "regression-compile-tmp/asems412.imp"
if (!(FLOATING(V))) goto L_0296;
                                                                //   2544              COP = LER;  CR = ANYF;  CT = REALS
#line 2544 "regression-compile-tmp/asems412.imp"
COP = 10240;
#line 2544 "regression-compile-tmp/asems412.imp"
CR = 47;
#line 2544 "regression-compile-tmp/asems412.imp"
CT = 6;
                                                                //   2545           %ELSE %IF OP # 0 %AND SYM = '?'
#line 2545 "regression-compile-tmp/asems412.imp"
goto L_0297;
#line 2545 "regression-compile-tmp/asems412.imp"
L_0296:;
#line 2545 "regression-compile-tmp/asems412.imp"
if (((OP) == (0))) goto L_0298;
#line 2545 "regression-compile-tmp/asems412.imp"
if (((SYM) != (63))) goto L_0298;
                                                                //   2546              W == V_LINK;  V_LOP = 0
#line 2546 "regression-compile-tmp/asems412.imp"
W = V->LINK;
#line 2546 "regression-compile-tmp/asems412.imp"
V->LOP = 0;
                                                                //   2547              %IF OP = AND %AND (W_FORM = CONSTANT %OR W_FORM = V IN R) %C
#line 2547 "regression-compile-tmp/asems412.imp"
if (((OP) != (8))) goto L_0299;
#line 2547 "regression-compile-tmp/asems412.imp"
if (((W->FORM) == (0))) goto L_029a;
#line 2547 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_0299;
#line 2547 "regression-compile-tmp/asems412.imp"
L_029a:;
                                                                //   2548                                               %START
                                                                //   2549                 %IF V_FORM # V IN R # W_FORM %AND V_TYPE = INTEGER %START
#line 2549 "regression-compile-tmp/asems412.imp"
if ((((V->FORM) == (1))) || (((1) == (W->FORM)))) goto L_029b;
#line 2549 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (1))) goto L_029b;
                                                                //   2550                    %IF W_DISP&X'FFFF' = 0 %OR W_DISP>>16 = 0 %START
#line 2550 "regression-compile-tmp/asems412.imp"
if (((((W->DISP) & (65535))) == (0))) goto L_029c;
#line 2550 "regression-compile-tmp/asems412.imp"
if ((((int)((((unsigned int)(W->DISP)) >> (16)))) != (0))) goto L_029d;
#line 2550 "regression-compile-tmp/asems412.imp"
L_029c:;
                                                                //   2551                       ADDRESS(V)
#line 2551 "regression-compile-tmp/asems412.imp"
ADDRESS(V);
                                                                //   2552                       V_TYPE = UNSIGNED HALFWORD
#line 2552 "regression-compile-tmp/asems412.imp"
V->TYPE = 255;
                                                                //   2553                       W_TYPE = UNSIGNED HALFWORD
#line 2553 "regression-compile-tmp/asems412.imp"
W->TYPE = 255;
                                                                //   2554                       %IF W_DISP&X'FFFF' = 0 %START
#line 2554 "regression-compile-tmp/asems412.imp"
if (((((W->DISP) & (65535))) != (0))) goto L_029e;
                                                                //   2555                          W_DISP = W_DISP>>16
#line 2555 "regression-compile-tmp/asems412.imp"
W->DISP = (int)((((unsigned int)(W->DISP)) >> (16)));
                                                                //   2556                       %ELSE
#line 2556 "regression-compile-tmp/asems412.imp"
goto L_029f;
#line 2556 "regression-compile-tmp/asems412.imp"
L_029e:;
                                                                //   2557                          V_DISP = V_DISP+2
#line 2557 "regression-compile-tmp/asems412.imp"
V->DISP = (((int)(V->DISP)) + (2));
                                                                //   2558                       %FINISH
#line 2558 "regression-compile-tmp/asems412.imp"
L_029f:;
                                                                //   2559                    %FINISH
#line 2559 "regression-compile-tmp/asems412.imp"
L_029d:;
                                                                //   2560                 %FINISH
#line 2560 "regression-compile-tmp/asems412.imp"
L_029b:;
                                                                //   2561                 LOAD(V, ANY)
#line 2561 "regression-compile-tmp/asems412.imp"
LOAD(V, 45);
                                                                //   2562                 W_DISP = 0 %AND W_TYPE = 0 %IF W_FORM = V IN R
#line 2562 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (1))) goto L_02a0;
#line 2562 "regression-compile-tmp/asems412.imp"
W->DISP = 0;
#line 2562 "regression-compile-tmp/asems412.imp"
W->TYPE = 0;
#line 2562 "regression-compile-tmp/asems412.imp"
L_02a0:;
                                                                //   2563                 %IF -X'8000' <= W_DISP <= X'7FFF' %C
#line 2563 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (W->DISP))) || (((W->DISP) <= (32767)))) goto L_0254;
#line 2563 "regression-compile-tmp/asems412.imp"
L_02a1:;
#line 2563 "regression-compile-tmp/asems412.imp"
if (((W->TYPE) != (255))) goto L_02a2;
#line 2563 "regression-compile-tmp/asems412.imp"
L_0254:;
                                                                //   2564                    %OR W_TYPE = UNSIGNED HALFWORD %START
                                                                //   2565                    RI2(THI,V_BASE,W_BASE,W_DISP)
#line 2565 "regression-compile-tmp/asems412.imp"
RI2(49920, V->BASE, W->BASE, W->DISP);
                                                                //   2566                 %ELSE
#line 2566 "regression-compile-tmp/asems412.imp"
goto L_02a3;
#line 2566 "regression-compile-tmp/asems412.imp"
L_02a2:;
                                                                //   2567                    RI3(TI,V_BASE,W_BASE,W_DISP)
#line 2567 "regression-compile-tmp/asems412.imp"
RI3(62208, V->BASE, W->BASE, W->DISP);
                                                                //   2568                 %FINISH
#line 2568 "regression-compile-tmp/asems412.imp"
L_02a3:;
                                                                //   2569                 RELEASE(V_BASE);  DROP(W)
#line 2569 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
#line 2569 "regression-compile-tmp/asems412.imp"
DROP(W);
                                                                //   2570                 %RETURN
#line 2570 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2571              %FINISH
#line 2571 "regression-compile-tmp/asems412.imp"
L_0299:;
                                                                //   2572              %IF W_FORM = CONSTANT %AND OP = ADD %C
#line 2572 "regression-compile-tmp/asems412.imp"
if (((W->FORM) != (0))) goto L_02a4;
#line 2572 "regression-compile-tmp/asems412.imp"
if (((OP) != (3))) goto L_02a4;
#line 2572 "regression-compile-tmp/asems412.imp"
if (((W->DISP) < ((-15)))) goto L_02a5;
#line 2572 "regression-compile-tmp/asems412.imp"
if (((W->DISP) <= (15))) goto L_02a4;
#line 2572 "regression-compile-tmp/asems412.imp"
L_02a5:;
                                                                //   2573                             %AND (W_DISP < -15 %OR W_DISP > 15) %START
                                                                //   2574                 W_DISP = -W_DISP
#line 2574 "regression-compile-tmp/asems412.imp"
W->DISP = (-(W->DISP));
                                                                //   2575                 COMPARE(V, W);  DROP(W)
#line 2575 "regression-compile-tmp/asems412.imp"
COMPARE(V, W);
#line 2575 "regression-compile-tmp/asems412.imp"
DROP(W);
                                                                //   2576                 %RETURN
#line 2576 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2577              %FINISH
#line 2577 "regression-compile-tmp/asems412.imp"
L_02a4:;
                                                                //   2578              V_LOP = OP
#line 2578 "regression-compile-tmp/asems412.imp"
V->LOP = OP;
                                                                //   2579           %FINISH
#line 2579 "regression-compile-tmp/asems412.imp"
L_0298:;
#line 2579 "regression-compile-tmp/asems412.imp"
L_0297:;
                                                                //   2580           %IF OP = 0 %AND CCCA = CA %AND LIMEN # CA %START
#line 2580 "regression-compile-tmp/asems412.imp"
if (((OP) != (0))) goto L_02a6;
#line 2580 "regression-compile-tmp/asems412.imp"
if (((CCCA) != (CA))) goto L_02a6;
#line 2580 "regression-compile-tmp/asems412.imp"
if (((LIMEN) == (CA))) goto L_02a6;
                                                                //   2581              %IF CCREG < 0 %AND SAME(CCV, V) %START
#line 2581 "regression-compile-tmp/asems412.imp"
if (((CCREG) >= (0))) goto L_02a7;
#line 2581 "regression-compile-tmp/asems412.imp"
if (!(SAME(&CCV, V))) goto L_02a7;
                                                                //   2582                 RELEASE(V_BASE);  %RETURN
#line 2582 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
#line 2582 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2583              %FINISH
#line 2583 "regression-compile-tmp/asems412.imp"
L_02a7:;
                                                                //   2584              OPTIMISE(V)
#line 2584 "regression-compile-tmp/asems412.imp"
OPTIMISE(V);
                                                                //   2585              %IF V_FORM = V IN R %AND V_BASE = CCREG %START
#line 2585 "regression-compile-tmp/asems412.imp"
if (((V->FORM) != (1))) goto L_02a8;
#line 2585 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (CCREG))) goto L_02a8;
                                                                //   2586                 RELEASE(V_BASE)
#line 2586 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
                                                                //   2587                 KNOW(V_BASE, 0, CT) %IF NOT = 0
#line 2587 "regression-compile-tmp/asems412.imp"
if (((NOT) != (0))) goto L_02a9;
#line 2587 "regression-compile-tmp/asems412.imp"
KNOW(V->BASE, 0, CT);
#line 2587 "regression-compile-tmp/asems412.imp"
L_02a9:;
                                                                //   2588                 %RETURN
#line 2588 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2589              %FINISH
#line 2589 "regression-compile-tmp/asems412.imp"
L_02a8:;
                                                                //   2590           %FINISH
#line 2590 "regression-compile-tmp/asems412.imp"
L_02a6:;
                                                                //   2591           LOAD(V, CR)
#line 2591 "regression-compile-tmp/asems412.imp"
LOAD(V, CR);
                                                                //   2592           %UNLESS CCREG = V_BASE %AND CCCA = CA %START
#line 2592 "regression-compile-tmp/asems412.imp"
if (((CCREG) != (V->BASE))) goto L_02aa;
#line 2592 "regression-compile-tmp/asems412.imp"
if (((CCCA) == (CA))) goto L_02ab;
#line 2592 "regression-compile-tmp/asems412.imp"
L_02aa:;
                                                                //   2593              RR(COP, V_BASE, V_BASE)
#line 2593 "regression-compile-tmp/asems412.imp"
RR(COP, V->BASE, V->BASE);
                                                                //   2594           %ELSE
#line 2594 "regression-compile-tmp/asems412.imp"
goto L_02ac;
#line 2594 "regression-compile-tmp/asems412.imp"
L_02ab:;
                                                                //   2595              RELEASE(V_BASE)
#line 2595 "regression-compile-tmp/asems412.imp"
RELEASE(V->BASE);
                                                                //   2596           %FINISH
#line 2596 "regression-compile-tmp/asems412.imp"
L_02ac:;
                                                                //   2597           KNOW(V_BASE, 0, CT) %IF NOT = 0
#line 2597 "regression-compile-tmp/asems412.imp"
if (((NOT) != (0))) goto L_02ad;
#line 2597 "regression-compile-tmp/asems412.imp"
KNOW(V->BASE, 0, CT);
#line 2597 "regression-compile-tmp/asems412.imp"
L_02ad:;
                                                                //   2598        %END
#line 2598 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block TESTZERO at level 3
                                                                //   2599        %ROUTINE COMPARE REALS(%RECORD(STACKFM)%NAME L, R)
#line 2599 "regression-compile-tmp/asems412.imp"
void COMPAREREALS(  STACKFM /*name*/*L,  STACKFM /*name*/*R )
#line 2599 "regression-compile-tmp/asems412.imp"
{
                                                                //   2600           %RECORD(STACKFM) H
#line 2600 "regression-compile-tmp/asems412.imp"
 STACKFM H;
                                                                //   2601           FLOAT(L, ANYF) %UNLESS L_TYPE = REALS
#line 2601 "regression-compile-tmp/asems412.imp"
if (((L->TYPE) == (6))) goto L_02ae;
#line 2601 "regression-compile-tmp/asems412.imp"
FLOAT(L, 47);
#line 2601 "regression-compile-tmp/asems412.imp"
L_02ae:;
                                                                //   2602           FLOAT(R, ANYF) %UNLESS R_TYPE = REALS
#line 2602 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) == (6))) goto L_02af;
#line 2602 "regression-compile-tmp/asems412.imp"
FLOAT(R, 47);
#line 2602 "regression-compile-tmp/asems412.imp"
L_02af:;
                                                                //   2603           LOAD(L,ANYF) %IF L_LOP # 0
#line 2603 "regression-compile-tmp/asems412.imp"
if (((L->LOP) == (0))) goto L_02b0;
#line 2603 "regression-compile-tmp/asems412.imp"
LOAD(L, 47);
#line 2603 "regression-compile-tmp/asems412.imp"
L_02b0:;
                                                                //   2604           LOAD(R,ANYF) %IF R_LOP # 0
#line 2604 "regression-compile-tmp/asems412.imp"
if (((R->LOP) == (0))) goto L_02b1;
#line 2604 "regression-compile-tmp/asems412.imp"
LOAD(R, 47);
#line 2604 "regression-compile-tmp/asems412.imp"
L_02b1:;
                                                                //   2605           %IF L_FORM # V IN R %AND R_FORM = V IN R %START
#line 2605 "regression-compile-tmp/asems412.imp"
if (((L->FORM) == (1))) goto L_02b2;
#line 2605 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (1))) goto L_02b2;
                                                                //   2606              H = L;  L = R;  R = H
#line 2606 "regression-compile-tmp/asems412.imp"
H = *L;
#line 2606 "regression-compile-tmp/asems412.imp"
*L = *R;
#line 2606 "regression-compile-tmp/asems412.imp"
*R = H;
                                                                //   2607              INVERT = INVERT!!6;  SWOPPED = SWOPPED!!1
#line 2607 "regression-compile-tmp/asems412.imp"
INVERT = ((INVERT) ^ (6));
#line 2607 "regression-compile-tmp/asems412.imp"
SWOPPED = ((SWOPPED) ^ (1));
                                                                //   2608           %FINISH
#line 2608 "regression-compile-tmp/asems412.imp"
L_02b2:;
                                                                //   2609           LOAD(L, ANYF)
#line 2609 "regression-compile-tmp/asems412.imp"
LOAD(L, 47);
                                                                //   2610           LOAD(R, ANYF) %IF CONTROL&UNASS DIAG # 0
#line 2610 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_02b3;
#line 2610 "regression-compile-tmp/asems412.imp"
LOAD(R, 47);
#line 2610 "regression-compile-tmp/asems412.imp"
L_02b3:;
                                                                //   2611           ADDRESS(R)
#line 2611 "regression-compile-tmp/asems412.imp"
ADDRESS(R);
                                                                //   2612           %IF R_FORM = V IN R %START
#line 2612 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (1))) goto L_02b4;
                                                                //   2613              RR(CER, L_BASE, R_BASE)
#line 2613 "regression-compile-tmp/asems412.imp"
RR(10496, L->BASE, R->BASE);
                                                                //   2614           %ELSE
#line 2614 "regression-compile-tmp/asems412.imp"
goto L_02b5;
#line 2614 "regression-compile-tmp/asems412.imp"
L_02b4:;
                                                                //   2615              RX(CE, L_BASE, R_BASE, R_DISP)
#line 2615 "regression-compile-tmp/asems412.imp"
RX(26880, L->BASE, R->BASE, R->DISP);
                                                                //   2616           %FINISH
#line 2616 "regression-compile-tmp/asems412.imp"
L_02b5:;
                                                                //   2617           RELEASE(L_BASE)
#line 2617 "regression-compile-tmp/asems412.imp"
RELEASE(L->BASE);
                                                                //   2618        %END
#line 2618 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COMPAREREALS at level 3
                                                                //   2619     %ROUTINE COMPARE STRINGS(%RECORD(STACKFM)%NAME L, R)
#line 2619 "regression-compile-tmp/asems412.imp"
void COMPARESTRINGS(  STACKFM /*name*/*L,  STACKFM /*name*/*R )
#line 2619 "regression-compile-tmp/asems412.imp"
{
                                                                //   2620        %ROUTINE TEST NULL(%RECORD(STACKFM)%NAME R)
#line 2620 "regression-compile-tmp/asems412.imp"
void TESTNULL(  STACKFM /*name*/*R )
#line 2620 "regression-compile-tmp/asems412.imp"
{
                                                                //   2621           ACTIVE STRING == NULL
#line 2621 "regression-compile-tmp/asems412.imp"
ACTIVESTRING = NULL;
                                                                //   2622           LOAD(R, ANY) %IF R_LOP # 0
#line 2622 "regression-compile-tmp/asems412.imp"
if (((R->LOP) == (0))) goto L_02b6;
#line 2622 "regression-compile-tmp/asems412.imp"
LOAD(R, 45);
#line 2622 "regression-compile-tmp/asems412.imp"
L_02b6:;
                                                                //   2623           R_TYPE = BYTE
#line 2623 "regression-compile-tmp/asems412.imp"
R->TYPE = 2;
                                                                //   2624           TEST ZERO(R)
#line 2624 "regression-compile-tmp/asems412.imp"
TESTZERO(R);
                                                                //   2625        %END
#line 2625 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block TESTNULL at level 4
                                                                //   2626        SDISP = 256 %IF L_TYPE = 0 %OR R_TYPE = 0 %C
#line 2626 "regression-compile-tmp/asems412.imp"
if (((L->TYPE) == (0))) goto L_02b7;
#line 2626 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) == (0))) goto L_02b7;
#line 2626 "regression-compile-tmp/asems412.imp"
if (((L->LOP) != (0))) goto L_02b7;
#line 2626 "regression-compile-tmp/asems412.imp"
if (((R->LOP) == (0))) goto L_02b8;
#line 2626 "regression-compile-tmp/asems412.imp"
L_02b7:;
#line 2626 "regression-compile-tmp/asems412.imp"
SDISP = 256;
#line 2626 "regression-compile-tmp/asems412.imp"
L_02b8:;
                                                                //   2627                    %OR L_LOP # 0 %OR R_LOP # 0
                                                                //   2628        %IF CSLEN = 0 %START
#line 2628 "regression-compile-tmp/asems412.imp"
if (((*CSLEN) != (0))) goto L_02b9;
                                                                //   2629           %IF R_FORM = CONSTANT %START
#line 2629 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (0))) goto L_02ba;
                                                                //   2630              TEST NULL(L);  L_TYPE = STRING;  L_FORM = V IN S;  %RETURN
#line 2630 "regression-compile-tmp/asems412.imp"
TESTNULL(L);
#line 2630 "regression-compile-tmp/asems412.imp"
L->TYPE = 4;
#line 2630 "regression-compile-tmp/asems412.imp"
L->FORM = 3;
#line 2630 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2631           %FINISH
#line 2631 "regression-compile-tmp/asems412.imp"
L_02ba:;
                                                                //   2632           %IF L_FORM = CONSTANT %START
#line 2632 "regression-compile-tmp/asems412.imp"
if (((L->FORM) != (0))) goto L_02bb;
                                                                //   2633              TEST NULL(R);  INVERT = INVERT!!6;  %RETURN
#line 2633 "regression-compile-tmp/asems412.imp"
TESTNULL(R);
#line 2633 "regression-compile-tmp/asems412.imp"
INVERT = ((INVERT) ^ (6));
#line 2633 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2634           %FINISH
#line 2634 "regression-compile-tmp/asems412.imp"
L_02bb:;
                                                                //   2635        %FINISH
#line 2635 "regression-compile-tmp/asems412.imp"
L_02b9:;
                                                                //   2636        DUMP STRING(0)
#line 2636 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
                                                                //   2637        LOAD(R, R1);  LOAD(L, R2);  LOAD(R, R1);! IN CASE OF HAZARD!
#line 2637 "regression-compile-tmp/asems412.imp"
LOAD(R, 2);
#line 2637 "regression-compile-tmp/asems412.imp"
LOAD(L, 3);
#line 2637 "regression-compile-tmp/asems412.imp"
LOAD(R, 2);
                                                                //   2638        RELEASE(R1);  RELEASE(R2)
#line 2638 "regression-compile-tmp/asems412.imp"
RELEASE(2);
#line 2638 "regression-compile-tmp/asems412.imp"
RELEASE(3);
                                                                //   2639        PERM(SCOMP)
#line 2639 "regression-compile-tmp/asems412.imp"
PERM(27405);
                                                                //   2640        L_TYPE = STRING;  L_FORM = V IN S
#line 2640 "regression-compile-tmp/asems412.imp"
L->TYPE = 4;
#line 2640 "regression-compile-tmp/asems412.imp"
L->FORM = 3;
                                                                //   2641        WDISP = 0
#line 2641 "regression-compile-tmp/asems412.imp"
WDISP = 0;
                                                                //   2642     %END
#line 2642 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COMPARESTRINGS at level 3
                                                                //   2643        %ROUTINE COMPARE(%RECORD(STACKFM)%NAME L, R)
#line 2643 "regression-compile-tmp/asems412.imp"
void COMPARE(  STACKFM /*name*/*L,  STACKFM /*name*/*R )
#line 2643 "regression-compile-tmp/asems412.imp"
{
                                                                //   2644           %RECORD(STACKFM) T
#line 2644 "regression-compile-tmp/asems412.imp"
 STACKFM T;
                                                                //   2645           %INTEGER OP, ARITH
#line 2645 "regression-compile-tmp/asems412.imp"
int OP;
#line 2645 "regression-compile-tmp/asems412.imp"
int ARITH;
                                                                //   2646           %PREDICATE CHANCED
#line 2646 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ CHANCED( void )
#line 2646 "regression-compile-tmp/asems412.imp"
{
                                                                //   2647              %FALSE %UNLESS L_LOP = ADD %AND SYM # 126
#line 2647 "regression-compile-tmp/asems412.imp"
if (((L->LOP) != (3))) goto L_02bc;
#line 2647 "regression-compile-tmp/asems412.imp"
if (((SYM) != (126))) goto L_02bd;
#line 2647 "regression-compile-tmp/asems412.imp"
L_02bc:;
#line 2647 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2647 "regression-compile-tmp/asems412.imp"
L_02bd:;
                                                                //   2648              %FALSE %UNLESS L_LINK_FORM = CONSTANT %AND L_BASE # 0
#line 2648 "regression-compile-tmp/asems412.imp"
if (((L->LINK->FORM) != (0))) goto L_02be;
#line 2648 "regression-compile-tmp/asems412.imp"
if (((L->BASE) != (0))) goto L_02bf;
#line 2648 "regression-compile-tmp/asems412.imp"
L_02be:;
#line 2648 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2648 "regression-compile-tmp/asems412.imp"
L_02bf:;
                                                                //   2649              %FALSE %UNLESS -X'8000' <= L_LINK_DISP <= X'7FFF'
#line 2649 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (L->LINK->DISP))) || (((L->LINK->DISP) <= (32767)))) goto L_02c1;
#line 2649 "regression-compile-tmp/asems412.imp"
L_02c0:;
#line 2649 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2649 "regression-compile-tmp/asems412.imp"
L_02c1:;
                                                                //   2650              %FALSE %IF L_TYPE = REALS
#line 2650 "regression-compile-tmp/asems412.imp"
if (((L->TYPE) != (6))) goto L_02c2;
#line 2650 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2650 "regression-compile-tmp/asems412.imp"
L_02c2:;
                                                                //   2651              INVERT = INVERT!!6;  SWOPPED = SWOPPED!!1
#line 2651 "regression-compile-tmp/asems412.imp"
INVERT = ((INVERT) ^ (6));
#line 2651 "regression-compile-tmp/asems412.imp"
SWOPPED = ((SWOPPED) ^ (1));
                                                                //   2652              T = L;  L = R;  R = T
#line 2652 "regression-compile-tmp/asems412.imp"
T = *L;
#line 2652 "regression-compile-tmp/asems412.imp"
*L = *R;
#line 2652 "regression-compile-tmp/asems412.imp"
*R = T;
                                                                //   2653              R_LOP = 0
#line 2653 "regression-compile-tmp/asems412.imp"
R->LOP = 0;
                                                                //   2654              LOAD(L, ANY)
#line 2654 "regression-compile-tmp/asems412.imp"
LOAD(L, 45);
                                                                //   2655              LOAD(R, ANY0)
#line 2655 "regression-compile-tmp/asems412.imp"
LOAD(R, 46);
                                                                //   2656              %IF -X'8000' <= R_LINK_DISP <= X'7FFF' %START
#line 2656 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (R->LINK->DISP))) || (((R->LINK->DISP) > (32767)))) goto L_02c3;
                                                                //   2657                 %IF ARITH # 0 %THEN OP = CLHI %ELSE OP = CHI
#line 2657 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02c4;
#line 2657 "regression-compile-tmp/asems412.imp"
OP = 50432;
#line 2657 "regression-compile-tmp/asems412.imp"
goto L_02c5;
#line 2657 "regression-compile-tmp/asems412.imp"
L_02c4:;
#line 2657 "regression-compile-tmp/asems412.imp"
OP = 51456;
#line 2657 "regression-compile-tmp/asems412.imp"
L_02c5:;
                                                                //   2658                 RI2(OP,L_BASE,R_BASE,R_LINK_DISP)
#line 2658 "regression-compile-tmp/asems412.imp"
RI2(OP, L->BASE, R->BASE, R->LINK->DISP);
                                                                //   2659              %ELSE
#line 2659 "regression-compile-tmp/asems412.imp"
goto L_02c6;
#line 2659 "regression-compile-tmp/asems412.imp"
L_02c3:;
                                                                //   2660                 %IF ARITH # 0 %THEN OP = CLI %ELSE OP = CI
#line 2660 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02c7;
#line 2660 "regression-compile-tmp/asems412.imp"
OP = 62720;
#line 2660 "regression-compile-tmp/asems412.imp"
goto L_02c8;
#line 2660 "regression-compile-tmp/asems412.imp"
L_02c7:;
#line 2660 "regression-compile-tmp/asems412.imp"
OP = 63744;
#line 2660 "regression-compile-tmp/asems412.imp"
L_02c8:;
                                                                //   2661                 RI3(OP,L_BASE,R_BASE,R_LINK_DISP)
#line 2661 "regression-compile-tmp/asems412.imp"
RI3(OP, L->BASE, R->BASE, R->LINK->DISP);
                                                                //   2662              %FINISH
#line 2662 "regression-compile-tmp/asems412.imp"
L_02c6:;
                                                                //   2663              RELEASE(L_BASE)
#line 2663 "regression-compile-tmp/asems412.imp"
RELEASE(L->BASE);
                                                                //   2664              DROP(R_LINK)
#line 2664 "regression-compile-tmp/asems412.imp"
DROP(R->LINK);
                                                                //   2665              %TRUE
#line 2665 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //   2666           %END
#line 2666 "regression-compile-tmp/asems412.imp"
} // End of block CHANCED at level 4
                                                                //   2667           SWOPPED = 0;  SDISP = 0
#line 2667 "regression-compile-tmp/asems412.imp"
SWOPPED = 0;
#line 2667 "regression-compile-tmp/asems412.imp"
SDISP = 0;
                                                                //   2668           %IF LHS_TYPE = 0 %OR LHS_TYPE = STRING %START
#line 2668 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) == (0))) goto L_02c9;
#line 2668 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (4))) goto L_02ca;
#line 2668 "regression-compile-tmp/asems412.imp"
L_02c9:;
                                                                //   2669              COMPARE STRINGS(L, R);  %RETURN
#line 2669 "regression-compile-tmp/asems412.imp"
COMPARESTRINGS(L, R);
#line 2669 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2670           %FINISH
#line 2670 "regression-compile-tmp/asems412.imp"
L_02ca:;
                                                                //   2671           %IF ZERO(R) %START
#line 2671 "regression-compile-tmp/asems412.imp"
if (!(ZERO(R))) goto L_02cb;
                                                                //   2672              TEST ZERO(L);  %RETURN
#line 2672 "regression-compile-tmp/asems412.imp"
TESTZERO(L);
#line 2672 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2673           %FINISH
#line 2673 "regression-compile-tmp/asems412.imp"
L_02cb:;
                                                                //   2674           %IF ZERO(L) %START
#line 2674 "regression-compile-tmp/asems412.imp"
if (!(ZERO(L))) goto L_02cc;
                                                                //   2675              TEST ZERO(R);  INVERT = INVERT!!6;  %RETURN
#line 2675 "regression-compile-tmp/asems412.imp"
TESTZERO(R);
#line 2675 "regression-compile-tmp/asems412.imp"
INVERT = ((INVERT) ^ (6));
#line 2675 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2676           %FINISH
#line 2676 "regression-compile-tmp/asems412.imp"
L_02cc:;
                                                                //   2677           ARITH = NEXTSYMBOL
#line 2677 "regression-compile-tmp/asems412.imp"
ARITH = _imp_NEXTSYMBOL();
                                                                //   2678           ARITH = 0 %IF ARITH # '#' %AND ARITH # '=' %AND SYM # 'F'+32
#line 2678 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (35))) goto L_02cd;
#line 2678 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (61))) goto L_02cd;
#line 2678 "regression-compile-tmp/asems412.imp"
if (((SYM) == (102))) goto L_02cd;
#line 2678 "regression-compile-tmp/asems412.imp"
ARITH = 0;
#line 2678 "regression-compile-tmp/asems412.imp"
L_02cd:;
                                                                //   2679           %RETURN %IF CHANCED
#line 2679 "regression-compile-tmp/asems412.imp"
if (!(CHANCED())) goto L_02ce;
#line 2679 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2679 "regression-compile-tmp/asems412.imp"
L_02ce:;
                                                                //   2680           OPTIMISE(R);  OPTIMISE(L)
#line 2680 "regression-compile-tmp/asems412.imp"
OPTIMISE(R);
#line 2680 "regression-compile-tmp/asems412.imp"
OPTIMISE(L);
                                                                //   2681           COMPARE REALS(L ,R) %AND %RETURN %IF FLOATING(L) %OR FLOATING(R)
#line 2681 "regression-compile-tmp/asems412.imp"
if (FLOATING(L)) goto L_02cf;
#line 2681 "regression-compile-tmp/asems412.imp"
if (!(FLOATING(R))) goto L_02d0;
#line 2681 "regression-compile-tmp/asems412.imp"
L_02cf:;
#line 2681 "regression-compile-tmp/asems412.imp"
COMPAREREALS(L, R);
#line 2681 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2681 "regression-compile-tmp/asems412.imp"
L_02d0:;
                                                                //   2682           %IF CONST(L) %OR R_FORM = V IN R %OR L_TYPE = BYTE %C
#line 2682 "regression-compile-tmp/asems412.imp"
if (CONST(L)) goto L_02d1;
#line 2682 "regression-compile-tmp/asems412.imp"
if (((R->FORM) == (1))) goto L_02d1;
#line 2682 "regression-compile-tmp/asems412.imp"
if (((L->TYPE) == (2))) goto L_02d1;
#line 2682 "regression-compile-tmp/asems412.imp"
if (((R->LOP) == (0))) goto L_02d2;
#line 2682 "regression-compile-tmp/asems412.imp"
L_02d1:;
                                                                //   2683                        %OR R_LOP # 0 %START
                                                                //   2684              T = L;  L = R;  R = T
#line 2684 "regression-compile-tmp/asems412.imp"
T = *L;
#line 2684 "regression-compile-tmp/asems412.imp"
*L = *R;
#line 2684 "regression-compile-tmp/asems412.imp"
*R = T;
                                                                //   2685              INVERT = INVERT!!6;  SWOPPED = SWOPPED!!1
#line 2685 "regression-compile-tmp/asems412.imp"
INVERT = ((INVERT) ^ (6));
#line 2685 "regression-compile-tmp/asems412.imp"
SWOPPED = ((SWOPPED) ^ (1));
                                                                //   2686              %RETURN %IF CHANCED
#line 2686 "regression-compile-tmp/asems412.imp"
if (!(CHANCED())) goto L_02d3;
#line 2686 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2686 "regression-compile-tmp/asems412.imp"
L_02d3:;
                                                                //   2687           %FINISH
#line 2687 "regression-compile-tmp/asems412.imp"
L_02d2:;
                                                                //   2688           LOAD(L, ANY)
#line 2688 "regression-compile-tmp/asems412.imp"
LOAD(L, 45);
                                                                //   2689           %IF R_LOP # 0 %OR R_TYPE = BYTE %OR R_TYPE = UNSIGNED HALFWORD %C
#line 2689 "regression-compile-tmp/asems412.imp"
if (((R->LOP) != (0))) goto L_02d4;
#line 2689 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) == (2))) goto L_02d4;
#line 2689 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) == (255))) goto L_02d4;
#line 2689 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_02d5;
#line 2689 "regression-compile-tmp/asems412.imp"
if (((R->FORM) == (3))) goto L_02d4;
#line 2689 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (6))) goto L_02d5;
#line 2689 "regression-compile-tmp/asems412.imp"
L_02d4:;
                                                                //   2690              %OR (CONTROL&UNASS DIAG # 0 %AND (R_FORM=VINS %OR %C
                                                                //   2691                    R_FORM=AVINS)) %START
                                                                //   2692              LOAD(R, ANY)
#line 2692 "regression-compile-tmp/asems412.imp"
LOAD(R, 45);
                                                                //   2693           %FINISH
#line 2693 "regression-compile-tmp/asems412.imp"
L_02d5:;
                                                                //   2694           REDUCE(R) %IF R_FORM = AV IN REC
#line 2694 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (7))) goto L_02d6;
#line 2694 "regression-compile-tmp/asems412.imp"
REDUCE(R);
#line 2694 "regression-compile-tmp/asems412.imp"
L_02d6:;
                                                                //   2695           %IF (R_FORM = CONSTANT %OR R_FORM = AV IN S) %START
#line 2695 "regression-compile-tmp/asems412.imp"
if (((R->FORM) == (0))) goto L_02d7;
#line 2695 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (6))) goto L_02d8;
#line 2695 "regression-compile-tmp/asems412.imp"
L_02d7:;
                                                                //   2696              %IF -X'8000' <= R_DISP <= X'7FFF' %START
#line 2696 "regression-compile-tmp/asems412.imp"
if (((((-32768)) > (R->DISP))) || (((R->DISP) > (32767)))) goto L_02d9;
                                                                //   2697                 %IF ARITH # 0 %THEN OP = CLHI %ELSE OP = CHI
#line 2697 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02da;
#line 2697 "regression-compile-tmp/asems412.imp"
OP = 50432;
#line 2697 "regression-compile-tmp/asems412.imp"
goto L_02db;
#line 2697 "regression-compile-tmp/asems412.imp"
L_02da:;
#line 2697 "regression-compile-tmp/asems412.imp"
OP = 51456;
#line 2697 "regression-compile-tmp/asems412.imp"
L_02db:;
                                                                //   2698                 RI2(OP,L_BASE,R_BASE,R_DISP)
#line 2698 "regression-compile-tmp/asems412.imp"
RI2(OP, L->BASE, R->BASE, R->DISP);
                                                                //   2699              %ELSE
#line 2699 "regression-compile-tmp/asems412.imp"
goto L_02dc;
#line 2699 "regression-compile-tmp/asems412.imp"
L_02d9:;
                                                                //   2700                 %IF ARITH # 0 %THEN OP = CLI %ELSE OP = CI
#line 2700 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02dd;
#line 2700 "regression-compile-tmp/asems412.imp"
OP = 62720;
#line 2700 "regression-compile-tmp/asems412.imp"
goto L_02de;
#line 2700 "regression-compile-tmp/asems412.imp"
L_02dd:;
#line 2700 "regression-compile-tmp/asems412.imp"
OP = 63744;
#line 2700 "regression-compile-tmp/asems412.imp"
L_02de:;
                                                                //   2701                 RI3(OP,L_BASE,R_BASE,R_DISP)
#line 2701 "regression-compile-tmp/asems412.imp"
RI3(OP, L->BASE, R->BASE, R->DISP);
                                                                //   2702              %FINISH
#line 2702 "regression-compile-tmp/asems412.imp"
L_02dc:;
                                                                //   2703              KNOW(L_BASE, R_DISP, INTEGER) %IF R_FORM = CONSTANT %C
#line 2703 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (0))) goto L_02df;
#line 2703 "regression-compile-tmp/asems412.imp"
if (((ARITH) != (35))) goto L_02df;
#line 2703 "regression-compile-tmp/asems412.imp"
KNOW(L->BASE, R->DISP, 1);
#line 2703 "regression-compile-tmp/asems412.imp"
L_02df:;
                                                                //   2704                                          %AND ARITH = '#'
                                                                //   2705           %ELSE
#line 2705 "regression-compile-tmp/asems412.imp"
goto L_02e0;
#line 2705 "regression-compile-tmp/asems412.imp"
L_02d8:;
                                                                //   2706              ADDRESS(R)
#line 2706 "regression-compile-tmp/asems412.imp"
ADDRESS(R);
                                                                //   2707              %IF R_FORM = V IN R %START
#line 2707 "regression-compile-tmp/asems412.imp"
if (((R->FORM) != (1))) goto L_02e1;
                                                                //   2708                 %IF ARITH # 0 %THEN OP = CLR  %ELSE OP = CR
#line 2708 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02e2;
#line 2708 "regression-compile-tmp/asems412.imp"
OP = 1280;
#line 2708 "regression-compile-tmp/asems412.imp"
goto L_02e3;
#line 2708 "regression-compile-tmp/asems412.imp"
L_02e2:;
#line 2708 "regression-compile-tmp/asems412.imp"
OP = 2304;
#line 2708 "regression-compile-tmp/asems412.imp"
L_02e3:;
                                                                //   2709                 RR(OP, L_BASE, R_BASE)
#line 2709 "regression-compile-tmp/asems412.imp"
RR(OP, L->BASE, R->BASE);
                                                                //   2710              %ELSE
#line 2710 "regression-compile-tmp/asems412.imp"
goto L_02e4;
#line 2710 "regression-compile-tmp/asems412.imp"
L_02e1:;
                                                                //   2711                 %IF R_TYPE = BYTE %START
#line 2711 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) != (2))) goto L_02e5;
                                                                //   2712                    OP = CLB
#line 2712 "regression-compile-tmp/asems412.imp"
OP = 54272;
                                                                //   2713                 %ELSE %IF ARITH # 0
#line 2713 "regression-compile-tmp/asems412.imp"
goto L_02e6;
#line 2713 "regression-compile-tmp/asems412.imp"
L_02e5:;
#line 2713 "regression-compile-tmp/asems412.imp"
if (((ARITH) == (0))) goto L_02e7;
                                                                //   2714                    %IF R_TYPE = SHORT %THEN OP = CLH %ELSE OP = CL
#line 2714 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) != (3))) goto L_02e8;
#line 2714 "regression-compile-tmp/asems412.imp"
OP = 17664;
#line 2714 "regression-compile-tmp/asems412.imp"
goto L_02e9;
#line 2714 "regression-compile-tmp/asems412.imp"
L_02e8:;
#line 2714 "regression-compile-tmp/asems412.imp"
OP = 21760;
#line 2714 "regression-compile-tmp/asems412.imp"
L_02e9:;
                                                                //   2715                 %ELSE
#line 2715 "regression-compile-tmp/asems412.imp"
goto L_02e6;
#line 2715 "regression-compile-tmp/asems412.imp"
L_02e7:;
                                                                //   2716                    %IF R_TYPE = SHORT %THEN OP = CH %ELSE OP = C
#line 2716 "regression-compile-tmp/asems412.imp"
if (((R->TYPE) != (3))) goto L_02ea;
#line 2716 "regression-compile-tmp/asems412.imp"
OP = 18688;
#line 2716 "regression-compile-tmp/asems412.imp"
goto L_02eb;
#line 2716 "regression-compile-tmp/asems412.imp"
L_02ea:;
#line 2716 "regression-compile-tmp/asems412.imp"
OP = 22784;
#line 2716 "regression-compile-tmp/asems412.imp"
L_02eb:;
                                                                //   2717                 %FINISH
#line 2717 "regression-compile-tmp/asems412.imp"
L_02e6:;
                                                                //   2718                 RX(OP, L_BASE, R_BASE, R_DISP)
#line 2718 "regression-compile-tmp/asems412.imp"
RX(OP, L->BASE, R->BASE, R->DISP);
                                                                //   2719              %FINISH
#line 2719 "regression-compile-tmp/asems412.imp"
L_02e4:;
                                                                //   2720           %FINISH
#line 2720 "regression-compile-tmp/asems412.imp"
L_02e0:;
                                                                //   2721           RELEASE(L_BASE)
#line 2721 "regression-compile-tmp/asems412.imp"
RELEASE(L->BASE);
                                                                //   2722        %END
#line 2722 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COMPARE at level 3
                                                                //   2723        %ROUTINE CLAIM WSP(%INTEGERNAME SIZE)
#line 2723 "regression-compile-tmp/asems412.imp"
void CLAIMWSP( int /*name*/*SIZE )
#line 2723 "regression-compile-tmp/asems412.imp"
{
                                                                //   2724           SIZE = (WDISP+(REGLEN-1))&(\(REGLEN-1));  %RETURN %IF SIZE = 0
#line 2724 "regression-compile-tmp/asems412.imp"
*SIZE = ((((WDISP) + ((int)(3)))) & ((~(3))));
#line 2724 "regression-compile-tmp/asems412.imp"
if (((*SIZE) != (0))) goto L_02ec;
#line 2724 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2724 "regression-compile-tmp/asems412.imp"
L_02ec:;
                                                                //   2725           WDISP = 0
#line 2725 "regression-compile-tmp/asems412.imp"
WDISP = 0;
                                                                //   2726           RI2(AHI, WSP, 0, SIZE) %IF SIZE > 15
#line 2726 "regression-compile-tmp/asems412.imp"
if (((*SIZE) <= (15))) goto L_02ed;
#line 2726 "regression-compile-tmp/asems412.imp"
RI2(51712, 43, 0, *SIZE);
#line 2726 "regression-compile-tmp/asems412.imp"
L_02ed:;
                                                                //   2727        %END
#line 2727 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CLAIMWSP at level 3
                                                                //   2728        %ROUTINE RELEASE WSP(%INTEGER SIZE)
#line 2728 "regression-compile-tmp/asems412.imp"
void RELEASEWSP( int SIZE )
#line 2728 "regression-compile-tmp/asems412.imp"
{
                                                                //   2729           WDISP = SIZE
#line 2729 "regression-compile-tmp/asems412.imp"
WDISP = SIZE;
                                                                //   2730           RI2(SHI, WSP, 0, WDISP) %IF WDISP > 15
#line 2730 "regression-compile-tmp/asems412.imp"
if (((WDISP) <= (15))) goto L_02ee;
#line 2730 "regression-compile-tmp/asems412.imp"
RI2(51968, 43, 0, WDISP);
#line 2730 "regression-compile-tmp/asems412.imp"
L_02ee:;
                                                                //   2731        %END
#line 2731 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RELEASEWSP at level 3
                                                                //   2732        %ROUTINE HEADER(%RECORD(VARFM)%NAME V)
#line 2732 "regression-compile-tmp/asems412.imp"
void HEADER(  VARFM /*name*/*V )
#line 2732 "regression-compile-tmp/asems412.imp"
{
                                                                //   2733           LIMEN = CA-2
#line 2733 "regression-compile-tmp/asems412.imp"
LIMEN = (((int)(CA)) - (2));
                                                                //   2734           FRAME = 11*REGLEN %IF FRAME < 11*REGLEN
#line 2734 "regression-compile-tmp/asems412.imp"
if (((FRAME) >= ((((int)(11)) * (4))))) goto L_02ef;
#line 2734 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(11)) * (4));
#line 2734 "regression-compile-tmp/asems412.imp"
L_02ef:;
                                                                //   2735           DEFINE TAG(V_DISP&X'FFF') %UNLESS V == BEGIN
#line 2735 "regression-compile-tmp/asems412.imp"
if (((V) == (&BEGIN))) goto L_02f0;
#line 2735 "regression-compile-tmp/asems412.imp"
DEFINETAG(((V->DISP) & (4095)));
#line 2735 "regression-compile-tmp/asems412.imp"
L_02f0:;
                                                                //   2736           RX(STM, P2, WSP, 0)
#line 2736 "regression-compile-tmp/asems412.imp"
RX(53248, 6, 43, 0);
                                                                //   2737           RR(LR , LOCAL, WSP)
#line 2737 "regression-compile-tmp/asems412.imp"
RR(2048, LOCAL, 43);
                                                                //   2738           %IF CONTROL&(UNASS DIAG!STKDIAG) # 0 %START
#line 2738 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (((32) | (2))))) == (0))) goto L_02f1;
                                                                //   2739              %IF CONTROL&UNASS DIAG # 0 %START
#line 2739 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_02f2;
                                                                //   2740                 PERM(EXBUNASS);  DUMP(FRAME)
#line 2740 "regression-compile-tmp/asems412.imp"
PERM(4370);
#line 2740 "regression-compile-tmp/asems412.imp"
DUMP(FRAME);
                                                                //   2741              %ELSE
#line 2741 "regression-compile-tmp/asems412.imp"
goto L_02f3;
#line 2741 "regression-compile-tmp/asems412.imp"
L_02f2:;
                                                                //   2742                 PERM(EXB)
#line 2742 "regression-compile-tmp/asems412.imp"
PERM(275);
                                                                //   2743              %FINISH
#line 2743 "regression-compile-tmp/asems412.imp"
L_02f3:;
                                                                //   2744           %ELSE
#line 2744 "regression-compile-tmp/asems412.imp"
goto L_02f4;
#line 2744 "regression-compile-tmp/asems412.imp"
L_02f1:;
                                                                //   2745              DUMP(AHI+ACTUAL(WSP)<<4)
#line 2745 "regression-compile-tmp/asems412.imp"
DUMP(((51712) + ((int)(((ACTUAL[43]) << (4))))));
                                                                //   2746           %FINISH
#line 2746 "regression-compile-tmp/asems412.imp"
L_02f4:;
                                                                //   2747           SIZE PATCH = CA
#line 2747 "regression-compile-tmp/asems412.imp"
SIZEPATCH = CA;
                                                                //   2748           DUMP(0)
#line 2748 "regression-compile-tmp/asems412.imp"
DUMP(0);
                                                                //   2749        %END
#line 2749 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block HEADER at level 3
                                                                //   2750        %ROUTINE RETURN
#line 2750 "regression-compile-tmp/asems412.imp"
void RETURN( void )
#line 2750 "regression-compile-tmp/asems412.imp"
{
                                                                //   2751           %RETURN %IF UNCOND JUMP = CA
#line 2751 "regression-compile-tmp/asems412.imp"
if (((UNCONDJUMP) != (CA))) goto L_02f5;
#line 2751 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2751 "regression-compile-tmp/asems412.imp"
L_02f5:;
                                                                //   2752           RX(LM, WSP, LOCAL, 2*REGLEN)
#line 2752 "regression-compile-tmp/asems412.imp"
RX(53504, 43, LOCAL, (((int)(2)) * (4)));
                                                                //   2753           CLAIM(LINK);  RR(BFCR, 0, LINK)
#line 2753 "regression-compile-tmp/asems412.imp"
CLAIM(12);
#line 2753 "regression-compile-tmp/asems412.imp"
RR(768, 0, 12);
                                                                //   2754           UNCOND JUMP = CA
#line 2754 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = CA;
                                                                //   2755        %END
#line 2755 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RETURN at level 3
                                                                //   2756        %ROUTINE CALL(%RECORD(STACKFM)%NAME V)
#line 2756 "regression-compile-tmp/asems412.imp"
void CALL(  STACKFM /*name*/*V )
#line 2756 "regression-compile-tmp/asems412.imp"
{
                                                                //   2757           %SWITCH B(0:15)
#line 2757 "regression-compile-tmp/asems412.imp"
static int sw8_B_idx;
static const void * /*SWITCH*/ sw8_B[16] = { &&sw8_B_0, &&sw8_B_1, &&sw8_B_2, &&sw8_B_3, &&sw8_B_4, &&sw8_B_5, &&sw8_B_6, &&sw8_B_7, &&sw8_B_8, &&sw8_B_9, &&sw8_B_10, &&sw8_B_11, &&sw8_B_12, &&sw8_B_13, &&sw8_B_14, &&sw8_B_15,  };
                                                                //   2758           %OWNINTEGER INT G = 0, FRACPT G = 0
#line 2758 "regression-compile-tmp/asems412.imp"
static int INTG = 0;
#line 2758 "regression-compile-tmp/asems412.imp"
static int FRACPTG = 0;
                                                                //   2759           %INTEGER WORK, AWORK, REG, AREG
#line 2759 "regression-compile-tmp/asems412.imp"
int WORK;
#line 2759 "regression-compile-tmp/asems412.imp"
int AWORK;
#line 2759 "regression-compile-tmp/asems412.imp"
int REG;
#line 2759 "regression-compile-tmp/asems412.imp"
int AREG;
                                                                //   2760           %INTEGER ADDR, T, L
#line 2760 "regression-compile-tmp/asems412.imp"
int ADDR;
#line 2760 "regression-compile-tmp/asems412.imp"
int T;
#line 2760 "regression-compile-tmp/asems412.imp"
int L;
                                                                //   2761           %INTEGERFN SET(%INTEGER H, L)
#line 2761 "regression-compile-tmp/asems412.imp"
int SET( int H, int L )
#line 2761 "regression-compile-tmp/asems412.imp"
{
                                                                //   2762              GFIX(4)
#line 2762 "regression-compile-tmp/asems412.imp"
GFIX(4);
                                                                //   2763              GHALF(H);  GHALF(L)
#line 2763 "regression-compile-tmp/asems412.imp"
GHALF(H);
#line 2763 "regression-compile-tmp/asems412.imp"
GHALF(L);
                                                                //   2764              %RESULT = GA-4
#line 2764 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return (((int)(GA)) - (4));
                                                                //   2765           %END
#line 2765 "regression-compile-tmp/asems412.imp"
} // End of block SET at level 4
                                                                //   2766           ADDR = V_DISP
#line 2766 "regression-compile-tmp/asems412.imp"
ADDR = V->DISP;
                                                                //   2767           %IF ADDR < 0 %START
#line 2767 "regression-compile-tmp/asems412.imp"
if (((ADDR) >= (0))) goto L_02f6;
                                                                //   2768              PERM(X'1EF00'-ADDR)
#line 2768 "regression-compile-tmp/asems412.imp"
PERM((((int)(126720)) - (ADDR)));
                                                                //   2769           %ELSE
#line 2769 "regression-compile-tmp/asems412.imp"
goto L_02f7;
#line 2769 "regression-compile-tmp/asems412.imp"
L_02f6:;
                                                                //   2770              %IF V_BASE = LINK %START;      ! INTRINSIC
#line 2770 "regression-compile-tmp/asems412.imp"
if (((V->BASE) != (12))) goto L_02f8;
                                                                //   2771                 V_DV = 0;  DROP(V)
#line 2771 "regression-compile-tmp/asems412.imp"
V->DV = 0;
#line 2771 "regression-compile-tmp/asems412.imp"
DROP(V);
                                                                //   2772                 SET LHS
#line 2772 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   2773                 L = 0;  T = V_DISP;  SYM = 0
#line 2773 "regression-compile-tmp/asems412.imp"
L = 0;
#line 2773 "regression-compile-tmp/asems412.imp"
T = V->DISP;
#line 2773 "regression-compile-tmp/asems412.imp"
SYM = 0;
                                                                //   2774                 ->B(T)
#line 2774 "regression-compile-tmp/asems412.imp"
sw8_B_idx = T; if ((0 <= sw8_B_idx) && (sw8_B_idx <= 15)) goto *sw8_B[sw8_B_idx]; else {
   /*_imp_signal(8, 2, sw8_B_idx);*/
   fprintf(stderr, "%%SWITCH index B(%d) not in range 0:15 at %s:%d\n",
           sw8_B_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   2775  B(12):! FRACPT
#line 2775 "regression-compile-tmp/asems412.imp"
sw8_B_12:;
                                                                //   2776                 LOAD(LHS, ANYF)
#line 2776 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 47);
                                                                //   2777                 REG = LHS_BASE;  AREG = ACTUAL(REG)
#line 2777 "regression-compile-tmp/asems412.imp"
REG = LHS->BASE;
#line 2777 "regression-compile-tmp/asems412.imp"
AREG = ACTUAL[REG];
                                                                //   2778                 WORK = FPR;      AWORK = ACTUAL(WORK)
#line 2778 "regression-compile-tmp/asems412.imp"
WORK = FPR();
#line 2778 "regression-compile-tmp/asems412.imp"
AWORK = ACTUAL[WORK];
                                                                //   2779                 DUMP(LER+AWORK<<4+AREG)
#line 2779 "regression-compile-tmp/asems412.imp"
DUMP((((int)(((10240) + ((int)(((AWORK) << (4))))))) + (AREG)));
                                                                //   2780                 %IF FRACPT G = 0 %START
#line 2780 "regression-compile-tmp/asems412.imp"
if (((FRACPTG) != (0))) goto L_02f9;
                                                                //   2781                    FRACPT G = SET(X'4600', 0);  ! UNNORM. ZERO
#line 2781 "regression-compile-tmp/asems412.imp"
FRACPTG = SET(17920, 0);
                                                                //   2782                    ADDR = SET(X'4110', 0);! 1.0
#line 2782 "regression-compile-tmp/asems412.imp"
ADDR = SET(16656, 0);
                                                                //   2783                 %FINISH
#line 2783 "regression-compile-tmp/asems412.imp"
L_02f9:;
                                                                //   2784                 DUMP(AE+AWORK<<4+ACTUAL(GLA));  DUMP(FRACPT G)
#line 2784 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((27136) + ((int)(((AWORK) << (4))))))) + (ACTUAL[42])));
#line 2784 "regression-compile-tmp/asems412.imp"
DUMP(FRACPTG);
                                                                //   2785                 DUMP(LER+AWORK<<4+AWORK)
#line 2785 "regression-compile-tmp/asems412.imp"
DUMP((((int)(((10240) + ((int)(((AWORK) << (4))))))) + (AWORK)));
                                                                //   2786                 DUMP(SER+AREG<<4+AWORK)
#line 2786 "regression-compile-tmp/asems412.imp"
DUMP((((int)(((11008) + ((int)(((AREG) << (4))))))) + (AWORK)));
                                                                //   2787                 DUMP(X'2313');     ! BNMFS .+3
#line 2787 "regression-compile-tmp/asems412.imp"
DUMP(8979);
                                                                //   2788                 DUMP(AE+AREG<<4+ACTUAL(GLA));  DUMP(FRACPT G+4)
#line 2788 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((27136) + ((int)(((AREG) << (4))))))) + (ACTUAL[42])));
#line 2788 "regression-compile-tmp/asems412.imp"
DUMP((((int)(FRACPTG)) + (4)));
                                                                //   2789                 FORGET(REG);  FORGET(WORK)
#line 2789 "regression-compile-tmp/asems412.imp"
FORGET(REG);
#line 2789 "regression-compile-tmp/asems412.imp"
FORGET(WORK);
                                                                //   2790                 %RETURN
#line 2790 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2791  B(11):! INT
#line 2791 "regression-compile-tmp/asems412.imp"
sw8_B_11:;
                                                                //   2792                 INT G = SET(X'4080', 0) %IF INT G = 0;!  =0.5
#line 2792 "regression-compile-tmp/asems412.imp"
if (((INTG) != (0))) goto L_02fa;
#line 2792 "regression-compile-tmp/asems412.imp"
INTG = SET(16512, 0);
#line 2792 "regression-compile-tmp/asems412.imp"
L_02fa:;
                                                                //   2793                 STACK(INT G, GLA, REALS, 1, 0, 0, 0);  OPERATE(ADD)
#line 2793 "regression-compile-tmp/asems412.imp"
STACK(INTG, 42, 6, 1, 0, 0, 0);
#line 2793 "regression-compile-tmp/asems412.imp"
OPERATE(3);
                                                                //   2794                 SET LHS
#line 2794 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   2795  B(10):! INTPT
#line 2795 "regression-compile-tmp/asems412.imp"
sw8_B_10:;
                                                                //   2796                 LOAD(LHS, ANYF)
#line 2796 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 47);
                                                                //   2797                 L = GPR(0);   RR(FXR, L, LHS_BASE)
#line 2797 "regression-compile-tmp/asems412.imp"
L = GPR(0);
#line 2797 "regression-compile-tmp/asems412.imp"
RR(11776, L, LHS->BASE);
                                                                //   2798                 CLAIM(L);  LHS_BASE = L;  LHS_TYPE = INTEGER
#line 2798 "regression-compile-tmp/asems412.imp"
CLAIM(L);
#line 2798 "regression-compile-tmp/asems412.imp"
LHS->BASE = L;
#line 2798 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 1;
                                                                //   2799                 %RETURN
#line 2799 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2800  B(0):! ADDR
#line 2800 "regression-compile-tmp/asems412.imp"
sw8_B_0:;
                                                                //   2801                 AMAP(LHS);  %RETURN
#line 2801 "regression-compile-tmp/asems412.imp"
AMAP(LHS);
#line 2801 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2802  B(7):! LENGTH
#line 2802 "regression-compile-tmp/asems412.imp"
sw8_B_7:;
                                                                //   2803                 CSTACK(0)
#line 2803 "regression-compile-tmp/asems412.imp"
CSTACK(0);
                                                                //   2804  B(8):! CHARNO
#line 2804 "regression-compile-tmp/asems412.imp"
sw8_B_8:;
                                                                //   2805                 SET BOTH
#line 2805 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   2806                 LHS_TYPE = BYTE;  LHS_LENGTH = 1;  ARRAY REF
#line 2806 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 2;
#line 2806 "regression-compile-tmp/asems412.imp"
LHS->LENGTH = 1;
#line 2806 "regression-compile-tmp/asems412.imp"
ARRAYREF();
                                                                //   2807                 %RETURN
#line 2807 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2808  B(4):! STRING
#line 2808 "regression-compile-tmp/asems412.imp"
sw8_B_4:;
                                                                //   2809                 L = 255
#line 2809 "regression-compile-tmp/asems412.imp"
L = 255;
                                                                //   2810  B(1):! INTEGER
#line 2810 "regression-compile-tmp/asems412.imp"
sw8_B_1:;
                                                                //   2811  B(2):! BYTEINTEGER
#line 2811 "regression-compile-tmp/asems412.imp"
sw8_B_2:;
                                                                //   2812  B(3):! SHORTINTEGER
#line 2812 "regression-compile-tmp/asems412.imp"
sw8_B_3:;
                                                                //   2813  B(5):! RECORD
#line 2813 "regression-compile-tmp/asems412.imp"
sw8_B_5:;
                                                                //   2814  B(6):! REAL
#line 2814 "regression-compile-tmp/asems412.imp"
sw8_B_6:;
                                                                //   2815                 VMAP(LHS);  LHS_TYPE = T;  LHS_LENGTH = L
#line 2815 "regression-compile-tmp/asems412.imp"
VMAP(LHS);
#line 2815 "regression-compile-tmp/asems412.imp"
LHS->TYPE = T;
#line 2815 "regression-compile-tmp/asems412.imp"
LHS->LENGTH = L;
                                                                //   2816                 %RETURN
#line 2816 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2817  B(9):! REM
#line 2817 "regression-compile-tmp/asems412.imp"
sw8_B_9:;
                                                                //   2818                 SET BOTH
#line 2818 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   2819                 OPERATE(REM);  %RETURN
#line 2819 "regression-compile-tmp/asems412.imp"
OPERATE(17);
#line 2819 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2820  B(13):! READSYMBOL
#line 2820 "regression-compile-tmp/asems412.imp"
sw8_B_13:;
                                                                //   2821                 LIMEN = CA;            !SPECIALLY HERE
#line 2821 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
                                                                //   2822                 PERM(RSYM);  CLAIM(R1)
#line 2822 "regression-compile-tmp/asems412.imp"
PERM(126734);
#line 2822 "regression-compile-tmp/asems412.imp"
CLAIM(2);
                                                                //   2823                 SSET(R1, 0, V IN R, 0)
#line 2823 "regression-compile-tmp/asems412.imp"
SSET(2, 0, 1, 0);
                                                                //   2824                 ASSIGN(1);  %RETURN
#line 2824 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
#line 2824 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2825  B(14):! TOSTRING
#line 2825 "regression-compile-tmp/asems412.imp"
sw8_B_14:;
                                                                //   2826                 CSTACK(255);  OPERATE(AND)
#line 2826 "regression-compile-tmp/asems412.imp"
CSTACK(255);
#line 2826 "regression-compile-tmp/asems412.imp"
OPERATE(8);
                                                                //   2827                 CSTACK(256);  OPERATE(ADD)
#line 2827 "regression-compile-tmp/asems412.imp"
CSTACK(256);
#line 2827 "regression-compile-tmp/asems412.imp"
OPERATE(3);
                                                                //   2828                 SET LHS
#line 2828 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   2829                 %IF CONST(LHS) %START
#line 2829 "regression-compile-tmp/asems412.imp"
if (!(CONST(LHS))) goto L_02fb;
                                                                //   2830                    GFIX(2);  ADDR = GA;  GHALF(LHS_DISP)
#line 2830 "regression-compile-tmp/asems412.imp"
GFIX(2);
#line 2830 "regression-compile-tmp/asems412.imp"
ADDR = GA;
#line 2830 "regression-compile-tmp/asems412.imp"
GHALF(LHS->DISP);
                                                                //   2831                    LHS_TYPE = STRING;  LHS_FORM = V IN S
#line 2831 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 4;
#line 2831 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
                                                                //   2832                    LHS_BASE = GLA;  LHS_DISP = ADDR
#line 2832 "regression-compile-tmp/asems412.imp"
LHS->BASE = 42;
#line 2832 "regression-compile-tmp/asems412.imp"
LHS->DISP = ADDR;
                                                                //   2833                 %ELSE
#line 2833 "regression-compile-tmp/asems412.imp"
goto L_02fc;
#line 2833 "regression-compile-tmp/asems412.imp"
L_02fb:;
                                                                //   2834                    SSTACK(LHS);  SET BOTH
#line 2834 "regression-compile-tmp/asems412.imp"
SSTACK(LHS);
#line 2834 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   2835                    LHS_LOP = 0;  RELEASE(LHS_BASE)
#line 2835 "regression-compile-tmp/asems412.imp"
LHS->LOP = 0;
#line 2835 "regression-compile-tmp/asems412.imp"
RELEASE(LHS->BASE);
                                                                //   2836                    FRAME = (FRAME+1)&(\1)
#line 2836 "regression-compile-tmp/asems412.imp"
FRAME = (((((int)(FRAME)) + (1))) & ((~(1))));
                                                                //   2837                    LHS_TYPE = SHORT;  LHS_FORM = V IN S
#line 2837 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 3;
#line 2837 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
                                                                //   2838                    LHS_BASE = LOCAL;  LHS_DISP = FRAME
#line 2838 "regression-compile-tmp/asems412.imp"
LHS->BASE = LOCAL;
#line 2838 "regression-compile-tmp/asems412.imp"
LHS->DISP = FRAME;
                                                                //   2839                    ASSIGN(1)
#line 2839 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
                                                                //   2840                    SSET(LOCAL, FRAME, V IN S, 0);  RHS_TYPE = STRING
#line 2840 "regression-compile-tmp/asems412.imp"
SSET(LOCAL, FRAME, 3, 0);
#line 2840 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 4;
                                                                //   2841                    FRAME = FRAME+2
#line 2841 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) + (2));
                                                                //   2842                 %FINISH
#line 2842 "regression-compile-tmp/asems412.imp"
L_02fc:;
                                                                //   2843                 %RETURN
#line 2843 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2844  B(15):! SVC(N, P)
#line 2844 "regression-compile-tmp/asems412.imp"
sw8_B_15:;
                                                                //   2845                 SET BOTH;  STP = STP-2
#line 2845 "regression-compile-tmp/asems412.imp"
SETBOTH();
#line 2845 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   2846                 REG = 0;  WORK = LHS_DISP
#line 2846 "regression-compile-tmp/asems412.imp"
REG = 0;
#line 2846 "regression-compile-tmp/asems412.imp"
WORK = LHS->DISP;
                                                                //   2847                 %UNLESS CONST(LHS) %START
#line 2847 "regression-compile-tmp/asems412.imp"
if (CONST(LHS)) goto L_02fd;
                                                                //   2848                    LOAD(LHS, ANY0);  WORK = 0;  REG = LHS_BASE
#line 2848 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 46);
#line 2848 "regression-compile-tmp/asems412.imp"
WORK = 0;
#line 2848 "regression-compile-tmp/asems412.imp"
REG = LHS->BASE;
                                                                //   2849                 %FINISH
#line 2849 "regression-compile-tmp/asems412.imp"
L_02fd:;
                                                                //   2850                 ADDRESS(RHS)
#line 2850 "regression-compile-tmp/asems412.imp"
ADDRESS(RHS);
                                                                //   2851                 RX(LME, FPR0, RHS_BASE, RHS_DISP)
#line 2851 "regression-compile-tmp/asems412.imp"
RX(29184, 13, RHS->BASE, RHS->DISP);
                                                                //   2852                 RX(SVC, 0, REG, WORK)
#line 2852 "regression-compile-tmp/asems412.imp"
RX(57600, 0, REG, WORK);
                                                                //   2853                 CLAIM(RHS_BASE)
#line 2853 "regression-compile-tmp/asems412.imp"
CLAIM(RHS->BASE);
                                                                //   2854                 RX(STME, FPR0, RHS_BASE, RHS_DISP)
#line 2854 "regression-compile-tmp/asems412.imp"
RX(28928, 13, RHS->BASE, RHS->DISP);
                                                                //   2855                 DROP(RHS);  DROP(LHS)
#line 2855 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 2855 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2856                 LIMEN = CA;   !FORGET EVERYTHING
#line 2856 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
                                                                //   2857                 %RETURN
#line 2857 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //   2858              %FINISH
#line 2858 "regression-compile-tmp/asems412.imp"
L_02f8:;
                                                                //   2859              HAZARD ALL
#line 2859 "regression-compile-tmp/asems412.imp"
HAZARDALL();
                                                                //   2860              %IF ADDR&X'4000' = 0 %START;   ! PARAMETER
#line 2860 "regression-compile-tmp/asems412.imp"
if (((((ADDR) & (16384))) != (0))) goto L_02fe;
                                                                //   2861                 ADDR = NEW TAG;  DEFINE REFERENCE(ADDR, R REF)
#line 2861 "regression-compile-tmp/asems412.imp"
ADDR = NEWTAG();
#line 2861 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(ADDR, 4);
                                                                //   2862                 RX(LA, LINK, CODE, 0);! RETURN ADDRESS
#line 2862 "regression-compile-tmp/asems412.imp"
RX(58880, 12, 44, 0);
                                                                //   2863                 RX(STM, P2, WSP, 0)
#line 2863 "regression-compile-tmp/asems412.imp"
RX(53248, 6, 43, 0);
                                                                //   2864                 RX(LW, R2, V_BASE, V_DISP)
#line 2864 "regression-compile-tmp/asems412.imp"
RX(22528, 3, V->BASE, V->DISP);
                                                                //   2865                 RX(LW, R3, V_BASE, V_DISP+REGLEN)
#line 2865 "regression-compile-tmp/asems412.imp"
RX(22528, 4, V->BASE, (((int)(V->DISP)) + (4)));
                                                                //   2866                 CLAIM(R2);  RX(LM, R9, R2, 4*REGLEN)
#line 2866 "regression-compile-tmp/asems412.imp"
CLAIM(3);
#line 2866 "regression-compile-tmp/asems412.imp"
RX(53504, 8, 3, (((int)(4)) * (4)));
                                                                //   2867                 CLAIM(R3);  RX(BAL, LINK, R3, 4)
#line 2867 "regression-compile-tmp/asems412.imp"
CLAIM(4);
#line 2867 "regression-compile-tmp/asems412.imp"
RX(16640, 12, 4, 4);
                                                                //   2868                 DEFINE TAG(ADDR)
#line 2868 "regression-compile-tmp/asems412.imp"
DEFINETAG(ADDR);
                                                                //   2869              %ELSE
#line 2869 "regression-compile-tmp/asems412.imp"
goto L_02ff;
#line 2869 "regression-compile-tmp/asems412.imp"
L_02fe:;
                                                                //   2870                 DEFINE REFERENCE(ADDR&X'FFF', R REF)
#line 2870 "regression-compile-tmp/asems412.imp"
DEFINEREFERENCE(((ADDR) & (4095)), 4);
                                                                //   2871                 RX(BAL, LINK, CODE, ADDR&X'FFF')
#line 2871 "regression-compile-tmp/asems412.imp"
RX(16640, 12, 44, ((ADDR) & (4095)));
                                                                //   2872              %FINISH
#line 2872 "regression-compile-tmp/asems412.imp"
L_02ff:;
                                                                //   2873              LIMEN = CA-1
#line 2873 "regression-compile-tmp/asems412.imp"
LIMEN = (((int)(CA)) - (1));
                                                                //   2874           %FINISH
#line 2874 "regression-compile-tmp/asems412.imp"
L_02f7:;
                                                                //   2875           DROP(V) %IF V_TYPE = 0
#line 2875 "regression-compile-tmp/asems412.imp"
if (((V->TYPE) != (0))) goto L_0300;
#line 2875 "regression-compile-tmp/asems412.imp"
DROP(V);
#line 2875 "regression-compile-tmp/asems412.imp"
L_0300:;
                                                                //   2876        %END
#line 2876 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CALL at level 3
                                                                //   2877        %ROUTINE FOR
#line 2877 "regression-compile-tmp/asems412.imp"
void FOR( void )
#line 2877 "regression-compile-tmp/asems412.imp"
{
                                                                //   2878           %RECORD(STACKFM)%NAME CV, IV, INC, FV
#line 2878 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*CV;
#line 2878 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*IV;
#line 2878 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*INC;
#line 2878 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*FV;
                                                                //   2879           %INTEGER LAB, REG, SPECIAL
#line 2879 "regression-compile-tmp/asems412.imp"
int LAB;
#line 2879 "regression-compile-tmp/asems412.imp"
int REG;
#line 2879 "regression-compile-tmp/asems412.imp"
int SPECIAL;
                                                                //   2880           %ROUTINE  STAB(%RECORD(STACKFM)%NAME  V,  %INTEGER  TYPE)
#line 2880 "regression-compile-tmp/asems412.imp"
void STAB(  STACKFM /*name*/*V, int TYPE )
#line 2880 "regression-compile-tmp/asems412.imp"
{
                                                                //   2881              %INTEGER T, R
#line 2881 "regression-compile-tmp/asems412.imp"
int T;
#line 2881 "regression-compile-tmp/asems412.imp"
int R;
                                                                //   2882              %RETURN %IF CONST(V)
#line 2882 "regression-compile-tmp/asems412.imp"
if (!(CONST(V))) goto L_0301;
#line 2882 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 2882 "regression-compile-tmp/asems412.imp"
L_0301:;
                                                                //   2883              LOAD(V, ANY);  R = V_BASE
#line 2883 "regression-compile-tmp/asems412.imp"
LOAD(V, 45);
#line 2883 "regression-compile-tmp/asems412.imp"
R = V->BASE;
                                                                //   2884              T = TEMP;  RX(ST, R, LOCAL, T)
#line 2884 "regression-compile-tmp/asems412.imp"
T = TEMP();
#line 2884 "regression-compile-tmp/asems412.imp"
RX(20480, R, LOCAL, T);
                                                                //   2885              RELEASE(R)
#line 2885 "regression-compile-tmp/asems412.imp"
RELEASE(R);
                                                                //   2886              V_BASE = LOCAL;  V_DISP = T
#line 2886 "regression-compile-tmp/asems412.imp"
V->BASE = LOCAL;
#line 2886 "regression-compile-tmp/asems412.imp"
V->DISP = T;
                                                                //   2887              V_TYPE = TYPE;  V_FORM = V IN S
#line 2887 "regression-compile-tmp/asems412.imp"
V->TYPE = TYPE;
#line 2887 "regression-compile-tmp/asems412.imp"
V->FORM = 3;
                                                                //   2888              REMEMBER(R, V)
#line 2888 "regression-compile-tmp/asems412.imp"
REMEMBER(R, V);
                                                                //   2889           %END
#line 2889 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block STAB at level 4
                                                                //   2890           %PREDICATE  CHECK REQD
#line 2890 "regression-compile-tmp/asems412.imp"
int /*Boolean*/ CHECKREQD( void )
#line 2890 "regression-compile-tmp/asems412.imp"
{
                                                                //   2891           %INTEGER I
#line 2891 "regression-compile-tmp/asems412.imp"
int I;
                                                                //   2892              %TRUE %UNLESS CONST(FV) %AND CONST(IV) %AND CONST(INC)
#line 2892 "regression-compile-tmp/asems412.imp"
if (!(CONST(FV))) goto L_0302;
#line 2892 "regression-compile-tmp/asems412.imp"
if (!(CONST(IV))) goto L_0302;
#line 2892 "regression-compile-tmp/asems412.imp"
if (CONST(INC)) goto L_0303;
#line 2892 "regression-compile-tmp/asems412.imp"
L_0302:;
#line 2892 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
#line 2892 "regression-compile-tmp/asems412.imp"
L_0303:;
                                                                //   2893              %IF INC_DISP # 0 %START
#line 2893 "regression-compile-tmp/asems412.imp"
if (((INC->DISP) == (0))) goto L_0304;
                                                                //   2894                 I = (FV_DISP - IV_DISP)//INC_DISP + 1
#line 2894 "regression-compile-tmp/asems412.imp"
I = ((((long)((long)(((((int)(FV->DISP)) - (IV->DISP)))) / (long)((int)(_Z(INC->DISP)))))) + (1));
                                                                //   2895                 %FALSE %IF I >= 0 %AND IV_DISP + (I-1)*INC_DISP = FV_DISP
#line 2895 "regression-compile-tmp/asems412.imp"
if (((I) < (0))) goto L_0305;
#line 2895 "regression-compile-tmp/asems412.imp"
if (((((IV->DISP) + ((int)((((int)((((int)(I)) - (1)))) * (INC->DISP)))))) != (FV->DISP))) goto L_0305;
#line 2895 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 2895 "regression-compile-tmp/asems412.imp"
L_0305:;
                                                                //   2896              %FINISH
#line 2896 "regression-compile-tmp/asems412.imp"
L_0304:;
                                                                //   2897              ABORT(-12);    ! ...FAULTY, CONSTANT, %FOR PARAMETERS
#line 2897 "regression-compile-tmp/asems412.imp"
ABORT((-12));
                                                                //   2898              %TRUE;         ! ...INCLUDE RUN-TIME CHECK FOR SAFETY
#line 2898 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //   2899           %END
#line 2899 "regression-compile-tmp/asems412.imp"
} // End of block CHECKREQD at level 4
                                                                //   2900           %ROUTINE  SET(%RECORD(STACKFM)%NAME  V, %INTEGER  REG)
#line 2900 "regression-compile-tmp/asems412.imp"
void SET(  STACKFM /*name*/*V, int REG )
#line 2900 "regression-compile-tmp/asems412.imp"
{
                                                                //   2901           %RECORD(STACKFM)%NAME  R
#line 2901 "regression-compile-tmp/asems412.imp"
 STACKFM /*name*/*R;
                                                                //   2902              SSTACK(V);  R == STACKED(STP)_V
#line 2902 "regression-compile-tmp/asems412.imp"
SSTACK(V);
#line 2902 "regression-compile-tmp/asems412.imp"
R = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2903              LRD(R, REG)
#line 2903 "regression-compile-tmp/asems412.imp"
LRD(R, REG);
                                                                //   2904              STP = STP-1
#line 2904 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   2905           %END
#line 2905 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SET at level 4
                                                                //   2906  
                                                                //   2907           SPECIAL = 0
#line 2907 "regression-compile-tmp/asems412.imp"
SPECIAL = 0;
                                                                //   2908           CV == STACKED(STP-3)_V
#line 2908 "regression-compile-tmp/asems412.imp"
CV = STACKED[(((int)((((int)(STP)) - (3)))) - (1))].V;
                                                                //   2909           IV == STACKED(STP-2)_V
#line 2909 "regression-compile-tmp/asems412.imp"
IV = STACKED[(((int)((((int)(STP)) - (2)))) - (1))].V;
                                                                //   2910           INC== STACKED(STP-1)_V
#line 2910 "regression-compile-tmp/asems412.imp"
INC = STACKED[(((int)((((int)(STP)) - (1)))) - (1))].V;
                                                                //   2911           FV == STACKED(STP  )_V
#line 2911 "regression-compile-tmp/asems412.imp"
FV = STACKED[(((int)(STP)) - (1))].V;
                                                                //   2912           SKIPSYMBOL;  LAB = TAG
#line 2912 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
#line 2912 "regression-compile-tmp/asems412.imp"
LAB = TAG();
                                                                //   2913           STAB(INC,INTEGER);  STAB(FV,INTEGER)
#line 2913 "regression-compile-tmp/asems412.imp"
STAB(INC, 1);
#line 2913 "regression-compile-tmp/asems412.imp"
STAB(FV, 1);
                                                                //   2914           %IF CONTROL&FORDIAG # 0 %AND CHECK REQD %START
#line 2914 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (8))) == (0))) goto L_0306;
#line 2914 "regression-compile-tmp/asems412.imp"
if (!(CHECKREQD())) goto L_0306;
                                                                //   2915              STAB(IV,INTEGER)
#line 2915 "regression-compile-tmp/asems412.imp"
STAB(IV, 1);
                                                                //   2916              SET(IV,R0);  SET(FV,R1);  SET(INC,R2)
#line 2916 "regression-compile-tmp/asems412.imp"
SET(IV, 1);
#line 2916 "regression-compile-tmp/asems412.imp"
SET(FV, 2);
#line 2916 "regression-compile-tmp/asems412.imp"
SET(INC, 3);
                                                                //   2917              PERM(FORTEST)
#line 2917 "regression-compile-tmp/asems412.imp"
PERM(126744);
                                                                //   2918           %FINISH
#line 2918 "regression-compile-tmp/asems412.imp"
L_0306:;
                                                                //   2919           %IF CV_FORM # V IN S %OR ACTIVITY(CV_BASE) >= 0 %START
#line 2919 "regression-compile-tmp/asems412.imp"
if (((CV->FORM) != (3))) goto L_0307;
#line 2919 "regression-compile-tmp/asems412.imp"
if (((ACTIVITY[CV->BASE]) < (0))) goto L_0308;
#line 2919 "regression-compile-tmp/asems412.imp"
L_0307:;
                                                                //   2920              AMAP(CV)
#line 2920 "regression-compile-tmp/asems412.imp"
AMAP(CV);
                                                                //   2921              STAB(CV, CV_TYPE)
#line 2921 "regression-compile-tmp/asems412.imp"
STAB(CV, CV->TYPE);
                                                                //   2922              CV_FORM = A IN S
#line 2922 "regression-compile-tmp/asems412.imp"
CV->FORM = 2;
                                                                //   2923           %FINISH
#line 2923 "regression-compile-tmp/asems412.imp"
L_0308:;
                                                                //   2924           SPECIAL = CONTROL&512 %IF CONST(FV) %AND CONST(INC) %C
#line 2924 "regression-compile-tmp/asems412.imp"
if (!(CONST(FV))) goto L_0309;
#line 2924 "regression-compile-tmp/asems412.imp"
if (!(CONST(INC))) goto L_0309;
#line 2924 "regression-compile-tmp/asems412.imp"
if (!(CONST(IV))) goto L_0309;
#line 2924 "regression-compile-tmp/asems412.imp"
if ((((((int)(FV->DISP)) + (INC->DISP))) == (IV->DISP))) goto L_0309;
#line 2924 "regression-compile-tmp/asems412.imp"
SPECIAL = ((CONTROL) & (512));
#line 2924 "regression-compile-tmp/asems412.imp"
L_0309:;
                                                                //   2925                                %AND CONST(IV) %AND FV_DISP+INC_DISP # IV_DISP
                                                                //   2926           STP = STP-4
#line 2926 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (4));
                                                                //   2927           SSTACK(CV);  SSTACK(IV);  RELEASE(IV_BASE);  SSTACK(INC)
#line 2927 "regression-compile-tmp/asems412.imp"
SSTACK(CV);
#line 2927 "regression-compile-tmp/asems412.imp"
SSTACK(IV);
#line 2927 "regression-compile-tmp/asems412.imp"
RELEASE(IV->BASE);
#line 2927 "regression-compile-tmp/asems412.imp"
SSTACK(INC);
                                                                //   2928           DROP(IV)
#line 2928 "regression-compile-tmp/asems412.imp"
DROP(IV);
                                                                //   2929           OPERATE(SUB)
#line 2929 "regression-compile-tmp/asems412.imp"
OPERATE(4);
                                                                //   2930           %IF SPECIAL # 0 %START
#line 2930 "regression-compile-tmp/asems412.imp"
if (((SPECIAL) == (0))) goto L_030a;
                                                                //   2931              REG = GPR(0);  SET LHS;  LOAD(LHS, REG)
#line 2931 "regression-compile-tmp/asems412.imp"
REG = GPR(0);
#line 2931 "regression-compile-tmp/asems412.imp"
SETLHS();
#line 2931 "regression-compile-tmp/asems412.imp"
LOAD(LHS, REG);
                                                                //   2932           %ELSE
#line 2932 "regression-compile-tmp/asems412.imp"
goto L_030b;
#line 2932 "regression-compile-tmp/asems412.imp"
L_030a:;
                                                                //   2933              ASSIGN(1);    ! CV = CV-INC
#line 2933 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
                                                                //   2934           %FINISH
#line 2934 "regression-compile-tmp/asems412.imp"
L_030b:;
                                                                //   2935           DEFINE LABEL(LAB)
#line 2935 "regression-compile-tmp/asems412.imp"
DEFINELABEL(LAB);
                                                                //   2936           %IF SPECIAL # 0 %START
#line 2936 "regression-compile-tmp/asems412.imp"
if (((SPECIAL) == (0))) goto L_030c;
                                                                //   2937              FLAB_BASE = CV_BASE;  FLAB_DISP = CV_DISP
#line 2937 "regression-compile-tmp/asems412.imp"
FLAB->BASE = CV->BASE;
#line 2937 "regression-compile-tmp/asems412.imp"
FLAB->DISP = CV->DISP;
                                                                //   2938              FLAB_REG = REG
#line 2938 "regression-compile-tmp/asems412.imp"
FLAB->REG = REG;
                                                                //   2939              FLAB_LIMIT = FV_DISP
#line 2939 "regression-compile-tmp/asems412.imp"
FLAB->LIMIT = FV->DISP;
                                                                //   2940              SSTACK(INC);  OPERATE(ADD);  ASSIGN(1)
#line 2940 "regression-compile-tmp/asems412.imp"
SSTACK(INC);
#line 2940 "regression-compile-tmp/asems412.imp"
OPERATE(3);
#line 2940 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
                                                                //   2941              USE(REG) = USE(REG+STORE);   ! REMEMBER CONTROL VAR
#line 2941 "regression-compile-tmp/asems412.imp"
USE[(((int)(REG)) - (1))] = USE[(((int)((((int)(REG)) + (20)))) - (1))];
                                                                //   2942           %ELSE
#line 2942 "regression-compile-tmp/asems412.imp"
goto L_030d;
#line 2942 "regression-compile-tmp/asems412.imp"
L_030c:;
                                                                //   2943              SSTACK(CV);  SSTACK(CV)
#line 2943 "regression-compile-tmp/asems412.imp"
SSTACK(CV);
#line 2943 "regression-compile-tmp/asems412.imp"
SSTACK(CV);
                                                                //   2944              COMPARE(CV, FV)
#line 2944 "regression-compile-tmp/asems412.imp"
COMPARE(CV, FV);
                                                                //   2945              JUMP TO(LAB-2, 0, REDEFINE)
#line 2945 "regression-compile-tmp/asems412.imp"
JUMPTO((((int)(LAB)) - (2)), 0, 1);
                                                                //   2946              SSTACK(INC);  OPERATE(ADD);  ASSIGN(1)
#line 2946 "regression-compile-tmp/asems412.imp"
SSTACK(INC);
#line 2946 "regression-compile-tmp/asems412.imp"
OPERATE(3);
#line 2946 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
                                                                //   2947           %FINISH
#line 2947 "regression-compile-tmp/asems412.imp"
L_030d:;
                                                                //   2948           DROP(CV);  DROP(FV);  DROP(INC)
#line 2948 "regression-compile-tmp/asems412.imp"
DROP(CV);
#line 2948 "regression-compile-tmp/asems412.imp"
DROP(FV);
#line 2948 "regression-compile-tmp/asems412.imp"
DROP(INC);
                                                                //   2949        %END;        ! ... OF 'FOR'
#line 2949 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FOR at level 3
                                                                //   2950        %ROUTINE  ADUMP
#line 2950 "regression-compile-tmp/asems412.imp"
void ADUMP( void )
#line 2950 "regression-compile-tmp/asems412.imp"
{
                                                                //   2951        %IF OWNTYPE = INTEGER  %START
#line 2951 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (1))) goto L_030e;
                                                                //   2952           GWORD(OWNVAL)
#line 2952 "regression-compile-tmp/asems412.imp"
GWORD(OWNVAL);
                                                                //   2953        %ELSE %IF OWNTYPE = SHORT
#line 2953 "regression-compile-tmp/asems412.imp"
goto L_030f;
#line 2953 "regression-compile-tmp/asems412.imp"
L_030e:;
#line 2953 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (3))) goto L_0310;
                                                                //   2954           GHALF(OWNVAL)
#line 2954 "regression-compile-tmp/asems412.imp"
GHALF(OWNVAL);
                                                                //   2955        %ELSE %IF OWNTYPE = BYTE
#line 2955 "regression-compile-tmp/asems412.imp"
goto L_030f;
#line 2955 "regression-compile-tmp/asems412.imp"
L_0310:;
#line 2955 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (2))) goto L_0311;
                                                                //   2956           GBYTE(OWNVAL)
#line 2956 "regression-compile-tmp/asems412.imp"
GBYTE(OWNVAL);
                                                                //   2957        %ELSE %IF OWNTYPE = STRING
#line 2957 "regression-compile-tmp/asems412.imp"
goto L_030f;
#line 2957 "regression-compile-tmp/asems412.imp"
L_0311:;
#line 2957 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (4))) goto L_0312;
                                                                //   2958           DUMP STRING(DATA SIZE)
#line 2958 "regression-compile-tmp/asems412.imp"
DUMPSTRING(DATASIZE);
                                                                //   2959        %ELSE %IF OWNTYPE = REALS
#line 2959 "regression-compile-tmp/asems412.imp"
goto L_030f;
#line 2959 "regression-compile-tmp/asems412.imp"
L_0312:;
#line 2959 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (6))) goto L_0313;
                                                                //   2960           GWORD(OWNVAL) %IF REALGA = GA
#line 2960 "regression-compile-tmp/asems412.imp"
if (((REALGA) != (GA))) goto L_0314;
#line 2960 "regression-compile-tmp/asems412.imp"
GWORD(OWNVAL);
#line 2960 "regression-compile-tmp/asems412.imp"
L_0314:;
                                                                //   2961           REALGA = GA
#line 2961 "regression-compile-tmp/asems412.imp"
REALGA = GA;
                                                                //   2962        %ELSE
#line 2962 "regression-compile-tmp/asems412.imp"
goto L_030f;
#line 2962 "regression-compile-tmp/asems412.imp"
L_0313:;
                                                                //   2963           GHALF(0) %FOR VAL = 1,1,DATA SIZE >> 1
#line 2963 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = (int)((((unsigned int)(DATASIZE)) >> (1))); VAL = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle VAL = 1, 1, (int)((((unsigned int)(DATASIZE)) >> (1)))");
VAL -= _increment; _control -= _increment;
L_0315:;
if (VAL == _final) goto L_0316;
VAL += _increment; _control += _increment;
if (VAL != _control) _imp_signal(4,2,0,"Corrupt control variable VAL"); /* FOR loop control variable corrupted */
}
#line 2963 "regression-compile-tmp/asems412.imp"
GHALF(0);
#line 2963 "regression-compile-tmp/asems412.imp"
goto L_0315;
#line 2963 "regression-compile-tmp/asems412.imp"
L_0316:;
                                                                //   2964        %FINISH
#line 2964 "regression-compile-tmp/asems412.imp"
L_030f:;
                                                                //   2965     %END
#line 2965 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block ADUMP at level 3
                                                                //   2966  
                                                                //   2967  NEXT: READSYMBOL(SYM);  ->Z(SYM)
#line 2967 "regression-compile-tmp/asems412.imp"
U_100c:;
#line 2967 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&SYM);
#line 2967 "regression-compile-tmp/asems412.imp"
sw3_Z_idx = SYM; if ((33 <= sw3_Z_idx) && (sw3_Z_idx <= 126)) goto *(sw3_Z-33)[sw3_Z_idx];  /* Bounds=33:126 */ else {
   /*_imp_signal(8, 2, sw3_Z_idx);*/
   fprintf(stderr, "%%SWITCH index Z(%d) not in range 33:126 at %s:%d\n",
           sw3_Z_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //   2968  Z('O'):ABORT(14) %IF STP # 0
#line 2968 "regression-compile-tmp/asems412.imp"
sw3_Z_79:;
#line 2968 "regression-compile-tmp/asems412.imp"
if (((STP) == (0))) goto L_0318;
#line 2968 "regression-compile-tmp/asems412.imp"
ABORT(14);
#line 2968 "regression-compile-tmp/asems412.imp"
L_0318:;
                                                                //   2969         ABORT(19) %UNLESS USING_LINK == NULL
#line 2969 "regression-compile-tmp/asems412.imp"
if (((USING.LINK) == (NULL))) goto L_0319;
#line 2969 "regression-compile-tmp/asems412.imp"
ABORT(19);
#line 2969 "regression-compile-tmp/asems412.imp"
L_0319:;
                                                                //   2970         CHECK RELEASED
#line 2970 "regression-compile-tmp/asems412.imp"
CHECKRELEASED();
                                                                //   2971         SET LINE
#line 2971 "regression-compile-tmp/asems412.imp"
SETLINE();
                                                                //   2972         MIN TEMP = FRAME
#line 2972 "regression-compile-tmp/asems412.imp"
MINTEMP = FRAME;
                                                                //   2973         DIAG GLA = 0;  WDISP = 0
#line 2973 "regression-compile-tmp/asems412.imp"
DIAGGLA = 0;
#line 2973 "regression-compile-tmp/asems412.imp"
WDISP = 0;
                                                                //   2974         %IF FRAME >= X'4000' %AND WARNING = 0 %START
#line 2974 "regression-compile-tmp/asems412.imp"
if (((FRAME) < (16384))) goto L_031a;
#line 2974 "regression-compile-tmp/asems412.imp"
if (((WARNING) != (0))) goto L_031a;
                                                                //   2975  WARN:     WARNING = -15;  ABORT(-15)
#line 2975 "regression-compile-tmp/asems412.imp"
U_100d:;
#line 2975 "regression-compile-tmp/asems412.imp"
WARNING = (-15);
#line 2975 "regression-compile-tmp/asems412.imp"
ABORT((-15));
                                                                //   2976         %FINISH
#line 2976 "regression-compile-tmp/asems412.imp"
L_031a:;
                                                                //   2977         ->NEXT
#line 2977 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   2978  Z('$'):DEFINE VAR;  ->NEXT
#line 2978 "regression-compile-tmp/asems412.imp"
sw3_Z_36:;
#line 2978 "regression-compile-tmp/asems412.imp"
DEFINEVAR();
#line 2978 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   2979  Z(98):APARM = TAG;    ! LOWER CASE 'B'
#line 2979 "regression-compile-tmp/asems412.imp"
sw3_Z_98:;
#line 2979 "regression-compile-tmp/asems412.imp"
APARM = TAG();
                                                                //   2980  Z(119):STP = STP-2;    !  LOWER CASE 'W'
#line 2980 "regression-compile-tmp/asems412.imp"
sw3_Z_119:;
#line 2980 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   2981         VLB = STACKED(STP+1)_V_DISP
#line 2981 "regression-compile-tmp/asems412.imp"
VLB = STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V->DISP;
                                                                //   2982         VUB = STACKED(STP+2)_V_DISP
#line 2982 "regression-compile-tmp/asems412.imp"
VUB = STACKED[(((int)((((int)(STP)) + (2)))) - (1))].V->DISP;
                                                                //   2983         DROP(STACKED(STP+1)_V);  DROP(STACKED(STP+2)_V)
#line 2983 "regression-compile-tmp/asems412.imp"
DROP(STACKED[(((int)((((int)(STP)) + (1)))) - (1))].V);
#line 2983 "regression-compile-tmp/asems412.imp"
DROP(STACKED[(((int)((((int)(STP)) + (2)))) - (1))].V);
                                                                //   2984        ! IMP SWITCH BOUNDS MUST BE AS BELOW -- POTENTIAL ALGOL PROBLEM???
                                                                //   2985         %IF VLB < -32768 %OR VUB > 32767 %START
#line 2985 "regression-compile-tmp/asems412.imp"
if (((VLB) < ((-32768)))) goto L_031b;
#line 2985 "regression-compile-tmp/asems412.imp"
if (((VUB) <= (32767))) goto L_031c;
#line 2985 "regression-compile-tmp/asems412.imp"
L_031b:;
                                                                //   2986            ABORT(-10);  VUB = 0;  VLB = 0
#line 2986 "regression-compile-tmp/asems412.imp"
ABORT((-10));
#line 2986 "regression-compile-tmp/asems412.imp"
VUB = 0;
#line 2986 "regression-compile-tmp/asems412.imp"
VLB = 0;
                                                                //   2987         %FINISH
#line 2987 "regression-compile-tmp/asems412.imp"
L_031c:;
                                                                //   2988         ->NEXT
#line 2988 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   2989  Z('I'):VAL = (VUB-VLB+1)*DATA SIZE
#line 2989 "regression-compile-tmp/asems412.imp"
sw3_Z_73:;
#line 2989 "regression-compile-tmp/asems412.imp"
VAL = (((int)((((int)((((int)(VUB)) - (VLB)))) + (1)))) * (DATASIZE));
                                                                //   2990         VAL = DATA SIZE %AND ABORT(-8) %IF VAL <= 0
#line 2990 "regression-compile-tmp/asems412.imp"
if (((VAL) > (0))) goto L_031d;
#line 2990 "regression-compile-tmp/asems412.imp"
VAL = DATASIZE;
#line 2990 "regression-compile-tmp/asems412.imp"
ABORT((-8));
#line 2990 "regression-compile-tmp/asems412.imp"
L_031d:;
                                                                //   2991         GBYTE(0) %FOR J = 1, 1, VAL
#line 2991 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = VAL; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, VAL");
J -= _increment; _control -= _increment;
L_031e:;
if (J == _final) goto L_031f;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
#line 2991 "regression-compile-tmp/asems412.imp"
GBYTE(0);
#line 2991 "regression-compile-tmp/asems412.imp"
goto L_031e;
#line 2991 "regression-compile-tmp/asems412.imp"
L_031f:;
                                                                //   2992         ->NEXT
#line 2992 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   2993  Z('A'):APARM = 1
#line 2993 "regression-compile-tmp/asems412.imp"
sw3_Z_65:;
#line 2993 "regression-compile-tmp/asems412.imp"
APARM = 1;
                                                                //   2994         SKIPSYMBOL %AND APARM = TAG %IF NEXTSYMBOL = COMMA
#line 2994 "regression-compile-tmp/asems412.imp"
if (((_imp_NEXTSYMBOL()) != (44))) goto L_0321;
#line 2994 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
#line 2994 "regression-compile-tmp/asems412.imp"
APARM = TAG();
#line 2994 "regression-compile-tmp/asems412.imp"
L_0321:;
                                                                //   2995         %IF OWNFORM = ARRAY %START
#line 2995 "regression-compile-tmp/asems412.imp"
if (((OWNFORM) != (11))) goto L_0322;
                                                                //   2996            OWNVAL = 0
#line 2996 "regression-compile-tmp/asems412.imp"
OWNVAL = 0;
                                                                //   2997            %IF STP # 0 %START
#line 2997 "regression-compile-tmp/asems412.imp"
if (((STP) == (0))) goto L_0323;
                                                                //   2998               POP LHS;  OWN VAL = LHS_DISP;  DROP(LHS)
#line 2998 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 2998 "regression-compile-tmp/asems412.imp"
OWNVAL = LHS->DISP;
#line 2998 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   2999            %FINISH
#line 2999 "regression-compile-tmp/asems412.imp"
L_0323:;
                                                                //   3000            %IF STP # 0 %START
#line 3000 "regression-compile-tmp/asems412.imp"
if (((STP) == (0))) goto L_0324;
                                                                //   3001               APARM = OWN VAL
#line 3001 "regression-compile-tmp/asems412.imp"
APARM = OWNVAL;
                                                                //   3002               POP LHS;  OWNVAL = LHS_DISP;  DROP(LHS)
#line 3002 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3002 "regression-compile-tmp/asems412.imp"
OWNVAL = LHS->DISP;
#line 3002 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3003            %FINISH
#line 3003 "regression-compile-tmp/asems412.imp"
L_0324:;
                                                                //   3004            %IF OWNTYPE = REALS %START
#line 3004 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (6))) goto L_0325;
                                                                //   3005               %IF LHS_TYPE = INTEGER %START
#line 3005 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (1))) goto L_0326;
                                                                //   3006                  REAL(ADDR(OWNVAL)) = OWNVAL
#line 3006 "regression-compile-tmp/asems412.imp"
*_imp_REAL(_imp_ADDR(&OWNVAL)) = OWNVAL;
                                                                //   3007               %ELSE
#line 3007 "regression-compile-tmp/asems412.imp"
goto L_0327;
#line 3007 "regression-compile-tmp/asems412.imp"
L_0326:;
                                                                //   3008                  DECVAR_DISP = DECVAR_DISP-4
#line 3008 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = (((int)(DECVAR->DISP)) - (4));
                                                                //   3009               %FINISH
#line 3009 "regression-compile-tmp/asems412.imp"
L_0327:;
                                                                //   3010            %FINISH
#line 3010 "regression-compile-tmp/asems412.imp"
L_0325:;
                                                                //   3011            APARM = VUB-VLB+1 %IF APARM = 0
#line 3011 "regression-compile-tmp/asems412.imp"
if (((APARM) != (0))) goto L_0328;
#line 3011 "regression-compile-tmp/asems412.imp"
APARM = (((int)((((int)(VUB)) - (VLB)))) + (1));
#line 3011 "regression-compile-tmp/asems412.imp"
L_0328:;
                                                                //   3012            %IF APARM <= 0 %START
#line 3012 "regression-compile-tmp/asems412.imp"
if (((APARM) > (0))) goto L_0329;
                                                                //   3013               VUB = VLB;  APARM = 1;  ABORT(-8)
#line 3013 "regression-compile-tmp/asems412.imp"
VUB = VLB;
#line 3013 "regression-compile-tmp/asems412.imp"
APARM = 1;
#line 3013 "regression-compile-tmp/asems412.imp"
ABORT((-8));
                                                                //   3014            %FINISH
#line 3014 "regression-compile-tmp/asems412.imp"
L_0329:;
                                                                //   3015            %FOR J = 1, 1, APARM %CYCLE
#line 3015 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = APARM; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, APARM");
J -= _increment; _control -= _increment;
L_032a:;
if (J == _final) goto L_032b;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //   3016               VLB = VLB+1
#line 3016 "regression-compile-tmp/asems412.imp"
VLB = (((int)(VLB)) + (1));
                                                                //   3017               ADUMP
#line 3017 "regression-compile-tmp/asems412.imp"
ADUMP();
                                                                //   3018            %REPEAT
#line 3018 "regression-compile-tmp/asems412.imp"
goto L_032a;
#line 3018 "regression-compile-tmp/asems412.imp"
L_032b:;
                                                                //   3019         %ELSE
#line 3019 "regression-compile-tmp/asems412.imp"
goto L_032d;
#line 3019 "regression-compile-tmp/asems412.imp"
L_0322:;
                                                                //   3020            OWNVAL = 0
#line 3020 "regression-compile-tmp/asems412.imp"
OWNVAL = 0;
                                                                //   3021            %IF STP # 0 %START
#line 3021 "regression-compile-tmp/asems412.imp"
if (((STP) == (0))) goto L_032e;
                                                                //   3022               POP LHS;  OWN VAL = LHS_DISP;  DROP(LHS)
#line 3022 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3022 "regression-compile-tmp/asems412.imp"
OWNVAL = LHS->DISP;
#line 3022 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3023            %FINISH
#line 3023 "regression-compile-tmp/asems412.imp"
L_032e:;
                                                                //   3024            NAMES = NAMES-APARM
#line 3024 "regression-compile-tmp/asems412.imp"
NAMES = (((int)(NAMES)) - (APARM));
                                                                //   3025            ->NEXT %IF OWNFORM = 5
#line 3025 "regression-compile-tmp/asems412.imp"
if (((OWNFORM) != (5))) goto L_032f;
#line 3025 "regression-compile-tmp/asems412.imp"
goto U_100c;
#line 3025 "regression-compile-tmp/asems412.imp"
L_032f:;
                                                                //   3026            %FOR J = 1, 1, APARM %CYCLE
#line 3026 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = APARM; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, APARM");
J -= _increment; _control -= _increment;
L_0330:;
if (J == _final) goto L_0331;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //   3027               NAMES = NAMES+1;  DEC VAR == VAR(NAMES)
#line 3027 "regression-compile-tmp/asems412.imp"
NAMES = (((int)(NAMES)) + (1));
#line 3027 "regression-compile-tmp/asems412.imp"
DECVAR = &VAR[(((int)(NAMES)) - (1))];
                                                                //   3028               %IF OTYPE = 0 %START
#line 3028 "regression-compile-tmp/asems412.imp"
if (((OTYPE) != (0))) goto L_0333;
                                                                //   3029                  DECVAR_DISP = OWNVAL;  DECVAR_BASE = 0
#line 3029 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = OWNVAL;
#line 3029 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 0;
                                                                //   3030                  DECVAR_FORM = DECVAR_FORM-1
#line 3030 "regression-compile-tmp/asems412.imp"
DECVAR->FORM = (((int)(DECVAR->FORM)) - (1));
                                                                //   3031               %ELSE
#line 3031 "regression-compile-tmp/asems412.imp"
goto L_0334;
#line 3031 "regression-compile-tmp/asems412.imp"
L_0333:;
                                                                //   3032                  DECVAR_DISP = GA;  DECVAR_BASE = GLA
#line 3032 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = GA;
#line 3032 "regression-compile-tmp/asems412.imp"
DECVAR->BASE = 42;
                                                                //   3033                  %IF OWNTYPE = REALS %AND LHS_TYPE = REALS %START
#line 3033 "regression-compile-tmp/asems412.imp"
if (((OWNTYPE) != (6))) goto L_0335;
#line 3033 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (6))) goto L_0335;
                                                                //   3034                     DECVAR_DISP = DECVAR_DISP-4
#line 3034 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = (((int)(DECVAR->DISP)) - (4));
                                                                //   3035                  %FINISH
#line 3035 "regression-compile-tmp/asems412.imp"
L_0335:;
                                                                //   3036                  ADUMP
#line 3036 "regression-compile-tmp/asems412.imp"
ADUMP();
                                                                //   3037               %FINISH
#line 3037 "regression-compile-tmp/asems412.imp"
L_0334:;
                                                                //   3038            %REPEAT
#line 3038 "regression-compile-tmp/asems412.imp"
goto L_0330;
#line 3038 "regression-compile-tmp/asems412.imp"
L_0331:;
                                                                //   3039         %FINISH
#line 3039 "regression-compile-tmp/asems412.imp"
L_032d:;
                                                                //   3040         ->WARN %IF GA > X'4000' %AND WARNING = 0
#line 3040 "regression-compile-tmp/asems412.imp"
if (((GA) <= (16384))) goto L_0336;
#line 3040 "regression-compile-tmp/asems412.imp"
if (((WARNING) != (0))) goto L_0336;
#line 3040 "regression-compile-tmp/asems412.imp"
goto U_100d;
#line 3040 "regression-compile-tmp/asems412.imp"
L_0336:;
                                                                //   3041         ->NEXT
#line 3041 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3042  Z(''''):GET STRING;  ->NEXT
#line 3042 "regression-compile-tmp/asems412.imp"
sw3_Z_39:;
#line 3042 "regression-compile-tmp/asems412.imp"
GETSTRING();
#line 3042 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3043  Z('N'):LEN = TAG;  SKIPSYMBOL
#line 3043 "regression-compile-tmp/asems412.imp"
sw3_Z_78:;
#line 3043 "regression-compile-tmp/asems412.imp"
LEN = TAG();
#line 3043 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
                                                                //   3044         CSTACK(EVAL(LEN));  ->NEXT
#line 3044 "regression-compile-tmp/asems412.imp"
CSTACK(EVAL(LEN));
#line 3044 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3045  Z('D'): RHS == DESCRIPTOR; FP CSTACK(REAL CONSTANT,RHS); -> NEXT
#line 3045 "regression-compile-tmp/asems412.imp"
sw3_Z_68:;
#line 3045 "regression-compile-tmp/asems412.imp"
RHS = DESCRIPTOR();
#line 3045 "regression-compile-tmp/asems412.imp"
FPCSTACK(REALCONSTANT(), RHS);
#line 3045 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3046  
                                                                //   3047  Z('@'):%IF NEXTSYMBOL = MINUS %START
#line 3047 "regression-compile-tmp/asems412.imp"
sw3_Z_64:;
#line 3047 "regression-compile-tmp/asems412.imp"
if (((_imp_NEXTSYMBOL()) != (45))) goto L_0337;
                                                                //   3048            SKIPSYMBOL;  LEN = TAG;  SET LHS
#line 3048 "regression-compile-tmp/asems412.imp"
_imp_SKIPSYMBOL();
#line 3048 "regression-compile-tmp/asems412.imp"
LEN = TAG();
#line 3048 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   3049            V == VAR(VAR(LHS_FORMAT)_EXTRA+LEN-1)
#line 3049 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)((((int)((((int)(VAR[(((int)(LHS->FORMAT)) - (1))].EXTRA)) + (LEN)))) - (1)))) - (1))];
                                                                //   3050            DISPLAY VAR(V) %IF CONTROL < 0
#line 3050 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_0338;
#line 3050 "regression-compile-tmp/asems412.imp"
DISPLAYVAR(V);
#line 3050 "regression-compile-tmp/asems412.imp"
L_0338:;
                                                                //   3051            VSTACK(V);  SET BOTH
#line 3051 "regression-compile-tmp/asems412.imp"
VSTACK(V);
#line 3051 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   3052            STP = STP-1
#line 3052 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (1));
                                                                //   3053            %IF LHS_FORM = V IN S %OR LHS_FORM = V IN REC %START
#line 3053 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) == (3))) goto L_0332;
#line 3053 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) != (5))) goto L_0339;
#line 3053 "regression-compile-tmp/asems412.imp"
L_0332:;
                                                                //   3054               RHS_DISP = LHS_DISP+RHS_DISP
#line 3054 "regression-compile-tmp/asems412.imp"
RHS->DISP = (((int)(LHS->DISP)) + (RHS->DISP));
                                                                //   3055               LHS_FORM = LHS_FORM-V IN S+RHS_FORM
#line 3055 "regression-compile-tmp/asems412.imp"
LHS->FORM = (((short)((((int)(LHS->FORM)) - (3)))) + (RHS->FORM));
                                                                //   3056            %ELSE %IF LHS_FORM = A IN REC
#line 3056 "regression-compile-tmp/asems412.imp"
goto L_033a;
#line 3056 "regression-compile-tmp/asems412.imp"
L_0339:;
#line 3056 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) != (4))) goto L_033b;
                                                                //   3057              LHS_FORM = V IN REC;  LHS_TYPE = INTEGER
#line 3057 "regression-compile-tmp/asems412.imp"
LHS->FORM = 5;
#line 3057 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 1;
                                                                //   3058              LOAD(LHS, ANY0)
#line 3058 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 46);
                                                                //   3059              LHS_FORM = RHS_FORM
#line 3059 "regression-compile-tmp/asems412.imp"
LHS->FORM = RHS->FORM;
                                                                //   3060            %ELSE %IF LHS_FORM <= V IN R
#line 3060 "regression-compile-tmp/asems412.imp"
goto L_033a;
#line 3060 "regression-compile-tmp/asems412.imp"
L_033b:;
#line 3060 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) > (1))) goto L_033c;
                                                                //   3061               LHS_FORM = RHS_FORM
#line 3061 "regression-compile-tmp/asems412.imp"
LHS->FORM = RHS->FORM;
                                                                //   3062            %ELSE
#line 3062 "regression-compile-tmp/asems412.imp"
goto L_033a;
#line 3062 "regression-compile-tmp/asems412.imp"
L_033c:;
                                                                //   3063               LHS_EXTRA = LHS_DISP
#line 3063 "regression-compile-tmp/asems412.imp"
LHS->EXTRA = LHS->DISP;
                                                                //   3064               LHS_FORM = RHS_FORM+2
#line 3064 "regression-compile-tmp/asems412.imp"
LHS->FORM = (((int)(RHS->FORM)) + (2));
                                                                //   3065            %FINISH
#line 3065 "regression-compile-tmp/asems412.imp"
L_033a:;
                                                                //   3066            LHS_DISP = RHS_DISP
#line 3066 "regression-compile-tmp/asems412.imp"
LHS->DISP = RHS->DISP;
                                                                //   3067            LHS_TYPE = RHS_TYPE;  LHS_LENGTH = RHS_LENGTH
#line 3067 "regression-compile-tmp/asems412.imp"
LHS->TYPE = RHS->TYPE;
#line 3067 "regression-compile-tmp/asems412.imp"
LHS->LENGTH = RHS->LENGTH;
                                                                //   3068            LHS_FORMAT = RHS_FORMAT;  LHS_DV = RHS_DV
#line 3068 "regression-compile-tmp/asems412.imp"
LHS->FORMAT = RHS->FORMAT;
#line 3068 "regression-compile-tmp/asems412.imp"
LHS->DV = RHS->DV;
                                                                //   3069            DROP(RHS)
#line 3069 "regression-compile-tmp/asems412.imp"
DROP(RHS);
                                                                //   3070         %ELSE
#line 3070 "regression-compile-tmp/asems412.imp"
goto L_033d;
#line 3070 "regression-compile-tmp/asems412.imp"
L_0337:;
                                                                //   3071            V == VAR(LOOKUP(TAG))
#line 3071 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)(LOOKUP(TAG()))) - (1))];
                                                                //   3072            VSTACK(V)
#line 3072 "regression-compile-tmp/asems412.imp"
VSTACK(V);
                                                                //   3073            CLAIM WSP(LHS_DV) %IF LHS_FORM&16 # 0 %AND  %C
#line 3073 "regression-compile-tmp/asems412.imp"
if (((((LHS->FORM) & (16))) == (0))) goto L_033e;
#line 3073 "regression-compile-tmp/asems412.imp"
if (((LHS->BASE) == (12))) goto L_033e;
#line 3073 "regression-compile-tmp/asems412.imp"
if (((_imp_NEXTSYMBOL()) == (112))) goto L_033e;
#line 3073 "regression-compile-tmp/asems412.imp"
CLAIMWSP(&LHS->DV);
#line 3073 "regression-compile-tmp/asems412.imp"
L_033e:;
                                                                //   3074                              LHS_BASE # LINK %AND NEXTSYMBOL # 'P'+32
                                                                //   3075         %FINISH
#line 3075 "regression-compile-tmp/asems412.imp"
L_033d:;
                                                                //   3076         ->NEXT
#line 3076 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3077  Z('E'):POP LHS
#line 3077 "regression-compile-tmp/asems412.imp"
sw3_Z_69:;
#line 3077 "regression-compile-tmp/asems412.imp"
POPLHS();
                                                                //   3078         OPR = LHS_LOP;  LHS_LOP = 0;  J = 0
#line 3078 "regression-compile-tmp/asems412.imp"
OPR = LHS->LOP;
#line 3078 "regression-compile-tmp/asems412.imp"
LHS->LOP = 0;
#line 3078 "regression-compile-tmp/asems412.imp"
J = 0;
                                                                //   3079         %WHILE OPR # 0 %CYCLE
#line 3079 "regression-compile-tmp/asems412.imp"
L_033f:;
#line 3079 "regression-compile-tmp/asems412.imp"
if (((OPR) == (0))) goto L_0340;
                                                                //   3080            X == LHS_LINK;  LHS_LINK == X_LINK
#line 3080 "regression-compile-tmp/asems412.imp"
X = LHS->LINK;
#line 3080 "regression-compile-tmp/asems412.imp"
LHS->LINK = X->LINK;
                                                                //   3081            N = X_LOP;  X_LOP = 0
#line 3081 "regression-compile-tmp/asems412.imp"
N = X->LOP;
#line 3081 "regression-compile-tmp/asems412.imp"
X->LOP = 0;
                                                                //   3082            LOAD(X, OPR)
#line 3082 "regression-compile-tmp/asems412.imp"
LOAD(X, OPR);
                                                                //   3083            DROP(X);  J = J<<8!OPR
#line 3083 "regression-compile-tmp/asems412.imp"
DROP(X);
#line 3083 "regression-compile-tmp/asems412.imp"
J = ((((J) << (8))) | (OPR));
                                                                //   3084            OPR = N
#line 3084 "regression-compile-tmp/asems412.imp"
OPR = N;
                                                                //   3085         %REPEAT
#line 3085 "regression-compile-tmp/asems412.imp"
goto L_033f;
#line 3085 "regression-compile-tmp/asems412.imp"
L_0340:;
                                                                //   3086         RELEASE(J&255);  RELEASE(J>>8)
#line 3086 "regression-compile-tmp/asems412.imp"
RELEASE(((J) & (255)));
#line 3086 "regression-compile-tmp/asems412.imp"
RELEASE((int)((((unsigned int)(J)) >> (8))));
                                                                //   3087         X == LHS;  CALL(X);  DOPE = X_DV
#line 3087 "regression-compile-tmp/asems412.imp"
X = LHS;
#line 3087 "regression-compile-tmp/asems412.imp"
CALL(X);
#line 3087 "regression-compile-tmp/asems412.imp"
DOPE = X->DV;
                                                                //   3088         %IF X_TYPE # 0 %AND SYM # 0 %START;! FN/MAP
#line 3088 "regression-compile-tmp/asems412.imp"
if (((X->TYPE) == (0))) goto L_0342;
#line 3088 "regression-compile-tmp/asems412.imp"
if (((SYM) == (0))) goto L_0342;
                                                                //   3089           SSTACK(X);  DROP(X);  SET LHS;  RELEASE(LHS_BASE)
#line 3089 "regression-compile-tmp/asems412.imp"
SSTACK(X);
#line 3089 "regression-compile-tmp/asems412.imp"
DROP(X);
#line 3089 "regression-compile-tmp/asems412.imp"
SETLHS();
#line 3089 "regression-compile-tmp/asems412.imp"
RELEASE(LHS->BASE);
                                                                //   3090            %IF LHS_TYPE = REALS %THEN OPR = FPR0 %ELSE OPR = R1
#line 3090 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (6))) goto L_0343;
#line 3090 "regression-compile-tmp/asems412.imp"
OPR = 13;
#line 3090 "regression-compile-tmp/asems412.imp"
goto L_0344;
#line 3090 "regression-compile-tmp/asems412.imp"
L_0343:;
#line 3090 "regression-compile-tmp/asems412.imp"
OPR = 2;
#line 3090 "regression-compile-tmp/asems412.imp"
L_0344:;
                                                                //   3091            LHS_BASE = OPR;  LHS_DISP = 0;  LHS_FORM = LHS_FORM&15
#line 3091 "regression-compile-tmp/asems412.imp"
LHS->BASE = OPR;
#line 3091 "regression-compile-tmp/asems412.imp"
LHS->DISP = 0;
#line 3091 "regression-compile-tmp/asems412.imp"
LHS->FORM = ((LHS->FORM) & (15));
                                                                //   3092            CLAIM(OPR)
#line 3092 "regression-compile-tmp/asems412.imp"
CLAIM(OPR);
                                                                //   3093            %IF LHS_TYPE = STRING %AND LHS_FORM = V IN R %START
#line 3093 "regression-compile-tmp/asems412.imp"
if (((LHS->TYPE) != (4))) goto L_0345;
#line 3093 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) != (1))) goto L_0345;
                                                                //   3094               LHS_FORM = V IN S
#line 3094 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
                                                                //   3095               SYM = NEXTSYMBOL
#line 3095 "regression-compile-tmp/asems412.imp"
SYM = _imp_NEXTSYMBOL();
                                                                //   3096               %IF SYM # 'S' %AND SYM # 'P'+32 %AND SYM # '?' %START
#line 3096 "regression-compile-tmp/asems412.imp"
if (((SYM) == (83))) goto L_0346;
#line 3096 "regression-compile-tmp/asems412.imp"
if (((SYM) == (112))) goto L_0346;
#line 3096 "regression-compile-tmp/asems412.imp"
if (((SYM) == (63))) goto L_0346;
                                                                //   3097                  N = X_LENGTH;  N = 256 %IF N = 0
#line 3097 "regression-compile-tmp/asems412.imp"
N = X->LENGTH;
#line 3097 "regression-compile-tmp/asems412.imp"
if (((N) != (0))) goto L_0347;
#line 3097 "regression-compile-tmp/asems412.imp"
N = 256;
#line 3097 "regression-compile-tmp/asems412.imp"
L_0347:;
                                                                //   3098                  FRAME = (FRAME+1)&(\1)
#line 3098 "regression-compile-tmp/asems412.imp"
FRAME = (((((int)(FRAME)) + (1))) & ((~(1))));
                                                                //   3099                  LHS_FORM = V IN S;  LHS_BASE = LOCAL;  LHS_DISP = FRAME
#line 3099 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
#line 3099 "regression-compile-tmp/asems412.imp"
LHS->BASE = LOCAL;
#line 3099 "regression-compile-tmp/asems412.imp"
LHS->DISP = FRAME;
                                                                //   3100                  FRAME = FRAME+N
#line 3100 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) + (N));
                                                                //   3101                  SSET(LOCAL, LHS_DISP, V IN S, 0)
#line 3101 "regression-compile-tmp/asems412.imp"
SSET(LOCAL, LHS->DISP, 3, 0);
                                                                //   3102                  RHS_TYPE = STRING;  RHS_LENGTH = N
#line 3102 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 4;
#line 3102 "regression-compile-tmp/asems412.imp"
RHS->LENGTH = N;
                                                                //   3103                  SSET(R1, 0, V IN S, 0);  RHS_TYPE = STRING
#line 3103 "regression-compile-tmp/asems412.imp"
SSET(2, 0, 3, 0);
#line 3103 "regression-compile-tmp/asems412.imp"
RHS->TYPE = 4;
                                                                //   3104                  ASSIGN(1)
#line 3104 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
                                                                //   3105               %FINISH
#line 3105 "regression-compile-tmp/asems412.imp"
L_0346:;
                                                                //   3106            %FINISH
#line 3106 "regression-compile-tmp/asems412.imp"
L_0345:;
                                                                //   3107         %FINISH
#line 3107 "regression-compile-tmp/asems412.imp"
L_0342:;
                                                                //   3108         RELEASE WSP(DOPE) %IF SYM # 0;  !NOT IF BUILT-IN
#line 3108 "regression-compile-tmp/asems412.imp"
if (((SYM) == (0))) goto L_0348;
#line 3108 "regression-compile-tmp/asems412.imp"
RELEASEWSP(DOPE);
#line 3108 "regression-compile-tmp/asems412.imp"
L_0348:;
                                                                //   3109         ->NEXT
#line 3109 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3110  Z('R'):RETURN;  ->NEXT
#line 3110 "regression-compile-tmp/asems412.imp"
sw3_Z_82:;
#line 3110 "regression-compile-tmp/asems412.imp"
RETURN();
#line 3110 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3111  Z('V'):POP LHS
#line 3111 "regression-compile-tmp/asems412.imp"
sw3_Z_86:;
#line 3111 "regression-compile-tmp/asems412.imp"
POPLHS();
                                                                //   3112        DUMP STRING(0)
#line 3112 "regression-compile-tmp/asems412.imp"
DUMPSTRING(0);
                                                                //   3113         %IF GVAR_TYPE = REALS %THEN OPR = FPR0 %ELSE OPR = R1
#line 3113 "regression-compile-tmp/asems412.imp"
if (((GVAR->TYPE) != (6))) goto L_0349;
#line 3113 "regression-compile-tmp/asems412.imp"
OPR = 13;
#line 3113 "regression-compile-tmp/asems412.imp"
goto L_034a;
#line 3113 "regression-compile-tmp/asems412.imp"
L_0349:;
#line 3113 "regression-compile-tmp/asems412.imp"
OPR = 2;
#line 3113 "regression-compile-tmp/asems412.imp"
L_034a:;
                                                                //   3114         LRD(LHS, OPR);  RETURN;  ->NEXT
#line 3114 "regression-compile-tmp/asems412.imp"
LRD(LHS, OPR);
#line 3114 "regression-compile-tmp/asems412.imp"
RETURN();
#line 3114 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3115  Z('M'):POP LHS;  AMAP(LHS);  LRD(LHS, R1);  RETURN;  ->NEXT
#line 3115 "regression-compile-tmp/asems412.imp"
sw3_Z_77:;
#line 3115 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3115 "regression-compile-tmp/asems412.imp"
AMAP(LHS);
#line 3115 "regression-compile-tmp/asems412.imp"
LRD(LHS, 2);
#line 3115 "regression-compile-tmp/asems412.imp"
RETURN();
#line 3115 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3116  Z('T'):DUMP(X'2411');  RETURN;     !  *LIS R1, 1
#line 3116 "regression-compile-tmp/asems412.imp"
sw3_Z_84:;
#line 3116 "regression-compile-tmp/asems412.imp"
DUMP(9233);
#line 3116 "regression-compile-tmp/asems412.imp"
RETURN();
                                                                //   3117         ->NEXT
#line 3117 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3118  Z('K'):DUMP(X'2410');  RETURN;     !  *LIS R1, 0
#line 3118 "regression-compile-tmp/asems412.imp"
sw3_Z_75:;
#line 3118 "regression-compile-tmp/asems412.imp"
DUMP(9232);
#line 3118 "regression-compile-tmp/asems412.imp"
RETURN();
                                                                //   3119         ->NEXT
#line 3119 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3120  Z(97):%IF CONTROL&ARRAY DIAG # 0 %THEN CHECKED ARRAY REF %C
#line 3120 "regression-compile-tmp/asems412.imp"
sw3_Z_97:;
#line 3120 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (4))) == (0))) goto L_034b;
#line 3120 "regression-compile-tmp/asems412.imp"
CHECKEDARRAYREF();
#line 3120 "regression-compile-tmp/asems412.imp"
goto L_034c;
#line 3120 "regression-compile-tmp/asems412.imp"
L_034b:;
#line 3120 "regression-compile-tmp/asems412.imp"
ARRAYREF();
#line 3120 "regression-compile-tmp/asems412.imp"
L_034c:;
                                                                //   3121                                   %ELSE ARRAY REF
                                                                //   3122         ->NEXT
#line 3122 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3123  Z('.'):OPR = CONC;  ->ARITH
#line 3123 "regression-compile-tmp/asems412.imp"
sw3_Z_46:;
#line 3123 "regression-compile-tmp/asems412.imp"
OPR = 14;
#line 3123 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3124  Z('+'):OPR = ADD;   ->ARITH
#line 3124 "regression-compile-tmp/asems412.imp"
sw3_Z_43:;
#line 3124 "regression-compile-tmp/asems412.imp"
OPR = 3;
#line 3124 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3125  Z('-'):OPR = SUB;   ->ARITH
#line 3125 "regression-compile-tmp/asems412.imp"
sw3_Z_45:;
#line 3125 "regression-compile-tmp/asems412.imp"
OPR = 4;
#line 3125 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3126  Z('!'):OPR = IOR;   ->ARITH
#line 3126 "regression-compile-tmp/asems412.imp"
sw3_Z_33:;
#line 3126 "regression-compile-tmp/asems412.imp"
OPR = 9;
#line 3126 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3127  Z('%'):OPR = XOR;   ->ARITH
#line 3127 "regression-compile-tmp/asems412.imp"
sw3_Z_37:;
#line 3127 "regression-compile-tmp/asems412.imp"
OPR = 10;
#line 3127 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3128  Z('&'):OPR = AND;   ->ARITH
#line 3128 "regression-compile-tmp/asems412.imp"
sw3_Z_38:;
#line 3128 "regression-compile-tmp/asems412.imp"
OPR = 8;
#line 3128 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3129  Z('['):OPR = LSH;   ->ARITH
#line 3129 "regression-compile-tmp/asems412.imp"
sw3_Z_91:;
#line 3129 "regression-compile-tmp/asems412.imp"
OPR = 11;
#line 3129 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3130  Z(']'):OPR = RSH;   ->ARITH
#line 3130 "regression-compile-tmp/asems412.imp"
sw3_Z_93:;
#line 3130 "regression-compile-tmp/asems412.imp"
OPR = 12;
#line 3130 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3131  Z('*'):OPR = MUL;   ->ARITH
#line 3131 "regression-compile-tmp/asems412.imp"
sw3_Z_42:;
#line 3131 "regression-compile-tmp/asems412.imp"
OPR = 6;
#line 3131 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3132  Z('/'):OPR = DIV;   ->ARITH
#line 3132 "regression-compile-tmp/asems412.imp"
sw3_Z_47:;
#line 3132 "regression-compile-tmp/asems412.imp"
OPR = 7;
#line 3132 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3133  Z('Q'):OPR = RDIV;  ->ARITH
#line 3133 "regression-compile-tmp/asems412.imp"
sw3_Z_81:;
#line 3133 "regression-compile-tmp/asems412.imp"
OPR = 16;
#line 3133 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3134  Z('U'):OPR = NEG;   ->ARITH
#line 3134 "regression-compile-tmp/asems412.imp"
sw3_Z_85:;
#line 3134 "regression-compile-tmp/asems412.imp"
OPR = 2;
#line 3134 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3135  Z('\'):OPR = NOT;   ->ARITH
#line 3135 "regression-compile-tmp/asems412.imp"
sw3_Z_92:;
#line 3135 "regression-compile-tmp/asems412.imp"
OPR = 1;
#line 3135 "regression-compile-tmp/asems412.imp"
goto U_100e;
                                                                //   3136  Z('X'):
#line 3136 "regression-compile-tmp/asems412.imp"
sw3_Z_88:;
                                                                //   3137  Z(120):OPR = EXP;   ! LOWER CASE 'X'
#line 3137 "regression-compile-tmp/asems412.imp"
sw3_Z_120:;
#line 3137 "regression-compile-tmp/asems412.imp"
OPR = 13;
                                                                //   3138  
                                                                //   3139  ARITH: OPERATE(OPR);  ->NEXT
#line 3139 "regression-compile-tmp/asems412.imp"
U_100e:;
#line 3139 "regression-compile-tmp/asems412.imp"
OPERATE(OPR);
#line 3139 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3140  
                                                                //   3141  Z(118):SET LHS;    ! LOWER CASE 'V'
#line 3141 "regression-compile-tmp/asems412.imp"
sw3_Z_118:;
#line 3141 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   3142         CCREG = 0 %IF CCREG < 0
#line 3142 "regression-compile-tmp/asems412.imp"
if (((CCREG) >= (0))) goto L_034d;
#line 3142 "regression-compile-tmp/asems412.imp"
CCREG = 0;
#line 3142 "regression-compile-tmp/asems412.imp"
L_034d:;
                                                                //   3143         %IF FLOATING(LHS) %THEN K = ANYF %ELSE K = ANY
#line 3143 "regression-compile-tmp/asems412.imp"
if (!(FLOATING(LHS))) goto L_034e;
#line 3143 "regression-compile-tmp/asems412.imp"
K = 47;
#line 3143 "regression-compile-tmp/asems412.imp"
goto L_034f;
#line 3143 "regression-compile-tmp/asems412.imp"
L_034e:;
#line 3143 "regression-compile-tmp/asems412.imp"
K = 45;
#line 3143 "regression-compile-tmp/asems412.imp"
L_034f:;
                                                                //   3144         LOAD(LHS,K)
#line 3144 "regression-compile-tmp/asems412.imp"
LOAD(LHS, K);
                                                                //   3145         TEST ZERO(LHS)
#line 3145 "regression-compile-tmp/asems412.imp"
TESTZERO(LHS);
                                                                //   3146         K = LHS_BASE
#line 3146 "regression-compile-tmp/asems412.imp"
K = LHS->BASE;
                                                                //   3147         JUMP TO(3, 5, REDEFINE)
#line 3147 "regression-compile-tmp/asems412.imp"
JUMPTO(3, 5, 1);
                                                                //   3148         CLAIM(LHS_BASE)
#line 3148 "regression-compile-tmp/asems412.imp"
CLAIM(LHS->BASE);
                                                                //   3149         OPERATE(NEG);  SET LHS
#line 3149 "regression-compile-tmp/asems412.imp"
OPERATE(2);
#line 3149 "regression-compile-tmp/asems412.imp"
SETLHS();
                                                                //   3150         LOAD(LHS,K)
#line 3150 "regression-compile-tmp/asems412.imp"
LOAD(LHS, K);
                                                                //   3151         DEFINE LABEL(3)
#line 3151 "regression-compile-tmp/asems412.imp"
DEFINELABEL(3);
                                                                //   3152         FORGET(LHS_BASE)
#line 3152 "regression-compile-tmp/asems412.imp"
FORGET(LHS->BASE);
                                                                //   3153         ->NEXT
#line 3153 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3154  
                                                                //   3155  Z('S'):ASSIGN(1);  ->NEXT
#line 3155 "regression-compile-tmp/asems412.imp"
sw3_Z_83:;
#line 3155 "regression-compile-tmp/asems412.imp"
ASSIGN(1);
#line 3155 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3156  Z('Z'):ASSIGN(0);  ->NEXT
#line 3156 "regression-compile-tmp/asems412.imp"
sw3_Z_90:;
#line 3156 "regression-compile-tmp/asems412.imp"
ASSIGN(0);
#line 3156 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3157  Z(112):ASSIGN(-1);  WDISP = NEW DISP; ->NEXT;      ! LOWER CASE 'P'
#line 3157 "regression-compile-tmp/asems412.imp"
sw3_Z_112:;
#line 3157 "regression-compile-tmp/asems412.imp"
ASSIGN((-1));
#line 3157 "regression-compile-tmp/asems412.imp"
WDISP = NEWDISP;
#line 3157 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3158  
                                                                //   3159  Z(107):KNOW(R1, 1, INTEGER)
#line 3159 "regression-compile-tmp/asems412.imp"
sw3_Z_107:;
#line 3159 "regression-compile-tmp/asems412.imp"
KNOW(2, 1, 1);
                                                                //   3160  Z('='):OPR = 0;  ->COND;     !  LOWER CASE  'K'
#line 3160 "regression-compile-tmp/asems412.imp"
sw3_Z_61:;
#line 3160 "regression-compile-tmp/asems412.imp"
OPR = 0;
#line 3160 "regression-compile-tmp/asems412.imp"
goto U_100f;
                                                                //   3161  Z(116):KNOW(R1, 0, INTEGER)
#line 3161 "regression-compile-tmp/asems412.imp"
sw3_Z_116:;
#line 3161 "regression-compile-tmp/asems412.imp"
KNOW(2, 0, 1);
                                                                //   3162  Z('#'):OPR = 1;  ->COND;       ! LOWER CASE 'T'
#line 3162 "regression-compile-tmp/asems412.imp"
sw3_Z_35:;
#line 3162 "regression-compile-tmp/asems412.imp"
OPR = 1;
#line 3162 "regression-compile-tmp/asems412.imp"
goto U_100f;
                                                                //   3163  Z('<'):OPR = 2;  ->COND
#line 3163 "regression-compile-tmp/asems412.imp"
sw3_Z_60:;
#line 3163 "regression-compile-tmp/asems412.imp"
OPR = 2;
#line 3163 "regression-compile-tmp/asems412.imp"
goto U_100f;
                                                                //   3164  Z('>'):OPR = 3;  ->COND
#line 3164 "regression-compile-tmp/asems412.imp"
sw3_Z_62:;
#line 3164 "regression-compile-tmp/asems412.imp"
OPR = 3;
#line 3164 "regression-compile-tmp/asems412.imp"
goto U_100f;
                                                                //   3165  Z('('):OPR = 4;  ->COND
#line 3165 "regression-compile-tmp/asems412.imp"
sw3_Z_40:;
#line 3165 "regression-compile-tmp/asems412.imp"
OPR = 4;
#line 3165 "regression-compile-tmp/asems412.imp"
goto U_100f;
                                                                //   3166  Z(')'):OPR = 5
#line 3166 "regression-compile-tmp/asems412.imp"
sw3_Z_41:;
#line 3166 "regression-compile-tmp/asems412.imp"
OPR = 5;
                                                                //   3167  
                                                                //   3168  COND:  VAL = TAG
#line 3168 "regression-compile-tmp/asems412.imp"
U_100f:;
#line 3168 "regression-compile-tmp/asems412.imp"
VAL = TAG();
                                                                //   3169         JUMP TO(VAL, OPR+INVERT, REDEFINE)
#line 3169 "regression-compile-tmp/asems412.imp"
JUMPTO(VAL, (((int)(OPR)) + (INVERT)), 1);
                                                                //   3170         ->NEXT
#line 3170 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3171  Z('C'):SET BOTH
#line 3171 "regression-compile-tmp/asems412.imp"
sw3_Z_67:;
#line 3171 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   3172         AMAP(LHS);  AMAP(RHS)
#line 3172 "regression-compile-tmp/asems412.imp"
AMAP(LHS);
#line 3172 "regression-compile-tmp/asems412.imp"
AMAP(RHS);
                                                                //   3173  Z(126):! FIRST OF DOUBLE SIDED
#line 3173 "regression-compile-tmp/asems412.imp"
sw3_Z_126:;
                                                                //   3174  Z('?'):SET BOTH
#line 3174 "regression-compile-tmp/asems412.imp"
sw3_Z_63:;
#line 3174 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   3175         COMPARE(LHS, RHS);  STP = STP-2
#line 3175 "regression-compile-tmp/asems412.imp"
COMPARE(LHS, RHS);
#line 3175 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   3176         DROP(RHS);  DROP(LHS)
#line 3176 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 3176 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3177         ->NEXT
#line 3177 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3178  Z('"'):ST WORK = STACKED(STP+SWOPPED+1)_V
#line 3178 "regression-compile-tmp/asems412.imp"
sw3_Z_34:;
#line 3178 "regression-compile-tmp/asems412.imp"
STWORK = *STACKED[(((int)((((int)((((int)(STP)) + (SWOPPED)))) + (1)))) - (1))].V;
                                                                //   3179         SSTACK(ST WORK)
#line 3179 "regression-compile-tmp/asems412.imp"
SSTACK(&STWORK);
                                                                //   3180         WDISP = SDISP
#line 3180 "regression-compile-tmp/asems412.imp"
WDISP = SDISP;
                                                                //   3181         ->NEXT
#line 3181 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3182  Z('_'):LIMEN = CA
#line 3182 "regression-compile-tmp/asems412.imp"
sw3_Z_95:;
#line 3182 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
                                                                //   3183         UNCONDJUMP = 0
#line 3183 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = 0;
                                                                //   3184         V == VAR(LOOKUP(TAG));  POP LHS;  DROP(LHS)
#line 3184 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)(LOOKUP(TAG()))) - (1))];
#line 3184 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3184 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3185         GPATCH(CA, V_EXTRA+LHS_DISP*2)
#line 3185 "regression-compile-tmp/asems412.imp"
GPATCH(CA, ((V->EXTRA) + ((short)((((int)(LHS->DISP)) * (2))))));
                                                                //   3186         ->NEXT
#line 3186 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3187  Z('W'):V == VAR(LOOKUP(TAG))
#line 3187 "regression-compile-tmp/asems412.imp"
sw3_Z_87:;
#line 3187 "regression-compile-tmp/asems412.imp"
V = &VAR[(((int)(LOOKUP(TAG()))) - (1))];
                                                                //   3188         %IF CONTROL&TEST SWITCH # 0 %START
#line 3188 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (1))) == (0))) goto L_0350;
                                                                //   3189            HALF = GLA;  K = V_DISP
#line 3189 "regression-compile-tmp/asems412.imp"
HALF = 42;
#line 3189 "regression-compile-tmp/asems412.imp"
K = V->DISP;
                                                                //   3190            RANGE(HALF, K)
#line 3190 "regression-compile-tmp/asems412.imp"
RANGE(&HALF, &K);
                                                                //   3191            POP LHS;  LRD(LHS, R1)
#line 3191 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3191 "regression-compile-tmp/asems412.imp"
LRD(LHS, 2);
                                                                //   3192            RI2(LHI, R2, HALF, K)
#line 3192 "regression-compile-tmp/asems412.imp"
RI2(51200, 3, HALF, K);
                                                                //   3193            PERM(SWJUMP)
#line 3193 "regression-compile-tmp/asems412.imp"
PERM(126724);
                                                                //   3194         %ELSE
#line 3194 "regression-compile-tmp/asems412.imp"
goto L_0351;
#line 3194 "regression-compile-tmp/asems412.imp"
L_0350:;
                                                                //   3195            CSTACK(1);  OPERATE(LSH)
#line 3195 "regression-compile-tmp/asems412.imp"
CSTACK(1);
#line 3195 "regression-compile-tmp/asems412.imp"
OPERATE(11);
                                                                //   3196            POP LHS;  LRD(LHS, ANY0)
#line 3196 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3196 "regression-compile-tmp/asems412.imp"
LRD(LHS, 46);
                                                                //   3197            J = ACTUAL(LHS_BASE)
#line 3197 "regression-compile-tmp/asems412.imp"
J = ACTUAL[LHS->BASE];
                                                                //   3198            DUMP(LHL+J<<4+ACTUAL(GLA))
#line 3198 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((29440) + ((int)(((J) << (4))))))) + (ACTUAL[42])));
                                                                //   3199            K = V_EXTRA
#line 3199 "regression-compile-tmp/asems412.imp"
K = V->EXTRA;
                                                                //   3200            DUMP(X'4000'+J<<8+K>>16&255)
#line 3200 "regression-compile-tmp/asems412.imp"
DUMP((((((16384) + ((int)(((J) << (8))))))) + ((((int)((((unsigned int)(K)) >> (16)))) & (255)))));
                                                                //   3201            DUMP(K&X'FFFF')
#line 3201 "regression-compile-tmp/asems412.imp"
DUMP(((K) & (65535)));
                                                                //   3202            DUMP(AR+J<<4+ACTUAL(CODE))
#line 3202 "regression-compile-tmp/asems412.imp"
DUMP((((unsigned char)(((2560) + ((int)(((J) << (4))))))) + (ACTUAL[44])));
                                                                //   3203            DUMP(BFCR+J)
#line 3203 "regression-compile-tmp/asems412.imp"
DUMP((((int)(768)) + (J)));
                                                                //   3204            LIMEN = CA;  UNCOND JUMP = CA
#line 3204 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
#line 3204 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = CA;
                                                                //   3205         %FINISH
#line 3205 "regression-compile-tmp/asems412.imp"
L_0351:;
                                                                //   3206         ->NEXT
#line 3206 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3207  Z('B'):
#line 3207 "regression-compile-tmp/asems412.imp"
sw3_Z_66:;
                                                                //   3208  Z(113):       ! LOWER CASE 'Q'
#line 3208 "regression-compile-tmp/asems412.imp"
sw3_Z_113:;
                                                                //   3209        JUMP TO(TAG, JUMP, DEFINE);  ->NEXT
#line 3209 "regression-compile-tmp/asems412.imp"
JUMPTO(TAG(), 12, 0);
#line 3209 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3210  Z('F'):
#line 3210 "regression-compile-tmp/asems412.imp"
sw3_Z_70:;
                                                                //   3211  Z(117):      ! LOWER CASE 'U'
#line 3211 "regression-compile-tmp/asems412.imp"
sw3_Z_117:;
                                                                //   3212        JUMP TO(TAG, JUMP, REDEFINE);  ->NEXT
#line 3212 "regression-compile-tmp/asems412.imp"
JUMPTO(TAG(), 12, 1);
#line 3212 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3213  Z('J'):JUMP TO(-TAG, JUMP, DEFINE);  ->NEXT
#line 3213 "regression-compile-tmp/asems412.imp"
sw3_Z_74:;
#line 3213 "regression-compile-tmp/asems412.imp"
JUMPTO((-(TAG())), 12, 0);
#line 3213 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3214  Z('L'):DEFINE LABEL(-TAG);  ->NEXT
#line 3214 "regression-compile-tmp/asems412.imp"
sw3_Z_76:;
#line 3214 "regression-compile-tmp/asems412.imp"
DEFINELABEL((-(TAG())));
#line 3214 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3215  Z(':'):DEFINE LABEL(TAG);  ->NEXT
#line 3215 "regression-compile-tmp/asems412.imp"
sw3_Z_58:;
#line 3215 "regression-compile-tmp/asems412.imp"
DEFINELABEL(TAG());
#line 3215 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3216  Z(102):FOR;  ->NEXT;      !  LOWER CASE 'F'
#line 3216 "regression-compile-tmp/asems412.imp"
sw3_Z_102:;
#line 3216 "regression-compile-tmp/asems412.imp"
FOR();
#line 3216 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3217  
                                                                //   3218  Z('P'):POP LHS;  DROP(LHS);    DUMP(LHS_DISP);  LIMEN = CA;  ->NEXT
#line 3218 "regression-compile-tmp/asems412.imp"
sw3_Z_80:;
#line 3218 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3218 "regression-compile-tmp/asems412.imp"
DROP(LHS);
#line 3218 "regression-compile-tmp/asems412.imp"
DUMP(LHS->DISP);
#line 3218 "regression-compile-tmp/asems412.imp"
LIMEN = CA;
#line 3218 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3219  Z(122):POP LHS;  DROP(LHS);  CONTROL = LHS_DISP
#line 3219 "regression-compile-tmp/asems412.imp"
sw3_Z_122:;
#line 3219 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3219 "regression-compile-tmp/asems412.imp"
DROP(LHS);
#line 3219 "regression-compile-tmp/asems412.imp"
CONTROL = LHS->DISP;
                                                                //   3220         %IF CONTROL&UNASS DIAG # 0 %START
#line 3220 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_0352;
                                                                //   3221            ACTIVITY(R4) = -1
#line 3221 "regression-compile-tmp/asems412.imp"
ACTIVITY[5] = (-1);
                                                                //   3222            ABORT(-14) %IF ENTER UNASS = 0
#line 3222 "regression-compile-tmp/asems412.imp"
if (((ENTERUNASS) != (0))) goto L_0353;
#line 3222 "regression-compile-tmp/asems412.imp"
ABORT((-14));
#line 3222 "regression-compile-tmp/asems412.imp"
L_0353:;
                                                                //   3223         %FINISH %ELSE ACTIVITY(R4) = 0
#line 3223 "regression-compile-tmp/asems412.imp"
goto L_0354;
#line 3223 "regression-compile-tmp/asems412.imp"
L_0352:;
#line 3223 "regression-compile-tmp/asems412.imp"
ACTIVITY[5] = 0;
#line 3223 "regression-compile-tmp/asems412.imp"
L_0354:;
                                                                //   3224         ->NEXT
#line 3224 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3225  
                                                                //   3226  Z(100):ABORT(-9) %IF TAG # 1;    ! LOWER CASE 'D'
#line 3226 "regression-compile-tmp/asems412.imp"
sw3_Z_100:;
#line 3226 "regression-compile-tmp/asems412.imp"
if (((TAG()) == (1))) goto L_0355;
#line 3226 "regression-compile-tmp/asems412.imp"
ABORT((-9));
#line 3226 "regression-compile-tmp/asems412.imp"
L_0355:;
                                                                //   3227         SET BOTH
#line 3227 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   3228         DOPE = 0
#line 3228 "regression-compile-tmp/asems412.imp"
DOPE = 0;
                                                                //   3229         %UNLESS CONST(LHS) %AND CONST(RHS) %START
#line 3229 "regression-compile-tmp/asems412.imp"
if (!(CONST(LHS))) goto L_0341;
#line 3229 "regression-compile-tmp/asems412.imp"
if (CONST(RHS)) goto L_0356;
#line 3229 "regression-compile-tmp/asems412.imp"
L_0341:;
                                                                //   3230            LOAD(LHS, P2);  LOAD(RHS, R3)
#line 3230 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 6);
#line 3230 "regression-compile-tmp/asems412.imp"
LOAD(RHS, 4);
                                                                //   3231            DOPE = -FRAME;  FRAME = FRAME+12
#line 3231 "regression-compile-tmp/asems412.imp"
DOPE = (-(FRAME));
#line 3231 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) + (12));
                                                                //   3232            DYNAMIC = -1
#line 3232 "regression-compile-tmp/asems412.imp"
DYNAMIC = (-1);
                                                                //   3233         %ELSE
#line 3233 "regression-compile-tmp/asems412.imp"
goto L_0357;
#line 3233 "regression-compile-tmp/asems412.imp"
L_0356:;
                                                                //   3234            DYNAMIC = 0
#line 3234 "regression-compile-tmp/asems412.imp"
DYNAMIC = 0;
                                                                //   3235            VLB = LHS_DISP;  VUB = RHS_DISP
#line 3235 "regression-compile-tmp/asems412.imp"
VLB = LHS->DISP;
#line 3235 "regression-compile-tmp/asems412.imp"
VUB = RHS->DISP;
                                                                //   3236            ABORT(-7) %AND VUB = VLB %UNLESS VLB <= VUB
#line 3236 "regression-compile-tmp/asems412.imp"
if (((VLB) <= (VUB))) goto L_0358;
#line 3236 "regression-compile-tmp/asems412.imp"
ABORT((-7));
#line 3236 "regression-compile-tmp/asems412.imp"
VUB = VLB;
#line 3236 "regression-compile-tmp/asems412.imp"
L_0358:;
                                                                //   3237         %FINISH
#line 3237 "regression-compile-tmp/asems412.imp"
L_0357:;
                                                                //   3238         STP = STP-2
#line 3238 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   3239         DROP(RHS);  DROP(LHS)
#line 3239 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 3239 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3240         ->NEXT
#line 3240 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3241  Z(104):%IF DYNAMIC # 0 %START;   ! LOWER CASE 'H'
#line 3241 "regression-compile-tmp/asems412.imp"
sw3_Z_104:;
#line 3241 "regression-compile-tmp/asems412.imp"
if (((DYNAMIC) == (0))) goto L_0359;
                                                                //   3242            %IF DYNAMIC < 0 %START
#line 3242 "regression-compile-tmp/asems412.imp"
if (((DYNAMIC) >= (0))) goto L_035a;
                                                                //   3243               RI2(LHI, P1, LOCAL, -DOPE)
#line 3243 "regression-compile-tmp/asems412.imp"
RI2(51200, 7, LOCAL, (-(DOPE)));
                                                                //   3244  BIG STATIC:  CSTACK(DATA SIZE);  POP LHS;  LRD(LHS, R1)
#line 3244 "regression-compile-tmp/asems412.imp"
U_1010:;
#line 3244 "regression-compile-tmp/asems412.imp"
CSTACK(DATASIZE);
#line 3244 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3244 "regression-compile-tmp/asems412.imp"
LRD(LHS, 2);
                                                                //   3245               RELEASE(P2);  RELEASE(R3)
#line 3245 "regression-compile-tmp/asems412.imp"
RELEASE(6);
#line 3245 "regression-compile-tmp/asems412.imp"
RELEASE(4);
                                                                //   3246               PERM(ASET)
#line 3246 "regression-compile-tmp/asems412.imp"
PERM(28421);
                                                                //   3247               DYNAMIC = 1
#line 3247 "regression-compile-tmp/asems412.imp"
DYNAMIC = 1;
                                                                //   3248            %FINISH
#line 3248 "regression-compile-tmp/asems412.imp"
L_035a:;
                                                                //   3249            DECVAR_FORM = ARRAYNAME;  DECVAR_DISP = FRAME
#line 3249 "regression-compile-tmp/asems412.imp"
DECVAR->FORM = 12;
#line 3249 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = FRAME;
                                                                //   3250            FRAME = FRAME+8
#line 3250 "regression-compile-tmp/asems412.imp"
FRAME = (((int)(FRAME)) + (8));
                                                                //   3251            RI2(LHI, R3, LOCAL, DECVAR_DISP);  PERM(ALLOC)
#line 3251 "regression-compile-tmp/asems412.imp"
RI2(51200, 4, LOCAL, DECVAR->DISP);
#line 3251 "regression-compile-tmp/asems412.imp"
PERM(11785);
                                                                //   3252         %ELSE
#line 3252 "regression-compile-tmp/asems412.imp"
goto L_035b;
#line 3252 "regression-compile-tmp/asems412.imp"
L_0359:;
                                                                //   3253            %IF DOPE = 0 %START
#line 3253 "regression-compile-tmp/asems412.imp"
if (((DOPE) != (0))) goto L_035c;
                                                                //   3254               GFIX(4);  DOPE = GA
#line 3254 "regression-compile-tmp/asems412.imp"
GFIX(4);
#line 3254 "regression-compile-tmp/asems412.imp"
DOPE = GA;
                                                                //   3255               GWORD(VLB);  GWORD(VUB);  GWORD(DATA SIZE)
#line 3255 "regression-compile-tmp/asems412.imp"
GWORD(VLB);
#line 3255 "regression-compile-tmp/asems412.imp"
GWORD(VUB);
#line 3255 "regression-compile-tmp/asems412.imp"
GWORD(DATASIZE);
                                                                //   3256            %FINISH
#line 3256 "regression-compile-tmp/asems412.imp"
L_035c:;
                                                                //   3257            K = (VUB-VLB+1)*DATA SIZE + FRAME
#line 3257 "regression-compile-tmp/asems412.imp"
K = (((int)((((int)((((int)((((int)(VUB)) - (VLB)))) + (1)))) * (DATASIZE)))) + (FRAME));
                                                                //   3258            %IF K > MAX STATIC %AND GMODE = 0 %START;    ! TOO BIG FOR LOCALS
#line 3258 "regression-compile-tmp/asems412.imp"
if (((K) <= (13000))) goto L_035d;
#line 3258 "regression-compile-tmp/asems412.imp"
if (((GMODE) != (0))) goto L_035d;
                                                                //   3259               CSTACK(VLB);  CSTACK(VUB);  SET BOTH
#line 3259 "regression-compile-tmp/asems412.imp"
CSTACK(VLB);
#line 3259 "regression-compile-tmp/asems412.imp"
CSTACK(VUB);
#line 3259 "regression-compile-tmp/asems412.imp"
SETBOTH();
                                                                //   3260               LOAD(LHS, P2);  LOAD(RHS, R3)
#line 3260 "regression-compile-tmp/asems412.imp"
LOAD(LHS, 6);
#line 3260 "regression-compile-tmp/asems412.imp"
LOAD(RHS, 4);
                                                                //   3261               DROP(RHS);  DROP(LHS);  STP = STP-2
#line 3261 "regression-compile-tmp/asems412.imp"
DROP(RHS);
#line 3261 "regression-compile-tmp/asems412.imp"
DROP(LHS);
#line 3261 "regression-compile-tmp/asems412.imp"
STP = (((int)(STP)) - (2));
                                                                //   3262               RI2(LHI, P1, GLA, DOPE);  FORGET(P1)
#line 3262 "regression-compile-tmp/asems412.imp"
RI2(51200, 7, 42, DOPE);
#line 3262 "regression-compile-tmp/asems412.imp"
FORGET(7);
                                                                //   3263               DOPE = -DOPE
#line 3263 "regression-compile-tmp/asems412.imp"
DOPE = (-(DOPE));
                                                                //   3264               -> BIG STATIC
#line 3264 "regression-compile-tmp/asems412.imp"
goto U_1010;
                                                                //   3265            %FINISH
#line 3265 "regression-compile-tmp/asems412.imp"
L_035d:;
                                                                //   3266            DECVAR_DISP = FRAME-VLB*DATA SIZE
#line 3266 "regression-compile-tmp/asems412.imp"
DECVAR->DISP = ((FRAME) - ((int)((((int)(VLB)) * (DATASIZE)))));
                                                                //   3267            FRAME = K
#line 3267 "regression-compile-tmp/asems412.imp"
FRAME = K;
                                                                //   3268         %FINISH
#line 3268 "regression-compile-tmp/asems412.imp"
L_035b:;
                                                                //   3269         DECVAR_EXTRA = DOPE
#line 3269 "regression-compile-tmp/asems412.imp"
DECVAR->EXTRA = DOPE;
                                                                //   3270  Z(99):->NEXT;    ! LOWER CASE 'C'
#line 3270 "regression-compile-tmp/asems412.imp"
sw3_Z_99:;
#line 3270 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3271  Z('G'):READSYMBOL(GG)
#line 3271 "regression-compile-tmp/asems412.imp"
sw3_Z_71:;
#line 3271 "regression-compile-tmp/asems412.imp"
_imp_READSYMBOL(&GG);
                                                                //   3272         GMODE = \GMODE
#line 3272 "regression-compile-tmp/asems412.imp"
GMODE = (~(GMODE));
                                                                //   3273         %IF GMODE # 0 %START
#line 3273 "regression-compile-tmp/asems412.imp"
if (((GMODE) == (0))) goto L_035e;
                                                                //   3274            ASSEMBLE(GTYPE, LABS, NAMES)
#line 3274 "regression-compile-tmp/asems412.imp"
ASSEMBLE(GTYPE, LABS, NAMES);
                                                                //   3275         %ELSE
#line 3275 "regression-compile-tmp/asems412.imp"
goto L_035f;
#line 3275 "regression-compile-tmp/asems412.imp"
L_035e:;
                                                                //   3276            SPS = 0;  N = P1
#line 3276 "regression-compile-tmp/asems412.imp"
SPS = 0;
#line 3276 "regression-compile-tmp/asems412.imp"
N = 7;
                                                                //   3277            GVAR_LENGTH = (FRAME+(REGLEN-1))&(\(REGLEN-1)) %IF GG=FORMATS
#line 3277 "regression-compile-tmp/asems412.imp"
if (((GG) != (50))) goto L_0360;
#line 3277 "regression-compile-tmp/asems412.imp"
GVAR->LENGTH = ((((FRAME) + ((int)(3)))) & ((~(3))));
#line 3277 "regression-compile-tmp/asems412.imp"
L_0360:;
                                                                //   3278            LEN = NAMES-GSTART
#line 3278 "regression-compile-tmp/asems412.imp"
LEN = (((int)(NAMES)) - (GSTART));
                                                                //   3279            J = 0;  J = LEN %IF GG = FORMATS
#line 3279 "regression-compile-tmp/asems412.imp"
J = 0;
#line 3279 "regression-compile-tmp/asems412.imp"
if (((GG) != (50))) goto L_0361;
#line 3279 "regression-compile-tmp/asems412.imp"
J = LEN;
#line 3279 "regression-compile-tmp/asems412.imp"
L_0361:;
                                                                //   3280            %IF LEN > 0 %START
#line 3280 "regression-compile-tmp/asems412.imp"
if (((LEN) <= (0))) goto L_0362;
                                                                //   3281               LEN = 0
#line 3281 "regression-compile-tmp/asems412.imp"
LEN = 0;
                                                                //   3282               GVAR_EXTRA = PARMS-J
#line 3282 "regression-compile-tmp/asems412.imp"
GVAR->EXTRA = (((int)(PARMS)) - (J));
                                                                //   3283               %FOR J = GSTART+1, 1, NAMES %CYCLE
#line 3283 "regression-compile-tmp/asems412.imp"
{static int _initial, _increment, _final, _control;
_initial = (((int)(GSTART)) + (1)); _increment = 1; _final = NAMES; J = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle J = (((int)(GSTART)) + (1)), 1, NAMES");
J -= _increment; _control -= _increment;
L_0363:;
if (J == _final) goto L_0364;
J += _increment; _control += _increment;
if (J != _control) _imp_signal(4,2,0,"Corrupt control variable J"); /* FOR loop control variable corrupted */
}
                                                                //   3284                  PARMS = PARMS-1
#line 3284 "regression-compile-tmp/asems412.imp"
PARMS = (((int)(PARMS)) - (1));
                                                                //   3285                  FP == VAR(PARMS);  AP == VAR(J)
#line 3285 "regression-compile-tmp/asems412.imp"
FP = &VAR[(((int)(PARMS)) - (1))];
#line 3285 "regression-compile-tmp/asems412.imp"
AP = &VAR[(((int)(J)) - (1))];
                                                                //   3286                  FP = AP
#line 3286 "regression-compile-tmp/asems412.imp"
*FP = *AP;
                                                                //   3287                  %IF GG # FORMATS %START
#line 3287 "regression-compile-tmp/asems412.imp"
if (((GG) == (50))) goto L_0366;
                                                                //   3288                     %IF FP_BASE = PARAM %START
#line 3288 "regression-compile-tmp/asems412.imp"
if (((FP->BASE) != (48))) goto L_0367;
                                                                //   3289                        AP_BASE = LOCAL;  FP_DISP = N
#line 3289 "regression-compile-tmp/asems412.imp"
AP->BASE = LOCAL;
#line 3289 "regression-compile-tmp/asems412.imp"
FP->DISP = N;
                                                                //   3290                        %IF GG = PROCEDURE %START
#line 3290 "regression-compile-tmp/asems412.imp"
if (((GG) != (49))) goto L_0368;
                                                                //   3291                           VSTACK(AP);  POP LHS;  DROP(LHS)
#line 3291 "regression-compile-tmp/asems412.imp"
VSTACK(AP);
#line 3291 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3291 "regression-compile-tmp/asems412.imp"
DROP(LHS);
                                                                //   3292                           %IF LHS_FORM # V IN S %START
#line 3292 "regression-compile-tmp/asems412.imp"
if (((LHS->FORM) == (3))) goto L_0369;
                                                                //   3293                              LHS_TYPE = INTEGER;  LHS_FORM = V IN S
#line 3293 "regression-compile-tmp/asems412.imp"
LHS->TYPE = 1;
#line 3293 "regression-compile-tmp/asems412.imp"
LHS->FORM = 3;
                                                                //   3294                           %FINISH
#line 3294 "regression-compile-tmp/asems412.imp"
L_0369:;
                                                                //   3295                           REMEMBER(N, LHS)
#line 3295 "regression-compile-tmp/asems412.imp"
REMEMBER(N, LHS);
                                                                //   3296                        %FINISH
#line 3296 "regression-compile-tmp/asems412.imp"
L_0368:;
                                                                //   3297                     %ELSE
#line 3297 "regression-compile-tmp/asems412.imp"
goto L_036a;
#line 3297 "regression-compile-tmp/asems412.imp"
L_0367:;
                                                                //   3298                        FP_BASE = WSP;  N = P2
#line 3298 "regression-compile-tmp/asems412.imp"
FP->BASE = 43;
#line 3298 "regression-compile-tmp/asems412.imp"
N = 6;
                                                                //   3299                     %FINISH
#line 3299 "regression-compile-tmp/asems412.imp"
L_036a:;
                                                                //   3300                  %FINISH
#line 3300 "regression-compile-tmp/asems412.imp"
L_0366:;
                                                                //   3301                  %IF CONTROL < 0 %START
#line 3301 "regression-compile-tmp/asems412.imp"
if (((CONTROL) >= (0))) goto L_036b;
                                                                //   3302                     DISPLAY VAR(FP);  DISPLAY VAR(AP)
#line 3302 "regression-compile-tmp/asems412.imp"
DISPLAYVAR(FP);
#line 3302 "regression-compile-tmp/asems412.imp"
DISPLAYVAR(AP);
                                                                //   3303                  %FINISH
#line 3303 "regression-compile-tmp/asems412.imp"
L_036b:;
                                                                //   3304                  N = N-1
#line 3304 "regression-compile-tmp/asems412.imp"
N = (((int)(N)) - (1));
                                                                //   3305               %REPEAT
#line 3305 "regression-compile-tmp/asems412.imp"
goto L_0363;
#line 3305 "regression-compile-tmp/asems412.imp"
L_0364:;
                                                                //   3306               ABORT(-4) %IF PARMS <= NAMES
#line 3306 "regression-compile-tmp/asems412.imp"
if (((PARMS) > (NAMES))) goto L_036c;
#line 3306 "regression-compile-tmp/asems412.imp"
ABORT((-4));
#line 3306 "regression-compile-tmp/asems412.imp"
L_036c:;
                                                                //   3307               %IF GG # FORMATS %START
#line 3307 "regression-compile-tmp/asems412.imp"
if (((GG) == (50))) goto L_036d;
                                                                //   3308                  %IF FP_TYPE = STRING %AND FP_FORM = 1 %START
#line 3308 "regression-compile-tmp/asems412.imp"
if (((FP->TYPE) != (4))) goto L_036e;
#line 3308 "regression-compile-tmp/asems412.imp"
if (((FP->FORM) != (1))) goto L_036e;
                                                                //   3309                     FP_TYPE = 15;  N = 0
#line 3309 "regression-compile-tmp/asems412.imp"
FP->TYPE = 15;
#line 3309 "regression-compile-tmp/asems412.imp"
N = 0;
                                                                //   3310                  %FINISH
#line 3310 "regression-compile-tmp/asems412.imp"
L_036e:;
                                                                //   3311               %FINISH
#line 3311 "regression-compile-tmp/asems412.imp"
L_036d:;
                                                                //   3312            %FINISH
#line 3312 "regression-compile-tmp/asems412.imp"
L_0362:;
                                                                //   3313            ->OUT %IF GG # PROCEDURE
#line 3313 "regression-compile-tmp/asems412.imp"
if (((GG) == (49))) goto L_036f;
#line 3313 "regression-compile-tmp/asems412.imp"
goto U_1011;
#line 3313 "regression-compile-tmp/asems412.imp"
L_036f:;
                                                                //   3314            HEADER(GVAR)
#line 3314 "regression-compile-tmp/asems412.imp"
HEADER(GVAR);
                                                                //   3315            %IF N = 0 %START
#line 3315 "regression-compile-tmp/asems412.imp"
if (((N) != (0))) goto L_0370;
                                                                //   3316               RX(LHI, R2, LOCAL, AP_DISP)
#line 3316 "regression-compile-tmp/asems412.imp"
RX(51200, 3, LOCAL, AP->DISP);
                                                                //   3317               %IF CONTROL&ASSDIAG # 0 %AND AP_SIZE # 255 %START
#line 3317 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (16))) == (0))) goto L_0371;
#line 3317 "regression-compile-tmp/asems412.imp"
if (((AP->SIZE) == (255))) goto L_0371;
                                                                //   3318                  CSTACK(AP_SIZE);  POP LHS;  LRD(LHS, R0)
#line 3318 "regression-compile-tmp/asems412.imp"
CSTACK(AP->SIZE);
#line 3318 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3318 "regression-compile-tmp/asems412.imp"
LRD(LHS, 1);
                                                                //   3319                  PERM(STRING ASS)
#line 3319 "regression-compile-tmp/asems412.imp"
PERM(21);
                                                                //   3320               %FINISH
#line 3320 "regression-compile-tmp/asems412.imp"
L_0371:;
                                                                //   3321               PERM(SMOVE)
#line 3321 "regression-compile-tmp/asems412.imp"
PERM(2315);
                                                                //   3322            %FINISH
#line 3322 "regression-compile-tmp/asems412.imp"
L_0370:;
                                                                //   3323         %FINISH
#line 3323 "regression-compile-tmp/asems412.imp"
L_035f:;
                                                                //   3324         ->NEXT
#line 3324 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3325  Z('H'):
#line 3325 "regression-compile-tmp/asems412.imp"
sw3_Z_72:;
                                                                //   3326         %IF CA = 0 %START;           ! INITIAL BEGIN
#line 3326 "regression-compile-tmp/asems412.imp"
if (((CA) != (0))) goto L_0372;
                                                                //   3327            ENTER UNASS = 0
#line 3327 "regression-compile-tmp/asems412.imp"
ENTERUNASS = 0;
                                                                //   3328            %IF CONTROL&UNASS DIAG # 0 %START
#line 3328 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_0373;
                                                                //   3329               ENTER UNASS = X'0140'+ACTUAL(CODE)
#line 3329 "regression-compile-tmp/asems412.imp"
ENTERUNASS = ((320) + ((int)(ACTUAL[44])));
                                                                //   3330               DUMP(X'0234');  DUMP(X'0884');  DUMP(X'2401')
#line 3330 "regression-compile-tmp/asems412.imp"
DUMP(564);
#line 3330 "regression-compile-tmp/asems412.imp"
DUMP(2180);
#line 3330 "regression-compile-tmp/asems412.imp"
DUMP(9217);
                                                                //   3331               DUMP(X'2410');  DUMP(X'2440')
#line 3331 "regression-compile-tmp/asems412.imp"
DUMP(9232);
#line 3331 "regression-compile-tmp/asems412.imp"
DUMP(9280);
                                                                //   3332               DUMP(X'583D');  DUMP(SIGNAL EP)
#line 3332 "regression-compile-tmp/asems412.imp"
DUMP(22589);
#line 3332 "regression-compile-tmp/asems412.imp"
DUMP(4);
                                                                //   3333               DUMP(X'0303')
#line 3333 "regression-compile-tmp/asems412.imp"
DUMP(771);
                                                                //   3334               DUMP(X'8080');  DUMP(X'8080')
#line 3334 "regression-compile-tmp/asems412.imp"
DUMP(32896);
#line 3334 "regression-compile-tmp/asems412.imp"
DUMP(32896);
                                                                //   3335               DUMP(X'8080');  DUMP(X'8080')
#line 3335 "regression-compile-tmp/asems412.imp"
DUMP(32896);
#line 3335 "regression-compile-tmp/asems412.imp"
DUMP(32896);
                                                                //   3336            %FINISH
#line 3336 "regression-compile-tmp/asems412.imp"
L_0373:;
                                                                //   3337            HEADER(BEGIN)
#line 3337 "regression-compile-tmp/asems412.imp"
HEADER(&BEGIN);
                                                                //   3338         %FINISH
#line 3338 "regression-compile-tmp/asems412.imp"
L_0372:;
                                                                //   3339         N = TEMP
#line 3339 "regression-compile-tmp/asems412.imp"
N = TEMP();
                                                                //   3340         HALF = LOCAL;  K = N;  RANGE(HALF, K)
#line 3340 "regression-compile-tmp/asems412.imp"
HALF = LOCAL;
#line 3340 "regression-compile-tmp/asems412.imp"
K = N;
#line 3340 "regression-compile-tmp/asems412.imp"
RANGE(&HALF, &K);
                                                                //   3341         RX(ST, WSP, HALF, K)
#line 3341 "regression-compile-tmp/asems412.imp"
RX(20480, 43, HALF, K);
                                                                //   3342         DECVAR == BEGIN
#line 3342 "regression-compile-tmp/asems412.imp"
DECVAR = &BEGIN;
                                                                //   3343         ASSEMBLE(0, LABS, NAMES)
#line 3343 "regression-compile-tmp/asems412.imp"
ASSEMBLE(0, LABS, NAMES);
                                                                //   3344         HALF = LOCAL;  K = N;  RANGE(HALF, K)
#line 3344 "regression-compile-tmp/asems412.imp"
HALF = LOCAL;
#line 3344 "regression-compile-tmp/asems412.imp"
K = N;
#line 3344 "regression-compile-tmp/asems412.imp"
RANGE(&HALF, &K);
                                                                //   3345         RX(LW, WSP, HALF, K)
#line 3345 "regression-compile-tmp/asems412.imp"
RX(22528, 43, HALF, K);
                                                                //   3346         ->NEXT
#line 3346 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3347  
                                                                //   3348  Z(115):                     ! LOWER CASE 'S'  -  %STOP
#line 3348 "regression-compile-tmp/asems412.imp"
sw3_Z_115:;
                                                                //   3349         CSTACK(0);  CSTACK(0)
#line 3349 "regression-compile-tmp/asems412.imp"
CSTACK(0);
#line 3349 "regression-compile-tmp/asems412.imp"
CSTACK(0);
                                                                //   3350  Z(101):     !  LOWER CASE 'E' -- %SIGNAL EVENT,SUBEVENT,EXTRA
#line 3350 "regression-compile-tmp/asems412.imp"
sw3_Z_101:;
                                                                //   3351         N = STP+R0-1
#line 3351 "regression-compile-tmp/asems412.imp"
N = (((int)((((int)(STP)) + (1)))) - (1));
                                                                //   3352         %WHILE STP # 0 %CYCLE
#line 3352 "regression-compile-tmp/asems412.imp"
L_0374:;
#line 3352 "regression-compile-tmp/asems412.imp"
if (((STP) == (0))) goto L_0375;
                                                                //   3353            POP LHS;  LRD(LHS, N-STP)
#line 3353 "regression-compile-tmp/asems412.imp"
POPLHS();
#line 3353 "regression-compile-tmp/asems412.imp"
LRD(LHS, (((int)(N)) - (STP)));
                                                                //   3354         %REPEAT
#line 3354 "regression-compile-tmp/asems412.imp"
goto L_0374;
#line 3354 "regression-compile-tmp/asems412.imp"
L_0375:;
                                                                //   3355         PERM(MONITOR)
#line 3355 "regression-compile-tmp/asems412.imp"
PERM(126721);
                                                                //   3356         UNCOND JUMP = CA;  STP = 0
#line 3356 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = CA;
#line 3356 "regression-compile-tmp/asems412.imp"
STP = 0;
                                                                //   3357         -> NEXT
#line 3357 "regression-compile-tmp/asems412.imp"
goto U_100c;
                                                                //   3358  
                                                                //   3359  Z(';'):%IF AMODE = 0 %START
#line 3359 "regression-compile-tmp/asems412.imp"
sw3_Z_59:;
#line 3359 "regression-compile-tmp/asems412.imp"
if (((AMODE) != (0))) goto L_0377;
                                                                //   3360            OLD FRAME = FRAME
#line 3360 "regression-compile-tmp/asems412.imp"
OLDFRAME = FRAME;
                                                                //   3361         %ELSE
#line 3361 "regression-compile-tmp/asems412.imp"
goto L_0378;
#line 3361 "regression-compile-tmp/asems412.imp"
L_0377:;
                                                                //   3362            PATCH((FRAME+(REGLEN-1))&(\(REGLEN-1)), SIZE PATCH)
#line 3362 "regression-compile-tmp/asems412.imp"
PATCH(((((FRAME) + ((int)(3)))) & ((~(3)))), SIZEPATCH);
                                                                //   3363            %IF UNCOND JUMP # CA %START
#line 3363 "regression-compile-tmp/asems412.imp"
if (((UNCONDJUMP) == (CA))) goto L_0379;
                                                                //   3364               %IF GVAR_TYPE # 0 %START
#line 3364 "regression-compile-tmp/asems412.imp"
if (((GVAR->TYPE) == (0))) goto L_037a;
                                                                //   3365                  ABORT(-11);       ! ...%RESULT MISSING
#line 3365 "regression-compile-tmp/asems412.imp"
ABORT((-11));
                                                                //   3366               %ELSE
#line 3366 "regression-compile-tmp/asems412.imp"
goto L_037b;
#line 3366 "regression-compile-tmp/asems412.imp"
L_037a:;
                                                                //   3367                  RETURN
#line 3367 "regression-compile-tmp/asems412.imp"
RETURN();
                                                                //   3368               %FINISH
#line 3368 "regression-compile-tmp/asems412.imp"
L_037b:;
                                                                //   3369            %FINISH
#line 3369 "regression-compile-tmp/asems412.imp"
L_0379:;
                                                                //   3370         %FINISH
#line 3370 "regression-compile-tmp/asems412.imp"
L_0378:;
                                                                //   3371         SET DIAG(0, 0, 0, -1)
#line 3371 "regression-compile-tmp/asems412.imp"
SETDIAG(0, 0, 0, (-1));
                                                                //   3372  OUT:   FRAME = OLD FRAME
#line 3372 "regression-compile-tmp/asems412.imp"
U_1011:;
#line 3372 "regression-compile-tmp/asems412.imp"
FRAME = OLDFRAME;
                                                                //   3373         %IF AMODE > 0 %START
#line 3373 "regression-compile-tmp/asems412.imp"
if (((AMODE) <= (0))) goto L_037c;
                                                                //   3374            ACTIVITY(LOCAL) = 0
#line 3374 "regression-compile-tmp/asems412.imp"
ACTIVITY[LOCAL] = 0;
                                                                //   3375            ASS LEVEL = ASS LEVEL-1;  LOCAL = BASE REG(ASS LEVEL)
#line 3375 "regression-compile-tmp/asems412.imp"
ASSLEVEL = (((int)(ASSLEVEL)) - (1));
#line 3375 "regression-compile-tmp/asems412.imp"
LOCAL = BASEREG[ASSLEVEL];
                                                                //   3376         %FINISH
#line 3376 "regression-compile-tmp/asems412.imp"
L_037c:;
                                                                //   3377         XLEVEL = XLEVEL-1
#line 3377 "regression-compile-tmp/asems412.imp"
XLEVEL = (((int)(XLEVEL)) - (1));
                                                                //   3378     %END;! OF ASSEMBLE
#line 3378 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return;
sw3_Z_44:;
sw3_Z_48:;
sw3_Z_49:;
sw3_Z_50:;
sw3_Z_51:;
sw3_Z_52:;
sw3_Z_53:;
sw3_Z_54:;
sw3_Z_55:;
sw3_Z_56:;
sw3_Z_57:;
sw3_Z_89:;
sw3_Z_94:;
sw3_Z_96:;
sw3_Z_103:;
sw3_Z_105:;
sw3_Z_106:;
sw3_Z_108:;
sw3_Z_109:;
sw3_Z_110:;
sw3_Z_111:;
sw3_Z_114:;
sw3_Z_121:;
sw3_Z_123:;
sw3_Z_124:;
sw3_Z_125:;
/*_imp_signal(6,3,sw3_Z_idx,"SWITCH LABEL NOT SET - sw3_Z");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw3_Z(%d): at line %s:%d", sw3_Z_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
} // End of block ASSEMBLE at level 2
                                                                //   3379  
                                                                //   3380  
                                                                //   3381     FAULTY = 0
#line 3381 "regression-compile-tmp/asems412.imp"
FAULTY = 0;
                                                                //   3382  
                                                                //   3383     ABORT(0) %IF MAX VARS = 1;    ! ----COMPILER CAN'T RUN AT ALL----
#line 3383 "regression-compile-tmp/asems412.imp"
if (((MAXVARS) != (1))) goto L_037d;
#line 3383 "regression-compile-tmp/asems412.imp"
ABORT(0);
#line 3383 "regression-compile-tmp/asems412.imp"
L_037d:;
                                                                //   3384  
                                                                //   3385     SELECT INPUT(INSTREAM)
#line 3385 "regression-compile-tmp/asems412.imp"
_imp_SELECTINPUT(2);
                                                                //   3386     SELECT OUTPUT(DIRECT);  PRINT SYMBOL(INIT GLA)
#line 3386 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
#line 3386 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(32);
                                                                //   3387     SELECT OUTPUT(OBJECT);  PRINT SYMBOL(START)
#line 3387 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(2);
#line 3387 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(1);
                                                                //   3388     BLOCK WORD = 'B'-32+('L'-32)<<6+('O'-32)<<12 %C
#line 3388 "regression-compile-tmp/asems412.imp"
BLOCKWORD = (((((((((((34) + ((unsigned char)(((44) << (6))))))) + (((47) << (12)))))) + (((35) << (18)))))) + (((43) << (24))));
                                                                //   3389                        +('C'-32)<<18+('K'-32)<<24
                                                                //   3390     CA = 0;  LIMEN = 0;  GA = INIT GLA;  DA = 0;  LINE SIZE = 0
#line 3390 "regression-compile-tmp/asems412.imp"
CA = 0;
#line 3390 "regression-compile-tmp/asems412.imp"
LIMEN = 0;
#line 3390 "regression-compile-tmp/asems412.imp"
GA = 32;
#line 3390 "regression-compile-tmp/asems412.imp"
DA = 0;
#line 3390 "regression-compile-tmp/asems412.imp"
LINESIZE = 0;
                                                                //   3391     STP = 0;  STACK ASL = 0;  ENVP = 0;  GMODE = 0
#line 3391 "regression-compile-tmp/asems412.imp"
STP = 0;
#line 3391 "regression-compile-tmp/asems412.imp"
STACKASL = 0;
#line 3391 "regression-compile-tmp/asems412.imp"
ENVP = 0;
#line 3391 "regression-compile-tmp/asems412.imp"
GMODE = 0;
                                                                //   3392     UNCOND JUMP = 0;  CURRENT LINE = 0
#line 3392 "regression-compile-tmp/asems412.imp"
UNCONDJUMP = 0;
#line 3392 "regression-compile-tmp/asems412.imp"
CURRENTLINE = 0;
                                                                //   3393     INVERT = 0;  SWOPPED = 0
#line 3393 "regression-compile-tmp/asems412.imp"
INVERT = 0;
#line 3393 "regression-compile-tmp/asems412.imp"
SWOPPED = 0;
                                                                //   3394     PARMS = MAX VARS
#line 3394 "regression-compile-tmp/asems412.imp"
PARMS = MAXVARS;
                                                                //   3395     CSLEN == CURRENT STRING(0);  CSLEN = 0;  ACTIVE STRING == NULL
#line 3395 "regression-compile-tmp/asems412.imp"
CSLEN = &CURRENTSTRING[0];
#line 3395 "regression-compile-tmp/asems412.imp"
*CSLEN = 0;
#line 3395 "regression-compile-tmp/asems412.imp"
ACTIVESTRING = NULL;
                                                                //   3396     ACTIVITY(J) = 0 %FOR J = 0, 1, 44
#line 3396 "regression-compile-tmp/asems412.imp"
J = (-1);
if ((((44)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, 44");
L_037e:;
if (J == 44) goto L_037f;
J += 1;
#line 3396 "regression-compile-tmp/asems412.imp"
ACTIVITY[J] = 0;
#line 3396 "regression-compile-tmp/asems412.imp"
goto L_037e;
#line 3396 "regression-compile-tmp/asems412.imp"
L_037f:;
                                                                //   3397     USED(J) = 0 %FOR J = 0, 1, 20
#line 3397 "regression-compile-tmp/asems412.imp"
J = (-1);
if ((((20)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, 20");
L_0381:;
if (J == 20) goto L_0382;
J += 1;
#line 3397 "regression-compile-tmp/asems412.imp"
USED[J] = 0;
#line 3397 "regression-compile-tmp/asems412.imp"
goto L_0381;
#line 3397 "regression-compile-tmp/asems412.imp"
L_0382:;
                                                                //   3398     ACTIVITY(WSP) = -1;  ACTIVITY(GLA) = -1;  ACTIVITY(CODE) = -1
#line 3398 "regression-compile-tmp/asems412.imp"
ACTIVITY[43] = (-1);
#line 3398 "regression-compile-tmp/asems412.imp"
ACTIVITY[42] = (-1);
#line 3398 "regression-compile-tmp/asems412.imp"
ACTIVITY[44] = (-1);
                                                                //   3399     ACTIVITY(0) = -1;  KNOWN_CA = -1
#line 3399 "regression-compile-tmp/asems412.imp"
ACTIVITY[0] = (-1);
#line 3399 "regression-compile-tmp/asems412.imp"
KNOWN.CA = (-1);
                                                                //   3400     ACTIVITY(R4) = -1 %IF CONTROL&UNASS DIAG # 0
#line 3400 "regression-compile-tmp/asems412.imp"
if (((((CONTROL) & (32))) == (0))) goto L_0384;
#line 3400 "regression-compile-tmp/asems412.imp"
ACTIVITY[5] = (-1);
#line 3400 "regression-compile-tmp/asems412.imp"
L_0384:;
                                                                //   3401     ENTER UNASS = -1
#line 3401 "regression-compile-tmp/asems412.imp"
ENTERUNASS = (-1);
                                                                //   3402     ENVIR(J) = 0 %FOR J = 0, 1, MAX ENVIRS
#line 3402 "regression-compile-tmp/asems412.imp"
J = (-1);
if ((((13)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, 13");
L_0385:;
if (J == 13) goto L_0386;
J += 1;
#line 3402 "regression-compile-tmp/asems412.imp"
ENVIR[J] = (ENVFM){ 0 } /* Assign 0's to all fields of record */;
#line 3402 "regression-compile-tmp/asems412.imp"
goto L_0385;
#line 3402 "regression-compile-tmp/asems412.imp"
L_0386:;
                                                                //   3403     %for j = 1,1,44 %cycle
#line 3403 "regression-compile-tmp/asems412.imp"
J = 0;
if ((((44)-(1)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 1, 1, 44");
L_0388:;
if (J == 44) goto L_0389;
J += 1;
                                                                //   3404        use(j) = 0
#line 3404 "regression-compile-tmp/asems412.imp"
USE[(((int)(J)) - (1))] = (USEFM){ 0 } /* Assign 0's to all fields of record */;
                                                                //   3405        USE(J)_CA = -8
#line 3405 "regression-compile-tmp/asems412.imp"
USE[(((int)(J)) - (1))].CA = (-8);
                                                                //   3406     %repeat
#line 3406 "regression-compile-tmp/asems412.imp"
goto L_0388;
#line 3406 "regression-compile-tmp/asems412.imp"
L_0389:;
                                                                //   3407     %FOR J = 0, 1, MAX STACK-1 %CYCLE
#line 3407 "regression-compile-tmp/asems412.imp"
J = (-1);
if ((((30)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle J = 0, 1, 30");
L_038b:;
if (J == 30) goto L_038c;
J += 1;
                                                                //   3408        STAK(J)_LINK == STAK(J+1)
#line 3408 "regression-compile-tmp/asems412.imp"
STAK[J].LINK = &STAK[(((int)(J)) + (1))];
                                                                //   3409        DLIST(J)_LINK == DLIST(J+1)
#line 3409 "regression-compile-tmp/asems412.imp"
DLIST[J].LINK = &DLIST[(((int)(J)) + (1))];
                                                                //   3410     %REPEAT
#line 3410 "regression-compile-tmp/asems412.imp"
goto L_038b;
#line 3410 "regression-compile-tmp/asems412.imp"
L_038c:;
                                                                //   3411     STAK(MAX STACK)_LINK == NULL;  DLIST(MAX STACK)_LINK == NULL
#line 3411 "regression-compile-tmp/asems412.imp"
STAK[31].LINK = NULL;
#line 3411 "regression-compile-tmp/asems412.imp"
DLIST[31].LINK = NULL;
                                                                //   3412     DESC ASL == STAK(0);  DASL == DLIST(0)
#line 3412 "regression-compile-tmp/asems412.imp"
DESCASL = &STAK[0];
#line 3412 "regression-compile-tmp/asems412.imp"
DASL = &DLIST[0];
                                                                //   3413     USING_LINK == NULL
#line 3413 "regression-compile-tmp/asems412.imp"
USING.LINK = NULL;
                                                                //   3414     DECVAR == BEGIN
#line 3414 "regression-compile-tmp/asems412.imp"
DECVAR = &BEGIN;
                                                                //   3415  
                                                                //   3416     ASSEMBLE(2, 0, 0);           ! ASSEMBLE THE OUTER BLOCK (+REST)
#line 3416 "regression-compile-tmp/asems412.imp"
ASSEMBLE(2, 0, 0);
                                                                //   3417  
                                                                //   3418     GFIX(4)
#line 3418 "regression-compile-tmp/asems412.imp"
GFIX(4);
                                                                //   3419     PRINTSYMBOL(CEND)
#line 3419 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(5);
                                                                //   3420     SELECTOUTPUT(DIRECT);  PRINTSYMBOL(DEND)
#line 3420 "regression-compile-tmp/asems412.imp"
_imp_SELECTOUTPUT(3);
#line 3420 "regression-compile-tmp/asems412.imp"
_imp_PRINTSYMBOL(8);
                                                                //   3421     PUT(CA);  PUT((GA+1)&(\1));  PUT(LINE SIZE);  PUT(DA)
#line 3421 "regression-compile-tmp/asems412.imp"
PUT(CA);
#line 3421 "regression-compile-tmp/asems412.imp"
PUT((((((int)(GA)) + (1))) & ((~(1)))));
#line 3421 "regression-compile-tmp/asems412.imp"
PUT(LINESIZE);
#line 3421 "regression-compile-tmp/asems412.imp"
PUT(DA);
                                                                //   3422  
                                                                //   3423     %SIGNAL 15,3 %IF FAULTY # 0
#line 3423 "regression-compile-tmp/asems412.imp"
if (((FAULTY) == (0))) goto L_038e;
#line 3423 "regression-compile-tmp/asems412.imp"
_imp_signal(15, 3, 0, "");
#line 3423 "regression-compile-tmp/asems412.imp"
L_038e:;
                                                                //   3424  
                                                                //   3425  %ENDOFPROGRAM
#line 3425 "regression-compile-tmp/asems412.imp"
/* Remove %on %event handler here if present for this block */
return 0;
} // End of block _imp_main at level 1
#line 3425 "regression-compile-tmp/asems412.imp"
// End of file
