From eb197c45eda55b1047b00f1136a4fec2b8adb2d5 Mon Sep 17 00:00:00 2001
From: Todd Wang <toddwang@gmail.com>
Date: Tue, 20 Jun 2017 14:16:26 -0700
Subject: [PATCH] [XLA] Explicitly instantiate Permute template func

This is an attempted fix for older compilers that can't deduce the template args.
---
 tensorflow/compiler/xla/service/llvm_ir/ir_array.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tensorflow/compiler/xla/service/llvm_ir/ir_array.cc b/tensorflow/compiler/xla/service/llvm_ir/ir_array.cc
index e401305ae73..b14104be6ad 100644
--- a/tensorflow/compiler/xla/service/llvm_ir/ir_array.cc
+++ b/tensorflow/compiler/xla/service/llvm_ir/ir_array.cc
@@ -158,7 +158,7 @@ IrArray::Index IrArray::Index::SourceIndexOfTranspose(
     tensorflow::gtl::ArraySlice<int64> dimension_mapping,
     llvm::IRBuilder<>* builder) const {
   std::vector<llvm::Value*> operand_multidim_index =
-      Permute(dimension_mapping, multidim());
+      Permute<std::vector, llvm::Value*>(dimension_mapping, multidim());
   if (linear() != nullptr &&
       ShapeUtil::TransposeIsBitcast(operand_shape, shape, dimension_mapping)) {
     return Index(operand_multidim_index, linear(), operand_shape);