Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include "vm/bootstrap_natives.h" | 5 #include "vm/bootstrap_natives.h" |
| 6 | 6 |
| 7 #include "vm/bigint_operations.h" | 7 #include "vm/bigint_operations.h" |
| 8 #include "vm/exceptions.h" | 8 #include "vm/exceptions.h" |
| 9 #include "vm/native_entry.h" | 9 #include "vm/native_entry.h" |
| 10 #include "vm/object.h" | 10 #include "vm/object.h" |
| (...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 278 // Int8Array | 278 // Int8Array |
| 279 | 279 |
| 280 DEFINE_NATIVE_ENTRY(Int8Array_new, 1) { | 280 DEFINE_NATIVE_ENTRY(Int8Array_new, 1) { |
| 281 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 281 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 282 intptr_t len = length.Value(); | 282 intptr_t len = length.Value(); |
| 283 LengthCheck(len, Int8Array::kMaxElements); | 283 LengthCheck(len, Int8Array::kMaxElements); |
| 284 return Int8Array::New(len); | 284 return Int8Array::New(len); |
| 285 } | 285 } |
| 286 | 286 |
| 287 | 287 |
| 288 DEFINE_NATIVE_ENTRY(Int8Array_newTransferrable, 1) { | |
|
Ivan Posva
2012/12/02 14:17:55
The spelling transferable is generally preferred,
| |
| 289 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 290 intptr_t len = length.Value(); | |
| 291 LengthCheck(len, Int8Array::kMaxElements); | |
| 292 int8_t* bytes = OS::AllocateAlignedArray<int8_t>( | |
| 293 len, | |
| 294 ExternalByteArrayData<int8_t>::kAlignment); | |
| 295 return ExternalInt8Array::New(bytes, | |
| 296 len, | |
| 297 bytes, | |
| 298 OS::AlignedFree); | |
| 299 } | |
| 300 | |
| 301 | |
| 288 DEFINE_NATIVE_ENTRY(Int8Array_getIndexed, 2) { | 302 DEFINE_NATIVE_ENTRY(Int8Array_getIndexed, 2) { |
| 289 GETTER(Int8Array, Smi, int8_t); | 303 GETTER(Int8Array, Smi, int8_t); |
| 290 } | 304 } |
| 291 | 305 |
| 292 | 306 |
| 293 DEFINE_NATIVE_ENTRY(Int8Array_setIndexed, 3) { | 307 DEFINE_NATIVE_ENTRY(Int8Array_setIndexed, 3) { |
| 294 SETTER(Int8Array, Smi, Value, int8_t); | 308 SETTER(Int8Array, Smi, Value, int8_t); |
| 295 } | 309 } |
| 296 | 310 |
| 297 | 311 |
| 298 // Uint8Array | 312 // Uint8Array |
| 299 | 313 |
| 300 DEFINE_NATIVE_ENTRY(Uint8Array_new, 1) { | 314 DEFINE_NATIVE_ENTRY(Uint8Array_new, 1) { |
| 301 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 315 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 302 intptr_t len = length.Value(); | 316 intptr_t len = length.Value(); |
| 303 LengthCheck(len, Uint8Array::kMaxElements); | 317 LengthCheck(len, Uint8Array::kMaxElements); |
| 304 return Uint8Array::New(len); | 318 return Uint8Array::New(len); |
| 305 } | 319 } |
| 306 | 320 |
| 307 | 321 |
| 322 DEFINE_NATIVE_ENTRY(Uint8Array_newTransferrable, 1) { | |
| 323 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 324 intptr_t len = length.Value(); | |
| 325 LengthCheck(len, Uint8Array::kMaxElements); | |
| 326 uint8_t* bytes = OS::AllocateAlignedArray<uint8_t>( | |
| 327 len, | |
| 328 ExternalByteArrayData<uint8_t>::kAlignment); | |
| 329 return ExternalUint8Array::New(bytes, | |
| 330 len, | |
| 331 bytes, | |
| 332 OS::AlignedFree); | |
| 333 } | |
| 334 | |
| 335 | |
| 308 DEFINE_NATIVE_ENTRY(Uint8Array_getIndexed, 2) { | 336 DEFINE_NATIVE_ENTRY(Uint8Array_getIndexed, 2) { |
| 309 GETTER(Uint8Array, Smi, uint8_t); | 337 GETTER(Uint8Array, Smi, uint8_t); |
| 310 } | 338 } |
| 311 | 339 |
| 312 | 340 |
| 313 DEFINE_NATIVE_ENTRY(Uint8Array_setIndexed, 3) { | 341 DEFINE_NATIVE_ENTRY(Uint8Array_setIndexed, 3) { |
| 314 SETTER(Uint8Array, Smi, Value, uint8_t); | 342 SETTER(Uint8Array, Smi, Value, uint8_t); |
| 315 } | 343 } |
| 316 | 344 |
| 317 | 345 |
| 318 // Int16Array | 346 // Int16Array |
| 319 | 347 |
| 320 DEFINE_NATIVE_ENTRY(Int16Array_new, 1) { | 348 DEFINE_NATIVE_ENTRY(Int16Array_new, 1) { |
| 321 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 349 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 322 intptr_t len = length.Value(); | 350 intptr_t len = length.Value(); |
| 323 LengthCheck(len, Int16Array::kMaxElements); | 351 LengthCheck(len, Int16Array::kMaxElements); |
| 324 return Int16Array::New(len); | 352 return Int16Array::New(len); |
| 325 } | 353 } |
| 326 | 354 |
| 327 | 355 |
| 356 DEFINE_NATIVE_ENTRY(Int16Array_newTransferrable, 1) { | |
| 357 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 358 intptr_t len = length.Value(); | |
| 359 LengthCheck(len, Int16Array::kMaxElements); | |
| 360 int16_t* bytes = OS::AllocateAlignedArray<int16_t>( | |
| 361 len, | |
| 362 ExternalByteArrayData<int16_t>::kAlignment); | |
| 363 return ExternalInt16Array::New(bytes, | |
| 364 len, | |
| 365 bytes, | |
| 366 OS::AlignedFree); | |
| 367 } | |
| 368 | |
| 369 | |
| 328 DEFINE_NATIVE_ENTRY(Int16Array_getIndexed, 2) { | 370 DEFINE_NATIVE_ENTRY(Int16Array_getIndexed, 2) { |
| 329 GETTER(Int16Array, Smi, int16_t); | 371 GETTER(Int16Array, Smi, int16_t); |
| 330 } | 372 } |
| 331 | 373 |
| 332 | 374 |
| 333 DEFINE_NATIVE_ENTRY(Int16Array_setIndexed, 3) { | 375 DEFINE_NATIVE_ENTRY(Int16Array_setIndexed, 3) { |
| 334 SETTER(Int16Array, Smi, Value, int16_t); | 376 SETTER(Int16Array, Smi, Value, int16_t); |
| 335 } | 377 } |
| 336 | 378 |
| 337 | 379 |
| 338 // Uint16Array | 380 // Uint16Array |
| 339 | 381 |
| 340 DEFINE_NATIVE_ENTRY(Uint16Array_new, 1) { | 382 DEFINE_NATIVE_ENTRY(Uint16Array_new, 1) { |
| 341 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 383 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 342 intptr_t len = length.Value(); | 384 intptr_t len = length.Value(); |
| 343 LengthCheck(len, Uint16Array::kMaxElements); | 385 LengthCheck(len, Uint16Array::kMaxElements); |
| 344 return Uint16Array::New(len); | 386 return Uint16Array::New(len); |
| 345 } | 387 } |
| 346 | 388 |
| 347 | 389 |
| 390 DEFINE_NATIVE_ENTRY(Uint16Array_newTransferrable, 1) { | |
| 391 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 392 intptr_t len = length.Value(); | |
| 393 LengthCheck(len, Uint16Array::kMaxElements); | |
| 394 uint16_t* bytes = OS::AllocateAlignedArray<uint16_t>( | |
|
siva
2012/11/30 22:15:53
The name 'byte' here is not very readable,
why not
cshapiro
2012/11/30 22:18:11
The object.h class calls this value data
:-)
siva
2012/11/30 22:33:21
Sure data is fine too.
On 2012/11/30 22:18:11, cs
| |
| 395 len, | |
| 396 ExternalByteArrayData<uint16_t>::kAlignment); | |
| 397 return ExternalUint16Array::New(bytes, | |
| 398 len, | |
| 399 bytes, | |
| 400 OS::AlignedFree); | |
| 401 } | |
| 402 | |
| 403 | |
| 348 DEFINE_NATIVE_ENTRY(Uint16Array_getIndexed, 2) { | 404 DEFINE_NATIVE_ENTRY(Uint16Array_getIndexed, 2) { |
| 349 GETTER(Uint16Array, Smi, uint16_t); | 405 GETTER(Uint16Array, Smi, uint16_t); |
| 350 } | 406 } |
| 351 | 407 |
| 352 | 408 |
| 353 DEFINE_NATIVE_ENTRY(Uint16Array_setIndexed, 3) { | 409 DEFINE_NATIVE_ENTRY(Uint16Array_setIndexed, 3) { |
| 354 SETTER(Uint16Array, Smi, Value, uint16_t); | 410 SETTER(Uint16Array, Smi, Value, uint16_t); |
| 355 } | 411 } |
| 356 | 412 |
| 357 | 413 |
| 358 // Int32Array | 414 // Int32Array |
| 359 | 415 |
| 360 DEFINE_NATIVE_ENTRY(Int32Array_new, 1) { | 416 DEFINE_NATIVE_ENTRY(Int32Array_new, 1) { |
| 361 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 417 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 362 intptr_t len = length.Value(); | 418 intptr_t len = length.Value(); |
| 363 LengthCheck(len, Int32Array::kMaxElements); | 419 LengthCheck(len, Int32Array::kMaxElements); |
| 364 return Int32Array::New(len); | 420 return Int32Array::New(len); |
| 365 } | 421 } |
| 366 | 422 |
| 367 | 423 |
| 424 DEFINE_NATIVE_ENTRY(Int32Array_newTransferrable, 1) { | |
| 425 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 426 intptr_t len = length.Value(); | |
| 427 LengthCheck(len, Int32Array::kMaxElements); | |
| 428 int32_t* bytes = OS::AllocateAlignedArray<int32_t>( | |
| 429 len, | |
| 430 ExternalByteArrayData<int32_t>::kAlignment); | |
| 431 return ExternalInt32Array::New(bytes, | |
| 432 len, | |
| 433 bytes, | |
| 434 OS::AlignedFree); | |
| 435 } | |
| 436 | |
| 437 | |
| 368 DEFINE_NATIVE_ENTRY(Int32Array_getIndexed, 2) { | 438 DEFINE_NATIVE_ENTRY(Int32Array_getIndexed, 2) { |
| 369 GETTER(Int32Array, Integer, int32_t); | 439 GETTER(Int32Array, Integer, int32_t); |
| 370 } | 440 } |
| 371 | 441 |
| 372 | 442 |
| 373 DEFINE_NATIVE_ENTRY(Int32Array_setIndexed, 3) { | 443 DEFINE_NATIVE_ENTRY(Int32Array_setIndexed, 3) { |
| 374 SETTER(Int32Array, Integer, AsInt64Value, int32_t); | 444 SETTER(Int32Array, Integer, AsInt64Value, int32_t); |
| 375 } | 445 } |
| 376 | 446 |
| 377 | 447 |
| 378 // Uint32Array | 448 // Uint32Array |
| 379 | 449 |
| 380 DEFINE_NATIVE_ENTRY(Uint32Array_new, 1) { | 450 DEFINE_NATIVE_ENTRY(Uint32Array_new, 1) { |
| 381 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 451 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 382 intptr_t len = length.Value(); | 452 intptr_t len = length.Value(); |
| 383 LengthCheck(len, Uint32Array::kMaxElements); | 453 LengthCheck(len, Uint32Array::kMaxElements); |
| 384 return Uint32Array::New(len); | 454 return Uint32Array::New(len); |
| 385 } | 455 } |
| 386 | 456 |
| 387 | 457 |
| 458 DEFINE_NATIVE_ENTRY(Uint32Array_newTransferrable, 1) { | |
| 459 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 460 intptr_t len = length.Value(); | |
| 461 LengthCheck(len, Uint32Array::kMaxElements); | |
| 462 uint32_t* bytes = OS::AllocateAlignedArray<uint32_t>( | |
| 463 len, | |
| 464 ExternalByteArrayData<uint32_t>::kAlignment); | |
| 465 return ExternalUint32Array::New(bytes, | |
| 466 len, | |
| 467 bytes, | |
| 468 OS::AlignedFree); | |
| 469 } | |
| 470 | |
| 471 | |
| 388 DEFINE_NATIVE_ENTRY(Uint32Array_getIndexed, 2) { | 472 DEFINE_NATIVE_ENTRY(Uint32Array_getIndexed, 2) { |
| 389 GETTER(Uint32Array, Integer, uint32_t); | 473 GETTER(Uint32Array, Integer, uint32_t); |
| 390 } | 474 } |
| 391 | 475 |
| 392 | 476 |
| 393 DEFINE_NATIVE_ENTRY(Uint32Array_setIndexed, 3) { | 477 DEFINE_NATIVE_ENTRY(Uint32Array_setIndexed, 3) { |
| 394 SETTER(Uint32Array, Integer, AsInt64Value, uint32_t); | 478 SETTER(Uint32Array, Integer, AsInt64Value, uint32_t); |
| 395 } | 479 } |
| 396 | 480 |
| 397 | 481 |
| 398 // Int64Array | 482 // Int64Array |
| 399 | 483 |
| 400 DEFINE_NATIVE_ENTRY(Int64Array_new, 1) { | 484 DEFINE_NATIVE_ENTRY(Int64Array_new, 1) { |
| 401 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 485 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 402 intptr_t len = length.Value(); | 486 intptr_t len = length.Value(); |
| 403 LengthCheck(len, Int64Array::kMaxElements); | 487 LengthCheck(len, Int64Array::kMaxElements); |
| 404 return Int64Array::New(len); | 488 return Int64Array::New(len); |
| 405 } | 489 } |
| 406 | 490 |
| 407 | 491 |
| 492 DEFINE_NATIVE_ENTRY(Int64Array_newTransferrable, 1) { | |
| 493 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 494 intptr_t len = length.Value(); | |
| 495 LengthCheck(len, Int64Array::kMaxElements); | |
| 496 int64_t* bytes = OS::AllocateAlignedArray<int64_t>( | |
| 497 len, | |
| 498 ExternalByteArrayData<int64_t>::kAlignment); | |
| 499 return ExternalInt64Array::New(bytes, | |
| 500 len, | |
| 501 bytes, | |
| 502 OS::AlignedFree); | |
| 503 } | |
| 504 | |
| 505 | |
| 408 DEFINE_NATIVE_ENTRY(Int64Array_getIndexed, 2) { | 506 DEFINE_NATIVE_ENTRY(Int64Array_getIndexed, 2) { |
| 409 GETTER(Int64Array, Integer, int64_t); | 507 GETTER(Int64Array, Integer, int64_t); |
| 410 } | 508 } |
| 411 | 509 |
| 412 | 510 |
| 413 DEFINE_NATIVE_ENTRY(Int64Array_setIndexed, 3) { | 511 DEFINE_NATIVE_ENTRY(Int64Array_setIndexed, 3) { |
| 414 SETTER(Int64Array, Integer, AsInt64Value, int64_t); | 512 SETTER(Int64Array, Integer, AsInt64Value, int64_t); |
| 415 } | 513 } |
| 416 | 514 |
| 417 | 515 |
| 418 // Uint64Array | 516 // Uint64Array |
| 419 | 517 |
| 420 DEFINE_NATIVE_ENTRY(Uint64Array_new, 1) { | 518 DEFINE_NATIVE_ENTRY(Uint64Array_new, 1) { |
| 421 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 519 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 422 intptr_t len = length.Value(); | 520 intptr_t len = length.Value(); |
| 423 LengthCheck(len, Uint64Array::kMaxElements); | 521 LengthCheck(len, Uint64Array::kMaxElements); |
| 424 return Uint64Array::New(len); | 522 return Uint64Array::New(len); |
| 425 } | 523 } |
| 426 | 524 |
| 427 | 525 |
| 526 DEFINE_NATIVE_ENTRY(Uint64Array_newTransferrable, 1) { | |
| 527 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 528 intptr_t len = length.Value(); | |
| 529 LengthCheck(len, Uint64Array::kMaxElements); | |
| 530 uint64_t* bytes = OS::AllocateAlignedArray<uint64_t>( | |
| 531 len, | |
| 532 ExternalByteArrayData<uint64_t>::kAlignment); | |
| 533 return ExternalUint64Array::New(bytes, | |
| 534 len, | |
| 535 bytes, | |
| 536 OS::AlignedFree); | |
| 537 } | |
| 538 | |
| 539 | |
| 428 DEFINE_NATIVE_ENTRY(Uint64Array_getIndexed, 2) { | 540 DEFINE_NATIVE_ENTRY(Uint64Array_getIndexed, 2) { |
| 429 GETTER_UINT64(Uint64Array); | 541 GETTER_UINT64(Uint64Array); |
| 430 } | 542 } |
| 431 | 543 |
| 432 | 544 |
| 433 DEFINE_NATIVE_ENTRY(Uint64Array_setIndexed, 3) { | 545 DEFINE_NATIVE_ENTRY(Uint64Array_setIndexed, 3) { |
| 434 SETTER_UINT64(Uint64Array); | 546 SETTER_UINT64(Uint64Array); |
| 435 } | 547 } |
| 436 | 548 |
| 437 | 549 |
| 438 // Float32Array | 550 // Float32Array |
| 439 | 551 |
| 440 DEFINE_NATIVE_ENTRY(Float32Array_new, 1) { | 552 DEFINE_NATIVE_ENTRY(Float32Array_new, 1) { |
| 441 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 553 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 442 intptr_t len = length.Value(); | 554 intptr_t len = length.Value(); |
| 443 LengthCheck(len, Float32Array::kMaxElements); | 555 LengthCheck(len, Float32Array::kMaxElements); |
| 444 return Float32Array::New(len); | 556 return Float32Array::New(len); |
| 445 } | 557 } |
| 446 | 558 |
| 447 | 559 |
| 560 DEFINE_NATIVE_ENTRY(Float32Array_newTransferrable, 1) { | |
| 561 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 562 intptr_t len = length.Value(); | |
| 563 LengthCheck(len, Float32Array::kMaxElements); | |
| 564 float* bytes = OS::AllocateAlignedArray<float>( | |
| 565 len, | |
| 566 ExternalByteArrayData<float>::kAlignment); | |
| 567 return ExternalFloat32Array::New(bytes, | |
| 568 len, | |
| 569 bytes, | |
| 570 OS::AlignedFree); | |
| 571 } | |
| 572 | |
| 573 | |
| 448 DEFINE_NATIVE_ENTRY(Float32Array_getIndexed, 2) { | 574 DEFINE_NATIVE_ENTRY(Float32Array_getIndexed, 2) { |
| 449 GETTER(Float32Array, Double, float); | 575 GETTER(Float32Array, Double, float); |
| 450 } | 576 } |
| 451 | 577 |
| 452 | 578 |
| 453 DEFINE_NATIVE_ENTRY(Float32Array_setIndexed, 3) { | 579 DEFINE_NATIVE_ENTRY(Float32Array_setIndexed, 3) { |
| 454 SETTER(Float32Array, Double, value, float); | 580 SETTER(Float32Array, Double, value, float); |
| 455 } | 581 } |
| 456 | 582 |
| 457 | 583 |
| 458 // Float64Array | 584 // Float64Array |
| 459 | 585 |
| 460 DEFINE_NATIVE_ENTRY(Float64Array_new, 1) { | 586 DEFINE_NATIVE_ENTRY(Float64Array_new, 1) { |
| 461 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | 587 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); |
| 462 intptr_t len = length.Value(); | 588 intptr_t len = length.Value(); |
| 463 LengthCheck(len, Float64Array::kMaxElements); | 589 LengthCheck(len, Float64Array::kMaxElements); |
| 464 return Float64Array::New(len); | 590 return Float64Array::New(len); |
| 465 } | 591 } |
| 466 | 592 |
| 467 | 593 |
| 594 DEFINE_NATIVE_ENTRY(Float64Array_newTransferrable, 1) { | |
| 595 GET_NATIVE_ARGUMENT(Smi, length, arguments->NativeArgAt(0)); | |
| 596 intptr_t len = length.Value(); | |
| 597 LengthCheck(len, Float64Array::kMaxElements); | |
| 598 double* bytes = OS::AllocateAlignedArray<double>( | |
| 599 len, | |
| 600 ExternalByteArrayData<double>::kAlignment); | |
| 601 return ExternalFloat64Array::New(bytes, | |
| 602 len, | |
| 603 bytes, | |
| 604 OS::AlignedFree); | |
| 605 } | |
| 606 | |
| 607 | |
| 468 DEFINE_NATIVE_ENTRY(Float64Array_getIndexed, 2) { | 608 DEFINE_NATIVE_ENTRY(Float64Array_getIndexed, 2) { |
| 469 GETTER(Float64Array, Double, double); | 609 GETTER(Float64Array, Double, double); |
| 470 } | 610 } |
| 471 | 611 |
| 472 | 612 |
| 473 DEFINE_NATIVE_ENTRY(Float64Array_setIndexed, 3) { | 613 DEFINE_NATIVE_ENTRY(Float64Array_setIndexed, 3) { |
| 474 SETTER(Float64Array, Double, value, double); | 614 SETTER(Float64Array, Double, value, double); |
| 475 } | 615 } |
| 476 | 616 |
| 477 | 617 |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 588 DEFINE_NATIVE_ENTRY(ExternalFloat64Array_getIndexed, 2) { | 728 DEFINE_NATIVE_ENTRY(ExternalFloat64Array_getIndexed, 2) { |
| 589 GETTER(ExternalFloat64Array, Double, double); | 729 GETTER(ExternalFloat64Array, Double, double); |
| 590 } | 730 } |
| 591 | 731 |
| 592 | 732 |
| 593 DEFINE_NATIVE_ENTRY(ExternalFloat64Array_setIndexed, 3) { | 733 DEFINE_NATIVE_ENTRY(ExternalFloat64Array_setIndexed, 3) { |
| 594 SETTER(ExternalFloat64Array, Double, value, double); | 734 SETTER(ExternalFloat64Array, Double, value, double); |
| 595 } | 735 } |
| 596 | 736 |
| 597 } // namespace dart | 737 } // namespace dart |
| OLD | NEW |