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

Side by Side Diff: src/platform.h

Issue 9227007: Version 3.8.6 (Closed) Base URL: http://v8.googlecode.com/svn/trunk/
Patch Set: Created 8 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « src/parser.cc ('k') | src/platform-cygwin.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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 // ---------------------------------------------------------------------------- 102 // ----------------------------------------------------------------------------
103 // OS 103 // OS
104 // 104 //
105 // This class has static methods for the different platform specific 105 // This class has static methods for the different platform specific
106 // functions. Add methods here to cope with differences between the 106 // functions. Add methods here to cope with differences between the
107 // supported platforms. 107 // supported platforms.
108 108
109 class OS { 109 class OS {
110 public: 110 public:
111 // Initializes the platform OS support. Called once at VM startup. 111 // Initializes the platform OS support. Called once at VM startup.
112 static void Setup(); 112 static void SetUp();
113 113
114 // Returns the accumulated user time for thread. This routine 114 // Returns the accumulated user time for thread. This routine
115 // can be used for profiling. The implementation should 115 // can be used for profiling. The implementation should
116 // strive for high-precision timer resolution, preferable 116 // strive for high-precision timer resolution, preferable
117 // micro-second resolution. 117 // micro-second resolution.
118 static int GetUserTime(uint32_t* secs, uint32_t* usecs); 118 static int GetUserTime(uint32_t* secs, uint32_t* usecs);
119 119
120 // Get a tick counter normalized to one tick per microsecond. 120 // Get a tick counter normalized to one tick per microsecond.
121 // Used for calculating time intervals. 121 // Used for calculating time intervals.
122 static int64_t Ticks(); 122 static int64_t Ticks();
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 470
471 471
472 // The thread name length is limited to 16 based on Linux's implementation of 472 // The thread name length is limited to 16 based on Linux's implementation of
473 // prctl(). 473 // prctl().
474 static const int kMaxThreadNameLength = 16; 474 static const int kMaxThreadNameLength = 16;
475 475
476 class PlatformData; 476 class PlatformData;
477 PlatformData* data() { return data_; } 477 PlatformData* data() { return data_; }
478 478
479 private: 479 private:
480 void set_name(const char *name); 480 void set_name(const char* name);
481 481
482 PlatformData* data_; 482 PlatformData* data_;
483 483
484 char name_[kMaxThreadNameLength]; 484 char name_[kMaxThreadNameLength];
485 int stack_size_; 485 int stack_size_;
486 486
487 DISALLOW_COPY_AND_ASSIGN(Thread); 487 DISALLOW_COPY_AND_ASSIGN(Thread);
488 }; 488 };
489 489
490 490
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 546
547 class Semaphore { 547 class Semaphore {
548 public: 548 public:
549 virtual ~Semaphore() {} 549 virtual ~Semaphore() {}
550 550
551 // Suspends the calling thread until the semaphore counter is non zero 551 // Suspends the calling thread until the semaphore counter is non zero
552 // and then decrements the semaphore counter. 552 // and then decrements the semaphore counter.
553 virtual void Wait() = 0; 553 virtual void Wait() = 0;
554 554
555 // Suspends the calling thread until the counter is non zero or the timeout 555 // Suspends the calling thread until the counter is non zero or the timeout
556 // time has passsed. If timeout happens the return value is false and the 556 // time has passed. If timeout happens the return value is false and the
557 // counter is unchanged. Otherwise the semaphore counter is decremented and 557 // counter is unchanged. Otherwise the semaphore counter is decremented and
558 // true is returned. The timeout value is specified in microseconds. 558 // true is returned. The timeout value is specified in microseconds.
559 virtual bool Wait(int timeout) = 0; 559 virtual bool Wait(int timeout) = 0;
560 560
561 // Increments the semaphore counter. 561 // Increments the semaphore counter.
562 virtual void Signal() = 0; 562 virtual void Signal() = 0;
563 }; 563 };
564 564
565 565
566 // ---------------------------------------------------------------------------- 566 // ----------------------------------------------------------------------------
(...skipping 19 matching lines...) Expand all
586 586
587 // Data Transimission 587 // Data Transimission
588 virtual int Send(const char* data, int len) const = 0; 588 virtual int Send(const char* data, int len) const = 0;
589 virtual int Receive(char* data, int len) const = 0; 589 virtual int Receive(char* data, int len) const = 0;
590 590
591 // Set the value of the SO_REUSEADDR socket option. 591 // Set the value of the SO_REUSEADDR socket option.
592 virtual bool SetReuseAddress(bool reuse_address) = 0; 592 virtual bool SetReuseAddress(bool reuse_address) = 0;
593 593
594 virtual bool IsValid() const = 0; 594 virtual bool IsValid() const = 0;
595 595
596 static bool Setup(); 596 static bool SetUp();
597 static int LastError(); 597 static int LastError();
598 static uint16_t HToN(uint16_t value); 598 static uint16_t HToN(uint16_t value);
599 static uint16_t NToH(uint16_t value); 599 static uint16_t NToH(uint16_t value);
600 static uint32_t HToN(uint32_t value); 600 static uint32_t HToN(uint32_t value);
601 static uint32_t NToH(uint32_t value); 601 static uint32_t NToH(uint32_t value);
602 }; 602 };
603 603
604 604
605 // ---------------------------------------------------------------------------- 605 // ----------------------------------------------------------------------------
606 // Sampler 606 // Sampler
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
688 Atomic32 active_; 688 Atomic32 active_;
689 PlatformData* data_; // Platform specific data. 689 PlatformData* data_; // Platform specific data.
690 int samples_taken_; // Counts stack samples taken. 690 int samples_taken_; // Counts stack samples taken.
691 DISALLOW_IMPLICIT_CONSTRUCTORS(Sampler); 691 DISALLOW_IMPLICIT_CONSTRUCTORS(Sampler);
692 }; 692 };
693 693
694 694
695 } } // namespace v8::internal 695 } } // namespace v8::internal
696 696
697 #endif // V8_PLATFORM_H_ 697 #endif // V8_PLATFORM_H_
OLDNEW
« no previous file with comments | « src/parser.cc ('k') | src/platform-cygwin.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698