Link-editing callable cell pool services

Any program that invokes callable cell pool services must be link-edited with an IBM-provided linkage-assist routine. The linkage-assist routine provides the logic needed to locate and invoke the callable services. The linkage-assist routine resides in SYS1.CSSLIB.

The following examples show the JCL needed to link-edit a program with the linkage-assist routine. The examples assume that the program is reentrant.

AMODE 24 or 31 example

//LINKJOB JOB ’accountinfo’,’name’,CLASS=x,
// MSGCLASS=x,NOTIFY=userid,MSGLEVEL=(1,1),REGION=4096K
//LINKSTP1 EXEC PGM=HEWL,PARM=’LIST,LET,XREF,REFR,RENT,NCAL,
// SIZE=(1800K,128K)’
//SYSPRINT DD SYSOUT=x
//SYSLMOD DD DSNAME=userid.LOADLIB,DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(5,2))
//SYSLIN DD *
  INCLUDE OBJDD1(userpgm)
  INCLUDE OBJDD2(CSRCPOOL)
  NAME userpgm(R)
//OBJDD1 DD DSN=userid.OBJLIB,DISP=SHR
//OBJDD2 DD DSN=SYS1.CSSLIB,DISP=SHR

AMODE 64 example

//LINKJOB JOB ’accountinfo’,’name’,CLASS=x,
// MSGCLASS=x,NOTIFY=userid,MSGLEVEL=(1,1),REGION=4096K
//LINKSTP1 EXEC PGM=IEWBIND,PARM=’LIST,LET,XREF,REFR,RENT,NCAL,
// SIZE=(1800K,128K)’
//SYSPRINT DD SYSOUT=x
//SYSLMOD DD DSNAME=userid.LOADLIB,DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(5,2))
//SYSLIN DD *
  INCLUDE OBJDD1(userpgm)
  INCLUDE OBJDD2(CSRC4POL)
  NAME userpgm(R)
//OBJDD1 DD DSN=userid.OBJLIB,DISP=SHR
//OBJDD2 DD DSN=SYS1.CSSLIB,DISP=SHR