diff options
| author | Marco Nelissen <marcone@google.com> | 2009-06-19 12:44:08 -0700 |
|---|---|---|
| committer | Marco Nelissen <marcone@google.com> | 2009-06-19 12:44:08 -0700 |
| commit | 43c5658262370beac0b13286d6d7d1b330113e62 (patch) | |
| tree | 0c333cf95b7e02c41e1bc45b4819daeb111c2cf1 /dx | |
| parent | 47309850f9ad8f1ba446772b6f2a40d0e3499fc1 (diff) | |
| download | android_dalvik-43c5658262370beac0b13286d6d7d1b330113e62.tar.gz android_dalvik-43c5658262370beac0b13286d6d7d1b330113e62.tar.bz2 android_dalvik-43c5658262370beac0b13286d6d7d1b330113e62.zip | |
Replace an iterator with a traditional for loop, to reduce object allocations and memory usage.
Diffstat (limited to 'dx')
| -rw-r--r-- | dx/src/com/android/dx/ssa/SsaBasicBlock.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/dx/src/com/android/dx/ssa/SsaBasicBlock.java b/dx/src/com/android/dx/ssa/SsaBasicBlock.java index 378780d03..ab0e12258 100644 --- a/dx/src/com/android/dx/ssa/SsaBasicBlock.java +++ b/dx/src/com/android/dx/ssa/SsaBasicBlock.java @@ -950,8 +950,11 @@ public final class SsaBasicBlock { * @param visitor {@code non-null;} callback interface */ public void forEachInsn(SsaInsn.Visitor visitor) { - for (SsaInsn insn : insns) { - insn.accept(visitor); + // This gets called a LOT, and not using an iterator + // saves a lot of allocations and reduces memory usage + int len = insns.size(); + for (int i = 0; i < len; i++) { + insns.get(i).accept(visitor); } } |
