(searchbufs): New variable, replaces searchbuf and last_regexp and
search_fastmap. (syms_of_search): Initialize it. (searchbuf_head): New variable. (compile_pattern_1): Renamed from compile_pattern and made static. Copy the regexp string in case the caller modifies it in place later. (compile_pattern): New code, uses a cached entry if one is available. The pattern buffer is now a return value instead of an arg. (set_search_regs): Set num_regs directly, since there's no active pattern buffer to pass to re_set_registers. (Fstore_match_data): Likewise. (Flooking_at): Use the new calling convention for compile_pattern. (Fstring_match, fast_string_match, search_buffer): Likewise.
Showing with 90 additions and 52 deletions