| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | LowerMemIntrinsics.cpp | 870 static bool canOverlap(MemTransferBase<T> *Memcpy, ScalarEvolution *SE) { in canOverlap() argument 872 const SCEV *SrcSCEV = SE->getSCEV(Memcpy->getRawSource()); in canOverlap() 873 const SCEV *DestSCEV = SE->getSCEV(Memcpy->getRawDest()); in canOverlap() 874 if (SE->isKnownPredicateAt(CmpInst::ICMP_NE, SrcSCEV, DestSCEV, Memcpy)) in canOverlap() 880 void llvm::expandMemCpyAsLoop(MemCpyInst *Memcpy, in expandMemCpyAsLoop() argument 883 bool CanOverlap = canOverlap(Memcpy, SE); in expandMemCpyAsLoop() 884 if (ConstantInt *CI = dyn_cast<ConstantInt>(Memcpy->getLength())) { in expandMemCpyAsLoop() 886 /* InsertBefore */ Memcpy, in expandMemCpyAsLoop() 887 /* SrcAddr */ Memcpy->getRawSource(), in expandMemCpyAsLoop() 888 /* DstAddr */ Memcpy->getRawDest(), in expandMemCpyAsLoop() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | PreISelIntrinsicLowering.cpp | 316 auto *Memcpy = cast<MemCpyInst>(Inst); in expandMemIntrinsicUses() local 317 Function *ParentFunc = Memcpy->getFunction(); in expandMemIntrinsicUses() 319 if (shouldExpandMemIntrinsicWithSize(Memcpy->getLength(), TTI)) { in expandMemIntrinsicUses() 324 expandMemCpyAsLoop(Memcpy, TTI); in expandMemIntrinsicUses() 326 Memcpy->eraseFromParent(); in expandMemIntrinsicUses() 335 auto *Memcpy = cast<MemCpyInst>(Inst); in expandMemIntrinsicUses() local 336 if (isa<ConstantInt>(Memcpy->getLength())) in expandMemIntrinsicUses() 339 Function *ParentFunc = Memcpy->getFunction(); in expandMemIntrinsicUses() 341 expandMemCpyAsLoop(Memcpy, TTI); in expandMemIntrinsicUses() 343 Memcpy->eraseFromParent(); in expandMemIntrinsicUses()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
| H A D | NVPTXLowerAggrCopies.cpp | 126 if (MemCpyInst *Memcpy = dyn_cast<MemCpyInst>(MemCall)) { in runOnFunction() local 127 expandMemCpyAsLoop(Memcpy, TTI); in runOnFunction()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | RuntimeLibcalls.h | 118 if (const char *Memcpy = getLibcallName(RTLIB::MEMCPY)) 119 return Memcpy;
|
| H A D | Intrinsics.td | 1002 // Memcpy semantic that is guaranteed to be inlined.
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | LoopIdiomRecognize.h | 36 static bool Memcpy; member
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
| H A D | ExpandVariadics.cpp | 281 enum Tag { Store, Memcpy, Padding }; enumerator 293 append<Memcpy>(T, V, Bytes); in memcpy() 330 if (tag == Memcpy) in initializeStructAlloca()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LoopIdiomRecognize.cpp | 123 bool DisableLIRP::Memcpy; member in DisableLIRP 128 cl::location(DisableLIRP::Memcpy), cl::init(false), 203 Memcpy, enumerator 502 if (HasMemcpy && !DisableLIRP::Memcpy) { in isLegalStore() 533 : LegalStoreKind::Memcpy; in isLegalStore() 563 case LegalStoreKind::Memcpy: in collectStores() 789 if ((!HasMemcpy && !MCI->isForceInlined()) || DisableLIRP::Memcpy) in processLoopMemCpy()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/ |
| H A D | SystemZTargetTransformInfo.cpp | 46 if (const MemCpyInst *Memcpy = dyn_cast<MemCpyInst>(User)) { in isUsedAsMemCpySource() local 47 if (Memcpy->getOperand(1) == V && !Memcpy->isVolatile()) { in isUsedAsMemCpySource()
|
| /freebsd/contrib/llvm-project/clang/lib/AST/ByteCode/ |
| H A D | Opcodes.td | 811 def Memcpy : Opcode;
|
| H A D | Interp.h | 2036 inline bool Memcpy(InterpState &S, CodePtr OpPC) { in Memcpy() function
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Xtensa/ |
| H A D | XtensaISelLowering.cpp | 635 SDValue Memcpy = DAG.getMemcpy( in LowerCall() local 640 MemOpChains.push_back(Memcpy); in LowerCall()
|
| /freebsd/contrib/llvm-project/clang/include/clang/Basic/ |
| H A D | BuiltinsNVPTX.td | 755 // Memcpy, Memset
|