David, > > > "... a good reason why small MVCs run slower than LG/STG pairs ... > > > overhead at the beginning of an MVC ... check if the operands are on 'good' > > > boundaries ... check for operand overlap ... length check ... [meanwhile] the > > > LG/STG is far on its way. Anyone writing a length-1 MVC instead of > > > an IC/STC would be laughed out of their code review. > > > > Rubbish. > > KISS. > > A move of length 1 is clear and unequivocal. > > And it's only one line. > > Nevertheless, IC/STC is what the newer mainframe compilers generate for a > one-byte move. For the reasons given, it's less work for the system than an > MVC.
In certain, CPU-sensitive situations, I'd lean towards maximum performance. However, I certainly wouldn't laugh at anyone for employing 1-byte MVCs. In my opinion, MVCs do make for clearer, more easily read assembler code (neither compilers nor those who compile care much about assembler code being easy-to-read, but I do!). A case can be made that that's worth more to an organization than an itsy-bitsy, teensy-weensy speedup, especially when the app is one that may be significantly more tied up in I/O and WAIT than execution, for example. Doug The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it
