! ! FIRST THE OPERAND FLAG CONSTANTS ! %CONSTINTEGER SCONST=0; ! CONST UPTO 64 BITS value is carried ! in opnd_d and opnd_xtra %CONSTINTEGER LCONST=1; ! CONST LONGER THAN SCONST const can be ! found elsewhere(at top of ar) by ! meanse of base&offset inf in_d and _xtra %CONSTINTEGER DNAME=2; ! NAME BY DICTIONARY NO the base and disp in ! the dictionary after adjusting by ! possible offset for item in ! in records lead to the variable %CONSTINTEGER ARNAME=3; ! NAME BY AR POINTER opnd_d the ar pointer ! this form local to pass2 ! and used to identify functions ! with params before the call ! is planted %CONSTINTEGER VIAPTR=4; ! VIA TRIPLE WITHOFFSET TO POINTER ! At an offset(_xtra) from address in ! referenced triple can be found a ! pointer to the required operand %CONSTINTEGER INDNAME=5; ! INDIRECT VIA DICTIONARY base&disp ! in dictionary identify a pointer ! variable at possible offset from ! this pointer %CONSTINTEGER INDIRECT=6; ! INDIRECT VIA TRIPLE WITH OFFSET ! the refenced triple has computed ! the (32bit) address of an item ! an offset may have to be applied ! before the fetch or store %CONSTINTEGER LOCALIR=7; ! BASE DISP REF IN CURRENT STACK FRAME ! opnd_b=base<<16!offset used only for ! compiler generated temporaries %CONSTINTEGER REFTRIP=8; ! REFERENCE TO A TRIPLE the operand is the result of ! triple opnd_d %CONSTINTEGER INAREG=9; ! REGISTER OPERAND this form is local to the ! code generating pass(es) %CONSTINTEGER developped=10; ! also local to generator %CONSTINTEGER DEVADDR=11; ! ALSO LOCAL TO GENERATOR %CONSTINTEGER BTREFMASK=1<