diff options
Diffstat (limited to 'src/vm/method.cpp')
-rw-r--r-- | src/vm/method.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/vm/method.cpp b/src/vm/method.cpp index e4a75d6a4c..923cfc1a1c 100644 --- a/src/vm/method.cpp +++ b/src/vm/method.cpp @@ -5747,7 +5747,16 @@ PrecodeType MethodDesc::GetPrecodeType() if (!RequiresMethodDescCallingConvention()) { // Use the more efficient fixup precode if possible - precodeType = PRECODE_FIXUP; +#ifdef HAS_RELATIVE_FIXUP_PRECODE + if (IsZapped()) + { + precodeType = PRECODE_RELATIVE_FIXUP; + } + else +#endif // HAS_RELATIVE_FIXUP_PRECODE + { + precodeType = PRECODE_FIXUP; + } } else #endif // HAS_FIXUP_PRECODE |