summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/nodes.h
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2015-06-26 16:12:18 +0100
committerRoland Levillain <rpl@google.com>2015-06-26 16:16:42 +0100
commita1935c4fa255b5c20f5e9b2abce6be2d0f7cb0a8 (patch)
tree43b2b35a3896af8b8ad4e0f72641cae80368f005 /compiler/optimizing/nodes.h
parent5597b422882a5ab9dc5eaaedd644e30bc2fd7c05 (diff)
downloadart-a1935c4fa255b5c20f5e9b2abce6be2d0f7cb0a8.tar.gz
art-a1935c4fa255b5c20f5e9b2abce6be2d0f7cb0a8.tar.bz2
art-a1935c4fa255b5c20f5e9b2abce6be2d0f7cb0a8.zip
MIPS: Initial version of optimizing compiler for MIPS64R6.
(cherry picked from commit 4dda3376b71209fae07f5c3c8ac3eb4b54207aa8) (amended for mnc-dev) Bug: 21555893 Change-Id: I874dc356eee6ab061a32f8f3df5f8ac3a4ab7dcf Signed-off-by: Alexey Frunze <Alexey.Frunze@imgtec.com> Signed-off-by: Douglas Leung <douglas.leung@imgtec.com>
Diffstat (limited to 'compiler/optimizing/nodes.h')
-rw-r--r--compiler/optimizing/nodes.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index b36d9b8d2..01ba1101f 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -2109,8 +2109,12 @@ class HCompare : public HBinaryOperation {
kLtBias, // return -1 for NaN comparisons
};
- HCompare(Primitive::Type type, HInstruction* first, HInstruction* second, Bias bias)
- : HBinaryOperation(Primitive::kPrimInt, first, second), bias_(bias) {
+ HCompare(Primitive::Type type,
+ HInstruction* first,
+ HInstruction* second,
+ Bias bias,
+ uint32_t dex_pc)
+ : HBinaryOperation(Primitive::kPrimInt, first, second), bias_(bias), dex_pc_(dex_pc) {
DCHECK_EQ(type, first->GetType());
DCHECK_EQ(type, second->GetType());
}
@@ -2135,10 +2139,13 @@ class HCompare : public HBinaryOperation {
bool IsGtBias() { return bias_ == kGtBias; }
+ uint32_t GetDexPc() const { return dex_pc_; }
+
DECLARE_INSTRUCTION(Compare);
private:
const Bias bias_;
+ const uint32_t dex_pc_;
DISALLOW_COPY_AND_ASSIGN(HCompare);
};
@@ -3862,6 +3869,8 @@ class MoveOperands : public ArenaObject<kArenaAllocMisc> {
return source_.IsInvalid();
}
+ Primitive::Type GetType() const { return type_; }
+
bool Is64BitMove() const {
return Primitive::Is64BitType(type_);
}