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

Side by Side Diff: runtime/vm/thread.h

Issue 1488403002: Precompilation/x64: Load float vector constants via Thread. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years 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 | « runtime/vm/assembler_x64_test.cc ('k') | runtime/vm/thread.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 (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_THREAD_H_ 5 #ifndef VM_THREAD_H_
6 #define VM_THREAD_H_ 6 #define VM_THREAD_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "vm/globals.h" 9 #include "vm/globals.h"
10 #include "vm/handles.h" 10 #include "vm/handles.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 V(RawBool*, bool_false_, Object::bool_false().raw(), NULL) \ 72 V(RawBool*, bool_false_, Object::bool_false().raw(), NULL) \
73 V(RawCode*, update_store_buffer_code_, \ 73 V(RawCode*, update_store_buffer_code_, \
74 StubCode::UpdateStoreBuffer_entry()->code(), NULL) \ 74 StubCode::UpdateStoreBuffer_entry()->code(), NULL) \
75 V(RawCode*, fix_callers_target_code_, \ 75 V(RawCode*, fix_callers_target_code_, \
76 StubCode::FixCallersTarget_entry()->code(), NULL) \ 76 StubCode::FixCallersTarget_entry()->code(), NULL) \
77 V(RawCode*, fix_allocation_stub_code_, \ 77 V(RawCode*, fix_allocation_stub_code_, \
78 StubCode::FixAllocationStubTarget_entry()->code(), NULL) \ 78 StubCode::FixAllocationStubTarget_entry()->code(), NULL) \
79 V(RawCode*, invoke_dart_code_stub_, \ 79 V(RawCode*, invoke_dart_code_stub_, \
80 StubCode::InvokeDartCode_entry()->code(), NULL) \ 80 StubCode::InvokeDartCode_entry()->code(), NULL) \
81 81
82
83 #define CACHED_ADDRESSES_LIST(V) \ 82 #define CACHED_ADDRESSES_LIST(V) \
84 V(uword, update_store_buffer_entry_point_, \ 83 V(uword, update_store_buffer_entry_point_, \
85 StubCode::UpdateStoreBuffer_entry()->EntryPoint(), 0) \ 84 StubCode::UpdateStoreBuffer_entry()->EntryPoint(), 0) \
86 V(uword, native_call_wrapper_entry_point_, \ 85 V(uword, native_call_wrapper_entry_point_, \
87 NativeEntry::NativeCallWrapperEntry(), 0) \ 86 NativeEntry::NativeCallWrapperEntry(), 0) \
88 V(RawString**, predefined_symbols_address_, \ 87 V(RawString**, predefined_symbols_address_, \
89 Symbols::PredefinedAddress(), NULL) \ 88 Symbols::PredefinedAddress(), NULL) \
89 V(uword, double_negate_address_, \
90 reinterpret_cast<uword>(&double_negate_constant), 0) \
91 V(uword, double_abs_address_, \
92 reinterpret_cast<uword>(&double_abs_constant), 0) \
93 V(uword, float_not_address_, \
94 reinterpret_cast<uword>(&float_not_constant), 0) \
95 V(uword, float_negate_address_, \
96 reinterpret_cast<uword>(&float_negate_constant), 0) \
97 V(uword, float_absolute_address_, \
98 reinterpret_cast<uword>(&float_absolute_constant), 0) \
99 V(uword, float_zerow_address_, \
100 reinterpret_cast<uword>(&float_zerow_constant), 0) \
90 101
91 #define CACHED_CONSTANTS_LIST(V) \ 102 #define CACHED_CONSTANTS_LIST(V) \
92 CACHED_VM_OBJECTS_LIST(V) \ 103 CACHED_VM_OBJECTS_LIST(V) \
93 CACHED_ADDRESSES_LIST(V) \ 104 CACHED_ADDRESSES_LIST(V) \
94 105
95
96 // A VM thread; may be executing Dart code or performing helper tasks like 106 // A VM thread; may be executing Dart code or performing helper tasks like
97 // garbage collection or compilation. The Thread structure associated with 107 // garbage collection or compilation. The Thread structure associated with
98 // a thread is allocated by EnsureInit before entering an isolate, and destroyed 108 // a thread is allocated by EnsureInit before entering an isolate, and destroyed
99 // automatically when the underlying OS thread exits. NOTE: On Windows, CleanUp 109 // automatically when the underlying OS thread exits. NOTE: On Windows, CleanUp
100 // must currently be called manually (issue 23474). 110 // must currently be called manually (issue 23474).
101 class Thread : public BaseThread { 111 class Thread : public BaseThread {
102 public: 112 public:
103 ~Thread(); 113 ~Thread();
104 114
105 // The currently executing thread, or NULL if not yet initialized. 115 // The currently executing thread, or NULL if not yet initialized.
(...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after
488 // Disable thread interrupts. 498 // Disable thread interrupts.
489 class DisableThreadInterruptsScope : public StackResource { 499 class DisableThreadInterruptsScope : public StackResource {
490 public: 500 public:
491 explicit DisableThreadInterruptsScope(Thread* thread); 501 explicit DisableThreadInterruptsScope(Thread* thread);
492 ~DisableThreadInterruptsScope(); 502 ~DisableThreadInterruptsScope();
493 }; 503 };
494 504
495 } // namespace dart 505 } // namespace dart
496 506
497 #endif // VM_THREAD_H_ 507 #endif // VM_THREAD_H_
OLDNEW
« no previous file with comments | « runtime/vm/assembler_x64_test.cc ('k') | runtime/vm/thread.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698