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 This tests that a structure clobber in a basic block that does not touch a live variable causes that variable's structure to be correctly clobbered.
     25 
     26 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
     27 
     28 
     29 PASS foo(predicate, {f:object}) is 2
     30 PASS foo(predicate, {f:object}) is 2
     31 PASS foo(predicate, {f:object}) is 2
     32 PASS foo(predicate, {f:object}) is 2
     33 PASS foo(predicate, {f:object}) is 2
     34 PASS foo(predicate, {f:object}) is 2
     35 PASS foo(predicate, {f:object}) is 2
     36 PASS foo(predicate, {f:object}) is 2
     37 PASS foo(predicate, {f:object}) is 2
     38 PASS foo(predicate, {f:object}) is 2
     39 PASS foo(predicate, {f:object}) is 2
     40 PASS foo(predicate, {f:object}) is 2
     41 PASS foo(predicate, {f:object}) is 2
     42 PASS foo(predicate, {f:object}) is 2
     43 PASS foo(predicate, {f:object}) is 2
     44 PASS foo(predicate, {f:object}) is 2
     45 PASS foo(predicate, {f:object}) is 2
     46 PASS foo(predicate, {f:object}) is 2
     47 PASS foo(predicate, {f:object}) is 2
     48 PASS foo(predicate, {f:object}) is 2
     49 PASS foo(predicate, {f:object}) is 2
     50 PASS foo(predicate, {f:object}) is 2
     51 PASS foo(predicate, {f:object}) is 2
     52 PASS foo(predicate, {f:object}) is 2
     53 PASS foo(predicate, {f:object}) is 2
     54 PASS foo(predicate, {f:object}) is 2
     55 PASS foo(predicate, {f:object}) is 2
     56 PASS foo(predicate, {f:object}) is 2
     57 PASS foo(predicate, {f:object}) is 2
     58 PASS foo(predicate, {f:object}) is 2
     59 PASS foo(predicate, {f:object}) is 2
     60 PASS foo(predicate, {f:object}) is 2
     61 PASS foo(predicate, {f:object}) is 2
     62 PASS foo(predicate, {f:object}) is 2
     63 PASS foo(predicate, {f:object}) is 2
     64 PASS foo(predicate, {f:object}) is 2
     65 PASS foo(predicate, {f:object}) is 2
     66 PASS foo(predicate, {f:object}) is 2
     67 PASS foo(predicate, {f:object}) is 2
     68 PASS foo(predicate, {f:object}) is 2
     69 PASS foo(predicate, {f:object}) is 2
     70 PASS foo(predicate, {f:object}) is 2
     71 PASS foo(predicate, {f:object}) is 2
     72 PASS foo(predicate, {f:object}) is 2
     73 PASS foo(predicate, {f:object}) is 2
     74 PASS foo(predicate, {f:object}) is 2
     75 PASS foo(predicate, {f:object}) is 2
     76 PASS foo(predicate, {f:object}) is 2
     77 PASS foo(predicate, {f:object}) is 2
     78 PASS foo(predicate, {f:object}) is 2
     79 PASS foo(predicate, {f:object}) is 2
     80 PASS foo(predicate, {f:object}) is 2
     81 PASS foo(predicate, {f:object}) is 2
     82 PASS foo(predicate, {f:object}) is 2
     83 PASS foo(predicate, {f:object}) is 2
     84 PASS foo(predicate, {f:object}) is 2
     85 PASS foo(predicate, {f:object}) is 2
     86 PASS foo(predicate, {f:object}) is 2
     87 PASS foo(predicate, {f:object}) is 2
     88 PASS foo(predicate, {f:object}) is 2
     89 PASS foo(predicate, {f:object}) is 2
     90 PASS foo(predicate, {f:object}) is 2
     91 PASS foo(predicate, {f:object}) is 2
     92 PASS foo(predicate, {f:object}) is 2
     93 PASS foo(predicate, {f:object}) is 2
     94 PASS foo(predicate, {f:object}) is 2
     95 PASS foo(predicate, {f:object}) is 2
     96 PASS foo(predicate, {f:object}) is 2
     97 PASS foo(predicate, {f:object}) is 2
     98 PASS foo(predicate, {f:object}) is 2
     99 PASS foo(predicate, {f:object}) is 2
    100 PASS foo(predicate, {f:object}) is 2
    101 PASS foo(predicate, {f:object}) is 2
    102 PASS foo(predicate, {f:object}) is 2
    103 PASS foo(predicate, {f:object}) is 2
    104 PASS foo(predicate, {f:object}) is 2
    105 PASS foo(predicate, {f:object}) is 2
    106 PASS foo(predicate, {f:object}) is 2
    107 PASS foo(predicate, {f:object}) is 2
    108 PASS foo(predicate, {f:object}) is 2
    109 PASS foo(predicate, {f:object}) is 2
    110 PASS foo(predicate, {f:object}) is 2
    111 PASS foo(predicate, {f:object}) is 2
    112 PASS foo(predicate, {f:object}) is 2
    113 PASS foo(predicate, {f:object}) is 2
    114 PASS foo(predicate, {f:object}) is 2
    115 PASS foo(predicate, {f:object}) is 2
    116 PASS foo(predicate, {f:object}) is 2
    117 PASS foo(predicate, {f:object}) is 2
    118 PASS foo(predicate, {f:object}) is 2
    119 PASS foo(predicate, {f:object}) is 2
    120 PASS foo(predicate, {f:object}) is 2
    121 PASS foo(predicate, {f:object}) is 2
    122 PASS foo(predicate, {f:object}) is 2
    123 PASS foo(predicate, {f:object}) is 2
    124 PASS foo(predicate, {f:object}) is 2
    125 PASS foo(predicate, {f:object}) is 2
    126 PASS foo(predicate, {f:object}) is 2
    127 PASS foo(predicate, {f:object}) is 2
    128 PASS foo(predicate, {f:object}) is 2
    129 PASS foo(predicate, {f:object}) is 2
    130 PASS foo(predicate, {f:object}) is 2
    131 PASS foo(predicate, {f:object}) is 2
    132 PASS foo(predicate, {f:object}) is 2
    133 PASS foo(predicate, {f:object}) is 2
    134 PASS foo(predicate, {f:object}) is 2
    135 PASS foo(predicate, {f:object}) is 2
    136 PASS foo(predicate, {f:object}) is 2
    137 PASS foo(predicate, {f:object}) is 2
    138 PASS foo(predicate, {f:object}) is 2
    139 PASS foo(predicate, {f:object}) is 2
    140 PASS foo(predicate, {f:object}) is 2
    141 PASS foo(predicate, {f:object}) is 2
    142 PASS foo(predicate, {f:object}) is 2
    143 PASS foo(predicate, {f:object}) is 2
    144 PASS foo(predicate, {f:object}) is 2
    145 PASS foo(predicate, {f:object}) is 2
    146 PASS foo(predicate, {f:object}) is 2
    147 PASS foo(predicate, {f:object}) is 2
    148 PASS foo(predicate, {f:object}) is 2
    149 PASS foo(predicate, {f:object}) is 2
    150 PASS foo(predicate, {f:object}) is 2
    151 PASS foo(predicate, {f:object}) is 2
    152 PASS foo(predicate, {f:object}) is 2
    153 PASS foo(predicate, {f:object}) is 2
    154 PASS foo(predicate, {f:object}) is 2
    155 PASS foo(predicate, {f:object}) is 2
    156 PASS foo(predicate, {f:object}) is 2
    157 PASS foo(predicate, {f:object}) is 2
    158 PASS foo(predicate, {f:object}) is 2
    159 PASS foo(predicate, {f:object}) is 2
    160 PASS foo(predicate, {f:object}) is 2
    161 PASS foo(predicate, {f:object}) is 2
    162 PASS foo(predicate, {f:object}) is 2
    163 PASS foo(predicate, {f:object}) is 2
    164 PASS foo(predicate, {f:object}) is 2
    165 PASS foo(predicate, {f:object}) is 2
    166 PASS foo(predicate, {f:object}) is 2
    167 PASS foo(predicate, {f:object}) is 2
    168 PASS foo(predicate, {f:object}) is 2
    169 PASS foo(predicate, {f:object}) is 2
    170 PASS foo(predicate, {f:object}) is 2
    171 PASS foo(predicate, {f:object}) is 2
    172 PASS foo(predicate, {f:object}) is 2
    173 PASS foo(predicate, {f:object}) is 2
    174 PASS foo(predicate, {f:object}) is 2
    175 PASS foo(predicate, {f:object}) is 2
    176 PASS foo(predicate, {f:object}) is 2
    177 PASS foo(predicate, {f:object}) is 2
    178 PASS foo(predicate, {f:object}) is 2
    179 PASS foo(predicate, {f:object}) is NaN
    180 PASS foo(predicate, {f:object}) is NaN
    181 PASS foo(predicate, {f:object}) is NaN
    182 PASS foo(predicate, {f:object}) is NaN
    183 PASS foo(predicate, {f:object}) is NaN
    184 PASS foo(predicate, {f:object}) is NaN
    185 PASS foo(predicate, {f:object}) is NaN
    186 PASS foo(predicate, {f:object}) is NaN
    187 PASS foo(predicate, {f:object}) is NaN
    188 PASS foo(predicate, {f:object}) is NaN
    189 PASS foo(predicate, {f:object}) is NaN
    190 PASS foo(predicate, {f:object}) is NaN
    191 PASS foo(predicate, {f:object}) is NaN
    192 PASS foo(predicate, {f:object}) is NaN
    193 PASS foo(predicate, {f:object}) is NaN
    194 PASS foo(predicate, {f:object}) is NaN
    195 PASS foo(predicate, {f:object}) is NaN
    196 PASS foo(predicate, {f:object}) is NaN
    197 PASS foo(predicate, {f:object}) is NaN
    198 PASS foo(predicate, {f:object}) is NaN
    199 PASS foo(predicate, {f:object}) is NaN
    200 PASS foo(predicate, {f:object}) is NaN
    201 PASS foo(predicate, {f:object}) is NaN
    202 PASS foo(predicate, {f:object}) is NaN
    203 PASS foo(predicate, {f:object}) is NaN
    204 PASS foo(predicate, {f:object}) is NaN
    205 PASS foo(predicate, {f:object}) is NaN
    206 PASS foo(predicate, {f:object}) is NaN
    207 PASS foo(predicate, {f:object}) is NaN
    208 PASS foo(predicate, {f:object}) is NaN
    209 PASS foo(predicate, {f:object}) is NaN
    210 PASS foo(predicate, {f:object}) is NaN
    211 PASS foo(predicate, {f:object}) is NaN
    212 PASS foo(predicate, {f:object}) is NaN
    213 PASS foo(predicate, {f:object}) is NaN
    214 PASS foo(predicate, {f:object}) is NaN
    215 PASS foo(predicate, {f:object}) is NaN
    216 PASS foo(predicate, {f:object}) is NaN
    217 PASS foo(predicate, {f:object}) is NaN
    218 PASS foo(predicate, {f:object}) is NaN
    219 PASS foo(predicate, {f:object}) is NaN
    220 PASS foo(predicate, {f:object}) is NaN
    221 PASS foo(predicate, {f:object}) is NaN
    222 PASS foo(predicate, {f:object}) is NaN
    223 PASS foo(predicate, {f:object}) is NaN
    224 PASS foo(predicate, {f:object}) is NaN
    225 PASS foo(predicate, {f:object}) is NaN
    226 PASS foo(predicate, {f:object}) is NaN
    227 PASS foo(predicate, {f:object}) is NaN
    228 PASS foo(predicate, {f:object}) is NaN
    229 PASS successfullyParsed is true
    230 
    231 TEST COMPLETE
    232 
    233