Thanks to a bunch of bits of advice from here and elsewhere, I have it
working-or at least producing a result; my cow-orker who needs the code is
going to validate that the result seems right.
The key was that in a virtual machine you have to turn vector processing on
by setting the (grande) CR0 bits. So the operative code in my module is now:
STCTG 0,0,CTLREG0 Get CR0
MVC WORK1(8),CTLREG0 Copy so we can change it
OI WORK1+5,X'06' Set bits 45-46
LCTLG 0,0,WORK1 Set changed CR0
VL 2,INTEGER1,4 Load 64-bit value #1
VL 4,INTEGER2,4 Load 64-bit value #2
VGFMG 0,2,4 VECTOR GALOIS FIELD MULTIPLY SUM
VSTEG 0,RESULT,0 Store the result
LCTLG 0,0,CTLREG0 Restore saved R0
CP disappointed me by STILL now translating the vector instructions:
000000000000E08A STCTG EB00C1480025 >> 0000E148 CC 1
000000000000E090 MVC D207C160C148 >> 0000E160
0000E148 CC 1
000000000000E096 OI 9606C165 >> 0000E165 CC 1
000000000000E09A LCTLG EB00C160002F 0000E160 CC 1
000000000000E0A0 ???? E720C1504006 CC 1
000000000000E0A6 ???? E740C1584006 CC 1
000000000000E0AC ???? E702400030B4 CC 1
000000000000E0B2 ???? E700C1A0000A CC 1
000000000000E0B8 LCTLG EB00C148002F 0000E148 CC 1
But I guess ya can't have everything.
Thanks to all who helped! Hopefully this thread will shorten the process for
someone else one day.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN