Rules for model statement fields

The fields that can be specified in model statements are the same fields that can be specified in an ordinary assembler language statement. They are the name, operation, operand, and remarks fields. You can also specify a continuation-indicator field, an identification-sequence field, and, in source macro definitions, a field before the begin column if the correct ICTL instruction has been specified. Character strings in the last three fields (in the standard format only, columns 72 through 80) are generated exactly as they appear in the model statement, and no values are substituted for variable symbols.

Model statements must have an entry in the operation field, and, in most cases, an entry in the operand field in order to generate valid assembler language instructions.

Name field

The entries allowed in the name field of a model statement, before generation, are:

The generated result must be spaces (if valid) or a character string that represents a valid assembler or machine instruction name field. Double-byte data is not valid in an assembler or machine instruction name field and must not be generated.

Variable symbols must not be used to generate comment statement indicators (* or .*).

Notes:
  1. You can not reference an ordinary symbol defined in the name field of a model statement until the macro definition containing the model statement has been called, and the model statement has been generated.
  2. Restrictions on the name entry of assembler language instructions are further specified where each individual assembler language instruction is described in this manual.

Operation field

The entries allowed in the operation field of a model statement, before generation, are given in the following list:

The following rules apply to the operation field of a model statement:

Operand field

The entries allowed in the operand field of a model statement, before generation, are:

The allowable results of generation are spaces (if valid) and a character string that represents a valid assembler, machine instruction, or macro instruction operand field.

Variable symbols

Variable symbols must not be used in the operand field of a ICTL, or ISEQ instruction. A variable symbol must not be used in the operand field of a COPY instruction that is inside a macro definition.

Remarks field

The remarks field of a model statement can contain any combination of characters. No substitution is done for variable symbols appearing in the remarks field.

Using spaces

One or more spaces must be used in a model statement to separate the name, operation, operand, and remarks fields from each other. Spaces cannot be generated between fields in order to create a complete assembler language statement. The exception to this rule is that a combined operand-remarks field can be generated with one or more spaces to separate the two fields. Note, however, that if the generated operand field is part of a macro instruction, the entire string (including spaces) is passed as an operand.


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