32 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mattr=+simd128 | FileCheck %s3 4; Regression test for a crash caused by5; WebAssemblyTargetLowering::ReplaceNodeResults not being6; implemented. Since SIMD is enabled, sign_ext_inreg is custom lowered7; but the result is i16, an illegal value. This requires8; ReplaceNodeResults to resolve, but the default implementation is to9; abort.10 11target triple = "wasm32-unknown-emscripten"12 13define void @foo() {14; CHECK-LABEL: foo:15; CHECK: .functype foo () -> ()16; CHECK-NEXT: .local i3217; CHECK-NEXT: # %bb.0: # %entry18; CHECK-NEXT: i32.const 019; CHECK-NEXT: local.get 020; CHECK-NEXT: i32.load8_s 021; CHECK-NEXT: i32.store16 022; CHECK-NEXT: # fallthrough-return23entry:24 %0 = load ptr, ptr undef, align 425 %1 = load i32, ptr %0, align 426 %2 = load i32, ptr undef, align 427 %conv67 = trunc i32 %2 to i828 %conv68 = sext i8 %conv67 to i1629 store i16 %conv68, ptr null, align 230 ret void31}32