Lines Matching defs:OpPC
107 static bool retPrimValue(InterpState &S, CodePtr OpPC, APValue &Result,
110 return RetVoid(S, OpPC, Result);
114 return Ret<X>(S, OpPC, Result);
134 static bool interp__builtin_is_constant_evaluated(InterpState &S, CodePtr OpPC,
164 static bool interp__builtin_strcmp(InterpState &S, CodePtr OpPC,
170 if (!CheckLive(S, OpPC, A, AK_Read) || !CheckLive(S, OpPC, B, AK_Read))
185 if (!CheckRange(S, OpPC, PA, AK_Read) ||
186 !CheckRange(S, OpPC, PB, AK_Read)) {
207 static bool interp__builtin_strlen(InterpState &S, CodePtr OpPC,
212 if (!CheckArray(S, OpPC, StrPtr))
215 if (!CheckLive(S, OpPC, StrPtr, AK_Read))
218 if (!CheckDummy(S, OpPC, StrPtr, AK_Read))
227 if (!CheckRange(S, OpPC, ElemPtr, AK_Read))
240 static bool interp__builtin_nan(InterpState &S, CodePtr OpPC,
245 if (!CheckLoad(S, OpPC, Arg))
257 if (!CheckLoad(S, OpPC, Elem))
301 static bool interp__builtin_inf(InterpState &S, CodePtr OpPC,
310 static bool interp__builtin_copysign(InterpState &S, CodePtr OpPC,
323 static bool interp__builtin_fmin(InterpState &S, CodePtr OpPC,
342 static bool interp__builtin_fmax(InterpState &S, CodePtr OpPC,
365 static bool interp__builtin_isnan(InterpState &S, CodePtr OpPC,
374 static bool interp__builtin_issignaling(InterpState &S, CodePtr OpPC,
384 static bool interp__builtin_isinf(InterpState &S, CodePtr OpPC,
397 static bool interp__builtin_isfinite(InterpState &S, CodePtr OpPC,
406 static bool interp__builtin_isnormal(InterpState &S, CodePtr OpPC,
415 static bool interp__builtin_issubnormal(InterpState &S, CodePtr OpPC,
425 static bool interp__builtin_iszero(InterpState &S, CodePtr OpPC,
436 static bool interp__builtin_isfpclass(InterpState &S, CodePtr OpPC,
453 static bool interp__builtin_fpclassify(InterpState &S, CodePtr OpPC,
491 static bool interp__builtin_fabs(InterpState &S, CodePtr OpPC,
500 static bool interp__builtin_popcount(InterpState &S, CodePtr OpPC,
510 static bool interp__builtin_parity(InterpState &S, CodePtr OpPC,
519 static bool interp__builtin_clrsb(InterpState &S, CodePtr OpPC,
528 static bool interp__builtin_bitreverse(InterpState &S, CodePtr OpPC,
538 static bool interp__builtin_classify_type(InterpState &S, CodePtr OpPC,
555 static bool interp__builtin_expect(InterpState &S, CodePtr OpPC,
574 static bool interp__builtin_rotate(InterpState &S, CodePtr OpPC,
597 static bool interp__builtin_ffs(InterpState &S, CodePtr OpPC,
608 static bool interp__builtin_addressof(InterpState &S, CodePtr OpPC,
627 static bool interp__builtin_move(InterpState &S, CodePtr OpPC,
638 static bool interp__builtin_eh_return_data_regno(InterpState &S, CodePtr OpPC,
652 static bool noopPointer(InterpState &S, CodePtr OpPC, const InterpFrame *Frame,
660 static bool interp__builtin_overflowop(InterpState &S, CodePtr OpPC,
767 static bool interp__builtin_carryop(InterpState &S, CodePtr OpPC,
828 static bool interp__builtin_clz(InterpState &S, CodePtr OpPC,
860 static bool interp__builtin_ctz(InterpState &S, CodePtr OpPC,
883 static bool interp__builtin_bswap(InterpState &S, CodePtr OpPC,
899 static bool interp__builtin_atomic_lock_free(InterpState &S, CodePtr OpPC,
964 static bool interp__builtin_complex(InterpState &S, CodePtr OpPC,
987 static bool interp__builtin_is_aligned_up_down(InterpState &S, CodePtr OpPC,
1094 CodePtr OpPC,
1105 InterpState &S, CodePtr OpPC, const InterpFrame *Frame,
1116 bool InterpretBuiltin(InterpState &S, CodePtr OpPC, const Function *F,
1125 if (!interp__builtin_is_constant_evaluated(S, OpPC, Frame, Call))
1132 if (!interp__builtin_strcmp(S, OpPC, Frame, Call))
1136 if (!interp__builtin_strlen(S, OpPC, Frame, Call))
1144 if (!interp__builtin_nan(S, OpPC, Frame, F, /*Signaling=*/false))
1152 if (!interp__builtin_nan(S, OpPC, Frame, F, /*Signaling=*/true))
1166 if (!interp__builtin_inf(S, OpPC, Frame, F))
1173 if (!interp__builtin_copysign(S, OpPC, Frame, F))
1182 if (!interp__builtin_fmin(S, OpPC, Frame, F))
1191 if (!interp__builtin_fmax(S, OpPC, Frame, F))
1196 if (!interp__builtin_isnan(S, OpPC, Frame, F, Call))
1200 if (!interp__builtin_issignaling(S, OpPC, Frame, F, Call))
1205 if (!interp__builtin_isinf(S, OpPC, Frame, F, /*Sign=*/false, Call))
1210 if (!interp__builtin_isinf(S, OpPC, Frame, F, /*Sign=*/true, Call))
1215 if (!interp__builtin_isfinite(S, OpPC, Frame, F, Call))
1219 if (!interp__builtin_isnormal(S, OpPC, Frame, F, Call))
1223 if (!interp__builtin_issubnormal(S, OpPC, Frame, F, Call))
1227 if (!interp__builtin_iszero(S, OpPC, Frame, F, Call))
1231 if (!interp__builtin_isfpclass(S, OpPC, Frame, F, Call))
1235 if (!interp__builtin_fpclassify(S, OpPC, Frame, F, Call))
1243 if (!interp__builtin_fabs(S, OpPC, Frame, F))
1254 if (!interp__builtin_popcount(S, OpPC, Frame, F, Call))
1261 if (!interp__builtin_parity(S, OpPC, Frame, F, Call))
1268 if (!interp__builtin_clrsb(S, OpPC, Frame, F, Call))
1276 if (!interp__builtin_bitreverse(S, OpPC, Frame, F, Call))
1281 if (!interp__builtin_classify_type(S, OpPC, Frame, F, Call))
1287 if (!interp__builtin_expect(S, OpPC, Frame, F, Call))
1300 if (!interp__builtin_rotate(S, OpPC, Frame, F, Call, /*Right=*/false))
1313 if (!interp__builtin_rotate(S, OpPC, Frame, F, Call, /*Right=*/true))
1320 if (!interp__builtin_ffs(S, OpPC, Frame, F, Call))
1326 if (!interp__builtin_addressof(S, OpPC, Frame, F, Call))
1335 if (!interp__builtin_move(S, OpPC, Frame, F, Call))
1340 if (!interp__builtin_eh_return_data_regno(S, OpPC, Frame, F, Call))
1345 if (!noopPointer(S, OpPC, Frame, F, Call))
1370 if (!interp__builtin_overflowop(S, OpPC, Frame, F, Call))
1384 if (!interp__builtin_carryop(S, OpPC, Frame, F, Call))
1396 if (!interp__builtin_clz(S, OpPC, Frame, F, Call))
1405 if (!interp__builtin_ctz(S, OpPC, Frame, F, Call))
1412 if (!interp__builtin_bswap(S, OpPC, Frame, F, Call))
1419 if (!interp__builtin_atomic_lock_free(S, OpPC, Frame, F, Call))
1424 if (!interp__builtin_complex(S, OpPC, Frame, F, Call))
1431 if (!interp__builtin_is_aligned_up_down(S, OpPC, Frame, F, Call))
1436 if (!interp__builtin_os_log_format_buffer_size(S, OpPC, Frame, F, Call))
1441 if (!interp__builtin_ptrauth_string_discriminator(S, OpPC, Frame, F, Call))
1446 S.FFDiag(S.Current->getLocation(OpPC),
1448 << S.Current->getRange(OpPC);
1453 return retPrimValue(S, OpPC, Dummy, ReturnT);
1456 bool InterpretOffsetOf(InterpState &S, CodePtr OpPC, const OffsetOfExpr *E,
1530 bool SetThreeWayComparisonField(InterpState &S, CodePtr OpPC,
1547 bool DoMemcpy(InterpState &S, CodePtr OpPC, const Pointer &Src, Pointer &Dest) {
1581 return Invalid(S, OpPC);
1589 return Invalid(S, OpPC);