OSDN Git Service

ART: copy dalvikInsn back on throw instruction processing
authorAlexei Zavjalov <alexei.zavjalov@intel.com>
Thu, 30 Oct 2014 14:47:28 +0000 (20:47 +0600)
committerAlexei Zavjalov <alexei.zavjalov@intel.com>
Fri, 31 Oct 2014 17:58:13 +0000 (00:58 +0700)
commit56e8e608647133ae248acfec36e704c54c40c620
treebcd6b62fa4205694cba2140a17a049dddedf0ca4
parentb96fd84b8806c9670f04329cd531e97016c3eaa6
ART: copy dalvikInsn back on throw instruction processing

The potentially throwing instructions in ART are splitted into
CHECK and work portions. On the Mir-To-Lir phase ART copies the
instruction info from the work part to CHECK and uses the CHECK
part for LIR emitting. But in some cases dalvik registers of the
work part might be changed and it may lead to incorrect
calculations.

This patch adds copying of the whole dalvikInsn structure, instead
of the operand field.

Change-Id: I17466169ec86e74f9f202785f1c57c0de9e56d06
Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
compiler/dex/quick/mir_to_lir.cc