diff options
Diffstat (limited to 'js/src/jit/RangeAnalysis.cpp')
-rw-r--r-- | js/src/jit/RangeAnalysis.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/js/src/jit/RangeAnalysis.cpp b/js/src/jit/RangeAnalysis.cpp index 4ed15daabb..bd8380a690 100644 --- a/js/src/jit/RangeAnalysis.cpp +++ b/js/src/jit/RangeAnalysis.cpp @@ -1802,6 +1802,25 @@ void MArrayBufferViewByteOffset::computeRange(TempAllocator& alloc) { } } +void MResizableTypedArrayByteOffsetMaybeOutOfBounds::computeRange( + TempAllocator& alloc) { + if constexpr (ArrayBufferObject::ByteLengthLimit <= INT32_MAX) { + setRange(Range::NewUInt32Range(alloc, 0, INT32_MAX)); + } +} + +void MResizableTypedArrayLength::computeRange(TempAllocator& alloc) { + if constexpr (ArrayBufferObject::ByteLengthLimit <= INT32_MAX) { + setRange(Range::NewUInt32Range(alloc, 0, INT32_MAX)); + } +} + +void MResizableDataViewByteLength::computeRange(TempAllocator& alloc) { + if constexpr (ArrayBufferObject::ByteLengthLimit <= INT32_MAX) { + setRange(Range::NewUInt32Range(alloc, 0, INT32_MAX)); + } +} + void MTypedArrayElementSize::computeRange(TempAllocator& alloc) { constexpr auto MaxTypedArraySize = sizeof(double); |