| OLD | NEW | 
|    1 // Copyright 2015 the V8 project authors. All rights reserved. |    1 // Copyright 2015 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_JS_INTRINSIC_LOWERING_H_ |    5 #ifndef V8_COMPILER_JS_INTRINSIC_LOWERING_H_ | 
|    6 #define V8_COMPILER_JS_INTRINSIC_LOWERING_H_ |    6 #define V8_COMPILER_JS_INTRINSIC_LOWERING_H_ | 
|    7  |    7  | 
|    8 #include "src/base/compiler-specific.h" |    8 #include "src/base/compiler-specific.h" | 
|    9 #include "src/compiler/common-operator.h" |    9 #include "src/compiler/common-operator.h" | 
|   10 #include "src/compiler/graph-reducer.h" |   10 #include "src/compiler/graph-reducer.h" | 
|   11 #include "src/globals.h" |   11 #include "src/globals.h" | 
|   12  |   12  | 
|   13 namespace v8 { |   13 namespace v8 { | 
|   14 namespace internal { |   14 namespace internal { | 
|   15  |   15  | 
|   16 // Forward declarations. |   16 // Forward declarations. | 
|   17 class Callable; |   17 class Callable; | 
|   18  |   18  | 
|   19  |   19  | 
|   20 namespace compiler { |   20 namespace compiler { | 
|   21  |   21  | 
|   22 // Forward declarations. |   22 // Forward declarations. | 
|   23 class CommonOperatorBuilder; |   23 class CommonOperatorBuilder; | 
 |   24 struct FieldAccess; | 
|   24 class JSOperatorBuilder; |   25 class JSOperatorBuilder; | 
|   25 class JSGraph; |   26 class JSGraph; | 
|   26 class SimplifiedOperatorBuilder; |   27 class SimplifiedOperatorBuilder; | 
|   27  |   28  | 
|   28  |   29  | 
|   29 // Lowers certain JS-level runtime calls. |   30 // Lowers certain JS-level runtime calls. | 
|   30 class V8_EXPORT_PRIVATE JSIntrinsicLowering final |   31 class V8_EXPORT_PRIVATE JSIntrinsicLowering final | 
|   31     : public NON_EXPORTED_BASE(AdvancedReducer) { |   32     : public NON_EXPORTED_BASE(AdvancedReducer) { | 
|   32  public: |   33  public: | 
|   33   enum DeoptimizationMode { kDeoptimizationEnabled, kDeoptimizationDisabled }; |   34   enum DeoptimizationMode { kDeoptimizationEnabled, kDeoptimizationDisabled }; | 
| (...skipping 22 matching lines...) Expand all  Loading... | 
|   56   Reduction ReduceToInteger(Node* node); |   57   Reduction ReduceToInteger(Node* node); | 
|   57   Reduction ReduceToLength(Node* node); |   58   Reduction ReduceToLength(Node* node); | 
|   58   Reduction ReduceToNumber(Node* node); |   59   Reduction ReduceToNumber(Node* node); | 
|   59   Reduction ReduceToObject(Node* node); |   60   Reduction ReduceToObject(Node* node); | 
|   60   Reduction ReduceToString(Node* node); |   61   Reduction ReduceToString(Node* node); | 
|   61   Reduction ReduceCall(Node* node); |   62   Reduction ReduceCall(Node* node); | 
|   62   Reduction ReduceGetSuperConstructor(Node* node); |   63   Reduction ReduceGetSuperConstructor(Node* node); | 
|   63  |   64  | 
|   64   // TODO(turbofan): typedarray.js support; drop once TypedArrays are |   65   // TODO(turbofan): typedarray.js support; drop once TypedArrays are | 
|   65   // converted to proper CodeStubAssembler based builtins. |   66   // converted to proper CodeStubAssembler based builtins. | 
 |   67   Reduction ReduceArrayBufferViewField(Node* node, FieldAccess const& access); | 
|   66   Reduction ReduceMaxSmi(Node* node); |   68   Reduction ReduceMaxSmi(Node* node); | 
|   67   Reduction ReduceTypedArrayMaxSizeInHeap(Node* node); |   69   Reduction ReduceTypedArrayMaxSizeInHeap(Node* node); | 
|   68  |   70  | 
|   69   // TODO(turbofan): collection.js support; drop once Maps and Sets are |   71   // TODO(turbofan): collection.js support; drop once Maps and Sets are | 
|   70   // converted to proper CodeStubAssembler based builtins. |   72   // converted to proper CodeStubAssembler based builtins. | 
|   71   Reduction ReduceJSCollectionGetTable(Node* node); |   73   Reduction ReduceJSCollectionGetTable(Node* node); | 
|   72   Reduction ReduceStringGetRawHashField(Node* node); |   74   Reduction ReduceStringGetRawHashField(Node* node); | 
|   73   Reduction ReduceTheHole(Node* node); |   75   Reduction ReduceTheHole(Node* node); | 
|   74  |   76  | 
|   75   // TODO(turbofan): JavaScript builtins support; drop once all uses of |   77   // TODO(turbofan): JavaScript builtins support; drop once all uses of | 
| (...skipping 18 matching lines...) Expand all  Loading... | 
|   94  |   96  | 
|   95   JSGraph* const jsgraph_; |   97   JSGraph* const jsgraph_; | 
|   96   DeoptimizationMode const mode_; |   98   DeoptimizationMode const mode_; | 
|   97 }; |   99 }; | 
|   98  |  100  | 
|   99 }  // namespace compiler |  101 }  // namespace compiler | 
|  100 }  // namespace internal |  102 }  // namespace internal | 
|  101 }  // namespace v8 |  103 }  // namespace v8 | 
|  102  |  104  | 
|  103 #endif  // V8_COMPILER_JS_INTRINSIC_LOWERING_H_ |  105 #endif  // V8_COMPILER_JS_INTRINSIC_LOWERING_H_ | 
| OLD | NEW |