Contents

Figures
About this document
Who should use this document
Programming interface information
Organization of this document
IBM High Level Assembler for z/OS & z/VM & z/VSE Publications
Hardcopy Publications
Online publications
Related publications
Syntax notation
Summary of changes
Introduction
Requirements
System requirements
Machine requirements
Storage requirements
Compatibility
Assembler language support
Migration considerations
Using the assembler listing
High Level Assembler option summary
External Symbol Dictionary (ESD)
Source and object
Relocation dictionary (RLD)
Ordinary symbol and literal cross reference
Unreferenced symbols defined in CSECTs
Macro and copy code source summary
Macro and copy code cross reference
Effects of LIBMAC and PCONTROL(MCALL) options
DSECT cross reference
USING map
General Purpose Register cross reference
Diagnostic cross reference and assembler summary
Controlling your assembly with options
The sources of assembler options
Precedence of assembler options
Fixed installation default options
*PROCESS OVERRIDE Statement Options
ASMAOPT options
Invocation options
*PROCESS statement options
Default options
Invoking the assembler dynamically
Coding rules
Assembler options
ADATA
ALIGN
ASA (z/OS and CMS)
BATCH
CODEPAGE
COMPAT
DBCS
DECK
DISK (CMS)
DXREF
ERASE (CMS)
ESD
EXIT
FLAG
FOLD
GOFF (z/OS and CMS)
INFO
LANGUAGE
LIBMAC
LINECOUNT
LIST
MACHINE
MXREF
OBJECT
OPTABLE
PCONTROL
PESTOP
PRINT (CMS)
PROFILE
RA2
RENT
RLD
RXREF
SECTALGN
SEG (CMS)
SIZE
SUPRWARN
SYSPARM
TERM
TEST
THREAD
TRANSLATE
TYPECHECK
USING
WORKFILE
XOBJECT (z/OS and CMS)
XREF
Providing user exits
Exit types
Specifying user exits
Loading user exits
Calling user exits
Exit parameter list
Request info pointer
Buffer pointer
Error buffer pointer
Exit-specific information pointer
DCB pointer
Static assembler information pointer
HLASM Services Interface pointer
Error handling
Exit-Specific Information Block
SOURCE exit processing
OPEN
CLOSE
READ
PROCESS
LIBRARY exit processing
OPEN
CLOSE
READ
PROCESS MACRO or PROCESS COPY
FIND MACRO or FIND COPY
END OF MEMBER
LISTING exit processing
OPEN
CLOSE
WRITE
PROCESS
OBJECT (z/OS and CMS) and PUNCH exit processing
OPEN
CLOSE
WRITE
PROCESS
ADATA exit processing
OPEN
CLOSE
WRITE
PROCESS
TERM exit processing
OPEN
CLOSE
WRITE
PROCESS
Sample user exits
User exit coding example
OBJECT and PUNCH exit--OBJEXIT
ADATA Exit--ADEXIT
TERM exit--TRMEXIT
Providing external functions
External function processing
Linkage conventions
External function parameter list
Request information list
Pointer to user work area
Pointer to static assembler information
Pointer to msg buffer
Pointer to return string (SETCF)
Pointer to parm string n (SETCF)
Diagnosing assembly errors
Assembly error diagnostic messages
MNOTE statements
Suppression of error messages and MNOTE statements
Reference information for statements in error
Abnormal assembly termination
MHELP--macro trace facility
Assembling your program on z/OS
Input to the assembler
Output from the assembler
Invoking the assembler on z/OS
Invoking the assembler on TSO
Invoking the assembler dynamically
Batch assembling
Input and output data sets
Specifying the source data set: SYSIN
Specifying the option file: ASMAOPT
Specifying macro and copy code libraries: SYSLIB
Specifying the listing data set: SYSPRINT
Directing assembler messages to your terminal: SYSTERM
Specifying object code data sets: SYSLIN and SYSPUNCH
Specifying the associated data data set: SYSADATA
Return codes
Linking and running your program on z/OS
The program management binder
The loader
Creating a load module
Creating a load module on z/OS
Creating a load module on TSO
Input to the binder
Data sets for binder processing
Additional object modules as input
Output from the binder
Binder processing options
Specifying binder options through JCL
Specifying binder options using the TSO LINK command
AMODE and RMODE attributes
Overriding the defaults
Detecting binder errors
Running your assembled program
Running your assembled program in batch
Running your assembled program on TSO
z/OS system services and programming considerations
Adding definitions to a macro library
Using cataloged procedures
Cataloged procedure for assembly (ASMAC)
Cataloged procedure for assembly and link (ASMACL)
Cataloged procedure for assembly, link, and run (ASMACLG)
Cataloged procedure for assembly and run (ASMACG)
Overriding statements in cataloged procedures
Examples of cataloged procedures
Operating system programming conventions
Saving and restoring general register contents
Ending program execution
Accessing execution parameters
Object program linkage
Modifying program modules
Assembling your program on CMS
Input to the assembler
Output from the assembler
Accessing the assembler
Invoking the assembler on CMS
Batch assembling
Controlling your assembly
Input and output files
Specifying the source file: SYSIN
Specifying the option file: ASMAOPT
Specifying macro and copy code libraries: SYSLIB
Specifying the listing file: SYSPRINT
Directing assembler messages to your terminal: SYSTERM
Specifying object code files: SYSLIN and SYSPUNCH
Specifying the associated data file: SYSADATA
Return codes
Diagnostic messages written by CMS
Running your program on CMS
Using the CMS LOAD and START commands
Using the CMS GENMOD command
Using the CMS LKED and OSRUN commands
Using the CMS batch facility
CMS system services and programming considerations
Using macros
Assembler macros supported by CMS
Adding definitions to a macro library
Operating system programming conventions
Saving and restoring general register contents
Ending program execution
Passing parameters to your assembler language program
Assembling your program on z/VSE
Input to the assembler
Output from the assembler
Invoking the assembler in batch
Invoking the assembler on ICCF
Invoking the assembler dynamically
Batch assembling
Controlling your assembly
Input and output files
Specifying the source file: SYSIPT
Specifying macro and copy code libraries: LIBDEF job control statement
Specifying the listing file: SYSLST
Directing assembler messages to your console log: SYSLOG
Specifying object code files: SYSLNK and SYSPCH
Specifying the associated data file: SYSADAT
Return codes
Link-editing and running your program on z/VSE
The linkage editor
Creating a phase
Input to the linkage editor
Inputting object modules
Files for linkage editor processing
Inputting additional object modules
Linkage editor control statements
Output from the linkage editor
Running your assembled program
z/VSE system services and programming considerations
Adding definitions to a macro library
Processing E-decks
Operating system programming conventions
Saving and restoring general register contents
Ending program execution
Accessing execution parameters
Appendix A. Earlier assembler compatibility and migration
Comparison of instruction set and assembler instructions
Comparison of macro and conditional assembly statements
Comparison of macro and conditional assembly
Comparison of language features
Comparison of assembler options
Comparison of assembler listing
Comparison of diagnostic features
Other assembler differences
Appendix B. Cross-system portability considerations
Using machine instructions
Using system macros
Migrating object programs
Appendix C. Object deck output
ESD record format
TXT record format
RLD record format
END record format
SYM record format
Appendix D. Associated data file output
Record types
Macro-only assemblies
ADATA record layouts
Common header section
Job Identification Record--X'0000'
ADATA Identification Record--X'0001'
ADATA Compilation Unit Start/End Record--X'0002'
Output File Information Record--X'000A'
Options File Information--X'000B'
Options record--X'0010'
External Symbol Dictionary Record--X'0020'
Source Analysis Record--X'0030'
Source Error Record--X'0032'
DC/DS record--X'0034'
DC Extension Record--X'0035'
Machine Instruction Record--X'0036'
Relocation Dictionary Record--X'0040'
Symbol Record--X'0042'
Symbol and Literal Cross Reference Record--X'0044'
Register Cross Reference Record--X'0045'
Library Record--X'0060'
Library Member and Macro Cross Reference Record--X'0062'
User-supplied Information Record--X'0070'
USING Map Record--X'0080'
Statistics record--X'0090'
Appendix E. Sample program
Appendix F. MHELP sample macro trace and dump
Appendix G. High Level Assembler messages
Message code format
Message descriptions
Assembly error diagnostic messages
Message not known
Messages
Abnormal assembly termination messages
ASMAHL Command Error Messages (CMS)
Appendix H. User interface macros
Appendix I. Sample ADATA user exits (z/OS and CMS)
Sample ASMAXADT user exit to filter records
Preparing the exit
Preparing the filter modules
Preparing the sample filter module ASMAXFLU
Invoking the exit
Sample ASMAXADC user exit to control record output
Preparing the exit
Invoking the exit
Messages
Sample ASMAXADR user exit to reformat records
Preparing the exit
Invoking the exit
Messages
Appendix J. Sample LISTING user exit (z/OS and CMS)
Function
Preparing the exit
Invoking the exit
Messages
Appendix K. Sample SOURCE user exit (z/OS and CMS)
Function
Preparing the exit
Invoking the exit
Appendix L. How to generate a translation table
Preparing the translation table
Appendix M. How to generate a Unicode translation table
Preparing the Unicode translation table
Appendix N. TYPECHECK assembler option
Extensions to the DC, DS, and EQU assembler instructions
Type checking behavior for REGISTER
Access Register type checking
General Register type checking
Control Register type checking
Floating-Point Register type checking
Type checking behavior for MAGNITUDE
Appendix O. HLASM Services Interface
Communication and work areas
Invoking the HLASM Services Interface
Get storage service
Return storage service
Time and date service
Write to terminal service
Mapping the communication and work areas
Appendix P. High Level Assembler for Linux on zSeries
Options
Sources of assembler options
Assembler options
ELF32 option
ASMAXT2E messages
Notices
Trademarks
Glossary
Bibliography
High Level Assembler Publications
Toolkit Feature Publications
Related Publications (Architecture)
Related Publications for z/OS
Related Publications for z/VM
Related Publications for z/VSE
Index

[ Top of Page | Previous Page | Next Page | Contents | Index ]