Home | History | Annotate | Download | only in webkit
      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 when CFG simplification leads to the elimination of a set local that had a type check, and then we branch on the variable not being null while decrementing the variable in the same basic block.
     25 
     26 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
     27 
     28 
     29 PASS foo(o) is true
     30 PASS foo(o) is true
     31 PASS foo(o) is true
     32 PASS foo(o) is true
     33 PASS foo(o) is true
     34 PASS foo(o) is true
     35 PASS foo(o) is true
     36 PASS foo(o) is true
     37 PASS foo(o) is true
     38 PASS foo(o) is true
     39 PASS foo(o) is true
     40 PASS foo(o) is true
     41 PASS foo(o) is true
     42 PASS foo(o) is true
     43 PASS foo(o) is true
     44 PASS foo(o) is true
     45 PASS foo(o) is true
     46 PASS foo(o) is true
     47 PASS foo(o) is true
     48 PASS foo(o) is true
     49 PASS foo(o) is true
     50 PASS foo(o) is true
     51 PASS foo(o) is true
     52 PASS foo(o) is true
     53 PASS foo(o) is true
     54 PASS foo(o) is true
     55 PASS foo(o) is true
     56 PASS foo(o) is true
     57 PASS foo(o) is true
     58 PASS foo(o) is true
     59 PASS foo(o) is true
     60 PASS foo(o) is true
     61 PASS foo(o) is true
     62 PASS foo(o) is true
     63 PASS foo(o) is true
     64 PASS foo(o) is true
     65 PASS foo(o) is true
     66 PASS foo(o) is true
     67 PASS foo(o) is true
     68 PASS foo(o) is true
     69 PASS foo(o) is true
     70 PASS foo(o) is true
     71 PASS foo(o) is true
     72 PASS foo(o) is true
     73 PASS foo(o) is true
     74 PASS foo(o) is true
     75 PASS foo(o) is true
     76 PASS foo(o) is true
     77 PASS foo(o) is true
     78 PASS foo(o) is true
     79 PASS foo(o) is true
     80 PASS foo(o) is true
     81 PASS foo(o) is true
     82 PASS foo(o) is true
     83 PASS foo(o) is true
     84 PASS foo(o) is true
     85 PASS foo(o) is true
     86 PASS foo(o) is true
     87 PASS foo(o) is true
     88 PASS foo(o) is true
     89 PASS foo(o) is true
     90 PASS foo(o) is true
     91 PASS foo(o) is true
     92 PASS foo(o) is true
     93 PASS foo(o) is true
     94 PASS foo(o) is true
     95 PASS foo(o) is true
     96 PASS foo(o) is true
     97 PASS foo(o) is true
     98 PASS foo(o) is true
     99 PASS foo(o) is true
    100 PASS foo(o) is true
    101 PASS foo(o) is true
    102 PASS foo(o) is true
    103 PASS foo(o) is true
    104 PASS foo(o) is true
    105 PASS foo(o) is true
    106 PASS foo(o) is true
    107 PASS foo(o) is true
    108 PASS foo(o) is true
    109 PASS foo(o) is true
    110 PASS foo(o) is true
    111 PASS foo(o) is true
    112 PASS foo(o) is true
    113 PASS foo(o) is true
    114 PASS foo(o) is true
    115 PASS foo(o) is true
    116 PASS foo(o) is true
    117 PASS foo(o) is true
    118 PASS foo(o) is true
    119 PASS foo(o) is true
    120 PASS foo(o) is true
    121 PASS foo(o) is true
    122 PASS foo(o) is true
    123 PASS foo(o) is true
    124 PASS foo(o) is true
    125 PASS foo(o) is true
    126 PASS foo(o) is true
    127 PASS foo(o) is true
    128 PASS foo(o) is true
    129 PASS foo(o) is true
    130 PASS foo(o) is true
    131 PASS foo(o) is true
    132 PASS foo(o) is true
    133 PASS foo(o) is true
    134 PASS foo(o) is true
    135 PASS foo(o) is true
    136 PASS foo(o) is true
    137 PASS foo(o) is true
    138 PASS foo(o) is true
    139 PASS foo(o) is true
    140 PASS foo(o) is true
    141 PASS foo(o) is true
    142 PASS foo(o) is true
    143 PASS foo(o) is true
    144 PASS foo(o) is true
    145 PASS foo(o) is true
    146 PASS foo(o) is true
    147 PASS foo(o) is true
    148 PASS foo(o) is true
    149 PASS foo(o) is true
    150 PASS foo(o) is true
    151 PASS foo(o) is true
    152 PASS foo(o) is true
    153 PASS foo(o) is true
    154 PASS foo(o) is true
    155 PASS foo(o) is true
    156 PASS foo(o) is true
    157 PASS foo(o) is true
    158 PASS foo(o) is true
    159 PASS foo(o) is true
    160 PASS foo(o) is true
    161 PASS foo(o) is true
    162 PASS foo(o) is true
    163 PASS foo(o) is true
    164 PASS foo(o) is true
    165 PASS foo(o) is true
    166 PASS foo(o) is true
    167 PASS foo(o) is true
    168 PASS foo(o) is true
    169 PASS foo(o) is true
    170 PASS foo(o) is true
    171 PASS foo(o) is true
    172 PASS foo(o) is true
    173 PASS foo(o) is true
    174 PASS foo(o) is true
    175 PASS foo(o) is true
    176 PASS foo(o) is true
    177 PASS foo(o) is true
    178 PASS foo(o) is true
    179 PASS foo(o) is true
    180 PASS foo(o) is true
    181 PASS foo(o) is true
    182 PASS foo(o) is true
    183 PASS foo(o) is true
    184 PASS foo(o) is true
    185 PASS foo(o) is true
    186 PASS foo(o) is true
    187 PASS foo(o) is true
    188 PASS foo(o) is true
    189 PASS foo(o) is true
    190 PASS foo(o) is true
    191 PASS foo(o) is true
    192 PASS foo(o) is true
    193 PASS foo(o) is true
    194 PASS foo(o) is true
    195 PASS foo(o) is true
    196 PASS foo(o) is true
    197 PASS foo(o) is true
    198 PASS foo(o) is true
    199 PASS foo(o) is true
    200 PASS foo(o) is true
    201 PASS foo(o) is true
    202 PASS foo(o) is true
    203 PASS foo(o) is true
    204 PASS foo(o) is true
    205 PASS foo(o) is true
    206 PASS foo(o) is true
    207 PASS foo(o) is true
    208 PASS foo(o) is true
    209 PASS foo(o) is true
    210 PASS foo(o) is true
    211 PASS foo(o) is true
    212 PASS foo(o) is true
    213 PASS foo(o) is true
    214 PASS foo(o) is true
    215 PASS foo(o) is true
    216 PASS foo(o) is true
    217 PASS foo(o) is true
    218 PASS foo(o) is true
    219 PASS foo(o) is true
    220 PASS foo(o) is true
    221 PASS foo(o) is true
    222 PASS foo(o) is true
    223 PASS foo(o) is true
    224 PASS foo(o) is true
    225 PASS foo(o) is true
    226 PASS foo(o) is true
    227 PASS foo(o) is true
    228 PASS foo(o) is true
    229 PASS foo(o) is true
    230 PASS foo(o) is true
    231 PASS foo(o) is true
    232 PASS foo(o) is true
    233 PASS foo(o) is true
    234 PASS foo(o) is true
    235 PASS foo(o) is true
    236 PASS foo(o) is true
    237 PASS foo(o) is true
    238 PASS foo(o) is true
    239 PASS foo(o) is true
    240 PASS foo(o) is true
    241 PASS foo(o) is true
    242 PASS foo(o) is true
    243 PASS foo(o) is true
    244 PASS foo(o) is true
    245 PASS foo(o) is true
    246 PASS foo(o) is true
    247 PASS foo(o) is true
    248 PASS foo(o) is true
    249 PASS foo(o) is true
    250 PASS foo(o) is true
    251 PASS foo(o) is true
    252 PASS foo(o) is true
    253 PASS foo(o) is true
    254 PASS foo(o) is true
    255 PASS foo(o) is true
    256 PASS foo(o) is true
    257 PASS foo(o) is true
    258 PASS foo(o) is true
    259 PASS foo(o) is true
    260 PASS foo(o) is true
    261 PASS foo(o) is true
    262 PASS foo(o) is true
    263 PASS foo(o) is true
    264 PASS foo(o) is true
    265 PASS foo(o) is true
    266 PASS foo(o) is true
    267 PASS foo(o) is true
    268 PASS foo(o) is true
    269 PASS foo(o) is true
    270 PASS foo(o) is true
    271 PASS foo(o) is true
    272 PASS foo(o) is true
    273 PASS foo(o) is true
    274 PASS foo(o) is true
    275 PASS foo(o) is true
    276 PASS foo(o) is true
    277 PASS foo(o) is true
    278 PASS foo(o) is true
    279 PASS foo(o) is true
    280 PASS foo(o) is true
    281 PASS foo(o) is true
    282 PASS foo(o) is true
    283 PASS foo(o) is true
    284 PASS foo(o) is true
    285 PASS foo(o) is true
    286 PASS foo(o) is true
    287 PASS foo(o) is true
    288 PASS foo(o) is true
    289 PASS foo(o) is true
    290 PASS foo(o) is true
    291 PASS foo(o) is true
    292 PASS foo(o) is true
    293 PASS foo(o) is true
    294 PASS foo(o) is true
    295 PASS foo(o) is true
    296 PASS foo(o) is true
    297 PASS foo(o) is true
    298 PASS foo(o) is true
    299 PASS foo(o) is true
    300 PASS foo(o) is true
    301 PASS foo(o) is true
    302 PASS foo(o) is true
    303 PASS foo(o) is true
    304 PASS foo(o) is true
    305 PASS foo(o) is true
    306 PASS foo(o) is true
    307 PASS foo(o) is true
    308 PASS foo(o) is true
    309 PASS foo(o) is true
    310 PASS foo(o) is true
    311 PASS foo(o) is true
    312 PASS foo(o) is true
    313 PASS foo(o) is true
    314 PASS foo(o) is true
    315 PASS foo(o) is true
    316 PASS foo(o) is true
    317 PASS foo(o) is true
    318 PASS foo(o) is true
    319 PASS foo(o) is true
    320 PASS foo(o) is true
    321 PASS foo(o) is true
    322 PASS foo(o) is true
    323 PASS foo(o) is true
    324 PASS foo(o) is true
    325 PASS foo(o) is true
    326 PASS foo(o) is true
    327 PASS foo(o) is true
    328 PASS foo(o) is true
    329 PASS foo(o) is true
    330 PASS foo(o) is true
    331 PASS foo(o) is true
    332 PASS foo(o) is true
    333 PASS foo(o) is true
    334 PASS foo(o) is true
    335 PASS foo(o) is true
    336 PASS foo(o) is true
    337 PASS foo(o) is true
    338 PASS foo(o) is true
    339 PASS foo(o) is true
    340 PASS foo(o) is true
    341 PASS foo(o) is true
    342 PASS foo(o) is true
    343 PASS foo(o) is true
    344 PASS foo(o) is true
    345 PASS foo(o) is true
    346 PASS foo(o) is true
    347 PASS foo(o) is true
    348 PASS foo(o) is true
    349 PASS foo(o) is true
    350 PASS foo(o) is true
    351 PASS foo(o) is true
    352 PASS foo(o) is true
    353 PASS foo(o) is true
    354 PASS foo(o) is true
    355 PASS foo(o) is true
    356 PASS foo(o) is true
    357 PASS foo(o) is true
    358 PASS foo(o) is true
    359 PASS foo(o) is true
    360 PASS foo(o) is true
    361 PASS foo(o) is true
    362 PASS foo(o) is true
    363 PASS foo(o) is true
    364 PASS foo(o) is true
    365 PASS foo(o) is true
    366 PASS foo(o) is true
    367 PASS foo(o) is true
    368 PASS foo(o) is true
    369 PASS foo(o) is true
    370 PASS foo(o) is true
    371 PASS foo(o) is true
    372 PASS foo(o) is true
    373 PASS foo(o) is true
    374 PASS foo(o) is true
    375 PASS foo(o) is true
    376 PASS foo(o) is true
    377 PASS foo(o) is true
    378 PASS foo(o) is true
    379 PASS foo(o) is true
    380 PASS foo(o) is true
    381 PASS foo(o) is true
    382 PASS foo(o) is true
    383 PASS foo(o) is true
    384 PASS foo(o) is true
    385 PASS foo(o) is true
    386 PASS foo(o) is true
    387 PASS foo(o) is true
    388 PASS foo(o) is true
    389 PASS foo(o) is true
    390 PASS foo(o) is true
    391 PASS foo(o) is true
    392 PASS foo(o) is true
    393 PASS foo(o) is true
    394 PASS foo(o) is true
    395 PASS foo(o) is true
    396 PASS foo(o) is true
    397 PASS foo(o) is true
    398 PASS foo(o) is true
    399 PASS foo(o) is true
    400 PASS foo(o) is true
    401 PASS foo(o) is true
    402 PASS foo(o) is true
    403 PASS foo(o) is true
    404 PASS foo(o) is true
    405 PASS foo(o) is true
    406 PASS foo(o) is true
    407 PASS foo(o) is true
    408 PASS foo(o) is true
    409 PASS foo(o) is true
    410 PASS foo(o) is true
    411 PASS foo(o) is true
    412 PASS foo(o) is true
    413 PASS foo(o) is true
    414 PASS foo(o) is true
    415 PASS foo(o) is true
    416 PASS foo(o) is true
    417 PASS foo(o) is true
    418 PASS foo(o) is true
    419 PASS foo(o) is true
    420 PASS foo(o) is true
    421 PASS foo(o) is true
    422 PASS foo(o) is true
    423 PASS foo(o) is true
    424 PASS foo(o) is true
    425 PASS foo(o) is true
    426 PASS foo(o) is true
    427 PASS foo(o) is true
    428 PASS foo(o) is true
    429 PASS foo(o) is true
    430 PASS foo(o) is true
    431 PASS foo(o) is true
    432 PASS foo(o) is true
    433 PASS foo(o) is true
    434 PASS foo(o) is true
    435 PASS foo(o) is true
    436 PASS foo(o) is true
    437 PASS foo(o) is true
    438 PASS foo(o) is true
    439 PASS foo(o) is true
    440 PASS foo(o) is true
    441 PASS foo(o) is true
    442 PASS foo(o) is true
    443 PASS foo(o) is true
    444 PASS foo(o) is true
    445 PASS foo(o) is true
    446 PASS foo(o) is true
    447 PASS foo(o) is true
    448 PASS foo(o) is true
    449 PASS foo(o) is true
    450 PASS foo(o) is true
    451 PASS foo(o) is true
    452 PASS foo(o) is true
    453 PASS foo(o) is true
    454 PASS foo(o) is true
    455 PASS foo(o) is true
    456 PASS foo(o) is true
    457 PASS foo(o) is true
    458 PASS foo(o) is true
    459 PASS foo(o) is true
    460 PASS foo(o) is true
    461 PASS foo(o) is true
    462 PASS foo(o) is true
    463 PASS foo(o) is true
    464 PASS foo(o) is true
    465 PASS foo(o) is true
    466 PASS foo(o) is true
    467 PASS foo(o) is true
    468 PASS foo(o) is true
    469 PASS foo(o) is true
    470 PASS foo(o) is true
    471 PASS foo(o) is true
    472 PASS foo(o) is true
    473 PASS foo(o) is true
    474 PASS foo(o) is true
    475 PASS foo(o) is true
    476 PASS foo(o) is true
    477 PASS foo(o) is true
    478 PASS foo(o) is true
    479 PASS foo(o) is false
    480 PASS foo(o) is false
    481 PASS foo(o) is false
    482 PASS foo(o) is false
    483 PASS foo(o) is false
    484 PASS foo(o) is false
    485 PASS foo(o) is false
    486 PASS foo(o) is false
    487 PASS foo(o) is false
    488 PASS foo(o) is false
    489 PASS foo(o) is false
    490 PASS foo(o) is false
    491 PASS foo(o) is false
    492 PASS foo(o) is false
    493 PASS foo(o) is false
    494 PASS foo(o) is false
    495 PASS foo(o) is false
    496 PASS foo(o) is false
    497 PASS foo(o) is false
    498 PASS foo(o) is false
    499 PASS foo(o) is false
    500 PASS foo(o) is false
    501 PASS foo(o) is false
    502 PASS foo(o) is false
    503 PASS foo(o) is false
    504 PASS foo(o) is false
    505 PASS foo(o) is false
    506 PASS foo(o) is false
    507 PASS foo(o) is false
    508 PASS foo(o) is false
    509 PASS foo(o) is false
    510 PASS foo(o) is false
    511 PASS foo(o) is false
    512 PASS foo(o) is false
    513 PASS foo(o) is false
    514 PASS foo(o) is false
    515 PASS foo(o) is false
    516 PASS foo(o) is false
    517 PASS foo(o) is false
    518 PASS foo(o) is false
    519 PASS foo(o) is false
    520 PASS foo(o) is false
    521 PASS foo(o) is false
    522 PASS foo(o) is false
    523 PASS foo(o) is false
    524 PASS foo(o) is false
    525 PASS foo(o) is false
    526 PASS foo(o) is false
    527 PASS foo(o) is false
    528 PASS foo(o) is false
    529 PASS successfullyParsed is true
    530 
    531 TEST COMPLETE
    532 
    533