Changeset 122208 in webkit


Ignore:
Timestamp:
Jul 10, 2012 2:36:13 AM (12 years ago)
Author:
Csaba Osztrogonác
Message:

REGRESSION(r122166): It made 170 tests crash on 32 bit platforms
https://bugs.webkit.org/show_bug.cgi?id=90852

Patch by Filip Pizlo <fpizlo@apple.com> on 2012-07-10
Reviewed by Zoltan Herczeg.

If we can't use the range filter, we should still make sure that the
address is remotely sane, otherwise the hashtables will assert.

  • jit/JITStubRoutine.h:

(JSC::JITStubRoutine::passesFilter):

Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r122206 r122208  
     12012-07-10  Filip Pizlo  <fpizlo@apple.com>
     2
     3        REGRESSION(r122166): It made 170 tests crash on 32 bit platforms
     4        https://bugs.webkit.org/show_bug.cgi?id=90852
     5
     6        Reviewed by Zoltan Herczeg.
     7       
     8        If we can't use the range filter, we should still make sure that the
     9        address is remotely sane, otherwise the hashtables will assert.
     10
     11        * jit/JITStubRoutine.h:
     12        (JSC::JITStubRoutine::passesFilter):
     13
    1142012-07-10  Filip Pizlo  <fpizlo@apple.com>
    215
  • trunk/Source/JavaScriptCore/jit/JITStubRoutine.h

    r122166 r122208  
    131131    static bool passesFilter(uintptr_t address)
    132132    {
    133         if (!canPerformRangeFilter())
    134             return true;
     133        if (!canPerformRangeFilter()) {
     134            // Just check that the address doesn't use any special values that would make
     135            // our hashtables upset.
     136            return address >= jitAllocationGranule && address != std::numeric_limits<uintptr_t>::max();
     137        }
    135138       
    136139        if (address - filteringStartAddress() >= filteringExtentSize())
Note: See TracChangeset for help on using the changeset viewer.