summaryrefslogtreecommitdiff
path: root/compiler/optimizing
diff options
context:
space:
mode:
author Andra Danciu <andradanciu@google.com> 2020-09-16 08:12:02 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2020-09-16 11:11:46 +0000
commitc992e42601a9dc99a8ddcaecbc7f9d5048d77a38 (patch)
tree56e192bc533d7d97f1954d1ee50d9333363757da /compiler/optimizing
parentff6d5fa6add68a6ab2b699444c3539ee1950d491 (diff)
X86: Clarify HandleFieldSet constant volatile Float64 case
In case of a constant Float64 value code generation, we ensure that the field is not volatile. Test: art/test.py --host --all-compiler --optimizing --32 -r Change-Id: I512c89dffc446fd9a44d2f409c6d2ddac756e111
Diffstat (limited to 'compiler/optimizing')
-rw-r--r--compiler/optimizing/code_generator_x86.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/optimizing/code_generator_x86.cc b/compiler/optimizing/code_generator_x86.cc
index ceeadb305c..4a0eb2e42e 100644
--- a/compiler/optimizing/code_generator_x86.cc
+++ b/compiler/optimizing/code_generator_x86.cc
@@ -5813,6 +5813,7 @@ void InstructionCodeGeneratorX86::HandleFieldSet(HInstruction* instruction,
case DataType::Type::kFloat64: {
if (value.IsConstant()) {
+ DCHECK(!is_volatile);
int64_t v = CodeGenerator::GetInt64ValueOf(value.GetConstant());
__ movl(Address(base, offset), Immediate(Low32Bits(v)));
codegen_->MaybeRecordImplicitNullCheck(instruction);