OLD | NEW |
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_RAW_MACHINE_ASSEMBLER_H_ | 5 #ifndef V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
6 #define V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 6 #define V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/compiler/common-operator.h" | 9 #include "src/compiler/common-operator.h" |
10 #include "src/compiler/graph.h" | 10 #include "src/compiler/graph.h" |
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
320 } | 320 } |
321 Node* Uint64Div(Node* a, Node* b) { | 321 Node* Uint64Div(Node* a, Node* b) { |
322 return AddNode(machine()->Uint64Div(), a, b); | 322 return AddNode(machine()->Uint64Div(), a, b); |
323 } | 323 } |
324 Node* Uint64Mod(Node* a, Node* b) { | 324 Node* Uint64Mod(Node* a, Node* b) { |
325 return AddNode(machine()->Uint64Mod(), a, b); | 325 return AddNode(machine()->Uint64Mod(), a, b); |
326 } | 326 } |
327 Node* Word32PairShl(Node* low_word, Node* high_word, Node* shift) { | 327 Node* Word32PairShl(Node* low_word, Node* high_word, Node* shift) { |
328 return AddNode(machine()->Word32PairShl(), low_word, high_word, shift); | 328 return AddNode(machine()->Word32PairShl(), low_word, high_word, shift); |
329 } | 329 } |
| 330 Node* Word32PairShr(Node* low_word, Node* high_word, Node* shift) { |
| 331 return AddNode(machine()->Word32PairShr(), low_word, high_word, shift); |
| 332 } |
| 333 Node* Word32PairSar(Node* low_word, Node* high_word, Node* shift) { |
| 334 return AddNode(machine()->Word32PairSar(), low_word, high_word, shift); |
| 335 } |
330 | 336 |
331 #define INTPTR_BINOP(prefix, name) \ | 337 #define INTPTR_BINOP(prefix, name) \ |
332 Node* IntPtr##name(Node* a, Node* b) { \ | 338 Node* IntPtr##name(Node* a, Node* b) { \ |
333 return kPointerSize == 8 ? prefix##64##name(a, b) \ | 339 return kPointerSize == 8 ? prefix##64##name(a, b) \ |
334 : prefix##32##name(a, b); \ | 340 : prefix##32##name(a, b); \ |
335 } | 341 } |
336 | 342 |
337 INTPTR_BINOP(Int, Add); | 343 INTPTR_BINOP(Int, Add); |
338 INTPTR_BINOP(Int, Sub); | 344 INTPTR_BINOP(Int, Sub); |
339 INTPTR_BINOP(Int, LessThan); | 345 INTPTR_BINOP(Int, LessThan); |
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
716 bool deferred_; | 722 bool deferred_; |
717 friend class RawMachineAssembler; | 723 friend class RawMachineAssembler; |
718 DISALLOW_COPY_AND_ASSIGN(RawMachineLabel); | 724 DISALLOW_COPY_AND_ASSIGN(RawMachineLabel); |
719 }; | 725 }; |
720 | 726 |
721 } // namespace compiler | 727 } // namespace compiler |
722 } // namespace internal | 728 } // namespace internal |
723 } // namespace v8 | 729 } // namespace v8 |
724 | 730 |
725 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 731 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
OLD | NEW |