Merge
This commit is contained in:
commit
e40d67ac75
@ -369,7 +369,7 @@ define add_file_to_clean
|
|||||||
$(MKDIR) -p $$(@D)
|
$(MKDIR) -p $$(@D)
|
||||||
export LC_ALL=C ; ( $(CAT) $$< && $(ECHO) "" ) \
|
export LC_ALL=C ; ( $(CAT) $$< && $(ECHO) "" ) \
|
||||||
| $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' \
|
| $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' \
|
||||||
-e 's/\([^\\]\)!/\1\\!/g' -e 's/#.*/#/g' \
|
-e 's/\([^\\]\)!/\1\\!/g' -e 's/^[ ]*#.*/#/g' \
|
||||||
| $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \
|
| $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \
|
||||||
| $(SED) -e '/^#/d' -e '/^$$$$/d' \
|
| $(SED) -e '/^#/d' -e '/^$$$$/d' \
|
||||||
-e :a -e '/\\$$$$/N; s/\\\n//; ta' \
|
-e :a -e '/\\$$$$/N; s/\\\n//; ta' \
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -27,6 +27,7 @@ package sun.hotspot;
|
|||||||
import java.lang.reflect.Executable;
|
import java.lang.reflect.Executable;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.function.BiFunction;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
import java.security.BasicPermission;
|
import java.security.BasicPermission;
|
||||||
@ -250,6 +251,23 @@ public class WhiteBox {
|
|||||||
}
|
}
|
||||||
return offset;
|
return offset;
|
||||||
}
|
}
|
||||||
|
public native Boolean getMethodBooleanOption(Executable method, String name);
|
||||||
|
public native Long getMethodIntxOption(Executable method, String name);
|
||||||
|
public native Long getMethodUintxOption(Executable method, String name);
|
||||||
|
public native Double getMethodDoubleOption(Executable method, String name);
|
||||||
|
public native String getMethodStringOption(Executable method, String name);
|
||||||
|
private final List<BiFunction<Executable,String,Object>> methodOptionGetters
|
||||||
|
= Arrays.asList(this::getMethodBooleanOption, this::getMethodIntxOption,
|
||||||
|
this::getMethodUintxOption, this::getMethodDoubleOption,
|
||||||
|
this::getMethodStringOption);
|
||||||
|
|
||||||
|
public Object getMethodOption(Executable method, String name) {
|
||||||
|
return methodOptionGetters.stream()
|
||||||
|
.map(f -> f.apply(method, name))
|
||||||
|
.filter(x -> x != null)
|
||||||
|
.findAny()
|
||||||
|
.orElse(null);
|
||||||
|
}
|
||||||
|
|
||||||
// Safepoint Checking
|
// Safepoint Checking
|
||||||
public native void assertMatchingSafepointCalls(boolean mutexSafepointValue, boolean attemptedNoSafepointValue);
|
public native void assertMatchingSafepointCalls(boolean mutexSafepointValue, boolean attemptedNoSafepointValue);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user