diff options
author | Clifford Wolf <clifford@clifford.at> | 2014-10-09 10:51:24 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2014-10-09 10:51:24 +0200 |
commit | d3405c15bf74b9a61968aa93ccbc61155e05585f (patch) | |
tree | ecb863c52712da4e64be22b6598023b3454c319b | |
parent | ccf7b2e342cd4212ca2c2c94735a3f916b7d790f (diff) | |
download | yosys-d3405c15bf74b9a61968aa93ccbc61155e05585f.tar.gz yosys-d3405c15bf74b9a61968aa93ccbc61155e05585f.tar.bz2 yosys-d3405c15bf74b9a61968aa93ccbc61155e05585f.zip |
No rusage on win32
-rw-r--r-- | kernel/driver.cc | 6 | ||||
-rw-r--r-- | kernel/log.h | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/kernel/driver.cc b/kernel/driver.cc index f26d9ef82..4210d7ca4 100644 --- a/kernel/driver.cc +++ b/kernel/driver.cc @@ -268,12 +268,16 @@ int main(int argc, char **argv) delete log_hasher; log_hasher = nullptr; + log_spacer(); +#ifdef WIN32 + log("End of script. Logfile hash: %s\n", hash.c_str()); +#else struct rusage ru_buffer; getrusage(RUSAGE_SELF, &ru_buffer); - log_spacer(); log("End of script. Logfile hash: %s, CPU: user %.2fs system %.2fs\n", hash.c_str(), ru_buffer.ru_utime.tv_sec + 1e-6 * ru_buffer.ru_utime.tv_usec, ru_buffer.ru_stime.tv_sec + 1e-6 * ru_buffer.ru_stime.tv_usec); +#endif log("%s\n", yosys_version_str); int64_t total_ns = 0; diff --git a/kernel/log.h b/kernel/log.h index 2177db095..4514c420b 100644 --- a/kernel/log.h +++ b/kernel/log.h @@ -24,7 +24,10 @@ #include <time.h> #include <sys/time.h> -#include <sys/resource.h> + +#ifndef WIN32 +# include <sys/resource.h> +#endif // from libs/sha1/sha1.h class SHA1; @@ -154,6 +157,8 @@ struct PerformanceTimer t = 1000000000ULL * (int64_t) rusage.ru_utime.tv_sec + (int64_t) rusage.ru_utime.tv_usec * 1000ULL; t += 1000000000ULL * (int64_t) rusage.ru_stime.tv_sec + (int64_t) rusage.ru_stime.tv_usec * 1000ULL; return t; +#elif WIN32 + return 0; #else #error Dont know how to measure per-process CPU time. Need alternative method (times()/clocks()/gettimeofday()?). #endif @@ -191,8 +196,10 @@ static inline void log_dump_val_worker(int v) { log("%d", v); } static inline void log_dump_val_worker(unsigned int v) { log("%u", v); } static inline void log_dump_val_worker(long int v) { log("%ld", v); } static inline void log_dump_val_worker(unsigned long int v) { log("%lu", v); } +#ifndef WIN32 static inline void log_dump_val_worker(long long int v) { log("%lld", v); } static inline void log_dump_val_worker(unsigned long long int v) { log("%lld", v); } +#endif static inline void log_dump_val_worker(char c) { log(c >= 32 && c < 127 ? "'%c'" : "'\\x%02x'", c); } static inline void log_dump_val_worker(unsigned char c) { log(c >= 32 && c < 127 ? "'%c'" : "'\\x%02x'", c); } static inline void log_dump_val_worker(bool v) { log("%s", v ? "true" : "false"); } |