46 lines · plain
1// RUN: mlir-opt %s | FileCheck %s2 3module {4 wasmssa.func @func_0() -> f32 {5 %0 = wasmssa.local of type f326 %1 = wasmssa.local of type f327 %2 = wasmssa.const 8.000000e+00 : f328 %3 = wasmssa.const 1.200000e+01 : f329 %4 = wasmssa.add %2 %3 : f3210 wasmssa.return %4 : f3211 }12 wasmssa.func @func_1() -> i32 {13 %0 = wasmssa.local of type i3214 %1 = wasmssa.local of type i3215 %2 = wasmssa.const 8 : i3216 %3 = wasmssa.const 12 : i3217 %4 = wasmssa.add %2 %3 : i3218 wasmssa.return %4 : i3219 }20 wasmssa.func @func_2(%arg0: !wasmssa<local ref to i32>) -> i32 {21 %0 = wasmssa.const 3 : i3222 wasmssa.return %0 : i3223 }24}25 26// CHECK-LABEL: wasmssa.func @func_0() -> f32 {27// CHECK: %[[VAL_0:.*]] = wasmssa.local of type f3228// CHECK: %[[VAL_1:.*]] = wasmssa.local of type f3229// CHECK: %[[VAL_2:.*]] = wasmssa.const 8.000000e+00 : f3230// CHECK: %[[VAL_3:.*]] = wasmssa.const 1.200000e+01 : f3231// CHECK: %[[VAL_4:.*]] = wasmssa.add %[[VAL_2]] %[[VAL_3]] : f3232// CHECK: wasmssa.return %[[VAL_4]] : f3233 34// CHECK-LABEL: wasmssa.func @func_1() -> i32 {35// CHECK: %[[VAL_0:.*]] = wasmssa.local of type i3236// CHECK: %[[VAL_1:.*]] = wasmssa.local of type i3237// CHECK: %[[VAL_2:.*]] = wasmssa.const 8 : i3238// CHECK: %[[VAL_3:.*]] = wasmssa.const 12 : i3239// CHECK: %[[VAL_4:.*]] = wasmssa.add %[[VAL_2]] %[[VAL_3]] : i3240// CHECK: wasmssa.return %[[VAL_4]] : i3241 42// CHECK-LABEL: wasmssa.func @func_2(43// CHECK-SAME: %[[ARG0:.*]]: !wasmssa<local ref to i32>) -> i32 {44// CHECK: %[[VAL_0:.*]] = wasmssa.const 3 : i3245// CHECK: wasmssa.return %[[VAL_0]] : i3246