Changeset 35557

Show
Ignore:
Timestamp:
08/05/08 04:00:13 (4 months ago)
Author:
cwzwarich@webkit.org
Message:

2008-08-05 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Roll out r35555 because of correctness issues.

JavaScriptCore:

  • VM/Machine.cpp: (KJS::Machine::privateExecute):

LayoutTests:

  • fast/js/mod-crash-expected.txt: Added.
  • fast/js/mod-crash.html: Added.
  • fast/js/resources/mod-crash.js: Added.
Location:
trunk
Files:
3 added
3 modified

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/ChangeLog

    r35555 r35557  
     12008-08-05  Cameron Zwarich  <cwzwarich@uwaterloo.ca> 
     2 
     3        Reviewed by Oliver. 
     4 
     5        Roll out r35555 because of correctness issues. 
     6 
     7        * VM/Machine.cpp: 
     8        (KJS::Machine::privateExecute): 
     9 
    1102008-08-05  Maciej Stachowiak  <mjs@apple.com> 
    211 
  • trunk/JavaScriptCore/VM/Machine.cpp

    r35555 r35557  
    14331433        int dividend = (++vPC)->u.operand; 
    14341434        int divisor = (++vPC)->u.operand; 
    1435  
    1436         JSValue* dividendValue = r[dividend].jsValue(exec); 
    1437         JSValue* divisorValue = r[divisor].jsValue(exec); 
    1438  
    1439         if (JSImmediate::areBothImmediateNumbers(dividendValue, divisorValue)) { 
    1440             r[dst] = JSImmediate::from(JSImmediate::getTruncatedInt32(dividendValue) % JSImmediate::getTruncatedInt32(divisorValue)); 
    1441             ++vPC; 
    1442             NEXT_OPCODE; 
    1443         } 
    1444  
    1445         double d = dividendValue->toNumber(exec); 
    1446         JSValue* result = jsNumber(exec, fmod(d, divisorValue->toNumber(exec))); 
     1435        double d = r[dividend].jsValue(exec)->toNumber(exec); 
     1436        JSValue* result = jsNumber(exec, fmod(d, r[divisor].jsValue(exec)->toNumber(exec))); 
    14471437        VM_CHECK_EXCEPTION(); 
    14481438        r[dst] = result; 
  • trunk/LayoutTests/ChangeLog

    r35551 r35557  
     12008-08-05  Cameron Zwarich  <cwzwarich@uwaterloo.ca> 
     2 
     3        Reviewed by Oliver. 
     4 
     5        Add tests for optimizations of the modulo operator in JavaScript. 
     6 
     7        * fast/js/mod-crash-expected.txt: Added. 
     8        * fast/js/mod-crash.html: Added. 
     9        * fast/js/resources/mod-crash.js: Added. 
     10 
    1112008-08-04  Bernhard Krüpl  <kruepl@dbai.tuwien.ac.at> 
    212