OSDN Git Service
Elliott Hughes [Thu, 17 Jun 2010 20:19:01 +0000 (13:19 -0700)]
Move the implementation of JNIHelp.h's FileDescriptor helpers into JNIHelp.c.
These functions used to be declared in dalvik/ but defined in libcore/, which
was a layering violation but not important. It now stands in the way of
switching FileDescriptor's JNI over to C++, so out it goes.
There's a functional change here: the libcore code was going out of its way
to ensure that FileDescriptor's <clinit> was being invoked, but it's not
obvious that there was any reason for this: the static initializers just set
the err/in/out fields' descriptor fields to the appropriate integers.
A separate change rewrites FileDescriptor's JNI in terms of JNIHelp.h's API,
so it no longer needs to know anything about FileDescriptor itself. (Amusingly,
the original motivation for switching to C++ was to rewrite code that I've now
simply deleted.)
Change-Id: I5d79e5b91835183c21a6b7a1545178d9d93f4b69
Elliott Hughes [Fri, 11 Jun 2010 23:13:15 +0000 (16:13 -0700)]
Consistently use strerror(3) rather than reporting raw errno values.
We were doing the decoding almost everywhere, leaving just this handful of
places to fix.
Change-Id: I76100c213ded50e544eb6f740fea0b1633068b92
Carl Shapiro [Fri, 11 Jun 2010 19:19:24 +0000 (12:19 -0700)]
Remove some stale comments and code.
Change-Id: Iad76c9a4168195461110af736af2e98f5025e6d4
Andy McFadden [Fri, 11 Jun 2010 17:55:29 +0000 (10:55 -0700)]
Andy McFadden [Fri, 11 Jun 2010 17:49:11 +0000 (10:49 -0700)]
Andy McFadden [Fri, 11 Jun 2010 17:47:28 +0000 (10:47 -0700)]
am
891416ef: Update armv7-a-neon.
Merge commit '
891416ef725a5d9e64e5a1422f65394068c6e106' into gingerbread-plus-aosp
* commit '
891416ef725a5d9e64e5a1422f65394068c6e106':
Update armv7-a-neon.
Andy McFadden [Fri, 11 Jun 2010 17:43:37 +0000 (10:43 -0700)]
Update armv7-a-neon.
An externally-contributed fix was not able to update the armv7-a-neon
output files, because they don't exist in the open-source repository.
All I did was re-run rebuild.sh.
Change-Id: I3bf436ee8c0f57deb033815fd07f1a531ce851a1
Carl Shapiro [Fri, 11 Jun 2010 17:41:13 +0000 (10:41 -0700)]
Merge "Eliminate pointer tagging on the reference operation queue." into dalvik-dev
Carl Shapiro [Thu, 10 Jun 2010 22:17:00 +0000 (15:17 -0700)]
Eliminate pointer tagging on the reference operation queue.
Tags are unconditionally added before references are added to the
reference queue. This tag is checked when a reference is removed from
the queue and subsequently cleared. There are no other observers of
this tag and so it is equivalent to not tag the reference in the first
place. The original intent may have been to tag the references in
different ways. Removing this code simplifies reference tracing.
Change-Id: Idb18929e601acdd049b4a92ebf588f3f5febb75c
jeffhao [Thu, 10 Jun 2010 21:30:54 +0000 (14:30 -0700)]
Added escape analysis and scalar replacement of arrays in dx.
Change-Id: Ic7a0e8042860af8ee167444f0b9f92198b1c28b2
Andy McFadden [Thu, 10 Jun 2010 17:30:03 +0000 (10:30 -0700)]
am
cd6e05e8: am
41c2b663: am
805800d7: Merge "Up the version to 1.3.0." into kraken
Merge commit '
cd6e05e8b25410a008d3d7e5fc9b6de7d2c4d4c3' into dalvik-dev
* commit '
cd6e05e8b25410a008d3d7e5fc9b6de7d2c4d4c3':
Up the version to 1.3.0.
Andy McFadden [Thu, 10 Jun 2010 17:24:47 +0000 (10:24 -0700)]
am
41c2b663: am
805800d7: Merge "Up the version to 1.3.0." into kraken
Andy McFadden [Thu, 10 Jun 2010 17:23:50 +0000 (10:23 -0700)]
am
805800d7: Merge "Up the version to 1.3.0." into kraken
Andy McFadden [Thu, 10 Jun 2010 17:22:29 +0000 (10:22 -0700)]
Merge "Up the version to 1.4.0." into dalvik-dev
Andy McFadden [Thu, 10 Jun 2010 17:22:17 +0000 (10:22 -0700)]
Merge "Up the version to 1.3.0." into kraken
Andy McFadden [Thu, 10 Jun 2010 05:32:09 +0000 (22:32 -0700)]
Up the version to 1.4.0.
This makes it one more than the last one.
Change-Id: I7227f8c08dab5cec8f878a888382a851339fccde
Andy McFadden [Thu, 10 Jun 2010 05:31:32 +0000 (22:31 -0700)]
Up the version to 1.3.0.
Make it one up from froyo.
Change-Id: I9f5170be0ab5f301e994f10300d81f60a01335f7
Carl Shapiro [Wed, 9 Jun 2010 22:17:47 +0000 (15:17 -0700)]
Merge "Treat warnings as errors for ARM target builds." into dalvik-dev
Carl Shapiro [Wed, 9 Jun 2010 22:10:16 +0000 (15:10 -0700)]
Merge "Rename the heap virtual memory allocation to "dalvik-heap"." into dalvik-dev
buzbee [Wed, 9 Jun 2010 21:43:27 +0000 (14:43 -0700)]
Merge "Jit: Add parenthesis to fix expression" into dalvik-dev
buzbee [Wed, 9 Jun 2010 21:22:50 +0000 (14:22 -0700)]
Jit: Add parenthesis to fix expression
Yay compiler warnings. Boo failing to notice compiler warnings.
Change-Id: I8ec85e2898b1675105ebd593f2ff47a06e425802
Carl Shapiro [Wed, 9 Jun 2010 21:23:25 +0000 (14:23 -0700)]
Treat warnings as errors for ARM target builds.
Change-Id: Icbc4867a001f33abebb759ddcc69dd877950b69a
Carl Shapiro [Wed, 9 Jun 2010 21:15:09 +0000 (14:15 -0700)]
Rename the heap virtual memory allocation to "dalvik-heap".
Change-Id: I05b9af92c4026be9445aff87520b2529b4757fe7
Barry Hayes [Wed, 9 Jun 2010 19:09:12 +0000 (12:09 -0700)]
Merge "ALLOC_NO_GC is no longer used; remove it, and the nonCollectableRefs table. Clean up dvmHeapInitHeapRefTable's interface to know the default size." into dalvik-dev
Barry Hayes [Tue, 8 Jun 2010 16:34:42 +0000 (09:34 -0700)]
ALLOC_NO_GC is no longer used; remove it, and the nonCollectableRefs table.
Clean up dvmHeapInitHeapRefTable's interface to know the default size.
Change-Id: I535fdfe39924f6f65f286e2809002c2a0e6411b6
Carl Shapiro [Wed, 9 Jun 2010 18:20:33 +0000 (11:20 -0700)]
Merge "Clean up the use of condition variables in the HeapWorker." into dalvik-dev
Carl Shapiro [Tue, 8 Jun 2010 23:19:45 +0000 (16:19 -0700)]
Clean up the use of condition variables in the HeapWorker.
Except for the timed wait case, use the error checking function
wrappers for all condition variable uses. Also, do not accept an
EINTR return value for the timed wait. These functions are never
supposed to return EINTR.
Change-Id: I867522b9ecea34dbe29ecc6bef1b3e3586c48414
buzbee [Wed, 9 Jun 2010 17:28:46 +0000 (10:28 -0700)]
Merge "JIT: Trace selection tuning to reduce number of spurious "hot" traces." into dalvik-dev
buzbee [Tue, 8 Jun 2010 23:24:46 +0000 (16:24 -0700)]
JIT: Trace selection tuning to reduce number of spurious "hot" traces.
This change trades a smallish adverse performance impact on programs
with flat execution profiles (for example, dacapo's xalan) for significant
reductions in useless translations. For dacapo, performance dropped
by about 2% in return for a 40% reduction in memory usage (300 Kbytes).
No significant performance drop in loopy profiles, but ocassionally good
memory savings. BenchmarkPi performance unchanged, but memory usage
after 4 runs went from 120 Kbytes to 55 Kbytes.
This is still not ideal (and probably will never be). For programs with
flat execution profiles we do best with loose hotness detection - try to
get as much of the working set compiled as quickly as possible. However,
too loose and we end up translating a lot of little-used UI code.
My current inclination is to err towards tight standards for the trace
JIT and push better performance for flat profiles in a future world in
which we analyze profile data across runs - perhaps in conjunction with
a method JIT.
Change-Id: If1b6e940ca7799acd6266e47175dae644269bc87
Carl Shapiro [Wed, 9 Jun 2010 01:08:14 +0000 (18:08 -0700)]
Remove repeated newlines at the end of files.
Change-Id: I1e3d103a7b932ef21acedb6438c0f26b315df28f
Carl Shapiro [Tue, 8 Jun 2010 23:37:12 +0000 (16:37 -0700)]
Remove trailing whitespace.
Change-Id: I95534bb2b88eaf48f2329282041118cd034c812b
Carl Shapiro [Tue, 8 Jun 2010 20:42:05 +0000 (13:42 -0700)]
Remove several obsolete logging macros.
Change-Id: I3bd6d950168e462556eeb2c219685a269a2cd65c
Carl Shapiro [Tue, 8 Jun 2010 20:19:57 +0000 (13:19 -0700)]
Replace a missing HPROF call in scanObject.
This code was accidentally removed when the implementation of the
scanObject routines in MarkSweep.c was superseded by code from their
analogs in Verify.c.
Change-Id: I9da6de01949130648d11172198b76db98dc184ee
Barry Hayes [Tue, 8 Jun 2010 16:59:12 +0000 (09:59 -0700)]
Further clean-up now that class == NULL has been eliminated.
Change-Id: I8be4bb4e46813ec04a0f8cd22d30f9e9b28895f0
Barry Hayes [Fri, 14 May 2010 20:43:34 +0000 (13:43 -0700)]
Send unlinkedClass back to hell, as requested.
The GC and Verify routines now can look inside classes better as well.
Basic ideas:
1) Pre-allocate the java.lang.Class class, and explicitly
set its clazz field to itself.
2) Put ClassObjects in status CLASS_IDX when their super and interface
array contain Dex indexes rather than object pointers. The GC
understands this, and uses that status to decide on marking those
fields or not.
Change-Id: Id84310b8a4ee27bf1b33e5b58ad9739fad659c4e
Andy McFadden [Mon, 7 Jun 2010 14:41:56 +0000 (07:41 -0700)]
Merge "Make attached threads visible to the GC sooner" into dalvik-dev
Andy McFadden [Fri, 4 Jun 2010 23:52:23 +0000 (16:52 -0700)]
Merge "Trivial formatting fix." into dalvik-dev
Andy McFadden [Fri, 4 Jun 2010 23:51:47 +0000 (16:51 -0700)]
Trivial formatting fix.
Change-Id: I89277db5a2278a9e4d584ffb4b24d5cd77f71a3c
The Android Open Source Project [Fri, 4 Jun 2010 22:38:23 +0000 (15:38 -0700)]
am
7c13ed2a: am
1dd067d9: am
54709cb2: am
bf11852a: merge from open-source master
Merge commit '
7c13ed2afba1abe63f39b0f563978e04e849ae00' into dalvik-dev
* commit '
7c13ed2afba1abe63f39b0f563978e04e849ae00':
Fix for use of UNPREDICTABLE register combination
Jeff Brown [Fri, 4 Jun 2010 22:38:20 +0000 (15:38 -0700)]
am
db00fdd3: am
09eae10c: am
23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken
Merge commit '
db00fdd383809700a01b2a19386f1ca81e94c6f0' into dalvik-dev
* commit '
db00fdd383809700a01b2a19386f1ca81e94c6f0':
Added a new JNI helper for logging exceptions.
Andy McFadden [Wed, 2 Jun 2010 22:37:21 +0000 (15:37 -0700)]
Make attached threads visible to the GC sooner
Threads that are created outside the VM and then attached were
allocating objects (Thread, VMThread, a String for the name) before
they were on the internal thread list. This made for some awkward
moments and required the use of an ALLOC_NO_GC flag.
With this change we now add the thread to the list first, and perform
the object creation afterward. This is saner from the perspective
of the GC, and may allow us to eliminate ALLOC_NO_GC.
As it happens, the places that would care about a null threadObj
(thread dump, get thread name, debugger request for thread list)
already check for it, making this pretty straightforward.
While I was in here I also took some steps to ensure that threadObj
doesn't get rewritten by the copying collector while something is in
the process of examining it. This involved a bit of paranoia in the
thread dump.
For bug
2603988.
Change-Id: Ibf2fdb917618277e75a79df113180f1d7f616e14
The Android Open Source Project [Fri, 4 Jun 2010 21:11:21 +0000 (14:11 -0700)]
am
1dd067d9: am
54709cb2: am
bf11852a: merge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:03:54 +0000 (14:03 -0700)]
am
54709cb2: am
bf11852a: merge from open-source master
The Android Open Source Project [Fri, 4 Jun 2010 21:02:48 +0000 (14:02 -0700)]
am
bf11852a: merge from open-source master
Merge commit '
bf11852aa3b56f1f77841dd0dbb3cc984711d674' into kraken
* commit '
bf11852aa3b56f1f77841dd0dbb3cc984711d674':
Fix for use of UNPREDICTABLE register combination
The Android Open Source Project [Fri, 4 Jun 2010 21:01:00 +0000 (14:01 -0700)]
merge from open-source master
Change-Id: Ic827f3b9a61ba4bfe72606950b6b34a5caf9d9bd
Carl Shapiro [Fri, 4 Jun 2010 17:16:03 +0000 (10:16 -0700)]
Merge "Pin objects in the debug registry hash table." into dalvik-dev
Dave Butcher [Wed, 2 Jun 2010 13:52:21 +0000 (14:52 +0100)]
Fix for use of UNPREDICTABLE register combination
Use of the LDRD instruction form LDRD Rt, Rt2, [Rn, Rm] has restrictions
on the register combinations - specifically if Rt or Rt2 is equal to Rn or
Rm the behaviour is defined as 'UNPREDICTABLE'.
Change-Id: I19834783865e07897cc7012367e698447f023ce6
Carl Shapiro [Fri, 4 Jun 2010 06:01:39 +0000 (23:01 -0700)]
Add a callback driven visitor routine and make verify use it.
This is the first step along the way to ending the proliferation of
one-off object walking routines. This code should supersede similar
code in the mark sweep collector, the copying collector, the hprof
tool, etc.. Once all of its uses have been debugged the routines in
the .c file should be hoisted into the .h file and marked as inline.
Soon, the signature of the visitor will probably have to be converted
to a functor with members specialized to reference type and, in
addition, given an extra parameter for a context structure.
Change-Id: Ib00850f22374c5aca51fa3708304774da90d8bc4
Carl Shapiro [Fri, 4 Jun 2010 07:03:18 +0000 (00:03 -0700)]
Pin objects in the debug registry hash table.
Evidently, these objects are presumed to have stable addresses.
Change-Id: I20ba2adc9b78ac157ba210a8a4d5b2b7355c33fb
Ben Cheng [Thu, 3 Jun 2010 21:48:14 +0000 (14:48 -0700)]
Merge "Check the mprotect() result when initializing the JIT code cache." into dalvik-dev
Jeff Brown [Thu, 3 Jun 2010 21:26:46 +0000 (14:26 -0700)]
am
09eae10c: am
23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken
Jeff Brown [Thu, 3 Jun 2010 21:24:59 +0000 (14:24 -0700)]
am
23971e39: Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken
Jeff Brown [Thu, 3 Jun 2010 21:23:25 +0000 (14:23 -0700)]
Merge "Added a new JNI helper for logging exceptions. Plugged some JNI reference leaks in existing JNI helpers." into kraken
Ben Cheng [Thu, 3 Jun 2010 20:52:42 +0000 (13:52 -0700)]
Check the mprotect() result when initializing the JIT code cache.
Bug:
2690371
Change-Id: I48cb6498d1cdddcbf8386649d02467db5a1306e8
Christopher Tate [Thu, 3 Jun 2010 18:16:00 +0000 (11:16 -0700)]
am
46eba1c4: am
db5e758f: am
97e34d0d: am
c023ae6a: am
962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Merge commit '
46eba1c4a6104cefe138c1c39a46275214690217' into dalvik-dev
* commit '
46eba1c4a6104cefe138c1c39a46275214690217':
Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:10:39 +0000 (11:10 -0700)]
am
db5e758f: am
97e34d0d: am
c023ae6a: am
962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:09:32 +0000 (11:09 -0700)]
am
97e34d0d: am
c023ae6a: am
962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:07:49 +0000 (11:07 -0700)]
am
c023ae6a: am
962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Merge commit '
c023ae6afcdd37b26dd16be43b023a93acc90905' into kraken
* commit '
c023ae6afcdd37b26dd16be43b023a93acc90905':
Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Thu, 3 Jun 2010 18:06:14 +0000 (11:06 -0700)]
am
962f896e: Add /proc/pid/task/tid/schedstat info to thread stack dumps
Merge commit '
962f896e1eeb159a6a2ac7a560708939cbb15575' into froyo-plus-aosp
* commit '
962f896e1eeb159a6a2ac7a560708939cbb15575':
Add /proc/pid/task/tid/schedstat info to thread stack dumps
Christopher Tate [Wed, 2 Jun 2010 23:17:46 +0000 (16:17 -0700)]
Add /proc/pid/task/tid/schedstat info to thread stack dumps
This lets us see whether a usually-blocked thread is actually making
progress in between stack snapshots.
Change-Id: If191627e4572457579d5f330d31bde86b8ce4ec5
Jeff Brown [Wed, 2 Jun 2010 04:07:08 +0000 (21:07 -0700)]
Added a new JNI helper for logging exceptions.
Plugged some JNI reference leaks in existing JNI helpers.
Change-Id: I62213cdae375235f6ee9304ecd8dc3d2b7f58c85
Ben Cheng [Wed, 2 Jun 2010 22:33:51 +0000 (15:33 -0700)]
Include move-result into the same trace as the invoke.
In preparation for method inlining implementation. Example trace:
D/dalvikvm( 708): Compiler: Building trace for fibonacci, offset 0x10
D/dalvikvm( 708): 0x426b6fa8: 0x0016 const-wide/16 v0, (#2), (#0)
D/dalvikvm( 708): 0x426b6fac: 0x009c sub-long v0, v7, v0
D/dalvikvm( 708): 0x426b6fb0: 0x0070 invoke-direct v6, v0, v1
D/dalvikvm( 708): 0x426b6fb6: 0x000b move-result-wide v0, (#0), (#0)
D/dalvikvm( 708): TRACEINFO (3): 0x426b6f88 Lcom/android/unit_tests/PerformanceTests$FibonacciSlow;fibonacci 0x10 8 of 32, 7 blocks
D/dalvikvm( 708): 7 blocks in total
D/dalvikvm( 708): Block 0 (insn 0010 - 0010 empty)
D/dalvikvm( 708): Fallthrough : block 1 (0010)
D/dalvikvm( 708): Block 1 (insn 0010 - 0014)
D/dalvikvm( 708): Taken branch: block 3 (0000)
D/dalvikvm( 708): Fallthrough : block 2 (0017)
D/dalvikvm( 708): Block 2 (insn 0017 - 0017)
D/dalvikvm( 708): Fallthrough : block 4 (0018)
D/dalvikvm( 708): Block 3 (insn 0000 - 0000 empty)
D/dalvikvm( 708): Block 4 (insn 0018 - 0018 empty)
D/dalvikvm( 708): Block 5 (insn 0000 - 0000 empty)
D/dalvikvm( 708): Block 6 (insn 0000 - 0000 empty)
Once implemented the inliner will consume the invoke-direct and
move-result-wide instructions altogether.
Change-Id: I4e0e6283989a468d9edf01cf26f644d2d8d7ec64
The Android Open Source Project [Tue, 1 Jun 2010 17:24:24 +0000 (10:24 -0700)]
merge from master
Change-Id: I99ef0c5f5fcaee5e2cea55449488bae2ce330fb9
Brian Carlstrom [Tue, 1 Jun 2010 17:09:25 +0000 (10:09 -0700)]
Merge "Merge branch 'dalvik-dev'"
Brian Carlstrom [Tue, 1 Jun 2010 16:16:11 +0000 (09:16 -0700)]
Merge branch 'dalvik-dev'
Andy McFadden [Mon, 31 May 2010 04:20:47 +0000 (21:20 -0700)]
am
ead3d06b: am
67e82fb1: Merge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Fri, 21 May 2010 19:20:23 +0000 (12:20 -0700)]
Added EXPORT_PC to "throw" instruction.
For bug
2700761.
Change-Id: I889e59ea35d9cadd99fc884e5b1301a4cf103f93
Brian Carlstrom [Fri, 28 May 2010 22:42:12 +0000 (15:42 -0700)]
Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master
Change-Id: I0c0edb3ebf0d5e040d6bbbf60269fab0deb70ef9
Ben Cheng [Fri, 28 May 2010 22:28:05 +0000 (15:28 -0700)]
Merge "Clean up warnings detected by gcc." into dalvik-dev
Ben Cheng [Fri, 28 May 2010 22:20:08 +0000 (15:20 -0700)]
Clean up warnings detected by gcc.
Also re-enabled the JIT for the ARMv5te target.
Change-Id: I89fd229205e30e6ee92a4933290a7d8dca001232
Carl Shapiro [Fri, 28 May 2010 21:32:32 +0000 (14:32 -0700)]
Merge "Remove unused mark tracking code." into dalvik-dev
Andy McFadden [Thu, 27 May 2010 17:23:41 +0000 (10:23 -0700)]
Atomic/SMP update, part 2. (manual to dalvik-dev)
Updated "generic" quasiatomic implementation to use atomic release store
instead of atomic swap when releasing the lock.
Track change to name of memory barrier.
Change-Id: I229fc2aec8996db07b84f2d1bcfbe4346a810d85
Andy McFadden [Fri, 28 May 2010 20:02:16 +0000 (13:02 -0700)]
am
67e82fb1: Merge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Fri, 28 May 2010 20:00:21 +0000 (13:00 -0700)]
Merge "Atomic/SMP update, part 2." into kraken
Andy McFadden [Thu, 27 May 2010 23:09:04 +0000 (16:09 -0700)]
Branch-to-self is a backward branch.
Teach the verifier to identify branch-to-self as a backward branch,
which makes the instruction a GC point and worthy of a register map.
For bug
2702514.
Change-Id: Id5b26220db8008adbb2b5b7f69894a7704a0b559
buzbee [Fri, 28 May 2010 06:14:32 +0000 (23:14 -0700)]
am
48064d18: am
b1293374: am
a02fe785: am
4d24105a: am
2b469f82: Jit: Fix for
2717275 First JIT bug reported by external developers
Merge commit '
48064d18355ed8845d00707c63007c1292ea69a5' into dalvik-dev
* commit '
48064d18355ed8845d00707c63007c1292ea69a5':
Jit: Fix for
2717275 First JIT bug reported by external developers
android-build SharedAccount [Fri, 28 May 2010 06:14:27 +0000 (23:14 -0700)]
buzbee [Fri, 28 May 2010 06:05:37 +0000 (23:05 -0700)]
am
b1293374: am
a02fe785: am
4d24105a: am
2b469f82: Jit: Fix for
2717275 First JIT bug reported by external developers
android-build SharedAccount [Fri, 28 May 2010 06:05:33 +0000 (23:05 -0700)]
Ben Cheng [Thu, 27 May 2010 23:19:46 +0000 (16:19 -0700)]
Merge "Remove the write permission for the JIT code cache when not needed" into dalvik-dev
Ben Cheng [Mon, 17 May 2010 19:50:33 +0000 (12:50 -0700)]
Remove the write permission for the JIT code cache when not needed
To support the feature, redesigned the predicted chaining mechanism so that the
profile count is shared globally in InterpState.
Bug:
2690371
Change-Id: Ifed427e8b1fa4f6c670f19e0761e45e2d4afdbb6
Dan Bornstein [Thu, 27 May 2010 22:50:44 +0000 (15:50 -0700)]
Merge "Fix two dex file structural verification issues." into dalvik-dev
Dan Bornstein [Thu, 27 May 2010 00:24:05 +0000 (17:24 -0700)]
Fix two dex file structural verification issues.
First, structural verification failed to check for inconsistencies with
the number of arguments to methods compared to the number of registers
declared by those methods.
Second, neither the dexdump nor dexlist tools would run structural
verification.
As an added bonus, I renamed the function that performs byte swapping
and structural verification to be more descriptive about what it
does.
Bug:
2716693
Change-Id: I58794713967f5bea95010084c85efe1f929ce7d1
buzbee [Thu, 27 May 2010 19:39:12 +0000 (12:39 -0700)]
am
a02fe785: am
4d24105a: am
2b469f82: Jit: Fix for
2717275 First JIT bug reported by external developers
buzbee [Thu, 27 May 2010 19:37:16 +0000 (12:37 -0700)]
am
4d24105a: am
2b469f82: Jit: Fix for
2717275 First JIT bug reported by external developers
Merge commit '
4d24105a25ae285c324103843b9859c75e3f1a4c' into kraken
* commit '
4d24105a25ae285c324103843b9859c75e3f1a4c':
Jit: Fix for
2717275 First JIT bug reported by external developers
android-build SharedAccount [Thu, 27 May 2010 19:35:31 +0000 (12:35 -0700)]
buzbee [Thu, 27 May 2010 19:35:14 +0000 (12:35 -0700)]
am
2b469f82: Jit: Fix for
2717275 First JIT bug reported by external developers
Merge commit '
2b469f82df14749c67da43f073fd7a9b6b1ccd74' into froyo-plus-aosp
* commit '
2b469f82df14749c67da43f073fd7a9b6b1ccd74':
Jit: Fix for
2717275 First JIT bug reported by external developers
android-build SharedAccount [Thu, 27 May 2010 19:33:39 +0000 (12:33 -0700)]
am
c0ebbcd5: Merge commit \'
720d1e962e248a30f81c1493081ff4c01e35c839\' into froyo-plus-aosp
Merge commit '
c0ebbcd5341625fbbba594d45ecffdfb83637f41' into kraken
* commit '
c0ebbcd5341625fbbba594d45ecffdfb83637f41':
Disable SSL Session Ticket extension for OpenSSLSocket
android-build SharedAccount [Thu, 27 May 2010 19:30:13 +0000 (12:30 -0700)]
Carl Shapiro [Thu, 27 May 2010 17:56:08 +0000 (10:56 -0700)]
Merge "Remove unused code from the thread scanner." into dalvik-dev
Andy McFadden [Thu, 27 May 2010 17:23:41 +0000 (10:23 -0700)]
Atomic/SMP update, part 2.
Updated "generic" quasiatomic implementation to use atomic release store
instead of atomic swap when releasing the lock.
Track change to name of memory barrier.
Change-Id: Ie6ec37bca6984553f665bd25385210ea6c8e0943
Carl Shapiro [Thu, 27 May 2010 04:13:49 +0000 (21:13 -0700)]
Remove unused mark tracking code.
Change-Id: I5164f0a357b3823db8fb3ee33da953c1bf293674
Carl Shapiro [Thu, 27 May 2010 03:25:22 +0000 (20:25 -0700)]
Merge "Fix three minor issues that prevent the phone from booting." into dalvik-dev
Carl Shapiro [Fri, 21 May 2010 03:22:31 +0000 (20:22 -0700)]
Fix three minor issues that prevent the phone from booting.
* Implement dvmHeapSourceGetLiveBits so we can pre- and post-verify
the heap.
* Add do-nothing methods for manipulating the heap threshold.
* Use the CLZ abstraction for open code on the ARM.
Change-Id: I988a207fba4a61572a3b4896b0e254078f95c333
Carl Shapiro [Thu, 27 May 2010 02:58:17 +0000 (19:58 -0700)]
Remove unused code from the thread scanner.
The affected cases have been migrated to the copying collector where
they are required. The non-moving collector does not need to visit
these roots.
Change-Id: I8b35d63cd8154b7c9f85320959559a718749976b
buzbee [Wed, 26 May 2010 22:57:27 +0000 (15:57 -0700)]
Jit: Fix for
2717275 First JIT bug reported by external developers
The JIT was incorrectly keeping a short value in a floating point
register rather than copying it to a core register before storing.
There was an assert to catch this case, but asserts don't fire in
production builds.
The fix is safe and simple - just exclude this case from the "optimization".
Change-Id: I33767c8a202b6fa36a19d918ac5b914a5e4e4de3
buzbee [Wed, 26 May 2010 21:48:04 +0000 (14:48 -0700)]
Jit: Fix for
2717275 First JIT bug reported by external developers
The JIT was incorrectly keeping a short value in a floating point
register rather than copying it to a core register before storing.
There was an assert to catch this case, but asserts don't fire in
production builds.
The fix is safe and simple - just exclude this case from the "optimization".
Change-Id: I38f1865da11ef3f78213f84967d4737e066b9c68
Carl Shapiro [Wed, 26 May 2010 21:32:00 +0000 (14:32 -0700)]
Remove an unused variable introduced in the last commit.
Change-Id: I699dc158b7c3a84e9ee3a3cc636f8bb122d69a79
Carl Shapiro [Wed, 26 May 2010 01:35:37 +0000 (18:35 -0700)]
Eliminate more unused variables and compiler warnings.
This change also introduces wrappers for condition variable operations
similar to what we have already for mutex operations.
Almost all the remaining warnings are now in the compiler or non-debug
uses of the CHECK_JIT macro.
Change-Id: I9f492f1582a06065e3a52287c7834adddfbefff9
Barry Hayes [Tue, 18 May 2010 16:48:37 +0000 (09:48 -0700)]
Replace the scanObject routines with one derived from Verify.
It seems to be slightly faster this way, as well as more readable.
Change-Id: I92b9c54289c484cb4606f054f258da4a4bef8658