Merged in ezhulenev/eigen-01 (pull request PR-683)

Asynchronous parallelFor in Eigen ThreadPoolDevice
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h b/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h
index 2be4f9c..4452481 100644
--- a/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h
+++ b/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h
@@ -45,6 +45,14 @@
   uint64_t rnd = ::random() ^ mach_absolute_time();
   return rnd;
 
+#elif defined __native_client__
+  // Same approach as for win32, except using clock_gettime
+  timespec ts;
+  clock_gettime(CLOCK_REALTIME, &ts);
+  int rnd1 = ::rand();
+  int rnd2 = ::rand();
+  uint64_t rnd = (rnd1 | rnd2 << 16) ^ ts.tv_nsec;
+  return rnd;
 
 #else
   // Augment the current time with pseudo random number generation