Systems/ASM Version 1.95
Total Page:16
File Type:pdf, Size:1020Kb
Systems/ASM Version 1.95 Copyright c 2016, Dignus, LLC Systems/ASM Version 1.95 i Copyright c 2016 Dignus LLC, 8378 Six Forks Road Suite 203 Raleigh NC, 27615. World rights reserved. No part of this publication may be stored in a retrieval system, transmitted, or reproduced in any way, including but not limited to pho- tocopy, photograph, magnetic or other record, without the prior agreement and written permission of the publisher. Portions Copyright c 1995-2002 Mark Adler Portions Copyright c 1998 Gilles Vollant Portions Copyright c 1995-2005 International Business Machines Corporation and others. All Rights reserverd. Copyright (c) 1995-2005 International Business Machines Corporation and oth- ers All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation. IBM, S/390, zSeries, z/OS, OS/390, MVS, z/VSE, VSE, z/VM, VM, CMS, HLASM, and High Level Assembler are registered trademarks of International Business Ma- chines Corporation. UNIX is a registered trademark in the United States and/or other countries licensed exclusively through X/Open Company Limited. Microsoft, Windows, and Windows NT are trademarks of Microsoft Corporation in the United States and other countries. ii Contents How to use this book 1 Systems/ASM Overview 3 DASM Advanced Features and Extensions 5 HLASM V1R6 compatibility ......................... 5 XSD support .................................. 5 GOFF support ................................. 5 Linux ELF Output ............................... 6 ADATA information .............................. 6 z/Architecture Instructions and Data ..................... 6 Cross-Platform support ............................ 6 Dependency List generation .......................... 6 HTML listing format .............................. 7 Systems/C and Systems/C++ Integration .................. 7 Assembling Programs 9 Accessing files on z/OS ............................ 9 Input Files ................................... 9 ASCII/EBCDIC translation ....................... 10 Output Files .................................. 10 Running DASM: ................................ 11 z/OS: ................................... 11 Windows: ................................. 11 UNIX: ................................... 12 Macro Library Searching: ........................... 13 ZIP file support .............................. 14 Description of Options 15 General Options ................................ 15 The –fdate=[[[[[cc]yy]mm]dd]HH]MM[.ss]] option (specify assembly time and date) .......................... 16 The –flisting=file option (specify the name of the listing file) .... 16 The –flisting style=val option (specify listing format) ......... 17 The –fhtml suffix=val option (specify HTML listing suffix) ..... 17 The –help option (display help) ..................... 17 Systems/ASM iii The –helplib option (display help for DASM library specifications) . 17 The –o file option (specify the name of the generated output file) .. 17 The –quiet option (execute DASM in “quiet” mode) ......... 18 The –@ file option (specify extra file for parameters) ......... 18 The –fmrc and –fnomrc options (enable/disable mainframe-style return- codes) ............................... 19 The –fmaxrc=n option (don’t create an object file if the RC is greater than n) .............................. 19 The –v option (print version information) ............... 19 Input Options .................................. 20 The –flonglines option (allow input lines longer than 80 characters) . 20 The –fnolonglines option (Diagnose input lines longer than 80 char- acters) ............................... 20 The –tc column option (define tab expansion amounts) ........ 20 The –tr XX=YY[,XX=YY...] option (alter the ASCII/EBCDIC trans- lation table) ............................ 21 Assembly Control Options ........................... 22 The –sectalgn=VALUE option (define section alignment) ...... 24 The –size=VALUE option (define memory for in-core work files) .. 24 The –sysparm=VALUE option (define a SYSPARM value) ...... 24 The –a and –xa options (enable/disable non-strict alignment checks) 24 The –r and –xr options (enable/disable re-entrancy checks) ..... 25 The –pestop and –xpestop options (enable/disable halt on *PRO- CESS and command-line errors) ................ 25 The –profile=filename and –xprofile options (include filename as if it appeared in a COPY statement) ................ 25 The –ra2 and –xra2 options (enable/disable 2-byte relocatable ad- dress constant checks) ...................... 25 The –tc and –xtc options (enable/disable range checks for immediate operands) ............................. 26 The –f ALIGN and –f NOALIGN options (set the FLAG value for strict alignment checks) ..................... 26 The –f CONT and –f NOCONT options (set the FLAG value for continuation checks) ....................... 26 The –f IMPLEN and –f NOIMPLEN options (issue warming message DASM169I when an implied length is used in an SS-type in- struction) ............................. 27 The –f PAGE0 and –f NOPAGE0 options (set the FLAG value for enabling/disabling message DASM309W) ........... 27 The –f USING0 and –f NOUSING0 options (set the FLAG value for enabling/disabling message DASM306W) ........... 27 The –f PUSH and –f NOPUSH options (set the FLAG value for en- abling/disabling non-empty PUSH stack checks) ....... 27 The –f RECORD and –f NORECORD options (set the FLAG value for enabling/disabling message DASM435I) .......... 28 iv The –f SUBSTR and –f NOSUBSTR options (set the FLAG value for enabling/disabling message DASM094I) ............ 28 The –f integer option (set the FLAG value for controlling diagnostics) 28 The –ccase and –xccase options (enable/disable case compatibility with ASMH) ........................... 29 The –mcase and –xmcase options (enable/disable macro case com- patibility with ASMH) ...................... 29 The –csysl and –xcsysl options (enable/disable SYSLIST compatibil- ity with ASMH) ......................... 29 The –clit and –xclit options (enable/disable literal type compatibility with ASMH) ........................... 29 The –csyspath and –xcsyspath options (enable/disable &SYSxxx paths compatible with HLASM on USS) ............... 30 The –xsd and –xxsd options (enable/disable XSD-format objects) .. 30 The –goff and –xgoff options (enable/disable GOFF-format objects) 30 The –goffadata and –xgoffadata options (enable embedded ADATA information in GOFF objects) ................. 31 The –batch and –xbatch options (enable/disable batch source pro- cessing) .............................. 31 The –thread and –xthread options (enable/disable CSECT threading) 31 The –fenhancedequ option (enable enhanced EQU evaluation) .... 31 The –idr option (define the IDR string generated on END cards) .. 31 The –fdupalias option (allow duplicate ALIAS values) ........ 32 The –fvselibr option (recognize /+ as EOF) .............. 32 The –fsuprwarn=list and –fnosuprwarn=list options (suppress or don’t suppress particular warning messages) ............. 33 The –fasciiout and –fno asciiout options (enable/disable ASCII char- acter constants) .......................... 33 The –flinux option (generate Linux/390 ELF output) ......... 33 The –flinux64 option (generate z/Linux ELF output) ......... 33 The –g and –xg options (enable/disable Linux ELF STABS debugging output) .............................. 33 The –fdwarf=file option (enable output of DWARF side file) ..... 34 The –fmapat and –fnomapat options (enable/disable mapping ‘@’ to ‘ ’ in external symbol names) .................. 34 Library options ................................. 34 The –macext option (specify the extension to use for MACRO/COPY file names) ............................ 34 The –L option (specify the location to search for MACRO/COPY members) ............................. 35 The –libexec option (provide a program to execute when the assem- bler cannot find a macro/copy member) ............ 36 The –libncase option (use case-insensitive filename search) ...... 36 Listing and Print options ........................... 37 The –pc=control/–xpc=control option (override print control state- ments) ............................... 38 v The –l/–xl option (enable/disable generation of the assembler listing) 38 The –esd/–xesd option (enable/disable symbol information in the list- ing) ................................ 39 The –fold/–xfold option (enable/disable folding of lower-case letters to upper-case in the listing) ................... 39 The –rld/–xrld option (enable/disable relocation information in the listing) ............................... 39 The –dx/–xdx option (enable/disable the DSECT cross-reference in the listing) ............................ 39 The –mx/–xmx option (enable/disable the MACRO cross-reference in the listing) ........................... 39 The –rx/–xrx option (enable/disable REGISTER cross-reference in- formation in the listing) ..................... 39 The –umap/–xumap option (enable/disable USING MAP informa- tion in the listing) ........................ 40 The –uwarn n and –xuwarn