Merge

Fri, 14 Mar 2014 22:57:00 -0700

author
asaha
date
Fri, 14 Mar 2014 22:57:00 -0700
changeset 6595
a18dafb24f80
parent 6344
0c8d4e3b5c9a
parent 6594
8a6717910608
child 6596
db123bc329d0

Merge

.hgtags file | annotate | diff | comparison | revisions
make/hotspot_version file | annotate | diff | comparison | revisions
src/share/vm/ci/ciMethod.cpp file | annotate | diff | comparison | revisions
src/share/vm/classfile/classFileParser.cpp file | annotate | diff | comparison | revisions
src/share/vm/oops/objArrayKlass.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/.hgtags	Wed Mar 12 14:10:31 2014 -0700
     1.2 +++ b/.hgtags	Fri Mar 14 22:57:00 2014 -0700
     1.3 @@ -420,6 +420,22 @@
     1.4  35038da7bb9ddd367a0a6bf926dfb281aee1d554 jdk8-b127
     1.5  874c0b4a946c362bbf20d37c2a564b39093152e6 jdk8-b128
     1.6  cb39165c4a65bbff8db356df411e762f9e5423b8 jdk8-b129
     1.7 +1dbaf664a611e5d9cab6d1be42537b67d0d05f94 jdk8-b130
     1.8 +b5e7ebfe185cb4c2eeb8a919025fc6a26be2fcef jdk8-b131
     1.9 +9f9179e8f0cfe74c08f3716cf3c38e21e1de4c4a hs25-b70
    1.10 +0c94c41dcd70e9a9b4d96e31275afd5a73daa72d jdk8-b132
    1.11 +4a35ef38e2a7bc64df20c7700ba69b37e3ddb8b5 jdk8u5-b01
    1.12 +e5561d89fe8bfc79cd6c8fcc36d270cc6a49ec6e jdk8u5-b02
    1.13 +2f9eb9fcab6c42c8c84ddb44170ea33235116d84 jdk8u5-b03
    1.14 +5ac720d47ab83f8eb2f5fe3641667823a0298f41 jdk8u5-b04
    1.15 +b90de55aca30678ab0fec05d6a61bb3468b783d2 jdk8u5-b05
    1.16 +956c0e048ef29ee9a8026fb05858abe64b4e0ceb jdk8u5-b06
    1.17 +46fa2940e6861df18a107b6b83a2df85239e5ec7 jdk8u5-b07
    1.18 +21c1dfbed277791071947eed1c93806ccf48a7d8 jdk8u5-b08
    1.19 +6af9ce1c56a6545ec6c992a5f61b2eec924be040 jdk8u5-b09
    1.20 +629267e4f0b5155608edcd71922983be98786bd7 jdk8u5-b10
    1.21 +17a75e692af397532e2b296b24f6b9b6c239c633 jdk8u5-b11
    1.22 +9b289963cb9a14636fbe8faaa2dd6d3678464a7b jdk8u5-b12
    1.23  412d3b5fe90e54c0ff9d9ac7374b98607c561d5a hs25.20-b01
    1.24  4638c4d7ff106db0f29ef7f18b128dd7e69bc470 hs25.20-b02
    1.25  e56d11f8cc2158d4280f80e56d196193349c150a hs25.20-b03
     2.1 --- a/THIRD_PARTY_README	Wed Mar 12 14:10:31 2014 -0700
     2.2 +++ b/THIRD_PARTY_README	Fri Mar 14 22:57:00 2014 -0700
     2.3 @@ -1399,13 +1399,13 @@
     2.4  
     2.5  -------------------------------------------------------------------------------
     2.6  
     2.7 -%% This notice is provided with respect to Little CMS 2.4, which may be 
     2.8 +%% This notice is provided with respect to Little CMS 2.5, which may be 
     2.9  included with JRE 8, JDK 8, and OpenJDK 8.
    2.10  
    2.11  --- begin of LICENSE ---
    2.12  
    2.13  Little CMS
    2.14 -Copyright (c) 1998-2010 Marti Maria Saguer
    2.15 +Copyright (c) 1998-2011 Marti Maria Saguer
    2.16  
    2.17  Permission is hereby granted, free of charge, to any person obtaining a copy
    2.18  of this software and associated documentation files (the "Software"), to deal
     3.1 --- a/src/share/vm/ci/ciMethod.cpp	Wed Mar 12 14:10:31 2014 -0700
     3.2 +++ b/src/share/vm/ci/ciMethod.cpp	Fri Mar 14 22:57:00 2014 -0700
     3.3 @@ -724,6 +724,11 @@
     3.4  
     3.5    VM_ENTRY_MARK;
     3.6  
     3.7 +  // Disable CHA for default methods for now
     3.8 +  if (root_m->get_Method()->is_default_method()) {
     3.9 +    return NULL;
    3.10 +  }
    3.11 +
    3.12    methodHandle target;
    3.13    {
    3.14      MutexLocker locker(Compile_lock);
     4.1 --- a/src/share/vm/classfile/classFileParser.cpp	Wed Mar 12 14:10:31 2014 -0700
     4.2 +++ b/src/share/vm/classfile/classFileParser.cpp	Fri Mar 14 22:57:00 2014 -0700
     4.3 @@ -2777,6 +2777,11 @@
     4.4                       "Short length on BootstrapMethods in class file %s",
     4.5                       CHECK);
     4.6  
     4.7 +  guarantee_property(attribute_byte_length > sizeof(u2),
     4.8 +                     "Invalid BootstrapMethods attribute length %u in class file %s",
     4.9 +                     attribute_byte_length,
    4.10 +                     CHECK);
    4.11 +
    4.12    // The attribute contains a counted array of counted tuples of shorts,
    4.13    // represending bootstrap specifiers:
    4.14    //    length*{bootstrap_method_index, argument_count*{argument_index}}
     5.1 --- a/src/share/vm/oops/objArrayKlass.cpp	Wed Mar 12 14:10:31 2014 -0700
     5.2 +++ b/src/share/vm/oops/objArrayKlass.cpp	Fri Mar 14 22:57:00 2014 -0700
     5.3 @@ -269,7 +269,7 @@
     5.4          if (element_is_null ||
     5.5              (new_val->klass())->is_subtype_of(bound)) {
     5.6            bs->write_ref_field_pre(p, new_val);
     5.7 -          *p = *from;
     5.8 +          *p = element;
     5.9          } else {
    5.10            // We must do a barrier to cover the partial copy.
    5.11            const size_t pd = pointer_delta(p, dst, (size_t)heapOopSize);
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/test/compiler/inlining/InlineDefaultMethod1.java	Fri Mar 14 22:57:00 2014 -0700
     6.3 @@ -0,0 +1,58 @@
     6.4 +/*
     6.5 + * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
     6.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     6.7 + *
     6.8 + * This code is free software; you can redistribute it and/or modify it
     6.9 + * under the terms of the GNU General Public License version 2 only, as
    6.10 + * published by the Free Software Foundation.
    6.11 + *
    6.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
    6.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    6.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    6.15 + * version 2 for more details (a copy is included in the LICENSE file that
    6.16 + * accompanied this code).
    6.17 + *
    6.18 + * You should have received a copy of the GNU General Public License version
    6.19 + * 2 along with this work; if not, write to the Free Software Foundation,
    6.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    6.21 + *
    6.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    6.23 + * or visit www.oracle.com if you need additional information or have any
    6.24 + * questions.
    6.25 + */
    6.26 +
    6.27 +/*
    6.28 + * @test
    6.29 + * @bug 8036100
    6.30 + * @summary Default method returns true for a while, and then returns false
    6.31 + * @run main/othervm -Xcomp -XX:CompileOnly=InlineDefaultMethod1::test
    6.32 + *                   -XX:CompileOnly=I1::m -XX:CompileOnly=I2::m
    6.33 + *                   InlineDefaultMethod1
    6.34 + */
    6.35 +interface I1 {
    6.36 +    default public int m() { return 0; }
    6.37 +}
    6.38 +
    6.39 +interface I2 extends I1 {
    6.40 +    default public int m() { return 1; }
    6.41 +}
    6.42 +
    6.43 +abstract class A implements I1 {
    6.44 +}
    6.45 +
    6.46 +class B extends A implements I2 {
    6.47 +}
    6.48 +
    6.49 +public class InlineDefaultMethod1 {
    6.50 +    public static void test(A obj) {
    6.51 +        int id = obj.m();
    6.52 +        if (id != 1) {
    6.53 +            throw new AssertionError("Called wrong method: 1 != "+id);
    6.54 +        }
    6.55 +    }
    6.56 +
    6.57 +    public static void main(String[] args) throws InterruptedException {
    6.58 +        test(new B());
    6.59 +        System.out.println("TEST PASSED");
    6.60 +    }
    6.61 +}

mercurial