OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 7330 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7341 __ cmp(r3, Operand(cell_map)); | 7341 __ cmp(r3, Operand(cell_map)); |
7342 __ Assert(eq, "Expected property cell in register ebx"); | 7342 __ Assert(eq, "Expected property cell in register ebx"); |
7343 __ bind(&okay_here); | 7343 __ bind(&okay_here); |
7344 } | 7344 } |
7345 | 7345 |
7346 if (FLAG_optimize_constructed_arrays) { | 7346 if (FLAG_optimize_constructed_arrays) { |
7347 Label no_info, switch_ready; | 7347 Label no_info, switch_ready; |
7348 // Get the elements kind and case on that. | 7348 // Get the elements kind and case on that. |
7349 __ cmp(r2, Operand(undefined_sentinel)); | 7349 __ cmp(r2, Operand(undefined_sentinel)); |
7350 __ b(eq, &no_info); | 7350 __ b(eq, &no_info); |
7351 __ ldr(r3, FieldMemOperand(r2, JSGlobalPropertyCell::kValueOffset)); | 7351 __ ldr(r3, FieldMemOperand(r2, PropertyCell::kValueOffset)); |
7352 __ JumpIfNotSmi(r3, &no_info); | 7352 __ JumpIfNotSmi(r3, &no_info); |
7353 __ SmiUntag(r3); | 7353 __ SmiUntag(r3); |
7354 __ jmp(&switch_ready); | 7354 __ jmp(&switch_ready); |
7355 __ bind(&no_info); | 7355 __ bind(&no_info); |
7356 __ mov(r3, Operand(GetInitialFastElementsKind())); | 7356 __ mov(r3, Operand(GetInitialFastElementsKind())); |
7357 __ bind(&switch_ready); | 7357 __ bind(&switch_ready); |
7358 | 7358 |
7359 if (argument_count_ == ANY) { | 7359 if (argument_count_ == ANY) { |
7360 Label not_zero_case, not_one_case; | 7360 Label not_zero_case, not_one_case; |
7361 __ tst(r0, r0); | 7361 __ tst(r0, r0); |
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7490 __ Jump(generic_construct_stub, RelocInfo::CODE_TARGET); | 7490 __ Jump(generic_construct_stub, RelocInfo::CODE_TARGET); |
7491 } | 7491 } |
7492 } | 7492 } |
7493 | 7493 |
7494 | 7494 |
7495 #undef __ | 7495 #undef __ |
7496 | 7496 |
7497 } } // namespace v8::internal | 7497 } } // namespace v8::internal |
7498 | 7498 |
7499 #endif // V8_TARGET_ARCH_ARM | 7499 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |