Revert 'Temporary disable new intrinsics usage in ieee754 arithmetic'
This commit is contained in:
@@ -3675,11 +3675,7 @@ public class ExpressionCodegen extends KtVisitor<StackValue, StackValue> impleme
|
|||||||
if (left754Type != null && right754Type != null && left754Type.type.equals(right754Type.type)) {
|
if (left754Type != null && right754Type != null && left754Type.type.equals(right754Type.type)) {
|
||||||
//check nullability cause there is some optimizations in codegen for non-nullable case
|
//check nullability cause there is some optimizations in codegen for non-nullable case
|
||||||
if (left754Type.isNullable || right754Type.isNullable) {
|
if (left754Type.isNullable || right754Type.isNullable) {
|
||||||
// Using Intrinsics.areEqual is preferable here, but will result in NoSuchMethodError at runtime if the runtime
|
if (state.getLanguageVersionSettings().getApiVersion().compareTo(ApiVersion.KOTLIN_1_1) >= 0) {
|
||||||
// of version 1.0 is used and the user forgot to explicitly specify language version / API version.
|
|
||||||
// This should be enabled when/if we decide to drop support for "-language-version 1.0" / "-api-version 1.0"
|
|
||||||
//noinspection ConstantConditions, PointlessBooleanExpression
|
|
||||||
if (false && state.getLanguageVersionSettings().getApiVersion().compareTo(ApiVersion.KOTLIN_1_1) >= 0) {
|
|
||||||
return StackValue.operation(Type.BOOLEAN_TYPE, new Function1<InstructionAdapter, Unit>() {
|
return StackValue.operation(Type.BOOLEAN_TYPE, new Function1<InstructionAdapter, Unit>() {
|
||||||
@Override
|
@Override
|
||||||
public Unit invoke(InstructionAdapter v) {
|
public Unit invoke(InstructionAdapter v) {
|
||||||
|
|||||||
@@ -24,8 +24,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
// 1 areEqual \(DLjava/lang/Double;\)Z
|
||||||
1 areEqual \(DLjava/lang/Double;\)Z
|
// 1 areEqual \(Ljava/lang/Double;D\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;D\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
@@ -24,8 +24,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
// 1 areEqual \(DLjava/lang/Double;\)Z
|
||||||
1 areEqual \(DLjava/lang/Double;\)Z
|
// 1 areEqual \(Ljava/lang/Double;D\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;D\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
@@ -24,8 +24,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
// 1 areEqual \(FLjava/lang/Float;\)Z
|
||||||
1 areEqual \(FLjava/lang/Float;\)Z
|
// 1 areEqual \(Ljava/lang/Float;F\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;F\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
@@ -24,8 +24,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
// 1 areEqual \(FLjava/lang/Float;\)Z
|
||||||
1 areEqual \(FLjava/lang/Float;\)Z
|
// 1 areEqual \(Ljava/lang/Float;F\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;F\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
@@ -17,8 +17,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
// 1 areEqual \(DLjava/lang/Double;\)Z
|
||||||
1 areEqual \(DLjava/lang/Double;\)Z
|
// 1 areEqual \(Ljava/lang/Double;D\)Z
|
||||||
1 areEqual \(Ljava/lang/Double;D\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
@@ -17,8 +17,7 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;Ljava/lang/Float;\)Z
|
// 1 areEqual \(FLjava/lang/Float;\)Z
|
||||||
1 areEqual \(FLjava/lang/Float;\)Z
|
// 1 areEqual \(Ljava/lang/Float;F\)Z
|
||||||
1 areEqual \(Ljava/lang/Float;F\)Z
|
// 3 areEqual
|
||||||
3 areEqual*/
|
|
||||||
|
|||||||
+2
-3
@@ -27,6 +27,5 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 2 areEqual \(DLjava/lang/Double;\)Z
|
||||||
2 areEqual \(DLjava/lang/Double;\)Z
|
// 2 areEqual
|
||||||
2 areEqual*/
|
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ fun box(): String {
|
|||||||
return "OK"
|
return "OK"
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
// 2 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
||||||
2 areEqual \(Ljava/lang/Double;Ljava/lang/Double;\)Z
|
// 2 areEqual \(Ljava/lang/Double;D\)Z
|
||||||
2 areEqual \(Ljava/lang/Double;D\)Z
|
// 4 areEqual
|
||||||
4 areEqual*/
|
|
||||||
|
|||||||
Reference in New Issue
Block a user