15#ifndef LLVM_IR_ASSUMPTIONS_H
16#define LLVM_IR_ASSUMPTIONS_H
39 : AssumptionStr(AssumptionStr) {
43 : AssumptionStr(AssumptionStr) {
46 operator StringRef()
const {
return AssumptionStr; }
54 const KnownAssumptionString &AssumptionStr);
59 const KnownAssumptionString &AssumptionStr);
69 const DenseSet<StringRef> &Assumptions);
73 const DenseSet<StringRef> &Assumptions);
This file defines the DenseSet and SmallDenseSet classes.
StringSet - A set-like wrapper for the StringMap.
StringRef - Represent a constant reference to a string, i.e.
StringSet - A wrapper for StringMap that provides set-like functionality.
std::pair< typename Base::iterator, bool > insert(StringRef key)
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI bool addAssumptions(Function &F, const DenseSet< StringRef > &Assumptions)
Appends the set of assumptions Assumptions to \F.
LLVM_ABI StringSet & getKnownAssumptionStrings()
A set of known assumption strings that are accepted without warning and which can be recommended as t...
LLVM_ABI bool hasAssumption(const Function &F, const KnownAssumptionString &AssumptionStr)
Return true if F has the assumption AssumptionStr attached.
LLVM_ABI DenseSet< StringRef > getAssumptions(const Function &F)
Return the set of all assumptions for the function F.
constexpr StringRef AssumptionAttrKey
The key we use for assumption attributes.
Helper that allows to insert a new assumption string in the known assumption set by creating a (stati...
KnownAssumptionString(StringRef AssumptionStr)
KnownAssumptionString(const char *AssumptionStr)