about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorBjörn Steinbrink <bsteinbr@gmail.com>2014-03-16 09:29:05 +0100
committerBjörn Steinbrink <bsteinbr@gmail.com>2014-06-21 19:59:58 +0200
commitd747de5a927e405c7d12ae04d213bdc05add2032 (patch)
tree79105f6a528eed06cb85780f8bf2fe4379a31b26 /src/rustllvm/RustWrapper.cpp
parent90a9f65b8da62f7495e56cab252efe590dd456e5 (diff)
downloadrust-d747de5a927e405c7d12ae04d213bdc05add2032.tar.gz
rust-d747de5a927e405c7d12ae04d213bdc05add2032.zip
Compile bools to i1
We currently compiled bools to i8 values, because there was a bug in
LLVM that sometimes caused miscompilations when using i1 in, for
example, structs.

Using i8 means a lot of unnecessary zero-extend and truncate operations
though, since we have to convert the value from and to i1 when using for
example icmp or br instructions. Besides the unnecessary overhead caused
by this, it also sometimes made LLVM miss some optimizations.

Fixes #8106.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions