OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
6 | 6 |
7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" |
9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" |
10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" |
(...skipping 1825 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1836 break; | 1836 break; |
1837 case kS390_LoadWordS16: | 1837 case kS390_LoadWordS16: |
1838 ASSEMBLE_LOAD_INTEGER(LoadHalfWordP); | 1838 ASSEMBLE_LOAD_INTEGER(LoadHalfWordP); |
1839 break; | 1839 break; |
1840 case kS390_LoadWordU32: | 1840 case kS390_LoadWordU32: |
1841 ASSEMBLE_LOAD_INTEGER(LoadlW); | 1841 ASSEMBLE_LOAD_INTEGER(LoadlW); |
1842 break; | 1842 break; |
1843 case kS390_LoadWordS32: | 1843 case kS390_LoadWordS32: |
1844 ASSEMBLE_LOAD_INTEGER(LoadW); | 1844 ASSEMBLE_LOAD_INTEGER(LoadW); |
1845 break; | 1845 break; |
| 1846 case kS390_LoadReverse16: |
| 1847 ASSEMBLE_LOAD_INTEGER(lrvh); |
| 1848 break; |
| 1849 case kS390_LoadReverse32: |
| 1850 ASSEMBLE_LOAD_INTEGER(lrv); |
| 1851 break; |
| 1852 case kS390_LoadReverse64: |
| 1853 ASSEMBLE_LOAD_INTEGER(lrvg); |
| 1854 break; |
| 1855 case kS390_LoadReverse16RR: |
| 1856 __ lrvr(i.OutputRegister(), i.InputRegister(0)); |
| 1857 __ rll(i.OutputRegister(), i.OutputRegister(), Operand(16)); |
| 1858 break; |
| 1859 case kS390_LoadReverse32RR: |
| 1860 __ lrvr(i.OutputRegister(), i.InputRegister(0)); |
| 1861 break; |
| 1862 case kS390_LoadReverse64RR: |
| 1863 __ lrvgr(i.OutputRegister(), i.InputRegister(0)); |
| 1864 break; |
1846 #if V8_TARGET_ARCH_S390X | 1865 #if V8_TARGET_ARCH_S390X |
1847 case kS390_LoadWord64: | 1866 case kS390_LoadWord64: |
1848 ASSEMBLE_LOAD_INTEGER(lg); | 1867 ASSEMBLE_LOAD_INTEGER(lg); |
1849 break; | 1868 break; |
1850 #endif | 1869 #endif |
1851 case kS390_LoadFloat32: | 1870 case kS390_LoadFloat32: |
1852 ASSEMBLE_LOAD_FLOAT(LoadFloat32); | 1871 ASSEMBLE_LOAD_FLOAT(LoadFloat32); |
1853 break; | 1872 break; |
1854 case kS390_LoadDouble: | 1873 case kS390_LoadDouble: |
1855 ASSEMBLE_LOAD_FLOAT(LoadDouble); | 1874 ASSEMBLE_LOAD_FLOAT(LoadDouble); |
1856 break; | 1875 break; |
1857 case kS390_StoreWord8: | 1876 case kS390_StoreWord8: |
1858 ASSEMBLE_STORE_INTEGER(StoreByte); | 1877 ASSEMBLE_STORE_INTEGER(StoreByte); |
1859 break; | 1878 break; |
1860 case kS390_StoreWord16: | 1879 case kS390_StoreWord16: |
1861 ASSEMBLE_STORE_INTEGER(StoreHalfWord); | 1880 ASSEMBLE_STORE_INTEGER(StoreHalfWord); |
1862 break; | 1881 break; |
1863 case kS390_StoreWord32: | 1882 case kS390_StoreWord32: |
1864 ASSEMBLE_STORE_INTEGER(StoreW); | 1883 ASSEMBLE_STORE_INTEGER(StoreW); |
1865 break; | 1884 break; |
1866 #if V8_TARGET_ARCH_S390X | 1885 #if V8_TARGET_ARCH_S390X |
1867 case kS390_StoreWord64: | 1886 case kS390_StoreWord64: |
1868 ASSEMBLE_STORE_INTEGER(StoreP); | 1887 ASSEMBLE_STORE_INTEGER(StoreP); |
1869 break; | 1888 break; |
1870 #endif | 1889 #endif |
| 1890 case kS390_StoreReverse16: |
| 1891 ASSEMBLE_STORE_INTEGER(strvh); |
| 1892 break; |
| 1893 case kS390_StoreReverse32: |
| 1894 ASSEMBLE_STORE_INTEGER(strv); |
| 1895 break; |
| 1896 case kS390_StoreReverse64: |
| 1897 ASSEMBLE_STORE_INTEGER(strvg); |
| 1898 break; |
1871 case kS390_StoreFloat32: | 1899 case kS390_StoreFloat32: |
1872 ASSEMBLE_STORE_FLOAT32(); | 1900 ASSEMBLE_STORE_FLOAT32(); |
1873 break; | 1901 break; |
1874 case kS390_StoreDouble: | 1902 case kS390_StoreDouble: |
1875 ASSEMBLE_STORE_DOUBLE(); | 1903 ASSEMBLE_STORE_DOUBLE(); |
1876 break; | 1904 break; |
1877 case kCheckedLoadInt8: | 1905 case kCheckedLoadInt8: |
1878 ASSEMBLE_CHECKED_LOAD_INTEGER(LoadlB); | 1906 ASSEMBLE_CHECKED_LOAD_INTEGER(LoadlB); |
1879 #if V8_TARGET_ARCH_S390X | 1907 #if V8_TARGET_ARCH_S390X |
1880 __ lgbr(i.OutputRegister(), i.OutputRegister()); | 1908 __ lgbr(i.OutputRegister(), i.OutputRegister()); |
(...skipping 549 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2430 padding_size -= 2; | 2458 padding_size -= 2; |
2431 } | 2459 } |
2432 } | 2460 } |
2433 } | 2461 } |
2434 | 2462 |
2435 #undef __ | 2463 #undef __ |
2436 | 2464 |
2437 } // namespace compiler | 2465 } // namespace compiler |
2438 } // namespace internal | 2466 } // namespace internal |
2439 } // namespace v8 | 2467 } // namespace v8 |
OLD | NEW |