I think of it as "yes, a whole lot of the pipeline needs to be purged because of an AMODE switch" because operand addresses need to be re-evaluated.
>34 'L' I caution against any of these artificial scenarios (here SAMxx immediately followed by SAMyy) that attempt to derive conclusions about the machine. That includes the artificial loop from the other day. Non-realistically small loops, non-realistic AMODE switching are things that the machine / millicode designers likely do not spend all that much time worrying about. So maybe "34" is an upper bound. As with everything, there is a tradeoff, between switching and such things as the larger I-cache footprint that AMODE 64 code typically has, and things like "LG" in AMODE 64 and "L" in AMODE 31 are highly optimized, but "LLGT" in AMODE 64 is not (and you frequently have to do that sort of instruction if following pointer chains of non-high-virtual blocks). The general advice is to avoid AMODE switching when you can. Peter Relson z/OS Core Technology Design ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN