diff options
| author | buzbee <buzbee@google.com> | 2010-09-09 16:52:00 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2010-09-09 16:52:00 -0700 |
| commit | c94d546e99f18ba445b2fd3f8e91c93d14cd725d (patch) | |
| tree | b43d06fbc4310cee546bbba85a98ec1113d6cace | |
| parent | b20c366a4cc1dbaeb7aa14fae18baa9e45a86503 (diff) | |
| parent | 24628c4c898930ba350b6ac99625c8ff700f35c8 (diff) | |
| download | android_dalvik-c94d546e99f18ba445b2fd3f8e91c93d14cd725d.tar.gz android_dalvik-c94d546e99f18ba445b2fd3f8e91c93d14cd725d.tar.bz2 android_dalvik-c94d546e99f18ba445b2fd3f8e91c93d14cd725d.zip | |
am 24628c4c: am 50afc65c: Merge "JIT: Fix inconsistent handling of sub-word instance git/put" into gingerbread
Merge commit '24628c4c898930ba350b6ac99625c8ff700f35c8'
* commit '24628c4c898930ba350b6ac99625c8ff700f35c8':
JIT: Fix inconsistent handling of sub-word instance git/put
| -rw-r--r-- | vm/compiler/codegen/arm/CodegenDriver.c | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/vm/compiler/codegen/arm/CodegenDriver.c b/vm/compiler/codegen/arm/CodegenDriver.c index a04371ea1..0b6e433e6 100644 --- a/vm/compiler/codegen/arm/CodegenDriver.c +++ b/vm/compiler/codegen/arm/CodegenDriver.c @@ -2328,24 +2328,20 @@ static bool handleFmt22c(CompilationUnit *cUnit, MIR *mir) // NOTE: intentional fallthrough case OP_IGET: case OP_IGET_OBJECT: - genIGet(cUnit, mir, kWord, fieldOffset, isVolatile); - break; case OP_IGET_BOOLEAN: - genIGet(cUnit, mir, kUnsignedByte, fieldOffset, isVolatile); - break; case OP_IGET_BYTE: - genIGet(cUnit, mir, kSignedByte, fieldOffset, isVolatile); - break; case OP_IGET_CHAR: - genIGet(cUnit, mir, kUnsignedHalf, fieldOffset, isVolatile); - break; case OP_IGET_SHORT: - genIGet(cUnit, mir, kSignedHalf, fieldOffset, isVolatile); + genIGet(cUnit, mir, kWord, fieldOffset, isVolatile); break; case OP_IPUT_WIDE: genIPutWide(cUnit, mir, fieldOffset); break; case OP_IPUT: + case OP_IPUT_SHORT: + case OP_IPUT_CHAR: + case OP_IPUT_BYTE: + case OP_IPUT_BOOLEAN: genIPut(cUnit, mir, kWord, fieldOffset, false, isVolatile); break; case OP_IPUT_VOLATILE: @@ -2355,16 +2351,6 @@ static bool handleFmt22c(CompilationUnit *cUnit, MIR *mir) case OP_IPUT_OBJECT: genIPut(cUnit, mir, kWord, fieldOffset, true, isVolatile); break; - case OP_IPUT_SHORT: - case OP_IPUT_CHAR: - genIPut(cUnit, mir, kUnsignedHalf, fieldOffset, false, isVolatile); - break; - case OP_IPUT_BYTE: - genIPut(cUnit, mir, kSignedByte, fieldOffset, false, isVolatile); - break; - case OP_IPUT_BOOLEAN: - genIPut(cUnit, mir, kUnsignedByte, fieldOffset, false, isVolatile); - break; case OP_IGET_WIDE_VOLATILE: case OP_IPUT_WIDE_VOLATILE: genInterpSingleStep(cUnit, mir); |
