8080600: AARCH64: testlibrary does not support AArch64

Add Platform.isAArch64().  Use it in mathexact intrinsic tests.

Reviewed-by: kvn, roland
This commit is contained in:
Andrew Haley 2015-05-20 10:21:02 +01:00
parent 7c62a26e6b
commit d917a8866c
3 changed files with 8 additions and 3 deletions

View File

@ -129,7 +129,8 @@ public abstract class IntrinsicBase extends CompilerWhiteBoxTest {
@Override @Override
protected boolean isIntrinsicSupported() { protected boolean isIntrinsicSupported() {
return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && (Platform.isX86() || Platform.isX64()); return isServerVM() && Boolean.valueOf(useMathExactIntrinsics)
&& (Platform.isX86() || Platform.isX64() || Platform.isAArch64());
} }
@Override @Override
@ -146,7 +147,7 @@ public abstract class IntrinsicBase extends CompilerWhiteBoxTest {
@Override @Override
protected boolean isIntrinsicSupported() { protected boolean isIntrinsicSupported() {
return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) && return isServerVM() && Boolean.valueOf(useMathExactIntrinsics) &&
(Platform.isX64() || Platform.isPPC()); (Platform.isX64() || Platform.isPPC() || Platform.isAArch64());
} }
@Override @Override

View File

@ -132,6 +132,10 @@ public class Platform {
return isArch("(amd64)|(x86_64)"); return isArch("(amd64)|(x86_64)");
} }
public static boolean isAArch64() {
return isArch("aarch64");
}
private static boolean isArch(String archnameRE) { private static boolean isArch(String archnameRE) {
return Pattern.compile(archnameRE, Pattern.CASE_INSENSITIVE) return Pattern.compile(archnameRE, Pattern.CASE_INSENSITIVE)
.matcher(osArch) .matcher(osArch)

View File

@ -45,7 +45,7 @@ import java.util.Set;
*/ */
public class TestMutuallyExclusivePlatformPredicates { public class TestMutuallyExclusivePlatformPredicates {
private static enum MethodGroup { private static enum MethodGroup {
ARCH("isARM", "isPPC", "isSparc", "isX86", "isX64"), ARCH("isARM", "isPPC", "isSparc", "isX86", "isX64", "isAArch64"),
BITNESS("is32bit", "is64bit"), BITNESS("is32bit", "is64bit"),
OS("isAix", "isLinux", "isOSX", "isSolaris", "isWindows"), OS("isAix", "isLinux", "isOSX", "isSolaris", "isWindows"),
VM_TYPE("isClient", "isServer", "isGraal", "isMinimal", "isZero"), VM_TYPE("isClient", "isServer", "isGraal", "isMinimal", "isZero"),