On Sun, 14 Aug 2011, Zoltan Herczeg wrote: > I am thinking how this feature affects the jit compiler, since the machine > code > is part of the PCRE study data, but it cannot be reloaded (because pointers > are > directly encoded into the instruction stream). Maybe the pointer should be > cleared before the study data is saved.
I had realized that there was an issue here, and was going to email you about it. I guessed that the JIT data was not saveable, so the documentation will have to state that clearly. As it is up to the user to do the saving/restoring, there is nothing PCRE can do about clearing the pointer. I guess we say something like this: "If you are using the JIT optimization, note that the JIT study data cannot be saved and restored. You will have to re-study the compiled pattern after reloading if you want to recreate the JIT data." I am also planning on providing an info call so that the user can tell whether JIT-study was successful. In practice, I don't think many people actually use the save/restore facility. I have had no feedback on the RC (except from you). I have other things to do for some of tomorrow, but as soon as I have time (maybe tomorrow afternoon, maybe Tuesday morning) I will make the proper 8.13 release and put it out. Then, as soon as you send me the corresponding JIT patches (or full code; I can do my own compares :-) I will start on the integration ... before people start reporting the next lot of bugs. :-( Philip -- Philip Hazel -- ## List details at https://lists.exim.org/mailman/listinfo/pcre-dev
