manpagez: man pages & more
man pcre2_jit_compile(3)
Home | html | info | man
pcre2_jit_compile(3)       Library Functions Manual       pcre2_jit_compile(3)


NAME

       PCRE2 - Perl-compatible regular expressions (revised API)


SYNOPSIS

       #include <pcre2.h>

       pcre2_jit_compile(3) *code, uint32_t options);


DESCRIPTION

       This function requests JIT compilation, which, if the just-in-time
       compiler is available, further processes a compiled pattern into
       machine code that executes much faster than the pcre2_match()
       interpretive matching function. Full details are given in the pcre2jit
       documentation.

       The availability of JIT support can be tested by calling
       pcre2_compile_jit() with a single option PCRE2_JIT_TEST_ALLOC (the code
       argument is ignored, so a NULL value is accepted). Such a call returns
       zero if JIT is available and has a working allocator. Otherwise it
       returns PCRE2_ERROR_NOMEMORY if JIT is available but cannot allocate
       executable memory, or PCRE2_ERROR_JIT_UNSUPPORTED if JIT support is not
       compiled.

       Otherwise, the first argument must be a pointer that was returned by a
       successful call to pcre2_compile(), and the second must contain one or
       more of the following bits:

         PCRE2_JIT_COMPLETE      compile code for full matching
         PCRE2_JIT_PARTIAL_SOFT  compile code for soft partial matching
         PCRE2_JIT_PARTIAL_HARD  compile code for hard partial matching

       There is also an obsolete option called PCRE2_JIT_INVALID_UTF, which
       has been superseded by the pcre2_compile() option
       PCRE2_MATCH_INVALID_UTF. The old option is deprecated and may be
       removed in the future.

       The yield of the function when called with any of the three options
       above is 0 for success, or a negative error code otherwise. In
       particular, PCRE2_ERROR_JIT_BADOPTION is returned if JIT is not
       supported or if an unknown bit is set in options. The function can also
       return PCRE2_ERROR_NOMEMORY if JIT is unable to allocate executable
       memory for the compiler, even if it was because of a system security
       restriction. In a few cases, the function may return with
       PCRE2_ERROR_JIT_UNSUPPORTED for unsupported features.

       There is a complete description of the PCRE2 native API in the pcre2api
       page and a description of the POSIX API in the pcre2posix page.

PCRE2 10.45                     22 August 2024            pcre2_jit_compile(3)

pcre2 10.45 - Generated Tue Feb 25 13:21:38 CST 2025
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.