[llvm][mustache] Avoid redundant saves in accessor splitting (#159197)
The splitMustacheString function was saving StringRefs that
were already backed by an arena-allocated string. This was
unnecessary work. This change removes the redundant
Ctx.Saver.save() call.
This optimization provides a small but measurable performance
improvement on top of the single-pass tokenizer, most notably
reducing branch misses.
Metric | Baseline | Optimized | Change
-------------- | -------- | --------- | -------
Time (ms) | 35.77 | 35.57 | -0.56%
Cycles | 35.16M | 34.91M | -0.71%
Instructions | 85.77M | 85.54M | -0.27%
Branch Misses | 113.9K | 111.9K | -1.76%
Cache Misses | 237.7K | 242.1K | +1.85%