Wed, 21 Jan 2015 18:43:01 +0000
Merge
src/share/classes/com/sun/tools/javac/jvm/Gen.java | file | annotate | diff | comparison | revisions |
1.1 --- a/.hgtags Wed Jan 21 10:42:49 2015 +0000 1.2 +++ b/.hgtags Wed Jan 21 18:43:01 2015 +0000 1.3 @@ -312,6 +312,8 @@ 1.4 9239118487dfb47ee850d2cc9b10a0a2e510da3c jdk8u20-b24 1.5 9239118487dfb47ee850d2cc9b10a0a2e510da3c jdk8u20-b25 1.6 5e6d409a72327a31b8a8f9aa0b32ef213c8b629c jdk8u20-b26 1.7 +7302299fa9c4fa48af02b6477ff3ccbb01f2d4ea jdk8u20-b31 1.8 +2f9120236904ce5bd8ebfde755c1b2edcc4dfdd6 jdk8u20-b32 1.9 f491f1581f196950c2cb858508dd06601968c417 jdk8u25-b00 1.10 5bc865e0a2e3c59c1c8bc41e731509e1737ddea1 jdk8u25-b01 1.11 4dec0c684a9ead80ea2bca6b042682367c1abf90 jdk8u25-b02 1.12 @@ -331,6 +333,21 @@ 1.13 7fa6fa7cc204de988e224c6f8f75e62128fa84cd jdk8u25-b16 1.14 53ca196be1ae098466976c017b166d4ce180c36f jdk8u25-b17 1.15 a4f0c6dd8f97d4dd89baf09463c748abea9b3ed7 jdk8u25-b18 1.16 +c4de614efd7affc001715aa5a7040620924ac44a jdk8u25-b31 1.17 +c4bd223559aad3d152968a09d56241175d82c561 jdk8u31-b00 1.18 +6b5e2c190f3023162a33b798e57a0d78e027c843 jdk8u31-b01 1.19 +8b4ea00b438d7f99ecd6a8345cb018d8a0379620 jdk8u31-b02 1.20 +6ce4f2acf83e17d084b9b9bce2ef98438e984064 jdk8u31-b03 1.21 +c271515197807db2f0496945241f0b09885af99b jdk8u31-b04 1.22 +2deb2110e81fc38f5b45842fd478aae168d2d27a jdk8u31-b05 1.23 +fe1980c653be1fa9fb50353c5a5305855dcd7bd4 jdk8u31-b06 1.24 +03b8ef4cf0c00aa040db27c7d8e68fa8b6133afd jdk8u31-b07 1.25 +05824e9d8171e3d50fd5d1a495169cb38b64cf08 jdk8u31-b08 1.26 +26c46688ce4a0909f65dc341df4315bf34a92202 jdk8u31-b09 1.27 +99c3209f228e1f9aa874b6bd0908fd5d9ebf7078 jdk8u31-b10 1.28 +e72be544fa9e247fba3c6bb61e291d80e127a461 jdk8u31-b11 1.29 +c956b12b30ee21a4fc5df1871fa3b01e84310ebe jdk8u31-b12 1.30 +7a34ec7bb1c831e82ac88da578a028572b676260 jdk8u31-b13 1.31 d231957fe3103e790465fcf058fb8cb33bbc4c4e jdk8u40-b00 1.32 bf89a471779d13a9407f7d1c86f7716258bc4aa6 jdk8u40-b01 1.33 0b6cc4ea670f5d17b56c088f202869bdbb80a5ce jdk8u40-b02 1.34 @@ -351,4 +368,6 @@ 1.35 a12a9932f649dd3df174d3e340527433d3695c49 jdk8u40-b17 1.36 94f30e5fde53e3ddcd3c4e9842349318eae8fe10 jdk8u40-b18 1.37 0c514d1fd006fc79d35b670de10c370c8d559db7 jdk8u40-b19 1.38 +c3d6d1a5339952fbe4124e700407b7211446c99c jdk8u40-b20 1.39 +9113c7c8d902ec94b28ca0ef4a6466bdba65fcfc jdk8u40-b21 1.40 0c514d1fd006fc79d35b670de10c370c8d559db7 jdk8u60-b00
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/test/tools/javac/T8049305/WrongStackframeGenerationTest1.java Wed Jan 21 18:43:01 2015 +0000 2.3 @@ -0,0 +1,47 @@ 2.4 +/* 2.5 + * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. 2.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 2.7 + * 2.8 + * This code is free software; you can redistribute it and/or modify it 2.9 + * under the terms of the GNU General Public License version 2 only, as 2.10 + * published by the Free Software Foundation. 2.11 + * 2.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 2.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 2.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 2.15 + * version 2 for more details (a copy is included in the LICENSE file that 2.16 + * accompanied this code). 2.17 + * 2.18 + * You should have received a copy of the GNU General Public License version 2.19 + * 2 along with this work; if not, write to the Free Software Foundation, 2.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2.21 + * 2.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2.23 + * or visit www.oracle.com if you need additional information or have any 2.24 + * questions. 2.25 + */ 2.26 + 2.27 +/* 2.28 + * @test 2.29 + * @bug 8049305 2.30 + * @summary Verification error due to a bad stackmap frame generated by javac 2.31 + */ 2.32 + 2.33 +public class WrongStackframeGenerationTest1 { 2.34 + public static void main(String[] args) {} 2.35 + 2.36 + static void foo(){ 2.37 + while (true) { 2.38 + int i = 0; 2.39 + break; 2.40 + } 2.41 + switch (1) { 2.42 + case 1: 2.43 + int j = 0; 2.44 + case 2: 2.45 + bar(); 2.46 + } 2.47 + } 2.48 + 2.49 + static void bar() {} 2.50 +}
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 3.2 +++ b/test/tools/javac/T8049305/WrongStackframeGenerationTest2.java Wed Jan 21 18:43:01 2015 +0000 3.3 @@ -0,0 +1,50 @@ 3.4 +/* 3.5 + * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. 3.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3.7 + * 3.8 + * This code is free software; you can redistribute it and/or modify it 3.9 + * under the terms of the GNU General Public License version 2 only, as 3.10 + * published by the Free Software Foundation. 3.11 + * 3.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 3.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 3.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 3.15 + * version 2 for more details (a copy is included in the LICENSE file that 3.16 + * accompanied this code). 3.17 + * 3.18 + * You should have received a copy of the GNU General Public License version 3.19 + * 2 along with this work; if not, write to the Free Software Foundation, 3.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 3.21 + * 3.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 3.23 + * or visit www.oracle.com if you need additional information or have any 3.24 + * questions. 3.25 + */ 3.26 + 3.27 +/* 3.28 + * @test 3.29 + * @bug 8049305 3.30 + * @summary Verification error due to a bad stackmap frame generated by javac 3.31 + */ 3.32 + 3.33 +public class WrongStackframeGenerationTest2 { 3.34 + public static void main(String[] args) {} 3.35 + 3.36 + static void foo() { 3.37 + int len; 3.38 + for (;;) { 3.39 + try { 3.40 + len = 1; 3.41 + break; 3.42 + } catch (Exception e) { 3.43 + } 3.44 + } 3.45 + 3.46 + try { 3.47 + if (len == -1) { 3.48 + len = 0; 3.49 + } 3.50 + } finally { 3.51 + } 3.52 + } 3.53 +}