Add a no-system-llvm compilecheck header

This commit is contained in:
Simonas Kazlauskas 2017-06-08 17:18:05 +03:00
parent 8938269db6
commit 406eddf5e1
6 changed files with 15 additions and 10 deletions

View File

@ -245,6 +245,9 @@ pub fn compiletest(build: &Build,
let llvm_config = build.llvm_config(target);
let llvm_version = output(Command::new(&llvm_config).arg("--version"));
cmd.arg("--llvm-version").arg(llvm_version);
if !build.is_rust_llvm(target) {
cmd.arg("--system-llvm");
}
cmd.args(&build.flags.cmd.test_args());

@ -1 +1 @@
Subproject commit 84c52ce9b75d841629e6f821b3794998fb0ddbd9
Subproject commit ee545e1d13e6f2191572aebcadb7d1640ce45c65

View File

@ -7,17 +7,11 @@
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
//
// no-system-llvm
// compile-flags: -O
#![crate_type="lib"]
#[no_mangle]
pub fn alloc_zeroed_test(size: u8) {
// CHECK-LABEL: @alloc_zeroed_test
// CHECK-NEXT: start:
// CHECK-NEXT: ret void
let x = vec![0u8; size as usize];
drop(x);
}
#[no_mangle]
pub fn alloc_test(data: u32) {
// CHECK-LABEL: @alloc_test

View File

@ -166,6 +166,9 @@ pub struct Config {
// Version of LLVM
pub llvm_version: Option<String>,
// Is LLVM a system LLVM
pub system_llvm: bool,
// Path to the android tools
pub android_cross_path: PathBuf,

View File

@ -166,6 +166,9 @@ impl EarlyProps {
}
fn ignore_llvm(config: &Config, line: &str) -> bool {
if config.system_llvm && line.starts_with("no-system-llvm") {
return true;
}
if let Some(ref actual_version) = config.llvm_version {
if line.starts_with("min-llvm-version") {
let min_version = line.trim_right()

View File

@ -97,6 +97,7 @@ pub fn parse_config(args: Vec<String> ) -> Config {
optopt("", "gdb", "path to GDB to use for GDB debuginfo tests", "PATH"),
optopt("", "lldb-version", "the version of LLDB used", "VERSION STRING"),
optopt("", "llvm-version", "the version of LLVM used", "VERSION STRING"),
optflag("", "system-llvm", "is LLVM the system LLVM"),
optopt("", "android-cross-path", "Android NDK standalone path", "PATH"),
optopt("", "adb-path", "path to the android debugger", "PATH"),
optopt("", "adb-test-dir", "path to tests for the android debugger", "PATH"),
@ -183,6 +184,7 @@ pub fn parse_config(args: Vec<String> ) -> Config {
gdb_native_rust: gdb_native_rust,
lldb_version: extract_lldb_version(matches.opt_str("lldb-version")),
llvm_version: matches.opt_str("llvm-version"),
system_llvm: matches.opt_present("system-llvm"),
android_cross_path: opt_path(matches, "android-cross-path"),
adb_path: opt_str2(matches.opt_str("adb-path")),
adb_test_dir: opt_str2(matches.opt_str("adb-test-dir")),