OSDN Git Service

ART: Disallow uses of uninitialized references
authorDavid Brazdil <dbrazdil@google.com>
Tue, 19 Jan 2016 14:25:29 +0000 (14:25 +0000)
committerDavid Brazdil <dbrazdil@google.com>
Mon, 1 Feb 2016 12:18:48 +0000 (12:18 +0000)
commit68b5c0b677bae53b3bae5d1890e21fae527f3df3
tree0bfdef080978ba7f5c264aa4ab269a07e9949771
parent7f1551d28b3674799a4bb2b198bf6b16f32082af
ART: Disallow uses of uninitialized references

The following instructions accepted uninitialized reference types
as their arguments:
 - instance-of
 - check-cast
 - throw
 - iput-object (stored value argument)
 - sput-object
 - invoke-* (non-this arguments)

Monitor-enter and monitor-exit are allowed.

Bug: 26594149

Change-Id: I2a4decb1fba274b8969b17bc237ac0fd19b93c80
13 files changed:
runtime/verifier/method_verifier.cc
runtime/verifier/reg_type-inl.h
runtime/verifier/register_line-inl.h
test/800-smali/expected.txt
test/800-smali/smali/b_26594149_1.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_2.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_3.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_4.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_5.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_6.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_7.smali [new file with mode: 0644]
test/800-smali/smali/b_26594149_8.smali [new file with mode: 0644]
test/800-smali/src/Main.java