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 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 opcode = kPPC_LoadDouble; | 187 opcode = kPPC_LoadDouble; |
188 break; | 188 break; |
189 case MachineRepresentation::kBit: // Fall through. | 189 case MachineRepresentation::kBit: // Fall through. |
190 case MachineRepresentation::kWord8: | 190 case MachineRepresentation::kWord8: |
191 opcode = load_rep.IsSigned() ? kPPC_LoadWordS8 : kPPC_LoadWordU8; | 191 opcode = load_rep.IsSigned() ? kPPC_LoadWordS8 : kPPC_LoadWordU8; |
192 break; | 192 break; |
193 case MachineRepresentation::kWord16: | 193 case MachineRepresentation::kWord16: |
194 opcode = load_rep.IsSigned() ? kPPC_LoadWordS16 : kPPC_LoadWordU16; | 194 opcode = load_rep.IsSigned() ? kPPC_LoadWordS16 : kPPC_LoadWordU16; |
195 break; | 195 break; |
196 #if !V8_TARGET_ARCH_PPC64 | 196 #if !V8_TARGET_ARCH_PPC64 |
| 197 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 198 case MachineRepresentation::kTaggedPointer: // Fall through. |
197 case MachineRepresentation::kTagged: // Fall through. | 199 case MachineRepresentation::kTagged: // Fall through. |
198 #endif | 200 #endif |
199 case MachineRepresentation::kWord32: | 201 case MachineRepresentation::kWord32: |
200 opcode = kPPC_LoadWordU32; | 202 opcode = kPPC_LoadWordU32; |
201 break; | 203 break; |
202 #if V8_TARGET_ARCH_PPC64 | 204 #if V8_TARGET_ARCH_PPC64 |
| 205 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 206 case MachineRepresentation::kTaggedPointer: // Fall through. |
203 case MachineRepresentation::kTagged: // Fall through. | 207 case MachineRepresentation::kTagged: // Fall through. |
204 case MachineRepresentation::kWord64: | 208 case MachineRepresentation::kWord64: |
205 opcode = kPPC_LoadWord64; | 209 opcode = kPPC_LoadWord64; |
206 mode = kInt16Imm_4ByteAligned; | 210 mode = kInt16Imm_4ByteAligned; |
207 break; | 211 break; |
208 #else | 212 #else |
209 case MachineRepresentation::kWord64: // Fall through. | 213 case MachineRepresentation::kWord64: // Fall through. |
210 #endif | 214 #endif |
211 case MachineRepresentation::kSimd128: // Fall through. | 215 case MachineRepresentation::kSimd128: // Fall through. |
212 case MachineRepresentation::kNone: | 216 case MachineRepresentation::kNone: |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 opcode = kPPC_StoreDouble; | 292 opcode = kPPC_StoreDouble; |
289 break; | 293 break; |
290 case MachineRepresentation::kBit: // Fall through. | 294 case MachineRepresentation::kBit: // Fall through. |
291 case MachineRepresentation::kWord8: | 295 case MachineRepresentation::kWord8: |
292 opcode = kPPC_StoreWord8; | 296 opcode = kPPC_StoreWord8; |
293 break; | 297 break; |
294 case MachineRepresentation::kWord16: | 298 case MachineRepresentation::kWord16: |
295 opcode = kPPC_StoreWord16; | 299 opcode = kPPC_StoreWord16; |
296 break; | 300 break; |
297 #if !V8_TARGET_ARCH_PPC64 | 301 #if !V8_TARGET_ARCH_PPC64 |
| 302 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 303 case MachineRepresentation::kTaggedPointer: // Fall through. |
298 case MachineRepresentation::kTagged: // Fall through. | 304 case MachineRepresentation::kTagged: // Fall through. |
299 #endif | 305 #endif |
300 case MachineRepresentation::kWord32: | 306 case MachineRepresentation::kWord32: |
301 opcode = kPPC_StoreWord32; | 307 opcode = kPPC_StoreWord32; |
302 break; | 308 break; |
303 #if V8_TARGET_ARCH_PPC64 | 309 #if V8_TARGET_ARCH_PPC64 |
| 310 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 311 case MachineRepresentation::kTaggedPointer: // Fall through. |
304 case MachineRepresentation::kTagged: // Fall through. | 312 case MachineRepresentation::kTagged: // Fall through. |
305 case MachineRepresentation::kWord64: | 313 case MachineRepresentation::kWord64: |
306 opcode = kPPC_StoreWord64; | 314 opcode = kPPC_StoreWord64; |
307 mode = kInt16Imm_4ByteAligned; | 315 mode = kInt16Imm_4ByteAligned; |
308 break; | 316 break; |
309 #else | 317 #else |
310 case MachineRepresentation::kWord64: // Fall through. | 318 case MachineRepresentation::kWord64: // Fall through. |
311 #endif | 319 #endif |
312 case MachineRepresentation::kSimd128: // Fall through. | 320 case MachineRepresentation::kSimd128: // Fall through. |
313 case MachineRepresentation::kNone: | 321 case MachineRepresentation::kNone: |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
355 opcode = kCheckedLoadWord64; | 363 opcode = kCheckedLoadWord64; |
356 break; | 364 break; |
357 #endif | 365 #endif |
358 case MachineRepresentation::kFloat32: | 366 case MachineRepresentation::kFloat32: |
359 opcode = kCheckedLoadFloat32; | 367 opcode = kCheckedLoadFloat32; |
360 break; | 368 break; |
361 case MachineRepresentation::kFloat64: | 369 case MachineRepresentation::kFloat64: |
362 opcode = kCheckedLoadFloat64; | 370 opcode = kCheckedLoadFloat64; |
363 break; | 371 break; |
364 case MachineRepresentation::kBit: // Fall through. | 372 case MachineRepresentation::kBit: // Fall through. |
| 373 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 374 case MachineRepresentation::kTaggedPointer: // Fall through. |
365 case MachineRepresentation::kTagged: // Fall through. | 375 case MachineRepresentation::kTagged: // Fall through. |
366 #if !V8_TARGET_ARCH_PPC64 | 376 #if !V8_TARGET_ARCH_PPC64 |
367 case MachineRepresentation::kWord64: // Fall through. | 377 case MachineRepresentation::kWord64: // Fall through. |
368 #endif | 378 #endif |
369 case MachineRepresentation::kSimd128: // Fall through. | 379 case MachineRepresentation::kSimd128: // Fall through. |
370 case MachineRepresentation::kNone: | 380 case MachineRepresentation::kNone: |
371 UNREACHABLE(); | 381 UNREACHABLE(); |
372 return; | 382 return; |
373 } | 383 } |
374 AddressingMode addressingMode = kMode_MRR; | 384 AddressingMode addressingMode = kMode_MRR; |
(...skipping 26 matching lines...) Expand all Loading... |
401 opcode = kCheckedStoreWord64; | 411 opcode = kCheckedStoreWord64; |
402 break; | 412 break; |
403 #endif | 413 #endif |
404 case MachineRepresentation::kFloat32: | 414 case MachineRepresentation::kFloat32: |
405 opcode = kCheckedStoreFloat32; | 415 opcode = kCheckedStoreFloat32; |
406 break; | 416 break; |
407 case MachineRepresentation::kFloat64: | 417 case MachineRepresentation::kFloat64: |
408 opcode = kCheckedStoreFloat64; | 418 opcode = kCheckedStoreFloat64; |
409 break; | 419 break; |
410 case MachineRepresentation::kBit: // Fall through. | 420 case MachineRepresentation::kBit: // Fall through. |
| 421 case MachineRepresentation::kTaggedSigned: // Fall through. |
| 422 case MachineRepresentation::kTaggedPointer: // Fall through. |
411 case MachineRepresentation::kTagged: // Fall through. | 423 case MachineRepresentation::kTagged: // Fall through. |
412 #if !V8_TARGET_ARCH_PPC64 | 424 #if !V8_TARGET_ARCH_PPC64 |
413 case MachineRepresentation::kWord64: // Fall through. | 425 case MachineRepresentation::kWord64: // Fall through. |
414 #endif | 426 #endif |
415 case MachineRepresentation::kSimd128: // Fall through. | 427 case MachineRepresentation::kSimd128: // Fall through. |
416 case MachineRepresentation::kNone: | 428 case MachineRepresentation::kNone: |
417 UNREACHABLE(); | 429 UNREACHABLE(); |
418 return; | 430 return; |
419 } | 431 } |
420 AddressingMode addressingMode = kMode_MRR; | 432 AddressingMode addressingMode = kMode_MRR; |
(...skipping 1618 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2039 // static | 2051 // static |
2040 MachineOperatorBuilder::AlignmentRequirements | 2052 MachineOperatorBuilder::AlignmentRequirements |
2041 InstructionSelector::AlignmentRequirements() { | 2053 InstructionSelector::AlignmentRequirements() { |
2042 return MachineOperatorBuilder::AlignmentRequirements:: | 2054 return MachineOperatorBuilder::AlignmentRequirements:: |
2043 FullUnalignedAccessSupport(); | 2055 FullUnalignedAccessSupport(); |
2044 } | 2056 } |
2045 | 2057 |
2046 } // namespace compiler | 2058 } // namespace compiler |
2047 } // namespace internal | 2059 } // namespace internal |
2048 } // namespace v8 | 2060 } // namespace v8 |
OLD | NEW |