Home | History | Annotate | Download | only in optimizing

Lines Matching full:primitive

40 Location Mips64ReturnLocation(Primitive::Type return_type) {
42 case Primitive::kPrimBoolean:
43 case Primitive::kPrimByte:
44 case Primitive::kPrimChar:
45 case Primitive::kPrimShort:
46 case Primitive::kPrimInt:
47 case Primitive::kPrimNot:
48 case Primitive::kPrimLong:
51 case Primitive::kPrimFloat:
52 case Primitive::kPrimDouble:
55 case Primitive::kPrimVoid:
61 Location InvokeDexCallingConventionVisitorMIPS64::GetReturnLocation(Primitive::Type type) const {
69 Location InvokeDexCallingConventionVisitorMIPS64::GetNextLocation(Primitive::Type type) {
71 if (type == Primitive::kPrimVoid) {
75 if (Primitive::IsFloatingPointType(type) &&
80 } else if (!Primitive::IsFloatingPointType(type) &&
86 next_location = Primitive::Is64BitType(type) ? Location::DoubleStackSlot(stack_offset)
91 stack_index_ += Primitive::Is64BitType(type) ? 2 : 1;
101 Location InvokeRuntimeCallingConvention::GetReturnLocation(Primitive::Type type) {
125 Primitive::kPrimInt,
128 Primitive::kPrimInt);
202 Primitive::Type type = at_->GetType();
249 Primitive::Type type = instruction_->GetType();
349 Primitive::kPrimNot,
352 Primitive::kPrimNot);
361 Primitive::Type ret_type = instruction_->GetType();
633 Primitive::Type dst_type) {
641 bool unspecified_type = (dst_type == Primitive::kPrimVoid);
652 dst_type = destination.IsRegister() ? Primitive::kPrimInt : Primitive::kPrimFloat;
658 dst_type = destination.IsRegister() ? Primitive::kPrimLong : Primitive::kPrimDouble;
661 DCHECK((destination.IsFpuRegister() && Primitive::IsFloatingPointType(dst_type)) ||
662 (destination.IsRegister() && !Primitive::IsFloatingPointType(dst_type)));
666 if (Primitive::IsFloatingPointType(dst_type)) {
672 // TODO: use load_type = kLoadUnsignedWord when type == Primitive::kPrimNot.
681 if (!Primitive::IsFloatingPointType(dst_type)) {
684 if (dst_type == Primitive::kPrimInt || dst_type == Primitive::kPrimFloat) {
686 if (Primitive::IsFloatingPointType(dst_type) && value == 0) {
693 if (Primitive::IsFloatingPointType(dst_type) && value == 0) {
699 if (dst_type == Primitive::kPrimFloat) {
701 } else if (dst_type == Primitive::kPrimDouble) {
710 if (Primitive::Is64BitType(dst_type)) {
719 if (dst_type == Primitive::kPrimFloat) {
722 DCHECK_EQ(dst_type, Primitive::kPrimDouble);
727 if (Primitive::Is64BitType(dst_type)) {
739 dst_type = destination.IsStackSlot() ? Primitive::kPrimInt : Primitive::kPrimLong;
741 dst_type = destination.IsStackSlot() ? Primitive::kPrimFloat : Primitive::kPrimDouble;
744 DCHECK((destination.IsDoubleStackSlot() == Primitive::Is64BitType(dst_type)) &&
745 (source.IsFpuRegister() == Primitive::IsFloatingPointType(dst_type)));
794 void CodeGeneratorMIPS64::SwapLocations(Location loc1, Location loc2, Primitive::Type type) {
818 if (type == Primitive::kPrimFloat) {
823 DCHECK_EQ(type, Primitive::kPrimDouble);
834 // TODO: use load_type = kLoadUnsignedWord when type == Primitive::kPrimNot.
1021 Primitive::Type type = instruction->GetResultType();
1023 case Primitive::kPrimInt:
1024 case Primitive::kPrimLong: {
1047 case Primitive::kPrimFloat:
1048 case Primitive::kPrimDouble:
1060 Primitive::Type type = instruction->GetType();
1064 case Primitive::kPrimInt:
1065 case Primitive::kPrimLong: {
1095 if (type == Primitive::kPrimInt) {
1108 if (type == Primitive::kPrimInt) {
1122 case Primitive::kPrimFloat:
1123 case Primitive::kPrimDouble: {
1128 if (type == Primitive::kPrimFloat)
1133 if (type == Primitive::kPrimFloat)
1151 Primitive::Type type = instr->GetResultType();
1153 case Primitive::kPrimInt:
1154 case Primitive::kPrimLong: {
1168 Primitive::Type type = instr->GetType();
1171 case Primitive::kPrimInt:
1172 case Primitive::kPrimLong: {
1188 (type == Primitive::kPrimInt ? kMaxIntShiftDistance : kMaxLongShiftDistance);
1194 } else if (type == Primitive::kPrimInt) {
1229 if (type == Primitive::kPrimInt) {
1279 if (Primitive::IsFloatingPointType(instruction->GetType())) {
1290 Primitive::Type type = instruction->GetType();
1293 case Primitive::kPrimBoolean: {
1307 case Primitive::kPrimByte: {
1321 case Primitive::kPrimShort: {
1336 case Primitive::kPrimChar: {
1351 case Primitive::kPrimInt:
1352 case Primitive::kPrimNot: {
1356 LoadOperandType load_type = (type == Primitive::kPrimNot) ? kLoadUnsignedWord : kLoadWord;
1369 case Primitive::kPrimLong: {
1384 case Primitive::kPrimFloat: {
1399 case Primitive::kPrimDouble: {
1414 case Primitive::kPrimVoid:
1449 if (Primitive::IsFloatingPointType(instruction->InputAt(2)->GetType())) {
1461 Primitive::Type value_type = instruction->GetComponentType();
1467 case Primitive::kPrimBoolean:
1468 case Primitive::kPrimByte: {
1482 case Primitive::kPrimShort:
1483 case Primitive::kPrimChar: {
1498 case Primitive::kPrimInt:
1499 case Primitive::kPrimNot: {
1515 DCHECK_EQ(value_type, Primitive::kPrimNot);
1519 DCHECK_EQ(value_type, Primitive::kPrimNot);
1529 case Primitive::kPrimLong: {
1544 case Primitive::kPrimFloat: {
1560 case Primitive::kPrimDouble: {
1576 case Primitive::kPrimVoid:
1582 if (value_type != Primitive::kPrimInt && value_type != Primitive::kPrimNot) {
1664 Primitive::Type in_type = compare->InputAt(0)->GetType();
1669 case Primitive::kPrimBoolean:
1670 case Primitive::kPrimByte:
1671 case Primitive::kPrimShort:
1672 case Primitive::kPrimChar:
1673 case Primitive::kPrimInt:
1674 case Primitive::kPrimLong:
1680 case Primitive::kPrimFloat:
1681 case Primitive::kPrimDouble:
1695 Primitive::Type in_type = instruction->InputAt(0)->GetType();
1701 case Primitive::kPrimBoolean:
1702 case Primitive::kPrimByte:
1703 case Primitive::kPrimShort:
1704 case Primitive::kPrimChar:
1705 case Primitive::kPrimInt:
1706 case Primitive::kPrimLong: {
1712 if (in_type == Primitive::kPrimLong) {
1734 case Primitive::kPrimFloat: {
1756 case Primitive::kPrimDouble: {
1787 case Primitive::kPrimLong:
1792 case Primitive::kPrimFloat:
1793 case Primitive::kPrimDouble:
1808 Primitive::Type type = instruction->InputAt(0)->GetType();
1818 case Primitive::kPrimLong:
1822 case Primitive::kPrimFloat:
1823 case Primitive::kPrimDouble:
1848 Primitive::Type type = instruction->GetResultType();
1863 if (type == Primitive::kPrimInt) {
1866 DCHECK_EQ(type, Primitive::kPrimLong);
1877 Primitive::Type type = instruction->GetResultType();
1890 if (type == Primitive::kPrimInt) {
1904 DCHECK_EQ(type, Primitive::kPrimLong);
1927 if (type == Primitive::kPrimInt) {
1947 DCHECK_EQ(type, Primitive::kPrimLong);
1990 Primitive::Type type = instruction->GetResultType();
1991 DCHECK(type == Primitive::kPrimInt || type == Primitive::kPrimLong) << type;
1996 (type == Primitive::kPrimLong),
2000 if (type == Primitive::kPrimInt) {
2055 Primitive::Type type = instruction->GetResultType();
2056 DCHECK(type == Primitive::kPrimInt || type == Primitive::kPrimLong) << type;
2078 if (type == Primitive::kPrimInt)
2083 if (type == Primitive::kPrimInt)
2095 case Primitive::kPrimInt:
2096 case Primitive::kPrimLong:
2102 case Primitive::kPrimFloat:
2103 case Primitive::kPrimDouble:
2115 Primitive::Type type = instruction->GetType();
2119 case Primitive::kPrimInt:
2120 case Primitive::kPrimLong:
2123 case Primitive::kPrimFloat:
2124 case Primitive::kPrimDouble: {
2128 if (type == Primitive::kPrimFloat)
2156 Primitive::Type type = instruction->GetType();
2158 if (!Primitive::IsIntegralType(type)) {
2465 Primitive::Type type,
2470 if (type == Primitive::kPrimFloat) {
2516 DCHECK_EQ(type, Primitive::kPrimDouble);
2609 Primitive::Type type = condition->InputAt(0)->GetType();
2623 case Primitive::kPrimLong:
2626 case Primitive::kPrimFloat:
2627 case Primitive::kPrimDouble:
2676 if (Primitive::IsFloatingPointType(select->GetType())) {
2717 if (Primitive::IsFloatingPointType(instruction->GetType())) {
2726 Primitive::Type type = field_info.GetFieldType();
2731 case Primitive::kPrimBoolean:
2734 case Primitive::kPrimByte:
2737 case Primitive::kPrimShort:
2740 case Primitive::kPrimChar:
2743 case Primitive::kPrimInt:
2744 case Primitive::kPrimFloat:
2747 case Primitive::kPrimLong:
2748 case Primitive::kPrimDouble:
2751 case Primitive::kPrimNot:
2754 case Primitive::kPrimVoid:
2758 if (!Primitive::IsFloatingPointType(type)) {
2777 if (Primitive::IsFloatingPointType(instruction->InputAt(1)->GetType())) {
2787 Primitive::Type type = field_info.GetFieldType();
2792 case Primitive::kPrimBoolean:
2793 case Primitive::kPrimByte:
2796 case Primitive::kPrimShort:
2797 case Primitive::kPrimChar:
2800 case Primitive::kPrimInt:
2801 case Primitive::kPrimFloat:
2802 case Primitive::kPrimNot:
2805 case Primitive::kPrimLong:
2806 case Primitive::kPrimDouble:
2809 case Primitive::kPrimVoid:
2813 if (!Primitive::IsFloatingPointType(type)) {
3323 case Primitive::kPrimInt:
3324 case Primitive::kPrimLong:
3330 case Primitive::kPrimFloat:
3331 case Primitive::kPrimDouble:
3343 Primitive::Type type = instruction->GetType();
3347 case Primitive::kPrimInt:
3348 case Primitive::kPrimLong: {
3352 if (type == Primitive::kPrimInt)
3358 case Primitive::kPrimFloat:
3359 case Primitive::kPrimDouble: {
3363 if (type == Primitive::kPrimFloat)
3378 case Primitive::kPrimInt:
3379 case Primitive::kPrimLong:
3384 case Primitive::kPrimFloat:
3385 case Primitive::kPrimDouble:
3396 Primitive::Type type = instruction->GetType();
3400 case Primitive::kPrimInt:
3401 case Primitive::kPrimLong: {
3404 if (type == Primitive::kPrimInt)
3410 case Primitive::kPrimFloat:
3411 case Primitive::kPrimDouble: {
3414 if (type == Primitive::kPrimFloat)
3430 locations->SetOut(calling_convention.GetReturnLocation(Primitive::kPrimNot));
3456 locations->SetOut(calling_convention.GetReturnLocation(Primitive::kPrimNot));
3486 Primitive::Type type = instruction->GetType();
3490 case Primitive::kPrimInt:
3491 case Primitive::kPrimLong: {
3606 Primitive::Type type = rem->GetResultType();
3608 Primitive::IsFloatingPointType(type) ? LocationSummary::kCall : LocationSummary::kNoCall;
3612 case Primitive::kPrimInt:
3613 case Primitive::kPrimLong:
3619 case Primitive::kPrimFloat:
3620 case Primitive::kPrimDouble: {
3634 Primitive::Type type = instruction->GetType();
3637 case Primitive::kPrimInt:
3638 case Primitive::kPrimLong:
3642 case Primitive::kPrimFloat:
3643 case Primitive::kPrimDouble: {
3644 int32_t entry_offset = (type == Primitive::kPrimFloat) ? QUICK_ENTRY_POINT(pFmodf)
3647 if (type == Primitive::kPrimFloat) {
3669 Primitive::Type return_type = ret->InputAt(0)->GetType();
3835 Primitive::Type input_type = conversion->GetInputType();
3836 Primitive::Type result_type = conversion->GetResultType();
3839 if ((input_type == Primitive::kPrimNot) || (input_type == Primitive::kPrimVoid) ||
3840 (result_type == Primitive::kPrimNot) || (result_type == Primitive::kPrimVoid)) {
3846 if (Primitive::IsFloatingPointType(input_type)) {
3852 if (Primitive::IsFloatingPointType(result_type)) {
3861 Primitive::Type result_type = conversion->GetResultType();
3862 Primitive::Type input_type = conversion->GetInputType();
3866 if (Primitive::IsIntegralType(result_type) && Primitive::IsIntegralType(input_type)) {
3871 case Primitive::kPrimChar:
3874 case Primitive::kPrimByte:
3875 if (input_type == Primitive::kPrimLong) {
3885 case Primitive::kPrimShort:
3886 if (input_type == Primitive::kPrimLong) {
3896 case Primitive::kPrimInt:
3897 case Primitive::kPrimLong:
3907 } else if (Primitive::IsFloatingPointType(result_type) && Primitive::IsIntegralType(input_type)) {
3910 if (input_type == Primitive::kPrimLong) {
3912 if (result_type == Primitive::kPrimFloat) {
3919 if (result_type == Primitive::kPrimFloat) {
3925 Primitive::IsIntegralType(result_type) && Primitive::IsFloatingPointType(input_type)) {
3926 CHECK(result_type == Primitive::kPrimInt || result_type == Primitive::kPrimLong);
3957 if (input_type == Primitive::kPrimFloat) {
3958 uint32_t min_val = (result_type == Primitive::kPrimLong)
3965 uint64_t min_val = (result_type == Primitive::kPrimLong)
3975 if (input_type == Primitive::kPrimFloat) {
3980 if (result_type == Primitive::kPrimLong) {
3992 if (result_type == Primitive::kPrimLong) {
3993 if (input_type == Primitive::kPrimFloat) {
4000 if (input_type == Primitive::kPrimFloat) {
4009 } else if (Primitive::IsFloatingPointType(result_type) &&
4010 Primitive::IsFloatingPointType(input_type)) {
4013 if (result_type == Primitive::kPrimFloat) {