Mon, 07 Dec 2015 13:15:47 -0800
Merge
attila@1344 | 1 | /* |
sundar@1482 | 2 | * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. |
attila@1344 | 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
sundar@1482 | 4 | * |
attila@1344 | 5 | * This code is free software; you can redistribute it and/or modify it |
attila@1344 | 6 | * under the terms of the GNU General Public License version 2 only, as |
attila@1344 | 7 | * published by the Free Software Foundation. |
sundar@1482 | 8 | * |
attila@1344 | 9 | * This code is distributed in the hope that it will be useful, but WITHOUT |
attila@1344 | 10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
attila@1344 | 11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
attila@1344 | 12 | * version 2 for more details (a copy is included in the LICENSE file that |
attila@1344 | 13 | * accompanied this code). |
sundar@1482 | 14 | * |
attila@1344 | 15 | * You should have received a copy of the GNU General Public License version |
attila@1344 | 16 | * 2 along with this work; if not, write to the Free Software Foundation, |
attila@1344 | 17 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
sundar@1482 | 18 | * |
attila@1344 | 19 | * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
attila@1344 | 20 | * or visit www.oracle.com if you need additional information or have any |
attila@1344 | 21 | * questions. |
attila@1344 | 22 | */ |
attila@1344 | 23 | |
attila@1344 | 24 | /** |
attila@1344 | 25 | * JDK-8079269: Optimistic rewrite in object literal causes ArrayIndexOutOfBoundsException |
attila@1344 | 26 | * |
attila@1344 | 27 | * @test |
attila@1344 | 28 | * @run |
attila@1344 | 29 | */ |
attila@1344 | 30 | |
attila@1344 | 31 | // m must be in scope so it's accessed with optimistic getters on scope |
attila@1344 | 32 | var m = 1; |
attila@1344 | 33 | |
attila@1344 | 34 | (function() { |
attila@1344 | 35 | return { |
attila@1344 | 36 | p0: m, |
attila@1344 | 37 | p1: m = "foo", |
attila@1344 | 38 | p2: m |
attila@1344 | 39 | } |
attila@1344 | 40 | })(); |
attila@1344 | 41 | |
attila@1344 | 42 | var n = 1; |
attila@1344 | 43 | |
attila@1344 | 44 | // Test the spill object creator too |
attila@1344 | 45 | (function() { |
attila@1344 | 46 | return { |
attila@1344 | 47 | p0: n, |
attila@1344 | 48 | p1: n = "foo", |
attila@1344 | 49 | p2: n, |
attila@1344 | 50 | p3: n, |
attila@1344 | 51 | p4: n, |
attila@1344 | 52 | p5: n, |
attila@1344 | 53 | p6: n, |
attila@1344 | 54 | p7: n, |
attila@1344 | 55 | p8: n, |
attila@1344 | 56 | p9: n, |
attila@1344 | 57 | p10: n, |
attila@1344 | 58 | p11: n, |
attila@1344 | 59 | p12: n, |
attila@1344 | 60 | p13: n, |
attila@1344 | 61 | p14: n, |
attila@1344 | 62 | p15: n, |
attila@1344 | 63 | p16: n, |
attila@1344 | 64 | p17: n, |
attila@1344 | 65 | p18: n, |
attila@1344 | 66 | p19: n, |
attila@1344 | 67 | p20: n, |
attila@1344 | 68 | p21: n, |
attila@1344 | 69 | p22: n, |
attila@1344 | 70 | p23: n, |
attila@1344 | 71 | p24: n, |
attila@1344 | 72 | p25: n, |
attila@1344 | 73 | p26: n, |
attila@1344 | 74 | p27: n, |
attila@1344 | 75 | p28: n, |
attila@1344 | 76 | p29: n, |
attila@1344 | 77 | p30: n, |
attila@1344 | 78 | p31: n, |
attila@1344 | 79 | p32: n, |
attila@1344 | 80 | p33: n, |
attila@1344 | 81 | p34: n, |
attila@1344 | 82 | p35: n, |
attila@1344 | 83 | p36: n, |
attila@1344 | 84 | p37: n, |
attila@1344 | 85 | p38: n, |
attila@1344 | 86 | p39: n, |
attila@1344 | 87 | p40: n, |
attila@1344 | 88 | p41: n, |
attila@1344 | 89 | p42: n, |
attila@1344 | 90 | p43: n, |
attila@1344 | 91 | p44: n, |
attila@1344 | 92 | p45: n, |
attila@1344 | 93 | p46: n, |
attila@1344 | 94 | p47: n, |
attila@1344 | 95 | p48: n, |
attila@1344 | 96 | p49: n, |
attila@1344 | 97 | p50: n, |
attila@1344 | 98 | p51: n, |
attila@1344 | 99 | p52: n, |
attila@1344 | 100 | p53: n, |
attila@1344 | 101 | p54: n, |
attila@1344 | 102 | p55: n, |
attila@1344 | 103 | p56: n, |
attila@1344 | 104 | p57: n, |
attila@1344 | 105 | p58: n, |
attila@1344 | 106 | p59: n, |
attila@1344 | 107 | p60: n, |
attila@1344 | 108 | p61: n, |
attila@1344 | 109 | p62: n, |
attila@1344 | 110 | p63: n, |
attila@1344 | 111 | p64: n, |
attila@1344 | 112 | p65: n, |
attila@1344 | 113 | p66: n, |
attila@1344 | 114 | p67: n, |
attila@1344 | 115 | p68: n, |
attila@1344 | 116 | p69: n, |
attila@1344 | 117 | p70: n, |
attila@1344 | 118 | p71: n, |
attila@1344 | 119 | p72: n, |
attila@1344 | 120 | p73: n, |
attila@1344 | 121 | p74: n, |
attila@1344 | 122 | p75: n, |
attila@1344 | 123 | p76: n, |
attila@1344 | 124 | p77: n, |
attila@1344 | 125 | p78: n, |
attila@1344 | 126 | p79: n, |
attila@1344 | 127 | p80: n, |
attila@1344 | 128 | p81: n, |
attila@1344 | 129 | p82: n, |
attila@1344 | 130 | p83: n, |
attila@1344 | 131 | p84: n, |
attila@1344 | 132 | p85: n, |
attila@1344 | 133 | p86: n, |
attila@1344 | 134 | p87: n, |
attila@1344 | 135 | p88: n, |
attila@1344 | 136 | p89: n, |
attila@1344 | 137 | p90: n, |
attila@1344 | 138 | p91: n, |
attila@1344 | 139 | p92: n, |
attila@1344 | 140 | p93: n, |
attila@1344 | 141 | p94: n, |
attila@1344 | 142 | p95: n, |
attila@1344 | 143 | p96: n, |
attila@1344 | 144 | p97: n, |
attila@1344 | 145 | p98: n, |
attila@1344 | 146 | p99: n, |
attila@1344 | 147 | p100: n, |
attila@1344 | 148 | p101: n, |
attila@1344 | 149 | p102: n, |
attila@1344 | 150 | p103: n, |
attila@1344 | 151 | p104: n, |
attila@1344 | 152 | p105: n, |
attila@1344 | 153 | p106: n, |
attila@1344 | 154 | p107: n, |
attila@1344 | 155 | p108: n, |
attila@1344 | 156 | p109: n, |
attila@1344 | 157 | p110: n, |
attila@1344 | 158 | p111: n, |
attila@1344 | 159 | p112: n, |
attila@1344 | 160 | p113: n, |
attila@1344 | 161 | p114: n, |
attila@1344 | 162 | p115: n, |
attila@1344 | 163 | p116: n, |
attila@1344 | 164 | p117: n, |
attila@1344 | 165 | p118: n, |
attila@1344 | 166 | p119: n, |
attila@1344 | 167 | p120: n, |
attila@1344 | 168 | p121: n, |
attila@1344 | 169 | p122: n, |
attila@1344 | 170 | p123: n, |
attila@1344 | 171 | p124: n, |
attila@1344 | 172 | p125: n, |
attila@1344 | 173 | p126: n, |
attila@1344 | 174 | p127: n, |
attila@1344 | 175 | p128: n, |
attila@1344 | 176 | p129: n, |
attila@1344 | 177 | p130: n, |
attila@1344 | 178 | p131: n, |
attila@1344 | 179 | p132: n, |
attila@1344 | 180 | p133: n, |
attila@1344 | 181 | p134: n, |
attila@1344 | 182 | p135: n, |
attila@1344 | 183 | p136: n, |
attila@1344 | 184 | p137: n, |
attila@1344 | 185 | p138: n, |
attila@1344 | 186 | p139: n, |
attila@1344 | 187 | p140: n, |
attila@1344 | 188 | p141: n, |
attila@1344 | 189 | p142: n, |
attila@1344 | 190 | p143: n, |
attila@1344 | 191 | p144: n, |
attila@1344 | 192 | p145: n, |
attila@1344 | 193 | p146: n, |
attila@1344 | 194 | p147: n, |
attila@1344 | 195 | p148: n, |
attila@1344 | 196 | p149: n, |
attila@1344 | 197 | p150: n, |
attila@1344 | 198 | p151: n, |
attila@1344 | 199 | p152: n, |
attila@1344 | 200 | p153: n, |
attila@1344 | 201 | p154: n, |
attila@1344 | 202 | p155: n, |
attila@1344 | 203 | p156: n, |
attila@1344 | 204 | p157: n, |
attila@1344 | 205 | p158: n, |
attila@1344 | 206 | p159: n, |
attila@1344 | 207 | p160: n, |
attila@1344 | 208 | p161: n, |
attila@1344 | 209 | p162: n, |
attila@1344 | 210 | p163: n, |
attila@1344 | 211 | p164: n, |
attila@1344 | 212 | p165: n, |
attila@1344 | 213 | p166: n, |
attila@1344 | 214 | p167: n, |
attila@1344 | 215 | p168: n, |
attila@1344 | 216 | p169: n, |
attila@1344 | 217 | p170: n, |
attila@1344 | 218 | p171: n, |
attila@1344 | 219 | p172: n, |
attila@1344 | 220 | p173: n, |
attila@1344 | 221 | p174: n, |
attila@1344 | 222 | p175: n, |
attila@1344 | 223 | p176: n, |
attila@1344 | 224 | p177: n, |
attila@1344 | 225 | p178: n, |
attila@1344 | 226 | p179: n, |
attila@1344 | 227 | p180: n, |
attila@1344 | 228 | p181: n, |
attila@1344 | 229 | p182: n, |
attila@1344 | 230 | p183: n, |
attila@1344 | 231 | p184: n, |
attila@1344 | 232 | p185: n, |
attila@1344 | 233 | p186: n, |
attila@1344 | 234 | p187: n, |
attila@1344 | 235 | p188: n, |
attila@1344 | 236 | p189: n, |
attila@1344 | 237 | p190: n, |
attila@1344 | 238 | p191: n, |
attila@1344 | 239 | p192: n, |
attila@1344 | 240 | p193: n, |
attila@1344 | 241 | p194: n, |
attila@1344 | 242 | p195: n, |
attila@1344 | 243 | p196: n, |
attila@1344 | 244 | p197: n, |
attila@1344 | 245 | p198: n, |
attila@1344 | 246 | p199: n, |
attila@1344 | 247 | p200: n, |
attila@1344 | 248 | p201: n, |
attila@1344 | 249 | p202: n, |
attila@1344 | 250 | p203: n, |
attila@1344 | 251 | p204: n, |
attila@1344 | 252 | p205: n, |
attila@1344 | 253 | p206: n, |
attila@1344 | 254 | p207: n, |
attila@1344 | 255 | p208: n, |
attila@1344 | 256 | p209: n, |
attila@1344 | 257 | p210: n, |
attila@1344 | 258 | p211: n, |
attila@1344 | 259 | p212: n, |
attila@1344 | 260 | p213: n, |
attila@1344 | 261 | p214: n, |
attila@1344 | 262 | p215: n, |
attila@1344 | 263 | p216: n, |
attila@1344 | 264 | p217: n, |
attila@1344 | 265 | p218: n, |
attila@1344 | 266 | p219: n, |
attila@1344 | 267 | p220: n, |
attila@1344 | 268 | p221: n, |
attila@1344 | 269 | p222: n, |
attila@1344 | 270 | p223: n, |
attila@1344 | 271 | p224: n, |
attila@1344 | 272 | p225: n, |
attila@1344 | 273 | p226: n, |
attila@1344 | 274 | p227: n, |
attila@1344 | 275 | p228: n, |
attila@1344 | 276 | p229: n, |
attila@1344 | 277 | p230: n, |
attila@1344 | 278 | p231: n, |
attila@1344 | 279 | p232: n, |
attila@1344 | 280 | p233: n, |
attila@1344 | 281 | p234: n, |
attila@1344 | 282 | p235: n, |
attila@1344 | 283 | p236: n, |
attila@1344 | 284 | p237: n, |
attila@1344 | 285 | p238: n, |
attila@1344 | 286 | p239: n, |
attila@1344 | 287 | p240: n, |
attila@1344 | 288 | p241: n, |
attila@1344 | 289 | p242: n, |
attila@1344 | 290 | p243: n, |
attila@1344 | 291 | p244: n, |
attila@1344 | 292 | p245: n, |
attila@1344 | 293 | p246: n, |
attila@1344 | 294 | p247: n, |
attila@1344 | 295 | p248: n, |
attila@1344 | 296 | p249: n, |
attila@1344 | 297 | p250: n, |
attila@1344 | 298 | p251: n, |
attila@1344 | 299 | p252: n, |
attila@1344 | 300 | p253: n, |
attila@1344 | 301 | p254: n, |
attila@1344 | 302 | p255: n, |
attila@1344 | 303 | p256: n, |
attila@1344 | 304 | p257: n, |
attila@1344 | 305 | p258: n, |
attila@1344 | 306 | p259: n |
attila@1344 | 307 | } |
attila@1344 | 308 | })(); |
attila@1344 | 309 | |
attila@1344 | 310 | // No output; as long as it completes without |
attila@1344 | 311 | // ArrayIndexOutOfBoundsException in the OSR continuation handler, it's |
attila@1344 | 312 | // a success. |