OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium 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 // This file is auto-generated from | 5 // This file is auto-generated from |
6 // gpu/command_buffer/build_gles2_cmd_buffer.py | 6 // gpu/command_buffer/build_gles2_cmd_buffer.py |
7 // DO NOT EDIT! | 7 // DO NOT EDIT! |
8 | 8 |
9 // It is included by gles2_cmd_decoder.cc | 9 // It is included by gles2_cmd_decoder.cc |
10 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ | 10 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ |
(...skipping 1731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1742 } | 1742 } |
1743 if (params == NULL) { | 1743 if (params == NULL) { |
1744 return error::kOutOfBounds; | 1744 return error::kOutOfBounds; |
1745 } | 1745 } |
1746 DoTexParameteriv(target, pname, params); | 1746 DoTexParameteriv(target, pname, params); |
1747 return error::kNoError; | 1747 return error::kNoError; |
1748 } | 1748 } |
1749 | 1749 |
1750 error::Error GLES2DecoderImpl::HandleUniform1f( | 1750 error::Error GLES2DecoderImpl::HandleUniform1f( |
1751 uint32 immediate_data_size, const gles2::Uniform1f& c) { | 1751 uint32 immediate_data_size, const gles2::Uniform1f& c) { |
1752 GLint location = static_cast<GLint>(c.location); | 1752 GLint location = program_manager()->UnswizzleLocation( |
| 1753 static_cast<GLint>(c.location)); |
1753 GLfloat x = static_cast<GLfloat>(c.x); | 1754 GLfloat x = static_cast<GLfloat>(c.x); |
1754 GLfloat temp[1] = { x, }; | 1755 GLfloat temp[1] = { x, }; |
1755 DoUniform1fv(location, 1, &temp[0]); | 1756 DoUniform1fv(location, 1, &temp[0]); |
1756 return error::kNoError; | 1757 return error::kNoError; |
1757 } | 1758 } |
1758 | 1759 |
1759 error::Error GLES2DecoderImpl::HandleUniform1fv( | 1760 error::Error GLES2DecoderImpl::HandleUniform1fv( |
1760 uint32 immediate_data_size, const gles2::Uniform1fv& c) { | 1761 uint32 immediate_data_size, const gles2::Uniform1fv& c) { |
1761 GLint location = static_cast<GLint>(c.location); | 1762 GLint location = program_manager()->UnswizzleLocation( |
| 1763 static_cast<GLint>(c.location)); |
1762 GLsizei count = static_cast<GLsizei>(c.count); | 1764 GLsizei count = static_cast<GLsizei>(c.count); |
1763 uint32 data_size; | 1765 uint32 data_size; |
1764 if (!ComputeDataSize(count, sizeof(GLfloat), 1, &data_size)) { | 1766 if (!ComputeDataSize(count, sizeof(GLfloat), 1, &data_size)) { |
1765 return error::kOutOfBounds; | 1767 return error::kOutOfBounds; |
1766 } | 1768 } |
1767 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( | 1769 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( |
1768 c.v_shm_id, c.v_shm_offset, data_size); | 1770 c.v_shm_id, c.v_shm_offset, data_size); |
1769 if (v == NULL) { | 1771 if (v == NULL) { |
1770 return error::kOutOfBounds; | 1772 return error::kOutOfBounds; |
1771 } | 1773 } |
1772 DoUniform1fv(location, count, v); | 1774 DoUniform1fv(location, count, v); |
1773 return error::kNoError; | 1775 return error::kNoError; |
1774 } | 1776 } |
1775 | 1777 |
1776 error::Error GLES2DecoderImpl::HandleUniform1fvImmediate( | 1778 error::Error GLES2DecoderImpl::HandleUniform1fvImmediate( |
1777 uint32 immediate_data_size, const gles2::Uniform1fvImmediate& c) { | 1779 uint32 immediate_data_size, const gles2::Uniform1fvImmediate& c) { |
1778 GLint location = static_cast<GLint>(c.location); | 1780 GLint location = program_manager()->UnswizzleLocation( |
| 1781 static_cast<GLint>(c.location)); |
1779 GLsizei count = static_cast<GLsizei>(c.count); | 1782 GLsizei count = static_cast<GLsizei>(c.count); |
1780 uint32 data_size; | 1783 uint32 data_size; |
1781 if (!ComputeDataSize(count, sizeof(GLfloat), 1, &data_size)) { | 1784 if (!ComputeDataSize(count, sizeof(GLfloat), 1, &data_size)) { |
1782 return error::kOutOfBounds; | 1785 return error::kOutOfBounds; |
1783 } | 1786 } |
1784 if (data_size > immediate_data_size) { | 1787 if (data_size > immediate_data_size) { |
1785 return error::kOutOfBounds; | 1788 return error::kOutOfBounds; |
1786 } | 1789 } |
1787 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( | 1790 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( |
1788 c, data_size, immediate_data_size); | 1791 c, data_size, immediate_data_size); |
1789 if (v == NULL) { | 1792 if (v == NULL) { |
1790 return error::kOutOfBounds; | 1793 return error::kOutOfBounds; |
1791 } | 1794 } |
1792 DoUniform1fv(location, count, v); | 1795 DoUniform1fv(location, count, v); |
1793 return error::kNoError; | 1796 return error::kNoError; |
1794 } | 1797 } |
1795 | 1798 |
1796 error::Error GLES2DecoderImpl::HandleUniform1i( | 1799 error::Error GLES2DecoderImpl::HandleUniform1i( |
1797 uint32 immediate_data_size, const gles2::Uniform1i& c) { | 1800 uint32 immediate_data_size, const gles2::Uniform1i& c) { |
1798 GLint location = static_cast<GLint>(c.location); | 1801 GLint location = program_manager()->UnswizzleLocation( |
| 1802 static_cast<GLint>(c.location)); |
1799 GLint x = static_cast<GLint>(c.x); | 1803 GLint x = static_cast<GLint>(c.x); |
1800 DoUniform1i(location, x); | 1804 DoUniform1i(location, x); |
1801 return error::kNoError; | 1805 return error::kNoError; |
1802 } | 1806 } |
1803 | 1807 |
1804 error::Error GLES2DecoderImpl::HandleUniform1iv( | 1808 error::Error GLES2DecoderImpl::HandleUniform1iv( |
1805 uint32 immediate_data_size, const gles2::Uniform1iv& c) { | 1809 uint32 immediate_data_size, const gles2::Uniform1iv& c) { |
1806 GLint location = static_cast<GLint>(c.location); | 1810 GLint location = program_manager()->UnswizzleLocation( |
| 1811 static_cast<GLint>(c.location)); |
1807 GLsizei count = static_cast<GLsizei>(c.count); | 1812 GLsizei count = static_cast<GLsizei>(c.count); |
1808 uint32 data_size; | 1813 uint32 data_size; |
1809 if (!ComputeDataSize(count, sizeof(GLint), 1, &data_size)) { | 1814 if (!ComputeDataSize(count, sizeof(GLint), 1, &data_size)) { |
1810 return error::kOutOfBounds; | 1815 return error::kOutOfBounds; |
1811 } | 1816 } |
1812 const GLint* v = GetSharedMemoryAs<const GLint*>( | 1817 const GLint* v = GetSharedMemoryAs<const GLint*>( |
1813 c.v_shm_id, c.v_shm_offset, data_size); | 1818 c.v_shm_id, c.v_shm_offset, data_size); |
1814 if (v == NULL) { | 1819 if (v == NULL) { |
1815 return error::kOutOfBounds; | 1820 return error::kOutOfBounds; |
1816 } | 1821 } |
1817 DoUniform1iv(location, count, v); | 1822 DoUniform1iv(location, count, v); |
1818 return error::kNoError; | 1823 return error::kNoError; |
1819 } | 1824 } |
1820 | 1825 |
1821 error::Error GLES2DecoderImpl::HandleUniform1ivImmediate( | 1826 error::Error GLES2DecoderImpl::HandleUniform1ivImmediate( |
1822 uint32 immediate_data_size, const gles2::Uniform1ivImmediate& c) { | 1827 uint32 immediate_data_size, const gles2::Uniform1ivImmediate& c) { |
1823 GLint location = static_cast<GLint>(c.location); | 1828 GLint location = program_manager()->UnswizzleLocation( |
| 1829 static_cast<GLint>(c.location)); |
1824 GLsizei count = static_cast<GLsizei>(c.count); | 1830 GLsizei count = static_cast<GLsizei>(c.count); |
1825 uint32 data_size; | 1831 uint32 data_size; |
1826 if (!ComputeDataSize(count, sizeof(GLint), 1, &data_size)) { | 1832 if (!ComputeDataSize(count, sizeof(GLint), 1, &data_size)) { |
1827 return error::kOutOfBounds; | 1833 return error::kOutOfBounds; |
1828 } | 1834 } |
1829 if (data_size > immediate_data_size) { | 1835 if (data_size > immediate_data_size) { |
1830 return error::kOutOfBounds; | 1836 return error::kOutOfBounds; |
1831 } | 1837 } |
1832 const GLint* v = GetImmediateDataAs<const GLint*>( | 1838 const GLint* v = GetImmediateDataAs<const GLint*>( |
1833 c, data_size, immediate_data_size); | 1839 c, data_size, immediate_data_size); |
1834 if (v == NULL) { | 1840 if (v == NULL) { |
1835 return error::kOutOfBounds; | 1841 return error::kOutOfBounds; |
1836 } | 1842 } |
1837 DoUniform1iv(location, count, v); | 1843 DoUniform1iv(location, count, v); |
1838 return error::kNoError; | 1844 return error::kNoError; |
1839 } | 1845 } |
1840 | 1846 |
1841 error::Error GLES2DecoderImpl::HandleUniform2f( | 1847 error::Error GLES2DecoderImpl::HandleUniform2f( |
1842 uint32 immediate_data_size, const gles2::Uniform2f& c) { | 1848 uint32 immediate_data_size, const gles2::Uniform2f& c) { |
1843 GLint location = static_cast<GLint>(c.location); | 1849 GLint location = program_manager()->UnswizzleLocation( |
| 1850 static_cast<GLint>(c.location)); |
1844 GLfloat x = static_cast<GLfloat>(c.x); | 1851 GLfloat x = static_cast<GLfloat>(c.x); |
1845 GLfloat y = static_cast<GLfloat>(c.y); | 1852 GLfloat y = static_cast<GLfloat>(c.y); |
1846 GLfloat temp[2] = { x, y, }; | 1853 GLfloat temp[2] = { x, y, }; |
1847 DoUniform2fv(location, 1, &temp[0]); | 1854 DoUniform2fv(location, 1, &temp[0]); |
1848 return error::kNoError; | 1855 return error::kNoError; |
1849 } | 1856 } |
1850 | 1857 |
1851 error::Error GLES2DecoderImpl::HandleUniform2fv( | 1858 error::Error GLES2DecoderImpl::HandleUniform2fv( |
1852 uint32 immediate_data_size, const gles2::Uniform2fv& c) { | 1859 uint32 immediate_data_size, const gles2::Uniform2fv& c) { |
1853 GLint location = static_cast<GLint>(c.location); | 1860 GLint location = program_manager()->UnswizzleLocation( |
| 1861 static_cast<GLint>(c.location)); |
1854 GLsizei count = static_cast<GLsizei>(c.count); | 1862 GLsizei count = static_cast<GLsizei>(c.count); |
1855 uint32 data_size; | 1863 uint32 data_size; |
1856 if (!ComputeDataSize(count, sizeof(GLfloat), 2, &data_size)) { | 1864 if (!ComputeDataSize(count, sizeof(GLfloat), 2, &data_size)) { |
1857 return error::kOutOfBounds; | 1865 return error::kOutOfBounds; |
1858 } | 1866 } |
1859 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( | 1867 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( |
1860 c.v_shm_id, c.v_shm_offset, data_size); | 1868 c.v_shm_id, c.v_shm_offset, data_size); |
1861 if (v == NULL) { | 1869 if (v == NULL) { |
1862 return error::kOutOfBounds; | 1870 return error::kOutOfBounds; |
1863 } | 1871 } |
1864 DoUniform2fv(location, count, v); | 1872 DoUniform2fv(location, count, v); |
1865 return error::kNoError; | 1873 return error::kNoError; |
1866 } | 1874 } |
1867 | 1875 |
1868 error::Error GLES2DecoderImpl::HandleUniform2fvImmediate( | 1876 error::Error GLES2DecoderImpl::HandleUniform2fvImmediate( |
1869 uint32 immediate_data_size, const gles2::Uniform2fvImmediate& c) { | 1877 uint32 immediate_data_size, const gles2::Uniform2fvImmediate& c) { |
1870 GLint location = static_cast<GLint>(c.location); | 1878 GLint location = program_manager()->UnswizzleLocation( |
| 1879 static_cast<GLint>(c.location)); |
1871 GLsizei count = static_cast<GLsizei>(c.count); | 1880 GLsizei count = static_cast<GLsizei>(c.count); |
1872 uint32 data_size; | 1881 uint32 data_size; |
1873 if (!ComputeDataSize(count, sizeof(GLfloat), 2, &data_size)) { | 1882 if (!ComputeDataSize(count, sizeof(GLfloat), 2, &data_size)) { |
1874 return error::kOutOfBounds; | 1883 return error::kOutOfBounds; |
1875 } | 1884 } |
1876 if (data_size > immediate_data_size) { | 1885 if (data_size > immediate_data_size) { |
1877 return error::kOutOfBounds; | 1886 return error::kOutOfBounds; |
1878 } | 1887 } |
1879 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( | 1888 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( |
1880 c, data_size, immediate_data_size); | 1889 c, data_size, immediate_data_size); |
1881 if (v == NULL) { | 1890 if (v == NULL) { |
1882 return error::kOutOfBounds; | 1891 return error::kOutOfBounds; |
1883 } | 1892 } |
1884 DoUniform2fv(location, count, v); | 1893 DoUniform2fv(location, count, v); |
1885 return error::kNoError; | 1894 return error::kNoError; |
1886 } | 1895 } |
1887 | 1896 |
1888 error::Error GLES2DecoderImpl::HandleUniform2i( | 1897 error::Error GLES2DecoderImpl::HandleUniform2i( |
1889 uint32 immediate_data_size, const gles2::Uniform2i& c) { | 1898 uint32 immediate_data_size, const gles2::Uniform2i& c) { |
1890 GLint location = static_cast<GLint>(c.location); | 1899 GLint location = program_manager()->UnswizzleLocation( |
| 1900 static_cast<GLint>(c.location)); |
1891 GLint x = static_cast<GLint>(c.x); | 1901 GLint x = static_cast<GLint>(c.x); |
1892 GLint y = static_cast<GLint>(c.y); | 1902 GLint y = static_cast<GLint>(c.y); |
1893 glUniform2i(location, x, y); | 1903 glUniform2i(location, x, y); |
1894 return error::kNoError; | 1904 return error::kNoError; |
1895 } | 1905 } |
1896 | 1906 |
1897 error::Error GLES2DecoderImpl::HandleUniform2iv( | 1907 error::Error GLES2DecoderImpl::HandleUniform2iv( |
1898 uint32 immediate_data_size, const gles2::Uniform2iv& c) { | 1908 uint32 immediate_data_size, const gles2::Uniform2iv& c) { |
1899 GLint location = static_cast<GLint>(c.location); | 1909 GLint location = program_manager()->UnswizzleLocation( |
| 1910 static_cast<GLint>(c.location)); |
1900 GLsizei count = static_cast<GLsizei>(c.count); | 1911 GLsizei count = static_cast<GLsizei>(c.count); |
1901 uint32 data_size; | 1912 uint32 data_size; |
1902 if (!ComputeDataSize(count, sizeof(GLint), 2, &data_size)) { | 1913 if (!ComputeDataSize(count, sizeof(GLint), 2, &data_size)) { |
1903 return error::kOutOfBounds; | 1914 return error::kOutOfBounds; |
1904 } | 1915 } |
1905 const GLint* v = GetSharedMemoryAs<const GLint*>( | 1916 const GLint* v = GetSharedMemoryAs<const GLint*>( |
1906 c.v_shm_id, c.v_shm_offset, data_size); | 1917 c.v_shm_id, c.v_shm_offset, data_size); |
1907 if (v == NULL) { | 1918 if (v == NULL) { |
1908 return error::kOutOfBounds; | 1919 return error::kOutOfBounds; |
1909 } | 1920 } |
1910 DoUniform2iv(location, count, v); | 1921 DoUniform2iv(location, count, v); |
1911 return error::kNoError; | 1922 return error::kNoError; |
1912 } | 1923 } |
1913 | 1924 |
1914 error::Error GLES2DecoderImpl::HandleUniform2ivImmediate( | 1925 error::Error GLES2DecoderImpl::HandleUniform2ivImmediate( |
1915 uint32 immediate_data_size, const gles2::Uniform2ivImmediate& c) { | 1926 uint32 immediate_data_size, const gles2::Uniform2ivImmediate& c) { |
1916 GLint location = static_cast<GLint>(c.location); | 1927 GLint location = program_manager()->UnswizzleLocation( |
| 1928 static_cast<GLint>(c.location)); |
1917 GLsizei count = static_cast<GLsizei>(c.count); | 1929 GLsizei count = static_cast<GLsizei>(c.count); |
1918 uint32 data_size; | 1930 uint32 data_size; |
1919 if (!ComputeDataSize(count, sizeof(GLint), 2, &data_size)) { | 1931 if (!ComputeDataSize(count, sizeof(GLint), 2, &data_size)) { |
1920 return error::kOutOfBounds; | 1932 return error::kOutOfBounds; |
1921 } | 1933 } |
1922 if (data_size > immediate_data_size) { | 1934 if (data_size > immediate_data_size) { |
1923 return error::kOutOfBounds; | 1935 return error::kOutOfBounds; |
1924 } | 1936 } |
1925 const GLint* v = GetImmediateDataAs<const GLint*>( | 1937 const GLint* v = GetImmediateDataAs<const GLint*>( |
1926 c, data_size, immediate_data_size); | 1938 c, data_size, immediate_data_size); |
1927 if (v == NULL) { | 1939 if (v == NULL) { |
1928 return error::kOutOfBounds; | 1940 return error::kOutOfBounds; |
1929 } | 1941 } |
1930 DoUniform2iv(location, count, v); | 1942 DoUniform2iv(location, count, v); |
1931 return error::kNoError; | 1943 return error::kNoError; |
1932 } | 1944 } |
1933 | 1945 |
1934 error::Error GLES2DecoderImpl::HandleUniform3f( | 1946 error::Error GLES2DecoderImpl::HandleUniform3f( |
1935 uint32 immediate_data_size, const gles2::Uniform3f& c) { | 1947 uint32 immediate_data_size, const gles2::Uniform3f& c) { |
1936 GLint location = static_cast<GLint>(c.location); | 1948 GLint location = program_manager()->UnswizzleLocation( |
| 1949 static_cast<GLint>(c.location)); |
1937 GLfloat x = static_cast<GLfloat>(c.x); | 1950 GLfloat x = static_cast<GLfloat>(c.x); |
1938 GLfloat y = static_cast<GLfloat>(c.y); | 1951 GLfloat y = static_cast<GLfloat>(c.y); |
1939 GLfloat z = static_cast<GLfloat>(c.z); | 1952 GLfloat z = static_cast<GLfloat>(c.z); |
1940 GLfloat temp[3] = { x, y, z, }; | 1953 GLfloat temp[3] = { x, y, z, }; |
1941 DoUniform3fv(location, 1, &temp[0]); | 1954 DoUniform3fv(location, 1, &temp[0]); |
1942 return error::kNoError; | 1955 return error::kNoError; |
1943 } | 1956 } |
1944 | 1957 |
1945 error::Error GLES2DecoderImpl::HandleUniform3fv( | 1958 error::Error GLES2DecoderImpl::HandleUniform3fv( |
1946 uint32 immediate_data_size, const gles2::Uniform3fv& c) { | 1959 uint32 immediate_data_size, const gles2::Uniform3fv& c) { |
1947 GLint location = static_cast<GLint>(c.location); | 1960 GLint location = program_manager()->UnswizzleLocation( |
| 1961 static_cast<GLint>(c.location)); |
1948 GLsizei count = static_cast<GLsizei>(c.count); | 1962 GLsizei count = static_cast<GLsizei>(c.count); |
1949 uint32 data_size; | 1963 uint32 data_size; |
1950 if (!ComputeDataSize(count, sizeof(GLfloat), 3, &data_size)) { | 1964 if (!ComputeDataSize(count, sizeof(GLfloat), 3, &data_size)) { |
1951 return error::kOutOfBounds; | 1965 return error::kOutOfBounds; |
1952 } | 1966 } |
1953 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( | 1967 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( |
1954 c.v_shm_id, c.v_shm_offset, data_size); | 1968 c.v_shm_id, c.v_shm_offset, data_size); |
1955 if (v == NULL) { | 1969 if (v == NULL) { |
1956 return error::kOutOfBounds; | 1970 return error::kOutOfBounds; |
1957 } | 1971 } |
1958 DoUniform3fv(location, count, v); | 1972 DoUniform3fv(location, count, v); |
1959 return error::kNoError; | 1973 return error::kNoError; |
1960 } | 1974 } |
1961 | 1975 |
1962 error::Error GLES2DecoderImpl::HandleUniform3fvImmediate( | 1976 error::Error GLES2DecoderImpl::HandleUniform3fvImmediate( |
1963 uint32 immediate_data_size, const gles2::Uniform3fvImmediate& c) { | 1977 uint32 immediate_data_size, const gles2::Uniform3fvImmediate& c) { |
1964 GLint location = static_cast<GLint>(c.location); | 1978 GLint location = program_manager()->UnswizzleLocation( |
| 1979 static_cast<GLint>(c.location)); |
1965 GLsizei count = static_cast<GLsizei>(c.count); | 1980 GLsizei count = static_cast<GLsizei>(c.count); |
1966 uint32 data_size; | 1981 uint32 data_size; |
1967 if (!ComputeDataSize(count, sizeof(GLfloat), 3, &data_size)) { | 1982 if (!ComputeDataSize(count, sizeof(GLfloat), 3, &data_size)) { |
1968 return error::kOutOfBounds; | 1983 return error::kOutOfBounds; |
1969 } | 1984 } |
1970 if (data_size > immediate_data_size) { | 1985 if (data_size > immediate_data_size) { |
1971 return error::kOutOfBounds; | 1986 return error::kOutOfBounds; |
1972 } | 1987 } |
1973 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( | 1988 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( |
1974 c, data_size, immediate_data_size); | 1989 c, data_size, immediate_data_size); |
1975 if (v == NULL) { | 1990 if (v == NULL) { |
1976 return error::kOutOfBounds; | 1991 return error::kOutOfBounds; |
1977 } | 1992 } |
1978 DoUniform3fv(location, count, v); | 1993 DoUniform3fv(location, count, v); |
1979 return error::kNoError; | 1994 return error::kNoError; |
1980 } | 1995 } |
1981 | 1996 |
1982 error::Error GLES2DecoderImpl::HandleUniform3i( | 1997 error::Error GLES2DecoderImpl::HandleUniform3i( |
1983 uint32 immediate_data_size, const gles2::Uniform3i& c) { | 1998 uint32 immediate_data_size, const gles2::Uniform3i& c) { |
1984 GLint location = static_cast<GLint>(c.location); | 1999 GLint location = program_manager()->UnswizzleLocation( |
| 2000 static_cast<GLint>(c.location)); |
1985 GLint x = static_cast<GLint>(c.x); | 2001 GLint x = static_cast<GLint>(c.x); |
1986 GLint y = static_cast<GLint>(c.y); | 2002 GLint y = static_cast<GLint>(c.y); |
1987 GLint z = static_cast<GLint>(c.z); | 2003 GLint z = static_cast<GLint>(c.z); |
1988 glUniform3i(location, x, y, z); | 2004 glUniform3i(location, x, y, z); |
1989 return error::kNoError; | 2005 return error::kNoError; |
1990 } | 2006 } |
1991 | 2007 |
1992 error::Error GLES2DecoderImpl::HandleUniform3iv( | 2008 error::Error GLES2DecoderImpl::HandleUniform3iv( |
1993 uint32 immediate_data_size, const gles2::Uniform3iv& c) { | 2009 uint32 immediate_data_size, const gles2::Uniform3iv& c) { |
1994 GLint location = static_cast<GLint>(c.location); | 2010 GLint location = program_manager()->UnswizzleLocation( |
| 2011 static_cast<GLint>(c.location)); |
1995 GLsizei count = static_cast<GLsizei>(c.count); | 2012 GLsizei count = static_cast<GLsizei>(c.count); |
1996 uint32 data_size; | 2013 uint32 data_size; |
1997 if (!ComputeDataSize(count, sizeof(GLint), 3, &data_size)) { | 2014 if (!ComputeDataSize(count, sizeof(GLint), 3, &data_size)) { |
1998 return error::kOutOfBounds; | 2015 return error::kOutOfBounds; |
1999 } | 2016 } |
2000 const GLint* v = GetSharedMemoryAs<const GLint*>( | 2017 const GLint* v = GetSharedMemoryAs<const GLint*>( |
2001 c.v_shm_id, c.v_shm_offset, data_size); | 2018 c.v_shm_id, c.v_shm_offset, data_size); |
2002 if (v == NULL) { | 2019 if (v == NULL) { |
2003 return error::kOutOfBounds; | 2020 return error::kOutOfBounds; |
2004 } | 2021 } |
2005 DoUniform3iv(location, count, v); | 2022 DoUniform3iv(location, count, v); |
2006 return error::kNoError; | 2023 return error::kNoError; |
2007 } | 2024 } |
2008 | 2025 |
2009 error::Error GLES2DecoderImpl::HandleUniform3ivImmediate( | 2026 error::Error GLES2DecoderImpl::HandleUniform3ivImmediate( |
2010 uint32 immediate_data_size, const gles2::Uniform3ivImmediate& c) { | 2027 uint32 immediate_data_size, const gles2::Uniform3ivImmediate& c) { |
2011 GLint location = static_cast<GLint>(c.location); | 2028 GLint location = program_manager()->UnswizzleLocation( |
| 2029 static_cast<GLint>(c.location)); |
2012 GLsizei count = static_cast<GLsizei>(c.count); | 2030 GLsizei count = static_cast<GLsizei>(c.count); |
2013 uint32 data_size; | 2031 uint32 data_size; |
2014 if (!ComputeDataSize(count, sizeof(GLint), 3, &data_size)) { | 2032 if (!ComputeDataSize(count, sizeof(GLint), 3, &data_size)) { |
2015 return error::kOutOfBounds; | 2033 return error::kOutOfBounds; |
2016 } | 2034 } |
2017 if (data_size > immediate_data_size) { | 2035 if (data_size > immediate_data_size) { |
2018 return error::kOutOfBounds; | 2036 return error::kOutOfBounds; |
2019 } | 2037 } |
2020 const GLint* v = GetImmediateDataAs<const GLint*>( | 2038 const GLint* v = GetImmediateDataAs<const GLint*>( |
2021 c, data_size, immediate_data_size); | 2039 c, data_size, immediate_data_size); |
2022 if (v == NULL) { | 2040 if (v == NULL) { |
2023 return error::kOutOfBounds; | 2041 return error::kOutOfBounds; |
2024 } | 2042 } |
2025 DoUniform3iv(location, count, v); | 2043 DoUniform3iv(location, count, v); |
2026 return error::kNoError; | 2044 return error::kNoError; |
2027 } | 2045 } |
2028 | 2046 |
2029 error::Error GLES2DecoderImpl::HandleUniform4f( | 2047 error::Error GLES2DecoderImpl::HandleUniform4f( |
2030 uint32 immediate_data_size, const gles2::Uniform4f& c) { | 2048 uint32 immediate_data_size, const gles2::Uniform4f& c) { |
2031 GLint location = static_cast<GLint>(c.location); | 2049 GLint location = program_manager()->UnswizzleLocation( |
| 2050 static_cast<GLint>(c.location)); |
2032 GLfloat x = static_cast<GLfloat>(c.x); | 2051 GLfloat x = static_cast<GLfloat>(c.x); |
2033 GLfloat y = static_cast<GLfloat>(c.y); | 2052 GLfloat y = static_cast<GLfloat>(c.y); |
2034 GLfloat z = static_cast<GLfloat>(c.z); | 2053 GLfloat z = static_cast<GLfloat>(c.z); |
2035 GLfloat w = static_cast<GLfloat>(c.w); | 2054 GLfloat w = static_cast<GLfloat>(c.w); |
2036 GLfloat temp[4] = { x, y, z, w, }; | 2055 GLfloat temp[4] = { x, y, z, w, }; |
2037 DoUniform4fv(location, 1, &temp[0]); | 2056 DoUniform4fv(location, 1, &temp[0]); |
2038 return error::kNoError; | 2057 return error::kNoError; |
2039 } | 2058 } |
2040 | 2059 |
2041 error::Error GLES2DecoderImpl::HandleUniform4fv( | 2060 error::Error GLES2DecoderImpl::HandleUniform4fv( |
2042 uint32 immediate_data_size, const gles2::Uniform4fv& c) { | 2061 uint32 immediate_data_size, const gles2::Uniform4fv& c) { |
2043 GLint location = static_cast<GLint>(c.location); | 2062 GLint location = program_manager()->UnswizzleLocation( |
| 2063 static_cast<GLint>(c.location)); |
2044 GLsizei count = static_cast<GLsizei>(c.count); | 2064 GLsizei count = static_cast<GLsizei>(c.count); |
2045 uint32 data_size; | 2065 uint32 data_size; |
2046 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { | 2066 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { |
2047 return error::kOutOfBounds; | 2067 return error::kOutOfBounds; |
2048 } | 2068 } |
2049 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( | 2069 const GLfloat* v = GetSharedMemoryAs<const GLfloat*>( |
2050 c.v_shm_id, c.v_shm_offset, data_size); | 2070 c.v_shm_id, c.v_shm_offset, data_size); |
2051 if (v == NULL) { | 2071 if (v == NULL) { |
2052 return error::kOutOfBounds; | 2072 return error::kOutOfBounds; |
2053 } | 2073 } |
2054 DoUniform4fv(location, count, v); | 2074 DoUniform4fv(location, count, v); |
2055 return error::kNoError; | 2075 return error::kNoError; |
2056 } | 2076 } |
2057 | 2077 |
2058 error::Error GLES2DecoderImpl::HandleUniform4fvImmediate( | 2078 error::Error GLES2DecoderImpl::HandleUniform4fvImmediate( |
2059 uint32 immediate_data_size, const gles2::Uniform4fvImmediate& c) { | 2079 uint32 immediate_data_size, const gles2::Uniform4fvImmediate& c) { |
2060 GLint location = static_cast<GLint>(c.location); | 2080 GLint location = program_manager()->UnswizzleLocation( |
| 2081 static_cast<GLint>(c.location)); |
2061 GLsizei count = static_cast<GLsizei>(c.count); | 2082 GLsizei count = static_cast<GLsizei>(c.count); |
2062 uint32 data_size; | 2083 uint32 data_size; |
2063 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { | 2084 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { |
2064 return error::kOutOfBounds; | 2085 return error::kOutOfBounds; |
2065 } | 2086 } |
2066 if (data_size > immediate_data_size) { | 2087 if (data_size > immediate_data_size) { |
2067 return error::kOutOfBounds; | 2088 return error::kOutOfBounds; |
2068 } | 2089 } |
2069 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( | 2090 const GLfloat* v = GetImmediateDataAs<const GLfloat*>( |
2070 c, data_size, immediate_data_size); | 2091 c, data_size, immediate_data_size); |
2071 if (v == NULL) { | 2092 if (v == NULL) { |
2072 return error::kOutOfBounds; | 2093 return error::kOutOfBounds; |
2073 } | 2094 } |
2074 DoUniform4fv(location, count, v); | 2095 DoUniform4fv(location, count, v); |
2075 return error::kNoError; | 2096 return error::kNoError; |
2076 } | 2097 } |
2077 | 2098 |
2078 error::Error GLES2DecoderImpl::HandleUniform4i( | 2099 error::Error GLES2DecoderImpl::HandleUniform4i( |
2079 uint32 immediate_data_size, const gles2::Uniform4i& c) { | 2100 uint32 immediate_data_size, const gles2::Uniform4i& c) { |
2080 GLint location = static_cast<GLint>(c.location); | 2101 GLint location = program_manager()->UnswizzleLocation( |
| 2102 static_cast<GLint>(c.location)); |
2081 GLint x = static_cast<GLint>(c.x); | 2103 GLint x = static_cast<GLint>(c.x); |
2082 GLint y = static_cast<GLint>(c.y); | 2104 GLint y = static_cast<GLint>(c.y); |
2083 GLint z = static_cast<GLint>(c.z); | 2105 GLint z = static_cast<GLint>(c.z); |
2084 GLint w = static_cast<GLint>(c.w); | 2106 GLint w = static_cast<GLint>(c.w); |
2085 glUniform4i(location, x, y, z, w); | 2107 glUniform4i(location, x, y, z, w); |
2086 return error::kNoError; | 2108 return error::kNoError; |
2087 } | 2109 } |
2088 | 2110 |
2089 error::Error GLES2DecoderImpl::HandleUniform4iv( | 2111 error::Error GLES2DecoderImpl::HandleUniform4iv( |
2090 uint32 immediate_data_size, const gles2::Uniform4iv& c) { | 2112 uint32 immediate_data_size, const gles2::Uniform4iv& c) { |
2091 GLint location = static_cast<GLint>(c.location); | 2113 GLint location = program_manager()->UnswizzleLocation( |
| 2114 static_cast<GLint>(c.location)); |
2092 GLsizei count = static_cast<GLsizei>(c.count); | 2115 GLsizei count = static_cast<GLsizei>(c.count); |
2093 uint32 data_size; | 2116 uint32 data_size; |
2094 if (!ComputeDataSize(count, sizeof(GLint), 4, &data_size)) { | 2117 if (!ComputeDataSize(count, sizeof(GLint), 4, &data_size)) { |
2095 return error::kOutOfBounds; | 2118 return error::kOutOfBounds; |
2096 } | 2119 } |
2097 const GLint* v = GetSharedMemoryAs<const GLint*>( | 2120 const GLint* v = GetSharedMemoryAs<const GLint*>( |
2098 c.v_shm_id, c.v_shm_offset, data_size); | 2121 c.v_shm_id, c.v_shm_offset, data_size); |
2099 if (v == NULL) { | 2122 if (v == NULL) { |
2100 return error::kOutOfBounds; | 2123 return error::kOutOfBounds; |
2101 } | 2124 } |
2102 DoUniform4iv(location, count, v); | 2125 DoUniform4iv(location, count, v); |
2103 return error::kNoError; | 2126 return error::kNoError; |
2104 } | 2127 } |
2105 | 2128 |
2106 error::Error GLES2DecoderImpl::HandleUniform4ivImmediate( | 2129 error::Error GLES2DecoderImpl::HandleUniform4ivImmediate( |
2107 uint32 immediate_data_size, const gles2::Uniform4ivImmediate& c) { | 2130 uint32 immediate_data_size, const gles2::Uniform4ivImmediate& c) { |
2108 GLint location = static_cast<GLint>(c.location); | 2131 GLint location = program_manager()->UnswizzleLocation( |
| 2132 static_cast<GLint>(c.location)); |
2109 GLsizei count = static_cast<GLsizei>(c.count); | 2133 GLsizei count = static_cast<GLsizei>(c.count); |
2110 uint32 data_size; | 2134 uint32 data_size; |
2111 if (!ComputeDataSize(count, sizeof(GLint), 4, &data_size)) { | 2135 if (!ComputeDataSize(count, sizeof(GLint), 4, &data_size)) { |
2112 return error::kOutOfBounds; | 2136 return error::kOutOfBounds; |
2113 } | 2137 } |
2114 if (data_size > immediate_data_size) { | 2138 if (data_size > immediate_data_size) { |
2115 return error::kOutOfBounds; | 2139 return error::kOutOfBounds; |
2116 } | 2140 } |
2117 const GLint* v = GetImmediateDataAs<const GLint*>( | 2141 const GLint* v = GetImmediateDataAs<const GLint*>( |
2118 c, data_size, immediate_data_size); | 2142 c, data_size, immediate_data_size); |
2119 if (v == NULL) { | 2143 if (v == NULL) { |
2120 return error::kOutOfBounds; | 2144 return error::kOutOfBounds; |
2121 } | 2145 } |
2122 DoUniform4iv(location, count, v); | 2146 DoUniform4iv(location, count, v); |
2123 return error::kNoError; | 2147 return error::kNoError; |
2124 } | 2148 } |
2125 | 2149 |
2126 error::Error GLES2DecoderImpl::HandleUniformMatrix2fv( | 2150 error::Error GLES2DecoderImpl::HandleUniformMatrix2fv( |
2127 uint32 immediate_data_size, const gles2::UniformMatrix2fv& c) { | 2151 uint32 immediate_data_size, const gles2::UniformMatrix2fv& c) { |
2128 GLint location = static_cast<GLint>(c.location); | 2152 GLint location = program_manager()->UnswizzleLocation( |
| 2153 static_cast<GLint>(c.location)); |
2129 GLsizei count = static_cast<GLsizei>(c.count); | 2154 GLsizei count = static_cast<GLsizei>(c.count); |
2130 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2155 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2131 uint32 data_size; | 2156 uint32 data_size; |
2132 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { | 2157 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { |
2133 return error::kOutOfBounds; | 2158 return error::kOutOfBounds; |
2134 } | 2159 } |
2135 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( | 2160 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( |
2136 c.value_shm_id, c.value_shm_offset, data_size); | 2161 c.value_shm_id, c.value_shm_offset, data_size); |
2137 if (!validators_->false_only.IsValid(transpose)) { | 2162 if (!validators_->false_only.IsValid(transpose)) { |
2138 SetGLError( | 2163 SetGLError( |
2139 GL_INVALID_VALUE, "glUniformMatrix2fv: transpose GL_INVALID_VALUE"); | 2164 GL_INVALID_VALUE, "glUniformMatrix2fv: transpose GL_INVALID_VALUE"); |
2140 return error::kNoError; | 2165 return error::kNoError; |
2141 } | 2166 } |
2142 if (value == NULL) { | 2167 if (value == NULL) { |
2143 return error::kOutOfBounds; | 2168 return error::kOutOfBounds; |
2144 } | 2169 } |
2145 DoUniformMatrix2fv(location, count, transpose, value); | 2170 DoUniformMatrix2fv(location, count, transpose, value); |
2146 return error::kNoError; | 2171 return error::kNoError; |
2147 } | 2172 } |
2148 | 2173 |
2149 error::Error GLES2DecoderImpl::HandleUniformMatrix2fvImmediate( | 2174 error::Error GLES2DecoderImpl::HandleUniformMatrix2fvImmediate( |
2150 uint32 immediate_data_size, const gles2::UniformMatrix2fvImmediate& c) { | 2175 uint32 immediate_data_size, const gles2::UniformMatrix2fvImmediate& c) { |
2151 GLint location = static_cast<GLint>(c.location); | 2176 GLint location = program_manager()->UnswizzleLocation( |
| 2177 static_cast<GLint>(c.location)); |
2152 GLsizei count = static_cast<GLsizei>(c.count); | 2178 GLsizei count = static_cast<GLsizei>(c.count); |
2153 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2179 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2154 uint32 data_size; | 2180 uint32 data_size; |
2155 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { | 2181 if (!ComputeDataSize(count, sizeof(GLfloat), 4, &data_size)) { |
2156 return error::kOutOfBounds; | 2182 return error::kOutOfBounds; |
2157 } | 2183 } |
2158 if (data_size > immediate_data_size) { | 2184 if (data_size > immediate_data_size) { |
2159 return error::kOutOfBounds; | 2185 return error::kOutOfBounds; |
2160 } | 2186 } |
2161 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( | 2187 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( |
2162 c, data_size, immediate_data_size); | 2188 c, data_size, immediate_data_size); |
2163 if (!validators_->false_only.IsValid(transpose)) { | 2189 if (!validators_->false_only.IsValid(transpose)) { |
2164 SetGLError( | 2190 SetGLError( |
2165 GL_INVALID_VALUE, "glUniformMatrix2fv: transpose GL_INVALID_VALUE"); | 2191 GL_INVALID_VALUE, "glUniformMatrix2fv: transpose GL_INVALID_VALUE"); |
2166 return error::kNoError; | 2192 return error::kNoError; |
2167 } | 2193 } |
2168 if (value == NULL) { | 2194 if (value == NULL) { |
2169 return error::kOutOfBounds; | 2195 return error::kOutOfBounds; |
2170 } | 2196 } |
2171 DoUniformMatrix2fv(location, count, transpose, value); | 2197 DoUniformMatrix2fv(location, count, transpose, value); |
2172 return error::kNoError; | 2198 return error::kNoError; |
2173 } | 2199 } |
2174 | 2200 |
2175 error::Error GLES2DecoderImpl::HandleUniformMatrix3fv( | 2201 error::Error GLES2DecoderImpl::HandleUniformMatrix3fv( |
2176 uint32 immediate_data_size, const gles2::UniformMatrix3fv& c) { | 2202 uint32 immediate_data_size, const gles2::UniformMatrix3fv& c) { |
2177 GLint location = static_cast<GLint>(c.location); | 2203 GLint location = program_manager()->UnswizzleLocation( |
| 2204 static_cast<GLint>(c.location)); |
2178 GLsizei count = static_cast<GLsizei>(c.count); | 2205 GLsizei count = static_cast<GLsizei>(c.count); |
2179 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2206 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2180 uint32 data_size; | 2207 uint32 data_size; |
2181 if (!ComputeDataSize(count, sizeof(GLfloat), 9, &data_size)) { | 2208 if (!ComputeDataSize(count, sizeof(GLfloat), 9, &data_size)) { |
2182 return error::kOutOfBounds; | 2209 return error::kOutOfBounds; |
2183 } | 2210 } |
2184 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( | 2211 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( |
2185 c.value_shm_id, c.value_shm_offset, data_size); | 2212 c.value_shm_id, c.value_shm_offset, data_size); |
2186 if (!validators_->false_only.IsValid(transpose)) { | 2213 if (!validators_->false_only.IsValid(transpose)) { |
2187 SetGLError( | 2214 SetGLError( |
2188 GL_INVALID_VALUE, "glUniformMatrix3fv: transpose GL_INVALID_VALUE"); | 2215 GL_INVALID_VALUE, "glUniformMatrix3fv: transpose GL_INVALID_VALUE"); |
2189 return error::kNoError; | 2216 return error::kNoError; |
2190 } | 2217 } |
2191 if (value == NULL) { | 2218 if (value == NULL) { |
2192 return error::kOutOfBounds; | 2219 return error::kOutOfBounds; |
2193 } | 2220 } |
2194 DoUniformMatrix3fv(location, count, transpose, value); | 2221 DoUniformMatrix3fv(location, count, transpose, value); |
2195 return error::kNoError; | 2222 return error::kNoError; |
2196 } | 2223 } |
2197 | 2224 |
2198 error::Error GLES2DecoderImpl::HandleUniformMatrix3fvImmediate( | 2225 error::Error GLES2DecoderImpl::HandleUniformMatrix3fvImmediate( |
2199 uint32 immediate_data_size, const gles2::UniformMatrix3fvImmediate& c) { | 2226 uint32 immediate_data_size, const gles2::UniformMatrix3fvImmediate& c) { |
2200 GLint location = static_cast<GLint>(c.location); | 2227 GLint location = program_manager()->UnswizzleLocation( |
| 2228 static_cast<GLint>(c.location)); |
2201 GLsizei count = static_cast<GLsizei>(c.count); | 2229 GLsizei count = static_cast<GLsizei>(c.count); |
2202 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2230 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2203 uint32 data_size; | 2231 uint32 data_size; |
2204 if (!ComputeDataSize(count, sizeof(GLfloat), 9, &data_size)) { | 2232 if (!ComputeDataSize(count, sizeof(GLfloat), 9, &data_size)) { |
2205 return error::kOutOfBounds; | 2233 return error::kOutOfBounds; |
2206 } | 2234 } |
2207 if (data_size > immediate_data_size) { | 2235 if (data_size > immediate_data_size) { |
2208 return error::kOutOfBounds; | 2236 return error::kOutOfBounds; |
2209 } | 2237 } |
2210 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( | 2238 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( |
2211 c, data_size, immediate_data_size); | 2239 c, data_size, immediate_data_size); |
2212 if (!validators_->false_only.IsValid(transpose)) { | 2240 if (!validators_->false_only.IsValid(transpose)) { |
2213 SetGLError( | 2241 SetGLError( |
2214 GL_INVALID_VALUE, "glUniformMatrix3fv: transpose GL_INVALID_VALUE"); | 2242 GL_INVALID_VALUE, "glUniformMatrix3fv: transpose GL_INVALID_VALUE"); |
2215 return error::kNoError; | 2243 return error::kNoError; |
2216 } | 2244 } |
2217 if (value == NULL) { | 2245 if (value == NULL) { |
2218 return error::kOutOfBounds; | 2246 return error::kOutOfBounds; |
2219 } | 2247 } |
2220 DoUniformMatrix3fv(location, count, transpose, value); | 2248 DoUniformMatrix3fv(location, count, transpose, value); |
2221 return error::kNoError; | 2249 return error::kNoError; |
2222 } | 2250 } |
2223 | 2251 |
2224 error::Error GLES2DecoderImpl::HandleUniformMatrix4fv( | 2252 error::Error GLES2DecoderImpl::HandleUniformMatrix4fv( |
2225 uint32 immediate_data_size, const gles2::UniformMatrix4fv& c) { | 2253 uint32 immediate_data_size, const gles2::UniformMatrix4fv& c) { |
2226 GLint location = static_cast<GLint>(c.location); | 2254 GLint location = program_manager()->UnswizzleLocation( |
| 2255 static_cast<GLint>(c.location)); |
2227 GLsizei count = static_cast<GLsizei>(c.count); | 2256 GLsizei count = static_cast<GLsizei>(c.count); |
2228 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2257 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2229 uint32 data_size; | 2258 uint32 data_size; |
2230 if (!ComputeDataSize(count, sizeof(GLfloat), 16, &data_size)) { | 2259 if (!ComputeDataSize(count, sizeof(GLfloat), 16, &data_size)) { |
2231 return error::kOutOfBounds; | 2260 return error::kOutOfBounds; |
2232 } | 2261 } |
2233 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( | 2262 const GLfloat* value = GetSharedMemoryAs<const GLfloat*>( |
2234 c.value_shm_id, c.value_shm_offset, data_size); | 2263 c.value_shm_id, c.value_shm_offset, data_size); |
2235 if (!validators_->false_only.IsValid(transpose)) { | 2264 if (!validators_->false_only.IsValid(transpose)) { |
2236 SetGLError( | 2265 SetGLError( |
2237 GL_INVALID_VALUE, "glUniformMatrix4fv: transpose GL_INVALID_VALUE"); | 2266 GL_INVALID_VALUE, "glUniformMatrix4fv: transpose GL_INVALID_VALUE"); |
2238 return error::kNoError; | 2267 return error::kNoError; |
2239 } | 2268 } |
2240 if (value == NULL) { | 2269 if (value == NULL) { |
2241 return error::kOutOfBounds; | 2270 return error::kOutOfBounds; |
2242 } | 2271 } |
2243 DoUniformMatrix4fv(location, count, transpose, value); | 2272 DoUniformMatrix4fv(location, count, transpose, value); |
2244 return error::kNoError; | 2273 return error::kNoError; |
2245 } | 2274 } |
2246 | 2275 |
2247 error::Error GLES2DecoderImpl::HandleUniformMatrix4fvImmediate( | 2276 error::Error GLES2DecoderImpl::HandleUniformMatrix4fvImmediate( |
2248 uint32 immediate_data_size, const gles2::UniformMatrix4fvImmediate& c) { | 2277 uint32 immediate_data_size, const gles2::UniformMatrix4fvImmediate& c) { |
2249 GLint location = static_cast<GLint>(c.location); | 2278 GLint location = program_manager()->UnswizzleLocation( |
| 2279 static_cast<GLint>(c.location)); |
2250 GLsizei count = static_cast<GLsizei>(c.count); | 2280 GLsizei count = static_cast<GLsizei>(c.count); |
2251 GLboolean transpose = static_cast<GLboolean>(c.transpose); | 2281 GLboolean transpose = static_cast<GLboolean>(c.transpose); |
2252 uint32 data_size; | 2282 uint32 data_size; |
2253 if (!ComputeDataSize(count, sizeof(GLfloat), 16, &data_size)) { | 2283 if (!ComputeDataSize(count, sizeof(GLfloat), 16, &data_size)) { |
2254 return error::kOutOfBounds; | 2284 return error::kOutOfBounds; |
2255 } | 2285 } |
2256 if (data_size > immediate_data_size) { | 2286 if (data_size > immediate_data_size) { |
2257 return error::kOutOfBounds; | 2287 return error::kOutOfBounds; |
2258 } | 2288 } |
2259 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( | 2289 const GLfloat* value = GetImmediateDataAs<const GLfloat*>( |
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2620 if (height < 0) { | 2650 if (height < 0) { |
2621 SetGLError(GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM: height < 0"); | 2651 SetGLError(GL_INVALID_VALUE, "glTexImageIOSurface2DCHROMIUM: height < 0"); |
2622 return error::kNoError; | 2652 return error::kNoError; |
2623 } | 2653 } |
2624 DoTexImageIOSurface2DCHROMIUM(target, width, height, ioSurfaceId, plane); | 2654 DoTexImageIOSurface2DCHROMIUM(target, width, height, ioSurfaceId, plane); |
2625 return error::kNoError; | 2655 return error::kNoError; |
2626 } | 2656 } |
2627 | 2657 |
2628 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ | 2658 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ |
2629 | 2659 |
OLD | NEW |