Tachyon Linkage Editor - Control Statements

The control statements accepted by the z/OS Binder and the Tachyon Linkage Editor are described in the DFSMS/MVS Program Management manual. This guide shows the binder control statements supported by the Tachyon Linkage Editor but does not include the details about each statement which are already provided in the DFSMS/MVS Program Management manual.

Control statements always start with one or more blank characters. The blanks are followed by the statement name and parameters. The Tachyon Linkage Editor supports the same continuation rules for control statements as the IBM binder. If the CASE=MIXED option is not set, the control statement characters are translated to upper case unless they are within a quoted string. A statement that begins with an asterisk is treated as a comment.

The following control statements are supported:

ALIAS

The ALIAS statement is used to create alias entries in the PDS directory for the load module. The Tachyon Linkage Editor validates the ALIAS statement for syntax and then ignores it, allowing existing z/OS Binder control statement files to be accepted.

Example:
 ALIAS ALTNAME(EXTSYM)
This statement is ignored.


AUTOCALL

The AUTOCALL statement starts an incremental autocall using members from the named simulated partitioned data set. Only the SYSLIB and the SYSLMOD ddnames are supported.

Example:
 AUTOCALL SYSLIB
This statement starts an incremental autocall, resolving external references from SYSLIB.


CHANGE

The CHANGE statement is used to rename an external symbol.

Example:
 CHANGE OLDNAME(NEWNAME)
This statement causes the external symbol OLDNAME in the subsequently included object module to be renamed to NEWNAME.


ENTRY

The ENTRY statement specifies the main entry point for a program.

Example:
 ENTRY ENTRYPT
This statement sets the program’s main entry point to the address of the external symbol ENTRYPT.


EXPAND

The EXPAND statement is used to enlarge control sections.

Example:
 EXPAND MYCSECT(1024)
This statement causes the size of control section MYCSECT to be increased by 1024 bytes.


IDENTIFY

The IDENTIFY statement sets identification information for the named control section.

Example:
 IDENTIFY MYCSECT('HERE IS MY IDENTIFICATION')
This statement sets the identification information for the MYCSECT control section.


INCLUDE

The INCLUDE statement instructs the linkage editor to read the named input files and include their contents in the load module. The INCLUDE statement parameters must be in one of two forms:

ddname(member-name[,member-name ...])
This form specifies that the listed members should be read from the named simulated partitioned data set. Only the SYSLIB and the SYSLMOD ddnames are supported.
'file-name'
This form specifies that the named workstation file should be read. The name must appear in single quotes.

Example:
 INCLUDE '..\filename.obj',SYSLIB(MEMBER1,MEMBER2)
This statement causes the linkage editor to read the file ..\filename.obj and then the members MEMBER1 and MEMBER2 from SYSLIB.


LIBRARY

LIBRARY statement parameters must be in one of three forms:

ddname(member-name[,member-name ...])
This form specifies that the listed members should be read from the named simulated partitioned data set during autocall processing if there are unresolved references to those names. Only the SYSLIB and the SYSLMOD ddnames are supported.
external-name
This form specifies that the listed external name is not to be resolved during autocall processing.
*(external-name[,external-name ...])
This form specifies that the listed external names are not to be resolved during autocall processing, and that if they are unresolved the names should be marked as “never call”.

Example:
 LIBRARY *(NVRCALL1,NVRCALL2),SYSLMOD(MEMBER1),NOCALL
This statement prevents the symbols NVRCALL1, NVRCALL2 and NOCALL from being resolved via autocall. It also causes the external name MEMBER1 to be resolved by searching SYSLMOD rather than SYSLIB.


MODE

The MODE statement can be used to define the addressing mode of the entry point and the residency mode of the load module.

Example:
 MODE AMODE(MIN),RMODE(24)
This statement sets the program’s residency mode to be below the 16 Megabyte line and sets the addressing mode of the entry point to be the minimum of addressing modes of the object modules.


NAME

The NAME statement ends the primary input processing for a load module, starts autocall processing and causes the resulting load module to be written as the named member to SYSLMOD. The member name may have (R) appended to it, specifying that if the member already exists, it is to be replaced.

Example:
 NAME MYPROG(R)
This statement causes the load module to be written to SYSLMOD as member MYPROG. If that member already exists, it will be replaced.


ORDER

The ORDER statement specifies the resulting order of control sections in the generated load module. The ORDER statement parameters are names of one or more control sections. Each parameter may include an optional (P) suffix, which indicates that the control section is to be aligned on a page boundary when it is loaded into memory.

Example:
 ORDER DRINK
 ORDER MORE(P),MILK
 ORDER PLEASE
In this example, no matter what order the control sections are read by the linkage editor, their resulting sequence will be DRINK MORE MILK PLEASE. Further, the control section named MORE will be aligned on a page boundary.


PAGE

The PAGE statement specifies that the named control sections are to be aligned on page boundaries when they are loaded into memory.

Example:
 PAGE MYCSECT,YOURS
This statement causes the control sections named MYCSECT and YOURS to be aligned on page boundaries.


RENAME

The RENAME statement is used to rename external symbols prior to a final autocall. The Tachyon Linkage Editor validates the RENAME statement for syntax and then ignores it, allowing existing z/OS Binder control statement files to be accepted.

Example:
 RENAME 'an_old_name'(NEWNAME)
This statement is ignored.


REPLACE

The REPLACE statement is used to replace one control section with another or to delete an external symbol.

Example:
 REPLACE OLDNAME(NEWNAME),BADNAME
This statement causes the control section OLDNAME in the subsequently included object module to be renamed to NEWNAME. It also causes the external symbol BADNAME in that object module to be deleted.


SETCODE

The SETCODE statement specifies the load module’s authorization code.

Example:
 SETCODE AC(1)
This statement sets the program’s authorization code to 1.


SETOPT

The SETOPT statement specifies overrides to the parameters set when the linkage editor was started. The overrides will be in effect until the next NAME statement is processed. The SIZE, LINECT, OPTIONS and WKSPACE options may not be specified in a SETOPT control statement. The LIST, PRINT and TERM options are ignored if specified in a SETOPT control statement.

Example:
 SETOPT PARM(NOCALL,REUS(RENT))
This statement sets the CALL and REUS options for the current load module.


SETSSI

The SETSSI statement sets the system status index for the load module.

Example:
 SETSSI 01234567
This statement sets the load module’s system status index to X'01234567'.


The z/OS Binder’s IMPORT, INSERT and OVERLAY control statements are not supported.


Frames No Frames Previous Next Contents
Introduction Setup Link Edit Un-Xmit Re-Xmit Update Utility Translation
© Copyright 1999-2006, Tachyon Software® LLC.
Last modified on January 2, 2006