diff options
author | 2015-01-26 18:54:32 +0000 | |
---|---|---|
committer | 2015-01-29 12:01:26 +0000 | |
commit | 10e244f9e7f6d96a95c910a2bedef5bd3810c637 (patch) | |
tree | bc2b90ce716129115c05f79e21c58fe13b01fd20 /compiler/optimizing/ssa_builder.cc | |
parent | ab7f56d9b9838811cb01773e45999e2cda4aa03a (diff) |
optimizing: NullCheck elimination
How it works:
- run a type analysis to propagate null information on instructions
- during the last instruction simplifier remove null checks for which
the input is known to be not null
The current type analysis is actually a nullability analysis but it will
be reused in follow up CLs to propagate type information: so it keeps
the more convenient name.
Change-Id: I54bb1d32ab24604b4d677d1ecdaf8d60a5ff5ce9
Diffstat (limited to 'compiler/optimizing/ssa_builder.cc')
-rw-r--r-- | compiler/optimizing/ssa_builder.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/optimizing/ssa_builder.cc b/compiler/optimizing/ssa_builder.cc index 4f9c3b87c1..c9a21aa681 100644 --- a/compiler/optimizing/ssa_builder.cc +++ b/compiler/optimizing/ssa_builder.cc @@ -17,7 +17,7 @@ #include "ssa_builder.h" #include "nodes.h" -#include "ssa_type_propagation.h" +#include "primitive_type_propagation.h" #include "ssa_phi_elimination.h" namespace art { @@ -52,7 +52,7 @@ void SsaBuilder::BuildSsa() { // 4) Propagate types of phis. At this point, phis are typed void in the general // case, or float or double when we created a floating-point equivalent. So we // need to propagate the types across phis to give them a correct type. - SsaTypePropagation type_propagation(GetGraph()); + PrimitiveTypePropagation type_propagation(GetGraph()); type_propagation.Run(); // 5) Clear locals. |