depends on the IRON being used
once upon a time You would get a S0C6 (SPECIFICATION EXCEPTION)
on newer platforms You will only suffer a performance penalty
for example the ESA principles of operation states
Programming Note: For fixed-field-length oper- ations with field lengths that are a power of 2, sig- nificant performance degradation is possible when storage operands are not positioned at addresses that are integral multiples of the operand length. To improve performance, frequently used storage operands should be aligned on integral bounda- ries.
the latest z/Architecture Principles of Operation (SA22-7832-08) confirms it
Certain units of information must be on an integral boundary in storage. A boundary is called integral for a unit of information when its storage address is a multiple of the length of the unit in bytes. Special names are given to fields of 2, 4, 8, and 16 bytes on an integral boundary. A halfword is a group of two consecutive bytes on a two-byte boundary and is the basic building block of instructions. A word is a group of four consecutive bytes on a four-byte boundary. A doubleword is a group of eight consecutive bytes on an eight-byte boundary. A quadword is a group of 16 consecutive bytes on a 16-byte boundary. (See Figure 3-1 on page 3-4.)
When storage addresses designate halfwords, words, doublewords, and quadwords, the binary rep- resentation of the address contains one, two, three, or four rightmost zero bits, respectively.
Instructions must be on two-byte integral boundaries, and CCWs, IDAWs, MIDAWs, and the storage oper- ands of certain instructions must be on other integral boundaries. The storage operands of most instruc- tions do not have boundary-alignment requirements.
Programming Note: For fixed-field-length opera- tions with field lengths that are a power of 2, signifi- cant performance degradation is possible when storage operands are not positioned at addresses that are integral multiples of the operand length. To improve performance, frequently used storage oper- ands should be aligned on integral boundaries.
a test program should be written to confirm the bahavior of each instruction
and the proper alignment fo the relevant areas CCWs IDAWs and friends
but those of us who play around whit them are so used to proper align things
that it would require additional effort to misalign everyting
a DS 0d or DS 0f here and there never hurt anybody!
also the compiler allocation strategy for unstructured variables takes alignment into account
grande,double,full,half,byte alignment in the order
The only instructions that you are likely to use in writing "application" code that are boundry sensitive are the COMPARE AND SWAP and COMPARE DOUBLE AND SWAP instructions.
POP says: "The second operand of COMPARE AND SWAP (CS, CSY) must be designated on a word boundary. The second operand of COMPARE AND SWAP (CSG) and COMPARE DOUBLE AND SWAP (CDS, CDSY) must be designated on a doubleword boundary. The second operand of COMPARE DOUBLE AND SWAP (CDSG) must be designated on a quadword boundary."
I only mention those instructions because they were recently mentioned in another thread as an alternative to the use of ENQ.
There are, of course, other instructions that are boundary sensitive - but they are primarily used only in systems-level programming, not application-level code. Trust me, you will know their restrictions intimately if you have a need to use them.