Files
sdk/runtime/vm
Alexander Markov af2ec43d44 [vm/compiler] Fix incorrect assertion in LoadOptimizer
Unreachable code can contain LoadIndex/StoreIndex instructions
which take result of AllocateObject as input. For example:

    v5 <- AllocateObject:18(cls=MapEntry, v4, <not-aliased>) T{MapEntry}
    ...
    v33 <- InstanceOf:14(v5 IS String, instantiator_type_args(v0), function_type_args(v0)) T{bool}
    Branch if StrictCompare:18(===, v33, v3) goto (15, 21)
B15[target]:22
    CheckClass:24(v5 Cids[1: _OneByteString@0150898 etc.  cid 82])
    ...
    v51 <- LoadIndexed(v5, v49) [0, 255] T{_Smi}

This assertion was added recently in
https://dart-review.googlesource.com/c/sdk/+/198406.

TEST=vm/dart/regress_46798_test
Fixes https://github.com/dart-lang/sdk/issues/46798

Change-Id: I9d8627768c9f477b187f2b67d70f0a9fc7d952be
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/210180
Reviewed-by: Tess Strickland <sstrickl@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2021-08-13 22:18:17 +00:00
..
2021-07-13 01:55:45 +00:00
2021-07-13 01:55:45 +00:00
2020-06-26 09:39:15 +00:00
2021-07-09 13:48:25 +00:00
2021-07-28 19:57:54 +00:00
2021-07-13 01:55:45 +00:00
2021-07-13 01:55:45 +00:00
2021-06-17 16:05:02 +00:00
2021-06-14 20:45:18 +00:00
2021-06-14 20:45:18 +00:00
2021-06-14 20:45:18 +00:00
2021-06-14 20:45:18 +00:00
2021-06-17 16:05:02 +00:00
2020-08-06 19:55:12 +00:00