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 #include "src/compiler/machine-operator.h" | 5 #include "src/compiler/machine-operator.h" |
6 | 6 |
7 #include "src/base/lazy-instance.h" | 7 #include "src/base/lazy-instance.h" |
8 #include "src/compiler/opcodes.h" | 8 #include "src/compiler/opcodes.h" |
9 #include "src/compiler/operator.h" | 9 #include "src/compiler/operator.h" |
10 | 10 |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 V(Float64ExtractLowWord32, Operator::kNoProperties, 1, 0, 1) \ | 192 V(Float64ExtractLowWord32, Operator::kNoProperties, 1, 0, 1) \ |
193 V(Float64ExtractHighWord32, Operator::kNoProperties, 1, 0, 1) \ | 193 V(Float64ExtractHighWord32, Operator::kNoProperties, 1, 0, 1) \ |
194 V(Float64InsertLowWord32, Operator::kNoProperties, 2, 0, 1) \ | 194 V(Float64InsertLowWord32, Operator::kNoProperties, 2, 0, 1) \ |
195 V(Float64InsertHighWord32, Operator::kNoProperties, 2, 0, 1) \ | 195 V(Float64InsertHighWord32, Operator::kNoProperties, 2, 0, 1) \ |
196 V(LoadStackPointer, Operator::kNoProperties, 0, 0, 1) \ | 196 V(LoadStackPointer, Operator::kNoProperties, 0, 0, 1) \ |
197 V(LoadFramePointer, Operator::kNoProperties, 0, 0, 1) | 197 V(LoadFramePointer, Operator::kNoProperties, 0, 0, 1) |
198 | 198 |
199 #define PURE_OPTIONAL_OP_LIST(V) \ | 199 #define PURE_OPTIONAL_OP_LIST(V) \ |
200 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \ | 200 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \ |
201 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \ | 201 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \ |
| 202 V(Word32ReverseBits, Operator::kNoProperties, 1, 0, 1) \ |
| 203 V(Word64ReverseBits, Operator::kNoProperties, 1, 0, 1) \ |
202 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \ | 204 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \ |
203 V(Word64Popcnt, Operator::kNoProperties, 1, 0, 1) \ | 205 V(Word64Popcnt, Operator::kNoProperties, 1, 0, 1) \ |
204 V(Float32Max, Operator::kNoProperties, 2, 0, 1) \ | 206 V(Float32Max, Operator::kNoProperties, 2, 0, 1) \ |
205 V(Float32Min, Operator::kNoProperties, 2, 0, 1) \ | 207 V(Float32Min, Operator::kNoProperties, 2, 0, 1) \ |
206 V(Float64Max, Operator::kNoProperties, 2, 0, 1) \ | 208 V(Float64Max, Operator::kNoProperties, 2, 0, 1) \ |
207 V(Float64Min, Operator::kNoProperties, 2, 0, 1) \ | 209 V(Float64Min, Operator::kNoProperties, 2, 0, 1) \ |
208 V(Float32RoundDown, Operator::kNoProperties, 1, 0, 1) \ | 210 V(Float32RoundDown, Operator::kNoProperties, 1, 0, 1) \ |
209 V(Float64RoundDown, Operator::kNoProperties, 1, 0, 1) \ | 211 V(Float64RoundDown, Operator::kNoProperties, 1, 0, 1) \ |
210 V(Float32RoundUp, Operator::kNoProperties, 1, 0, 1) \ | 212 V(Float32RoundUp, Operator::kNoProperties, 1, 0, 1) \ |
211 V(Float64RoundUp, Operator::kNoProperties, 1, 0, 1) \ | 213 V(Float64RoundUp, Operator::kNoProperties, 1, 0, 1) \ |
212 V(Float32RoundTruncate, Operator::kNoProperties, 1, 0, 1) \ | 214 V(Float32RoundTruncate, Operator::kNoProperties, 1, 0, 1) \ |
213 V(Float64RoundTruncate, Operator::kNoProperties, 1, 0, 1) \ | 215 V(Float64RoundTruncate, Operator::kNoProperties, 1, 0, 1) \ |
214 V(Float64RoundTiesAway, Operator::kNoProperties, 1, 0, 1) \ | 216 V(Float64RoundTiesAway, Operator::kNoProperties, 1, 0, 1) \ |
215 V(Float32RoundTiesEven, Operator::kNoProperties, 1, 0, 1) \ | 217 V(Float32RoundTiesEven, Operator::kNoProperties, 1, 0, 1) \ |
216 V(Float64RoundTiesEven, Operator::kNoProperties, 1, 0, 1) | 218 V(Float64RoundTiesEven, Operator::kNoProperties, 1, 0, 1) |
217 | 219 |
218 | |
219 #define MACHINE_TYPE_LIST(V) \ | 220 #define MACHINE_TYPE_LIST(V) \ |
220 V(Float32) \ | 221 V(Float32) \ |
221 V(Float64) \ | 222 V(Float64) \ |
222 V(Int8) \ | 223 V(Int8) \ |
223 V(Uint8) \ | 224 V(Uint8) \ |
224 V(Int16) \ | 225 V(Int16) \ |
225 V(Uint16) \ | 226 V(Uint16) \ |
226 V(Int32) \ | 227 V(Int32) \ |
227 V(Uint32) \ | 228 V(Uint32) \ |
228 V(Int64) \ | 229 V(Int64) \ |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
461 case MachineRepresentation::kNone: | 462 case MachineRepresentation::kNone: |
462 break; | 463 break; |
463 } | 464 } |
464 UNREACHABLE(); | 465 UNREACHABLE(); |
465 return nullptr; | 466 return nullptr; |
466 } | 467 } |
467 | 468 |
468 } // namespace compiler | 469 } // namespace compiler |
469 } // namespace internal | 470 } // namespace internal |
470 } // namespace v8 | 471 } // namespace v8 |
OLD | NEW |