Forgot to mention... use of 8 byte immediate values implies support for them at the EQU level as well...
CTLBNAME EQU C'CTLBNAME' (which is currently limited to just 4 bytes) One of the few types of instructions which kind of supports an 8 byte immediate value are the compare logical immediates, but only if you're okay with the high order 32bits of the immediate value being zero. FWIW, I dislike use of lower case for instruction mnemonics and operands, but have grown to appreciate LC for struc labels and comments. Mike -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Mike Hochee Sent: Saturday, October 24, 2020 5:55 PM To: [email protected] Subject: Re: Reversed string macro Warning! This is a fake (spoofed) message. DO NOT TRUST! You can also do it with two MVHHI instructions. (which I tend favor!) Your question also seems to highlight the need for a store immediate that supports a 4 byte immediate value, if for no other reason than to complement the load logical immediate instructions. I know the sky is not the limit here, but I could definitely find uses for 8 byte immediate values as well. Mike -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Charles Mills Sent: Saturday, October 24, 2020 5:24 PM To: [email protected] Subject: Re: Reversed string macro Caution! This message was sent from outside your organization. Why not? What's wrong with MVI/MVC for 3? Given that it would involve no storage references beyond the target and i-cache, I wonder if the fastest way to set four bytes, without the string appearing in storage, might not be four sequential MVI's. Charles -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Tony Thigpen Sent: Saturday, October 24, 2020 2:07 PM To: [email protected] Subject: Re: Reversed string macro I kinda like the concept, but a lot of literals we use are just 4 characters, so it does not scale down easily.
