mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
move some code out of line, rearrange a bit.
llvm-svn: 45519
This commit is contained in:
parent
8634e197c3
commit
e14d4d026e
@ -122,14 +122,12 @@ class ParamAttrsList : public FoldingSetNode {
|
||||
// ParamAttrsList is uniqued, these should not be publicly available
|
||||
void operator=(const ParamAttrsList &); // Do not implement
|
||||
ParamAttrsList(const ParamAttrsList &); // Do not implement
|
||||
ParamAttrsList(); // Do not implement
|
||||
~ParamAttrsList(); // Private implementation
|
||||
|
||||
/// Only the \p get method can invoke this when it wants to create a
|
||||
/// new instance.
|
||||
/// @brief Construct an ParamAttrsList from a ParamAttrsVector
|
||||
explicit ParamAttrsList(const ParamAttrsVector &attrVec)
|
||||
: attrs(attrVec), refCount(0) {}
|
||||
explicit ParamAttrsList(const ParamAttrsVector &attrVec);
|
||||
|
||||
public:
|
||||
/// This method ensures the uniqueness of ParamAttrsList instances. The
|
||||
|
@ -15,6 +15,16 @@
|
||||
#include "llvm/Support/ManagedStatic.h"
|
||||
using namespace llvm;
|
||||
|
||||
static ManagedStatic<FoldingSet<ParamAttrsList> > ParamAttrsLists;
|
||||
|
||||
ParamAttrsList::ParamAttrsList(const ParamAttrsVector &attrVec)
|
||||
: attrs(attrVec), refCount(0) {
|
||||
}
|
||||
|
||||
ParamAttrsList::~ParamAttrsList() {
|
||||
ParamAttrsLists->RemoveNode(this);
|
||||
}
|
||||
|
||||
uint16_t
|
||||
ParamAttrsList::getParamAttrs(uint16_t Index) const {
|
||||
unsigned limit = attrs.size();
|
||||
@ -101,8 +111,6 @@ void ParamAttrsList::Profile(FoldingSetNodeID &ID) const {
|
||||
ID.AddInteger(unsigned(attrs[i].attrs) << 16 | unsigned(attrs[i].index));
|
||||
}
|
||||
|
||||
static ManagedStatic<FoldingSet<ParamAttrsList> > ParamAttrsLists;
|
||||
|
||||
const ParamAttrsList *
|
||||
ParamAttrsList::get(const ParamAttrsVector &attrVec) {
|
||||
// If there are no attributes then return a null ParamAttrsList pointer.
|
||||
@ -220,7 +228,3 @@ ParamAttrsList::excludeAttrs(const ParamAttrsList *PAL,
|
||||
return getModified(PAL, modVec);
|
||||
}
|
||||
|
||||
ParamAttrsList::~ParamAttrsList() {
|
||||
ParamAttrsLists->RemoveNode(this);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user