summaryrefslogtreecommitdiff
path: root/compiler/optimizing
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2015-09-17 15:39:16 +0100
committer Vladimir Marko <vmarko@google.com> 2015-09-17 15:45:39 +0100
commit76c92ac73eeda2582caee39dd427ca035caf172b (patch)
tree7d5baae363d7c380476ce8842ad1f43b59d48af5 /compiler/optimizing
parenta201d5eeb0903408df925a1ed1686a55238a274c (diff)
Optimizing: Allow storing value objects in containers.
Change-Id: Ic9c6b62e36706e571fd71c18d24d8e76ae2d5c7b
Diffstat (limited to 'compiler/optimizing')
-rw-r--r--compiler/optimizing/locations.h4
-rw-r--r--compiler/optimizing/nodes.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/compiler/optimizing/locations.h b/compiler/optimizing/locations.h
index cc3b35b467..2162ab928b 100644
--- a/compiler/optimizing/locations.h
+++ b/compiler/optimizing/locations.h
@@ -35,7 +35,7 @@ std::ostream& operator<<(std::ostream& os, const Location& location);
* A Location is an abstraction over the potential location
* of an instruction. It could be in register or stack.
*/
-class Location {
+class Location : public ValueObject {
public:
enum OutputOverlap {
kOutputOverlap,
@@ -69,7 +69,7 @@ class Location {
kUnallocated = 10,
};
- Location() : value_(kInvalid) {
+ Location() : ValueObject(), value_(kInvalid) {
// Verify that non-constant location kinds do not interfere with kConstant.
static_assert((kInvalid & kLocationConstantMask) != kConstant, "TagError");
static_assert((kUnallocated & kLocationConstantMask) != kConstant, "TagError");
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index 33c0d88f3d..8acde40e74 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -1243,7 +1243,7 @@ class HUseIterator : public ValueObject {
// instructions they use and pointers to the corresponding HUseListNodes kept
// by the used instructions.
template <typename T>
-class HUserRecord {
+class HUserRecord : public ValueObject {
public:
HUserRecord() : instruction_(nullptr), use_node_(nullptr) {}
explicit HUserRecord(HInstruction* instruction) : instruction_(instruction), use_node_(nullptr) {}