| 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 #if V8_TARGET_ARCH_PPC | 5 #if V8_TARGET_ARCH_PPC |
| 6 | 6 |
| 7 #include "src/interface-descriptors.h" | 7 #include "src/interface-descriptors.h" |
| 8 | 8 |
| 9 namespace v8 { | 9 namespace v8 { |
| 10 namespace internal { | 10 namespace internal { |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 void ArrayNoArgumentConstructorDescriptor::InitializePlatformSpecific( | 244 void ArrayNoArgumentConstructorDescriptor::InitializePlatformSpecific( |
| 245 CallInterfaceDescriptorData* data) { | 245 CallInterfaceDescriptorData* data) { |
| 246 // register state | 246 // register state |
| 247 // r3 -- number of arguments | 247 // r3 -- number of arguments |
| 248 // r4 -- function | 248 // r4 -- function |
| 249 // r5 -- allocation site with elements kind | 249 // r5 -- allocation site with elements kind |
| 250 Register registers[] = {r4, r5, r3}; | 250 Register registers[] = {r4, r5, r3}; |
| 251 data->InitializePlatformSpecific(arraysize(registers), registers); | 251 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 252 } | 252 } |
| 253 | 253 |
| 254 void ArrayConstructorConstantArgCountDescriptor::InitializePlatformSpecific( | 254 void ArraySingleArgumentConstructorDescriptor::InitializePlatformSpecific( |
| 255 CallInterfaceDescriptorData* data) { | 255 CallInterfaceDescriptorData* data) { |
| 256 // register state | 256 // register state |
| 257 // r3 -- number of arguments | 257 // r3 -- number of arguments |
| 258 // r4 -- function | 258 // r4 -- function |
| 259 // r5 -- allocation site with elements kind | 259 // r5 -- allocation site with elements kind |
| 260 Register registers[] = {r4, r5}; | 260 Register registers[] = {r4, r5, r3}; |
| 261 data->InitializePlatformSpecific(arraysize(registers), registers); | 261 data->InitializePlatformSpecific(arraysize(registers), registers, NULL); |
| 262 } | 262 } |
| 263 | 263 |
| 264 | 264 |
| 265 void ArrayConstructorDescriptor::InitializePlatformSpecific( | 265 void ArrayConstructorDescriptor::InitializePlatformSpecific( |
| 266 CallInterfaceDescriptorData* data) { | 266 CallInterfaceDescriptorData* data) { |
| 267 // stack param count needs (constructor pointer, and single argument) | 267 // stack param count needs (constructor pointer, and single argument) |
| 268 Register registers[] = {r4, r5, r3}; | 268 Register registers[] = {r4, r5, r3}; |
| 269 data->InitializePlatformSpecific(arraysize(registers), registers); | 269 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 270 } | 270 } |
| 271 | 271 |
| 272 | 272 |
| 273 void InternalArrayConstructorConstantArgCountDescriptor:: | |
| 274 InitializePlatformSpecific(CallInterfaceDescriptorData* data) { | |
| 275 // register state | |
| 276 // r3 -- number of arguments | |
| 277 // r4 -- constructor function | |
| 278 Register registers[] = {r4}; | |
| 279 data->InitializePlatformSpecific(arraysize(registers), registers); | |
| 280 } | |
| 281 | |
| 282 | |
| 283 void InternalArrayConstructorDescriptor::InitializePlatformSpecific( | 273 void InternalArrayConstructorDescriptor::InitializePlatformSpecific( |
| 284 CallInterfaceDescriptorData* data) { | 274 CallInterfaceDescriptorData* data) { |
| 285 // stack param count needs (constructor pointer, and single argument) | 275 // stack param count needs (constructor pointer, and single argument) |
| 286 Register registers[] = {r4, r3}; | 276 Register registers[] = {r4, r3}; |
| 287 data->InitializePlatformSpecific(arraysize(registers), registers); | 277 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 288 } | 278 } |
| 289 | 279 |
| 290 void FastArrayPushDescriptor::InitializePlatformSpecific( | 280 void FastArrayPushDescriptor::InitializePlatformSpecific( |
| 291 CallInterfaceDescriptorData* data) { | 281 CallInterfaceDescriptorData* data) { |
| 292 // stack param count needs (arg count) | 282 // stack param count needs (arg count) |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 421 r3, // the value to pass to the generator | 411 r3, // the value to pass to the generator |
| 422 r4, // the JSGeneratorObject to resume | 412 r4, // the JSGeneratorObject to resume |
| 423 r5 // the resume mode (tagged) | 413 r5 // the resume mode (tagged) |
| 424 }; | 414 }; |
| 425 data->InitializePlatformSpecific(arraysize(registers), registers); | 415 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 426 } | 416 } |
| 427 } // namespace internal | 417 } // namespace internal |
| 428 } // namespace v8 | 418 } // namespace v8 |
| 429 | 419 |
| 430 #endif // V8_TARGET_ARCH_PPC | 420 #endif // V8_TARGET_ARCH_PPC |
| OLD | NEW |