Skip to content
Permalink
Browse files
Merge
  • Loading branch information
prsadhuk committed Apr 11, 2020
2 parents 6b0b851 + 4895a19 commit efba976cfbb97655846e1f04ee70fc4e33910454
Showing 30 changed files with 885 additions and 149 deletions.
@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2020, 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
@@ -88,7 +88,6 @@ src/jdk.naming.dns : jdk/src/jdk.naming.dns
src/jdk.naming.rmi : jdk/src/jdk.naming.rmi
src/jdk.net : jdk/src/jdk.net
src/jdk.pack : jdk/src/jdk.pack
src/jdk.rmic : corba/src/jdk.rmic jdk/src/jdk.rmic
src/jdk.scripting.nashorn : nashorn/src/jdk.scripting.nashorn
src/jdk.scripting.nashorn.shell : nashorn/src/jdk.scripting.nashorn.shell
src/jdk.sctp : jdk/src/jdk.sctp
@@ -140,7 +139,6 @@ src/utils/src/build : jdk/make/non-build-utils/src/build
make/BuildNashorn.gmk : nashorn/make/BuildNashorn.gmk
make/CompileDemos.gmk : jdk/make/CompileDemos.gmk
make/CompileInterimLangtools.gmk : langtools/make/CompileInterim.gmk
make/CompileInterimRmic.gmk : jdk/make/CompileInterimRmic.gmk
make/CompileModuleTools.gmk : jdk/make/CompileModuleTools.gmk
make/CompileToolsHotspot.gmk : hotspot/make/CompileTools.gmk
make/CompileToolsJdk.gmk : jdk/make/CompileTools.gmk
@@ -180,7 +178,6 @@ make/mapfiles/libjvm_dtrace : hotspot/make/mapfiles/libjvm_dtrace
make/mapfiles/libsaproc : hotspot/make/mapfiles/libsaproc
make/nashorn : nashorn/make
make/nb_native : common/nb_native
make/rmic : jdk/make/rmic
make/scripts/addNotices.sh : jdk/make/scripts/addNotices.sh
make/scripts/compare.sh : common/bin/compare.sh
make/scripts/compare_exceptions.sh.incl : common/bin/compare_exceptions.sh.incl
@@ -536,7 +536,7 @@ <h3 id="common-make-targets">Common Make Targets</h3>
<li><code>dist-clean</code> - Remove all files, including configuration</li>
</ul>
<p>Run <code>make help</code> to get an up-to-date list of important make targets and make control variables.</p>
<p>It is possible to build just a single module, a single phase, or a single phase of a single module, by creating make targets according to these followin patterns. A phase can be either of <code>gensrc</code>, <code>gendata</code>, <code>copy</code>, <code>java</code>, <code>launchers</code>, <code>libs</code> or <code>rmic</code>. See <a href="#using-fine-grained-make-targets">Using Fine-Grained Make Targets</a> for more details about this functionality.</p>
<p>It is possible to build just a single module, a single phase, or a single phase of a single module, by creating make targets according to these followin patterns. A phase can be either of <code>gensrc</code>, <code>gendata</code>, <code>copy</code>, <code>java</code>, <code>launchers</code>, or <code>libs</code>. See <a href="#using-fine-grained-make-targets">Using Fine-Grained Make Targets</a> for more details about this functionality.</p>
<ul>
<li><code>&lt;phase&gt;</code> - Build the specified phase and everything it depends on</li>
<li><code>&lt;module&gt;</code> - Build the specified module and everything it depends on</li>
@@ -929,7 +929,6 @@ <h4 id="building-individual-module-phases">Building Individual Module Phases</h4
<li><code>java</code> (Compile Java code)</li>
<li><code>launchers</code> (Compile native executables)</li>
<li><code>libs</code> (Compile native libraries)</li>
<li><code>rmic</code> (Run the <code>rmic</code> tool)</li>
</ul>
<p>You can build only a single phase for a module by using the notation <code>$MODULE-$PHASE</code>. For instance, to build the <code>gensrc</code> phase for <code>java.base</code>, use <code>make java.base-gensrc</code>.</p>
<p>Note that some phases may depend on others, e.g. <code>java</code> depends on <code>gensrc</code> (if present). Make will build all needed prerequisites before building the requested phase.</p>
@@ -818,7 +818,7 @@ control variables.
It is possible to build just a single module, a single phase, or a single phase
of a single module, by creating make targets according to these followin
patterns. A phase can be either of `gensrc`, `gendata`, `copy`, `java`,
`launchers`, `libs` or `rmic`. See [Using Fine-Grained Make Targets](
`launchers`, or `libs`. See [Using Fine-Grained Make Targets](
#using-fine-grained-make-targets) for more details about this functionality.

* `<phase>` - Build the specified phase and everything it depends on
@@ -1619,7 +1619,6 @@ and other artifact the module consists of. The phases are:
* `java` (Compile Java code)
* `launchers` (Compile native executables)
* `libs` (Compile native libraries)
* `rmic` (Run the `rmic` tool)

You can build only a single phase for a module by using the notation
`$MODULE-$PHASE`. For instance, to build the `gensrc` phase for `java.base`,
@@ -16040,14 +16040,14 @@ instruct reduce_add2I(iRegINoSp dst, iRegIorL2I src1, vecD src2, iRegINoSp tmp,
effect(TEMP tmp, TEMP tmp2);
format %{ "umov $tmp, $src2, S, 0\n\t"
"umov $tmp2, $src2, S, 1\n\t"
"addw $dst, $src1, $tmp\n\t"
"addw $dst, $dst, $tmp2\t add reduction2i"
"addw $tmp, $src1, $tmp\n\t"
"addw $dst, $tmp, $tmp2\t# add reduction2I"
%}
ins_encode %{
__ umov($tmp$$Register, as_FloatRegister($src2$$reg), __ S, 0);
__ umov($tmp2$$Register, as_FloatRegister($src2$$reg), __ S, 1);
__ addw($dst$$Register, $src1$$Register, $tmp$$Register);
__ addw($dst$$Register, $dst$$Register, $tmp2$$Register);
__ addw($tmp$$Register, $src1$$Register, $tmp$$Register);
__ addw($dst$$Register, $tmp$$Register, $tmp2$$Register);
%}
ins_pipe(pipe_class_default);
%}
@@ -16059,7 +16059,7 @@ instruct reduce_add4I(iRegINoSp dst, iRegIorL2I src1, vecX src2, vecX tmp, iRegI
effect(TEMP tmp, TEMP tmp2);
format %{ "addv $tmp, T4S, $src2\n\t"
"umov $tmp2, $tmp, S, 0\n\t"
"addw $dst, $tmp2, $src1\t add reduction4i"
"addw $dst, $tmp2, $src1\t# add reduction4I"
%}
ins_encode %{
__ addv(as_FloatRegister($tmp$$reg), __ T4S,
@@ -16078,7 +16078,7 @@ instruct reduce_mul2I(iRegINoSp dst, iRegIorL2I src1, vecD src2, iRegINoSp tmp)
format %{ "umov $tmp, $src2, S, 0\n\t"
"mul $dst, $tmp, $src1\n\t"
"umov $tmp, $src2, S, 1\n\t"
"mul $dst, $tmp, $dst\t mul reduction2i\n\t"
"mul $dst, $tmp, $dst\t# mul reduction2I"
%}
ins_encode %{
__ umov($tmp$$Register, as_FloatRegister($src2$$reg), __ S, 0);
@@ -16099,7 +16099,7 @@ instruct reduce_mul4I(iRegINoSp dst, iRegIorL2I src1, vecX src2, vecX tmp, iRegI
"umov $tmp2, $tmp, S, 0\n\t"
"mul $dst, $tmp2, $src1\n\t"
"umov $tmp2, $tmp, S, 1\n\t"
"mul $dst, $tmp2, $dst\t mul reduction4i\n\t"
"mul $dst, $tmp2, $dst\t# mul reduction4I"
%}
ins_encode %{
__ ins(as_FloatRegister($tmp$$reg), __ D,
@@ -16121,7 +16121,7 @@ instruct reduce_add2F(vRegF dst, vRegF src1, vecD src2, vecD tmp)
effect(TEMP tmp, TEMP dst);
format %{ "fadds $dst, $src1, $src2\n\t"
"ins $tmp, S, $src2, 0, 1\n\t"
"fadds $dst, $dst, $tmp\t add reduction2f"
"fadds $dst, $dst, $tmp\t# add reduction2F"
%}
ins_encode %{
__ fadds(as_FloatRegister($dst$$reg),
@@ -16145,7 +16145,7 @@ instruct reduce_add4F(vRegF dst, vRegF src1, vecX src2, vecX tmp)
"ins $tmp, S, $src2, 0, 2\n\t"
"fadds $dst, $dst, $tmp\n\t"
"ins $tmp, S, $src2, 0, 3\n\t"
"fadds $dst, $dst, $tmp\t add reduction4f"
"fadds $dst, $dst, $tmp\t# add reduction4F"
%}
ins_encode %{
__ fadds(as_FloatRegister($dst$$reg),
@@ -16173,7 +16173,7 @@ instruct reduce_mul2F(vRegF dst, vRegF src1, vecD src2, vecD tmp)
effect(TEMP tmp, TEMP dst);
format %{ "fmuls $dst, $src1, $src2\n\t"
"ins $tmp, S, $src2, 0, 1\n\t"
"fmuls $dst, $dst, $tmp\t add reduction4f"
"fmuls $dst, $dst, $tmp\t# mul reduction2F"
%}
ins_encode %{
__ fmuls(as_FloatRegister($dst$$reg),
@@ -16197,7 +16197,7 @@ instruct reduce_mul4F(vRegF dst, vRegF src1, vecX src2, vecX tmp)
"ins $tmp, S, $src2, 0, 2\n\t"
"fmuls $dst, $dst, $tmp\n\t"
"ins $tmp, S, $src2, 0, 3\n\t"
"fmuls $dst, $dst, $tmp\t add reduction4f"
"fmuls $dst, $dst, $tmp\t# mul reduction4F"
%}
ins_encode %{
__ fmuls(as_FloatRegister($dst$$reg),
@@ -16225,7 +16225,7 @@ instruct reduce_add2D(vRegD dst, vRegD src1, vecX src2, vecX tmp)
effect(TEMP tmp, TEMP dst);
format %{ "faddd $dst, $src1, $src2\n\t"
"ins $tmp, D, $src2, 0, 1\n\t"
"faddd $dst, $dst, $tmp\t add reduction2d"
"faddd $dst, $dst, $tmp\t# add reduction2D"
%}
ins_encode %{
__ faddd(as_FloatRegister($dst$$reg),
@@ -16245,7 +16245,7 @@ instruct reduce_mul2D(vRegD dst, vRegD src1, vecX src2, vecX tmp)
effect(TEMP tmp, TEMP dst);
format %{ "fmuld $dst, $src1, $src2\n\t"
"ins $tmp, D, $src2, 0, 1\n\t"
"fmuld $dst, $dst, $tmp\t add reduction2d"
"fmuld $dst, $dst, $tmp\t# mul reduction2D"
%}
ins_encode %{
__ fmuld(as_FloatRegister($dst$$reg),
@@ -16265,7 +16265,7 @@ instruct reduce_max2F(vRegF dst, vRegF src1, vecD src2, vecD tmp) %{
effect(TEMP_DEF dst, TEMP tmp);
format %{ "fmaxs $dst, $src1, $src2\n\t"
"ins $tmp, S, $src2, 0, 1\n\t"
"fmaxs $dst, $dst, $tmp\t max reduction2F" %}
"fmaxs $dst, $dst, $tmp\t# max reduction2F" %}
ins_encode %{
__ fmaxs(as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg), as_FloatRegister($src2$$reg));
__ ins(as_FloatRegister($tmp$$reg), __ S, as_FloatRegister($src2$$reg), 0, 1);
@@ -16280,7 +16280,7 @@ instruct reduce_max4F(vRegF dst, vRegF src1, vecX src2) %{
ins_cost(INSN_COST);
effect(TEMP_DEF dst);
format %{ "fmaxv $dst, T4S, $src2\n\t"
"fmaxs $dst, $dst, $src1\t max reduction4F" %}
"fmaxs $dst, $dst, $src1\t# max reduction4F" %}
ins_encode %{
__ fmaxv(as_FloatRegister($dst$$reg), __ T4S, as_FloatRegister($src2$$reg));
__ fmaxs(as_FloatRegister($dst$$reg), as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg));
@@ -16295,7 +16295,7 @@ instruct reduce_max2D(vRegD dst, vRegD src1, vecX src2, vecX tmp) %{
effect(TEMP_DEF dst, TEMP tmp);
format %{ "fmaxd $dst, $src1, $src2\n\t"
"ins $tmp, D, $src2, 0, 1\n\t"
"fmaxd $dst, $dst, $tmp\t max reduction2D" %}
"fmaxd $dst, $dst, $tmp\t# max reduction2D" %}
ins_encode %{
__ fmaxd(as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg), as_FloatRegister($src2$$reg));
__ ins(as_FloatRegister($tmp$$reg), __ D, as_FloatRegister($src2$$reg), 0, 1);
@@ -16311,7 +16311,7 @@ instruct reduce_min2F(vRegF dst, vRegF src1, vecD src2, vecD tmp) %{
effect(TEMP_DEF dst, TEMP tmp);
format %{ "fmins $dst, $src1, $src2\n\t"
"ins $tmp, S, $src2, 0, 1\n\t"
"fmins $dst, $dst, $tmp\t min reduction2F" %}
"fmins $dst, $dst, $tmp\t# min reduction2F" %}
ins_encode %{
__ fmins(as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg), as_FloatRegister($src2$$reg));
__ ins(as_FloatRegister($tmp$$reg), __ S, as_FloatRegister($src2$$reg), 0, 1);
@@ -16326,7 +16326,7 @@ instruct reduce_min4F(vRegF dst, vRegF src1, vecX src2) %{
ins_cost(INSN_COST);
effect(TEMP_DEF dst);
format %{ "fminv $dst, T4S, $src2\n\t"
"fmins $dst, $dst, $src1\t min reduction4F" %}
"fmins $dst, $dst, $src1\t# min reduction4F" %}
ins_encode %{
__ fminv(as_FloatRegister($dst$$reg), __ T4S, as_FloatRegister($src2$$reg));
__ fmins(as_FloatRegister($dst$$reg), as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg));
@@ -16341,7 +16341,7 @@ instruct reduce_min2D(vRegD dst, vRegD src1, vecX src2, vecX tmp) %{
effect(TEMP_DEF dst, TEMP tmp);
format %{ "fmind $dst, $src1, $src2\n\t"
"ins $tmp, D, $src2, 0, 1\n\t"
"fmind $dst, $dst, $tmp\t min reduction2D" %}
"fmind $dst, $dst, $tmp\t# min reduction2D" %}
ins_encode %{
__ fmind(as_FloatRegister($dst$$reg), as_FloatRegister($src1$$reg), as_FloatRegister($src2$$reg));
__ ins(as_FloatRegister($tmp$$reg), __ D, as_FloatRegister($src2$$reg), 0, 1);
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, 2020, 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
@@ -35,7 +35,6 @@

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

/**
@@ -236,8 +235,9 @@ class OptionInfo {
result = Integer.parseInt(readLine());
if (result < 0 || result > (options.length - 1)) {
result = defaultOption;
} else {
result = options[result].value;
}
result = options[result].value;
} catch (NumberFormatException e) {
result = defaultOption;
}
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2015, 2020, 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
@@ -334,19 +334,7 @@ private void stop() {
}

private static SSLParameters getDefaultParams(SSLContext ctx) {
SSLParameters params = ctx.getSupportedSSLParameters();
String[] protocols = params.getProtocols();
boolean found13 = false;
for (String proto : protocols) {
if (proto.equals("TLSv1.3")) {
found13 = true;
break;
}
}
if (found13)
params.setProtocols(new String[] {"TLSv1.3", "TLSv1.2"});
else
params.setProtocols(new String[] {"TLSv1.2"});
SSLParameters params = ctx.getDefaultSSLParameters();
return params;
}

@@ -1,4 +1,4 @@
## Apache Xerces v2.12.0
## Apache Xerces v2.12.1

### Apache Xerces Notice
<pre>
@@ -8,9 +8,11 @@
=========================================================================

Apache Xerces Java
Copyright 1999-2018 The Apache Software Foundation
Copyright 1999-2020 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

Portions of this software were originally based on the following:
- software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
- software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
@@ -2301,10 +2301,9 @@ private void visitEnumDef(JCClassDecl tree) {
}
}

// private static final T[] #VALUES = { a, b, c };
Name valuesName = names.fromString(target.syntheticNameChar() + "VALUES");
while (tree.sym.members().findFirst(valuesName) != null) // avoid name clash
valuesName = names.fromString(valuesName + "" + target.syntheticNameChar());
// synthetic private static T[] $values() { return new T[] { a, b, c }; }
// synthetic private static final T[] $VALUES = $values();
Name valuesName = syntheticName(tree, "VALUES");
Type arrayType = new ArrayType(types.erasure(tree.type), syms.arrayClass);
VarSymbol valuesVar = new VarSymbol(PRIVATE|FINAL|STATIC|SYNTHETIC,
valuesName,
@@ -2314,7 +2313,15 @@ private void visitEnumDef(JCClassDecl tree) {
List.nil(),
values.toList());
newArray.type = arrayType;
enumDefs.append(make.VarDef(valuesVar, newArray));

MethodSymbol valuesMethod = new MethodSymbol(PRIVATE|STATIC|SYNTHETIC,
syntheticName(tree, "values"),
new MethodType(List.nil(), arrayType, List.nil(), tree.type.tsym),
tree.type.tsym);
enumDefs.append(make.MethodDef(valuesMethod, make.Block(0, List.of(make.Return(newArray)))));
tree.sym.members().enter(valuesMethod);

enumDefs.append(make.VarDef(valuesVar, make.App(make.QualIdent(valuesMethod))));
tree.sym.members().enter(valuesVar);

Symbol valuesSym = lookupMethod(tree.pos(), names.values,
@@ -2329,9 +2336,7 @@ private void visitEnumDef(JCClassDecl tree) {
valuesBody = List.of(make.Return(valuesResult));
} else {
// template: T[] $result = new T[$values.length];
Name resultName = names.fromString(target.syntheticNameChar() + "result");
while (tree.sym.members().findFirst(resultName) != null) // avoid name clash
resultName = names.fromString(resultName + "" + target.syntheticNameChar());
Name resultName = syntheticName(tree, "result");
VarSymbol resultVar = new VarSymbol(FINAL|SYNTHETIC,
resultName,
arrayType,
@@ -2418,6 +2423,13 @@ private boolean useClone() {
}
}

private Name syntheticName(JCClassDecl tree, String baseName) {
Name valuesName = names.fromString(target.syntheticNameChar() + baseName);
while (tree.sym.members().findFirst(valuesName) != null) // avoid name clash
valuesName = names.fromString(valuesName + "" + target.syntheticNameChar());
return valuesName;
}

/** Translate an enumeration constant and its initializer. */
private void visitEnumConstantDef(JCVariableDecl var, int ordinal) {
JCNewClass varDef = (JCNewClass)var.init;
@@ -1205,7 +1205,7 @@ public void doit(Tokens t) {
}
}
},
new Command("intConstant", "intConstant [ name [ value ] ]", true) {
new Command("intConstant", "intConstant [ name [ value ] ]", false) {
public void doit(Tokens t) {
if (t.countTokens() != 1 && t.countTokens() != 0 && t.countTokens() != 2) {
usage();
@@ -1228,7 +1228,7 @@ public void doit(Tokens t) {
}
}
},
new Command("longConstant", "longConstant [ name [ value ] ]", true) {
new Command("longConstant", "longConstant [ name [ value ] ]", false) {
public void doit(Tokens t) {
if (t.countTokens() != 1 && t.countTokens() != 0 && t.countTokens() != 2) {
usage();
@@ -1251,7 +1251,7 @@ public void doit(Tokens t) {
}
}
},
new Command("field", "field [ type [ name fieldtype isStatic offset address ] ]", true) {
new Command("field", "field [ type [ name fieldtype isStatic offset address ] ]", false) {
public void doit(Tokens t) {
if (t.countTokens() != 1 && t.countTokens() != 0 && t.countTokens() != 6) {
usage();
@@ -1323,7 +1323,7 @@ public void doit(Tokens t) {
}
}
},
new Command("type", "type [ type [ name super isOop isInteger isUnsigned size ] ]", true) {
new Command("type", "type [ type [ name super isOop isInteger isUnsigned size ] ]", false) {
public void doit(Tokens t) {
if (t.countTokens() != 1 && t.countTokens() != 0 && t.countTokens() != 6) {
usage();

0 comments on commit efba976

Please sign in to comment.