summaryrefslogtreecommitdiffstats
path: root/docs
Commit message (Collapse)AuthorAgeFilesLines
* Remove references to the simulator.Elliott Hughes2014-08-181-121/+0
| | | | | Bug: 13469670 Change-Id: Ic1835394e3b09f557813f46220dad36d86aad26f
* Remove misleading and outdated documentation.Elliott Hughes2012-01-051-165/+0
| | | | Change-Id: Id118f2fc173fc37225a1fb36e8182f54030b1f5f
* Remove documentation that's now in docs/source.android.com.Elliott Hughes2012-01-056-5742/+0
| | | | Change-Id: If6ea32e923a8c7fe99824760d9a09e7eee1ff71b
* Remove unsupported experimental opcodes.Elliott Hughes2012-01-052-220/+2
| | | | | | | External developers were starting to try to get themselves into trouble with this stuff... Change-Id: I2b03bfeaa8c98b6a994bc7924fc8dcf4e4d4f6cb
* Fix document formatting error (html tags)Logan Chien2011-09-051-3/+3
| | | | Change-Id: I57d10b69f400ce3ffda1a26dc632a4122a4f3d70
* Rename register to conform to instruction formatLogan Chien2011-09-011-42/+54
| | | | | | | | | For instruction format 35c, 41c, 52c, and 5rc, the register name was different from the Dalvik Instruction Format document, and InstrUtils.cpp of libdex. This commit updates the name, so that they will look consistent. Change-Id: I857b1f9c1ac7178dc147d0019df589c9c6d102e1
* am 80aedd4d: The jni-tips documentation has moved to frameworks/base.Elliott Hughes2011-04-142-773/+0
|\ | | | | | | | | * commit '80aedd4dfc1252cb214fdff5baeb55166e3bf021': The jni-tips documentation has moved to frameworks/base.
| * The jni-tips documentation has moved to frameworks/base.Elliott Hughes2011-04-142-773/+0
| | | | | | | | Change-Id: I77fbc3ed593c51f61de9590beaadaa52f08387f8
* | Fix some stale docs references.Dan Bornstein2011-04-051-2/+2
|/ | | | Change-Id: I3b58dfd05a63671cf315698247d88e67528e118d
* am 4624f350: am 17aff091: am b1101e84: am 486ac3c0: Removing inaccurate and ↵Dan Bornstein2011-03-2347-4701/+0
|\ | | | | | | | | | | | | unmaintained docs. * commit '4624f350313daaae52068c5d1d12b88859d43e54': Removing inaccurate and unmaintained docs.
| * am 486ac3c0: Removing inaccurate and unmaintained docs.Dan Bornstein2011-03-2347-4701/+0
| |\ | | | | | | | | | | | | * commit '486ac3c0a90b05be5af4b82801ef325e83241057': Removing inaccurate and unmaintained docs.
| | * Removing inaccurate and unmaintained docs.Dan Bornstein2011-03-2347-4701/+0
| | | | | | | | | | | | Change-Id: Ifef37063e844e4eb9ccc8111a1f1263fe26bd517
* | | Perform a bit of spec hygiene.Dan Bornstein2011-02-171-18/+22
| | | | | | | | | | | | Change-Id: Iabb7fa8ff20155a018d40bd2e23b21f19d14de1e
* | | resolved conflicts for merge of 6e2af6d2 to dalvik-devAndy McFadden2011-02-141-2/+5
|\| | | | | | | | | | | Change-Id: Ib5ec0912c0c5d7041b794351fcca10c41c4294ec
| * | Fix "all stubs" interpreterAndy McFadden2011-02-141-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "all stubs" interpreter is the recommended starting point for anyone creating a "fast" interpreter on a new CPU. This cleans up some minor bit rot in the code and documentation. Bug 3452689 Change-Id: I6bc3b0b5da11955d842d5fc5f16cb1a2209d4a89
* | | resolved conflicts for merge of d6e32b81 to dalvik-devAndy McFadden2011-02-041-2/+17
|\| | | | | | | | | | | Change-Id: Ib038cc0e68651c63dbcf9a0df2a5607ab2c2d6c7
| * | Ensure word atomicity in System.arraycopyAndy McFadden2011-02-041-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VM needs to ensure that updates to 16-bit and 32-bit fields and array elements happen atomically. System.arraycopy was calling memmmove(), which in bionic happens to copy a byte at a time. The new plan is to have bionic provide a platform-optimized memmove variant that makes guarantees about word sizes. If it is not present (either because it hasn't been written for the current platform, or we're not linking against bionic), we will use a trivial copy loop. We assume that the memmove-by-word implementation does whatever it needs to for best performance. For example, if the function determines that memcpy() is word-safe and will be faster, it can call that. The VM no longer makes assumptions about the internal workings of libc functions. I also rearranged the code to avoid making indirect calls, reading function addresses from memory, and using integer multiplication instructions when a simple shift will do. (gcc now generates the whole thing as one function.) Also, added some primitive array copy tests to 011-array-copy. Bug 3398352 Change-Id: I4677ee1c87998697a93e61f39a48b3f391e8e11b
* | | am d9c39e0f: Update doc with actual version number.Andy McFadden2011-02-011-1/+1
|\| | | | | | | | | | | | | | * commit 'd9c39e0f0177e9d271735766501524196fd14b08': Update doc with actual version number.
| * | Update doc with actual version number.Andy McFadden2011-02-011-1/+1
| |/ | | | | | | | | | | Honeycomb is 3.0. Change-Id: Ic7f15a9e2345344acdc787db153f8b8c559fe15f
* | Remove the unused monitor tracking and deadlock prediction code.Carl Shapiro2011-02-011-35/+0
| | | | | | | | | | | | | | This feature has been in the code base for several releases but has never been enabled. Change-Id: Ia770b03ebc90a3dc7851c0cd8ef301f9762f50db
* | Move dx.dex.code.DalvOps -> dx.io.Opcodes.Dan Bornstein2011-01-301-10/+11
| | | | | | | | | | | | | | | | | | This breaks a nascent circular dependency, keeping dx.io the lower layer. Bonus: While I was in the territory, I clarified the data payload opcodes, including adding explicit constants for them. Change-Id: I8655064ebc3b5713cbb4a6c83bcc90984393701f
* | Basic facility to read/write bytecode.Dan Bornstein2011-01-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These classes are meant for reading and writing bytecode at the lowest possible level, in particular without layering any interpretation of the instructions beyond understanding the instruction formats. (For example, constant indices remain numbers and aren't tied to objects representing constants.) This patch represents a work-in-progress that compiles but is as yet not hooked up to anything else. Hooking it all up will happen in one or more follow-on patches. Change-Id: Ifd3b3ff0925dc9dc3d82e507dc1be83cb560031d
* | New jumbo verification error opcode.Dan Bornstein2010-12-101-6/+3
| | | | | | | | | | | | I'll regenerate the vm code for this in a follow-up change. Change-Id: I59a0a91d39fd539f1b3a25f1f2889618fa484b96
* | New instruction format for verification errors.Dan Bornstein2010-12-101-7/+18
|/ | | | Change-Id: I99e6828487dcc7f6277bb710e4279ce0aa8c7563
* Clarify the spec slightly.Dan Bornstein2010-12-011-2/+4
| | | | | | And, importantly, fix a lingering naming issue. Change-Id: I2b0d2008aae32679430910dfe5fa58a86f0a59df
* Add a link to the dex-format doc.Dan Bornstein2010-11-301-0/+4
| | | | | | | For ease of clicking around when browsing and easier discoverability in general. Change-Id: Ia50507df454dd65526e99ef14194c310bb11edb1
* Bring 00x and 20bc into the fold.Dan Bornstein2010-11-301-2/+19
| | | | Change-Id: I12fde7eb665c9f3b75684018457f9464b0990156
* Verifier doc addendum.Andy McFadden2010-11-291-3/+8
| | | | | | Added note about hand-over-hand locking. Change-Id: I9912e87f2585c3d225b93e037c04f9bf7e2cff14
* Check monitors during bytecode verificationAndy McFadden2010-11-231-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | This adds tracking of monitor-enter and monitor-exit instructions to the bytecode verifier. The idea is to guarantee that all lock operations in a method are paired with unlock operations, whether the method completes normally or abnormally. Because of an issue in "dx", the code only verifies that the operation stack has the right size at all times. We do not yet confirm that the correct monitor is being unlocked by monitor-exit (the code is present but ifdefed out). Also, when monitor verification is enabled, we do not add the "can throw" path from monitor-exit to the work list, potentially causing some "dead code" warnings. (Not coincidentally, "dead code" checking is now only enabled in libdvm_assert.so.) Overall increase in bootstrap verification time is about 9%, dropping to 6% when the new checks are disabled. The feature is currently disabled by default. -Xverifyopt:checkmon enables it. Bug 2534655 Change-Id: I0eac54ce2623fb1d48cc80889fcdb4fd69de3231
* Pro-active pre-harmonization.Dan Bornstein2010-11-091-13/+28
| | | | | | | | This is the same idea as my last change, except with the new extended opcode formats. I also added a little more explanatory text. Change-Id: Iab9d1beb1ed445b94e72a438dfb83ea077c8c35b
* Spec/implementation harmony.Dan Bornstein2010-11-091-28/+67
| | | | | | | | | | | | | I did two things here: (1) made the lettering for formats 35c and 35ms match how things are actually implemented; and (2) formally defined formats 35mi and 3rmi, to correspond to the inline linked formats actually used in our current implementation. In neither case does this change the meaning of the spec in any substantive way. The first case is just about labels, and the second case is just about (from the standpoint of the spec) a suggestion. Change-Id: I6a6226a8cdd82ae4dcc43d342a9e9b98582cefd7
* Add const-class/jumbo.Dan Bornstein2010-11-081-40/+50
| | | | | | I neglected to include this one in my original list of new opcodes. Change-Id: Ia59b4b2f21516d851f0398361eb5db1cb413aaab
* Minor tweaks and clarification.Dan Bornstein2010-11-081-3/+10
| | | | Change-Id: I861c2d65fea468fd1f085d845981b1cd9d98d3a8
* Merge "Properly close <address> tag." into dalvik-devAndy McFadden2010-10-261-1/+1
|\
| * Properly close <address> tag.Andy McFadden2010-10-261-1/+1
| | | | | | | | Change-Id: I4f86849de25f1d1a35f2356c1f118f3f063674a4
* | Implement the new instruction formats.Dan Bornstein2010-10-261-4/+2
|/ | | | | | | I also refactored some of the old code in the process, to minimize duplication, and I also did a minor cleanup of the format spec. Change-Id: Ib07ea4ade52aa6ec4fa69000798e0cfb8f10c3a9
* Remove armv4t support.Elliott Hughes2010-10-211-2/+2
| | | | | | | This was never finished, and hasn't been maintained. And the hardware's totally obsolete. Change-Id: Icbf78e507de3b8be8a8f995b8423cc3c678ab0d3
* Minor clarifications and cleanup.Dan Bornstein2010-10-212-26/+58
| | | | Change-Id: I571ca9ac8f7a258a6e5d19208f382f42ee0aab22
* One more format and our first set of wide opcodes.Dan Bornstein2010-10-212-3/+157
| | | | Change-Id: I16731c1b66b40022c2e10c93640583ae43659701
* Merge "New instruction formats for expansion beyond 256 opcodes." into ↵Dan Bornstein2010-10-201-35/+35
|\ | | | | | | dalvik-dev
| * New instruction formats for expansion beyond 256 opcodes.Dan Bornstein2010-10-201-35/+35
| | | | | | | | Change-Id: Id57cee56a9b49a2d6434ab2c41657d4a4cb9ed61
* | Update heap dump notes.Andy McFadden2010-10-191-4/+11
| | | | | | | | | | | | | | | | The release order changed slightly. Bug 3110872 is related. Change-Id: I2b2982a29910ee58746188e9dbd61ffd9c3b3d64
* | am 141c9711: am 3f01142e: Merge "Added some threading notes" into gingerbreadAndy McFadden2010-10-121-3/+39
|\ \ | | | | | | | | | | | | | | | | | | Merge commit '141c9711d546c161d7ad6b149392dfddf705a26e' * commit '141c9711d546c161d7ad6b149392dfddf705a26e': Added some threading notes
| * | Added some threading notesAndy McFadden2010-10-111-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | Explain thread attach/detach, behavior of threads running native code. Added pthread_key_create destructor note to backward compatibility section. Change-Id: I954708c9ec7c83ba951c0f512c88d5c610a49411
* | | am 22156b4d: am 9be25d09: Clarify the invoke-* opcodes.Dan Bornstein2010-10-111-3/+4
|\| | | | | | | | | | | | | | | | | | | | Merge commit '22156b4d43d06446a0bb4d2c887c23bedabb3a96' * commit '22156b4d43d06446a0bb4d2c887c23bedabb3a96': Clarify the invoke-* opcodes.
| * | Clarify the invoke-* opcodes.Dan Bornstein2010-10-101-3/+4
| | | | | | | | | | | | | | | | | | | | | In particular, make it a little more explicit what kinds of methods are acceptable for each variant. Change-Id: Icd9dad876c2d10c23462b4d85ccaa9441d7f2c04
* | | am b11c54c9: am 307aa79a: Merge "Change Runtime.nativeLoad to return the ↵Elliott Hughes2010-10-011-4/+1
|\| | | |/ |/| | | | | | | | | | | | | dlerror(3) string." into gingerbread Merge commit 'b11c54c9b7849eaa95423dbbf8433e9f1b20ec32' * commit 'b11c54c9b7849eaa95423dbbf8433e9f1b20ec32': Change Runtime.nativeLoad to return the dlerror(3) string.
| * Change Runtime.nativeLoad to return the dlerror(3) string.Elliott Hughes2010-09-301-4/+1
| | | | | | | | | | | | | | | | This has a companion change in libcore: https://android-git.corp.google.com/g/71342 Bug: 3044042 Change-Id: I070a80a41ec2f306f5092a641807017f70179451
* | Update docs for removal of dalvik.vm.deadlock-predict.Andy McFadden2010-09-151-4/+3
|/ | | | | | | | | | | I don't think any external developers have used this, so there's not much risk of breaking a script. The feature itself still exists, but now you have to use the more general dalvik.vm.extra-opts property to enable it. Bug 2844083 Change-Id: Id4e1d8466e9b9e5818331ab1f40429040c49437b
* New material for JNI Tips doc.Andy McFadden2010-08-031-14/+196
| | | | | | | | | | | | Added three new "FAQ" sections, covering the questions that come up most frequently on the android-ndk mailing list. Augmented the "Unsupported Features" section with a list of items that didn't used to work, and noted when they started working. Various minor updates. Change-Id: I9acb22e70f6dae1d9b5011da0eab08b6e739d5f9