| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_MACHINE_OPERATOR_H_ | 5 #ifndef V8_COMPILER_MACHINE_OPERATOR_H_ |
| 6 #define V8_COMPILER_MACHINE_OPERATOR_H_ | 6 #define V8_COMPILER_MACHINE_OPERATOR_H_ |
| 7 | 7 |
| 8 #include "src/base/flags.h" | 8 #include "src/base/flags.h" |
| 9 #include "src/machine-type.h" | 9 #include "src/machine-type.h" |
| 10 | 10 |
| (...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 328 // Access to the machine stack. | 328 // Access to the machine stack. |
| 329 const Operator* LoadStackPointer(); | 329 const Operator* LoadStackPointer(); |
| 330 const Operator* LoadFramePointer(); | 330 const Operator* LoadFramePointer(); |
| 331 const Operator* LoadParentFramePointer(); | 331 const Operator* LoadParentFramePointer(); |
| 332 | 332 |
| 333 // checked-load heap, index, length | 333 // checked-load heap, index, length |
| 334 const Operator* CheckedLoad(CheckedLoadRepresentation); | 334 const Operator* CheckedLoad(CheckedLoadRepresentation); |
| 335 // checked-store heap, index, length, value | 335 // checked-store heap, index, length, value |
| 336 const Operator* CheckedStore(CheckedStoreRepresentation); | 336 const Operator* CheckedStore(CheckedStoreRepresentation); |
| 337 | 337 |
| 338 // atomic-load [base + index] |
| 339 const Operator* AtomicLoad(LoadRepresentation rep); |
| 340 |
| 338 // Target machine word-size assumed by this builder. | 341 // Target machine word-size assumed by this builder. |
| 339 bool Is32() const { return word() == MachineRepresentation::kWord32; } | 342 bool Is32() const { return word() == MachineRepresentation::kWord32; } |
| 340 bool Is64() const { return word() == MachineRepresentation::kWord64; } | 343 bool Is64() const { return word() == MachineRepresentation::kWord64; } |
| 341 MachineRepresentation word() const { return word_; } | 344 MachineRepresentation word() const { return word_; } |
| 342 | 345 |
| 343 // Pseudo operators that translate to 32/64-bit operators depending on the | 346 // Pseudo operators that translate to 32/64-bit operators depending on the |
| 344 // word-size of the target machine assumed by this builder. | 347 // word-size of the target machine assumed by this builder. |
| 345 #define PSEUDO_OP_LIST(V) \ | 348 #define PSEUDO_OP_LIST(V) \ |
| 346 V(Word, And) \ | 349 V(Word, And) \ |
| 347 V(Word, Or) \ | 350 V(Word, Or) \ |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 }; | 382 }; |
| 380 | 383 |
| 381 | 384 |
| 382 DEFINE_OPERATORS_FOR_FLAGS(MachineOperatorBuilder::Flags) | 385 DEFINE_OPERATORS_FOR_FLAGS(MachineOperatorBuilder::Flags) |
| 383 | 386 |
| 384 } // namespace compiler | 387 } // namespace compiler |
| 385 } // namespace internal | 388 } // namespace internal |
| 386 } // namespace v8 | 389 } // namespace v8 |
| 387 | 390 |
| 388 #endif // V8_COMPILER_MACHINE_OPERATOR_H_ | 391 #endif // V8_COMPILER_MACHINE_OPERATOR_H_ |
| OLD | NEW |