| 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 1657 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1668 stream->Add("."); | 1668 stream->Add("."); |
| 1669 stream->Add(*String::cast(*name())->ToCString()); | 1669 stream->Add(*String::cast(*name())->ToCString()); |
| 1670 } | 1670 } |
| 1671 | 1671 |
| 1672 | 1672 |
| 1673 void HLoadKeyedFastElement::PrintDataTo(StringStream* stream) { | 1673 void HLoadKeyedFastElement::PrintDataTo(StringStream* stream) { |
| 1674 object()->PrintNameTo(stream); | 1674 object()->PrintNameTo(stream); |
| 1675 stream->Add("["); | 1675 stream->Add("["); |
| 1676 key()->PrintNameTo(stream); | 1676 key()->PrintNameTo(stream); |
| 1677 stream->Add("]"); | 1677 stream->Add("]"); |
| 1678 if (hole_check_mode_ == PERFORM_HOLE_CHECK) { |
| 1679 stream->Add(" check_hole"); |
| 1680 } |
| 1678 } | 1681 } |
| 1679 | 1682 |
| 1680 | 1683 |
| 1681 bool HLoadKeyedFastElement::RequiresHoleCheck() { | 1684 bool HLoadKeyedFastElement::RequiresHoleCheck() { |
| 1682 if (hole_check_mode_ == OMIT_HOLE_CHECK) { | 1685 if (hole_check_mode_ == OMIT_HOLE_CHECK) { |
| 1683 return false; | 1686 return false; |
| 1684 } | 1687 } |
| 1685 | 1688 |
| 1686 for (HUseIterator it(uses()); !it.Done(); it.Advance()) { | 1689 for (HUseIterator it(uses()); !it.Done(); it.Advance()) { |
| 1687 HValue* use = it.value(); | 1690 HValue* use = it.value(); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1719 HForInCacheArray::cast(key_load->object()); | 1722 HForInCacheArray::cast(key_load->object()); |
| 1720 | 1723 |
| 1721 if (names_cache->enumerable() == object()) { | 1724 if (names_cache->enumerable() == object()) { |
| 1722 HForInCacheArray* index_cache = | 1725 HForInCacheArray* index_cache = |
| 1723 names_cache->index_cache(); | 1726 names_cache->index_cache(); |
| 1724 HCheckMapValue* map_check = | 1727 HCheckMapValue* map_check = |
| 1725 new(block()->zone()) HCheckMapValue(object(), names_cache->map()); | 1728 new(block()->zone()) HCheckMapValue(object(), names_cache->map()); |
| 1726 HInstruction* index = new(block()->zone()) HLoadKeyedFastElement( | 1729 HInstruction* index = new(block()->zone()) HLoadKeyedFastElement( |
| 1727 index_cache, | 1730 index_cache, |
| 1728 key_load->key(), | 1731 key_load->key(), |
| 1729 HLoadKeyedFastElement::OMIT_HOLE_CHECK); | 1732 OMIT_HOLE_CHECK); |
| 1730 HLoadFieldByIndex* load = new(block()->zone()) HLoadFieldByIndex( | 1733 HLoadFieldByIndex* load = new(block()->zone()) HLoadFieldByIndex( |
| 1731 object(), index); | 1734 object(), index); |
| 1732 map_check->InsertBefore(this); | 1735 map_check->InsertBefore(this); |
| 1733 index->InsertBefore(this); | 1736 index->InsertBefore(this); |
| 1734 load->InsertBefore(this); | 1737 load->InsertBefore(this); |
| 1735 return load; | 1738 return load; |
| 1736 } | 1739 } |
| 1737 } | 1740 } |
| 1738 } | 1741 } |
| 1739 | 1742 |
| (...skipping 27 matching lines...) Expand all Loading... |
| 1767 case EXTERNAL_FLOAT_ELEMENTS: | 1770 case EXTERNAL_FLOAT_ELEMENTS: |
| 1768 stream->Add("float"); | 1771 stream->Add("float"); |
| 1769 break; | 1772 break; |
| 1770 case EXTERNAL_DOUBLE_ELEMENTS: | 1773 case EXTERNAL_DOUBLE_ELEMENTS: |
| 1771 stream->Add("double"); | 1774 stream->Add("double"); |
| 1772 break; | 1775 break; |
| 1773 case EXTERNAL_PIXEL_ELEMENTS: | 1776 case EXTERNAL_PIXEL_ELEMENTS: |
| 1774 stream->Add("pixel"); | 1777 stream->Add("pixel"); |
| 1775 break; | 1778 break; |
| 1776 case FAST_ELEMENTS: | 1779 case FAST_ELEMENTS: |
| 1777 case FAST_SMI_ONLY_ELEMENTS: | 1780 case FAST_SMI_ELEMENTS: |
| 1778 case FAST_DOUBLE_ELEMENTS: | 1781 case FAST_DOUBLE_ELEMENTS: |
| 1782 case FAST_HOLEY_ELEMENTS: |
| 1783 case FAST_HOLEY_SMI_ELEMENTS: |
| 1784 case FAST_HOLEY_DOUBLE_ELEMENTS: |
| 1779 case DICTIONARY_ELEMENTS: | 1785 case DICTIONARY_ELEMENTS: |
| 1780 case NON_STRICT_ARGUMENTS_ELEMENTS: | 1786 case NON_STRICT_ARGUMENTS_ELEMENTS: |
| 1781 UNREACHABLE(); | 1787 UNREACHABLE(); |
| 1782 break; | 1788 break; |
| 1783 } | 1789 } |
| 1784 stream->Add("["); | 1790 stream->Add("["); |
| 1785 key()->PrintNameTo(stream); | 1791 key()->PrintNameTo(stream); |
| 1786 stream->Add("]"); | 1792 stream->Add("]"); |
| 1787 } | 1793 } |
| 1788 | 1794 |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1865 break; | 1871 break; |
| 1866 case EXTERNAL_FLOAT_ELEMENTS: | 1872 case EXTERNAL_FLOAT_ELEMENTS: |
| 1867 stream->Add("float"); | 1873 stream->Add("float"); |
| 1868 break; | 1874 break; |
| 1869 case EXTERNAL_DOUBLE_ELEMENTS: | 1875 case EXTERNAL_DOUBLE_ELEMENTS: |
| 1870 stream->Add("double"); | 1876 stream->Add("double"); |
| 1871 break; | 1877 break; |
| 1872 case EXTERNAL_PIXEL_ELEMENTS: | 1878 case EXTERNAL_PIXEL_ELEMENTS: |
| 1873 stream->Add("pixel"); | 1879 stream->Add("pixel"); |
| 1874 break; | 1880 break; |
| 1875 case FAST_SMI_ONLY_ELEMENTS: | 1881 case FAST_SMI_ELEMENTS: |
| 1876 case FAST_ELEMENTS: | 1882 case FAST_ELEMENTS: |
| 1877 case FAST_DOUBLE_ELEMENTS: | 1883 case FAST_DOUBLE_ELEMENTS: |
| 1884 case FAST_HOLEY_SMI_ELEMENTS: |
| 1885 case FAST_HOLEY_ELEMENTS: |
| 1886 case FAST_HOLEY_DOUBLE_ELEMENTS: |
| 1878 case DICTIONARY_ELEMENTS: | 1887 case DICTIONARY_ELEMENTS: |
| 1879 case NON_STRICT_ARGUMENTS_ELEMENTS: | 1888 case NON_STRICT_ARGUMENTS_ELEMENTS: |
| 1880 UNREACHABLE(); | 1889 UNREACHABLE(); |
| 1881 break; | 1890 break; |
| 1882 } | 1891 } |
| 1883 stream->Add("["); | 1892 stream->Add("["); |
| 1884 key()->PrintNameTo(stream); | 1893 key()->PrintNameTo(stream); |
| 1885 stream->Add("] = "); | 1894 stream->Add("] = "); |
| 1886 value()->PrintNameTo(stream); | 1895 value()->PrintNameTo(stream); |
| 1887 } | 1896 } |
| 1888 | 1897 |
| 1889 | 1898 |
| 1890 void HTransitionElementsKind::PrintDataTo(StringStream* stream) { | 1899 void HTransitionElementsKind::PrintDataTo(StringStream* stream) { |
| 1891 object()->PrintNameTo(stream); | 1900 object()->PrintNameTo(stream); |
| 1892 stream->Add(" %p -> %p", *original_map(), *transitioned_map()); | 1901 ElementsKind from_kind = original_map()->elements_kind(); |
| 1902 ElementsKind to_kind = transitioned_map()->elements_kind(); |
| 1903 stream->Add(" %p [%s] -> %p [%s]", |
| 1904 *original_map(), |
| 1905 ElementsAccessor::ForKind(from_kind)->name(), |
| 1906 *transitioned_map(), |
| 1907 ElementsAccessor::ForKind(to_kind)->name()); |
| 1893 } | 1908 } |
| 1894 | 1909 |
| 1895 | 1910 |
| 1896 void HLoadGlobalCell::PrintDataTo(StringStream* stream) { | 1911 void HLoadGlobalCell::PrintDataTo(StringStream* stream) { |
| 1897 stream->Add("[%p]", *cell()); | 1912 stream->Add("[%p]", *cell()); |
| 1898 if (!details_.IsDontDelete()) stream->Add(" (deleteable)"); | 1913 if (!details_.IsDontDelete()) stream->Add(" (deleteable)"); |
| 1899 if (details_.IsReadOnly()) stream->Add(" (read-only)"); | 1914 if (details_.IsReadOnly()) stream->Add(" (read-only)"); |
| 1900 } | 1915 } |
| 1901 | 1916 |
| 1902 | 1917 |
| (...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2426 | 2441 |
| 2427 | 2442 |
| 2428 void HCheckPrototypeMaps::Verify() { | 2443 void HCheckPrototypeMaps::Verify() { |
| 2429 HInstruction::Verify(); | 2444 HInstruction::Verify(); |
| 2430 ASSERT(HasNoUses()); | 2445 ASSERT(HasNoUses()); |
| 2431 } | 2446 } |
| 2432 | 2447 |
| 2433 #endif | 2448 #endif |
| 2434 | 2449 |
| 2435 } } // namespace v8::internal | 2450 } } // namespace v8::internal |
| OLD | NEW |