diff options
author | Jay Foad <jay.foad@amd.com> | 2024-10-17 16:20:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-17 16:20:43 +0100 |
commit | 85c17e40926132575d1b98ca1a36b8394fe511cd (patch) | |
tree | 58d38f4833043d35f09edfcc412b278cfd5ad56a /llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp | |
parent | 8c7f80f77505b7ff275d67a49f4f2dd07d604403 (diff) | |
download | llvm-85c17e40926132575d1b98ca1a36b8394fe511cd.zip llvm-85c17e40926132575d1b98ca1a36b8394fe511cd.tar.gz llvm-85c17e40926132575d1b98ca1a36b8394fe511cd.tar.bz2 |
[LLVM] Make more use of IRBuilder::CreateIntrinsic. NFC. (#112706)
Convert many instances of:
Fn = Intrinsic::getOrInsertDeclaration(...);
CreateCall(Fn, ...)
to the equivalent CreateIntrinsic call.
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp b/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp index db2acb9..cb4ef87 100644 --- a/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp +++ b/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp @@ -1958,10 +1958,9 @@ static Value *optimizeDoubleFP(CallInst *CI, IRBuilderBase &B, // g((double) float) -> (double) gf(float) Value *R; if (IsIntrinsic) { - Module *M = CI->getModule(); Intrinsic::ID IID = CalleeFn->getIntrinsicID(); - Function *Fn = Intrinsic::getOrInsertDeclaration(M, IID, B.getFloatTy()); - R = isBinary ? B.CreateCall(Fn, V) : B.CreateCall(Fn, V[0]); + R = isBinary ? B.CreateIntrinsic(IID, B.getFloatTy(), V) + : B.CreateIntrinsic(IID, B.getFloatTy(), V[0]); } else { AttributeList CalleeAttrs = CalleeFn->getAttributes(); R = isBinary ? emitBinaryFloatFnCall(V[0], V[1], TLI, CalleeName, B, |