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

Side by Side Diff: src/assembler.cc

Issue 2285223002: [wasm] Do not check load/store offsets with DCHECK. (Closed)
Patch Set: Add comment Created 4 years, 3 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 | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 343
344 const int kCodeWithIdTag = 0; 344 const int kCodeWithIdTag = 0;
345 const int kDeoptReasonTag = 1; 345 const int kDeoptReasonTag = 1;
346 346
347 void RelocInfo::update_wasm_memory_reference( 347 void RelocInfo::update_wasm_memory_reference(
348 Address old_base, Address new_base, uint32_t old_size, uint32_t new_size, 348 Address old_base, Address new_base, uint32_t old_size, uint32_t new_size,
349 ICacheFlushMode icache_flush_mode) { 349 ICacheFlushMode icache_flush_mode) {
350 DCHECK(IsWasmMemoryReference(rmode_) || IsWasmMemorySizeReference(rmode_)); 350 DCHECK(IsWasmMemoryReference(rmode_) || IsWasmMemorySizeReference(rmode_));
351 if (IsWasmMemoryReference(rmode_)) { 351 if (IsWasmMemoryReference(rmode_)) {
352 Address updated_reference; 352 Address updated_reference;
353 DCHECK(old_size == 0 || Memory::IsAddressInRange(
354 old_base, wasm_memory_reference(), old_size));
355 updated_reference = new_base + (wasm_memory_reference() - old_base); 353 updated_reference = new_base + (wasm_memory_reference() - old_base);
356 DCHECK(new_size == 0 || 354 // The reference is not checked here but at runtime. Validity of references
357 Memory::IsAddressInRange(new_base, updated_reference, new_size)); 355 // may change over time.
358 unchecked_update_wasm_memory_reference(updated_reference, 356 unchecked_update_wasm_memory_reference(updated_reference,
359 icache_flush_mode); 357 icache_flush_mode);
360 } else if (IsWasmMemorySizeReference(rmode_)) { 358 } else if (IsWasmMemorySizeReference(rmode_)) {
361 uint32_t updated_size_reference; 359 uint32_t updated_size_reference;
362 DCHECK(old_size == 0 || wasm_memory_size_reference() <= old_size); 360 DCHECK(old_size == 0 || wasm_memory_size_reference() <= old_size);
363 updated_size_reference = 361 updated_size_reference =
364 new_size + (wasm_memory_size_reference() - old_size); 362 new_size + (wasm_memory_size_reference() - old_size);
365 DCHECK(updated_size_reference <= new_size); 363 DCHECK(updated_size_reference <= new_size);
366 unchecked_update_wasm_memory_size(updated_size_reference, 364 unchecked_update_wasm_memory_size(updated_size_reference,
367 icache_flush_mode); 365 icache_flush_mode);
(...skipping 1590 matching lines...) Expand 10 before | Expand all | Expand 10 after
1958 1956
1959 1957
1960 void Assembler::DataAlign(int m) { 1958 void Assembler::DataAlign(int m) {
1961 DCHECK(m >= 2 && base::bits::IsPowerOfTwo32(m)); 1959 DCHECK(m >= 2 && base::bits::IsPowerOfTwo32(m));
1962 while ((pc_offset() & (m - 1)) != 0) { 1960 while ((pc_offset() & (m - 1)) != 0) {
1963 db(0); 1961 db(0);
1964 } 1962 }
1965 } 1963 }
1966 } // namespace internal 1964 } // namespace internal
1967 } // namespace v8 1965 } // namespace v8
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698