Ignore multi-value errors on LLVM too, for now.

This commit is contained in:
Nick Lewycky
2020-05-13 13:06:50 -07:00
parent 6e6196a34e
commit 486dedc601
2 changed files with 6 additions and 3 deletions

View File

@@ -46,7 +46,10 @@ pub struct LLVMConfig {
impl LLVMConfig { impl LLVMConfig {
/// Creates a new configuration object with the default configuration /// Creates a new configuration object with the default configuration
/// specified. /// specified.
pub fn new(features: Features, target: Target) -> Self { pub fn new(mut features: Features, target: Target) -> Self {
// Override the default multi-value switch
features.multi_value = false;
let triple = Triple { let triple = Triple {
architecture: target.triple().architecture, architecture: target.triple().architecture,
vendor: target.triple().vendor.clone(), vendor: target.triple().vendor.clone(),

View File

@@ -35,8 +35,8 @@ fn run_wast(wast_path: &str, compiler: &str) -> anyhow::Result<()> {
let tunables = Tunables::for_target(compiler_config.target().triple()); let tunables = Tunables::for_target(compiler_config.target().triple());
let store = Store::new(Arc::new(JITEngine::new(&*compiler_config, tunables))); let store = Store::new(Arc::new(JITEngine::new(&*compiler_config, tunables)));
let mut wast = Wast::new_with_spectest(store); let mut wast = Wast::new_with_spectest(store);
if compiler == "singlepass" { if compiler == "singlepass" || compiler == "llvm" {
// We don't support multivalue yet in singlepass // We don't support multivalue yet in singlepass or llvm
wast.allow_instantiation_failures(&[ wast.allow_instantiation_failures(&[
"Validation error: invalid result arity: func type returns multiple values", "Validation error: invalid result arity: func type returns multiple values",
"Validation error: blocks, loops, and ifs accept no parameters when multi-value is not enabled" "Validation error: blocks, loops, and ifs accept no parameters when multi-value is not enabled"