1 # Copyright 2013 the V8 project authors. All rights reserved. 2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 3 # 4 # Redistribution and use in source and binary forms, with or without 5 # modification, are permitted provided that the following conditions 6 # are met: 7 # 1. Redistributions of source code must retain the above copyright 8 # notice, this list of conditions and the following disclaimer. 9 # 2. Redistributions in binary form must reproduce the above copyright 10 # notice, this list of conditions and the following disclaimer in the 11 # documentation and/or other materials provided with the distribution. 12 # 13 # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY 14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16 # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY 17 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 18 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 19 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 20 # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 22 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 24 Tests what happens if you OSR exit within inlined code that has interesting control flow with arguments that are specially formatted and you capture the arguments reflectively after the OSR exit. 25 26 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". 27 28 29 PASS baz(arg1, arg2) is 43 30 PASS baz(arg1, arg2) is 45 31 PASS baz(arg1, arg2) is 47 32 PASS baz(arg1, arg2) is 49 33 PASS baz(arg1, arg2) is 51 34 PASS baz(arg1, arg2) is 53 35 PASS baz(arg1, arg2) is 55 36 PASS baz(arg1, arg2) is 57 37 PASS baz(arg1, arg2) is 59 38 PASS baz(arg1, arg2) is 61 39 PASS baz(arg1, arg2) is 63 40 PASS baz(arg1, arg2) is 65 41 PASS baz(arg1, arg2) is 67 42 PASS baz(arg1, arg2) is 69 43 PASS baz(arg1, arg2) is 71 44 PASS baz(arg1, arg2) is 73 45 PASS baz(arg1, arg2) is 75 46 PASS baz(arg1, arg2) is 77 47 PASS baz(arg1, arg2) is 79 48 PASS baz(arg1, arg2) is 81 49 PASS baz(arg1, arg2) is 83 50 PASS baz(arg1, arg2) is 85 51 PASS baz(arg1, arg2) is 87 52 PASS baz(arg1, arg2) is 89 53 PASS baz(arg1, arg2) is 91 54 PASS baz(arg1, arg2) is 93 55 PASS baz(arg1, arg2) is 95 56 PASS baz(arg1, arg2) is 97 57 PASS baz(arg1, arg2) is 99 58 PASS baz(arg1, arg2) is 101 59 PASS baz(arg1, arg2) is 103 60 PASS baz(arg1, arg2) is 105 61 PASS baz(arg1, arg2) is 107 62 PASS baz(arg1, arg2) is 109 63 PASS baz(arg1, arg2) is 111 64 PASS baz(arg1, arg2) is 113 65 PASS baz(arg1, arg2) is 115 66 PASS baz(arg1, arg2) is 117 67 PASS baz(arg1, arg2) is 119 68 PASS baz(arg1, arg2) is 121 69 PASS baz(arg1, arg2) is 123 70 PASS baz(arg1, arg2) is 125 71 PASS baz(arg1, arg2) is 127 72 PASS baz(arg1, arg2) is 129 73 PASS baz(arg1, arg2) is 131 74 PASS baz(arg1, arg2) is 133 75 PASS baz(arg1, arg2) is 135 76 PASS baz(arg1, arg2) is 137 77 PASS baz(arg1, arg2) is 139 78 PASS baz(arg1, arg2) is 141 79 PASS baz(arg1, arg2) is 143 80 PASS baz(arg1, arg2) is 145 81 PASS baz(arg1, arg2) is 147 82 PASS baz(arg1, arg2) is 149 83 PASS baz(arg1, arg2) is 151 84 PASS baz(arg1, arg2) is 153 85 PASS baz(arg1, arg2) is 155 86 PASS baz(arg1, arg2) is 157 87 PASS baz(arg1, arg2) is 159 88 PASS baz(arg1, arg2) is 161 89 PASS baz(arg1, arg2) is 163 90 PASS baz(arg1, arg2) is 165 91 PASS baz(arg1, arg2) is 167 92 PASS baz(arg1, arg2) is 169 93 PASS baz(arg1, arg2) is 171 94 PASS baz(arg1, arg2) is 173 95 PASS baz(arg1, arg2) is 175 96 PASS baz(arg1, arg2) is 177 97 PASS baz(arg1, arg2) is 179 98 PASS baz(arg1, arg2) is 181 99 PASS baz(arg1, arg2) is 183 100 PASS baz(arg1, arg2) is 185 101 PASS baz(arg1, arg2) is 187 102 PASS baz(arg1, arg2) is 189 103 PASS baz(arg1, arg2) is 191 104 PASS baz(arg1, arg2) is 193 105 PASS baz(arg1, arg2) is 195 106 PASS baz(arg1, arg2) is 197 107 PASS baz(arg1, arg2) is 199 108 PASS baz(arg1, arg2) is 201 109 PASS baz(arg1, arg2) is 203 110 PASS baz(arg1, arg2) is 205 111 PASS baz(arg1, arg2) is 207 112 PASS baz(arg1, arg2) is 209 113 PASS baz(arg1, arg2) is 211 114 PASS baz(arg1, arg2) is 213 115 PASS baz(arg1, arg2) is 215 116 PASS baz(arg1, arg2) is 217 117 PASS baz(arg1, arg2) is 219 118 PASS baz(arg1, arg2) is 221 119 PASS baz(arg1, arg2) is 223 120 PASS baz(arg1, arg2) is 225 121 PASS baz(arg1, arg2) is 227 122 PASS baz(arg1, arg2) is 229 123 PASS baz(arg1, arg2) is 231 124 PASS baz(arg1, arg2) is 233 125 PASS baz(arg1, arg2) is 235 126 PASS baz(arg1, arg2) is 237 127 PASS baz(arg1, arg2) is 239 128 PASS baz(arg1, arg2) is 241 129 PASS baz(arg1, arg2) is 243 130 PASS baz(arg1, arg2) is 245 131 PASS baz(arg1, arg2) is 247 132 PASS baz(arg1, arg2) is 249 133 PASS baz(arg1, arg2) is 251 134 PASS baz(arg1, arg2) is 253 135 PASS baz(arg1, arg2) is 255 136 PASS baz(arg1, arg2) is 257 137 PASS baz(arg1, arg2) is 259 138 PASS baz(arg1, arg2) is 261 139 PASS baz(arg1, arg2) is 263 140 PASS baz(arg1, arg2) is 265 141 PASS baz(arg1, arg2) is 267 142 PASS baz(arg1, arg2) is 269 143 PASS baz(arg1, arg2) is 271 144 PASS baz(arg1, arg2) is 273 145 PASS baz(arg1, arg2) is 275 146 PASS baz(arg1, arg2) is 277 147 PASS baz(arg1, arg2) is 279 148 PASS baz(arg1, arg2) is 281 149 PASS baz(arg1, arg2) is 283 150 PASS baz(arg1, arg2) is 285 151 PASS baz(arg1, arg2) is 287 152 PASS baz(arg1, arg2) is 289 153 PASS baz(arg1, arg2) is 291 154 PASS baz(arg1, arg2) is 293 155 PASS baz(arg1, arg2) is 295 156 PASS baz(arg1, arg2) is 297 157 PASS baz(arg1, arg2) is 299 158 PASS baz(arg1, arg2) is 301 159 PASS baz(arg1, arg2) is 303 160 PASS baz(arg1, arg2) is 305 161 PASS baz(arg1, arg2) is 307 162 PASS baz(arg1, arg2) is 309 163 PASS baz(arg1, arg2) is 311 164 PASS baz(arg1, arg2) is 313 165 PASS baz(arg1, arg2) is 315 166 PASS baz(arg1, arg2) is 317 167 PASS baz(arg1, arg2) is 319 168 PASS baz(arg1, arg2) is 321 169 PASS baz(arg1, arg2) is 323 170 PASS baz(arg1, arg2) is 325 171 PASS baz(arg1, arg2) is 327 172 PASS baz(arg1, arg2) is 329 173 PASS baz(arg1, arg2) is 331 174 PASS baz(arg1, arg2) is 333 175 PASS baz(arg1, arg2) is 335 176 PASS baz(arg1, arg2) is 337 177 PASS baz(arg1, arg2) is 339 178 PASS baz(arg1, arg2) is 341 179 PASS baz(arg1, arg2) is 343 180 PASS baz(arg1, arg2) is 345 181 PASS baz(arg1, arg2) is 347 182 PASS baz(arg1, arg2) is 349 183 PASS baz(arg1, arg2) is 351 184 PASS baz(arg1, arg2) is 353 185 PASS baz(arg1, arg2) is 355 186 PASS baz(arg1, arg2) is 357 187 PASS baz(arg1, arg2) is 359 188 PASS baz(arg1, arg2) is 361 189 PASS baz(arg1, arg2) is 363 190 PASS baz(arg1, arg2) is 365 191 PASS baz(arg1, arg2) is 367 192 PASS baz(arg1, arg2) is 369 193 PASS baz(arg1, arg2) is 371 194 PASS baz(arg1, arg2) is 373 195 PASS baz(arg1, arg2) is 375 196 PASS baz(arg1, arg2) is 377 197 PASS baz(arg1, arg2) is 379 198 PASS baz(arg1, arg2) is 381 199 PASS baz(arg1, arg2) is 383 200 PASS baz(arg1, arg2) is 385 201 PASS baz(arg1, arg2) is 387 202 PASS baz(arg1, arg2) is 389 203 PASS baz(arg1, arg2) is 391 204 PASS baz(arg1, arg2) is 393 205 PASS baz(arg1, arg2) is 395 206 PASS baz(arg1, arg2) is 397 207 PASS baz(arg1, arg2) is 399 208 PASS baz(arg1, arg2) is 401 209 PASS baz(arg1, arg2) is 403 210 PASS baz(arg1, arg2) is 405 211 PASS baz(arg1, arg2) is 407 212 PASS baz(arg1, arg2) is 409 213 PASS baz(arg1, arg2) is 411 214 PASS baz(arg1, arg2) is 413 215 PASS baz(arg1, arg2) is 415 216 PASS baz(arg1, arg2) is 417 217 PASS baz(arg1, arg2) is 419 218 PASS baz(arg1, arg2) is 421 219 PASS baz(arg1, arg2) is 423 220 PASS baz(arg1, arg2) is 425 221 PASS baz(arg1, arg2) is 427 222 PASS baz(arg1, arg2) is 429 223 PASS baz(arg1, arg2) is 431 224 PASS baz(arg1, arg2) is 433 225 PASS baz(arg1, arg2) is 435 226 PASS baz(arg1, arg2) is 437 227 PASS baz(arg1, arg2) is 439 228 PASS baz(arg1, arg2) is 441 229 PASS baz(arg1, arg2) is 443 230 PASS baz(arg1, arg2) is 445 231 PASS baz(arg1, arg2) is 447 232 PASS baz(arg1, arg2) is 449 233 PASS baz(arg1, arg2) is 451 234 PASS baz(arg1, arg2) is 453 235 PASS baz(arg1, arg2) is 455 236 PASS baz(arg1, arg2) is 457 237 PASS baz(arg1, arg2) is 459 238 PASS baz(arg1, arg2) is 461 239 PASS baz(arg1, arg2) is 463 240 PASS baz(arg1, arg2) is 465 241 PASS baz(arg1, arg2) is 467 242 PASS baz(arg1, arg2) is 469 243 PASS baz(arg1, arg2) is 471 244 PASS baz(arg1, arg2) is 473 245 PASS baz(arg1, arg2) is 475 246 PASS baz(arg1, arg2) is 477 247 PASS baz(arg1, arg2) is 479 248 PASS baz(arg1, arg2) is 481 249 PASS baz(arg1, arg2) is 483 250 PASS baz(arg1, arg2) is 485 251 PASS baz(arg1, arg2) is 487 252 PASS baz(arg1, arg2) is 489 253 PASS baz(arg1, arg2) is 491 254 PASS baz(arg1, arg2) is 493 255 PASS baz(arg1, arg2) is 495 256 PASS baz(arg1, arg2) is 497 257 PASS baz(arg1, arg2) is 499 258 PASS baz(arg1, arg2) is 501 259 PASS baz(arg1, arg2) is 503 260 PASS baz(arg1, arg2) is 505 261 PASS baz(arg1, arg2) is 507 262 PASS baz(arg1, arg2) is 509 263 PASS baz(arg1, arg2) is 511 264 PASS baz(arg1, arg2) is 513 265 PASS baz(arg1, arg2) is 515 266 PASS baz(arg1, arg2) is 517 267 PASS baz(arg1, arg2) is 519 268 PASS baz(arg1, arg2) is 521 269 PASS baz(arg1, arg2) is 523 270 PASS baz(arg1, arg2) is 525 271 PASS baz(arg1, arg2) is 527 272 PASS baz(arg1, arg2) is 529 273 PASS baz(arg1, arg2) is 531 274 PASS baz(arg1, arg2) is 533 275 PASS baz(arg1, arg2) is 535 276 PASS baz(arg1, arg2) is 537 277 PASS baz(arg1, arg2) is 539 278 PASS baz(arg1, arg2) is 541 279 PASS baz(arg1, arg2) is 293.5 280 PASS baz(arg1, arg2) is 294.5 281 PASS baz(arg1, arg2) is 295.5 282 PASS baz(arg1, arg2) is 296.5 283 PASS baz(arg1, arg2) is 297.5 284 PASS baz(arg1, arg2) is 298.5 285 PASS baz(arg1, arg2) is 299.5 286 PASS baz(arg1, arg2) is 300.5 287 PASS baz(arg1, arg2) is 301.5 288 PASS baz(arg1, arg2) is 302.5 289 PASS baz(arg1, arg2) is 303.5 290 PASS baz(arg1, arg2) is 304.5 291 PASS baz(arg1, arg2) is 305.5 292 PASS baz(arg1, arg2) is 306.5 293 PASS baz(arg1, arg2) is 307.5 294 PASS baz(arg1, arg2) is 308.5 295 PASS baz(arg1, arg2) is 309.5 296 PASS baz(arg1, arg2) is 310.5 297 PASS baz(arg1, arg2) is 311.5 298 PASS baz(arg1, arg2) is 312.5 299 PASS baz(arg1, arg2) is 313.5 300 PASS baz(arg1, arg2) is 314.5 301 PASS baz(arg1, arg2) is 315.5 302 PASS baz(arg1, arg2) is 316.5 303 PASS baz(arg1, arg2) is 317.5 304 PASS baz(arg1, arg2) is 318.5 305 PASS baz(arg1, arg2) is 319.5 306 PASS baz(arg1, arg2) is 320.5 307 PASS baz(arg1, arg2) is 321.5 308 PASS baz(arg1, arg2) is 322.5 309 PASS baz(arg1, arg2) is 323.5 310 PASS baz(arg1, arg2) is 324.5 311 PASS baz(arg1, arg2) is 325.5 312 PASS baz(arg1, arg2) is 326.5 313 PASS baz(arg1, arg2) is 327.5 314 PASS baz(arg1, arg2) is 328.5 315 PASS baz(arg1, arg2) is 329.5 316 PASS baz(arg1, arg2) is 330.5 317 PASS baz(arg1, arg2) is 331.5 318 PASS baz(arg1, arg2) is 332.5 319 PASS baz(arg1, arg2) is 333.5 320 PASS baz(arg1, arg2) is 334.5 321 PASS baz(arg1, arg2) is 335.5 322 PASS baz(arg1, arg2) is 336.5 323 PASS baz(arg1, arg2) is 337.5 324 PASS baz(arg1, arg2) is 338.5 325 PASS baz(arg1, arg2) is 339.5 326 PASS baz(arg1, arg2) is 340.5 327 PASS baz(arg1, arg2) is 341.5 328 PASS baz(arg1, arg2) is 342.5 329 PASS successfullyParsed is true 330 331 TEST COMPLETE 332 333