OSDN Git Service
Andy McFadden [Thu, 24 Mar 2011 18:28:50 +0000 (11:28 -0700)]
Merge "Various JDWP updates" into dalvik-dev
Andy McFadden [Wed, 23 Mar 2011 23:15:36 +0000 (16:15 -0700)]
Various JDWP updates
More tweaks to JDWP support:
- Mask off access flags not defined by the Java programming language
from fields and methods.
- Use InitRefs to look up ThreadGroup fields.
- Use memcpy() for some 64-bit accesses.
Change-Id: I4ff9f28ad7e6f1519a2befa557ddb5cf41e0f4cf
Dan Bornstein [Thu, 24 Mar 2011 01:24:12 +0000 (18:24 -0700)]
am
4624f350: am
17aff091: am
b1101e84: am
486ac3c0: Removing inaccurate and unmaintained docs.
* commit '
4624f350313daaae52068c5d1d12b88859d43e54':
Removing inaccurate and unmaintained docs.
Dan Bornstein [Thu, 24 Mar 2011 00:58:34 +0000 (17:58 -0700)]
am
17aff091: am
b1101e84: am
486ac3c0: Removing inaccurate and unmaintained docs.
* commit '
17aff091bad641b81e2609cfce69739986597d40':
Removing inaccurate and unmaintained docs.
Dan Bornstein [Thu, 24 Mar 2011 00:56:38 +0000 (17:56 -0700)]
am
b1101e84: am
486ac3c0: Removing inaccurate and unmaintained docs.
* commit '
b1101e847312da8ee98a26e25058f93ba381f1ac':
Removing inaccurate and unmaintained docs.
Dan Bornstein [Thu, 24 Mar 2011 00:53:04 +0000 (17:53 -0700)]
am
486ac3c0: Removing inaccurate and unmaintained docs.
* commit '
486ac3c0a90b05be5af4b82801ef325e83241057':
Removing inaccurate and unmaintained docs.
Jesse Wilson [Wed, 23 Mar 2011 23:46:04 +0000 (16:46 -0700)]
Merge "Use PrintWriter rather than PrintStream in dex analysis tools." into dalvik-dev
Jesse Wilson [Wed, 23 Mar 2011 23:21:01 +0000 (16:21 -0700)]
Use PrintWriter rather than PrintStream in dex analysis tools.
Writers make it easier to create strings, useful when these
tools are used as building blocks for other tools.
Change-Id: I8eac49719b130551df216f42eaafb942203da0d0
Dan Bornstein [Wed, 23 Mar 2011 22:26:58 +0000 (15:26 -0700)]
Removing inaccurate and unmaintained docs.
Change-Id: Ifef37063e844e4eb9ccc8111a1f1263fe26bd517
Dan Bornstein [Wed, 23 Mar 2011 19:49:26 +0000 (12:49 -0700)]
Merge "Kill off code, and leave a note." into dalvik-dev
Dan Bornstein [Wed, 23 Mar 2011 19:00:20 +0000 (12:00 -0700)]
Kill off code, and leave a note.
Based on discussion yesterday, the code in Copying.c was already
superfluous. I'm leaving dvmForEachRequiredReference(), except with a
note, just in case it ends up being needed. If by the time I'm done
with the next round of VM changes, it turns out not to be needed, then
I'll just go ahead and axe it.
Change-Id: Ib7cf06ba75851c7ffd98108c4c73cddee9259ddf
buzbee [Wed, 2 Mar 2011 23:43:48 +0000 (15:43 -0800)]
Interpreter restructuring
This is a restructuring of the Dalvik ARM and x86 interpreters:
o Combine the old portstd and portdbg interpreters into a single
portable interpreter.
o Add debug/profiling support to the fast (mterp) interpreters.
o Delete old mechansim of switching between interpreters. Now, once
you choose an interpreter at startup, you stick with it.
o Allow JIT to co-exist with profiling & debugging (necessary for
first-class support of debugging with the JIT active).
o Adds single-step capability to the fast assembly interpreters without
slowing them down (and, in fact, measurably improves their performance).
o Remove old "polling for safe point" mechanism. Breakouts now achieved
via modifying base of interpreter handler table.
o Simplify interpeter control mechanism.
o Allow thread-granularity control for profiling & debugging
The primary motivation behind this change was to improve the responsiveness
of debugging and profiling and to make it easier to add new debugging and
profiling capabilities in the future. Instead of always bailing out to the
slow debug portable interpreter, we can now stay in the fast interpreter.
A nice side effect of the change is that the fast interpreters
got a healthy speed boost because we were able to replace the
polling safepoint check that involved a dozen or so instructions
with a single table-base reload. When combined with the two earlier CLs
related to this restructuring, we show a 5.6% performance improvement
using libdvm_interp.so on the Checkers benchmark relative to Honeycomb.
Change-Id: I8d37e866b3618def4e582fc73f1cf69ffe428f3c
Andy McFadden [Wed, 23 Mar 2011 14:45:33 +0000 (07:45 -0700)]
Merge "Fix some exception issues" into dalvik-dev
Carl Shapiro [Wed, 23 Mar 2011 02:44:12 +0000 (19:44 -0700)]
Merge "Get rid of some inconsistent formatting." into dalvik-dev
Carl Shapiro [Wed, 23 Mar 2011 01:19:05 +0000 (18:19 -0700)]
Get rid of some inconsistent formatting.
Change-Id: I5d5130702e17bb95c835b9ccc3ec0aa86eda9dea
Dan Bornstein [Tue, 22 Mar 2011 23:49:41 +0000 (16:49 -0700)]
Left a note for future editors.
Change-Id: Ic96f58baabdf0d1a694b51efc991de5caef66a38
Dan Bornstein [Tue, 22 Mar 2011 21:47:44 +0000 (14:47 -0700)]
Pull the globals iteration into InitRefs.
This gives the new GC a way to iterate over the global object refs
defined in Globals.h, without having to have detailed knowledge of the
list of such refs. However, this change doesn't actually modify the GC
code in question, since it is not currently in a working state anyway.
InitRefs.c probably wants a slightly different name. Suggestions welcome.
Bonus: Cleaned up a vaguely-related clause in Class.c.
Change-Id: I406987c56ddf310c61d877574071c46f3717fc72
Andy McFadden [Tue, 22 Mar 2011 23:17:09 +0000 (16:17 -0700)]
Fix some exception issues
The function that obtained an exception's message string was making a
bad assumption. This has been corrected.
Also, in the invoke-object-init functions, we now test for a pending
exception after the call to dvmSetFinalizable().
Also, make the test for pending exception at the end of VM startup
an error rather than an assert.
Bug
4121213
Change-Id: I6912e5c79d63e8dda1a1dc2e788c7a8edcf487aa
Andy McFadden [Tue, 22 Mar 2011 22:10:10 +0000 (15:10 -0700)]
Merge "Fix dalvik test 089" into dalvik-dev
Andy McFadden [Tue, 22 Mar 2011 22:04:52 +0000 (15:04 -0700)]
Fix dalvik test 089
The local variable used to hold the field reference was a u2.
Also, removed the "don't include debug info" options from the build
script.
Change-Id: I14b0fd4ae5af8dcd52f4b22e6b8fe9f68fd7bc89
Elliott Hughes [Tue, 22 Mar 2011 20:34:40 +0000 (13:34 -0700)]
Remove more dead SecurityManager cruft.
(Requires corresponding libcore change.)
Change-Id: I86aac9dda6708173fd2b5a1c660ef20ea11fca03
Andy McFadden [Tue, 22 Mar 2011 20:04:08 +0000 (13:04 -0700)]
Merge "Fix up some JDWP stuff" into dalvik-dev
Andy McFadden [Fri, 18 Mar 2011 21:27:06 +0000 (14:27 -0700)]
Fix up some JDWP stuff
Notably:
- Claim to know about synthetic attributes (canGetSyntheticAttribute).
Set an appropriate flag in the access flags of fields and methods.
(Makes no difference that I can see in Eclipse.)
- Stop making copies of descriptor strings. That ceased to be necessary
after they were normalized in DEX (pre-1.0).
- Correct object type determination, especially w.r.t. the specially-
tagged types (strings, threads, classloaders, etc).
- Handle a FIELD_ONLY mod (not tested).
- Added a bit of debugging stuff.
Change-Id: I5651b5b76d904a9edbd051e039423795faaa1650
Carl Shapiro [Tue, 22 Mar 2011 18:43:26 +0000 (11:43 -0700)]
Merge "Use the more pervasive /bin/sh instead." into dalvik-dev
Dan Bornstein [Tue, 22 Mar 2011 03:54:32 +0000 (20:54 -0700)]
Merge "Make sure both options objects get created." into dalvik-dev
Dan Bornstein [Tue, 22 Mar 2011 03:51:47 +0000 (20:51 -0700)]
Make sure both options objects get created.
Previously, the new DexOptions object would only get created when
calling dx as a command directly, but not when it was used as a
library (via a call to Main.run()).
Change-Id: Ie4f37ff9140539a4f2c7af50228ac6eaf6bebe05
Carl Shapiro [Tue, 22 Mar 2011 03:09:32 +0000 (20:09 -0700)]
Use the more pervasive /bin/sh instead.
Because there is nothing bash specific in this file there is no
reason to specify that bash be used.
Change-Id: I41cdf4bcfa883d13bb75fffc61ad982252c936bc
Carl Shapiro [Tue, 22 Mar 2011 00:26:35 +0000 (17:26 -0700)]
Merge "Add a missing strings.h include for strcasecmp." into dalvik-dev
Carl Shapiro [Tue, 22 Mar 2011 00:23:56 +0000 (17:23 -0700)]
Add a missing strings.h include for strcasecmp.
Change-Id: I06949c34d8ce0f48fa905d3a03d87de81e47e2f9
Carl Shapiro [Mon, 21 Mar 2011 23:47:54 +0000 (16:47 -0700)]
Merge "Remove HeapWorker.h from Dalvik.h." into dalvik-dev
Carl Shapiro [Mon, 21 Mar 2011 23:32:12 +0000 (16:32 -0700)]
Merge "Remove TEST_VM_IN_ECLAIR." into dalvik-dev
Carl Shapiro [Mon, 21 Mar 2011 23:25:34 +0000 (16:25 -0700)]
Remove TEST_VM_IN_ECLAIR.
Change-Id: I819a15680a50ea2d53fce6f8ebae01bc7d88fecb
Carl Shapiro [Mon, 21 Mar 2011 22:57:35 +0000 (15:57 -0700)]
Remove HeapWorker.h from Dalvik.h.
This is no longer a public interface.
Change-Id: I4830be24d5042d841796da14ea402a369c97a2e2
Dan Bornstein [Mon, 21 Mar 2011 22:38:51 +0000 (15:38 -0700)]
Merge "Update version number." into dalvik-dev
Dan Bornstein [Mon, 21 Mar 2011 22:33:59 +0000 (15:33 -0700)]
Update version number.
Change-Id: Id000377c913927e56a7e9e1732ff24f52bc25970
Dan Bornstein [Mon, 21 Mar 2011 22:31:30 +0000 (15:31 -0700)]
Merge "Clarify the comments some more." into dalvik-dev
Dan Bornstein [Mon, 21 Mar 2011 22:31:04 +0000 (15:31 -0700)]
Clarify the comments some more.
Change-Id: I39e10b20e38f1792efa5dc4458c5cf0e8614f731
Dan Bornstein [Mon, 21 Mar 2011 22:19:45 +0000 (15:19 -0700)]
Merge "Clarify / correct comments." into dalvik-dev
Dan Bornstein [Mon, 21 Mar 2011 22:19:11 +0000 (15:19 -0700)]
Clarify / correct comments.
Change-Id: I67861a0253a97a462be42cbd1b3c7ac02f8e5352
Carl Shapiro [Mon, 21 Mar 2011 20:58:59 +0000 (13:58 -0700)]
Merge "Move finalization out of the VM." into dalvik-dev
Carl Shapiro [Mon, 21 Mar 2011 20:35:24 +0000 (13:35 -0700)]
Move finalization out of the VM.
This change introduces a new reference class whose referent
points to instances requiring finalization. This makes the
finalization of objects possible using a reference queue and
a dedicated thread which removes objects from the queue.
Change-Id: I0ff6dd272f00ca08c6ed3aa667bf766a039a944e
Dan Bornstein [Thu, 17 Mar 2011 01:00:19 +0000 (18:00 -0700)]
Add opcode-emission backward compatibility.
This makes it so that when you pass dx --target-api=N, where N is an
API level representing Honeycomb or earlier, dx will not emit any of
the new extended opcodes.
N is currently baked into the code as 12 or larger being
post-Honeycomb, but it is subject to change if there are more revs of
the API under the Honeycomb umbrella (which wouldn't be surprising).
Bug:
4094709
Change-Id: Iaf5177f179b22586bcf806ecb53de20b6e989777
Ben Cheng [Sun, 20 Mar 2011 02:22:31 +0000 (19:22 -0700)]
Merge "Extend a trace with a backward branch into a loop." into dalvik-dev
buzbee [Sat, 19 Mar 2011 18:26:41 +0000 (11:26 -0700)]
resolved conflicts for merge of
9553565f to dalvik-dev
Change-Id: Id2bc916aa838d21f4d248206e5182b00bcd19791
Bill Buzbee [Sat, 19 Mar 2011 17:16:14 +0000 (10:16 -0700)]
Merge "x86: restore standard stack frame layout and fix stack alignment."
Ben Cheng [Thu, 17 Mar 2011 00:19:06 +0000 (17:19 -0700)]
Extend a trace with a backward branch into a loop.
When seeing a trace that ends with a backward branch, exhaust all code
blocks reachable from that trace and try to identify if there exists a
non-nested loop. If the derived loop is found to be too complex or only
acyclic code is seen, revert to the original compilation mechanism to
translate a simple trace.
This CL uses the whole-method parser/dataflow analysis framework to
identify such loops. No optimization/codegen are performed yet.
Bug:
4086718
Change-Id: I19ed3ee53ea1cbda33940c533de8e9220e647156
Elliott Hughes [Fri, 18 Mar 2011 17:57:13 +0000 (10:57 -0700)]
Remove an unused DalvikNativeMethod.
Bug:
3107501
Change-Id: I9aa3f8b87d7d6d7a4d02e2a4a75b539864c2d4eb
Jesse Wilson [Fri, 18 Mar 2011 00:31:21 +0000 (17:31 -0700)]
am
b4bb7f73: Add a \'dalvik\' shell script to launch dalvikvm on the host.
* commit '
b4bb7f73210fef6c3e252e25970d7fdff1b04286':
Add a 'dalvik' shell script to launch dalvikvm on the host.
Ben Cheng [Fri, 18 Mar 2011 00:17:42 +0000 (17:17 -0700)]
Bug fix for dominance frontier calculation in SSA transformation.
The comparison should be based on the immediate dominator instead of
the whole dominator set.
Change-Id: Id5130051f5dd13c3b486200c520fdc64d207c10e
Jesse Wilson [Thu, 17 Mar 2011 23:58:18 +0000 (16:58 -0700)]
Add a 'dalvik' shell script to launch dalvikvm on the host.
Change-Id: I44ba2752b593a92c62872318cd8ac17185f52871
http://b/
4128077
Elliott Hughes [Thu, 17 Mar 2011 23:08:22 +0000 (16:08 -0700)]
Merge "Fix the order in which natives are registered." into dalvik-dev
Elliott Hughes [Thu, 17 Mar 2011 22:42:53 +0000 (15:42 -0700)]
Fix the order in which natives are registered.
All the core libraries want from JniHelp during registration is
jniRegisterNativeMethods. JniHelp, though, wants java.io.FileDescriptor from
the core libraries. So we should get to go first.
Bug:
3107501
Change-Id: I9604a3a04343c78577610aa7adf40a1f7d82eeeb
jeffhao [Thu, 17 Mar 2011 20:26:43 +0000 (13:26 -0700)]
Merge "Register allocator uses single reg for each local when possible." into dalvik-dev
Jesse Wilson [Thu, 17 Mar 2011 02:38:47 +0000 (19:38 -0700)]
Add support for pre-dexed libraries to dx.
http://b/
4090053
Change-Id: Ifb8b9230939cb2a72a767128f79cbfbd042e95a6
jeffhao [Thu, 17 Mar 2011 01:16:52 +0000 (18:16 -0700)]
Register allocator uses single reg for each local when possible.
Changes the register allocator to try much harder to map all SSA regs
associated with a local variable to the same register. Also, the
register allocator won't try to reuse parameter space for locals
like it used to, which would often lead to many unnecessary moves.
Change-Id: Ie012072015993204ef4b3f4e74a0eb94fdb10bc1
Jesse Wilson [Thu, 17 Mar 2011 00:49:10 +0000 (17:49 -0700)]
Merge "Don't emit multiple copies of annotations when merging dex files." into dalvik-dev
Jesse Wilson [Wed, 16 Mar 2011 21:22:51 +0000 (14:22 -0700)]
Don't emit multiple copies of annotations when merging dex files.
This change requires all annotations to be loaded into memory
so they can be sorted. There does not appear to be a required
order to the annotations in .dex files. Loading annotations also
requires loading encoded values, which makes this into a large
refactoring.
Change-Id: Ib7e2656c595018be4e9936eb84a22f1c1de56750
http://b/
4090053
Dan Bornstein [Wed, 16 Mar 2011 23:57:36 +0000 (16:57 -0700)]
Merge "Add --target-api=N option to dx." into dalvik-dev
Dan Bornstein [Wed, 16 Mar 2011 23:32:31 +0000 (16:32 -0700)]
Add --target-api=N option to dx.
This change adds the option and plumbs it into where it
needs to go, but doesn't add any code to take action on it.
That will come in a follow-up.
Bug:
4094709
Change-Id: I9c796e176e125b0bcee18af56d9e6da802dfa081
Dan Bornstein [Wed, 16 Mar 2011 21:26:26 +0000 (14:26 -0700)]
Merge "Clean up ArrayStoreException some more." into dalvik-dev
Dan Bornstein [Wed, 16 Mar 2011 19:10:17 +0000 (12:10 -0700)]
Clean up ArrayStoreException some more.
Each of the four variants thrown by the VM now has a
descriptively-named function defined in Exception.c, and the messages
uniformly use human-oriented class names instead of the internal
"[[Lfoo/bar/Baz;" forms.
Bug:
3500987
Change-Id: I747315e36005c6d352116ce6a8af9d49c622f59a
Andy McFadden [Wed, 16 Mar 2011 19:03:35 +0000 (12:03 -0700)]
Merge "Update CheckJNI implementation" into dalvik-dev
Andy McFadden [Wed, 16 Mar 2011 18:19:55 +0000 (11:19 -0700)]
Update CheckJNI implementation
This implements a couple of "TODO" items that affect CheckJNI and
indirect references. It also adds guards that were missing around
some tests that examine objects on the heap.
Change-Id: If80d19dafb3043aa1a1d287a660ae48c86c4baa0
Dan Bornstein [Wed, 16 Mar 2011 18:23:57 +0000 (11:23 -0700)]
Correct the reported index.
When asked to copy an incompatible reference, System.arraycopy() would
complain about the nth element it was to copy, and not the absolute
index of that element.
Change-Id: I0f4a159b96fbedf083c3add57d2e20ee750d70fe
Dan Bornstein [Wed, 16 Mar 2011 16:53:14 +0000 (09:53 -0700)]
Merge "Clean up dvmFindReferenceMembers()." into dalvik-dev
Andy McFadden [Wed, 16 Mar 2011 00:04:42 +0000 (17:04 -0700)]
Clean up ref table dump
We were using the in-heap size as a sort key and a display item,
but the sizes of objects aren't all that interesting -- usually,
if the table is being dumped, it's because we ran into an object
count limitation rather than a total size limitation.
This largely eliminates the display of object sizes. We show array
element counts for array objects.
Bug
3447435
Change-Id: I3bf31ed45317336ce9a41f058cce8eba88e58cc8
Dan Bornstein [Tue, 15 Mar 2011 23:47:46 +0000 (16:47 -0700)]
Clean up dvmFindReferenceMembers().
Change-Id: I175ec22ca3bfe8bb99846b1fdb33d2b65ce01407
Jesse Wilson [Tue, 15 Mar 2011 23:36:25 +0000 (16:36 -0700)]
Merge "Fix bugs in instruction parsing for incremental dx." into dalvik-dev
Dan Bornstein [Tue, 15 Mar 2011 23:36:16 +0000 (16:36 -0700)]
Merge "Further init-time cleanup." into dalvik-dev
Dan Bornstein [Tue, 15 Mar 2011 23:06:17 +0000 (16:06 -0700)]
Further init-time cleanup.
* The initialization is now fail-fast, since (a) failure is rare, and
(b) making it tolerate multiple failures both is pretty pointless
and would require a lot of code.
* The string offset verification code is now more cleanly factored
out.
Change-Id: I4e7b5ee4a0f3e0874b9206b2f105d6de37b4a919
Andy McFadden [Tue, 15 Mar 2011 22:54:43 +0000 (15:54 -0700)]
Merge "Unify reference table dump" into dalvik-dev
Andy McFadden [Tue, 15 Mar 2011 20:47:09 +0000 (13:47 -0700)]
Unify reference table dump
Merge ReferenceTable and IndirectRefTable debugging-dump functions.
Bug
3447435
Change-Id: I154a84b1910d10cf68b62b079da6bd1e5475222f
Jesse Wilson [Tue, 15 Mar 2011 21:19:33 +0000 (14:19 -0700)]
Fix bugs in instruction parsing for incremental dx.
Change-Id: I9557e835e846d42689786833395eecdbbbe6174c
http://b/
3447216
Dan Bornstein [Tue, 15 Mar 2011 21:13:07 +0000 (14:13 -0700)]
Clean up method reference/offset initialization.
Similar to my previous few changes, all of the method lookups got
pulled into one of two new table-driven functions,
initDirectMethodReferences() and initVirtualMethodOffsets().
Change-Id: I382dce9e0b39c9a6f5c90ad49a4a859c5fb2cf42
Dan Bornstein [Tue, 15 Mar 2011 17:38:37 +0000 (10:38 -0700)]
Clean up constructor reference initialization.
Similar to my previous couple of changes, all of the constructor
lookups got pulled into a new table-driven function,
initConstructorReferences().
Change-Id: Ic74b45fa67cc9295e7d34559e1a30254de98a33c
Dan Bornstein [Tue, 15 Mar 2011 17:07:44 +0000 (10:07 -0700)]
Merge "Clean up field offset initialization." into dalvik-dev
Dan Bornstein [Tue, 15 Mar 2011 00:15:05 +0000 (17:15 -0700)]
Clean up field offset initialization.
All of the field offset calculations got pulled into a new
table-driven function, initFieldOffsets().
Change-Id: Iba1e57aa1ed3b84c56fb4b0171e7d97cd9d40712
Iliyan Malchev [Tue, 15 Mar 2011 00:08:49 +0000 (17:08 -0700)]
am
c73d12f6: dalvik: remove LOCAL_PRELINK_MODULE
* commit '
c73d12f67a1c115be59f4d84505d72883d416631':
dalvik: remove LOCAL_PRELINK_MODULE
Andy McFadden [Mon, 14 Mar 2011 22:40:40 +0000 (15:40 -0700)]
Merge "Replace jumbo opcodes in certain circumstances" into dalvik-dev
Iliyan Malchev [Mon, 14 Mar 2011 21:02:05 +0000 (14:02 -0700)]
dalvik: remove LOCAL_PRELINK_MODULE
Change-Id: I1d5652a0380138dc6cddd9f0ba926ff7a131d44b
Signed-off-by: Iliyan Malchev <malchev@google.com>
Andy McFadden [Sat, 12 Mar 2011 01:05:33 +0000 (17:05 -0800)]
Replace jumbo opcodes in certain circumstances
With this change we will start using some dexopt-generated "jumbo"
opcodes for volatile field accesses and calls to Object.<init>. These
are necessary for correctness.
Fixed a bug that could prevent volatile fields in huge objects from
being handled correctly.
Also, return "void" from some functions whose return value is never
examined.
Change-Id: I2a7fc66b59953ed3a6f4ac507873101de5d101d5
Carl Shapiro [Mon, 14 Mar 2011 20:49:09 +0000 (13:49 -0700)]
Merge "Remove outdated asserts." into dalvik-dev
Dan Bornstein [Mon, 14 Mar 2011 20:00:37 +0000 (13:00 -0700)]
Merge "Clean up class reference initialization." into dalvik-dev
Dan Bornstein [Mon, 14 Mar 2011 19:32:03 +0000 (12:32 -0700)]
Clean up class reference initialization.
All of the class reference initialization got pulled into
a new table-driven function, initClassReferences().
Change-Id: If3a07c486fb83ac29a0ca48856c13ab079051bc0
buzbee [Mon, 14 Mar 2011 19:29:58 +0000 (12:29 -0700)]
Merge "Add trace description dump routine for debugging" into dalvik-dev
buzbee [Mon, 14 Mar 2011 19:25:24 +0000 (12:25 -0700)]
Add trace description dump routine for debugging
New dvmJitDumpTraceDescription prints out a trace descriptor.
Change-Id: I613fe17cf75e4ee26ad976b15c2cf89ce4552192
Carl Shapiro [Mon, 14 Mar 2011 19:09:34 +0000 (12:09 -0700)]
Remove outdated asserts.
Previously, the GcHeap structure was allocated, somewhat confusingly,
on the garbage collected heap. Two asserts checked that the address
of the GcHeap structure, before being deallocated, was inside garbage
collected heap. The GcHeap structure is now allocated on the malloc
heap and these assertions are no longer valid.
Change-Id: Ia031d116e94cf1e731315bb90077df8a82e41c55
Dan Bornstein [Mon, 14 Mar 2011 18:22:17 +0000 (11:22 -0700)]
Merge "Collate the initial class creation code." into dalvik-dev
Ben Cheng [Mon, 14 Mar 2011 18:22:08 +0000 (11:22 -0700)]
Merge "Print class/method info for virtual callsites in JIT verbose mode." into dalvik-dev
Dan Bornstein [Mon, 14 Mar 2011 18:00:35 +0000 (11:00 -0700)]
Collate the initial class creation code.
This is just a minor shuffling of code to make it easier to
find the code that does the creation of the first classes
(first objects really) as the vm is starting up.
Change-Id: I053c5ebeea4c1808fe975dc387a9e53294ba93fe
Ben Cheng [Mon, 14 Mar 2011 18:16:21 +0000 (11:16 -0700)]
Print class/method info for virtual callsites in JIT verbose mode.
For example:
chaining cell (predicted): Ljava/lang/Object;getClass
Change-Id: Ia53340baab87d6b744fc7189b141737a4a54cc42
Carl Shapiro [Sat, 12 Mar 2011 02:14:11 +0000 (18:14 -0800)]
Merge "Free the slot data when freeing an indirect reference table." into dalvik-dev
Carl Shapiro [Sat, 12 Mar 2011 02:13:46 +0000 (18:13 -0800)]
Merge "Add a predicate that returns true for addresses contained by the heap." into dalvik-dev
Carl Shapiro [Sat, 12 Mar 2011 02:12:41 +0000 (18:12 -0800)]
Merge "Do not allocate native objects on the managed heap." into dalvik-dev
Dan Bornstein [Sat, 12 Mar 2011 01:57:13 +0000 (17:57 -0800)]
Clarify a comment.
Per suggestion during code review of previous patch.
Change-Id: I9bf88d3127f32036c1668ad03ffc491947a4f696
Carl Shapiro [Sat, 12 Mar 2011 01:54:58 +0000 (17:54 -0800)]
Add a predicate that returns true for addresses contained by the heap.
Change-Id: Iaa2978c59fc314563555b14f53bdc28be6b71cc4
Carl Shapiro [Sat, 12 Mar 2011 01:40:40 +0000 (17:40 -0800)]
Free the slot data when freeing an indirect reference table.
Change-Id: I96e342a57c77f53c212535d4ed563c22718d4bd0
Carl Shapiro [Wed, 9 Mar 2011 01:09:25 +0000 (17:09 -0800)]
Do not allocate native objects on the managed heap.
Descriptors for the managed heap were being allocated in the managed
heap using mspace-malloc. With this change we use an ordinary malloc
to allocate those objects instead.
Jesse Wilson [Sat, 12 Mar 2011 00:55:51 +0000 (16:55 -0800)]
Merge "Fix bugs in incremental dx." into dalvik-dev
Jesse Wilson [Fri, 11 Mar 2011 22:27:41 +0000 (14:27 -0800)]
Fix bugs in incremental dx.
The compaction code used to merge a dex with itself. This caused
problems because annotations would be duplicated. Now the dex is
merged with an empty dex. I've changed the section default from
-1 to 0 to make the empty dex trivial to construct.
It also had a correctness problem where we were using the wrong
offsets when merging indexed values. Move the offsets out of the
loop so they aren't reset.
Change-Id: Ibcf24de8f96c2c525ca2e2ac44550239e3cf689e
http://b/
3447216