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

Side by Side Diff: gpu/command_buffer/service/common_decoder.cc

Issue 11613021: Removing the JumpRelative, Call, CallRelative and Return commands. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Use Noops instead of Jump; Remove Jump command. Created 7 years, 11 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 | Annotate | Revision Log
OLDNEW
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 #include "gpu/command_buffer/service/common_decoder.h" 5 #include "gpu/command_buffer/service/common_decoder.h"
6 #include "gpu/command_buffer/service/cmd_buffer_engine.h" 6 #include "gpu/command_buffer/service/cmd_buffer_engine.h"
7 7
8 namespace gpu { 8 namespace gpu {
9 9
10 CommonDecoder::Bucket::Bucket() : size_(0) {} 10 CommonDecoder::Bucket::Bucket() : size_(0) {}
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 return error::kNoError; 179 return error::kNoError;
180 } 180 }
181 181
182 error::Error CommonDecoder::HandleSetToken( 182 error::Error CommonDecoder::HandleSetToken(
183 uint32 immediate_data_size, 183 uint32 immediate_data_size,
184 const cmd::SetToken& args) { 184 const cmd::SetToken& args) {
185 engine_->set_token(args.token); 185 engine_->set_token(args.token);
186 return error::kNoError; 186 return error::kNoError;
187 } 187 }
188 188
189 error::Error CommonDecoder::HandleJump(
190 uint32 immediate_data_size,
191 const cmd::Jump& args) {
192 if (!engine_->SetGetOffset(args.offset)) {
193 return error::kInvalidArguments;
194 }
195 return error::kNoError;
196 }
197
198 error::Error CommonDecoder::HandleJumpRelative(
199 uint32 immediate_data_size,
200 const cmd::JumpRelative& args) {
201 if (!engine_->SetGetOffset(engine_->GetGetOffset() + args.offset)) {
202 return error::kInvalidArguments;
203 }
204 return error::kNoError;
205 }
206
207 error::Error CommonDecoder::HandleCall(
208 uint32 immediate_data_size,
209 const cmd::Call& args) {
210 if (!PushAddress(args.offset)) {
211 return error::kInvalidArguments;
212 }
213 return error::kNoError;
214 }
215
216 error::Error CommonDecoder::HandleCallRelative(
217 uint32 immediate_data_size,
218 const cmd::CallRelative& args) {
219 if (!PushAddress(engine_->GetGetOffset() + args.offset)) {
220 return error::kInvalidArguments;
221 }
222 return error::kNoError;
223 }
224
225 error::Error CommonDecoder::HandleReturn(
226 uint32 immediate_data_size,
227 const cmd::Return& args) {
228 if (call_stack_.empty()) {
229 return error::kInvalidArguments;
230 }
231 CommandAddress return_address = call_stack_.top();
232 call_stack_.pop();
233 if (!engine_->SetGetOffset(return_address.offset)) {
234 return error::kInvalidArguments;
235 }
236 return error::kNoError;
237 }
238
239 error::Error CommonDecoder::HandleSetBucketSize( 189 error::Error CommonDecoder::HandleSetBucketSize(
240 uint32 immediate_data_size, 190 uint32 immediate_data_size,
241 const cmd::SetBucketSize& args) { 191 const cmd::SetBucketSize& args) {
242 uint32 bucket_id = args.bucket_id; 192 uint32 bucket_id = args.bucket_id;
243 uint32 size = args.size; 193 uint32 size = args.size;
244 194
245 Bucket* bucket = CreateBucket(bucket_id); 195 Bucket* bucket = CreateBucket(bucket_id);
246 bucket->SetSize(size); 196 bucket->SetSize(size);
247 return error::kNoError; 197 return error::kNoError;
248 } 198 }
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 } 293 }
344 const void* src = bucket->GetData(offset, size); 294 const void* src = bucket->GetData(offset, size);
345 if (!src) { 295 if (!src) {
346 return error::kInvalidArguments; 296 return error::kInvalidArguments;
347 } 297 }
348 memcpy(data, src, size); 298 memcpy(data, src, size);
349 return error::kNoError; 299 return error::kNoError;
350 } 300 }
351 301
352 } // namespace gpu 302 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/common/cmd_buffer_common.h ('k') | gpu/command_buffer/service/common_decoder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698