summaryrefslogtreecommitdiff
path: root/compiler/optimizing/nodes.h
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2015-03-26 10:45:51 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2015-03-26 10:45:52 +0000
commitc8924c6ea9e83ba3832dd5551df38ab06f4aaca9 (patch)
tree94d7d6016c5a58d6c5f31d8350330c8025baa014 /compiler/optimizing/nodes.h
parent9ed05c4cf76aaeee48a1eb5bbae659b0acbabe67 (diff)
parent790412959a6413a585f45fc5f77fe7106311a00c (diff)
Merge "Use the original invoke type when inlining."
Diffstat (limited to 'compiler/optimizing/nodes.h')
-rw-r--r--compiler/optimizing/nodes.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index 08b16d99b6..9c751fb9c5 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -2131,8 +2131,10 @@ class HInvokeStaticOrDirect : public HInvoke {
uint32_t dex_pc,
uint32_t dex_method_index,
bool is_recursive,
+ InvokeType original_invoke_type,
InvokeType invoke_type)
: HInvoke(arena, number_of_arguments, return_type, dex_pc, dex_method_index),
+ original_invoke_type_(original_invoke_type),
invoke_type_(invoke_type),
is_recursive_(is_recursive) {}
@@ -2142,6 +2144,7 @@ class HInvokeStaticOrDirect : public HInvoke {
return false;
}
+ InvokeType GetOriginalInvokeType() const { return original_invoke_type_; }
InvokeType GetInvokeType() const { return invoke_type_; }
bool IsRecursive() const { return is_recursive_; }
bool NeedsDexCache() const OVERRIDE { return !IsRecursive(); }
@@ -2149,6 +2152,7 @@ class HInvokeStaticOrDirect : public HInvoke {
DECLARE_INSTRUCTION(InvokeStaticOrDirect);
private:
+ const InvokeType original_invoke_type_;
const InvokeType invoke_type_;
const bool is_recursive_;