diff options
author | Aart Bik <ajcbik@google.com> | 2016-06-07 13:49:12 -0700 |
---|---|---|
committer | Aart Bik <ajcbik@google.com> | 2016-06-08 09:41:33 -0700 |
commit | 296fbb4c3a629ec99149e512ddb66d7b4d7854fe (patch) | |
tree | efdf1998a9bd2aa55a0962d01300412c366c0042 /compiler/optimizing/instruction_builder.h | |
parent | 88b970c24162c0b223f724e664a6da08ae6bfc5c (diff) |
Do not place null check on unresolved method calls.
Rationale:
These invokes drop through the runtime anyway where various
checks are done, including null check. A few of these
checks need to occur before the null check.
With fail-before/pass-after smali test.
BUG=29068831
Change-Id: I260715e742365433a323598d97f7fdab321e8512
Diffstat (limited to 'compiler/optimizing/instruction_builder.h')
-rw-r--r-- | compiler/optimizing/instruction_builder.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/optimizing/instruction_builder.h b/compiler/optimizing/instruction_builder.h index 0e3e5a7c34..9cfc065da6 100644 --- a/compiler/optimizing/instruction_builder.h +++ b/compiler/optimizing/instruction_builder.h @@ -237,7 +237,8 @@ class HInstructionBuilder : public ValueObject { uint32_t register_index, bool is_range, const char* descriptor, - HClinitCheck* clinit_check); + HClinitCheck* clinit_check, + bool is_unresolved); bool HandleStringInit(HInvoke* invoke, uint32_t number_of_vreg_arguments, |