Blob Blame History Raw
From 89c498edff683c68df6be0dd224848f4b4af5ae7 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Mon, 25 Apr 2022 13:25:02 +0200
Subject: [PATCH] GCC: add explicit template instantiation

Bug: b/223668065
Change-Id: I97ea197273f2b46b6a47a9fdfbbfb5065fbd8edd
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/65268
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Commit-Queue: Alexis Hétu <sugoi@google.com>
Tested-by: Alexis Hétu <sugoi@google.com>
---

diff --git a/third_party/swiftshader/third_party/subzero/src/IceInstX8632.cpp b/third_party/swiftshader/third_party/subzero/src/IceInstX8632.cpp
index fe87eee..94cac3b 100644
--- a/third_party/swiftshader/third_party/subzero/src/IceInstX8632.cpp
+++ b/third_party/swiftshader/third_party/subzero/src/IceInstX8632.cpp
@@ -710,6 +710,11 @@
   }
 }
 
+template void emitIASRegOpTyGPR<true, true>(const Cfg *Func, Type Ty,
+                                            const Variable *Var,
+                                            const Operand *Src,
+                                            const GPREmitterRegOp &Emitter);
+
 void emitIASAddrOpTyGPR(const Cfg *Func, Type Ty, const AsmAddress &Addr,
                         const Operand *Src, const GPREmitterAddrOp &Emitter) {
   Assembler *Asm = Func->getAssembler<Assembler>();
diff --git a/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp b/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp
index 9d655a1..f7097d2 100644
--- a/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp
+++ b/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp
@@ -698,6 +698,11 @@
   }
 }
 
+template void emitIASRegOpTyGPR<true, true>(const Cfg *Func, Type Ty,
+                                            const Variable *Var,
+                                            const Operand *Src,
+                                            const GPREmitterRegOp &Emitter);
+
 void emitIASAddrOpTyGPR(const Cfg *Func, Type Ty, const AsmAddress &Addr,
                         const Operand *Src, const GPREmitterAddrOp &Emitter) {
   Assembler *Asm = Func->getAssembler<Assembler>();