mirror of
https://github.com/openjdk/jdk.git
synced 2026-02-01 14:08:24 +00:00
Merge
This commit is contained in:
commit
e83ae85105
@ -123,22 +123,22 @@ final class BranchOptimizer {
|
||||
|
||||
case GE:
|
||||
codegen.loadBinaryOperands(lhs, rhs, Type.widest(lhs.getType(), rhs.getType()));
|
||||
method.conditionalJump(state ? GE : LT, !state, label);
|
||||
method.conditionalJump(state ? GE : LT, false, label);
|
||||
return;
|
||||
|
||||
case GT:
|
||||
codegen.loadBinaryOperands(lhs, rhs, Type.widest(lhs.getType(), rhs.getType()));
|
||||
method.conditionalJump(state ? GT : LE, !state, label);
|
||||
method.conditionalJump(state ? GT : LE, false, label);
|
||||
return;
|
||||
|
||||
case LE:
|
||||
codegen.loadBinaryOperands(lhs, rhs, Type.widest(lhs.getType(), rhs.getType()));
|
||||
method.conditionalJump(state ? LE : GT, state, label);
|
||||
method.conditionalJump(state ? LE : GT, true, label);
|
||||
return;
|
||||
|
||||
case LT:
|
||||
codegen.loadBinaryOperands(lhs, rhs, Type.widest(lhs.getType(), rhs.getType()));
|
||||
method.conditionalJump(state ? LT : GE, state, label);
|
||||
method.conditionalJump(state ? LT : GE, true, label);
|
||||
return;
|
||||
|
||||
default:
|
||||
|
||||
100
nashorn/test/script/basic/JDK-8040024.js
Normal file
100
nashorn/test/script/basic/JDK-8040024.js
Normal file
@ -0,0 +1,100 @@
|
||||
/*
|
||||
* Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/**
|
||||
* JDK-8040024: NaN comparisons were failing
|
||||
*
|
||||
* @test
|
||||
* @run
|
||||
*/
|
||||
|
||||
function f(x) {
|
||||
if((x - '0') <= 9) {
|
||||
print("FAIL if <=");
|
||||
} else {
|
||||
print("OK");
|
||||
}
|
||||
|
||||
if((x - '0') < 9) {
|
||||
print("FAIL if <");
|
||||
} else {
|
||||
print("OK");
|
||||
}
|
||||
|
||||
if((x - '0') >= 9) {
|
||||
print("FAIL if >=");
|
||||
} else {
|
||||
print("OK");
|
||||
}
|
||||
|
||||
if((x - '0') > 9) {
|
||||
print("FAIL if >");
|
||||
} else {
|
||||
print("OK");
|
||||
}
|
||||
|
||||
while((x - '0') <= 9) {
|
||||
print("FAIL while <=");
|
||||
break;
|
||||
}
|
||||
|
||||
while((x - '0') < 9) {
|
||||
print("FAIL while <");
|
||||
break;
|
||||
}
|
||||
|
||||
while((x - '0') > 9) {
|
||||
print("FAIL while >");
|
||||
break;
|
||||
}
|
||||
|
||||
while((x - '0') >= 9) {
|
||||
print("FAIL while >=");
|
||||
break;
|
||||
}
|
||||
|
||||
var i = 0;
|
||||
do {
|
||||
print("do-while <= only once");
|
||||
if(++i == 2) { break; }
|
||||
} while((x - '0') <= 9);
|
||||
|
||||
var i = 0;
|
||||
do {
|
||||
print("do-while < only once");
|
||||
if(++i == 2) { break; }
|
||||
} while((x - '0') < 9);
|
||||
|
||||
var i = 0;
|
||||
do {
|
||||
print("do-while >= only once");
|
||||
if(++i == 2) { break; }
|
||||
} while((x - '0') >= 9);
|
||||
|
||||
var i = 0;
|
||||
do {
|
||||
print("do-while > only once");
|
||||
if(++i == 2) { break; }
|
||||
} while((x - '0') > 9);
|
||||
}
|
||||
f('%')
|
||||
8
nashorn/test/script/basic/JDK-8040024.js.EXPECTED
Normal file
8
nashorn/test/script/basic/JDK-8040024.js.EXPECTED
Normal file
@ -0,0 +1,8 @@
|
||||
OK
|
||||
OK
|
||||
OK
|
||||
OK
|
||||
do-while <= only once
|
||||
do-while < only once
|
||||
do-while >= only once
|
||||
do-while > only once
|
||||
Loading…
x
Reference in New Issue
Block a user