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

Side by Side Diff: src/compiler/access-builder.h

Issue 551413002: Switch inlining to use simplified instead of machine loads. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressed comments by Sigurd. Created 6 years, 3 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 | « no previous file | src/compiler/access-builder.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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 #ifndef V8_COMPILER_ACCESS_BUILDER_H_ 5 #ifndef V8_COMPILER_ACCESS_BUILDER_H_
6 #define V8_COMPILER_ACCESS_BUILDER_H_ 6 #define V8_COMPILER_ACCESS_BUILDER_H_
7 7
8 #include "src/compiler/simplified-operator.h" 8 #include "src/compiler/simplified-operator.h"
9 9
10 namespace v8 { 10 namespace v8 {
11 namespace internal { 11 namespace internal {
12 namespace compiler { 12 namespace compiler {
13 13
14 // This access builder provides a set of static methods constructing commonly 14 // This access builder provides a set of static methods constructing commonly
15 // used FieldAccess and ElementAccess descriptors. These descriptors server as 15 // used FieldAccess and ElementAccess descriptors. These descriptors server as
16 // parameters to simplified load/store operators. 16 // parameters to simplified load/store operators.
17 class AccessBuilder FINAL : public AllStatic { 17 class AccessBuilder FINAL : public AllStatic {
18 public: 18 public:
19 // Provides access to HeapObject::map() field. 19 // Provides access to HeapObject::map() field.
20 static FieldAccess ForMap(); 20 static FieldAccess ForMap();
21 21
22 // Provides access to JSObject::properties() field. 22 // Provides access to JSObject::properties() field.
23 static FieldAccess ForJSObjectProperties(); 23 static FieldAccess ForJSObjectProperties();
24 24
25 // Provides access to JSObject::elements() field. 25 // Provides access to JSObject::elements() field.
26 static FieldAccess ForJSObjectElements(); 26 static FieldAccess ForJSObjectElements();
27 27
28 // Provides access to JSFunction::context() field.
29 static FieldAccess ForJSFunctionContext();
30
28 // Provides access to JSArrayBuffer::backing_store() field. 31 // Provides access to JSArrayBuffer::backing_store() field.
29 static FieldAccess ForJSArrayBufferBackingStore(); 32 static FieldAccess ForJSArrayBufferBackingStore();
30 33
31 // Provides access to ExternalArray::external_pointer() field. 34 // Provides access to ExternalArray::external_pointer() field.
32 static FieldAccess ForExternalArrayPointer(); 35 static FieldAccess ForExternalArrayPointer();
33 36
34 // Provides access to FixedArray elements. 37 // Provides access to FixedArray elements.
35 static ElementAccess ForFixedArrayElement(); 38 static ElementAccess ForFixedArrayElement();
36 39
37 // TODO(mstarzinger): Raw access only for testing, drop me. 40 // TODO(mstarzinger): Raw access only for testing, drop me.
38 static ElementAccess ForBackingStoreElement(MachineType rep); 41 static ElementAccess ForBackingStoreElement(MachineType rep);
39 42
40 // Provides access to Fixed{type}TypedArray and External{type}Array elements. 43 // Provides access to Fixed{type}TypedArray and External{type}Array elements.
41 static ElementAccess ForTypedArrayElement(ExternalArrayType type, 44 static ElementAccess ForTypedArrayElement(ExternalArrayType type,
42 bool is_external); 45 bool is_external);
43 46
44 private: 47 private:
45 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessBuilder); 48 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessBuilder);
46 }; 49 };
47 50
48 } // namespace compiler 51 } // namespace compiler
49 } // namespace internal 52 } // namespace internal
50 } // namespace v8 53 } // namespace v8
51 54
52 #endif // V8_COMPILER_ACCESS_BUILDER_H_ 55 #endif // V8_COMPILER_ACCESS_BUILDER_H_
OLDNEW
« no previous file with comments | « no previous file | src/compiler/access-builder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698