| 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_CODE_ASSEMBLER_H_ | 5 #ifndef V8_COMPILER_CODE_ASSEMBLER_H_ |
| 6 #define V8_COMPILER_CODE_ASSEMBLER_H_ | 6 #define V8_COMPILER_CODE_ASSEMBLER_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 183 // | 183 // |
| 184 // The CodeAssembler itself is stateless (and instances are expected to be | 184 // The CodeAssembler itself is stateless (and instances are expected to be |
| 185 // temporary-scoped and short-lived); all its state is encapsulated into | 185 // temporary-scoped and short-lived); all its state is encapsulated into |
| 186 // a CodeAssemblerState instance. | 186 // a CodeAssemblerState instance. |
| 187 class V8_EXPORT_PRIVATE CodeAssembler { | 187 class V8_EXPORT_PRIVATE CodeAssembler { |
| 188 public: | 188 public: |
| 189 explicit CodeAssembler(CodeAssemblerState* state) : state_(state) {} | 189 explicit CodeAssembler(CodeAssemblerState* state) : state_(state) {} |
| 190 | 190 |
| 191 virtual ~CodeAssembler(); | 191 virtual ~CodeAssembler(); |
| 192 | 192 |
| 193 static Handle<Code> GenerateCode(CodeAssemblerState* state, | 193 static Handle<Code> GenerateCode(CodeAssemblerState* state); |
| 194 bool verify_graph = false); | |
| 195 | 194 |
| 196 bool Is64() const; | 195 bool Is64() const; |
| 197 bool IsFloat64RoundUpSupported() const; | 196 bool IsFloat64RoundUpSupported() const; |
| 198 bool IsFloat64RoundDownSupported() const; | 197 bool IsFloat64RoundDownSupported() const; |
| 199 bool IsFloat64RoundTiesEvenSupported() const; | 198 bool IsFloat64RoundTiesEvenSupported() const; |
| 200 bool IsFloat64RoundTruncateSupported() const; | 199 bool IsFloat64RoundTruncateSupported() const; |
| 201 | 200 |
| 202 // Shortened aliases for use in CodeAssembler subclasses. | 201 // Shortened aliases for use in CodeAssembler subclasses. |
| 203 typedef CodeAssemblerLabel Label; | 202 typedef CodeAssemblerLabel Label; |
| 204 typedef CodeAssemblerVariable Variable; | 203 typedef CodeAssemblerVariable Variable; |
| (...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 562 ZoneSet<CodeAssemblerVariable::Impl*> variables_; | 561 ZoneSet<CodeAssemblerVariable::Impl*> variables_; |
| 563 | 562 |
| 564 DISALLOW_COPY_AND_ASSIGN(CodeAssemblerState); | 563 DISALLOW_COPY_AND_ASSIGN(CodeAssemblerState); |
| 565 }; | 564 }; |
| 566 | 565 |
| 567 } // namespace compiler | 566 } // namespace compiler |
| 568 } // namespace internal | 567 } // namespace internal |
| 569 } // namespace v8 | 568 } // namespace v8 |
| 570 | 569 |
| 571 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ | 570 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ |
| OLD | NEW |