summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/WebAssembly
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2019-08-04 16:37:29 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2019-08-04 16:37:29 +0000
commit295f99265b83e12d3bca45707ec1c5a4fa4df55b (patch)
tree0d75ef773cd013c4b26ea8142dde29c5cee5ef0b /llvm/test/CodeGen/WebAssembly
parent6d2e8eb9cac046d9243c776cb871a6842c16312d (diff)
downloadbcm5719-llvm-295f99265b83e12d3bca45707ec1c5a4fa4df55b.tar.gz
bcm5719-llvm-295f99265b83e12d3bca45707ec1c5a4fa4df55b.zip
Regenerate test for an upcoming patch.
I managed to use the update_llc_test_checks script for this, but had to set -asm-verbose=true and then manually tweak the result (PR42882) llvm-svn: 367787
Diffstat (limited to 'llvm/test/CodeGen/WebAssembly')
-rw-r--r--llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll81
1 files changed, 49 insertions, 32 deletions
diff --git a/llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll b/llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
index b6e35f5f93a..b00fcf68f2d 100644
--- a/llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
+++ b/llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
@@ -16,39 +16,56 @@
target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
target triple = "wasm32-unknown-unknown"
-; CHECK-LABEL: foo:
-
-; CHECK: i32.load8_u
-; CHECK: i32x4.splat
-; CHECK: i32.load8_u
-; CHECK: i32x4.replace_lane 1
-; CHECK: i32.load8_u
-; CHECK: i32x4.replace_lane 2
-; CHECK: i32.load8_u
-; CHECK: i32x4.replace_lane 3
-
-; CHECK: i8x16.extract_lane_s 0
-; CHECK: f64.convert_i32_s
-; CHECK: f32.demote_f64
-; CHECK: f32x4.splat
-
-; CHECK: i8x16.extract_lane_s 4
-; CHECK: f64.convert_i32_s
-; CHECK: f32.demote_f64
-; CHECK: f32x4.replace_lane 1
-
-; CHECK: i8x16.extract_lane_s 8
-; CHECK: f64.convert_i32_s
-; CHECK: f32.demote_f64
-; CHECK: f32x4.replace_lane 2
-
-; CHECK: i8x16.extract_lane_s 12
-; CHECK: f64.convert_i32_s
-; CHECK: f32.demote_f64
-; CHECK: f32x4.replace_lane 3
-
-; CHECK: v128.store
define void @foo(<4 x i8>* %p) {
+; CHECK-LABEL: foo:
+; CHECK: .functype foo (i32) -> ()
+; CHECK-NEXT: i32.load8_u 0
+; CHECK-NEXT: i32x4.splat
+; CHECK-NEXT: i32.load8_u 1
+; CHECK-NEXT: i32x4.replace_lane 1
+; CHECK-NEXT: i32.const 2
+; CHECK-NEXT: i32.add
+; CHECK-NEXT: i32.load8_u 0
+; CHECK-NEXT: i32x4.replace_lane 2
+; CHECK-NEXT: i32.const 3
+; CHECK-NEXT: i32.add
+; CHECK-NEXT: i32.load8_u 0
+; CHECK-NEXT: i32x4.replace_lane 3
+; CHECK-NEXT: local.tee
+; CHECK-NEXT: i8x16.extract_lane_s 0
+; CHECK-NEXT: f64.convert_i32_s
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.mul
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.add
+; CHECK-NEXT: f32.demote_f64
+; CHECK-NEXT: f32x4.splat
+; CHECK-NEXT: i8x16.extract_lane_s 4
+; CHECK-NEXT: f64.convert_i32_s
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.mul
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.add
+; CHECK-NEXT: f32.demote_f64
+; CHECK-NEXT: f32x4.replace_lane 1
+; CHECK-NEXT: i8x16.extract_lane_s 8
+; CHECK-NEXT: f64.convert_i32_s
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.mul
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.add
+; CHECK-NEXT: f32.demote_f64
+; CHECK-NEXT: f32x4.replace_lane 2
+; CHECK-NEXT: i8x16.extract_lane_s 12
+; CHECK-NEXT: f64.convert_i32_s
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.mul
+; CHECK-NEXT: f64.const 0x0p0
+; CHECK-NEXT: f64.add
+; CHECK-NEXT: f32.demote_f64
+; CHECK-NEXT: f32x4.replace_lane 3
+; CHECK-NEXT: v128.store 0
+; CHECK-NEXT: return
%1 = load <4 x i8>, <4 x i8>* %p
%2 = sitofp <4 x i8> %1 to <4 x double>
%3 = fmul <4 x double> zeroinitializer, %2
OpenPOWER on IntegriCloud