• Home
  • Raw
  • Download

Lines Matching refs:ResourceMask

35 class ResourceMask {
37 constexpr ResourceMask(uint64_t mask1, uint64_t mask2) in ResourceMask() function
59 constexpr ResourceMask() in ResourceMask() function
64 ResourceMask(const ResourceMask& other) = default;
65 ResourceMask& operator=(const ResourceMask& other) = default;
68 bool operator==(const ResourceMask& other) {
72 static constexpr ResourceMask RawMask(uint64_t mask1, uint64_t mask2) { in RawMask()
73 return ResourceMask(mask1, mask2); in RawMask()
76 static constexpr ResourceMask Bit(size_t bit) { in Bit()
77 return ResourceMask(bit >= 64u ? 0u : UINT64_C(1) << bit, in Bit()
82 static constexpr ResourceMask TwoBits(size_t start_bit) { in TwoBits()
85 ResourceMask(start_bit >= 64u ? 0u : UINT64_C(3) << start_bit, in TwoBits()
89 static constexpr ResourceMask NoBits() { in NoBits()
90 return ResourceMask(UINT64_C(0), UINT64_C(0)); in NoBits()
93 static constexpr ResourceMask AllBits() { in AllBits()
94 return ResourceMask(~UINT64_C(0), ~UINT64_C(0)); in AllBits()
97 constexpr ResourceMask Union(const ResourceMask& other) const { in Union()
98 return ResourceMask(masks_[0] | other.masks_[0], masks_[1] | other.masks_[1]); in Union()
101 constexpr ResourceMask Intersection(const ResourceMask& other) const { in Intersection()
102 return ResourceMask(masks_[0] & other.masks_[0], masks_[1] & other.masks_[1]); in Intersection()
105 constexpr ResourceMask Without(const ResourceMask& other) const { in Without()
106 return ResourceMask(masks_[0] & ~other.masks_[0], masks_[1] & ~other.masks_[1]); in Without()
109 constexpr bool Equals(const ResourceMask& other) const { in Equals()
113 constexpr bool Intersects(const ResourceMask& other) const { in Intersects()
123 ResourceMask& SetBits(const ResourceMask& other) { in SetBits()
129 ResourceMask& ClearBits(const ResourceMask& other) { in ClearBits()
140 std::ostream& operator<<(std::ostream& os, const ResourceMask::ResourceBit& rhs);
142 inline void ResourceMask::SetBit(size_t bit) { in SetBit()
147 constexpr ResourceMask kEncodeNone = ResourceMask::NoBits();
148 constexpr ResourceMask kEncodeAll = ResourceMask::AllBits();
149 constexpr ResourceMask kEncodeHeapRef = ResourceMask::Bit(ResourceMask::kHeapRef);
150 constexpr ResourceMask kEncodeLiteral = ResourceMask::Bit(ResourceMask::kLiteral);
151 constexpr ResourceMask kEncodeDalvikReg = ResourceMask::Bit(ResourceMask::kDalvikReg);
152 constexpr ResourceMask kEncodeMem = kEncodeLiteral.Union(kEncodeDalvikReg).Union(
153 kEncodeHeapRef).Union(ResourceMask::Bit(ResourceMask::kMustNotAlias));
161 const ResourceMask* GetMask(const ResourceMask& mask);