Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(900)

Side by Side Diff: src/base/platform/time.cc

Issue 1111733002: [clang] Use -Wshorten-64-to-32 to enable warnings about 64bit to 32bit truncations. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix Win warnings. Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/base/platform/platform-win32.cc ('k') | src/d8.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/base/platform/time.h" 5 #include "src/base/platform/time.h"
6 6
7 #if V8_OS_POSIX 7 #if V8_OS_POSIX
8 #include <fcntl.h> // for O_RDONLY 8 #include <fcntl.h> // for O_RDONLY
9 #include <sys/time.h> 9 #include <sys/time.h>
10 #include <unistd.h> 10 #include <unistd.h>
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 DCHECK_GE(ts.tv_nsec, 0); 126 DCHECK_GE(ts.tv_nsec, 0);
127 DCHECK_LT(ts.tv_nsec, 127 DCHECK_LT(ts.tv_nsec,
128 static_cast<long>(Time::kNanosecondsPerSecond)); // NOLINT 128 static_cast<long>(Time::kNanosecondsPerSecond)); // NOLINT
129 return TimeDelta(ts.tv_sec * Time::kMicrosecondsPerSecond + 129 return TimeDelta(ts.tv_sec * Time::kMicrosecondsPerSecond +
130 ts.tv_nsec / Time::kNanosecondsPerMicrosecond); 130 ts.tv_nsec / Time::kNanosecondsPerMicrosecond);
131 } 131 }
132 132
133 133
134 struct timespec TimeDelta::ToTimespec() const { 134 struct timespec TimeDelta::ToTimespec() const {
135 struct timespec ts; 135 struct timespec ts;
136 ts.tv_sec = delta_ / Time::kMicrosecondsPerSecond; 136 ts.tv_sec = static_cast<time_t>(delta_ / Time::kMicrosecondsPerSecond);
137 ts.tv_nsec = (delta_ % Time::kMicrosecondsPerSecond) * 137 ts.tv_nsec = (delta_ % Time::kMicrosecondsPerSecond) *
138 Time::kNanosecondsPerMicrosecond; 138 Time::kNanosecondsPerMicrosecond;
139 return ts; 139 return ts;
140 } 140 }
141 141
142 #endif // V8_OS_POSIX 142 #endif // V8_OS_POSIX
143 143
144 144
145 #if V8_OS_WIN 145 #if V8_OS_WIN
146 146
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 if (IsNull()) { 285 if (IsNull()) {
286 ts.tv_sec = 0; 286 ts.tv_sec = 0;
287 ts.tv_nsec = 0; 287 ts.tv_nsec = 0;
288 return ts; 288 return ts;
289 } 289 }
290 if (IsMax()) { 290 if (IsMax()) {
291 ts.tv_sec = std::numeric_limits<time_t>::max(); 291 ts.tv_sec = std::numeric_limits<time_t>::max();
292 ts.tv_nsec = static_cast<long>(kNanosecondsPerSecond - 1); // NOLINT 292 ts.tv_nsec = static_cast<long>(kNanosecondsPerSecond - 1); // NOLINT
293 return ts; 293 return ts;
294 } 294 }
295 ts.tv_sec = us_ / kMicrosecondsPerSecond; 295 ts.tv_sec = static_cast<time_t>(us_ / kMicrosecondsPerSecond);
296 ts.tv_nsec = (us_ % kMicrosecondsPerSecond) * kNanosecondsPerMicrosecond; 296 ts.tv_nsec = (us_ % kMicrosecondsPerSecond) * kNanosecondsPerMicrosecond;
297 return ts; 297 return ts;
298 } 298 }
299 299
300 300
301 Time Time::FromTimeval(struct timeval tv) { 301 Time Time::FromTimeval(struct timeval tv) {
302 DCHECK(tv.tv_usec >= 0); 302 DCHECK(tv.tv_usec >= 0);
303 DCHECK(tv.tv_usec < static_cast<suseconds_t>(kMicrosecondsPerSecond)); 303 DCHECK(tv.tv_usec < static_cast<suseconds_t>(kMicrosecondsPerSecond));
304 if (tv.tv_usec == 0 && tv.tv_sec == 0) { 304 if (tv.tv_usec == 0 && tv.tv_sec == 0) {
305 return Time(); 305 return Time();
(...skipping 11 matching lines...) Expand all
317 if (IsNull()) { 317 if (IsNull()) {
318 tv.tv_sec = 0; 318 tv.tv_sec = 0;
319 tv.tv_usec = 0; 319 tv.tv_usec = 0;
320 return tv; 320 return tv;
321 } 321 }
322 if (IsMax()) { 322 if (IsMax()) {
323 tv.tv_sec = std::numeric_limits<time_t>::max(); 323 tv.tv_sec = std::numeric_limits<time_t>::max();
324 tv.tv_usec = static_cast<suseconds_t>(kMicrosecondsPerSecond - 1); 324 tv.tv_usec = static_cast<suseconds_t>(kMicrosecondsPerSecond - 1);
325 return tv; 325 return tv;
326 } 326 }
327 tv.tv_sec = us_ / kMicrosecondsPerSecond; 327 tv.tv_sec = static_cast<time_t>(us_ / kMicrosecondsPerSecond);
328 tv.tv_usec = us_ % kMicrosecondsPerSecond; 328 tv.tv_usec = us_ % kMicrosecondsPerSecond;
329 return tv; 329 return tv;
330 } 330 }
331 331
332 #endif // V8_OS_WIN 332 #endif // V8_OS_WIN
333 333
334 334
335 Time Time::FromJsTime(double ms_since_epoch) { 335 Time Time::FromJsTime(double ms_since_epoch) {
336 // The epoch is a valid time, so this constructor doesn't interpret 336 // The epoch is a valid time, so this constructor doesn't interpret
337 // 0 as the null time. 337 // 0 as the null time.
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
638 638
639 639
640 // static 640 // static
641 bool TimeTicks::KernelTimestampAvailable() { 641 bool TimeTicks::KernelTimestampAvailable() {
642 return kernel_tick_clock.Pointer()->Available(); 642 return kernel_tick_clock.Pointer()->Available();
643 } 643 }
644 644
645 #endif // V8_OS_WIN 645 #endif // V8_OS_WIN
646 646
647 } } // namespace v8::base 647 } } // namespace v8::base
OLDNEW
« no previous file with comments | « src/base/platform/platform-win32.cc ('k') | src/d8.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698