Chromium Code Reviews| Index: src/objects.cc |
| diff --git a/src/objects.cc b/src/objects.cc |
| index d9bb5b1f1c3dcd8adc558a426151ee2bb6482cc6..6008c33956ebd9b0246e563a900a2d3f9d4cbe8f 100644 |
| --- a/src/objects.cc |
| +++ b/src/objects.cc |
| @@ -97,6 +97,7 @@ bool Object::BooleanValue() { |
| if (IsUndetectableObject()) return false; // Undetectable object is false. |
| if (IsString()) return String::cast(this)->length() != 0; |
| if (IsHeapNumber()) return HeapNumber::cast(this)->HeapNumberBooleanValue(); |
| + if (IsFloat32x4()) return Float32x4::cast(this)->Float32x4BooleanValue(); |
|
titzer
2015/06/03 13:27:15
Maybe it's better just to return true for now here
bbudge
2015/06/03 20:31:48
Done. (I'll remove the Float32x4BooleanValue() fun
|
| return true; |
| } |
| @@ -1400,6 +1401,12 @@ void HeapObject::HeapObjectShortPrint(std::ostream& os) { // NOLINT |
| os << '>'; |
| break; |
| } |
| + case FLOAT32X4_TYPE: { |
| + os << "<Float32x4: "; |
| + Float32x4::cast(this)->Float32x4Print(os); |
| + os << '>'; |
| + break; |
| + } |
| case JS_PROXY_TYPE: |
| os << "<JSProxy>"; |
| break; |
| @@ -1543,6 +1550,7 @@ void HeapObject::IterateBody(InstanceType type, int object_size, |
| case HEAP_NUMBER_TYPE: |
| case MUTABLE_HEAP_NUMBER_TYPE: |
| + case FLOAT32X4_TYPE: |
| case FILLER_TYPE: |
| case BYTE_ARRAY_TYPE: |
| case FREE_SPACE_TYPE: |
| @@ -1588,6 +1596,15 @@ void HeapNumber::HeapNumberPrint(std::ostream& os) { // NOLINT |
| } |
| +bool Float32x4::Float32x4BooleanValue() { return true; } |
| + |
| + |
| +void Float32x4::Float32x4Print(std::ostream& os) { // NOLINT |
| + os << get_lane(0) << "," << get_lane(1) << "," << get_lane(2) << "," |
| + << get_lane(3); |
| +} |
| + |
| + |
| String* JSReceiver::class_name() { |
| if (IsJSFunction() || IsJSFunctionProxy()) { |
| return GetHeap()->Function_string(); |