Fix bug in IsTypeStructC in sandbox mode
Summary:
We read the type structure resolution cache in both the IsTypeStructCache IR op and in the native helper. The native helper also writes to this cache.
This cache is stored in RDS::Local, which means that it's local to the thread but not to a request. That means any data cached there must not vary from request to request. We must check that a class is persistent before caching it.
Does this change completely disable the optimization in sandbox mode? I assume it does, in which case, we should probably just avoid JIT-ing this code in that case...
Reviewed By: oulgen
Differential Revision:
D27000753
fbshipit-source-id:
aa792c079bf19857088daffb972b96360cecba65