| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The search for optimial value is still ongoing. The current settings are:
v5 v7
JIT profile table 512 2048
JIT code cache 512K 1M
JIT threshold 200 40
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
...which, luckily, was followed by a debug version of the same handler
so everything magically worked anyway. I should buy a lottery ticket today.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
mode."
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |_|/ / / / /
|/| | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This adds the list of referenced classes to the output. Previously it
only emitted fields and methods, so classes that were referenced by type
only (e.g. some dalvik annotation classes) weren't visible.
The XML output now more closely resembles the API files, having
distinct package/class tags. We no longer emit a return type for
constructors.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Cleanup of delayed start - introduce dvmRelativeCondWait in Sync.c.
Additionally, support for deadman timer to start Jit when no screen draws
happen, and to start immediately when running stand-alone.
Fixed bug in assert variant of libdvm - recent MONITOR change had neglected
to add a new type of exit to the exit stats.
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | / / / /
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | | |
Merge commit 'adbe0586957a71d2aa9f100646882dbca1c78f12'
* commit 'adbe0586957a71d2aa9f100646882dbca1c78f12':
android-2.1_r1 snapshot
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Merge commit '217f8ef4c1c151c63382dc0785edd960c233f62e' into eclair-plus-aosp
* commit '217f8ef4c1c151c63382dc0785edd960c233f62e':
android-2.1_r1 snapshot
|
| | |\ \ \ \ \ |
|
| | | |\ \ \ \ \ |
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | |_|_|_|/ / / /
| |/| | | | | | | |
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
TrustCenter Universal CA I"
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
- TC TrustCenter Class 2 CA II
- TC TrustCenter Universal CA I
|
| | | | | | | | | | |
|
| |/ / / / / / / /
|/| | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This increases the size of the "reserved" area, used for handling stack
overflows, from 512 to 768 bytes. There will be a corresponding
reduction in the amount of stack space available to interpreted threads
(which currently default to 12KB).
It turns out 512 bytes isn't quite enough space when class lookup throws
an exception while resolving "catch" block classes during a stack
overflow error.
For bug 2398031.
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
When a stack overflows, Dalvik allows the stack to expand into a
"reserved" area, so that it has enough room to create and initialize the
StackOverflowError object. While the stack is expanded we also do the
search for an appropriate "catch" block, which may require resolving
some exception classes.
As it happens, things go badly when the "catch" resolution throws an
exception. The VM tries to shrink the stack back down after the second
exception is finished, rather than waiting for the initial SOE to
finish. Since we still have some additional frames on the stack, we're
still occupying the "reserved" area, and the VM aborts when it detects
the situation.
This changes the stack cleanup to wait until the SOE is being dealt
with.
For bug 2398031.
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
1) Patching requests for predicted chaining cells (used by virtual/interface
methods) are now batched in a queue and processed when the VM is paused for GC.
2) When the code cache is full the reset operation is also conducted at the
end of GC pauses so this totally eliminates the need for the compiler thread
to issue suspend-all requests. This is a very rare event and when happening it
takes less than 5ms to finish.
3) Change the initial value of the branch in a predicted chaining cell from 0
(ie lsl r0, r0, #0) to 0xe7fe (ie branch to self) so that initializing a
predicted chaining cell doesn't need to suspend all threads. Together with 1)
seeing 20% speedup on some benchmarks.
4) Add TestCompability.c where defining "TEST_VM_IN_ECLAIR := true" in
buildspec.mk will activate dummy symbols needed to run libdvm.so in older
releases.
Bug: 2397689
Bug: 2396513
Bug: 2331313
|
|\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|_|_|/
|/| | | | | | | | |
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The Jit must stop all threads in order to flush the translation cache (and
other tables). Threads which are blocked in a monitor wait cause some
headache here because they effectively hold a references to the translation
cache (though the return address on the native stack). The new model
introduced in this CL is that for the fast path of monitor enter, control
is allowed to resume in the translation cache. However, if we need to do a
heavyweight lock (which may cause us to block) control does not return to the
translation cache but instead bails out to the interpreter. This allows us to
safely clear the code cache even if some threads are in THREAD_MONITOR state.
|
|\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|_|_|/
|/| | | | | | | |
| | | | | | | | | |
callers of this function assign the return value to an unsigned value even though this function returns -1 in the error case. This causes the error checks to succeed in cases where it should otherwise fail. Rather than return -1 on error, I have elected to return 0 instead which just happens to be compatible with all current uses."
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
callers of this function assign the return value to an unsigned value
even though this function returns -1 in the error case. This causes
the error checks to succeed in cases where it should otherwise fail.
Rather than return -1 on error, I have elected to return 0 instead
which just happens to be compatible with all current uses.
|
|\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Currently the test suite isn't wired-in to run automatically. Before
that can happen I need to devise a way for the device to grab the
OASIS test .zip from the Internet (or distribute it with Android).
In the interim the test can be run by hand by manually copying the
test suite to the device ("adb push") and running the test suite's
main method. This approach might be workable in our continuous
build.
Note that the RI does horribly at this test suite - in my run it
reports the following:
FAILURES!!!
Tests run: 3173, Failures: 338, Errors: 730
|
| |_|/ / / / / / /
|/| | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
directly, rather than via a stream.
When I updated DocumentBuilder but not its subclass DocumentBuilderImpl,
some of the assumptions by DocumentBuilderImpl were violated.
|
|\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
I put this in amongst the harmony tests before we started our own little
tree of tests.
|
|/ / / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Adds -verbose:shutdown flag, defaulted to "false". Cuts out most of the
log noise associated with shell commands.
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
jessewilson reverted an upstream change (https://issues.apache.org/jira/browse/HARMONY-4623)
that caused an RI incompatibility. Although it seems like the RI behavior is
wrong, the poor design of BigDecimal.equals (which checks both value *and*
scale) probably means we should remain compatible.
This patch changes the test expectation to match the RI's behavior and adds
a comment in both the code and its test explaining that this is deliberate.
|
|\ \ \ \ \ \ \ \ \ \
| |/ / / / / / / / /
|/| | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Add checks for debug & trace mode to avoid re-entering Jit'd code.
This is the conversative solution - we'll eventually want the Jit
to integrate support for tracing and debug into Jit'd code.
|
|\ \ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
One of these tests still doesn't pass, but for a different reason know the
known failure is fixed, so I've removed that test's annotation too:
16) test_parseLjava_io_InputStreamLorg_xml_sax_helpers_DefaultHandlerLjava_lang_String(tests.api.javax.xml.parsers.SAXParserTest)junit.framework.AssertionFailedError
at tests.api.javax.xml.parsers.SAXParserTest.test_parseLjava_io_InputStreamLorg_xml_sax_helpers_DefaultHandlerLjava_lang_String(SAXParserTest.java:680)
at java.lang.reflect.Method.invokeNative(Native Method)
at com.google.coretests.CoreTestRunnable.runInternally(CoreTestRunnable.java:129)
at com.google.coretests.CoreTestRunnable.run(CoreTestRunnable.java:92)
at com.google.coretests.CoreTestResult.runProtected(CoreTestResult.java:148)
at com.google.coretests.CoreTestSuite.run(CoreTestSuite.java:278)
at com.google.coretests.CoreTestRunner.doRun(CoreTestRunner.java:141)
at com.google.coretests.CoreTestRunner.start(CoreTestRunner.java:317)
at com.google.coretests.CoreTestRunner.main(CoreTestRunner.java:110)
at com.google.coretests.Main.main(Main.java:45)
at dalvik.system.NativeStart.main(Native Method)
|
|\ \ \ \ \ \ \ \ \ \ \
| |/ / / / / / / / / /
|/| | | | | | | | | | |
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
"Exception is caught when Exception is not thrown in java.text.DecimalFormat$1.run()"
Since it will always fail anyway, because those fields don't exist, let's
just junk it.
It turns out that getInternalField is similarly useless, so junk it too.
I've tidied the whole readObject method so it's somewhat readable now.
I also fixed this FindBugs warning in passing:
"Method java.text.DecimalFormat.parse(String, ParsePosition) invokes inefficient
new Long(long) constructor; use Long.valueOf(long) instead"
|
|\ \ \ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / / /
| |/| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
People seem tempted to skip past the introductory material and jump
straight to the meaty bits, but the introduction tells you some
important things (like how you need to stop/start the framework).
|
|\ \ \ \ \ \ \ \ \ \ \
| |_|/ / / / / / / / /
|/| | | | | | | | | | |
|
| |/ / / / / / / / /
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This increases the maximum stack depth in the DDMS "allocation tracker"
tab from 8 to 16. Adds about 32KB to the static size, plus a variable
amount as the data is prepared for transmission to DDMS.
For bug 2345675.
|
|\ \ \ \ \ \ \ \ \ \ |
|
| |/ / / / / / / / /
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This refers to Froyo as "2.x", because nobody seems to know what the
actual numbering will be.
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
The libcore "core" and "core-test" builds are now warning-free. (For Java.)
|
| | | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \ \ |
|
| |/ / / / / / / / / |
|