| Index: src/arm/code-stubs-arm.cc
|
| diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc
|
| index 98a835fd1a5adb0b3b461a92edd452a49566020a..ba98b9631536d0f6dd674c84d3390b343cdc79eb 100644
|
| --- a/src/arm/code-stubs-arm.cc
|
| +++ b/src/arm/code-stubs-arm.cc
|
| @@ -246,6 +246,17 @@ void InternalArrayNArgumentsConstructorStub::InitializeInterfaceDescriptor(
|
| }
|
|
|
|
|
| +void UnaryOpStub::InitializeInterfaceDescriptor(
|
| + Isolate* isolate,
|
| + CodeStubInterfaceDescriptor* descriptor) {
|
| + static Register registers[] = { r0 };
|
| + descriptor->register_param_count_ = 1;
|
| + descriptor->register_params_ = registers;
|
| + descriptor->deoptimization_handler_ =
|
| + FUNCTION_ADDR(UnaryOpIC_Miss);
|
| +}
|
| +
|
| +
|
| void StoreGlobalStub::InitializeInterfaceDescriptor(
|
| Isolate* isolate,
|
| CodeStubInterfaceDescriptor* descriptor) {
|
| @@ -509,8 +520,9 @@ void FastNewBlockContextStub::Generate(MacroAssembler* masm) {
|
| Label after_sentinel;
|
| __ JumpIfNotSmi(r3, &after_sentinel);
|
| if (FLAG_debug_code) {
|
| + const char* message = "Expected 0 as a Smi sentinel";
|
| __ cmp(r3, Operand::Zero());
|
| - __ Assert(eq, kExpected0AsASmiSentinel);
|
| + __ Assert(eq, message);
|
| }
|
| __ ldr(r3, GlobalObjectOperand());
|
| __ ldr(r3, FieldMemOperand(r3, GlobalObject::kNativeContextOffset));
|
| @@ -3905,9 +3917,9 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
|
| __ ldr(regexp_data, FieldMemOperand(r0, JSRegExp::kDataOffset));
|
| if (FLAG_debug_code) {
|
| __ SmiTst(regexp_data);
|
| - __ Check(ne, kUnexpectedTypeForRegExpDataFixedArrayExpected);
|
| + __ Check(ne, "Unexpected type for RegExp data, FixedArray expected");
|
| __ CompareObjectType(regexp_data, r0, r0, FIXED_ARRAY_TYPE);
|
| - __ Check(eq, kUnexpectedTypeForRegExpDataFixedArrayExpected);
|
| + __ Check(eq, "Unexpected type for RegExp data, FixedArray expected");
|
| }
|
|
|
| // regexp_data: RegExp data (FixedArray)
|
| @@ -4249,7 +4261,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) {
|
| // Assert that we do not have a cons or slice (indirect strings) here.
|
| // Sequential strings have already been ruled out.
|
| __ tst(r0, Operand(kIsIndirectStringMask));
|
| - __ Assert(eq, kExternalStringExpectedButNotFound);
|
| + __ Assert(eq, "external string expected, but not found");
|
| }
|
| __ ldr(subject,
|
| FieldMemOperand(subject, ExternalString::kResourceDataOffset));
|
| @@ -4631,7 +4643,7 @@ void StringCharCodeAtGenerator::GenerateFast(MacroAssembler* masm) {
|
| void StringCharCodeAtGenerator::GenerateSlow(
|
| MacroAssembler* masm,
|
| const RuntimeCallHelper& call_helper) {
|
| - __ Abort(kUnexpectedFallthroughToCharCodeAtSlowCase);
|
| + __ Abort("Unexpected fallthrough to CharCodeAt slow case");
|
|
|
| // Index is not a smi.
|
| __ bind(&index_not_smi_);
|
| @@ -4676,7 +4688,7 @@ void StringCharCodeAtGenerator::GenerateSlow(
|
| call_helper.AfterCall(masm);
|
| __ jmp(&exit_);
|
|
|
| - __ Abort(kUnexpectedFallthroughFromCharCodeAtSlowCase);
|
| + __ Abort("Unexpected fallthrough from CharCodeAt slow case");
|
| }
|
|
|
|
|
| @@ -4706,7 +4718,7 @@ void StringCharFromCodeGenerator::GenerateFast(MacroAssembler* masm) {
|
| void StringCharFromCodeGenerator::GenerateSlow(
|
| MacroAssembler* masm,
|
| const RuntimeCallHelper& call_helper) {
|
| - __ Abort(kUnexpectedFallthroughToCharFromCodeSlowCase);
|
| + __ Abort("Unexpected fallthrough to CharFromCode slow case");
|
|
|
| __ bind(&slow_case_);
|
| call_helper.BeforeCall(masm);
|
| @@ -4716,7 +4728,7 @@ void StringCharFromCodeGenerator::GenerateSlow(
|
| call_helper.AfterCall(masm);
|
| __ jmp(&exit_);
|
|
|
| - __ Abort(kUnexpectedFallthroughFromCharFromCodeSlowCase);
|
| + __ Abort("Unexpected fallthrough from CharFromCode slow case");
|
| }
|
|
|
|
|
| @@ -4773,7 +4785,7 @@ void StringHelper::GenerateCopyCharactersLong(MacroAssembler* masm,
|
| // Check that destination is actually word aligned if the flag says
|
| // that it is.
|
| __ tst(dest, Operand(kPointerAlignmentMask));
|
| - __ Check(eq, kDestinationOfCopyNotAligned);
|
| + __ Check(eq, "Destination of copy not aligned.");
|
| }
|
|
|
| const int kReadAlignment = 4;
|
| @@ -5002,7 +5014,7 @@ void StringHelper::GenerateTwoCharacterStringTableProbe(MacroAssembler* masm,
|
| if (FLAG_debug_code) {
|
| __ LoadRoot(ip, Heap::kTheHoleValueRootIndex);
|
| __ cmp(ip, candidate);
|
| - __ Assert(eq, kOddballInStringTableIsNotUndefinedOrTheHole);
|
| + __ Assert(eq, "oddball in string table is not undefined or the hole");
|
| }
|
| __ jmp(&next_probe[i]);
|
|
|
| @@ -6900,7 +6912,7 @@ static void CreateArrayDispatch(MacroAssembler* masm) {
|
| }
|
|
|
| // If we reached this point there is a problem.
|
| - __ Abort(kUnexpectedElementsKindInArrayConstructor);
|
| + __ Abort("Unexpected ElementsKind in array constructor");
|
| }
|
|
|
|
|
| @@ -6957,7 +6969,7 @@ static void CreateArrayDispatchOneArgument(MacroAssembler* masm) {
|
| }
|
|
|
| // If we reached this point there is a problem.
|
| - __ Abort(kUnexpectedElementsKindInArrayConstructor);
|
| + __ Abort("Unexpected ElementsKind in array constructor");
|
| }
|
|
|
|
|
| @@ -7018,9 +7030,9 @@ void ArrayConstructorStub::Generate(MacroAssembler* masm) {
|
| __ ldr(r3, FieldMemOperand(r1, JSFunction::kPrototypeOrInitialMapOffset));
|
| // Will both indicate a NULL and a Smi.
|
| __ tst(r3, Operand(kSmiTagMask));
|
| - __ Assert(ne, kUnexpectedInitialMapForArrayFunction);
|
| + __ Assert(ne, "Unexpected initial map for Array function");
|
| __ CompareObjectType(r3, r3, r4, MAP_TYPE);
|
| - __ Assert(eq, kUnexpectedInitialMapForArrayFunction);
|
| + __ Assert(eq, "Unexpected initial map for Array function");
|
|
|
| // We should either have undefined in ebx or a valid cell
|
| Label okay_here;
|
| @@ -7029,7 +7041,7 @@ void ArrayConstructorStub::Generate(MacroAssembler* masm) {
|
| __ b(eq, &okay_here);
|
| __ ldr(r3, FieldMemOperand(r2, 0));
|
| __ cmp(r3, Operand(cell_map));
|
| - __ Assert(eq, kExpectedPropertyCellInRegisterEbx);
|
| + __ Assert(eq, "Expected property cell in register ebx");
|
| __ bind(&okay_here);
|
| }
|
|
|
| @@ -7132,9 +7144,9 @@ void InternalArrayConstructorStub::Generate(MacroAssembler* masm) {
|
| __ ldr(r3, FieldMemOperand(r1, JSFunction::kPrototypeOrInitialMapOffset));
|
| // Will both indicate a NULL and a Smi.
|
| __ tst(r3, Operand(kSmiTagMask));
|
| - __ Assert(ne, kUnexpectedInitialMapForArrayFunction);
|
| + __ Assert(ne, "Unexpected initial map for Array function");
|
| __ CompareObjectType(r3, r3, r4, MAP_TYPE);
|
| - __ Assert(eq, kUnexpectedInitialMapForArrayFunction);
|
| + __ Assert(eq, "Unexpected initial map for Array function");
|
| }
|
|
|
| // Figure out the right elements kind
|
| @@ -7151,7 +7163,7 @@ void InternalArrayConstructorStub::Generate(MacroAssembler* masm) {
|
| __ b(eq, &done);
|
| __ cmp(r3, Operand(FAST_HOLEY_ELEMENTS));
|
| __ Assert(eq,
|
| - kInvalidElementsKindForInternalArrayOrInternalPackedArray);
|
| + "Invalid ElementsKind for InternalArray or InternalPackedArray");
|
| __ bind(&done);
|
| }
|
|
|
|
|