| Index: src/crankshaft/hydrogen.cc
|
| diff --git a/src/crankshaft/hydrogen.cc b/src/crankshaft/hydrogen.cc
|
| index d6fc7456d5d67b97a775bd4e22fa8a18c3e219f5..43c53d851485c831acc0122d32e56dbe43764638 100644
|
| --- a/src/crankshaft/hydrogen.cc
|
| +++ b/src/crankshaft/hydrogen.cc
|
| @@ -9928,6 +9928,23 @@ void HOptimizedGraphBuilder::GenerateArrayBufferViewGetByteOffset(
|
| FieldIndex::ForInObjectOffset(JSArrayBufferView::kByteOffsetOffset)));
|
| }
|
|
|
| +void HOptimizedGraphBuilder::GenerateArrayBufferViewWasNeutered(
|
| + CallRuntime* expr) {
|
| + NoObservableSideEffectsScope scope(this);
|
| + DCHECK_EQ(expr->arguments()->length(), 1);
|
| + CHECK_ALIVE(VisitForValue(expr->arguments()->at(0)));
|
| + HValue* view = Pop();
|
| +
|
| + HInstruction* buffer = Add<HLoadNamedField>(
|
| + view, nullptr, HObjectAccess::ForJSArrayBufferViewBuffer());
|
| + HInstruction* flags = Add<HLoadNamedField>(
|
| + buffer, nullptr, HObjectAccess::ForJSArrayBufferBitField());
|
| + HValue* was_neutered_mask =
|
| + Add<HConstant>(1 << JSArrayBuffer::WasNeutered::kShift);
|
| + HValue* was_neutered =
|
| + AddUncasted<HBitwise>(Token::BIT_AND, flags, was_neutered_mask);
|
| + return ast_context()->ReturnValue(was_neutered);
|
| +}
|
|
|
| void HOptimizedGraphBuilder::GenerateTypedArrayGetLength(
|
| CallRuntime* expr) {
|
|
|