]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #35261 - eddyb:llvm-autoupgrade, r=nikomatsakis
authorbors <bors@rust-lang.org>
Wed, 3 Aug 2016 20:24:53 +0000 (13:24 -0700)
committerGitHub <noreply@github.com>
Wed, 3 Aug 2016 20:24:53 +0000 (13:24 -0700)
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.


Trivial merge