[PATCH] D52105: [WebAssembly] Add V128 value type to binary format
Thomas Lively via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 14 10:56:37 PDT 2018
tlively updated this revision to Diff 165538.
tlively added a comment.
- Add to switch in MCTargetDesc
Repository:
rL LLVM
https://reviews.llvm.org/D52105
Files:
include/llvm/BinaryFormat/Wasm.h
lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
Index: lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
===================================================================
--- lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
+++ lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
@@ -149,6 +149,8 @@
return wasm::ValType::F32;
if (RC == &WebAssembly::F64RegClass)
return wasm::ValType::F64;
+ if (RC == &WebAssembly::V128RegClass)
+ return wasm::ValType::V128;
llvm_unreachable("Unexpected register class");
}
Index: lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
===================================================================
--- lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
+++ lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
@@ -133,6 +133,13 @@
return wasm::ValType::F32;
case MVT::f64:
return wasm::ValType::F64;
+ case MVT::v16i8:
+ case MVT::v8i16:
+ case MVT::v4i32:
+ case MVT::v2i64:
+ case MVT::v4f32:
+ case MVT::v2f64:
+ return wasm::ValType::V128;
case MVT::ExceptRef:
return wasm::ValType::EXCEPT_REF;
default:
Index: lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
===================================================================
--- lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
+++ lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
@@ -269,6 +269,8 @@
return "f32";
case wasm::ValType::F64:
return "f64";
+ case wasm::ValType::V128:
+ return "v128";
case wasm::ValType::EXCEPT_REF:
return "except_ref";
}
Index: include/llvm/BinaryFormat/Wasm.h
===================================================================
--- include/llvm/BinaryFormat/Wasm.h
+++ include/llvm/BinaryFormat/Wasm.h
@@ -191,6 +191,7 @@
WASM_TYPE_I64 = 0x7E,
WASM_TYPE_F32 = 0x7D,
WASM_TYPE_F64 = 0x7C,
+ WASM_TYPE_V128 = 0x7B,
WASM_TYPE_ANYFUNC = 0x70,
WASM_TYPE_EXCEPT_REF = 0x68,
WASM_TYPE_FUNC = 0x60,
@@ -225,6 +226,7 @@
I64 = WASM_TYPE_I64,
F32 = WASM_TYPE_F32,
F64 = WASM_TYPE_F64,
+ V128 = WASM_TYPE_V128,
EXCEPT_REF = WASM_TYPE_EXCEPT_REF,
};
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52105.165538.patch
Type: text/x-patch
Size: 2114 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180914/3eb057e3/attachment-0001.bin>
More information about the llvm-commits
mailing list