OSDN Git Service
Barry Hayes [Mon, 22 Feb 2010 17:39:10 +0000 (09:39 -0800)]
Fix build breakage.
the "HeapChunk" abstraction was removed almost everywhere; but not here
until now.
Barry Hayes [Mon, 22 Feb 2010 17:13:28 +0000 (09:13 -0800)]
Merge " Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the memory of freed objects." into dalvik-dev
Elliott Hughes [Wed, 17 Feb 2010 23:51:36 +0000 (15:51 -0800)]
Merge "HTTP headers should be case-insensitive but case-preserving." into dalvik-dev
Barry Hayes [Tue, 2 Feb 2010 22:07:37 +0000 (14:07 -0800)]
Add the "-Xgc:[no]overwritefree" flags. When set, the GC will clobber the
memory of freed objects.
Carl Shapiro [Wed, 17 Feb 2010 22:52:59 +0000 (14:52 -0800)]
Merge "Eliminate the heap chunk abstraction. This temporarily breaks the hprof feature that allows stack traces to be associated with objects." into dalvik-dev
Carl Shapiro [Wed, 17 Feb 2010 01:40:19 +0000 (17:40 -0800)]
Eliminate the heap chunk abstraction. This temporarily breaks the
hprof feature that allows stack traces to be associated with objects.
Ben Cheng [Wed, 17 Feb 2010 20:47:35 +0000 (12:47 -0800)]
Merge "Detect system-wide safe mode and configure the VM accordingly." into dalvik-dev
Ben Cheng [Mon, 15 Feb 2010 00:17:36 +0000 (16:17 -0800)]
Detect system-wide safe mode and configure the VM accordingly.
Use pthread_cond_wait instead of timed wait for the system_server process to
wait on the go-ahead JIT signal. If the phone is booted under system-wide safe
mode, such signal will never come so all VM instances (including the system
server) will run in the interpreter-only mode.
Bug:
2267590
Elliott Hughes [Wed, 17 Feb 2010 20:18:59 +0000 (12:18 -0800)]
HTTP headers should be case-insensitive but case-preserving.
Bug: http://code.google.com/p/android/issues/detail?id=6684
Carl Shapiro [Wed, 17 Feb 2010 20:15:19 +0000 (12:15 -0800)]
Merge "Densely allocate mspaces. New heaps are started on the page following the break of the previously allocated heap. In addition, we shrink the reported size of the previous object bitmap so it covers only the committed range of the heap. We now separately track the size of the bitmap virtual memory reservation so we may unmap it all at shutdown time." into dalvik-dev
Bill Buzbee [Tue, 16 Feb 2010 22:40:01 +0000 (14:40 -0800)]
Jit: Monitor exit, possible fix for Issue
2396073
Two problems with monitor-exit:
1. The Jit code wasn't checking for exception thrown following
unlocks of fat locks using dvmUnlockObject().
2. The mterp interpreter unlock code branched to handle exceptions
thrown during dvmUnlockObject() with the wrong dalvik PC (the
dPC of the unlock, rather than the instruction following the unlock).
Similar issue with the x86 interpreter fixed. Also, deleted armv7-a
MONITOR_ENTER template, which turned out to be identical to the armv5te
one.
Elliott Hughes [Wed, 17 Feb 2010 00:06:37 +0000 (16:06 -0800)]
Fix FindBugs' "high" warnings about java.lang.Class.
Carl Shapiro [Mon, 15 Feb 2010 02:40:47 +0000 (18:40 -0800)]
Densely allocate mspaces. New heaps are started on the page following
the break of the previously allocated heap. In addition, we shrink
the reported size of the previous object bitmap so it covers only the
committed range of the heap. We now separately track the size of the
bitmap virtual memory reservation so we may unmap it all at shutdown
time.
Carl Shapiro [Mon, 15 Feb 2010 07:11:47 +0000 (23:11 -0800)]
Eliminate unused variable warnings in the alloc code. In the places
where unused attributes have been added, arguably, the return code
should be passed up to the caller or, if the return code indicates an
error, we should fast-fail.
Elliott Hughes [Sat, 13 Feb 2010 03:52:42 +0000 (19:52 -0800)]
Merge "Fix a few of our FindBugs "high" warnings." into dalvik-dev
Elliott Hughes [Sat, 13 Feb 2010 02:10:26 +0000 (18:10 -0800)]
Fix a few of our FindBugs "high" warnings.
RuleBasedBreakIterator was breaking the equals/hashCode contract.
Various classes were calling toString on arrays, which isn't very useful.
GregorianCalendar was missing a null/instanceof check. (FindBugs complained about
the former, but the super.equals would actually take care of that. The lack of
the explicit "instanceof" did mean that we could throw ClassCastException if you
had a Calendar that wasn't a GregorianCalendar, though. [Not easily testable,
and I hope we'll replace our calendars with ICU4J's before we actually have
another Calendar subclass.])
Collator's cache was broken, but luckily never had anything inserted into it
anyway.
Elliott Hughes [Sat, 13 Feb 2010 01:49:41 +0000 (17:49 -0800)]
Merge "Use one method to create a Locale from a String." into dalvik-dev
Elliott Hughes [Sat, 13 Feb 2010 00:51:53 +0000 (16:51 -0800)]
Throw IllegalArgumentException if Currency.getInstance is given an invalid currency code.
This fixes an existing harmony DecimalFormatSymbolsTest failure, but I've added
an explicit test for clarity (and to reduce the likelihood of regression).
Elliott Hughes [Fri, 12 Feb 2010 23:33:53 +0000 (15:33 -0800)]
Use one method to create a Locale from a String.
Bug:
2392157
Elliott Hughes [Fri, 12 Feb 2010 21:43:14 +0000 (13:43 -0800)]
Merge "Remove some potential test flakiness." into dalvik-dev
Elliott Hughes [Fri, 12 Feb 2010 19:23:05 +0000 (11:23 -0800)]
Remove some potential test flakiness.
Bug:
2441548
Carl Shapiro [Fri, 12 Feb 2010 19:07:52 +0000 (11:07 -0800)]
Merge "Do not include assert.h in places where it may shadow the definition provided by Common.h if WITH_DALVIK_ASSERTS is defined. The include from HeapBitmap.h was notable as it redefined the Dalvik friendly assert macro with the useless libc macro across all of the GC sources." into dalvik-dev
Dan Bornstein [Fri, 12 Feb 2010 18:04:14 +0000 (10:04 -0800)]
Use HAVE_ANDROID_OS to conditionally include files on a device target.
Carl Shapiro [Fri, 12 Feb 2010 06:36:02 +0000 (22:36 -0800)]
Do not include assert.h in places where it may shadow the definition
provided by Common.h if WITH_DALVIK_ASSERTS is defined. The include
from HeapBitmap.h was notable as it redefined the Dalvik friendly
assert macro with the useless libc macro across all of the GC sources.
Ben Cheng [Thu, 11 Feb 2010 23:03:00 +0000 (15:03 -0800)]
Use ashmem to create the JIT code cache.
Ben Cheng [Thu, 11 Feb 2010 01:21:39 +0000 (17:21 -0800)]
Free memory associated with the trace descriptor of ALL dropped JIT work orders
To further reduce the memory consumption only enable the method vs trace
compile size stats when WITH_JIT_TUNING is configured.
Ben Cheng [Fri, 12 Feb 2010 00:01:57 +0000 (16:01 -0800)]
Merge "Support per-application switch to execute the VM in safe mode." into dalvik-dev
Bill Buzbee [Thu, 11 Feb 2010 22:04:53 +0000 (14:04 -0800)]
Jit: Minor codegen tuning.
Carl Shapiro [Thu, 11 Feb 2010 22:20:39 +0000 (14:20 -0800)]
Merge "Allocate a contiguous region of virtual memory to be subdivided among the various heaps managed by the garbage collector. Because we cannot tell how far the break has been advanced by morecore, we over allocate virtual memory and grain each heap on a multiple of the maximum heap size. If we could reckon the position of the break, we could allocate just as many pages as required. This requires exporting more state from mspace.c, a refinement I will reserve for a future change list." into dalvik-dev
Carl Shapiro [Wed, 10 Feb 2010 00:26:30 +0000 (16:26 -0800)]
Allocate a contiguous region of virtual memory to be subdivided among
the various heaps managed by the garbage collector. Because we cannot
tell how far the break has been advanced by morecore, we over allocate
virtual memory and grain each heap on a multiple of the maximum heap
size. If we could reckon the position of the break, we could allocate
just as many pages as required. This requires exporting more state
from mspace.c, a refinement I will reserve for a future change list.
jeffhao [Wed, 10 Feb 2010 18:51:02 +0000 (10:51 -0800)]
Added LDMIA/STMIA support to Self Verification mode.
Ben Cheng [Tue, 9 Feb 2010 00:03:42 +0000 (16:03 -0800)]
Support per-application switch to execute the VM in safe mode.
This is the implementation on the VM side to consume the android:safeMode=true
attribute and force the application to run in interpreter-only mode (the
current safe mode).
Bug:
2267583
jeffhao [Tue, 9 Feb 2010 22:55:47 +0000 (14:55 -0800)]
Added missing break statements and improved debugging in SelfVerification.
Bill Buzbee [Tue, 9 Feb 2010 19:16:15 +0000 (11:16 -0800)]
Jit: Phase 1 of register utility cleanup/rewrite - the great renaming
Renaming of all of those register utilities which used to be local because
of our include mechanism to the standard dvmCompiler prefix scheme.
jeffhao [Fri, 5 Feb 2010 23:08:23 +0000 (15:08 -0800)]
Cleaned up uninitialized variable use warnings in Self Verification mode.
Ben Cheng [Tue, 9 Feb 2010 04:57:59 +0000 (20:57 -0800)]
Free the memory associated with the trace descriptor of dropped JIT work orders.
Ben Cheng [Fri, 5 Feb 2010 00:15:59 +0000 (16:15 -0800)]
Enable JIT parameters to be initialized in an architecture dependent way.
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
Bill Buzbee [Tue, 9 Feb 2010 01:08:15 +0000 (17:08 -0800)]
Jit: Startup/Shutdown cleanup
A legacy of early parallel Jit development was separate Startup & Shutdown
code for the interpreter half of the jit (dvmJitStartup/dvmJitShutdown)
and the compiler half (dvmCompilerStartup/dvmCompilerShutdown). This cl
eliminates the dvmJit pair. Additionally, guard coded added to the
framework callback to return immediately if the Jit isn't active.
Bill Buzbee [Mon, 8 Feb 2010 18:41:32 +0000 (10:41 -0800)]
Jit: Remove references to interpState from C interpreter
Fix for Issue
2157987:
Eventual isssue with interpState->jitState in <dalvik/vm/mterp/c/header.c
Elliott Hughes [Sat, 6 Feb 2010 01:36:23 +0000 (17:36 -0800)]
Fix a bug I introduced to SimpleTimeZone with my Calendar.setTimeZone fix.
Our implementations of SimpleTimeZone and Calendar became mutually recursive
for custom time zones when I changed GregorianCalendar.computeFields to use
TimeZone.inDaylightTime --- SimpleTimeZone's implementation of inDaylightTime
creates a GregorianCalendar leading to a stack overflow looking something
like this...
at java.util.SimpleTimeZone.inDaylightTime(SimpleTimeZone.java:599)
at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:595)
at java.util.Calendar.complete(Calendar.java:819)
at java.util.Calendar.setTimeInMillis(Calendar.java:1319)
at java.util.GregorianCalendar.<init>(GregorianCalendar.java:339)
at java.util.GregorianCalendar.<init>(GregorianCalendar.java:325)
at java.util.SimpleTimeZone.inDaylightTime(SimpleTimeZone.java:599)
I've cut the knot by introducing "Grego" from ICU4J, and rewriting our
SimpleTimeZone.inDaylightTime in the style of ICU4J's implementation.
Maybe we'll be using the ICU4J calendar implementation sooner than I thought!
Bill Buzbee [Sat, 6 Feb 2010 00:46:20 +0000 (16:46 -0800)]
Merge "JIT: Replace missing ending comment marker MONITOR_ENTER template" into dalvik-dev
Bill Buzbee [Sat, 6 Feb 2010 00:08:38 +0000 (16:08 -0800)]
JIT: Replace missing ending comment marker MONITOR_ENTER template
...which, luckily, was followed by a debug version of the same handler
so everything magically worked anyway. I should buy a lottery ticket today.
Elliott Hughes [Sat, 6 Feb 2010 00:44:59 +0000 (16:44 -0800)]
Merge "Track upstream fixes to two broken tests." into dalvik-dev
Bill Buzbee [Fri, 5 Feb 2010 00:09:55 +0000 (16:09 -0800)]
Jit: Start the Jit when framework signals on first screen draw
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.
Carl Shapiro [Fri, 5 Feb 2010 03:12:55 +0000 (19:12 -0800)]
Eliminate the post-zygote heap and reuse the zygote allocation heap
for application allocations. Previously, applications were given
their own heap separate from the zygote. However, the zygote never
allocates more than 10s of objects most of which quickly become
garbage. After an application fork, these objects are reclaimed,
dirtying the pages they and their malloc structures reside on. This
is a further win for the GC as it results in one fewer mspace to
considered for range checks and bitmap traversals.
Elliott Hughes [Fri, 5 Feb 2010 21:51:27 +0000 (13:51 -0800)]
Track upstream fixes to two broken tests.
Elliott Hughes [Fri, 5 Feb 2010 08:03:03 +0000 (00:03 -0800)]
Fix accidental API pollution in java.util.zip.
Package-private interface ZipConstants turns out to be implemented by
all the public Zip* classes in the package, so they can uselessly
expose duplicate copies of the constants. This means I can't add my
own constants there because they'll leak.
This didn't break the build because we lose the "implements ZipConstants"
and ZipConstants.class somewhere around the apicheck part of the build.
See http://b/
2421864 for that.
Anyway, let's mop up the spill before anyone can see it...
Elliott Hughes [Fri, 5 Feb 2010 06:52:56 +0000 (22:52 -0800)]
Merge "Fix decoding of filenames in zip files, when read by ZipFile." into dalvik-dev
Elliott Hughes [Fri, 5 Feb 2010 01:44:29 +0000 (17:44 -0800)]
Fix decoding of filenames in zip files, when read by ZipFile.
Java always writes UTF-8 filenames in zip files, but harmony cunningly
always reads them back as ISO-8859-1. Fix that, and also set the flag
that says "these filenames are UTF-8" (the RI will do this from Java 7
on).
Note that this patch doesn't actually touch ZipFile because the bug is
in the package-private ZipEntry constructor that's used by
ZipFile.readCentralDirectory.
Bug: http://code.google.com/p/android/issues/detail?id=4690
jeffhao [Wed, 3 Feb 2010 18:24:05 +0000 (10:24 -0800)]
Made Self Verification mode's memory interface less intrusive.
Elliott Hughes [Thu, 4 Feb 2010 22:40:56 +0000 (14:40 -0800)]
Merge "Minimal fix for Calendar.setTimeZone." into dalvik-dev
Elliott Hughes [Thu, 4 Feb 2010 21:57:51 +0000 (13:57 -0800)]
Minimal fix for Calendar.setTimeZone.
The interpretation of Calendar's competing member variables when the time,
time zone, and fields[] don't agree is confusing, and led to
Calendar.setTimeZone having no effect. I've improved the documentation
based on my reverse-engineering and fixed this bug. I noticed a lot of
other code that looks incorrect though, and I've raised http://b/
2419810
suggesting that we switch to icu4j's calendars in the longer term.
Bug: http://code.google.com/p/android/issues/detail?id=6184
Bill Buzbee [Thu, 4 Feb 2010 02:13:57 +0000 (18:13 -0800)]
Jit: Fix deadlock in method tracing.
Ben Cheng [Wed, 27 Jan 2010 00:46:15 +0000 (16:46 -0800)]
Fix performance issues related to chaining and unchaining.
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
Elliott Hughes [Thu, 4 Feb 2010 00:40:41 +0000 (16:40 -0800)]
Merge "Remove obviously bogus @KnownFailure annotations." into dalvik-dev
Bill Buzbee [Thu, 4 Feb 2010 00:02:36 +0000 (16:02 -0800)]
Merge "Jit: Rework monitor enter/exit to simplify thread suspension" into dalvik-dev
Elliott Hughes [Thu, 4 Feb 2010 00:02:33 +0000 (16:02 -0800)]
Remove obviously bogus @KnownFailure annotations.
We've already agreed @KnownFailure Must Die (to be replaced by expectations for
DalvikRunner), but some are -- I think -- obviously in need of investigation.
This patch removes @KnownFailure for all cases where the reason looks bogus.
I've left the @KnownFailure annotations in cases where I it looks "reasonable"
in that we simply haven't implemented the functionality (pack200, say), and
a few other cases. Those should probably be done in a separate patch that adds
expectations at the same time.
But these ones, I think, all need investigating. (There's a scary number of
Arabic-related bugs in here, given that we're supposed to be shipping Arabic
in froyo.)
Elliott Hughes [Wed, 3 Feb 2010 23:23:07 +0000 (15:23 -0800)]
Remove a workaround for an openssl bug that's been fixed upstream.
The >= versus > bug was fixed in openssl somewhere between .98g and .98k (we
don't have _all_ versions conveniently lying around), and our removal of
the disjunct was irrelevant. Call the now-correct upstream code instead of
manually inlining and hacking it.
Also rename BN_lshift to BN_shift, since it handles both left and right shifts.
Bill Buzbee [Tue, 2 Feb 2010 19:04:33 +0000 (11:04 -0800)]
Jit: Rework monitor enter/exit to simplify thread suspension
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.
Elliott Hughes [Wed, 3 Feb 2010 20:42:27 +0000 (12:42 -0800)]
Fix two compiler warnings.
Signed/unsigned comparison in "File.cpp", and && and || without parentheses
in "OpenSSLSocketImpl.cpp". There's another signed/unsigned comparison in
"ifaddrs-android.h" but that isn't fixable (http://b/
2417132), which is
going to stand in the way of turning on -Werror.
Elliott Hughes [Wed, 3 Feb 2010 19:14:01 +0000 (11:14 -0800)]
Remove RuleBasedNumberFormat from our icu4jni fork, since we don't need it.
This is ICU API not used by Java, so there's no point pretending to maintain it.
Bug: http://b/
2377457
Elliott Hughes [Wed, 3 Feb 2010 07:06:12 +0000 (23:06 -0800)]
Silence "note: the mangling of 'va_list' has changed in GCC 4.4".
Not strictly necessary for turning on -Werror for libcore, but worth doing
anyway.
Jesse Wilson [Tue, 2 Feb 2010 20:48:06 +0000 (12:48 -0800)]
Merge "A new test suite for our XSLT transforms."
Jesse Wilson [Tue, 2 Feb 2010 02:33:00 +0000 (18:33 -0800)]
A new test suite for our XSLT transforms.
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
Jesse Wilson [Tue, 2 Feb 2010 19:18:33 +0000 (11:18 -0800)]
Restore our ability to parse an XML Document given a File argument
directly, rather than via a stream.
When I updated DocumentBuilder but not its subclass DocumentBuilderImpl,
some of the assumptions by DocumentBuilderImpl were violated.
Elliott Hughes [Tue, 2 Feb 2010 17:02:51 +0000 (09:02 -0800)]
Merge "Move a test I wrote under our wing."
Andy McFadden [Tue, 2 Feb 2010 00:56:53 +0000 (16:56 -0800)]
Reduce VM shutdown verbosity.
Adds -verbose:shutdown flag, defaulted to "false". Cuts out most of the
log noise associated with shell commands.
Elliott Hughes [Tue, 2 Feb 2010 03:45:41 +0000 (19:45 -0800)]
Move a test I wrote under our wing.
I put this in amongst the harmony tests before we started our own little
tree of tests.
Elliott Hughes [Tue, 2 Feb 2010 02:19:28 +0000 (18:19 -0800)]
Add a missing "static", found by FindBugs.
Elliott Hughes [Tue, 2 Feb 2010 01:35:21 +0000 (17:35 -0800)]
Merge "Fix BigDecimalTest.test_stripTrailingZero."
Elliott Hughes [Tue, 2 Feb 2010 00:25:40 +0000 (16:25 -0800)]
Fix BigDecimalTest.test_stripTrailingZero.
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.
Bill Buzbee [Tue, 2 Feb 2010 00:14:52 +0000 (16:14 -0800)]
Merge "Jit: MethodTrace + Jit fix"
Elliott Hughes [Tue, 2 Feb 2010 00:08:02 +0000 (16:08 -0800)]
Merge "Remove @KnownFailure from tests that now pass."
Elliott Hughes [Tue, 2 Feb 2010 00:07:42 +0000 (16:07 -0800)]
Merge "FindBugs didn't like setInternalField, and neither do I."
Elliott Hughes [Mon, 1 Feb 2010 23:38:16 +0000 (15:38 -0800)]
Remove @KnownFailure from tests that now pass.
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)
Elliott Hughes [Mon, 1 Feb 2010 23:32:27 +0000 (15:32 -0800)]
FindBugs didn't like setInternalField, and neither do I.
"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"
Andy McFadden [Mon, 1 Feb 2010 23:12:03 +0000 (15:12 -0800)]
Merge "Minor clarification."
Andy McFadden [Mon, 1 Feb 2010 22:39:21 +0000 (14:39 -0800)]
Minor clarification.
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).
Bill Buzbee [Mon, 1 Feb 2010 02:53:15 +0000 (18:53 -0800)]
Jit: MethodTrace + Jit fix
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.
Andy McFadden [Mon, 1 Feb 2010 22:54:05 +0000 (14:54 -0800)]
Merge "Bump up the max stack depth."
Andy McFadden [Mon, 1 Feb 2010 22:32:35 +0000 (14:32 -0800)]
Bump up the max stack depth.
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.
Andy McFadden [Mon, 1 Feb 2010 20:33:39 +0000 (12:33 -0800)]
Merge "Update with froyo change."
Elliott Hughes [Mon, 1 Feb 2010 19:40:36 +0000 (11:40 -0800)]
Fix "unmappable character for ascii" warnings in libcore tests.
The libcore "core" and "core-test" builds are now warning-free. (For Java.)
Elliott Hughes [Mon, 1 Feb 2010 19:14:45 +0000 (11:14 -0800)]
Fix varargs warnings in libcore tests.
Elliott Hughes [Mon, 1 Feb 2010 19:13:46 +0000 (11:13 -0800)]
Merge "Fix warnings in the new XML code."
Elliott Hughes [Mon, 1 Feb 2010 18:40:34 +0000 (10:40 -0800)]
Fix warnings in the new XML code.
Andy McFadden [Mon, 1 Feb 2010 18:24:39 +0000 (10:24 -0800)]
Update with froyo change.
This refers to Froyo as "2.x", because nobody seems to know what the
actual numbering will be.
Elliott Hughes [Sat, 30 Jan 2010 05:32:17 +0000 (21:32 -0800)]
Fix fallback in Currency.getSymbol(Locale).
If ICU doesn't have any localized symbol for a currency, we're supposed to
return the currency code, not null.
I introduced this bug in my recent changes. The Currency tests don't find it,
but DecimalFormatTest.test_setCurrencyLjava_util_Currency does, by accident.
I've added an explicit test.
Elliott Hughes [Sat, 30 Jan 2010 02:28:23 +0000 (18:28 -0800)]
Fix more harmony tests.
"HMG" means "heure du méridien de Greenwich" to the French. ICU thinks --
and the web seems to agree -- that the French actually say UTC instead.
(And you'd hope so, after it was called UTC instead of the more sensible UCT
just to keep them happy!) The RI thinks the French say "PST" rather than
"UTC-08:00", but that's hard to believe, and means that this test was never
testing RI compatibility anyway.
Relatedly, ICU thinks that "heure normale du Pacifique" is more French than
"Heure normale du Pacifique", and who am I to argue?
Fixing these turns up a real bug in TimeZone; this patch contains a fix to
the exception thrown by the test case, but not a fix for the bug (which is
overflow in inDaylightTime for the year
292278994, so there's plenty of
time to fix that one).
Elliott Hughes [Sat, 30 Jan 2010 01:49:30 +0000 (17:49 -0800)]
Merge "Fix all the harmony java.util.Formatter tests."
Elliott Hughes [Sat, 30 Jan 2010 01:28:06 +0000 (17:28 -0800)]
Fix all the harmony java.util.Formatter tests.
ICU thinks that German short weekday names should be "So." et seq rather than
"So". This brings us into line with frameworks/base, which I'm depressed to find
has its own copy of the CLDR data in XML form (and its own date/time
formatters).
Also fix TestEnvironment to not clobber "user.name", which we need in order to
set our expectations in cases where being root affects what we can/can't do.
(This also fixes a few other harmony tests.)
Jesse Wilson [Sat, 30 Jan 2010 01:27:24 +0000 (17:27 -0800)]
Merge "Fixing a critical regression in our SAX parsing."
Jesse Wilson [Sat, 30 Jan 2010 01:06:44 +0000 (17:06 -0800)]
Fixing a critical regression in our SAX parsing.
We weren't correctly covering the case where namespaces were off, but
elements contained namespaces. See bug
2400596.
Andy McFadden [Sat, 30 Jan 2010 00:33:14 +0000 (16:33 -0800)]
Merge "Add support for streaming hprof dumps."
Brian Carlstrom [Fri, 29 Jan 2010 23:50:24 +0000 (15:50 -0800)]
Merge "Change DalvikRunner to use newly added OptionParser."
Brian Carlstrom [Fri, 29 Jan 2010 18:51:56 +0000 (10:51 -0800)]
Change DalvikRunner to use newly added OptionParser.
--skip-clean is now --no-clean
--java-home now defaults to 1.5
--mode is now used to specify to run on host's java-home
DalvikRunner page examples are updated with new --mode and --java-home
Fixes junit tests to work on host by using changing classpath to be absolute paths
Some minor scaffolding to prepare for running tests within an android.app.Activity.
(Patchset 2 adds default --java-home location to usage output)
(Patchset 3 address reviewer comments, mostly newbie style issues)
(Patchset 4 address enh OptionParser issues, adds short/byte as well)
(Patchset 5 address enh OptionParser issues, work with "java" from PATH, change deviceRunnerDir to File)
Carl Shapiro [Fri, 29 Jan 2010 23:33:55 +0000 (15:33 -0800)]
Merge "Remove an obsolete assertion."
Elliott Hughes [Fri, 29 Jan 2010 22:57:57 +0000 (14:57 -0800)]
Merge "Change NumberFormatTest to match ICU's behavior."
Bill Buzbee [Fri, 29 Jan 2010 22:52:18 +0000 (14:52 -0800)]
Merge "Jit: Fix for [Issue
2406862] Compiler thread preventing VM from shutting down"
Elliott Hughes [Fri, 29 Jan 2010 22:02:10 +0000 (14:02 -0800)]
Change NumberFormatTest to match ICU's behavior.
ICU uses a non-breaking space after the euro sign in its currency formats,
where the RI uses ASCII space. ICU's behavior seems more reasonable (to
the extent that any kind of space after a currency symbol is reasonable).
Also uncomment the Arabic tests --- I fixed right-to-left number formats
a few weeks ago.