You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tvm.apache.org by wu...@apache.org on 2021/03/04 22:04:30 UTC
[tvm] 09/11: Update metal codegen for ArgUnion64
This is an automated email from the ASF dual-hosted git repository.
wuwei pushed a commit to branch vk-i64
in repository https://gitbox.apache.org/repos/asf/tvm.git
commit f7d19e99604368c3e29a99679565575eab1d7c77
Author: Wuwei Lin <wu...@apache.org>
AuthorDate: Thu Mar 4 16:14:42 2021 -0500
Update metal codegen for ArgUnion64
---
src/target/source/codegen_metal.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/target/source/codegen_metal.cc b/src/target/source/codegen_metal.cc
index baa3006..f7219cb 100644
--- a/src/target/source/codegen_metal.cc
+++ b/src/target/source/codegen_metal.cc
@@ -47,7 +47,7 @@ CodeGenMetal::CodeGenMetal() {
decl_stream << "#include <metal_stdlib>\n";
decl_stream << "using namespace metal;\n\n";
decl_stream << "union __TVMArgUnion {\n"
- << " int v_int;\n"
+ << " int v_long;\n"
<< "};\n\n";
}
@@ -104,8 +104,8 @@ void CodeGenMetal::AddFunction(const PrimFunc& f) {
if (v.dtype().bits() == 32) {
decl_stream << " ";
PrintType(v.dtype(), decl_stream);
- decl_stream << " " << vid << ";\n";
- vref << varg << "." << vid;
+ decl_stream << " " << vid << "[2];\n";
+ vref << varg << "." << vid << "[0]";
} else {
// For non 32bit type, ref through arg union.
decl_stream << " __TVMArgUnion " << vid << ";\n";