Lines Matching refs:instruction
307 void CodeGeneratorX86_64::Move(HInstruction* instruction, in Move() argument
310 if (instruction->AsIntConstant() != nullptr) { in Move()
311 Immediate imm(instruction->AsIntConstant()->GetValue()); in Move()
317 } else if (instruction->AsLongConstant() != nullptr) { in Move()
318 int64_t value = instruction->AsLongConstant()->GetValue(); in Move()
325 } else if (instruction->AsLoadLocal() != nullptr) { in Move()
326 switch (instruction->GetType()) { in Move()
333 Move(location, Location::StackSlot(GetStackSlot(instruction->AsLoadLocal()->GetLocal()))); in Move()
337 … Move(location, Location::DoubleStackSlot(GetStackSlot(instruction->AsLoadLocal()->GetLocal()))); in Move()
341 LOG(FATAL) << "Unimplemented local type " << instruction->GetType(); in Move()
344 DCHECK((instruction->GetNext() == move_for) || instruction->GetNext()->IsTemporary()); in Move()
345 switch (instruction->GetType()) { in Move()
353 Move(location, instruction->GetLocations()->Out()); in Move()
357 LOG(FATAL) << "Unimplemented type " << instruction->GetType(); in Move()
786 HConstant* instruction = locations->InAt(1).GetConstant(); in VisitAdd() local
787 Immediate imm(instruction->AsIntConstant()->GetValue()); in VisitAdd()
852 HConstant* instruction = locations->InAt(1).GetConstant(); in VisitSub() local
853 Immediate imm(instruction->AsIntConstant()->GetValue()); in VisitSub()
879 void LocationsBuilderX86_64::VisitNewInstance(HNewInstance* instruction) { in VisitNewInstance() argument
881 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNewInstance()
883 instruction->SetLocations(locations); in VisitNewInstance()
886 void InstructionCodeGeneratorX86_64::VisitNewInstance(HNewInstance* instruction) { in VisitNewInstance() argument
889 __ movq(CpuRegister(calling_convention.GetRegisterAt(0)), Immediate(instruction->GetTypeIndex())); in VisitNewInstance()
895 codegen_->RecordPcInfo(instruction->GetDexPc()); in VisitNewInstance()
898 void LocationsBuilderX86_64::VisitParameterValue(HParameterValue* instruction) { in VisitParameterValue() argument
899 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitParameterValue()
900 Location location = parameter_visitor_.GetNextLocation(instruction->GetType()); in VisitParameterValue()
907 instruction->SetLocations(locations); in VisitParameterValue()
910 void InstructionCodeGeneratorX86_64::VisitParameterValue(HParameterValue* instruction) { in VisitParameterValue() argument
914 void LocationsBuilderX86_64::VisitNot(HNot* instruction) { in VisitNot() argument
915 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNot()
918 instruction->SetLocations(locations); in VisitNot()
921 void InstructionCodeGeneratorX86_64::VisitNot(HNot* instruction) { in VisitNot() argument
922 LocationSummary* locations = instruction->GetLocations(); in VisitNot()
928 void LocationsBuilderX86_64::VisitPhi(HPhi* instruction) { in VisitPhi() argument
929 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitPhi()
930 for (size_t i = 0, e = instruction->InputCount(); i < e; ++i) { in VisitPhi()
934 instruction->SetLocations(locations); in VisitPhi()
937 void InstructionCodeGeneratorX86_64::VisitPhi(HPhi* instruction) { in VisitPhi() argument
941 void LocationsBuilderX86_64::VisitInstanceFieldSet(HInstanceFieldSet* instruction) { in VisitInstanceFieldSet() argument
942 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitInstanceFieldSet()
946 if (instruction->InputAt(1)->GetType() == Primitive::kPrimNot) { in VisitInstanceFieldSet()
950 instruction->SetLocations(locations); in VisitInstanceFieldSet()
953 void InstructionCodeGeneratorX86_64::VisitInstanceFieldSet(HInstanceFieldSet* instruction) { in VisitInstanceFieldSet() argument
954 LocationSummary* locations = instruction->GetLocations(); in VisitInstanceFieldSet()
957 size_t offset = instruction->GetFieldOffset().SizeValue(); in VisitInstanceFieldSet()
958 Primitive::Type field_type = instruction->InputAt(1)->GetType(); in VisitInstanceFieldSet()
998 void LocationsBuilderX86_64::VisitInstanceFieldGet(HInstanceFieldGet* instruction) { in VisitInstanceFieldGet() argument
999 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitInstanceFieldGet()
1002 instruction->SetLocations(locations); in VisitInstanceFieldGet()
1005 void InstructionCodeGeneratorX86_64::VisitInstanceFieldGet(HInstanceFieldGet* instruction) { in VisitInstanceFieldGet() argument
1006 LocationSummary* locations = instruction->GetLocations(); in VisitInstanceFieldGet()
1009 size_t offset = instruction->GetFieldOffset().SizeValue(); in VisitInstanceFieldGet()
1011 switch (instruction->GetType()) { in VisitInstanceFieldGet()
1045 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitInstanceFieldGet()
1048 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitInstanceFieldGet()
1052 void LocationsBuilderX86_64::VisitNullCheck(HNullCheck* instruction) { in VisitNullCheck() argument
1053 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNullCheck()
1057 instruction->SetLocations(locations); in VisitNullCheck()
1060 void InstructionCodeGeneratorX86_64::VisitNullCheck(HNullCheck* instruction) { in VisitNullCheck() argument
1062 new (GetGraph()->GetArena()) NullCheckSlowPathX86_64(instruction->GetDexPc()); in VisitNullCheck()
1065 LocationSummary* locations = instruction->GetLocations(); in VisitNullCheck()
1078 void LocationsBuilderX86_64::VisitArrayGet(HArrayGet* instruction) { in VisitArrayGet() argument
1079 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArrayGet()
1081 locations->SetInAt(1, Location::RegisterOrConstant(instruction->InputAt(1))); in VisitArrayGet()
1083 instruction->SetLocations(locations); in VisitArrayGet()
1086 void InstructionCodeGeneratorX86_64::VisitArrayGet(HArrayGet* instruction) { in VisitArrayGet() argument
1087 LocationSummary* locations = instruction->GetLocations(); in VisitArrayGet()
1091 switch (instruction->GetType()) { in VisitArrayGet()
1168 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitArrayGet()
1171 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitArrayGet()
1175 void LocationsBuilderX86_64::VisitArraySet(HArraySet* instruction) { in VisitArraySet() argument
1176 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArraySet()
1177 Primitive::Type value_type = instruction->InputAt(2)->GetType(); in VisitArraySet()
1186 locations->SetInAt(1, Location::RegisterOrConstant(instruction->InputAt(1))); in VisitArraySet()
1189 instruction->SetLocations(locations); in VisitArraySet()
1192 void InstructionCodeGeneratorX86_64::VisitArraySet(HArraySet* instruction) { in VisitArraySet() argument
1193 LocationSummary* locations = instruction->GetLocations(); in VisitArraySet()
1196 Primitive::Type value_type = instruction->InputAt(2)->GetType(); in VisitArraySet()
1240 codegen_->RecordPcInfo(instruction->GetDexPc()); in VisitArraySet()
1258 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitArraySet()
1261 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitArraySet()
1265 void LocationsBuilderX86_64::VisitArrayLength(HArrayLength* instruction) { in VisitArrayLength() argument
1266 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArrayLength()
1269 instruction->SetLocations(locations); in VisitArrayLength()
1272 void InstructionCodeGeneratorX86_64::VisitArrayLength(HArrayLength* instruction) { in VisitArrayLength() argument
1273 LocationSummary* locations = instruction->GetLocations(); in VisitArrayLength()
1280 void LocationsBuilderX86_64::VisitBoundsCheck(HBoundsCheck* instruction) { in VisitBoundsCheck() argument
1281 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitBoundsCheck()
1286 instruction->SetLocations(locations); in VisitBoundsCheck()
1289 void InstructionCodeGeneratorX86_64::VisitBoundsCheck(HBoundsCheck* instruction) { in VisitBoundsCheck() argument
1290 LocationSummary* locations = instruction->GetLocations(); in VisitBoundsCheck()
1292 instruction->GetDexPc(), locations->InAt(0), locations->InAt(1)); in VisitBoundsCheck()
1325 void LocationsBuilderX86_64::VisitParallelMove(HParallelMove* instruction) { in VisitParallelMove() argument
1329 void InstructionCodeGeneratorX86_64::VisitParallelMove(HParallelMove* instruction) { in VisitParallelMove() argument
1330 codegen_->GetMoveResolver()->EmitNativeCode(instruction); in VisitParallelMove()