forked from OSchip/llvm-project
Add a context so that once we uniquify strings we can access them easily.
llvm-svn: 170615
This commit is contained in:
parent
567fcd7da2
commit
6ad6c3b1c2
|
@ -382,7 +382,7 @@ AttributeSet AttributeSet::get(LLVMContext &C,
|
|||
// If we didn't find any existing attributes of the same shape then
|
||||
// create a new one and insert it.
|
||||
if (!PA) {
|
||||
PA = new AttributeSetImpl(Attrs);
|
||||
PA = new AttributeSetImpl(C, Attrs);
|
||||
pImpl->AttrsLists.InsertNode(PA, InsertPoint);
|
||||
}
|
||||
|
||||
|
|
|
@ -20,6 +20,8 @@
|
|||
|
||||
namespace llvm {
|
||||
|
||||
class LLVMContext;
|
||||
|
||||
class AttributesImpl : public FoldingSetNode {
|
||||
uint64_t Bits; // FIXME: We will be expanding this.
|
||||
public:
|
||||
|
@ -50,10 +52,11 @@ class AttributeSetImpl : public FoldingSetNode {
|
|||
void operator=(const AttributeSetImpl &) LLVM_DELETED_FUNCTION;
|
||||
AttributeSetImpl(const AttributeSetImpl &) LLVM_DELETED_FUNCTION;
|
||||
public:
|
||||
LLVMContext &Context;
|
||||
SmallVector<AttributeWithIndex, 4> Attrs;
|
||||
|
||||
AttributeSetImpl(ArrayRef<AttributeWithIndex> attrs)
|
||||
: Attrs(attrs.begin(), attrs.end()) {}
|
||||
AttributeSetImpl(LLVMContext &C, ArrayRef<AttributeWithIndex> attrs)
|
||||
: Context(C), Attrs(attrs.begin(), attrs.end()) {}
|
||||
|
||||
void Profile(FoldingSetNodeID &ID) const {
|
||||
Profile(ID, Attrs);
|
||||
|
|
Loading…
Reference in New Issue