Ref: Your note of 2 March 2017, 11:17:08 -0600 I think the clue is in the corresponding restriction for both forms of Prefetch Data when the code is 6 or 7. STCMH with a mask of zero clearly doesn't have any functional use, but I presume it was used as an interim form of Prefetch Data which allowed new machines to use it while remaining a no-operation on machines which did not. This is supported by the fact that Google finds "STCMH" mentioned in a Share presentation "What's new in z/OS performance" from 2011. If it uses the same conventions as Prefetch Data, then codes 6 and 7 would cause a cache line to be explicitly released from exclusive control, which sounds very likely to be incompatible with transactional execution.
Jonathan Scott IBM Hursley, UK John McKown wrote: > This is just curious to me, not a problem. Especially seeing as how I'm > stuck on a z9BC. But on page 5-98 of DZ9ZR010.PDF (version ?? of the PoPS), > it says that certain general purpose instructions are restricted in > transaction mode. Most I can get an understand of, like PLO. But I am > really curious as to why the "store characters under mask high" is > restricted when, and only when, the M3 field is B'000' and the register > value in 6 or 7 (B'0110' or B'0111'). Why specifically registers 6 & 7???? > "Inquiring minds what to know!"
