| Index: src/assembler.cc
|
| diff --git a/src/assembler.cc b/src/assembler.cc
|
| index d1bbd88c1971383ca19a6d6f49e966b62022bd85..e27aed5f34dd2121475dd9dd21d2e5699f2130d7 100644
|
| --- a/src/assembler.cc
|
| +++ b/src/assembler.cc
|
| @@ -63,6 +63,7 @@
|
| #include "src/runtime/runtime.h"
|
| #include "src/simulator.h" // For flushing instruction cache.
|
| #include "src/snapshot/serializer-common.h"
|
| +#include "src/string-search.h"
|
| #include "src/wasm/wasm-external-refs.h"
|
|
|
| // Include native regexp-macro-assembler.
|
| @@ -1562,12 +1563,28 @@ ExternalReference ExternalReference::libc_memset_function(Isolate* isolate) {
|
| return ExternalReference(Redirect(isolate, FUNCTION_ADDR(libc_memset)));
|
| }
|
|
|
| +template <typename SubjectChar, typename PatternChar>
|
| +ExternalReference ExternalReference::search_string_raw(Isolate* isolate) {
|
| + auto f = SearchStringRaw<SubjectChar, PatternChar>;
|
| + return ExternalReference(Redirect(isolate, FUNCTION_ADDR(f)));
|
| +}
|
| +
|
| ExternalReference ExternalReference::try_internalize_string_function(
|
| Isolate* isolate) {
|
| return ExternalReference(Redirect(
|
| isolate, FUNCTION_ADDR(StringTable::LookupStringIfExists_NoAllocate)));
|
| }
|
|
|
| +// Explicit instantiations for all combinations of 1- and 2-byte strings.
|
| +template ExternalReference
|
| +ExternalReference::search_string_raw<const uint8_t, const uint8_t>(Isolate*);
|
| +template ExternalReference
|
| +ExternalReference::search_string_raw<const uint8_t, const uc16>(Isolate*);
|
| +template ExternalReference
|
| +ExternalReference::search_string_raw<const uc16, const uint8_t>(Isolate*);
|
| +template ExternalReference
|
| +ExternalReference::search_string_raw<const uc16, const uc16>(Isolate*);
|
| +
|
| ExternalReference ExternalReference::page_flags(Page* page) {
|
| return ExternalReference(reinterpret_cast<Address>(page) +
|
| MemoryChunk::kFlagsOffset);
|
|
|