Rename kDummy32BitOffset to kPlaceholder32BitOffset.
And drop an obsolete reference to Quick compiler.
Test: m test-art-host-gtest
Bug: 161336379
Change-Id: If08cc0ca83cfeb1c6923c41f9d61766f878a295a
diff --git a/compiler/optimizing/code_generator_x86.cc b/compiler/optimizing/code_generator_x86.cc
index 99d3240..934eebb 100644
--- a/compiler/optimizing/code_generator_x86.cc
+++ b/compiler/optimizing/code_generator_x86.cc
@@ -5019,14 +5019,15 @@
DCHECK(GetCompilerOptions().IsBootImage() || GetCompilerOptions().IsBootImageExtension());
Register base_reg = GetInvokeStaticOrDirectExtraParameter(invoke,
temp.AsRegister<Register>());
- __ leal(temp.AsRegister<Register>(), Address(base_reg, CodeGeneratorX86::kDummy32BitOffset));
+ __ leal(temp.AsRegister<Register>(),
+ Address(base_reg, CodeGeneratorX86::kPlaceholder32BitOffset));
RecordBootImageMethodPatch(invoke);
break;
}
case HInvokeStaticOrDirect::MethodLoadKind::kBootImageRelRo: {
Register base_reg = GetInvokeStaticOrDirectExtraParameter(invoke,
temp.AsRegister<Register>());
- __ movl(temp.AsRegister<Register>(), Address(base_reg, kDummy32BitOffset));
+ __ movl(temp.AsRegister<Register>(), Address(base_reg, kPlaceholder32BitOffset));
RecordBootImageRelRoPatch(
invoke->InputAt(invoke->GetSpecialInputIndex())->AsX86ComputeBaseMethodAddress(),
GetBootImageOffset(invoke));
@@ -5035,7 +5036,7 @@
case HInvokeStaticOrDirect::MethodLoadKind::kBssEntry: {
Register base_reg = GetInvokeStaticOrDirectExtraParameter(invoke,
temp.AsRegister<Register>());
- __ movl(temp.AsRegister<Register>(), Address(base_reg, kDummy32BitOffset));
+ __ movl(temp.AsRegister<Register>(), Address(base_reg, kPlaceholder32BitOffset));
RecordMethodBssEntryPatch(invoke);
// No need for memory fence, thanks to the x86 memory model.
break;
@@ -5222,7 +5223,7 @@
DCHECK(method_address != nullptr);
Register method_address_reg =
invoke->GetLocations()->InAt(invoke->GetSpecialInputIndex()).AsRegister<Register>();
- __ leal(reg, Address(method_address_reg, CodeGeneratorX86::kDummy32BitOffset));
+ __ leal(reg, Address(method_address_reg, CodeGeneratorX86::kPlaceholder32BitOffset));
RecordBootImageIntrinsicPatch(method_address, boot_image_reference);
} else if (GetCompilerOptions().GetCompilePic()) {
HX86ComputeBaseMethodAddress* method_address =
@@ -5230,7 +5231,7 @@
DCHECK(method_address != nullptr);
Register method_address_reg =
invoke->GetLocations()->InAt(invoke->GetSpecialInputIndex()).AsRegister<Register>();
- __ movl(reg, Address(method_address_reg, CodeGeneratorX86::kDummy32BitOffset));
+ __ movl(reg, Address(method_address_reg, CodeGeneratorX86::kPlaceholder32BitOffset));
RecordBootImageRelRoPatch(method_address, boot_image_reference);
} else {
DCHECK(GetCompilerOptions().IsJitCompiler());
@@ -5254,7 +5255,7 @@
DCHECK(method_address != nullptr);
Register method_address_reg =
invoke->GetLocations()->InAt(invoke->GetSpecialInputIndex()).AsRegister<Register>();
- __ leal(argument, Address(method_address_reg, CodeGeneratorX86::kDummy32BitOffset));
+ __ leal(argument, Address(method_address_reg, CodeGeneratorX86::kPlaceholder32BitOffset));
MethodReference target_method = invoke->GetTargetMethod();
dex::TypeIndex type_idx = target_method.dex_file->GetMethodId(target_method.index).class_idx_;
boot_image_type_patches_.emplace_back(method_address, target_method.dex_file, type_idx.index_);
@@ -6837,21 +6838,21 @@
codegen_->GetCompilerOptions().IsBootImageExtension());
DCHECK_EQ(read_barrier_option, kWithoutReadBarrier);
Register method_address = locations->InAt(0).AsRegister<Register>();
- __ leal(out, Address(method_address, CodeGeneratorX86::kDummy32BitOffset));
+ __ leal(out, Address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset));
codegen_->RecordBootImageTypePatch(cls);
break;
}
case HLoadClass::LoadKind::kBootImageRelRo: {
DCHECK(!codegen_->GetCompilerOptions().IsBootImage());
Register method_address = locations->InAt(0).AsRegister<Register>();
- __ movl(out, Address(method_address, CodeGeneratorX86::kDummy32BitOffset));
+ __ movl(out, Address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset));
codegen_->RecordBootImageRelRoPatch(cls->InputAt(0)->AsX86ComputeBaseMethodAddress(),
codegen_->GetBootImageOffset(cls));
break;
}
case HLoadClass::LoadKind::kBssEntry: {
Register method_address = locations->InAt(0).AsRegister<Register>();
- Address address(method_address, CodeGeneratorX86::kDummy32BitOffset);
+ Address address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset);
Label* fixup_label = codegen_->NewTypeBssEntryPatch(cls);
GenerateGcRootFieldLoad(cls, out_loc, address, fixup_label, read_barrier_option);
// No need for memory fence, thanks to the x86 memory model.
@@ -6866,7 +6867,7 @@
break;
}
case HLoadClass::LoadKind::kJitTableAddress: {
- Address address = Address::Absolute(CodeGeneratorX86::kDummy32BitOffset);
+ Address address = Address::Absolute(CodeGeneratorX86::kPlaceholder32BitOffset);
Label* fixup_label = codegen_->NewJitRootClassPatch(
cls->GetDexFile(), cls->GetTypeIndex(), cls->GetClass());
// /* GcRoot<mirror::Class> */ out = *address
@@ -7034,21 +7035,21 @@
DCHECK(codegen_->GetCompilerOptions().IsBootImage() ||
codegen_->GetCompilerOptions().IsBootImageExtension());
Register method_address = locations->InAt(0).AsRegister<Register>();
- __ leal(out, Address(method_address, CodeGeneratorX86::kDummy32BitOffset));
+ __ leal(out, Address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset));
codegen_->RecordBootImageStringPatch(load);
return;
}
case HLoadString::LoadKind::kBootImageRelRo: {
DCHECK(!codegen_->GetCompilerOptions().IsBootImage());
Register method_address = locations->InAt(0).AsRegister<Register>();
- __ movl(out, Address(method_address, CodeGeneratorX86::kDummy32BitOffset));
+ __ movl(out, Address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset));
codegen_->RecordBootImageRelRoPatch(load->InputAt(0)->AsX86ComputeBaseMethodAddress(),
codegen_->GetBootImageOffset(load));
return;
}
case HLoadString::LoadKind::kBssEntry: {
Register method_address = locations->InAt(0).AsRegister<Register>();
- Address address = Address(method_address, CodeGeneratorX86::kDummy32BitOffset);
+ Address address = Address(method_address, CodeGeneratorX86::kPlaceholder32BitOffset);
Label* fixup_label = codegen_->NewStringBssEntryPatch(load);
// /* GcRoot<mirror::String> */ out = *address /* PC-relative */
GenerateGcRootFieldLoad(load, out_loc, address, fixup_label, kCompilerReadBarrierOption);
@@ -7067,7 +7068,7 @@
return;
}
case HLoadString::LoadKind::kJitTableAddress: {
- Address address = Address::Absolute(CodeGeneratorX86::kDummy32BitOffset);
+ Address address = Address::Absolute(CodeGeneratorX86::kPlaceholder32BitOffset);
Label* fixup_label = codegen_->NewJitRootStringPatch(
load->GetDexFile(), load->GetStringIndex(), load->GetString());
// /* GcRoot<mirror::String> */ out = *address
@@ -8511,7 +8512,7 @@
Register reg) {
AssemblerFixup* fixup =
new (GetGraph()->GetAllocator()) RIPFixup(*this, method_base, __ AddDouble(v));
- return Address(reg, kDummy32BitOffset, fixup);
+ return Address(reg, kPlaceholder32BitOffset, fixup);
}
Address CodeGeneratorX86::LiteralFloatAddress(float v,
@@ -8519,7 +8520,7 @@
Register reg) {
AssemblerFixup* fixup =
new (GetGraph()->GetAllocator()) RIPFixup(*this, method_base, __ AddFloat(v));
- return Address(reg, kDummy32BitOffset, fixup);
+ return Address(reg, kPlaceholder32BitOffset, fixup);
}
Address CodeGeneratorX86::LiteralInt32Address(int32_t v,
@@ -8527,7 +8528,7 @@
Register reg) {
AssemblerFixup* fixup =
new (GetGraph()->GetAllocator()) RIPFixup(*this, method_base, __ AddInt32(v));
- return Address(reg, kDummy32BitOffset, fixup);
+ return Address(reg, kPlaceholder32BitOffset, fixup);
}
Address CodeGeneratorX86::LiteralInt64Address(int64_t v,
@@ -8535,7 +8536,7 @@
Register reg) {
AssemblerFixup* fixup =
new (GetGraph()->GetAllocator()) RIPFixup(*this, method_base, __ AddInt64(v));
- return Address(reg, kDummy32BitOffset, fixup);
+ return Address(reg, kPlaceholder32BitOffset, fixup);
}
void CodeGeneratorX86::Load32BitValue(Register dest, int32_t value) {
@@ -8590,7 +8591,7 @@
fixups_to_jump_tables_.push_back(table_fixup);
// We want a scaled address, as we are extracting the correct offset from the table.
- return Address(reg, value, TIMES_4, kDummy32BitOffset, table_fixup);
+ return Address(reg, value, TIMES_4, kPlaceholder32BitOffset, table_fixup);
}
// TODO: target as memory.
diff --git a/compiler/optimizing/code_generator_x86.h b/compiler/optimizing/code_generator_x86.h
index c267f76..d2f1e77 100644
--- a/compiler/optimizing/code_generator_x86.h
+++ b/compiler/optimizing/code_generator_x86.h
@@ -657,9 +657,9 @@
void MaybeGenerateInlineCacheCheck(HInstruction* instruction, Register klass);
void MaybeIncrementHotness(bool is_frame_entry);
- // When we don't know the proper offset for the value, we use kDummy32BitOffset.
+ // When we don't know the proper offset for the value, we use kPlaceholder32BitOffset.
// The correct value will be inserted when processing Assembler fixups.
- static constexpr int32_t kDummy32BitOffset = 256;
+ static constexpr int32_t kPlaceholder32BitOffset = 256;
private:
struct X86PcRelativePatchInfo : PatchInfo<Label> {
diff --git a/compiler/optimizing/code_generator_x86_64.cc b/compiler/optimizing/code_generator_x86_64.cc
index 2df2d16..2b918f6 100644
--- a/compiler/optimizing/code_generator_x86_64.cc
+++ b/compiler/optimizing/code_generator_x86_64.cc
@@ -1014,19 +1014,19 @@
case HInvokeStaticOrDirect::MethodLoadKind::kBootImageLinkTimePcRelative:
DCHECK(GetCompilerOptions().IsBootImage() || GetCompilerOptions().IsBootImageExtension());
__ leal(temp.AsRegister<CpuRegister>(),
- Address::Absolute(kDummy32BitOffset, /* no_rip= */ false));
+ Address::Absolute(kPlaceholder32BitOffset, /* no_rip= */ false));
RecordBootImageMethodPatch(invoke);
break;
case HInvokeStaticOrDirect::MethodLoadKind::kBootImageRelRo: {
// Note: Boot image is in the low 4GiB and the entry is 32-bit, so emit a 32-bit load.
__ movl(temp.AsRegister<CpuRegister>(),
- Address::Absolute(kDummy32BitOffset, /* no_rip= */ false));
+ Address::Absolute(kPlaceholder32BitOffset, /* no_rip= */ false));
RecordBootImageRelRoPatch(GetBootImageOffset(invoke));
break;
}
case HInvokeStaticOrDirect::MethodLoadKind::kBssEntry: {
__ movq(temp.AsRegister<CpuRegister>(),
- Address::Absolute(kDummy32BitOffset, /* no_rip= */ false));
+ Address::Absolute(kPlaceholder32BitOffset, /* no_rip= */ false));
RecordMethodBssEntryPatch(invoke);
// No need for memory fence, thanks to the x86-64 memory model.
break;
@@ -1178,10 +1178,12 @@
void CodeGeneratorX86_64::LoadBootImageAddress(CpuRegister reg, uint32_t boot_image_reference) {
if (GetCompilerOptions().IsBootImage()) {
- __ leal(reg, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ leal(reg,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
RecordBootImageIntrinsicPatch(boot_image_reference);
} else if (GetCompilerOptions().GetCompilePic()) {
- __ movl(reg, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ movl(reg,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
RecordBootImageRelRoPatch(boot_image_reference);
} else {
DCHECK(GetCompilerOptions().IsJitCompiler());
@@ -1201,7 +1203,7 @@
DCHECK_EQ(boot_image_offset, IntrinsicVisitor::IntegerValueOfInfo::kInvalidReference);
// Load the class the same way as for HLoadClass::LoadKind::kBootImageLinkTimePcRelative.
__ leal(argument,
- Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
MethodReference target_method = invoke->GetTargetMethod();
dex::TypeIndex type_idx = target_method.dex_file->GetMethodId(target_method.index).class_idx_;
boot_image_type_patches_.emplace_back(target_method.dex_file, type_idx.index_);
@@ -6169,17 +6171,19 @@
DCHECK(codegen_->GetCompilerOptions().IsBootImage() ||
codegen_->GetCompilerOptions().IsBootImageExtension());
DCHECK_EQ(read_barrier_option, kWithoutReadBarrier);
- __ leal(out, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ leal(out,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
codegen_->RecordBootImageTypePatch(cls);
break;
case HLoadClass::LoadKind::kBootImageRelRo: {
DCHECK(!codegen_->GetCompilerOptions().IsBootImage());
- __ movl(out, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ movl(out,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
codegen_->RecordBootImageRelRoPatch(codegen_->GetBootImageOffset(cls));
break;
}
case HLoadClass::LoadKind::kBssEntry: {
- Address address = Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset,
+ Address address = Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset,
/* no_rip= */ false);
Label* fixup_label = codegen_->NewTypeBssEntryPatch(cls);
// /* GcRoot<mirror::Class> */ out = *address /* PC-relative */
@@ -6196,7 +6200,7 @@
break;
}
case HLoadClass::LoadKind::kJitTableAddress: {
- Address address = Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset,
+ Address address = Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset,
/* no_rip= */ true);
Label* fixup_label =
codegen_->NewJitRootClassPatch(cls->GetDexFile(), cls->GetTypeIndex(), cls->GetClass());
@@ -6323,18 +6327,20 @@
case HLoadString::LoadKind::kBootImageLinkTimePcRelative: {
DCHECK(codegen_->GetCompilerOptions().IsBootImage() ||
codegen_->GetCompilerOptions().IsBootImageExtension());
- __ leal(out, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ leal(out,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
codegen_->RecordBootImageStringPatch(load);
return;
}
case HLoadString::LoadKind::kBootImageRelRo: {
DCHECK(!codegen_->GetCompilerOptions().IsBootImage());
- __ movl(out, Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset, /* no_rip= */ false));
+ __ movl(out,
+ Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset, /* no_rip= */ false));
codegen_->RecordBootImageRelRoPatch(codegen_->GetBootImageOffset(load));
return;
}
case HLoadString::LoadKind::kBssEntry: {
- Address address = Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset,
+ Address address = Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset,
/* no_rip= */ false);
Label* fixup_label = codegen_->NewStringBssEntryPatch(load);
// /* GcRoot<mirror::Class> */ out = *address /* PC-relative */
@@ -6354,7 +6360,7 @@
return;
}
case HLoadString::LoadKind::kJitTableAddress: {
- Address address = Address::Absolute(CodeGeneratorX86_64::kDummy32BitOffset,
+ Address address = Address::Absolute(CodeGeneratorX86_64::kPlaceholder32BitOffset,
/* no_rip= */ true);
Label* fixup_label = codegen_->NewJitRootStringPatch(
load->GetDexFile(), load->GetStringIndex(), load->GetString());
diff --git a/compiler/optimizing/code_generator_x86_64.h b/compiler/optimizing/code_generator_x86_64.h
index d7c5b54..dc18a24 100644
--- a/compiler/optimizing/code_generator_x86_64.h
+++ b/compiler/optimizing/code_generator_x86_64.h
@@ -639,9 +639,9 @@
static void BlockNonVolatileXmmRegisters(LocationSummary* locations);
- // When we don't know the proper offset for the value, we use kDummy32BitOffset.
+ // When we don't know the proper offset for the value, we use kPlaceholder32BitOffset.
// We will fix this up in the linker later to have the right value.
- static constexpr int32_t kDummy32BitOffset = 256;
+ static constexpr int32_t kPlaceholder32BitOffset = 256;
private:
template <linker::LinkerPatch (*Factory)(size_t, const DexFile*, uint32_t, uint32_t)>
diff --git a/compiler/optimizing/intrinsics_x86.cc b/compiler/optimizing/intrinsics_x86.cc
index 15ac627..2bad0b5 100644
--- a/compiler/optimizing/intrinsics_x86.cc
+++ b/compiler/optimizing/intrinsics_x86.cc
@@ -2977,7 +2977,8 @@
DCHECK(method_address != nullptr);
Register method_address_reg =
invoke->GetLocations()->InAt(method_address_index).AsRegister<Register>();
- __ movl(out, Address(method_address_reg, out, TIMES_4, CodeGeneratorX86::kDummy32BitOffset));
+ __ movl(out,
+ Address(method_address_reg, out, TIMES_4, CodeGeneratorX86::kPlaceholder32BitOffset));
codegen_->RecordBootImageIntrinsicPatch(method_address, info.array_data_boot_image_reference);
} else {
// Note: We're about to clobber the index in `out`, so we need to use `in` and