about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2016-08-03 13:24:53 -0700
committerGitHub <noreply@github.com>2016-08-03 13:24:53 -0700
commit0a3180baab7c361ee85958c88d971190649c3b70 (patch)
tree388f739785d96d6aad567df67dc51b98704340c9 /src/rustllvm/RustWrapper.cpp
parenta0b4e6764809022433edbff275528ec2540bda73 (diff)
parent63f0c4de6732b699e2b4ded5fb9a8530a1c8a5ac (diff)
downloadrust-0a3180baab7c361ee85958c88d971190649c3b70.tar.gz
rust-0a3180baab7c361ee85958c88d971190649c3b70.zip
Auto merge of #35261 - eddyb:llvm-autoupgrade, r=nikomatsakis
Support removed LLVM intrinsics by invoking its AutoUpgrade mechanism.

Turns out that LLVM sometimes renames platform intrinsics or replaces them with first-class instructions.
For example, signed minimum became `select (icmp SLT, a, b), a, b` where `a` and `b` are vectors.

This is blocking the Servo rustup ([relevant failure](http://build.servo.org/builders/windows-dev/builds/226/steps/compile/logs/stdio)), as they're using a few such intrinsics.
The fix in this PR is to invoke LLVM's own `AutoUpgrade` mechanism to do the replacements.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions