dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-expected.txt 10.9 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532
# Copyright 2013 the V8 project authors. All rights reserved.
# Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1.  Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
# 2.  Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in the
#     documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

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.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS foo(o) is -1
PASS foo(o) is 0
PASS foo(o) is 1
PASS foo(o) is 2
PASS foo(o) is 3
PASS foo(o) is 4
PASS foo(o) is 5
PASS foo(o) is 6
PASS foo(o) is 7
PASS foo(o) is 8
PASS foo(o) is 9
PASS foo(o) is 10
PASS foo(o) is 11
PASS foo(o) is 12
PASS foo(o) is 13
PASS foo(o) is 14
PASS foo(o) is 15
PASS foo(o) is 16
PASS foo(o) is 17
PASS foo(o) is 18
PASS foo(o) is 19
PASS foo(o) is 20
PASS foo(o) is 21
PASS foo(o) is 22
PASS foo(o) is 23
PASS foo(o) is 24
PASS foo(o) is 25
PASS foo(o) is 26
PASS foo(o) is 27
PASS foo(o) is 28
PASS foo(o) is 29
PASS foo(o) is 30
PASS foo(o) is 31
PASS foo(o) is 32
PASS foo(o) is 33
PASS foo(o) is 34
PASS foo(o) is 35
PASS foo(o) is 36
PASS foo(o) is 37
PASS foo(o) is 38
PASS foo(o) is 39
PASS foo(o) is 40
PASS foo(o) is 41
PASS foo(o) is 42
PASS foo(o) is 43
PASS foo(o) is 44
PASS foo(o) is 45
PASS foo(o) is 46
PASS foo(o) is 47
PASS foo(o) is 48
PASS foo(o) is 49
PASS foo(o) is 50
PASS foo(o) is 51
PASS foo(o) is 52
PASS foo(o) is 53
PASS foo(o) is 54
PASS foo(o) is 55
PASS foo(o) is 56
PASS foo(o) is 57
PASS foo(o) is 58
PASS foo(o) is 59
PASS foo(o) is 60
PASS foo(o) is 61
PASS foo(o) is 62
PASS foo(o) is 63
PASS foo(o) is 64
PASS foo(o) is 65
PASS foo(o) is 66
PASS foo(o) is 67
PASS foo(o) is 68
PASS foo(o) is 69
PASS foo(o) is 70
PASS foo(o) is 71
PASS foo(o) is 72
PASS foo(o) is 73
PASS foo(o) is 74
PASS foo(o) is 75
PASS foo(o) is 76
PASS foo(o) is 77
PASS foo(o) is 78
PASS foo(o) is 79
PASS foo(o) is 80
PASS foo(o) is 81
PASS foo(o) is 82
PASS foo(o) is 83
PASS foo(o) is 84
PASS foo(o) is 85
PASS foo(o) is 86
PASS foo(o) is 87
PASS foo(o) is 88
PASS foo(o) is 89
PASS foo(o) is 90
PASS foo(o) is 91
PASS foo(o) is 92
PASS foo(o) is 93
PASS foo(o) is 94
PASS foo(o) is 95
PASS foo(o) is 96
PASS foo(o) is 97
PASS foo(o) is 98
PASS foo(o) is 99
PASS foo(o) is 100
PASS foo(o) is 101
PASS foo(o) is 102
PASS foo(o) is 103
PASS foo(o) is 104
PASS foo(o) is 105
PASS foo(o) is 106
PASS foo(o) is 107
PASS foo(o) is 108
PASS foo(o) is 109
PASS foo(o) is 110
PASS foo(o) is 111
PASS foo(o) is 112
PASS foo(o) is 113
PASS foo(o) is 114
PASS foo(o) is 115
PASS foo(o) is 116
PASS foo(o) is 117
PASS foo(o) is 118
PASS foo(o) is 119
PASS foo(o) is 120
PASS foo(o) is 121
PASS foo(o) is 122
PASS foo(o) is 123
PASS foo(o) is 124
PASS foo(o) is 125
PASS foo(o) is 126
PASS foo(o) is 127
PASS foo(o) is 128
PASS foo(o) is 129
PASS foo(o) is 130
PASS foo(o) is 131
PASS foo(o) is 132
PASS foo(o) is 133
PASS foo(o) is 134
PASS foo(o) is 135
PASS foo(o) is 136
PASS foo(o) is 137
PASS foo(o) is 138
PASS foo(o) is 139
PASS foo(o) is 140
PASS foo(o) is 141
PASS foo(o) is 142
PASS foo(o) is 143
PASS foo(o) is 144
PASS foo(o) is 145
PASS foo(o) is 146
PASS foo(o) is 147
PASS foo(o) is 148
PASS foo(o) is 149
PASS foo(o) is 150
PASS foo(o) is 151
PASS foo(o) is 152
PASS foo(o) is 153
PASS foo(o) is 154
PASS foo(o) is 155
PASS foo(o) is 156
PASS foo(o) is 157
PASS foo(o) is 158
PASS foo(o) is 159
PASS foo(o) is 160
PASS foo(o) is 161
PASS foo(o) is 162
PASS foo(o) is 163
PASS foo(o) is 164
PASS foo(o) is 165
PASS foo(o) is 166
PASS foo(o) is 167
PASS foo(o) is 168
PASS foo(o) is 169
PASS foo(o) is 170
PASS foo(o) is 171
PASS foo(o) is 172
PASS foo(o) is 173
PASS foo(o) is 174
PASS foo(o) is 175
PASS foo(o) is 176
PASS foo(o) is 177
PASS foo(o) is 178
PASS foo(o) is 179
PASS foo(o) is 180
PASS foo(o) is 181
PASS foo(o) is 182
PASS foo(o) is 183
PASS foo(o) is 184
PASS foo(o) is 185
PASS foo(o) is 186
PASS foo(o) is 187
PASS foo(o) is 188
PASS foo(o) is 189
PASS foo(o) is 190
PASS foo(o) is 191
PASS foo(o) is 192
PASS foo(o) is 193
PASS foo(o) is 194
PASS foo(o) is 195
PASS foo(o) is 196
PASS foo(o) is 197
PASS foo(o) is 198
PASS foo(o) is 199
PASS foo(o) is 200
PASS foo(o) is 201
PASS foo(o) is 202
PASS foo(o) is 203
PASS foo(o) is 204
PASS foo(o) is 205
PASS foo(o) is 206
PASS foo(o) is 207
PASS foo(o) is 208
PASS foo(o) is 209
PASS foo(o) is 210
PASS foo(o) is 211
PASS foo(o) is 212
PASS foo(o) is 213
PASS foo(o) is 214
PASS foo(o) is 215
PASS foo(o) is 216
PASS foo(o) is 217
PASS foo(o) is 218
PASS foo(o) is 219
PASS foo(o) is 220
PASS foo(o) is 221
PASS foo(o) is 222
PASS foo(o) is 223
PASS foo(o) is 224
PASS foo(o) is 225
PASS foo(o) is 226
PASS foo(o) is 227
PASS foo(o) is 228
PASS foo(o) is 229
PASS foo(o) is 230
PASS foo(o) is 231
PASS foo(o) is 232
PASS foo(o) is 233
PASS foo(o) is 234
PASS foo(o) is 235
PASS foo(o) is 236
PASS foo(o) is 237
PASS foo(o) is 238
PASS foo(o) is 239
PASS foo(o) is 240
PASS foo(o) is 241
PASS foo(o) is 242
PASS foo(o) is 243
PASS foo(o) is 244
PASS foo(o) is 245
PASS foo(o) is 246
PASS foo(o) is 247
PASS foo(o) is 248
PASS foo(o) is 249
PASS foo(o) is 250
PASS foo(o) is 251
PASS foo(o) is 252
PASS foo(o) is 253
PASS foo(o) is 254
PASS foo(o) is 255
PASS foo(o) is 256
PASS foo(o) is 257
PASS foo(o) is 258
PASS foo(o) is 259
PASS foo(o) is 260
PASS foo(o) is 261
PASS foo(o) is 262
PASS foo(o) is 263
PASS foo(o) is 264
PASS foo(o) is 265
PASS foo(o) is 266
PASS foo(o) is 267
PASS foo(o) is 268
PASS foo(o) is 269
PASS foo(o) is 270
PASS foo(o) is 271
PASS foo(o) is 272
PASS foo(o) is 273
PASS foo(o) is 274
PASS foo(o) is 275
PASS foo(o) is 276
PASS foo(o) is 277
PASS foo(o) is 278
PASS foo(o) is 279
PASS foo(o) is 280
PASS foo(o) is 281
PASS foo(o) is 282
PASS foo(o) is 283
PASS foo(o) is 284
PASS foo(o) is 285
PASS foo(o) is 286
PASS foo(o) is 287
PASS foo(o) is 288
PASS foo(o) is 289
PASS foo(o) is 290
PASS foo(o) is 291
PASS foo(o) is 292
PASS foo(o) is 293
PASS foo(o) is 294
PASS foo(o) is 295
PASS foo(o) is 296
PASS foo(o) is 297
PASS foo(o) is 298
PASS foo(o) is 299
PASS foo(o) is 300
PASS foo(o) is 301
PASS foo(o) is 302
PASS foo(o) is 303
PASS foo(o) is 304
PASS foo(o) is 305
PASS foo(o) is 306
PASS foo(o) is 307
PASS foo(o) is 308
PASS foo(o) is 309
PASS foo(o) is 310
PASS foo(o) is 311
PASS foo(o) is 312
PASS foo(o) is 313
PASS foo(o) is 314
PASS foo(o) is 315
PASS foo(o) is 316
PASS foo(o) is 317
PASS foo(o) is 318
PASS foo(o) is 319
PASS foo(o) is 320
PASS foo(o) is 321
PASS foo(o) is 322
PASS foo(o) is 323
PASS foo(o) is 324
PASS foo(o) is 325
PASS foo(o) is 326
PASS foo(o) is 327
PASS foo(o) is 328
PASS foo(o) is 329
PASS foo(o) is 330
PASS foo(o) is 331
PASS foo(o) is 332
PASS foo(o) is 333
PASS foo(o) is 334
PASS foo(o) is 335
PASS foo(o) is 336
PASS foo(o) is 337
PASS foo(o) is 338
PASS foo(o) is 339
PASS foo(o) is 340
PASS foo(o) is 341
PASS foo(o) is 342
PASS foo(o) is 343
PASS foo(o) is 344
PASS foo(o) is 345
PASS foo(o) is 346
PASS foo(o) is 347
PASS foo(o) is 348
PASS foo(o) is 349
PASS foo(o) is 350
PASS foo(o) is 351
PASS foo(o) is 352
PASS foo(o) is 353
PASS foo(o) is 354
PASS foo(o) is 355
PASS foo(o) is 356
PASS foo(o) is 357
PASS foo(o) is 358
PASS foo(o) is 359
PASS foo(o) is 360
PASS foo(o) is 361
PASS foo(o) is 362
PASS foo(o) is 363
PASS foo(o) is 364
PASS foo(o) is 365
PASS foo(o) is 366
PASS foo(o) is 367
PASS foo(o) is 368
PASS foo(o) is 369
PASS foo(o) is 370
PASS foo(o) is 371
PASS foo(o) is 372
PASS foo(o) is 373
PASS foo(o) is 374
PASS foo(o) is 375
PASS foo(o) is 376
PASS foo(o) is 377
PASS foo(o) is 378
PASS foo(o) is 379
PASS foo(o) is 380
PASS foo(o) is 381
PASS foo(o) is 382
PASS foo(o) is 383
PASS foo(o) is 384
PASS foo(o) is 385
PASS foo(o) is 386
PASS foo(o) is 387
PASS foo(o) is 388
PASS foo(o) is 389
PASS foo(o) is 390
PASS foo(o) is 391
PASS foo(o) is 392
PASS foo(o) is 393
PASS foo(o) is 394
PASS foo(o) is 395
PASS foo(o) is 396
PASS foo(o) is 397
PASS foo(o) is 398
PASS foo(o) is 399
PASS foo(o) is 400
PASS foo(o) is 401
PASS foo(o) is 402
PASS foo(o) is 403
PASS foo(o) is 404
PASS foo(o) is 405
PASS foo(o) is 406
PASS foo(o) is 407
PASS foo(o) is 408
PASS foo(o) is 409
PASS foo(o) is 410
PASS foo(o) is 411
PASS foo(o) is 412
PASS foo(o) is 413
PASS foo(o) is 414
PASS foo(o) is 415
PASS foo(o) is 416
PASS foo(o) is 417
PASS foo(o) is 418
PASS foo(o) is 419
PASS foo(o) is 420
PASS foo(o) is 421
PASS foo(o) is 422
PASS foo(o) is 423
PASS foo(o) is 424
PASS foo(o) is 425
PASS foo(o) is 426
PASS foo(o) is 427
PASS foo(o) is 428
PASS foo(o) is 429
PASS foo(o) is 430
PASS foo(o) is 431
PASS foo(o) is 432
PASS foo(o) is 433
PASS foo(o) is 434
PASS foo(o) is 435
PASS foo(o) is 436
PASS foo(o) is 437
PASS foo(o) is 438
PASS foo(o) is 439
PASS foo(o) is 440
PASS foo(o) is 441
PASS foo(o) is 442
PASS foo(o) is 443
PASS foo(o) is 444
PASS foo(o) is 445
PASS foo(o) is 446
PASS foo(o) is 447
PASS foo(o) is 448
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS foo(o) is null
PASS successfullyParsed is true

TEST COMPLETE