You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
1.6 KiB

  1. config PCRE2_JIT_ENABLED
  2. bool
  3. depends on PACKAGE_libpcre2 && (aarch64 || aarch64_be || arm || i386 || i686 || x86_64 || mips || mipsel || mips64 || mips64el || powerpc || powerpc64 || powerpcle || sparc)
  4. default y if (arm || i686 || x86_64)
  5. prompt "Enable JIT compiler support"
  6. help
  7. Enable JIT (Just-In-Time) compiler support.
  8. Just-in-time compiling is a heavyweight optimization that can greatly
  9. speed up pattern matching. However, it comes at the cost of extra
  10. processing before the match is performed, so it is of most benefit when
  11. the same pattern is going to be matched many times. This does not
  12. necessarily mean many calls of a matching function; if the pattern is
  13. not anchored, matching attempts may take place many times at various
  14. positions in the subject, even for a single call. Therefore, if the
  15. subject string is very long, it may still pay to use JIT even for
  16. one-off matches. JIT support is available for all of the 8-bit, 16-bit
  17. and 32-bit PCRE2 libraries and adds about 100KB to the resulting
  18. libpcre2.so. JIT support applies only to the traditional Perl-compatible
  19. matching function. It does not apply when the DFA matching function is
  20. being used.
  21. Enabling this option can give an about 10x performance increase on JIT
  22. operations. It can be desireable for e.g. high performance Apache
  23. mod_rewrite or HA-Proxy reqrep operations.
  24. However, JIT should _only_ be enabled on architectures that are supported.
  25. Enabling JIT on unsupported platforms will result in a compilation
  26. failure. A list of supported architectures can be found here:
  27. https://pcre.org/current/doc/html/pcre2jit.html#SEC2