OLD | NEW |
1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 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 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
459 } | 459 } |
460 | 460 |
461 | 461 |
462 // Init line_ends array with code positions of line ends inside script | 462 // Init line_ends array with code positions of line ends inside script |
463 // source. | 463 // source. |
464 void InitScriptLineEnds(Handle<Script> script) { | 464 void InitScriptLineEnds(Handle<Script> script) { |
465 if (!script->line_ends()->IsUndefined()) return; | 465 if (!script->line_ends()->IsUndefined()) return; |
466 | 466 |
467 if (!script->source()->IsString()) { | 467 if (!script->source()->IsString()) { |
468 ASSERT(script->source()->IsUndefined()); | 468 ASSERT(script->source()->IsUndefined()); |
469 script->set_line_ends(*(Factory::NewFixedArray(0))); | 469 Handle<FixedArray> empty = Factory::NewFixedArray(0); |
| 470 script->set_line_ends(*empty); |
470 ASSERT(script->line_ends()->IsFixedArray()); | 471 ASSERT(script->line_ends()->IsFixedArray()); |
471 return; | 472 return; |
472 } | 473 } |
473 | 474 |
474 Handle<String> src(String::cast(script->source())); | 475 Handle<String> src(String::cast(script->source())); |
475 | 476 |
476 Handle<FixedArray> array = CalculateLineEnds(src, true); | 477 Handle<FixedArray> array = CalculateLineEnds(src, true); |
477 | 478 |
478 script->set_line_ends(*array); | 479 script->set_line_ends(*array); |
479 ASSERT(script->line_ends()->IsFixedArray()); | 480 ASSERT(script->line_ends()->IsFixedArray()); |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
822 | 823 |
823 OptimizedObjectForAddingMultipleProperties:: | 824 OptimizedObjectForAddingMultipleProperties:: |
824 ~OptimizedObjectForAddingMultipleProperties() { | 825 ~OptimizedObjectForAddingMultipleProperties() { |
825 // Reoptimize the object to allow fast property access. | 826 // Reoptimize the object to allow fast property access. |
826 if (has_been_transformed_) { | 827 if (has_been_transformed_) { |
827 TransformToFastProperties(object_, unused_property_fields_); | 828 TransformToFastProperties(object_, unused_property_fields_); |
828 } | 829 } |
829 } | 830 } |
830 | 831 |
831 } } // namespace v8::internal | 832 } } // namespace v8::internal |
OLD | NEW |