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

Side by Side Diff: src/wasm/function-body-decoder.cc

Issue 2919203002: [WASM] Eliminate SIMD boolean vector types. (Closed)
Patch Set: Restore DCHECKs in AssembleMove/Swap now that we're back to 1 SIMD representation. Created 3 years, 6 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
« no previous file with comments | « src/machine-type.cc ('k') | src/wasm/function-body-decoder-impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/signature.h" 5 #include "src/signature.h"
6 6
7 #include "src/base/platform/elapsed-timer.h" 7 #include "src/base/platform/elapsed-timer.h"
8 #include "src/bit-vector.h" 8 #include "src/bit-vector.h"
9 #include "src/flags.h" 9 #include "src/flags.h"
10 #include "src/handles.h" 10 #include "src/handles.h"
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 break; 221 break;
222 case kLocalF32: 222 case kLocalF32:
223 type = kWasmF32; 223 type = kWasmF32;
224 break; 224 break;
225 case kLocalF64: 225 case kLocalF64:
226 type = kWasmF64; 226 type = kWasmF64;
227 break; 227 break;
228 case kLocalS128: 228 case kLocalS128:
229 type = kWasmS128; 229 type = kWasmS128;
230 break; 230 break;
231 case kLocalS1x4:
232 type = kWasmS1x4;
233 break;
234 case kLocalS1x8:
235 type = kWasmS1x8;
236 break;
237 case kLocalS1x16:
238 type = kWasmS1x16;
239 break;
240 default: 231 default:
241 decoder->error(decoder->pc() - 1, "invalid local type"); 232 decoder->error(decoder->pc() - 1, "invalid local type");
242 return false; 233 return false;
243 } 234 }
244 type_list->insert(type_list->end(), count, type); 235 type_list->insert(type_list->end(), count, type);
245 } 236 }
246 DCHECK(decoder->ok()); 237 DCHECK(decoder->ok());
247 return true; 238 return true;
248 } 239 }
249 240
(...skipping 504 matching lines...) Expand 10 before | Expand all | Expand 10 after
754 case kWasmI32: 745 case kWasmI32:
755 return builder_->Int32Constant(0); 746 return builder_->Int32Constant(0);
756 case kWasmI64: 747 case kWasmI64:
757 return builder_->Int64Constant(0); 748 return builder_->Int64Constant(0);
758 case kWasmF32: 749 case kWasmF32:
759 return builder_->Float32Constant(0); 750 return builder_->Float32Constant(0);
760 case kWasmF64: 751 case kWasmF64:
761 return builder_->Float64Constant(0); 752 return builder_->Float64Constant(0);
762 case kWasmS128: 753 case kWasmS128:
763 return builder_->S128Zero(); 754 return builder_->S128Zero();
764 case kWasmS1x4:
765 return builder_->S1x4Zero();
766 case kWasmS1x8:
767 return builder_->S1x8Zero();
768 case kWasmS1x16:
769 return builder_->S1x16Zero();
770 default: 755 default:
771 UNREACHABLE(); 756 UNREACHABLE();
772 } 757 }
773 } 758 }
774 759
775 char* indentation() { 760 char* indentation() {
776 static const int kMaxIndent = 64; 761 static const int kMaxIndent = 64;
777 static char bytes[kMaxIndent + 1]; 762 static char bytes[kMaxIndent + 1];
778 for (int i = 0; i < kMaxIndent; ++i) bytes[i] = ' '; 763 for (int i = 0; i < kMaxIndent; ++i) bytes[i] = ' ';
779 bytes[kMaxIndent] = 0; 764 bytes[kMaxIndent] = 0;
(...skipping 1519 matching lines...) Expand 10 before | Expand all | Expand 10 after
2299 BitVector* AnalyzeLoopAssignmentForTesting(Zone* zone, size_t num_locals, 2284 BitVector* AnalyzeLoopAssignmentForTesting(Zone* zone, size_t num_locals,
2300 const byte* start, const byte* end) { 2285 const byte* start, const byte* end) {
2301 Decoder decoder(start, end); 2286 Decoder decoder(start, end);
2302 return WasmDecoder::AnalyzeLoopAssignment(&decoder, start, 2287 return WasmDecoder::AnalyzeLoopAssignment(&decoder, start,
2303 static_cast<int>(num_locals), zone); 2288 static_cast<int>(num_locals), zone);
2304 } 2289 }
2305 2290
2306 } // namespace wasm 2291 } // namespace wasm
2307 } // namespace internal 2292 } // namespace internal
2308 } // namespace v8 2293 } // namespace v8
OLDNEW
« no previous file with comments | « src/machine-type.cc ('k') | src/wasm/function-body-decoder-impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698