OSDN Git Service

Fix checks for kLiteral in local optimizations.
authorDave Allison <dallison@google.com>
Wed, 6 Aug 2014 04:32:46 +0000 (21:32 -0700)
committerDave Allison <dallison@google.com>
Wed, 6 Aug 2014 19:40:27 +0000 (19:40 +0000)
commitadc73cbe869f9560cf84bda2e953a2b267b1438f
tree0b4a2d6a914d4a80cedafe0e356fc37335222b8c
parent860feb0a60d0fe9311f28bd590058f6660d130b1
Fix checks for kLiteral in local optimizations.

The check for kLiteral (literal load) just checked the kLiteral
bit in the def mask.  The kEncodeAll mask has the kLiteral bit
set so this check was triggering.  The fix is to check for
only the kLiteral bit being set and no other special bits.

The semantics of the special bits in the use/def mask is that
only one of them can be set at the same time.

Bug: 16824330

Change-Id: I0f1c1157e017870414ffef11767e5433d1fd4401
compiler/dex/quick/local_optimizations.cc