OSDN Git Service

Revert "Revert "ART: Update DCE to work with try/catch""
authorDavid Brazdil <dbrazdil@google.com>
Mon, 2 Nov 2015 20:24:55 +0000 (20:24 +0000)
committerDavid Brazdil <dbrazdil@google.com>
Tue, 10 Nov 2015 09:38:37 +0000 (09:38 +0000)
commit8a7c0fe837bb00b02dfcfc678910d81d07fb2136
tree9d1a44fa3dd16ed93efb84f5c4e4e5bf1231f5c3
parent44612873bb02be8a59e16aa50f61cce9e9cc9547
Revert "Revert "ART: Update DCE to work with try/catch""

The previous CL failed because it did not update inputs of catch phis.
Since phi input indices cannot be easily mapped back to throwing
instructions, this new implementation at least removes catch phi uses
of values defined in the removed blocks to preserve graph consistency.

This reverts commit fb552d7061746f7a90fdd5002696e255e2e15c35.

Change-Id: I63d95915d1ef50e71d3bcf0cd10aaded554035b4
compiler/optimizing/dead_code_elimination.cc
compiler/optimizing/nodes.cc
compiler/optimizing/nodes.h
compiler/optimizing/optimizing_compiler.cc
test/543-checker-dce-trycatch/expected.txt [new file with mode: 0644]
test/543-checker-dce-trycatch/info.txt [new file with mode: 0644]
test/543-checker-dce-trycatch/smali/TestCase.smali [new file with mode: 0644]
test/543-checker-dce-trycatch/src/Main.java [new file with mode: 0644]