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()
787 HConstant* instruction = locations->InAt(1).GetConstant(); in VisitAdd() local
788 Immediate imm(instruction->AsIntConstant()->GetValue()); in VisitAdd()
853 HConstant* instruction = locations->InAt(1).GetConstant(); in VisitSub() local
854 Immediate imm(instruction->AsIntConstant()->GetValue()); in VisitSub()
880 void LocationsBuilderX86_64::VisitNewInstance(HNewInstance* instruction) { in VisitNewInstance() argument
882 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNewInstance()
884 instruction->SetLocations(locations); in VisitNewInstance()
887 void InstructionCodeGeneratorX86_64::VisitNewInstance(HNewInstance* instruction) { in VisitNewInstance() argument
890 __ movq(CpuRegister(calling_convention.GetRegisterAt(0)), Immediate(instruction->GetTypeIndex())); in VisitNewInstance()
896 codegen_->RecordPcInfo(instruction->GetDexPc()); in VisitNewInstance()
899 void LocationsBuilderX86_64::VisitParameterValue(HParameterValue* instruction) { in VisitParameterValue() argument
900 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitParameterValue()
901 Location location = parameter_visitor_.GetNextLocation(instruction->GetType()); in VisitParameterValue()
908 instruction->SetLocations(locations); in VisitParameterValue()
911 void InstructionCodeGeneratorX86_64::VisitParameterValue(HParameterValue* instruction) { in VisitParameterValue() argument
915 void LocationsBuilderX86_64::VisitNot(HNot* instruction) { in VisitNot() argument
916 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNot()
919 instruction->SetLocations(locations); in VisitNot()
922 void InstructionCodeGeneratorX86_64::VisitNot(HNot* instruction) { in VisitNot() argument
923 LocationSummary* locations = instruction->GetLocations(); in VisitNot()
929 void LocationsBuilderX86_64::VisitPhi(HPhi* instruction) { in VisitPhi() argument
930 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitPhi()
931 for (size_t i = 0, e = instruction->InputCount(); i < e; ++i) { in VisitPhi()
935 instruction->SetLocations(locations); in VisitPhi()
938 void InstructionCodeGeneratorX86_64::VisitPhi(HPhi* instruction) { in VisitPhi() argument
942 void LocationsBuilderX86_64::VisitInstanceFieldSet(HInstanceFieldSet* instruction) { in VisitInstanceFieldSet() argument
943 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitInstanceFieldSet()
947 if (instruction->InputAt(1)->GetType() == Primitive::kPrimNot) { in VisitInstanceFieldSet()
951 instruction->SetLocations(locations); in VisitInstanceFieldSet()
954 void InstructionCodeGeneratorX86_64::VisitInstanceFieldSet(HInstanceFieldSet* instruction) { in VisitInstanceFieldSet() argument
955 LocationSummary* locations = instruction->GetLocations(); in VisitInstanceFieldSet()
958 size_t offset = instruction->GetFieldOffset().SizeValue(); in VisitInstanceFieldSet()
959 Primitive::Type field_type = instruction->InputAt(1)->GetType(); in VisitInstanceFieldSet()
999 void LocationsBuilderX86_64::VisitInstanceFieldGet(HInstanceFieldGet* instruction) { in VisitInstanceFieldGet() argument
1000 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitInstanceFieldGet()
1003 instruction->SetLocations(locations); in VisitInstanceFieldGet()
1006 void InstructionCodeGeneratorX86_64::VisitInstanceFieldGet(HInstanceFieldGet* instruction) { in VisitInstanceFieldGet() argument
1007 LocationSummary* locations = instruction->GetLocations(); in VisitInstanceFieldGet()
1010 size_t offset = instruction->GetFieldOffset().SizeValue(); in VisitInstanceFieldGet()
1012 switch (instruction->GetType()) { in VisitInstanceFieldGet()
1046 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitInstanceFieldGet()
1049 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitInstanceFieldGet()
1053 void LocationsBuilderX86_64::VisitNullCheck(HNullCheck* instruction) { in VisitNullCheck() argument
1054 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitNullCheck()
1058 instruction->SetLocations(locations); in VisitNullCheck()
1061 void InstructionCodeGeneratorX86_64::VisitNullCheck(HNullCheck* instruction) { in VisitNullCheck() argument
1063 new (GetGraph()->GetArena()) NullCheckSlowPathX86_64(instruction->GetDexPc()); in VisitNullCheck()
1066 LocationSummary* locations = instruction->GetLocations(); in VisitNullCheck()
1079 void LocationsBuilderX86_64::VisitArrayGet(HArrayGet* instruction) { in VisitArrayGet() argument
1080 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArrayGet()
1082 locations->SetInAt(1, Location::RegisterOrConstant(instruction->InputAt(1))); in VisitArrayGet()
1084 instruction->SetLocations(locations); in VisitArrayGet()
1087 void InstructionCodeGeneratorX86_64::VisitArrayGet(HArrayGet* instruction) { in VisitArrayGet() argument
1088 LocationSummary* locations = instruction->GetLocations(); in VisitArrayGet()
1092 switch (instruction->GetType()) { in VisitArrayGet()
1169 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitArrayGet()
1172 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitArrayGet()
1176 void LocationsBuilderX86_64::VisitArraySet(HArraySet* instruction) { in VisitArraySet() argument
1177 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArraySet()
1178 Primitive::Type value_type = instruction->InputAt(2)->GetType(); in VisitArraySet()
1187 locations->SetInAt(1, Location::RegisterOrConstant(instruction->InputAt(1))); in VisitArraySet()
1190 instruction->SetLocations(locations); in VisitArraySet()
1193 void InstructionCodeGeneratorX86_64::VisitArraySet(HArraySet* instruction) { in VisitArraySet() argument
1194 LocationSummary* locations = instruction->GetLocations(); in VisitArraySet()
1197 Primitive::Type value_type = instruction->InputAt(2)->GetType(); in VisitArraySet()
1241 codegen_->RecordPcInfo(instruction->GetDexPc()); in VisitArraySet()
1259 LOG(FATAL) << "Unimplemented register type " << instruction->GetType(); in VisitArraySet()
1262 LOG(FATAL) << "Unreachable type " << instruction->GetType(); in VisitArraySet()
1266 void LocationsBuilderX86_64::VisitArrayLength(HArrayLength* instruction) { in VisitArrayLength() argument
1267 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitArrayLength()
1270 instruction->SetLocations(locations); in VisitArrayLength()
1273 void InstructionCodeGeneratorX86_64::VisitArrayLength(HArrayLength* instruction) { in VisitArrayLength() argument
1274 LocationSummary* locations = instruction->GetLocations(); in VisitArrayLength()
1281 void LocationsBuilderX86_64::VisitBoundsCheck(HBoundsCheck* instruction) { in VisitBoundsCheck() argument
1282 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instruction); in VisitBoundsCheck()
1287 instruction->SetLocations(locations); in VisitBoundsCheck()
1290 void InstructionCodeGeneratorX86_64::VisitBoundsCheck(HBoundsCheck* instruction) { in VisitBoundsCheck() argument
1291 LocationSummary* locations = instruction->GetLocations(); in VisitBoundsCheck()
1293 instruction->GetDexPc(), locations->InAt(0), locations->InAt(1)); in VisitBoundsCheck()
1326 void LocationsBuilderX86_64::VisitParallelMove(HParallelMove* instruction) { in VisitParallelMove() argument
1330 void InstructionCodeGeneratorX86_64::VisitParallelMove(HParallelMove* instruction) { in VisitParallelMove() argument
1331 codegen_->GetMoveResolver()->EmitNativeCode(instruction); in VisitParallelMove()