diff options
Diffstat (limited to 'arch/powerpc/lib/sstep.c')
-rw-r--r-- | arch/powerpc/lib/sstep.c | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c index 846dba2c6360..9c542ec70c5b 100644 --- a/arch/powerpc/lib/sstep.c +++ b/arch/powerpc/lib/sstep.c | |||
@@ -1799,8 +1799,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1799 | goto instr_done; | 1799 | goto instr_done; |
1800 | 1800 | ||
1801 | case LARX: | 1801 | case LARX: |
1802 | if (regs->msr & MSR_LE) | ||
1803 | return 0; | ||
1804 | if (op.ea & (size - 1)) | 1802 | if (op.ea & (size - 1)) |
1805 | break; /* can't handle misaligned */ | 1803 | break; /* can't handle misaligned */ |
1806 | if (!address_ok(regs, op.ea, size)) | 1804 | if (!address_ok(regs, op.ea, size)) |
@@ -1823,8 +1821,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1823 | goto ldst_done; | 1821 | goto ldst_done; |
1824 | 1822 | ||
1825 | case STCX: | 1823 | case STCX: |
1826 | if (regs->msr & MSR_LE) | ||
1827 | return 0; | ||
1828 | if (op.ea & (size - 1)) | 1824 | if (op.ea & (size - 1)) |
1829 | break; /* can't handle misaligned */ | 1825 | break; /* can't handle misaligned */ |
1830 | if (!address_ok(regs, op.ea, size)) | 1826 | if (!address_ok(regs, op.ea, size)) |
@@ -1849,8 +1845,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1849 | goto ldst_done; | 1845 | goto ldst_done; |
1850 | 1846 | ||
1851 | case LOAD: | 1847 | case LOAD: |
1852 | if (regs->msr & MSR_LE) | ||
1853 | return 0; | ||
1854 | err = read_mem(®s->gpr[op.reg], op.ea, size, regs); | 1848 | err = read_mem(®s->gpr[op.reg], op.ea, size, regs); |
1855 | if (!err) { | 1849 | if (!err) { |
1856 | if (op.type & SIGNEXT) | 1850 | if (op.type & SIGNEXT) |
@@ -1862,8 +1856,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1862 | 1856 | ||
1863 | #ifdef CONFIG_PPC_FPU | 1857 | #ifdef CONFIG_PPC_FPU |
1864 | case LOAD_FP: | 1858 | case LOAD_FP: |
1865 | if (regs->msr & MSR_LE) | ||
1866 | return 0; | ||
1867 | if (size == 4) | 1859 | if (size == 4) |
1868 | err = do_fp_load(op.reg, do_lfs, op.ea, size, regs); | 1860 | err = do_fp_load(op.reg, do_lfs, op.ea, size, regs); |
1869 | else | 1861 | else |
@@ -1872,15 +1864,11 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1872 | #endif | 1864 | #endif |
1873 | #ifdef CONFIG_ALTIVEC | 1865 | #ifdef CONFIG_ALTIVEC |
1874 | case LOAD_VMX: | 1866 | case LOAD_VMX: |
1875 | if (regs->msr & MSR_LE) | ||
1876 | return 0; | ||
1877 | err = do_vec_load(op.reg, do_lvx, op.ea & ~0xfUL, regs); | 1867 | err = do_vec_load(op.reg, do_lvx, op.ea & ~0xfUL, regs); |
1878 | goto ldst_done; | 1868 | goto ldst_done; |
1879 | #endif | 1869 | #endif |
1880 | #ifdef CONFIG_VSX | 1870 | #ifdef CONFIG_VSX |
1881 | case LOAD_VSX: | 1871 | case LOAD_VSX: |
1882 | if (regs->msr & MSR_LE) | ||
1883 | return 0; | ||
1884 | err = do_vsx_load(op.reg, do_lxvd2x, op.ea, regs); | 1872 | err = do_vsx_load(op.reg, do_lxvd2x, op.ea, regs); |
1885 | goto ldst_done; | 1873 | goto ldst_done; |
1886 | #endif | 1874 | #endif |
@@ -1903,8 +1891,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1903 | goto instr_done; | 1891 | goto instr_done; |
1904 | 1892 | ||
1905 | case STORE: | 1893 | case STORE: |
1906 | if (regs->msr & MSR_LE) | ||
1907 | return 0; | ||
1908 | if ((op.type & UPDATE) && size == sizeof(long) && | 1894 | if ((op.type & UPDATE) && size == sizeof(long) && |
1909 | op.reg == 1 && op.update_reg == 1 && | 1895 | op.reg == 1 && op.update_reg == 1 && |
1910 | !(regs->msr & MSR_PR) && | 1896 | !(regs->msr & MSR_PR) && |
@@ -1917,8 +1903,6 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1917 | 1903 | ||
1918 | #ifdef CONFIG_PPC_FPU | 1904 | #ifdef CONFIG_PPC_FPU |
1919 | case STORE_FP: | 1905 | case STORE_FP: |
1920 | if (regs->msr & MSR_LE) | ||
1921 | return 0; | ||
1922 | if (size == 4) | 1906 | if (size == 4) |
1923 | err = do_fp_store(op.reg, do_stfs, op.ea, size, regs); | 1907 | err = do_fp_store(op.reg, do_stfs, op.ea, size, regs); |
1924 | else | 1908 | else |
@@ -1927,15 +1911,11 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr) | |||
1927 | #endif | 1911 | #endif |
1928 | #ifdef CONFIG_ALTIVEC | 1912 | #ifdef CONFIG_ALTIVEC |
1929 | case STORE_VMX: | 1913 | case STORE_VMX: |
1930 | if (regs->msr & MSR_LE) | ||
1931 | return 0; | ||
1932 | err = do_vec_store(op.reg, do_stvx, op.ea & ~0xfUL, regs); | 1914 | err = do_vec_store(op.reg, do_stvx, op.ea & ~0xfUL, regs); |
1933 | goto ldst_done; | 1915 | goto ldst_done; |
1934 | #endif | 1916 | #endif |
1935 | #ifdef CONFIG_VSX | 1917 | #ifdef CONFIG_VSX |
1936 | case STORE_VSX: | 1918 | case STORE_VSX: |
1937 | if (regs->msr & MSR_LE) | ||
1938 | return 0; | ||
1939 | err = do_vsx_store(op.reg, do_stxvd2x, op.ea, regs); | 1919 | err = do_vsx_store(op.reg, do_stxvd2x, op.ea, regs); |
1940 | goto ldst_done; | 1920 | goto ldst_done; |
1941 | #endif | 1921 | #endif |