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

Side by Side Diff: src/isolate.h

Issue 148293020: Merge experimental/a64 to bleeding_edge. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Remove ARM from OWNERS Created 6 years, 10 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/hydrogen-instructions.cc ('k') | src/isolate.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 typedef void* ExternalReferenceRedirectorPointer(); 95 typedef void* ExternalReferenceRedirectorPointer();
96 96
97 97
98 #ifdef ENABLE_DEBUGGER_SUPPORT 98 #ifdef ENABLE_DEBUGGER_SUPPORT
99 class Debug; 99 class Debug;
100 class Debugger; 100 class Debugger;
101 class DebuggerAgent; 101 class DebuggerAgent;
102 #endif 102 #endif
103 103
104 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \ 104 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \
105 !defined(__aarch64__) && V8_TARGET_ARCH_A64 || \
105 !defined(__mips__) && V8_TARGET_ARCH_MIPS 106 !defined(__mips__) && V8_TARGET_ARCH_MIPS
106 class Redirection; 107 class Redirection;
107 class Simulator; 108 class Simulator;
108 #endif 109 #endif
109 110
110 111
111 // Static indirection table for handles to constants. If a frame 112 // Static indirection table for handles to constants. If a frame
112 // element represents a constant, the data contains an index into 113 // element represents a constant, the data contains an index into
113 // this table of handles to the actual constants. 114 // this table of handles to the actual constants.
114 // Static indirection table for handles to constants. If a Result 115 // Static indirection table for handles to constants. If a Result
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
381 // entered. That instance is allocated when the isolate is initially entered 382 // entered. That instance is allocated when the isolate is initially entered
382 // and reused on subsequent entries. 383 // and reused on subsequent entries.
383 class PerIsolateThreadData { 384 class PerIsolateThreadData {
384 public: 385 public:
385 PerIsolateThreadData(Isolate* isolate, ThreadId thread_id) 386 PerIsolateThreadData(Isolate* isolate, ThreadId thread_id)
386 : isolate_(isolate), 387 : isolate_(isolate),
387 thread_id_(thread_id), 388 thread_id_(thread_id),
388 stack_limit_(0), 389 stack_limit_(0),
389 thread_state_(NULL), 390 thread_state_(NULL),
390 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \ 391 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \
392 !defined(__aarch64__) && V8_TARGET_ARCH_A64 || \
391 !defined(__mips__) && V8_TARGET_ARCH_MIPS 393 !defined(__mips__) && V8_TARGET_ARCH_MIPS
392 simulator_(NULL), 394 simulator_(NULL),
393 #endif 395 #endif
394 next_(NULL), 396 next_(NULL),
395 prev_(NULL) { } 397 prev_(NULL) { }
396 Isolate* isolate() const { return isolate_; } 398 Isolate* isolate() const { return isolate_; }
397 ThreadId thread_id() const { return thread_id_; } 399 ThreadId thread_id() const { return thread_id_; }
398 400
399 FIELD_ACCESSOR(uintptr_t, stack_limit) 401 FIELD_ACCESSOR(uintptr_t, stack_limit)
400 FIELD_ACCESSOR(ThreadState*, thread_state) 402 FIELD_ACCESSOR(ThreadState*, thread_state)
401 403
402 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \ 404 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \
405 !defined(__aarch64__) && V8_TARGET_ARCH_A64 || \
403 !defined(__mips__) && V8_TARGET_ARCH_MIPS 406 !defined(__mips__) && V8_TARGET_ARCH_MIPS
404 FIELD_ACCESSOR(Simulator*, simulator) 407 FIELD_ACCESSOR(Simulator*, simulator)
405 #endif 408 #endif
406 409
407 bool Matches(Isolate* isolate, ThreadId thread_id) const { 410 bool Matches(Isolate* isolate, ThreadId thread_id) const {
408 return isolate_ == isolate && thread_id_.Equals(thread_id); 411 return isolate_ == isolate && thread_id_.Equals(thread_id);
409 } 412 }
410 413
411 private: 414 private:
412 Isolate* isolate_; 415 Isolate* isolate_;
413 ThreadId thread_id_; 416 ThreadId thread_id_;
414 uintptr_t stack_limit_; 417 uintptr_t stack_limit_;
415 ThreadState* thread_state_; 418 ThreadState* thread_state_;
416 419
417 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \ 420 #if !defined(__arm__) && V8_TARGET_ARCH_ARM || \
421 !defined(__aarch64__) && V8_TARGET_ARCH_A64 || \
418 !defined(__mips__) && V8_TARGET_ARCH_MIPS 422 !defined(__mips__) && V8_TARGET_ARCH_MIPS
419 Simulator* simulator_; 423 Simulator* simulator_;
420 #endif 424 #endif
421 425
422 PerIsolateThreadData* next_; 426 PerIsolateThreadData* next_;
423 PerIsolateThreadData* prev_; 427 PerIsolateThreadData* prev_;
424 428
425 friend class Isolate; 429 friend class Isolate;
426 friend class ThreadDataTable; 430 friend class ThreadDataTable;
427 friend class EntryStackItem; 431 friend class EntryStackItem;
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after
971 HistogramInfo* heap_histograms() { return heap_histograms_; } 975 HistogramInfo* heap_histograms() { return heap_histograms_; }
972 976
973 JSObject::SpillInformation* js_spill_information() { 977 JSObject::SpillInformation* js_spill_information() {
974 return &js_spill_information_; 978 return &js_spill_information_;
975 } 979 }
976 980
977 int* code_kind_statistics() { return code_kind_statistics_; } 981 int* code_kind_statistics() { return code_kind_statistics_; }
978 #endif 982 #endif
979 983
980 #if V8_TARGET_ARCH_ARM && !defined(__arm__) || \ 984 #if V8_TARGET_ARCH_ARM && !defined(__arm__) || \
985 V8_TARGET_ARCH_A64 && !defined(__aarch64__) || \
981 V8_TARGET_ARCH_MIPS && !defined(__mips__) 986 V8_TARGET_ARCH_MIPS && !defined(__mips__)
982 FIELD_ACCESSOR(bool, simulator_initialized) 987 FIELD_ACCESSOR(bool, simulator_initialized)
983 FIELD_ACCESSOR(HashMap*, simulator_i_cache) 988 FIELD_ACCESSOR(HashMap*, simulator_i_cache)
984 FIELD_ACCESSOR(Redirection*, simulator_redirection) 989 FIELD_ACCESSOR(Redirection*, simulator_redirection)
985 #endif 990 #endif
986 991
987 Factory* factory() { return reinterpret_cast<Factory*>(this); } 992 Factory* factory() { return reinterpret_cast<Factory*>(this); }
988 993
989 static const int kJSRegexpStaticOffsetsVectorSize = 128; 994 static const int kJSRegexpStaticOffsetsVectorSize = 128;
990 995
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
1272 // True if we are using the Crankshaft optimizing compiler. 1277 // True if we are using the Crankshaft optimizing compiler.
1273 bool use_crankshaft_; 1278 bool use_crankshaft_;
1274 1279
1275 // True if this isolate was initialized from a snapshot. 1280 // True if this isolate was initialized from a snapshot.
1276 bool initialized_from_snapshot_; 1281 bool initialized_from_snapshot_;
1277 1282
1278 // Time stamp at initialization. 1283 // Time stamp at initialization.
1279 double time_millis_at_init_; 1284 double time_millis_at_init_;
1280 1285
1281 #if V8_TARGET_ARCH_ARM && !defined(__arm__) || \ 1286 #if V8_TARGET_ARCH_ARM && !defined(__arm__) || \
1287 V8_TARGET_ARCH_A64 && !defined(__aarch64__) || \
1282 V8_TARGET_ARCH_MIPS && !defined(__mips__) 1288 V8_TARGET_ARCH_MIPS && !defined(__mips__)
1283 bool simulator_initialized_; 1289 bool simulator_initialized_;
1284 HashMap* simulator_i_cache_; 1290 HashMap* simulator_i_cache_;
1285 Redirection* simulator_redirection_; 1291 Redirection* simulator_redirection_;
1286 #endif 1292 #endif
1287 1293
1288 #ifdef DEBUG 1294 #ifdef DEBUG
1289 // A static array of histogram info for each type. 1295 // A static array of histogram info for each type.
1290 HistogramInfo heap_histograms_[LAST_TYPE + 1]; 1296 HistogramInfo heap_histograms_[LAST_TYPE + 1];
1291 JSObject::SpillInformation js_spill_information_; 1297 JSObject::SpillInformation js_spill_information_;
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
1537 } 1543 }
1538 1544
1539 EmbeddedVector<char, 128> filename_; 1545 EmbeddedVector<char, 128> filename_;
1540 FILE* file_; 1546 FILE* file_;
1541 int scope_depth_; 1547 int scope_depth_;
1542 }; 1548 };
1543 1549
1544 } } // namespace v8::internal 1550 } } // namespace v8::internal
1545 1551
1546 #endif // V8_ISOLATE_H_ 1552 #endif // V8_ISOLATE_H_
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.cc ('k') | src/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698