2009-12-09 Maciej Stachowiak <mjs@apple.com>
authormjs@apple.com <mjs@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Dec 2009 07:47:41 +0000 (07:47 +0000)
committermjs@apple.com <mjs@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Dec 2009 07:47:41 +0000 (07:47 +0000)
        Reviewed by Oliver Hunt.

        Google reader gets stuck in the "Loading..." state and does not complete
        https://bugs.webkit.org/show_bug.cgi?id=32256
        <rdar://problem/7456388>

        * jit/JITArithmetic.cpp:
        (JSC::JIT::emitSlow_op_jless): Fix some backward branches.
2009-12-09  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        Test for: Google reader gets stuck in the "Loading..." state and does not complete
        https://bugs.webkit.org/show_bug.cgi?id=32256

        * fast/js/codegen-jless-expected.txt: Added.
        * fast/js/codegen-jless.html: Added.
        * fast/js/script-tests/codegen-jless.js: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

JavaScriptCore/ChangeLog
JavaScriptCore/jit/JITArithmetic.cpp
LayoutTests/ChangeLog
LayoutTests/fast/js/codegen-jless-expected.txt [new file with mode: 0644]
LayoutTests/fast/js/codegen-jless.html [new file with mode: 0644]
LayoutTests/fast/js/script-tests/codegen-jless.js [new file with mode: 0644]
LayoutTests/platform/win/editing/selection/doubleclick-should-not-expand-across-lines.html

index aa0a0b3ae0150b9419a862bf0d43e052bdf98f8e..56e58ad8f9017b69093138bd5ee37696e23796b5 100644 (file)
@@ -1,3 +1,14 @@
+2009-12-09  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Google reader gets stuck in the "Loading..." state and does not complete
+        https://bugs.webkit.org/show_bug.cgi?id=32256
+        <rdar://problem/7456388>
+
+        * jit/JITArithmetic.cpp:
+        (JSC::JIT::emitSlow_op_jless): Fix some backward branches.
+
 2009-12-09  Gavin Barraclough  <barraclough@apple.com>
 
         Reviewed by Oliver Hunt.
index 1b9e55e5f5529b7091e007c7a527b54f2d6eb678..70f7564092e731dee1e88e0bfc81076373b8ddaf 100644 (file)
@@ -1614,7 +1614,7 @@ void JIT::emitSlow_op_jless(Instruction* currentInstruction, Vector<SlowCaseEntr
         stubCall.addArgument(regT0);
         stubCall.addArgument(op2, regT2);
         stubCall.call();
-        emitJumpSlowToHot(branchTest32(Zero, regT0), target);
+        emitJumpSlowToHot(branchTest32(NonZero, regT0), target);
 
     } else if (isOperandConstantImmediateInt(op1)) {
         linkSlowCase(iter);
@@ -1655,7 +1655,7 @@ void JIT::emitSlow_op_jless(Instruction* currentInstruction, Vector<SlowCaseEntr
         stubCall.addArgument(op1, regT2);
         stubCall.addArgument(regT1);
         stubCall.call();
-        emitJumpSlowToHot(branchTest32(Zero, regT0), target);
+        emitJumpSlowToHot(branchTest32(NonZero, regT0), target);
 
     } else {
         linkSlowCase(iter);
index 0f3864976f950e376904fd3089f377f4a0c59d69..f7be8a4c91ba30a466b7c47182188543fc9b2f3f 100644 (file)
@@ -1,3 +1,14 @@
+2009-12-09  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Test for: Google reader gets stuck in the "Loading..." state and does not complete
+        https://bugs.webkit.org/show_bug.cgi?id=32256
+
+        * fast/js/codegen-jless-expected.txt: Added.
+        * fast/js/codegen-jless.html: Added.
+        * fast/js/script-tests/codegen-jless.js: Added.
+
 2009-12-09  Csaba Osztrogon√°c  <ossy@webkit.org>
 
         [Qt] Unreviewed. Skip a timeouter flakey test.
diff --git a/LayoutTests/fast/js/codegen-jless-expected.txt b/LayoutTests/fast/js/codegen-jless-expected.txt
new file mode 100644 (file)
index 0000000..74c1adc
--- /dev/null
@@ -0,0 +1,10 @@
+Tests particular unusual cases of jump-if-less codegen.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS !(true && undefined > 0) ? 'true' : 'false' is 'true'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
diff --git a/LayoutTests/fast/js/codegen-jless.html b/LayoutTests/fast/js/codegen-jless.html
new file mode 100644 (file)
index 0000000..792ccbc
--- /dev/null
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<link rel="stylesheet" href="resources/js-test-style.css">
+<script src="resources/js-test-pre.js"></script>
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script src="script-tests/codegen-jless.js"></script>
+<script src="resources/js-test-post.js"></script>
+</body>
+</html>
diff --git a/LayoutTests/fast/js/script-tests/codegen-jless.js b/LayoutTests/fast/js/script-tests/codegen-jless.js
new file mode 100644 (file)
index 0000000..6cbb0ac
--- /dev/null
@@ -0,0 +1,7 @@
+description(
+"Tests particular unusual cases of jump-if-less codegen."
+);
+
+shouldBe("!(true && undefined > 0) ? 'true' : 'false'", "'true'");
+
+var successfullyParsed = true;
index 4e2b43943e17699aacb92f97bef0e219591adcba..fbf2e6729483ea2244970d4de3e0c89388c99d8c 100644 (file)
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <html>
 <head>
-<link rel="stylesheet" href="../../../../fast/js/resources/js-test-style.css">
-<script src="../../../../fast/js/resources/js-test-pre.js"></script>
+<link rel="stylesheet" href="../../../fast/js/resources/js-test-style.css">
+<script src="../../../fast/js/resources/js-test-pre.js"></script>
 </head>
 <body>
 <p id="description"></p>
 <div id="console"></div>
 <script src="script-tests/doubleclick-should-not-expand-across-lines.js"></script>
-<script src="../../../../fast/js/resources/js-test-post.js"></script>
+<script src="../../../fast/js/resources/js-test-post.js"></script>
 </body>
 </html>