diff options
author | Vladimir Marko <vmarko@google.com> | 2019-07-29 10:18:25 +0100 |
---|---|---|
committer | Vladimir Marko <vmarko@google.com> | 2019-07-30 14:49:54 +0000 |
commit | 44ca0754b3c6f11303bac876a9175bbfa95609ef (patch) | |
tree | 6f669466e6b0e750a075108cc6f8fe0a67b66658 /compiler/optimizing/code_generator_mips.cc | |
parent | f3677471a58c2738a3d9dd05f07f01c18a5e61be (diff) |
Compiler changes for boot image extension.
Test: m test-art-host-gtest
Test: testrunnner.py --host --optimizing
Test: aosp_taimen-userdebug boots.
Test: run-gtest.sh
Test: testrunner.py --target --optimizing
Change-Id: I8e999c96ec908f26d8c529edc9d2a3be49a9379a
Diffstat (limited to 'compiler/optimizing/code_generator_mips.cc')
-rw-r--r-- | compiler/optimizing/code_generator_mips.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/compiler/optimizing/code_generator_mips.cc b/compiler/optimizing/code_generator_mips.cc index 9ea9785763..eafd051064 100644 --- a/compiler/optimizing/code_generator_mips.cc +++ b/compiler/optimizing/code_generator_mips.cc @@ -1625,7 +1625,7 @@ void CodeGeneratorMIPS::EmitLinkerPatches(ArenaVector<linker::LinkerPatch>* link string_bss_entry_patches_.size() + boot_image_other_patches_.size(); linker_patches->reserve(size); - if (GetCompilerOptions().IsBootImage()) { + if (GetCompilerOptions().IsBootImage() || GetCompilerOptions().IsBootImageExtension()) { EmitPcRelativeLinkerPatches<linker::LinkerPatch::RelativeMethodPatch>( boot_image_method_patches_, linker_patches); EmitPcRelativeLinkerPatches<linker::LinkerPatch::RelativeTypePatch>( @@ -7998,7 +7998,7 @@ void CodeGeneratorMIPS::GenerateStaticOrDirectCall( callee_method = invoke->GetLocations()->InAt(invoke->GetSpecialInputIndex()); break; case HInvokeStaticOrDirect::MethodLoadKind::kBootImageLinkTimePcRelative: { - DCHECK(GetCompilerOptions().IsBootImage()); + DCHECK(GetCompilerOptions().IsBootImage() || GetCompilerOptions().IsBootImageExtension()); PcRelativePatchInfo* info_high = NewBootImageMethodPatch(invoke->GetTargetMethod()); PcRelativePatchInfo* info_low = NewBootImageMethodPatch(invoke->GetTargetMethod(), info_high); @@ -8220,7 +8220,8 @@ void InstructionCodeGeneratorMIPS::VisitLoadClass(HLoadClass* cls) NO_THREAD_SAF break; } case HLoadClass::LoadKind::kBootImageLinkTimePcRelative: { - DCHECK(codegen_->GetCompilerOptions().IsBootImage()); + DCHECK(codegen_->GetCompilerOptions().IsBootImage() || + codegen_->GetCompilerOptions().IsBootImageExtension()); DCHECK_EQ(read_barrier_option, kWithoutReadBarrier); CodeGeneratorMIPS::PcRelativePatchInfo* info_high = codegen_->NewBootImageTypePatch(cls->GetDexFile(), cls->GetTypeIndex()); @@ -8427,7 +8428,8 @@ void InstructionCodeGeneratorMIPS::VisitLoadString(HLoadString* load) NO_THREAD_ switch (load_kind) { case HLoadString::LoadKind::kBootImageLinkTimePcRelative: { - DCHECK(codegen_->GetCompilerOptions().IsBootImage()); + DCHECK(codegen_->GetCompilerOptions().IsBootImage() || + codegen_->GetCompilerOptions().IsBootImageExtension()); CodeGeneratorMIPS::PcRelativePatchInfo* info_high = codegen_->NewBootImageStringPatch(load->GetDexFile(), load->GetStringIndex()); CodeGeneratorMIPS::PcRelativePatchInfo* info_low = |