Reverse records separated by a single byte using backward memrchr scanning.
Scans backward from end, writes each record as found. No Vec allocation.
Uses a backward-fill buffer: records are copied backward into an 8MB buffer,
then flushed as a single write_all when full.
Reverse records using a regex separator.
Uses regex::bytes for direct byte-level matching (no UTF-8 conversion needed).
NOTE: GNU tac uses POSIX Basic Regular Expressions (BRE), so we convert to ERE first.
Uses backward scanning to match GNU tac’s re_search behavior.