aboutsummaryrefslogtreecommitdiff
path: root/vm/compiler/codegen/arm/CodegenFactory.c
diff options
context:
space:
mode:
authorBill Buzbee <buzbee@google.com>2009-11-16 12:51:22 -0800
committerBill Buzbee <buzbee@google.com>2009-11-16 12:51:22 -0800
commit4c0dedfd9006daee4f6d96482cc6ac94a1797880 (patch)
tree9a3d085143e917784cb41d3ce9baa39c89dbb483 /vm/compiler/codegen/arm/CodegenFactory.c
parent1729d0b998523fe8b5ddcefaf1577ce00a4aee44 (diff)
Jit: string's compareTo performance improvement.
Changed compareTo handler to call __memcmp16() for strings >= 32 chars. However, even for those strings, the first two chars are done in the handler (to catch early-out cases). Comparisons were done with micro-benchmarks comparing 10 and 200-char strings. The strings were: equal -> Q not equal at start -> S not equal at end -> E The test configurations were handler (H) [the previous handler], subroutine (S) [memcmp16()} and blended (B) [this commit] H S B 10E 60 138 65 10S 32 70 30 10Q 9 9 9 100E 745 708 716 In short, the small string cases were twice as fast with the existing handler compared to memcmp16, but memcmp16 was ~5% faster for long strings.
Diffstat (limited to 'vm/compiler/codegen/arm/CodegenFactory.c')
0 files changed, 0 insertions, 0 deletions