| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-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 685 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 696 case JSObject::DICTIONARY_ELEMENT: { | 696 case JSObject::DICTIONARY_ELEMENT: { |
| 697 NumberDictionary* dictionary = obj->element_dictionary(); | 697 NumberDictionary* dictionary = obj->element_dictionary(); |
| 698 int entry = dictionary->FindEntry(index); | 698 int entry = dictionary->FindEntry(index); |
| 699 ASSERT(entry != NumberDictionary::kNotFound); | 699 ASSERT(entry != NumberDictionary::kNotFound); |
| 700 PropertyDetails details = dictionary->DetailsAt(entry); | 700 PropertyDetails details = dictionary->DetailsAt(entry); |
| 701 switch (details.type()) { | 701 switch (details.type()) { |
| 702 case CALLBACKS: { | 702 case CALLBACKS: { |
| 703 // This is an accessor property with getter and/or setter. | 703 // This is an accessor property with getter and/or setter. |
| 704 FixedArray* callbacks = | 704 FixedArray* callbacks = |
| 705 FixedArray::cast(dictionary->ValueAt(entry)); | 705 FixedArray::cast(dictionary->ValueAt(entry)); |
| 706 elms->set(IS_ACCESSOR_INDEX,heap->true_value()); | 706 elms->set(IS_ACCESSOR_INDEX, heap->true_value()); |
| 707 elms->set(GETTER_INDEX, callbacks->get(0)); | 707 elms->set(GETTER_INDEX, callbacks->get(0)); |
| 708 elms->set(SETTER_INDEX, callbacks->get(1)); | 708 elms->set(SETTER_INDEX, callbacks->get(1)); |
| 709 break; | 709 break; |
| 710 } | 710 } |
| 711 case NORMAL: | 711 case NORMAL: |
| 712 // This is a data property. | 712 // This is a data property. |
| 713 elms->set(IS_ACCESSOR_INDEX, heap->false_value()); | 713 elms->set(IS_ACCESSOR_INDEX, heap->false_value()); |
| 714 elms->set(VALUE_INDEX, dictionary->ValueAt(entry)); | 714 elms->set(VALUE_INDEX, dictionary->ValueAt(entry)); |
| 715 elms->set(WRITABLE_INDEX, heap->ToBoolean(!details.IsReadOnly())); | 715 elms->set(WRITABLE_INDEX, heap->ToBoolean(!details.IsReadOnly())); |
| 716 break; | 716 break; |
| (...skipping 9898 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10615 #define SETUP_RUNTIME_ENTRIES(Name, argc, resize) \ | 10615 #define SETUP_RUNTIME_ENTRIES(Name, argc, resize) \ |
| 10616 entries_[lut_index].method = &CodeGenerator::Generate##Name; \ | 10616 entries_[lut_index].method = &CodeGenerator::Generate##Name; \ |
| 10617 entries_[lut_index].name = "_" #Name; \ | 10617 entries_[lut_index].name = "_" #Name; \ |
| 10618 entries_[lut_index++].nargs = argc; | 10618 entries_[lut_index++].nargs = argc; |
| 10619 INLINE_RUNTIME_FUNCTION_LIST(SETUP_RUNTIME_ENTRIES); | 10619 INLINE_RUNTIME_FUNCTION_LIST(SETUP_RUNTIME_ENTRIES); |
| 10620 #undef SETUP_RUNTIME_ENTRIES | 10620 #undef SETUP_RUNTIME_ENTRIES |
| 10621 } | 10621 } |
| 10622 | 10622 |
| 10623 | 10623 |
| 10624 } } // namespace v8::internal | 10624 } } // namespace v8::internal |
| OLD | NEW |