summaryrefslogtreecommitdiff
path: root/compiler/optimizing/nodes.h
diff options
context:
space:
mode:
author Artem Serov <artem.serov@linaro.org> 2017-12-15 13:43:20 +0000
committer Artem Serov <artem.serov@linaro.org> 2018-05-24 18:13:31 +0100
commitca210e34eac5b262a85c05e8815ab266f7f983d2 (patch)
treeb4bcbb77cc00c62b62b4c84541c40daadb89f3fe /compiler/optimizing/nodes.h
parente46752658eaf41c0cc818c51a3e1cd95876bac93 (diff)
ART: SBC: Support single exit loops with live_outs.
Support copying subgraphs with a single exit and live-outs - values which are defined inside the subgraph and have uses outside. Test: test-art-target, test-art-host. Test: 530-checker-peel-unroll. Change-Id: Id06a6f08d14c6e86f6437d662e24489f955e9edf
Diffstat (limited to 'compiler/optimizing/nodes.h')
-rw-r--r--compiler/optimizing/nodes.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index 09d9c57a33..3fd5b6b02d 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -1909,6 +1909,11 @@ class HEnvironment : public ArenaObject<kArenaAllocEnvironment> {
void RemoveAsUserOfInput(size_t index) const;
+ // Replaces the input at the position 'index' with the replacement; the replacement and old
+ // input instructions' env_uses_ lists are adjusted. The function works similar to
+ // HInstruction::ReplaceInput.
+ void ReplaceInput(HInstruction* replacement, size_t index);
+
size_t Size() const { return vregs_.size(); }
HEnvironment* GetParent() const { return parent_; }