diff --git a/lib/Support/Timer.cpp b/lib/Support/Timer.cpp index 45c2128a27f..48b8f57c3fe 100644 --- a/lib/Support/Timer.cpp +++ b/lib/Support/Timer.cpp @@ -71,13 +71,18 @@ static TimeRecord getTimeRecord() { perror("getrusage call failed: -time-passes info incorrect!"); } - struct mallinfo MI = mallinfo(); - TimeRecord Result; Result.Elapsed = T.tv_sec + T.tv_usec/1000000.0; Result.UserTime = RU.ru_utime.tv_sec + RU.ru_utime.tv_usec/1000000.0; Result.SystemTime = RU.ru_stime.tv_sec + RU.ru_stime.tv_usec/1000000.0; + +#ifndef __sparc__ + struct mallinfo MI = mallinfo(); Result.MaxRSS = MI.uordblks; +#else + Result.MaxRSS = 0; +#endif + return Result; } diff --git a/support/lib/Support/Timer.cpp b/support/lib/Support/Timer.cpp index 45c2128a27f..48b8f57c3fe 100644 --- a/support/lib/Support/Timer.cpp +++ b/support/lib/Support/Timer.cpp @@ -71,13 +71,18 @@ static TimeRecord getTimeRecord() { perror("getrusage call failed: -time-passes info incorrect!"); } - struct mallinfo MI = mallinfo(); - TimeRecord Result; Result.Elapsed = T.tv_sec + T.tv_usec/1000000.0; Result.UserTime = RU.ru_utime.tv_sec + RU.ru_utime.tv_usec/1000000.0; Result.SystemTime = RU.ru_stime.tv_sec + RU.ru_stime.tv_usec/1000000.0; + +#ifndef __sparc__ + struct mallinfo MI = mallinfo(); Result.MaxRSS = MI.uordblks; +#else + Result.MaxRSS = 0; +#endif + return Result; }