about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorAndrea Canciani <ranma42@gmail.com>2016-01-04 17:35:06 +0100
committerAndrea Canciani <ranma42@gmail.com>2016-01-04 17:51:12 +0100
commitaa77f39ccf2786b864206f24e85661eee63022a8 (patch)
treed63a07fc865dd17c6c76efbef5d5e2d3c1afa905 /src/rustllvm/RustWrapper.cpp
parentcf3fcf7758f4e568a5b97bdeffe7131a167e918f (diff)
downloadrust-aa77f39ccf2786b864206f24e85661eee63022a8.tar.gz
rust-aa77f39ccf2786b864206f24e85661eee63022a8.zip
Improve the range comparison
As mentioned in #29734, the range comparison closure can be improved.

The LLVM IR and the assembly from the new version are much simpler and
unfortunately we cannot rely on the compiler to optimise this much, as
it would need to know that `lo <= hi`.

Besides from simpler code, there might also be a performance
advantage, although it is unlikely to appear on benchmarks, as we are
doing a binary search, which should always involve few comparisons.

The code is available on the playpen for ease of comparison:
http://is.gd/4raMmH
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions