11.07.2015 Views

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Beginning of a source modulev The START instruction can be used to initiate the first or only section of a sourcemodule. For more information about the START instruction, see “STARTinstruction” on page 212.v The CSECT instruction can be used anywhere in a source module to initiate orcontinue a section. For more information about the CSECT instruction, see“CSECT instruction” on page 122.v Like the CSECT instruction, the RSECT instruction can be used anywhere in asource module to initiate or continue a section. Unlike the CSECT instruction,however, the RSECT instruction causes the assembler to check the coding in thesection for possible violations of reenterability. For more information about theRSECT instruction, see “RSECT instruction” on page 211.A section can also be initiated as an unnamed section, or private code, withoutusing the START, CSECT, or RSECT instruction. For more information, see“Unnamed section” on page 54.First sectionBefore you initiate the first section in your source module, you may code onlycertain instructions. The following information lists those instructions that initiatethe first section, and those instructions that may precede the first section.What must appear before the first section: The ICTL instruction, if specified,must be the first statement in a source module.*PROCESS statements must precede all other statements in a source module,except the ICTL instruction. There is a limit of 10 *PROCESS statements allowed ina source module. Additional *PROCESS statements are treated as assemblercomment statements. See page 98 for a description of the *PROCESS statement.||What can optionally appear before the first executable control section: Theinstructions or groups of instructions that can optionally be specified before thefirst executable control section are:v The following assembler instructions:ACONTROL ADATA AINSERT ALIAS CEJECT COPYDXD EJECT ENTRY EXITCTL EXTRN ISEQMACRO MEND MEXIT POP PRINT PUNCHPUSH REPRO SPACE TITLE WXTRN XATTRv Comment statements, including macro format comment statementsv Any statement which is part of an inline macro definition, between MACRO andMEND statements, with the possible exception of *PROCESS and ICTL.v Common control sectionsv Dummy control sectionsv Any conditional assembly instructionv Macro instructions that do not generate statements that establish the first sectionThese instructions or groups of instructions belong to a source module, but are notconsidered part of an executable section.Instructions that establish the first section: Any instruction that affects thelocation counter, or uses its current value, establishes the beginning of the firstexecutable section. The instructions that establish the first section include anymachine instruction and the following assembler instructions:CCW CCW0 CCW1 CNOP CSECT CXDDC DS EQU LOCTR LTORG ORGRSECT START USINGChapter 3. Program structures and addressing 53

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!