CMP specifies the kind of compare operation to be used for sort/merge control fields up to 16 bytes long, bearing the format code PD or ZD.
When CMP=CPD is used, ZD fields are PACKed and then compared. Invalid PD data may cause a system 0C7 abend and program termination. The integrity of fields labelled “ZD” is only guaranteed when they contain valid ZD data. Since the zone bits (the leftmost four bits of each byte) are lost during packing, UNPKing the field later restores only valid ZD data to its original state. Leading blanks are transformed to leading zeros and alphabetic character data that packs to a valid PD field is converted to valid ZD data.
CMP=CLC uses the compare logical instruction for all PD and ZD control fields. No data validation is done and the integrity of the output is maintained.
CMP=CPD is the delivered default for the PARM. The delivered default for VLTEST is 1, and is consistent with this default. Changing the VLTEST default from 1 to any even number forces the use of CMP=CLC when sorting variable-length records.
For more detailed information and sample comparisons, see the section Comparing PD and ZD Control Fields.