diff options
| author | 2011-08-26 10:40:14 -0700 | |
|---|---|---|
| committer | 2011-08-26 10:41:33 -0700 | |
| commit | 5cd2180225421d7b94f6d978bc5c1a4d9ef34f1e (patch) | |
| tree | 46da7cfd737e4502078f9cfa1da72b827c7433ce /src/compiler/codegen/arm/MethodCodegenDriver.cc | |
| parent | 1f1fa566ea05a91f1fa8d0bdd29b913f6ee25eff (diff) | |
Fix invoke sequence and enable recursive Fibonacci
I was previously generating the wrong starting offset for the
resolved methods array.
Change-Id: Ia77800323df2872681b30f2869ef4b1131766f39
Diffstat (limited to 'src/compiler/codegen/arm/MethodCodegenDriver.cc')
| -rw-r--r-- | src/compiler/codegen/arm/MethodCodegenDriver.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/compiler/codegen/arm/MethodCodegenDriver.cc b/src/compiler/codegen/arm/MethodCodegenDriver.cc index 49529e1174..6e2f285d39 100644 --- a/src/compiler/codegen/arm/MethodCodegenDriver.cc +++ b/src/compiler/codegen/arm/MethodCodegenDriver.cc @@ -350,8 +350,9 @@ static int nextSDCallInsnSP(CompilationUnit* cUnit, MIR* mir, INVALID_SREG); break; case 3: // Method->DeclaringClass()->GetDexCache()->methodsObjectArr - loadBaseDisp(cUnit, mir, r0, art::DexCache::MethodsOffset(), - r0, kWord, INVALID_SREG); + loadBaseDisp(cUnit, mir, r0, + art::DexCache::MethodsOffset().Int32Value(), r0, + kWord, INVALID_SREG); break; case 4: // Skip past the object header opRegImm(cUnit, kOpAdd, r0, art::Array::DataOffset().Int32Value()); |