Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_autogen.h

Issue 935333002: Update from https://crrev.com/316786 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 // It's formatted by clang-format using chromium coding style: 7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename 8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT! 9 // DO NOT EDIT!
10 10
(...skipping 2414 matching lines...) Expand 10 before | Expand all | Expand 10 after
2425 } 2425 }
2426 2426
2427 error::Error GLES2DecoderImpl::HandleShaderSourceBucket( 2427 error::Error GLES2DecoderImpl::HandleShaderSourceBucket(
2428 uint32_t immediate_data_size, 2428 uint32_t immediate_data_size,
2429 const void* cmd_data) { 2429 const void* cmd_data) {
2430 const gles2::cmds::ShaderSourceBucket& c = 2430 const gles2::cmds::ShaderSourceBucket& c =
2431 *static_cast<const gles2::cmds::ShaderSourceBucket*>(cmd_data); 2431 *static_cast<const gles2::cmds::ShaderSourceBucket*>(cmd_data);
2432 (void)c; 2432 (void)c;
2433 GLuint shader = static_cast<GLuint>(c.shader); 2433 GLuint shader = static_cast<GLuint>(c.shader);
2434 2434
2435 const size_t kMinBucketSize = sizeof(GLint);
2436 // Each string has at least |length| in the header and a NUL character.
2437 const size_t kMinStringSize = sizeof(GLint) + 1;
2438 Bucket* bucket = GetBucket(c.str_bucket_id); 2435 Bucket* bucket = GetBucket(c.str_bucket_id);
2439 if (!bucket) { 2436 if (!bucket) {
2440 return error::kInvalidArguments; 2437 return error::kInvalidArguments;
2441 } 2438 }
2442 const size_t bucket_size = bucket->size(); 2439 GLsizei count = 0;
2443 if (bucket_size < kMinBucketSize) { 2440 std::vector<char*> strs;
2441 std::vector<GLint> len;
2442 if (!bucket->GetAsStrings(&count, &strs, &len)) {
2444 return error::kInvalidArguments; 2443 return error::kInvalidArguments;
2445 } 2444 }
2446 const char* bucket_data = bucket->GetDataAs<const char*>(0, bucket_size); 2445 const char** str =
2447 const GLint* header = reinterpret_cast<const GLint*>(bucket_data); 2446 strs.size() > 0 ? const_cast<const char**>(&strs[0]) : NULL;
2448 GLsizei count = static_cast<GLsizei>(header[0]); 2447 const GLint* length =
2449 if (count < 0) { 2448 len.size() > 0 ? const_cast<const GLint*>(&len[0]) : NULL;
2450 return error::kInvalidArguments; 2449 (void)length;
2451 }
2452 const size_t max_count = (bucket_size - kMinBucketSize) / kMinStringSize;
2453 if (max_count < static_cast<size_t>(count)) {
2454 return error::kInvalidArguments;
2455 }
2456 const GLint* length = header + 1;
2457 scoped_ptr<const char* []> strs;
2458 if (count > 0)
2459 strs.reset(new const char* [count]);
2460 const char** str = strs.get();
2461 base::CheckedNumeric<size_t> total_size = sizeof(GLint);
2462 total_size *= count + 1; // Header size.
2463 if (!total_size.IsValid())
2464 return error::kInvalidArguments;
2465 for (GLsizei ii = 0; ii < count; ++ii) {
2466 str[ii] = bucket_data + total_size.ValueOrDefault(0);
2467 total_size += length[ii];
2468 total_size += 1; // NUL char at the end of each char array.
2469 if (!total_size.IsValid() || total_size.ValueOrDefault(0) > bucket_size ||
2470 str[ii][length[ii]] != 0) {
2471 return error::kInvalidArguments;
2472 }
2473 }
2474 if (total_size.ValueOrDefault(0) != bucket_size) {
2475 return error::kInvalidArguments;
2476 }
2477 DoShaderSource(shader, count, str, length); 2450 DoShaderSource(shader, count, str, length);
2478 return error::kNoError; 2451 return error::kNoError;
2479 } 2452 }
2480 2453
2481 error::Error GLES2DecoderImpl::HandleStencilFunc(uint32_t immediate_data_size, 2454 error::Error GLES2DecoderImpl::HandleStencilFunc(uint32_t immediate_data_size,
2482 const void* cmd_data) { 2455 const void* cmd_data) {
2483 const gles2::cmds::StencilFunc& c = 2456 const gles2::cmds::StencilFunc& c =
2484 *static_cast<const gles2::cmds::StencilFunc*>(cmd_data); 2457 *static_cast<const gles2::cmds::StencilFunc*>(cmd_data);
2485 (void)c; 2458 (void)c;
2486 GLenum func = static_cast<GLenum>(c.func); 2459 GLenum func = static_cast<GLenum>(c.func);
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
2810 uint32_t immediate_data_size, 2783 uint32_t immediate_data_size,
2811 const void* cmd_data) { 2784 const void* cmd_data) {
2812 if (!unsafe_es3_apis_enabled()) 2785 if (!unsafe_es3_apis_enabled())
2813 return error::kUnknownCommand; 2786 return error::kUnknownCommand;
2814 const gles2::cmds::TransformFeedbackVaryingsBucket& c = 2787 const gles2::cmds::TransformFeedbackVaryingsBucket& c =
2815 *static_cast<const gles2::cmds::TransformFeedbackVaryingsBucket*>( 2788 *static_cast<const gles2::cmds::TransformFeedbackVaryingsBucket*>(
2816 cmd_data); 2789 cmd_data);
2817 (void)c; 2790 (void)c;
2818 GLuint program = static_cast<GLuint>(c.program); 2791 GLuint program = static_cast<GLuint>(c.program);
2819 2792
2820 const size_t kMinBucketSize = sizeof(GLint);
2821 // Each string has at least |length| in the header and a NUL character.
2822 const size_t kMinStringSize = sizeof(GLint) + 1;
2823 Bucket* bucket = GetBucket(c.varyings_bucket_id); 2793 Bucket* bucket = GetBucket(c.varyings_bucket_id);
2824 if (!bucket) { 2794 if (!bucket) {
2825 return error::kInvalidArguments; 2795 return error::kInvalidArguments;
2826 } 2796 }
2827 const size_t bucket_size = bucket->size(); 2797 GLsizei count = 0;
2828 if (bucket_size < kMinBucketSize) { 2798 std::vector<char*> strs;
2799 std::vector<GLint> len;
2800 if (!bucket->GetAsStrings(&count, &strs, &len)) {
2829 return error::kInvalidArguments; 2801 return error::kInvalidArguments;
2830 } 2802 }
2831 const char* bucket_data = bucket->GetDataAs<const char*>(0, bucket_size); 2803 const char** varyings =
2832 const GLint* header = reinterpret_cast<const GLint*>(bucket_data); 2804 strs.size() > 0 ? const_cast<const char**>(&strs[0]) : NULL;
2833 GLsizei count = static_cast<GLsizei>(header[0]); 2805 const GLint* length =
2834 if (count < 0) { 2806 len.size() > 0 ? const_cast<const GLint*>(&len[0]) : NULL;
2835 return error::kInvalidArguments; 2807 (void)length;
2836 }
2837 const size_t max_count = (bucket_size - kMinBucketSize) / kMinStringSize;
2838 if (max_count < static_cast<size_t>(count)) {
2839 return error::kInvalidArguments;
2840 }
2841 const GLint* length = header + 1;
2842 scoped_ptr<const char* []> strs;
2843 if (count > 0)
2844 strs.reset(new const char* [count]);
2845 const char** varyings = strs.get();
2846 base::CheckedNumeric<size_t> total_size = sizeof(GLint);
2847 total_size *= count + 1; // Header size.
2848 if (!total_size.IsValid())
2849 return error::kInvalidArguments;
2850 for (GLsizei ii = 0; ii < count; ++ii) {
2851 varyings[ii] = bucket_data + total_size.ValueOrDefault(0);
2852 total_size += length[ii];
2853 total_size += 1; // NUL char at the end of each char array.
2854 if (!total_size.IsValid() || total_size.ValueOrDefault(0) > bucket_size ||
2855 varyings[ii][length[ii]] != 0) {
2856 return error::kInvalidArguments;
2857 }
2858 }
2859 if (total_size.ValueOrDefault(0) != bucket_size) {
2860 return error::kInvalidArguments;
2861 }
2862 GLenum buffermode = static_cast<GLenum>(c.buffermode); 2808 GLenum buffermode = static_cast<GLenum>(c.buffermode);
2863 DoTransformFeedbackVaryings(program, count, varyings, buffermode); 2809 DoTransformFeedbackVaryings(program, count, varyings, buffermode);
2864 return error::kNoError; 2810 return error::kNoError;
2865 } 2811 }
2866 2812
2867 error::Error GLES2DecoderImpl::HandleUniform1f(uint32_t immediate_data_size, 2813 error::Error GLES2DecoderImpl::HandleUniform1f(uint32_t immediate_data_size,
2868 const void* cmd_data) { 2814 const void* cmd_data) {
2869 const gles2::cmds::Uniform1f& c = 2815 const gles2::cmds::Uniform1f& c =
2870 *static_cast<const gles2::cmds::Uniform1f*>(cmd_data); 2816 *static_cast<const gles2::cmds::Uniform1f*>(cmd_data);
2871 (void)c; 2817 (void)c;
(...skipping 2001 matching lines...) Expand 10 before | Expand all | Expand 10 after
4873 state_.ignore_cached_state) { 4819 state_.ignore_cached_state) {
4874 framebuffer_state_.clear_state_dirty = true; 4820 framebuffer_state_.clear_state_dirty = true;
4875 } 4821 }
4876 return false; 4822 return false;
4877 default: 4823 default:
4878 NOTREACHED(); 4824 NOTREACHED();
4879 return false; 4825 return false;
4880 } 4826 }
4881 } 4827 }
4882 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 4828 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_unittest_1.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698