I have filed a new bug report against experimental.patchpoint because I am getting crashes with it on x86-64. I don’t know if the test case I attached in the bug report is breaking some assumption (-verify does not show any IR level issues). Patchpoint was originally added to LLVM in 2013. Why is it still experimental? What are the known issues with it?
I have seen the StackMaps Documentation but it doesn’t seem to point to any known limitations other than that it is not supported on all targets.
I was able to create a smaller test case that shows the crash in my bug report. See below.
If I comment out the call to @R_KIDpn_15 the crash disappears. I thought a patch point can be followed by any code including calls. Is this a bug in the code generator or my misunderstanding of something fundamental about the patch point intrinsic?