This insn (isolated from a much larger executable)
.byte 0x62, 0xf2, 0x7f, 0x48, 0x68, 0x44, 0x22, 0x01
which is "vp2intersect k0, zmm0, [rdx*1+40h]", with SDE 8.49.0 consistently causes
In:
Thread: 0
Exception code: ACCESS_INVALID_ADDRESS
Exception Class: 2
Faulty AccessType : 0
Exception address: 0x7fb5b65ed1a5
C: Tool (or Pin) caused signal 11 at PC 0x7fb5b65ed1a5
Segmentation fault
Link Copied
I built a small test with the above encoding and I see no issue.
Can you check that the address (of RDX+0x40) is indeed a legal address?
Can you reproduce this issue with a small test case?
Thanks.
I did of course check that RDX+40h points to a valid address. I'll attach the tiny sample I've been using (consisting of a C and an assembly file, object created from which need to be linked together). Perhaps it once again matters what hardware SDE gets run on? It's a Sandybridge era laptop in my case, and not being allowed to go to the office right now I have nothing else to check against for now.
This report uncover fundamental issue in the emulation of the instruction.
We will provide new kits with a fix for it soon.
Thanks for reporting this problem.
For more complete information about compiler optimizations, see our Optimization Notice.