Lines Matching refs:Intrinsic
30 static bool UpgradeSSE41Function(Function* F, Intrinsic::ID IID,
40 NewFn = Intrinsic::getDeclaration(F->getParent(), IID);
61 // Can't use Intrinsic::getDeclaration here as it adds a ".i1" to
70 NewFn = Intrinsic::getDeclaration(F->getParent(), Intrinsic::ctpop,
79 NewFn = Intrinsic::getDeclaration(F->getParent(), Intrinsic::ctlz,
85 NewFn = Intrinsic::getDeclaration(F->getParent(), Intrinsic::cttz,
107 return UpgradeSSE41Function(F, Intrinsic::x86_sse41_ptestc, NewFn);
109 return UpgradeSSE41Function(F, Intrinsic::x86_sse41_ptestz, NewFn);
111 return UpgradeSSE41Function(F, Intrinsic::x86_sse41_ptestnzc, NewFn);
116 NewFn = Intrinsic::getDeclaration(F->getParent(),
117 Intrinsic::x86_xop_vfrcz_ss);
122 NewFn = Intrinsic::getDeclaration(F->getParent(),
123 Intrinsic::x86_xop_vfrcz_sd);
137 // to both detect an intrinsic which needs upgrading, and to provide the
138 // upgraded form of the intrinsic. We should perhaps have two separate
147 // Upgrade intrinsic attributes. This does not change the function.
151 F->setAttributes(Intrinsic::getAttributes(F->getContext(),
152 (Intrinsic::ID)id));
161 // UpgradeIntrinsicCall - Upgrade a call to an old intrinsic to be a call the
162 // upgraded intrinsic. All argument and return casting must be provided in
170 assert(F && "Intrinsic call is not direct?");
212 // Remove intrinsic.
216 Intrinsic::ID intID;
218 intID = Intrinsic::x86_xop_vpcomub;
220 intID = Intrinsic::x86_xop_vpcomuw;
222 intID = Intrinsic::x86_xop_vpcomud;
224 intID = Intrinsic::x86_xop_vpcomuq;
226 intID = Intrinsic::x86_xop_vpcomb;
228 intID = Intrinsic::x86_xop_vpcomw;
230 intID = Intrinsic::x86_xop_vpcomd;
232 intID = Intrinsic::x86_xop_vpcomq;
257 Function *VPCOM = Intrinsic::getDeclaration(F->getParent(), intID);
311 case Intrinsic::ctlz:
312 case Intrinsic::cttz:
320 case Intrinsic::arm_neon_vclz: {
328 case Intrinsic::ctpop: {
334 case Intrinsic::x86_xop_vfrcz_ss:
335 case Intrinsic::x86_xop_vfrcz_sd:
341 case Intrinsic::x86_sse41_ptestc:
342 case Intrinsic::x86_sse41_ptestz:
343 case Intrinsic::x86_sse41_ptestnzc: {
352 // Old intrinsic, add bitcasts
376 assert(F && "Illegal attempt to upgrade a non-existent intrinsic.");