OPCODE control statements

During JCLIN processing, SMP/E scans the SMPJCLIN input, which consists of various job steps calling system utilities. To determine the structure of the target system, SMP/E specifically looks at copy steps, link-edit steps, and assembly steps.

As SMP/E scans inline assembly steps, it looks at each assembler instruction to determine whether the instruction is a macro invocation or an OPCODE. If SMP/E determines that this is a macro invocation, it builds a MAC entry in the target zone and defines the connection between the macro and the assembly in which the macro was found. As a result, when that macro is later changed by the installation of a SYSMOD, SMP/E can cause all the assemblies that used that macro to be redone.

SMP/E uses GIMOPCDE members to determine whether an assembler instruction is a macro invocation or an OPCODE.

SMP/E provides you with a default set of OPCODE definitions that identifies all the known standard assembler OPCODEs. You can define your own members to identify additional OPCODE values or macro names by using the sample GIMOPCDE member SMP/E supplied for you. If you define your own member, you must allocate the SMPPARM data set. You can specify the name of one of these user-defined GIMOPCDE members on the JCLIN command or on the ++JCLIN statement to have SMP/E pick up this additional information. The data from this other GIMOPCDE member is merged with the data from the default set of OPCODE definitions. If duplicate data is specified, the user-specified member has priority.

SMP/E uses the following method to determine whether an assembler instruction is an OPCODE or a macro:

For additional information about how SMP/E processes assembler input as JCLIN, see ++JCLIN MCS.