1 #include "hphp/runtime/base/string-data-macros.h"
2 #include "hphp/util/etch-helpers.h"
4 #ifdef USE_X86_STRING_HELPERS
6 .file "hphp/runtime/base/string-data-x64.S"
9 * HPHP::StringData::hashHelper() is defined here only when SSE4.2 is
10 * explicitly specified via __SSE4_2__.
13 ETCH_SECTION(_ZNK4HPHP10StringData10hashHelperEv)
14 .globl _ZNK4HPHP10StringData10hashHelperEv
15 ETCH_TYPE(_ZNK4HPHP10StringData10hashHelperEv, @function)
16 _ZNK4HPHP10StringData10hashHelperEv:
18 mov SD_LEN(%rdi), %ecx
20 lea SD_DATA(%rdi, %rcx), %rdx
22 jnz ETCH_LABEL(hheader)
28 movabs $0xdfdfdfdfdfdfdfdf, %rsi
29 and (%rdx, %rcx), %rsi
39 or %eax, SD_HASH(%rdi)
42 ETCH_SIZE(_ZNK4HPHP10StringData10hashHelperEv)