Do not deopt when using AOT inline caches
Generating a deopt does not ensure that we will actually capture the new types; and the danger is that we could be stuck in a loop with "forever" deoptimizations. For example, if the method never becomes hot again, the inline cache will not be updated and the AOT code will keep deoptimizing. This is a compromise because we will most likely never update the inline cache (unless there's another reason to deopt). So we might be stuck with a sub-optimal inline cache. As a TODO, we could be smarter when capturing inline caches to mitigate this. (e.g. by having different thresholds for new and old methods). Delete test 644 which was testing a regression involving deopts which is no longer applicable. Bug: 38412648 Test: m test-art-host Change-Id: Ib84559e84f07ec976feeb3a3120fa486d5bee3bf
Loading
Please sign in to comment