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/base/adapters.h" | 5 #include "src/base/adapters.h" |
6 #include "src/compiler/instruction-selector-impl.h" | 6 #include "src/compiler/instruction-selector-impl.h" |
7 #include "src/compiler/node-matchers.h" | 7 #include "src/compiler/node-matchers.h" |
8 #include "src/compiler/node-properties.h" | 8 #include "src/compiler/node-properties.h" |
9 #include "src/ppc/frames-ppc.h" | 9 #include "src/ppc/frames-ppc.h" |
10 | 10 |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
275 switch (rep) { | 275 switch (rep) { |
276 case kRepWord8: | 276 case kRepWord8: |
277 opcode = typ == kTypeInt32 ? kCheckedLoadInt8 : kCheckedLoadUint8; | 277 opcode = typ == kTypeInt32 ? kCheckedLoadInt8 : kCheckedLoadUint8; |
278 break; | 278 break; |
279 case kRepWord16: | 279 case kRepWord16: |
280 opcode = typ == kTypeInt32 ? kCheckedLoadInt16 : kCheckedLoadUint16; | 280 opcode = typ == kTypeInt32 ? kCheckedLoadInt16 : kCheckedLoadUint16; |
281 break; | 281 break; |
282 case kRepWord32: | 282 case kRepWord32: |
283 opcode = kCheckedLoadWord32; | 283 opcode = kCheckedLoadWord32; |
284 break; | 284 break; |
| 285 case kRepWord64: |
| 286 opcode = kCheckedLoadWord64; |
| 287 break; |
285 case kRepFloat32: | 288 case kRepFloat32: |
286 opcode = kCheckedLoadFloat32; | 289 opcode = kCheckedLoadFloat32; |
287 break; | 290 break; |
288 case kRepFloat64: | 291 case kRepFloat64: |
289 opcode = kCheckedLoadFloat64; | 292 opcode = kCheckedLoadFloat64; |
290 break; | 293 break; |
291 default: | 294 default: |
292 UNREACHABLE(); | 295 UNREACHABLE(); |
293 return; | 296 return; |
294 } | 297 } |
(...skipping 15 matching lines...) Expand all Loading... |
310 switch (rep) { | 313 switch (rep) { |
311 case kRepWord8: | 314 case kRepWord8: |
312 opcode = kCheckedStoreWord8; | 315 opcode = kCheckedStoreWord8; |
313 break; | 316 break; |
314 case kRepWord16: | 317 case kRepWord16: |
315 opcode = kCheckedStoreWord16; | 318 opcode = kCheckedStoreWord16; |
316 break; | 319 break; |
317 case kRepWord32: | 320 case kRepWord32: |
318 opcode = kCheckedStoreWord32; | 321 opcode = kCheckedStoreWord32; |
319 break; | 322 break; |
| 323 case kRepWord64: |
| 324 opcode = kCheckedStoreWord64; |
| 325 break; |
320 case kRepFloat32: | 326 case kRepFloat32: |
321 opcode = kCheckedStoreFloat32; | 327 opcode = kCheckedStoreFloat32; |
322 break; | 328 break; |
323 case kRepFloat64: | 329 case kRepFloat64: |
324 opcode = kCheckedStoreFloat64; | 330 opcode = kCheckedStoreFloat64; |
325 break; | 331 break; |
326 default: | 332 default: |
327 UNREACHABLE(); | 333 UNREACHABLE(); |
328 return; | 334 return; |
329 } | 335 } |
(...skipping 1342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1672 InstructionSelector::SupportedMachineOperatorFlags() { | 1678 InstructionSelector::SupportedMachineOperatorFlags() { |
1673 return MachineOperatorBuilder::kFloat64RoundDown | | 1679 return MachineOperatorBuilder::kFloat64RoundDown | |
1674 MachineOperatorBuilder::kFloat64RoundTruncate | | 1680 MachineOperatorBuilder::kFloat64RoundTruncate | |
1675 MachineOperatorBuilder::kFloat64RoundTiesAway; | 1681 MachineOperatorBuilder::kFloat64RoundTiesAway; |
1676 // We omit kWord32ShiftIsSafe as s[rl]w use 0x3f as a mask rather than 0x1f. | 1682 // We omit kWord32ShiftIsSafe as s[rl]w use 0x3f as a mask rather than 0x1f. |
1677 } | 1683 } |
1678 | 1684 |
1679 } // namespace compiler | 1685 } // namespace compiler |
1680 } // namespace internal | 1686 } // namespace internal |
1681 } // namespace v8 | 1687 } // namespace v8 |
OLD | NEW |