Index: lib/byte_array.cc |
=================================================================== |
--- lib/byte_array.cc (revision 11528) |
+++ lib/byte_array.cc (working copy) |
@@ -58,14 +58,15 @@ |
GETTER_ARGUMENTS(ArrayT, ValueT); \ |
RangeCheck(array, index.Value() * sizeof(ValueT), sizeof(ValueT)); \ |
ValueT result = array.At(index.Value()); \ |
- arguments->SetReturn(ObjectT::Handle(ObjectT::New(result))); |
+ return ObjectT::New(result); |
#define SETTER(ArrayT, ObjectT, Getter, ValueT) \ |
SETTER_ARGUMENTS(ArrayT, ObjectT, ValueT); \ |
RangeCheck(array, index.Value() * sizeof(ValueT), sizeof(ValueT)); \ |
ValueT value = value_object.Getter(); \ |
- array.SetAt(index.Value(), value); |
+ array.SetAt(index.Value(), value); \ |
+ return Object::null(); |
#define UNALIGNED_GETTER(ArrayT, ObjectT, ValueT) \ |
@@ -73,7 +74,7 @@ |
RangeCheck(array, index.Value(), sizeof(ValueT)); \ |
ValueT result; \ |
ByteArray::Copy(&result, array, index.Value(), sizeof(ValueT)); \ |
- arguments->SetReturn(ObjectT::Handle(ObjectT::New(result))); |
+ return ObjectT::New(result); |
#define UNALIGNED_SETTER(ArrayT, ObjectT, Getter, ValueT) \ |
@@ -81,9 +82,7 @@ |
RangeCheck(array, index.Value(), sizeof(ValueT)); \ |
ValueT src = value_object.Getter(); \ |
ByteArray::Copy(array, index.Value(), &src, sizeof(ValueT)); \ |
- Integer& result = Integer::Handle(); \ |
- result ^= Integer::New(index.Value() + sizeof(ValueT)); \ |
- arguments->SetReturn(result); |
+ return Integer::New(index.Value() + sizeof(ValueT)); |
#define UINT64_TO_INTEGER(value, integer) \ |
@@ -103,7 +102,7 @@ |
uint64_t value = array.At(index.Value()); \ |
Integer& result = Integer::Handle(); \ |
UINT64_TO_INTEGER(value, result); \ |
- arguments->SetReturn(result); |
+ return result.raw(); |
#define UNALIGNED_GETTER_UINT64(ArrayT) \ |
@@ -113,7 +112,7 @@ |
ByteArray::Copy(&value, array, index.Value(), sizeof(uint64_t)); \ |
Integer& result = Integer::Handle(); \ |
UINT64_TO_INTEGER(value, result); \ |
- arguments->SetReturn(result); |
+ return result.raw(); |
#define INTEGER_TO_UINT64(integer, uint64) \ |
@@ -134,7 +133,8 @@ |
RangeCheck(array, index.Value() * size, size); \ |
uint64_t value; \ |
INTEGER_TO_UINT64(value_object, value); \ |
- array.SetAt(index.Value(), value); |
+ array.SetAt(index.Value(), value); \ |
+ return Object::null(); |
#define UNALIGNED_SETTER_UINT64(ArrayT) \ |
@@ -143,15 +143,12 @@ |
uint64_t value; \ |
INTEGER_TO_UINT64(value_object, value); \ |
ByteArray::Copy(array, index.Value(), &value, sizeof(uint64_t)); \ |
- Integer& result = Integer::Handle(); \ |
- result ^= Integer::New(index.Value() + sizeof(uint64_t)); \ |
- arguments->SetReturn(result); |
+ return Integer::New(index.Value() + sizeof(uint64_t)); |
DEFINE_NATIVE_ENTRY(ByteArray_getLength, 1) { |
GET_NATIVE_ARGUMENT(ByteArray, array, arguments->At(0)); |
- const Smi& length = Smi::Handle(Smi::New(array.Length())); |
- arguments->SetReturn(length); |
+ return Smi::New(array.Length()); |
} |
@@ -274,6 +271,7 @@ |
RangeCheck(src, src_start_value, length_value); |
RangeCheck(dst, dst_start_value, length_value); |
ByteArray::Copy(dst, dst_start_value, src, src_start_value, length_value); |
+ return Object::null(); |
} |
@@ -283,8 +281,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Int8Array::kMaxElements); |
- const Int8Array& new_array = Int8Array::Handle(Int8Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Int8Array::New(len); |
} |
@@ -304,8 +301,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Uint8Array::kMaxElements); |
- const Uint8Array& new_array = Uint8Array::Handle(Uint8Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Uint8Array::New(len); |
} |
@@ -325,8 +321,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Int16Array::kMaxElements); |
- const Int16Array& new_array = Int16Array::Handle(Int16Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Int16Array::New(len); |
} |
@@ -346,8 +341,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Uint16Array::kMaxElements); |
- const Uint16Array& new_array = Uint16Array::Handle(Uint16Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Uint16Array::New(len); |
} |
@@ -367,8 +361,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Int32Array::kMaxElements); |
- const Int32Array& new_array = Int32Array::Handle(Int32Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Int32Array::New(len); |
} |
@@ -388,8 +381,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Uint32Array::kMaxElements); |
- const Uint32Array& new_array = Uint32Array::Handle(Uint32Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Uint32Array::New(len); |
} |
@@ -409,8 +401,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Int64Array::kMaxElements); |
- const Int64Array& new_array = Int64Array::Handle(Int64Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Int64Array::New(len); |
} |
@@ -430,8 +421,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Uint64Array::kMaxElements); |
- const Uint64Array& new_array = Uint64Array::Handle(Uint64Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Uint64Array::New(len); |
} |
@@ -451,8 +441,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Float32Array::kMaxElements); |
- const Float32Array& new_array = Float32Array::Handle(Float32Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Float32Array::New(len); |
} |
@@ -472,8 +461,7 @@ |
GET_NATIVE_ARGUMENT(Smi, length, arguments->At(0)); |
intptr_t len = length.Value(); |
LengthCheck(len, Float64Array::kMaxElements); |
- const Float64Array& new_array = Float64Array::Handle(Float64Array::New(len)); |
- arguments->SetReturn(new_array); |
+ return Float64Array::New(len); |
} |