summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/builder.h
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2014-09-10 10:23:58 +0100
committerNicolas Geoffray <ngeoffray@google.com>2014-09-15 12:43:06 +0100
commit6fbce029fba3ed5da6c36017754ed408e6bcb632 (patch)
tree71debbb7c475be1508e14a7986ed69e75e5b0e4c /compiler/optimizing/builder.h
parent8accb5ac557598fd40b80214bf87517bc4b7bc41 (diff)
downloadart-6fbce029fba3ed5da6c36017754ed408e6bcb632.tar.gz
art-6fbce029fba3ed5da6c36017754ed408e6bcb632.tar.bz2
art-6fbce029fba3ed5da6c36017754ed408e6bcb632.zip
Implement suspend checks in new compiler.
For simplicity, they are currently placed on all (dex-level) back edges, and at method entry. Change-Id: I6e833e244d559dd788c69727e22fe40aff5b3435
Diffstat (limited to 'compiler/optimizing/builder.h')
-rw-r--r--compiler/optimizing/builder.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/optimizing/builder.h b/compiler/optimizing/builder.h
index 170c42761..e143786be 100644
--- a/compiler/optimizing/builder.h
+++ b/compiler/optimizing/builder.h
@@ -54,7 +54,7 @@ class HGraphBuilder : public ValueObject {
// Analyzes the dex instruction and adds HInstruction to the graph
// to execute that instruction. Returns whether the instruction can
// be handled.
- bool AnalyzeDexInstruction(const Instruction& instruction, int32_t dex_offset);
+ bool AnalyzeDexInstruction(const Instruction& instruction, uint32_t dex_offset);
// Finds all instructions that start a new block, and populates branch_targets_ with
// the newly created blocks.
@@ -70,6 +70,7 @@ class HGraphBuilder : public ValueObject {
HLocal* GetLocalAt(int register_index) const;
void UpdateLocal(int register_index, HInstruction* instruction) const;
HInstruction* LoadLocal(int register_index, Primitive::Type type) const;
+ void PotentiallyAddSuspendCheck(int32_t target_offset, uint32_t dex_offset);
// Temporarily returns whether the compiler supports the parameters
// of the method.