Changeset 35557
- Timestamp:
- 08/05/08 04:00:13 (4 months ago)
- Location:
- trunk
- Files:
-
- 3 added
- 3 modified
-
JavaScriptCore/ChangeLog (modified) (1 diff)
-
JavaScriptCore/VM/Machine.cpp (modified) (1 diff)
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/js/mod-crash-expected.txt (added)
-
LayoutTests/fast/js/mod-crash.html (added)
-
LayoutTests/fast/js/resources/mod-crash.js (added)
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r35555 r35557 1 2008-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 1 10 2008-08-05 Maciej Stachowiak <mjs@apple.com> 2 11 -
trunk/JavaScriptCore/VM/Machine.cpp
r35555 r35557 1433 1433 int dividend = (++vPC)->u.operand; 1434 1434 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))); 1447 1437 VM_CHECK_EXCEPTION(); 1448 1438 r[dst] = result; -
trunk/LayoutTests/ChangeLog
r35551 r35557 1 2008-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 1 11 2008-08-04 Bernhard Krüpl <kruepl@dbai.tuwien.ac.at> 2 12