HLASM Programmer's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Source Analysis Record—X'0030'

HLASM Programmer's Guide
SC26-4941-06

Field Size Description
ESDID FL4 The ESDID for the source record.
Statement number FL4 The statement number of the source record.
Input record number FL4 The input source record number within the current input file.

If the source line is macro-generated (that is, the input record origin value is X'02'), this field contains binary zero.

This field contains the value returned by the exit if the source record is provided by an exit.

Parent record number FL4 The parent source record number.

If the source record was included by a COPY statement or generated by a macro instruction, the Parent input number is the record number of the COPY statement or macro instruction.

This field contains the value returned by the input or library exits if the source record is provided by either of these exits.

Input assigned file number FL4 The input file's assigned sequence number. (Refer to the input file n in the Job Identification record if the Input record origin is X'01', or the Library Record - X'0060' with Concatenation number n otherwise).

This field is set to zero if an exit provides the source record.

Parent assigned file number FL4 The parent file's assigned sequence number. (Refer to the Input file n in the Job Identification record if the Parent record origin is X'01', or the Library Record - X'0060' with Concatenation number n otherwise).

This field is set to zero if an exit provides the source record.

Location Counter FL4 The current location counter for the source record.
Input record origin XL1
X'01'
Source line from primary input
X'02'
Source line from Macro generation.
X'03'
Source line from library member.
X'04'
Reserved
X'05'
Source line from AINSERT internal buffer.
Parent record origin XL1
X'01'
Source line from primary input
X'02'
Source line from Macro generation.
X'03'
Source line from library member.
X'04'
Reserved
X'05'
Source line from AINSERT internal buffer
Print flags XL1
X'80'
PRINT GEN
X'40'
PRINT DATA
X'20'
PRINT ON
X'10'
PRINT NOMSOURCE (0 = PRINT MSOURCE)
X'08'
PRINT UHEAD
X'04'
PRINT MCALL
  XL2 Reserved
Source record type (within source record origin) XL1
X'01'
Comment line that is not within a macro definition.
X'02'
Machine instruction that is not within a macro definition.
X'03'
Assembler instruction that is not within a macro definition. This includes conditional assembly instructions such as AIF and SETC.
X'04'
Macro call instruction.
X'05'
Macro definition. All statements between (and including) the MACRO prototype statement and the corresponding MEND statement. This includes nested macro definitions.
Assembler operation code XL1 The assembler operation code for assembler instructions. (See note 2). This field is only valid if the "Source record type" is set to X'03'.
Flags XL1 Flag byte for address fields.
X'80'
Address 1 present
X'40'
Address 2 present
  AL4 Reserved
Address 1 AL4 The address 1 field from the assembly
  AL4 Reserved
Address 2 AL4 The address 2 field from the assembly
Offset of name entry in statement field FL4 Zero if name entry not present or if the name begins at the beginning of the source record (see note 1).
Length of name entry FL4 Zero if name entry not present (see note 1)
Offset of operation entry in statement field FL4 Zero if operation entry not present (see note 1)
Length of operation entry FL4 Zero if operation entry not present (see note 1)
Offset of operand entry in statement field FL4 Zero if operand entry not present (see note 1)
Length of operand entry FL4 Zero if operand entry not present (see note 1)
Offset of remarks entry in statement field FL4 Zero if remarks entry not present (see note 1)
Length of remarks entry FL4 Zero if remarks entry not present (see note 1)
Offset of continuation indicator field FL4 Zero if no continuation indicator present (see note 1)
  XL4 Reserved
Input macro or copy member name offset FL4 The offset from the beginning of this record to the input macro or copy member name. A value of binary zeros indicates that there is no input macro or copy member name.
Input macro or copy member name length FL4 Zero if the input record line does not come from a macro or a copy member
Parent macro or copy member name offset FL4 The offset from the beginning of this record to the parent macro or copy member name. A value of binary zeros indicates that there is no parent macro or copy member name.
Parent macro or copy member name length FL4 Zero if the parent record line does not come from a macro or a copy member
Source record offset FL4 The offset from the beginning of this record to the source record.
Source record length FL4 The length of the actual source record following
  XL8 Reserved
Input Macro or copy member name CL(n) The macro or copy member name if the input record originated from a macro or copy member
Parent macro or copy member name CL(n) The macro or copy member name if the parent record originated from a macro or copy member
Source record CL(n)  
Notes:
  1. The length and offset fields for the name entry, operation entry, remarks entry, and continuation indicator are zero for the following statements:
    • Macro definition statements with a Source Record Type of X'04'
    • Macro definition statements with a Source Record Type of X'05'
    • EXITCTL assembler statements
    • ICTL assembler statements
  2. The assembler operation code field can contain the operation code values shown in Table 1.
Table 1. Assembler operation code values

Operation      Assembler
   Code         Instruction

Operation      Assembler
   Code         Instruction

Operation      Assembler
   Code         Instruction

  X'00'        GBLA
  X'01'        GBLB
  X'02'        GBLC
  X'03'        LCLA
  X'04'        LCLB
  X'05'        LCLC
  X'06'        SETA
  X'07'        SETB
  X'08'        SETC
  X'09'        AIF
  X'0A'        AGO
  X'0B'        ANOP
  X'0C'        COPY
  X'0D'        MACRO
  X'0E'        MNOTE
  X'0F'        MEXIT
  X'10'        MEND
  X'11'        ICTL
  X'12'        ISEQ
  X'13'        PRINT
  X'14'        SPACE
  X'15'        EJECT
  X'16'        PUNCH
  X'17'        REPRO
  X'18'        TITLE
  X'19'        ENTRY
  X'1A'        EXTRN
  X'1B'        START
  X'1C'        CSECT
  X'1D'        DSECT
  X'1E'        COM
  X'1F'        EQU
  X'20'        ORG
  X'21'        END
  X'22'        LTORG
  X'23'        USING
  X'24'        DROP
  X'25'        ACTR
  X'26'        DC
  X'27'        DS
  X'28'        CCW
  X'29'        CNOP
  X'2A'        LOCTR
  X'2B'        DXD
  X'2C'        CXD
  X'2D'        Reserved
  X'2E'        OPSYN
  X'2F'        PUSH
  X'30'        POP
  X'31'        Reserved
  X'32'        Reserved
  X'33'        Literal
  X'34'        Reserved
  X'35'        Reserved
  X'36'        Reserved
  X'37'        MHELP
  X'38'        AREAD
  X'39'        Reserved
  X'3A'        Reserved
  X'3B'        WXTRN
  X'3C'        Reserved
  X'3D'        AMODE
  X'3E'        RMODE
  X'3F'        RSECT
  X'40'        CCW0
  X'41'        CCW1
  X'42'        EXITCTL
  X'43'        ASPACE
  X'44'        AEJECT
  X'45'        ALIAS
  X'46'        CEJECT
  X'47'        ADATA
  X'48'        SETAF
  X'49'        SETCF
  X'4A'        CATTR
                (z/OS & CMS)
  X'4B'        ACONTROL
  X'4C'        XATTR
                (z/OS & CMS)
  X'4D'        AINSERT

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014