Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torch/torch7.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSoumith Chintala <soumith@gmail.com>2017-01-06 19:06:02 +0300
committerGitHub <noreply@github.com>2017-01-06 19:06:02 +0300
commitf624ae98624d4e356eebee00ddcd3e721c90f7ba (patch)
tree597ba9d30d4c82772bfc1e18f7b9418b7a8c5324
parent319a4234d17912a3453c462e1d48b3d03cfece0e (diff)
parentc5bf47ab40c64835a828bc581892cafe522b49ba (diff)
Merge pull request #899 from gchanan/TensorCopyHalf
Fix THHalf issues with MSVC.
-rw-r--r--lib/TH/generic/THTensorCopy.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/TH/generic/THTensorCopy.c b/lib/TH/generic/THTensorCopy.c
index d7228f6..3d243e3 100644
--- a/lib/TH/generic/THTensorCopy.c
+++ b/lib/TH/generic/THTensorCopy.c
@@ -4,7 +4,7 @@
void THTensor_(copy)(THTensor *tensor, THTensor *src)
{
- TH_TENSOR_APPLY2(real, tensor, real, src, *tensor_data = (real)(*src_data);)
+ TH_TENSOR_APPLY2(real, tensor, real, src, *tensor_data = *src_data;)
}
#define IMPLEMENT_THTensor_COPY(TYPENAMESRC, TYPE_SRC) \
@@ -25,6 +25,12 @@ void THTensor_(copy##TYPENAMESRC)(THTensor *tensor, TH##TYPENAMESRC##Tensor *src
TH_TENSOR_APPLY2(real, tensor, TYPE_SRC, src, *tensor_data = (real)TH_half2float(*src_data);) \
}
+#define IMPLEMENT_THTensor_COPY_TO_FROM_HALF(TYPENAMESRC, TYPE_SRC) \
+void THTensor_(copy##TYPENAMESRC)(THTensor *tensor, TH##TYPENAMESRC##Tensor *src) \
+{ \
+ TH_TENSOR_APPLY2(real, tensor, TYPE_SRC, src, *tensor_data = *src_data;) \
+}
+
#ifndef TH_REAL_IS_HALF
IMPLEMENT_THTensor_COPY(Byte, unsigned char)
IMPLEMENT_THTensor_COPY(Char, char)
@@ -36,7 +42,7 @@ IMPLEMENT_THTensor_COPY(Double, double)
IMPLEMENT_THTensor_COPY_FROM_HALF(Half, THHalf)
#else
/* only allow pass-through for Half */
-IMPLEMENT_THTensor_COPY(Half, THHalf)
+IMPLEMENT_THTensor_COPY_TO_FROM_HALF(Half, THHalf)
IMPLEMENT_THTensor_COPY_TO_HALF(Byte, unsigned char)
IMPLEMENT_THTensor_COPY_TO_HALF(Char, char)
IMPLEMENT_THTensor_COPY_TO_HALF(Short, short)