aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/kernels/spectrogram_test_utils.cc
diff options
context:
space:
mode:
Diffstat (limited to 'tensorflow/core/kernels/spectrogram_test_utils.cc')
-rw-r--r--tensorflow/core/kernels/spectrogram_test_utils.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/tensorflow/core/kernels/spectrogram_test_utils.cc b/tensorflow/core/kernels/spectrogram_test_utils.cc
index 046f6344df..bc30330d61 100644
--- a/tensorflow/core/kernels/spectrogram_test_utils.cc
+++ b/tensorflow/core/kernels/spectrogram_test_utils.cc
@@ -70,10 +70,24 @@ bool ReadRawFloatFileToComplexVector(
int offset = 0;
const int end = data_string.size();
while (offset < end) {
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+ char arr[4];
+ for (int i = 0; i < kBytesPerValue; ++i ) {
+ arr[3 - i] = *(data_string.data() + offset + i);
+ }
+ memcpy(&real_out, arr, kBytesPerValue);
+ offset += kBytesPerValue;
+ for (int i = 0; i < kBytesPerValue; ++i ) {
+ arr[3 - i] = *(data_string.data() + offset + i);
+ }
+ memcpy(&imag_out, arr, kBytesPerValue);
+ offset += kBytesPerValue;
+#else
memcpy(&real_out, data_string.data() + offset, kBytesPerValue);
offset += kBytesPerValue;
memcpy(&imag_out, data_string.data() + offset, kBytesPerValue);
offset += kBytesPerValue;
+#endif
if (row_counter >= row_length) {
data->push_back(data_row);
data_row.clear();