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 337 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
348 } | 348 } |
349 Node* Float32Sub(Node* a, Node* b) { | 349 Node* Float32Sub(Node* a, Node* b) { |
350 return AddNode(machine()->Float32Sub(), a, b); | 350 return AddNode(machine()->Float32Sub(), a, b); |
351 } | 351 } |
352 Node* Float32Mul(Node* a, Node* b) { | 352 Node* Float32Mul(Node* a, Node* b) { |
353 return AddNode(machine()->Float32Mul(), a, b); | 353 return AddNode(machine()->Float32Mul(), a, b); |
354 } | 354 } |
355 Node* Float32Div(Node* a, Node* b) { | 355 Node* Float32Div(Node* a, Node* b) { |
356 return AddNode(machine()->Float32Div(), a, b); | 356 return AddNode(machine()->Float32Div(), a, b); |
357 } | 357 } |
| 358 Node* Float32Max(Node* a, Node* b) { |
| 359 return AddNode(machine()->Float32Max().op(), a, b); |
| 360 } |
| 361 Node* Float32Min(Node* a, Node* b) { |
| 362 return AddNode(machine()->Float32Min().op(), a, b); |
| 363 } |
358 Node* Float32Abs(Node* a) { return AddNode(machine()->Float32Abs(), a); } | 364 Node* Float32Abs(Node* a) { return AddNode(machine()->Float32Abs(), a); } |
359 Node* Float32Sqrt(Node* a) { return AddNode(machine()->Float32Sqrt(), a); } | 365 Node* Float32Sqrt(Node* a) { return AddNode(machine()->Float32Sqrt(), a); } |
360 Node* Float32Equal(Node* a, Node* b) { | 366 Node* Float32Equal(Node* a, Node* b) { |
361 return AddNode(machine()->Float32Equal(), a, b); | 367 return AddNode(machine()->Float32Equal(), a, b); |
362 } | 368 } |
363 Node* Float32NotEqual(Node* a, Node* b) { | 369 Node* Float32NotEqual(Node* a, Node* b) { |
364 return WordBinaryNot(Float32Equal(a, b)); | 370 return WordBinaryNot(Float32Equal(a, b)); |
365 } | 371 } |
366 Node* Float32LessThan(Node* a, Node* b) { | 372 Node* Float32LessThan(Node* a, Node* b) { |
367 return AddNode(machine()->Float32LessThan(), a, b); | 373 return AddNode(machine()->Float32LessThan(), a, b); |
(...skipping 14 matching lines...) Expand all Loading... |
382 } | 388 } |
383 Node* Float64Mul(Node* a, Node* b) { | 389 Node* Float64Mul(Node* a, Node* b) { |
384 return AddNode(machine()->Float64Mul(), a, b); | 390 return AddNode(machine()->Float64Mul(), a, b); |
385 } | 391 } |
386 Node* Float64Div(Node* a, Node* b) { | 392 Node* Float64Div(Node* a, Node* b) { |
387 return AddNode(machine()->Float64Div(), a, b); | 393 return AddNode(machine()->Float64Div(), a, b); |
388 } | 394 } |
389 Node* Float64Mod(Node* a, Node* b) { | 395 Node* Float64Mod(Node* a, Node* b) { |
390 return AddNode(machine()->Float64Mod(), a, b); | 396 return AddNode(machine()->Float64Mod(), a, b); |
391 } | 397 } |
| 398 Node* Float64Max(Node* a, Node* b) { |
| 399 return AddNode(machine()->Float64Max().op(), a, b); |
| 400 } |
| 401 Node* Float64Min(Node* a, Node* b) { |
| 402 return AddNode(machine()->Float64Min().op(), a, b); |
| 403 } |
392 Node* Float64Abs(Node* a) { return AddNode(machine()->Float64Abs(), a); } | 404 Node* Float64Abs(Node* a) { return AddNode(machine()->Float64Abs(), a); } |
393 Node* Float64Sqrt(Node* a) { return AddNode(machine()->Float64Sqrt(), a); } | 405 Node* Float64Sqrt(Node* a) { return AddNode(machine()->Float64Sqrt(), a); } |
394 Node* Float64Equal(Node* a, Node* b) { | 406 Node* Float64Equal(Node* a, Node* b) { |
395 return AddNode(machine()->Float64Equal(), a, b); | 407 return AddNode(machine()->Float64Equal(), a, b); |
396 } | 408 } |
397 Node* Float64NotEqual(Node* a, Node* b) { | 409 Node* Float64NotEqual(Node* a, Node* b) { |
398 return WordBinaryNot(Float64Equal(a, b)); | 410 return WordBinaryNot(Float64Equal(a, b)); |
399 } | 411 } |
400 Node* Float64LessThan(Node* a, Node* b) { | 412 Node* Float64LessThan(Node* a, Node* b) { |
401 return AddNode(machine()->Float64LessThan(), a, b); | 413 return AddNode(machine()->Float64LessThan(), a, b); |
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
588 BasicBlock* current_block_; | 600 BasicBlock* current_block_; |
589 | 601 |
590 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); | 602 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); |
591 }; | 603 }; |
592 | 604 |
593 } // namespace compiler | 605 } // namespace compiler |
594 } // namespace internal | 606 } // namespace internal |
595 } // namespace v8 | 607 } // namespace v8 |
596 | 608 |
597 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 609 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
OLD | NEW |