Propagate optimization flags to kMirOpCheck.

Bug: 17751474
Change-Id: I9561b641d956e21dac686c7cd414fa0c6a176147
Fix to MirGraph::GetSSANameWithConst()

Don't call ConstantValueWide() for a wide constant if high_word is set,
as it will DCHECK if you try to get the value for the high word.

Change-Id: I046ee3e6833ceb556a3c2dbc95699882d30d65f9
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Make which dex2oat version to use configurable.

Change-Id: I86503a51538c0b48ad96e8624b81461c2ba3279a
Add support for inputs dying at entry of instructions.

- Start using it in places where it makes sense.
- Also improve suspend check on arm to use subs directly.

Change-Id: I09ac0589f5ccb9b850ee757c76dcbcf35ee8cd01
Merge "Add support for inputs dying at entry of instructions."
am 17b1c174: Merge "Add support for inputs dying at entry of instructions."

* commit '17b1c174dddb1d83018740c2084ab42daa812fff':
  Add support for inputs dying at entry of instructions.
Handlerize methods across some GC points.

Bug: 12687968
Change-Id: I0d5b0a78488ba76db4d25991d8db95b24bb624e9
Add a prepare for register allocation pass.

- Currently the pass just changes the uses of checks to the
  actual values.
- Also optimize array access, now that inputs can be constants.
- And fix another bug in the register allocator reveiled by
  this change.

Change-Id: I43be0dbde9330ee5c8f9d678de11361292d8bd98
Merge "Handlerize methods across some GC points."
am 31fa08d8: Merge "Handlerize methods across some GC points."

* commit '31fa08d8db5abae646b15b0c339366232ca25a91':
  Handlerize methods across some GC points.
Merge host-run-test-jar and push-and-run-test-jar.

- Too many code duplication between the two files.
- Also fix --zygote and --gdb invocations.

Change-Id: I1f99320e63a7a0f19ad1ad2b12693901b8c6bb43
Merge "Merge host-run-test-jar and push-and-run-test-jar."
Add way to warn about missing JNI_ABORT

Bug: 16858794
Change-Id: I6794a14ee323ef95569cc7646619e6869771c7c6
Fix a merge error in cl 108991.

Bug: 12687968
Change-Id: I37603c154b252321b59a5ea02c6a92f5a9300667
Merge "Add way to warn about missing JNI_ABORT"
Merge "Fix a merge error in cl 108991."
am da20867f: Merge "Merge host-run-test-jar and push-and-run-test-jar."

* commit 'da20867f1967cab18722b507758e90913410b8e8':
  Merge host-run-test-jar and push-and-run-test-jar.
am 902c989b: Merge "Add way to warn about missing JNI_ABORT"

* commit '902c989bc46da80c3c80e49c7f868b63ba73d2de':
  Add way to warn about missing JNI_ABORT
am 92e7b912: Merge "Fix a merge error in cl 108991."

* commit '92e7b912929528f23abef6b33d9fa6e6bf327ccc':
  Fix a merge error in cl 108991.
ART: fix NullCheckElimination to preserve MIR_IGNORE_NULL_CHECK

If the MIRGraph::EliminateNullChecksAndInferTypes() function managed
to prove that some regs are non-null then it sets the flag
MIR_IGNORE_NULL_CHECK and resets this flag for all the other regs.
If some previous optimizations have already set MIR_IGNORE_NULL_CHECK
then it can be reset by EliminateNullChecksAndInferTypes. This way
NullCheckElimination discards some optimization efforts.
Optimization passes should not reset MIR_IGNORE_NULL_CHECK unless
they 100% sure NullCheck is needed.

This patch makes the NCE_TypeInference pass be conservative in
resetting MIR_IGNORE_NULL_CHECK.

Change-Id: I4ea74020968b5c5bd8e3af48211ffd4c6afd7f80
Signed-off-by: Yevgeny Rouban <yevgeny.y.rouban@intel.com>