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


Cataloged procedure for assembly and link (ASMACL)

HLASM Programmer's Guide
SC26-4941-06

This procedure consists of two job steps: assembly and link. Use the name ASMACL to call this procedure. This procedure produces an assembler listing, the binder listing, and a program module.

The following example shows input to the assembler in the input job stream. SYSLIN contains the output from the assembly step and the input to the link step. It can be concatenated with additional input to the binder as shown in the example. This additional input can be binder control statements or other object modules.

An example of the statements entered in the input stream to use this procedure is:
//jobname        JOB
//stepname       EXEC PROC=ASMACL
//C.SYSIN        DD  *
⋮
assembler source statements
⋮
/*
//L.SYSIN        DD  *
⋮
object module or binder control statements
/*

//L.SYSIN is necessary only if the binder is to combine modules or read editor control information from the job stream.

Figure 1 shows the statements that make up the ASMACL procedure. Only those statements not previously discussed are explained in the figure.
Figure 1. Cataloged procedure for assembling and linking (ASMACL)
//ASMACL   PROC
//*
//********************************************************************
//*   Licensed Materials - Property of IBM                           *
//*                                                                  *
//*   5696-234   5647-A01                                            *
//*                                                                  *
//*   (C) Copyright IBM Corp. 1992, 2008. All Rights Reserved.       *
//*                                                                  *
//*   US Government Users Restricted Rights - Use,                   *
//*   duplication or disclosure restricted by GSA ADP                *
//*   Schedule Contract with IBM Corp.                               *
//*                                                                  *
//********************************************************************
//*                                                                  *
//*     ASMACL                                                       *
//*                                                                  *
//* THIS PROCEDURE RUNS THE HIGH LEVEL ASSEMBLER, LINK-EDITS THE     *
//* NEWLY ASSEMBLED PROGRAM.                                         *
//*                                                                  *
//********************************************************************
//*
//C        EXEC PGM=ASMA90
//SYSLIB   DD  DSN=SYS1.MACLIB,DISP=SHR
//SYSUT1   DD  DSN=&&SYSUT1,SPACE=(4096,(120,120),,,ROUND),                     1 
//             UNIT=SYSALLDA,DCB=BUFNO=1
//SYSPRINT DD  SYSOUT=*
//SYSLIN   DD  DSN=&&OBJ,SPACE=(3040,(40,40),,,ROUND),
//             UNIT=SYSALLDA,DISP=(MOD,PASS),
//             DCB=(BLKSIZE=3040,LRECL=80,RECFM=FB,BUFNO=1)
//L        EXEC PGM=HEWL,PARM='MAP,LET,LIST,NCAL',COND=(8,LT,C)                 2 
//SYSLIN   DD  DSN=&&OBJ,DISP=(OLD,DELETE)                                      3 
//         DD  DDNAME=SYSIN                                                     4 
//SYSLMOD  DD  DISP=(,PASS),UNIT=SYSALLDA,SPACE=(CYL,(1,1,1)),                  5 
//             DSN=&&GOSET(GO)
//SYSUT1   DD  DSN=&&SYSUT1,SPACE=(1024,(120,120),,,ROUND),                     6 
//             UNIT=SYSALLDA,DCB=BUFNO=1
//SYSPRINT DD  SYSOUT=*                                                         7 
Notes to Figure 1:
 1 
In this procedure, the SYSLIN DD statement describes a temporary data set, the object module, which is passed to the binder.
 2 
This statement runs the binder. The binder options in the PARM field cause the binder to produce a cross-reference table, a module map, and a list of all control statements processed by the binder. The NCAL option suppresses the automatic library call function of the binder.
 3 
This statement identifies the binder input data set as the same one (SYSLIN) produced as output from the assembler.
 4 
This statement is used to concatenate any input to the binder from the input stream (object decks, binder control statements, or both) with the input from the assembler.
 5 
This statement specifies the binder output data set (the program load module). As specified, the data set is deleted at the end of the job. If it is required to retain the program module, the DSN parameter must be respecified and a DISP parameter added. See Overriding statements in cataloged procedures. If you want to retain the output of the binder, the DSN parameter must specify a library name and a member name at which the program module is to be placed. The DISP parameter must specify either KEEP or CATLG.
 6 
This statement specifies the work data set for the binder.
 7 
This statement identifies the standard output class as the destination for the binder listing.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014