OSDN Git Service

android-x86/dalvik.git
14 years agoUpdate the hash state bits when an identity hash code is computed.
Carl Shapiro [Thu, 14 Jan 2010 06:07:50 +0000 (22:07 -0800)]
Update the hash state bits when an identity hash code is computed.

14 years agoMerge "Remove expired root CAs: - IPS SERVIDORES/emailAddress=ips@mail.ips.es - Secur...
Nagendra Modadugu [Wed, 20 Jan 2010 22:12:44 +0000 (14:12 -0800)]
Merge "Remove expired root CAs: - IPS SERVIDORES/emailAddress=ips@mail.ips.es - Secure Server Certification Authority"

14 years agoRemove expired root CAs:
Nagendra Modadugu [Wed, 20 Jan 2010 21:48:49 +0000 (13:48 -0800)]
Remove expired root CAs:
- IPS SERVIDORES/emailAddress=ips@mail.ips.es
- Secure Server Certification Authority

14 years agoMerge "Add StartCom CA certificates: - StartCom Certification Authority - StartCom...
Nagendra Modadugu [Wed, 20 Jan 2010 21:29:37 +0000 (13:29 -0800)]
Merge "Add StartCom CA certificates: - StartCom Certification Authority - StartCom Extended Validation Server CA"

14 years agoAdd StartCom CA certificates:
Nagendra Modadugu [Wed, 20 Jan 2010 20:48:55 +0000 (12:48 -0800)]
Add StartCom CA certificates:
- StartCom Certification Authority
- StartCom Extended Validation Server CA

14 years agoMerge "Add two Verisign Root CA certificates: - VeriSign Class 3 Extended Validation...
Nagendra Modadugu [Wed, 20 Jan 2010 20:37:39 +0000 (12:37 -0800)]
Merge "Add two Verisign Root CA certificates: - VeriSign Class 3 Extended Validation SSL SGC CA - VeriSign Class 3 Public Primary Certification Authority - G5"

14 years agoAdd two Verisign Root CA certificates:
Nagendra Modadugu [Wed, 20 Jan 2010 20:26:54 +0000 (12:26 -0800)]
Add two Verisign Root CA certificates:
- VeriSign Class 3 Extended Validation SSL SGC CA
- VeriSign Class 3 Public Primary Certification Authority - G5

14 years agoTemporarily disable code cache reset.
Ben Cheng [Wed, 20 Jan 2010 20:03:51 +0000 (12:03 -0800)]
Temporarily disable code cache reset.

14 years agoMerge "Eliminate unused variables."
Carl Shapiro [Wed, 20 Jan 2010 04:18:59 +0000 (20:18 -0800)]
Merge "Eliminate unused variables."

14 years agoEliminate unused variables.
Carl Shapiro [Wed, 20 Jan 2010 04:02:22 +0000 (20:02 -0800)]
Eliminate unused variables.

14 years agoMerge "Scrubbing some jtreg bugs."
Jesse Wilson [Wed, 20 Jan 2010 01:16:34 +0000 (17:16 -0800)]
Merge "Scrubbing some jtreg bugs."

14 years agoScrubbing some jtreg bugs.
Jesse Wilson [Wed, 20 Jan 2010 00:57:54 +0000 (16:57 -0800)]
Scrubbing some jtreg bugs.

14 years agoOne true way to query "java.net.preferIPv6Addresses".
Elliott Hughes [Tue, 19 Jan 2010 23:29:02 +0000 (15:29 -0800)]
One true way to query "java.net.preferIPv6Addresses".

Also stop querying and passing this boolean to code that doesn't care. (We
sort our InetAddress[]s appropriately, so most code doesn't need to worry
about this.)

Bug: http://code.google.com/p/android/issues/detail?id=5903

14 years agoRewrite InetAddress' DNS cache.
Elliott Hughes [Sat, 16 Jan 2010 02:25:27 +0000 (18:25 -0800)]
Rewrite InetAddress' DNS cache.

Replace harmony's two 5-element linked lists with a single 512-element
LinkedHashMap. Greatly reduce the time we spend under locks (and no network
I/O is done under a lock any more!). Take advantage of various properties
of how the cache is used to avoid having to do much explicit work to handle
expiry.

I've also optimized the usual no-SecurityManager/no custom system properties
configuring cache TTLs case (without making the slow path much slower than it
already was).

I've also updated the native method names to correspond to the C functions
they're really wrapping (rather than completely different IPv4-only ones
they probably used to wrap long ago).

I've also improved the InetAddress documentation.

Bug: 2320435

14 years agoMerge "Fix chaining offset mis-calculation for translations w/ large switch statements."
Ben Cheng [Fri, 15 Jan 2010 23:59:29 +0000 (15:59 -0800)]
Merge "Fix chaining offset mis-calculation for translations w/ large switch statements."

14 years agoFix chaining offset mis-calculation for translations w/ large switch statements.
Ben Cheng [Fri, 15 Jan 2010 23:29:33 +0000 (15:29 -0800)]
Fix chaining offset mis-calculation for translations w/ large switch statements.

Bug: 2369821

There are 12 bytes of additional code after the 65th chaining cell. So if a
switch statement with more than that many cases is translated by the JIT, it
will run fine until the next unchaining event, which will patch the wrong code
and lead to all kinds of unexpected crashes.

14 years agoFix Formatter's behavior with %% and %n.
Elliott Hughes [Fri, 15 Jan 2010 22:14:14 +0000 (14:14 -0800)]
Fix Formatter's behavior with %% and %n.

Yesterday's fix to the behavior with genuine null arguments didn't take into
account that we have format specifiers that don't take arguments. Fix the fix,
and add an explicit test.

14 years agoMerge "Speed up Character."
Elliott Hughes [Fri, 15 Jan 2010 03:25:24 +0000 (19:25 -0800)]
Merge "Speed up Character."

14 years agoFix a NPE in java.util.Formatter.
Ficus Kirkpatrick [Fri, 15 Jan 2010 01:12:02 +0000 (17:12 -0800)]
Fix a NPE in java.util.Formatter.

A recent optimization to simple '%s' and '%d' formats was
failing to format null as "null".  Also add a test.

14 years agoMerge "Fix bad long negate; bug 2373405 - EnumSetTest failure with JIT today"
Ben Cheng [Thu, 14 Jan 2010 22:33:27 +0000 (14:33 -0800)]
Merge "Fix bad long negate; bug 2373405 - EnumSetTest failure with JIT today"

14 years agoFix bad long negate; bug 2373405 - EnumSetTest failure with JIT today
Bill Buzbee [Thu, 14 Jan 2010 22:27:52 +0000 (14:27 -0800)]
Fix bad long negate; bug 2373405 - EnumSetTest failure with JIT today

14 years agoSpeed up Character.
Elliott Hughes [Thu, 14 Jan 2010 21:56:50 +0000 (13:56 -0800)]
Speed up Character.

Remove a useless layer of indirection in UCharacter (which is the bridge
between java.lang.Character and ICU). We're not at the stage where the
JIT can do this for us, and even if it could, why give it extra work to
do? Also fix the incorrect copyright header which was probably copied from
a file where it made sense.

14 years agoMerge "Fix Date.toString."
Elliott Hughes [Thu, 14 Jan 2010 20:51:45 +0000 (12:51 -0800)]
Merge "Fix Date.toString."

14 years agoFix Date.toString.
Elliott Hughes [Thu, 14 Jan 2010 07:14:56 +0000 (23:14 -0800)]
Fix Date.toString.

Date.toString was using the TimeZone id ("America/Los_Angeles") rather than
the time zone short name ("PDT" or "PST", depending on time of year). The
naive fix made things 5x slower, so I improved Resources.getDisplayTimeZone
so the fixed Date.toString is only 2x slower. This could be improved further
with a faster getDisplayTimeZone.

I hoped to replace the body of Date.toString with a call to SimpleDateFormat,
but that turns out to be 40x slower. This patch also optimizes SimpleDateFormat
to bring the gap down to 8x by using Resources.getDisplayTimeZone instead of
asking for all the strings.

(Note that these improvements refer to the hopefully common case of localized
strings for the default locale. If you have the misfortune to need strings for
other locales, the new code will be more like 600x faster. At 0.5s a call on
the fastest current hardware, I hope no-one's actually doing that.
Dalvik Explorer -- available on the Market -- needs to do it when generating
summary reports, and it is indeed ridiculously slow. It uses two
SimpleDateFormat objects per locale, so it takes 1s per locale, for about 60
locales. I've tested Dalvik Explorer with this patch, and it does fix that
pathological behavior.)

Also fix a bug I introduced in https://android-git.corp.google.com/g/36242 that
meant that our zone names String[][] contained incorrect values (accidentally
concatenating each successive value in a row), found by existing tests now we
use more of those values.

Also replace a couple of "new Integer" calls with Integer.valueOf for a modest
speedup.

Also factor out some duplication.

Bug: http://code.google.com/p/android/issues/detail?id=6013

14 years agoMerge "Restore threshold to 200 as a temporary workaround"
Bill Buzbee [Thu, 14 Jan 2010 00:13:48 +0000 (16:13 -0800)]
Merge "Restore threshold to 200 as a temporary workaround"

14 years agoMerge "Remove the last bits of the ICU ResourceBundle hack."
Elliott Hughes [Thu, 14 Jan 2010 00:04:22 +0000 (16:04 -0800)]
Merge "Remove the last bits of the ICU ResourceBundle hack."

14 years agoRestore threshold to 200 as a temporary workaround
Bill Buzbee [Thu, 14 Jan 2010 00:02:28 +0000 (16:02 -0800)]
Restore threshold to 200 as a temporary workaround

Also, fix blocking mode initialization.

14 years agoMerge "Separately sweep the monitor list before sweeping the heap. Required for...
Carl Shapiro [Wed, 13 Jan 2010 23:19:39 +0000 (15:19 -0800)]
Merge "Separately sweep the monitor list before sweeping the heap.  Required for the copying collector so we can abandon objects without examining their headers.  There is a liminal reduction in sweep time when using the non-moving collector.  In addition, this change uncomments a call to free to reclaim the monitor when its owning object is unmarked."

14 years agoRemove the last bits of the ICU ResourceBundle hack.
Elliott Hughes [Wed, 13 Jan 2010 22:43:53 +0000 (14:43 -0800)]
Remove the last bits of the ICU ResourceBundle hack.

This patch switches us over to calling ICU directly for localized currency
symbols, and then removes all the mechanism for sneaking fake ResourceBundle
implementations in. The code's a lot simpler too, because ICU's default
behavior is what we want anyway.

14 years agoSupport primitive array elements in annotations.
Andy McFadden [Wed, 13 Jan 2010 18:29:44 +0000 (10:29 -0800)]
Support primitive array elements in annotations.

Annotations that include primitive array elements are stored internally
as arrays of boxed primitives.  The VM didn't know how to un-box them
when somebody requested the contents.

For bug 2370144.

14 years agoMerge "Fix a comment."
Elliott Hughes [Wed, 13 Jan 2010 01:26:47 +0000 (17:26 -0800)]
Merge "Fix a comment."

14 years agoIntegrate call-graph information into JIT method blacklist.
Ben Cheng [Tue, 12 Jan 2010 22:59:30 +0000 (14:59 -0800)]
Integrate call-graph information into JIT method blacklist.

The new flag is -Xjitcheckcg which will crawl the stack frame of the
translation requesting thread.

Bug: 2368995

14 years agoMerge "Performance tweak for Jit lookup & adjust table sizes for better performance"
Bill Buzbee [Tue, 12 Jan 2010 23:48:32 +0000 (15:48 -0800)]
Merge "Performance tweak for Jit lookup & adjust table sizes for better performance"

14 years agoFix a comment.
Elliott Hughes [Tue, 12 Jan 2010 23:47:38 +0000 (15:47 -0800)]
Fix a comment.

14 years agoMake Formatter %d cost about the same as %s (i.e. 60% faster).
Elliott Hughes [Tue, 12 Jan 2010 23:26:36 +0000 (15:26 -0800)]
Make Formatter %d cost about the same as %s (i.e. 60% faster).

Fast-path "%d" and "%s", the only two cases that matter, so they don't have to
go through all the flags, width, and precision machinery unless flags, widths,
or precisions are actually specified.

This makes "%s" slightly but not significantly faster -- because I'd already
optimized that code for the default case pretty well -- but makes a huge
difference to "%d", which wasn't as amenable to general optimization.

I've also improved the identifiers and comments surrounding the date suffix,
after TraceView misled me into attempting to optimize this non-hotspot (though
to be fair, I'm only benchmarking on passion-eng with JIT; TraceView might be
telling the truth for a G1 without JIT).

TraceView also misled me into trying to optimize away the check for uppercase
conversion types at the end of Transformer.transform (by adding different bodies
to the uppercase entries in the switch directly above it), but that made no
convincing difference on passion-eng.

Bug: 2272346

14 years agoPerformance tweak for Jit lookup & adjust table sizes for better performance
Bill Buzbee [Tue, 12 Jan 2010 20:20:13 +0000 (12:20 -0800)]
Performance tweak for Jit lookup & adjust table sizes for better performance

Also, move setting of Jit table parameters to architecture-specific init
funciton.

14 years agoShow DalvikRunner test output even on success when given --verbose.
Elliott Hughes [Tue, 12 Jan 2010 19:51:17 +0000 (11:51 -0800)]
Show DalvikRunner test output even on success when given --verbose.

14 years agoMerge "Shave another 10%-25% off Formatter."
Elliott Hughes [Tue, 12 Jan 2010 19:50:17 +0000 (11:50 -0800)]
Merge "Shave another 10%-25% off Formatter."

14 years agoMerge "Fix for 2367397 - Runtime reset with threshold lowered to 20."
Bill Buzbee [Tue, 12 Jan 2010 19:02:12 +0000 (11:02 -0800)]
Merge "Fix for 2367397 - Runtime reset with threshold lowered to 20."

14 years agoMerge "Delete remaining FANCY_REFERENCE_SUBCLASS code. According to find and grep...
Carl Shapiro [Tue, 12 Jan 2010 18:28:29 +0000 (10:28 -0800)]
Merge "Delete remaining FANCY_REFERENCE_SUBCLASS code.  According to find and grep, this is the last use of that macro in Dalvik."

14 years agoFix for 2367397 - Runtime reset with threshold lowered to 20.
Bill Buzbee [Tue, 12 Jan 2010 05:44:36 +0000 (21:44 -0800)]
Fix for 2367397 - Runtime reset with threshold lowered to 20.

This was a bug in the def tracking - or more specifically neglecting to
reset tracking at a possible rollback location.

14 years agoDelete remaining FANCY_REFERENCE_SUBCLASS code. According to find and
Carl Shapiro [Tue, 12 Jan 2010 02:15:23 +0000 (18:15 -0800)]
Delete remaining FANCY_REFERENCE_SUBCLASS code.  According to find and
grep, this is the last use of that macro in Dalvik.

14 years agoSeparately sweep the monitor list before sweeping the heap. Required
Carl Shapiro [Fri, 8 Jan 2010 05:35:50 +0000 (21:35 -0800)]
Separately sweep the monitor list before sweeping the heap.  Required
for the copying collector so we can abandon objects without examining
their headers.  There is a liminal reduction in sweep time when using
the non-moving collector.  In addition, this change uncomments a call
to free to reclaim the monitor when its owning object is unmarked.

14 years agoam 82e86144: am 56176a05: Fix ScannerTest failures.
Brett Chabot [Tue, 12 Jan 2010 01:22:22 +0000 (17:22 -0800)]
am 82e86144: am 56176a05: Fix ScannerTest failures.

Merge commit '82e86144b0ccd04282249012130ec0f6101d1e32'

* commit '82e86144b0ccd04282249012130ec0f6101d1e32':
  Fix ScannerTest failures.

14 years agoam 56176a05: Fix ScannerTest failures.
Brett Chabot [Tue, 12 Jan 2010 01:19:26 +0000 (17:19 -0800)]
am 56176a05: Fix ScannerTest failures.

Merge commit '56176a05205eaf469469c26988e99077aed0d7e7' into eclair-plus-aosp

* commit '56176a05205eaf469469c26988e99077aed0d7e7':
  Fix ScannerTest failures.

14 years agoShave another 10%-25% off Formatter.
Elliott Hughes [Tue, 12 Jan 2010 01:18:11 +0000 (17:18 -0800)]
Shave another 10%-25% off Formatter.

Array indexing might be fast, but String.charAt is pretty fast, and
String.indexOf is pretty fast too, while String.toCharArray is really
rather expensive.

For a format string with no format specifiers, this is 25% faster. For
a format string with a single %s or %d format specifier (the common
cases in the Android codebase), this is about 10% faster.

14 years agoFix ScannerTest failures.
Brett Chabot [Mon, 11 Jan 2010 21:43:59 +0000 (13:43 -0800)]
Fix ScannerTest failures.

Skip more tests if required locales are not present.

Change-Id: I562da3222bccd6f264714d10f8db57e087e2561a

14 years agoSet peer for new SSLSessionImpl instances.
Elliott Hughes [Mon, 11 Jan 2010 22:53:42 +0000 (14:53 -0800)]
Set peer for new SSLSessionImpl instances.

Bug: http://code.google.com/p/android/issues/detail?id=4914

14 years agoam eb9ea32d: am 53a6c01c: Fix DecimalFormatTest#test_serializationHarmonyRICompatible.
Brett Chabot [Mon, 11 Jan 2010 21:56:27 +0000 (13:56 -0800)]
am eb9ea32d: am 53a6c01c: Fix DecimalFormatTest#test_serializationHarmonyRICompatible.

Merge commit 'eb9ea32d1468cf753dc0091dd7e639b6bd0cbd0b'

* commit 'eb9ea32d1468cf753dc0091dd7e639b6bd0cbd0b':
  Fix DecimalFormatTest#test_serializationHarmonyRICompatible.

14 years agoam 53a6c01c: Fix DecimalFormatTest#test_serializationHarmonyRICompatible.
Brett Chabot [Mon, 11 Jan 2010 21:51:48 +0000 (13:51 -0800)]
am 53a6c01c: Fix DecimalFormatTest#test_serializationHarmonyRICompatible.

Merge commit '53a6c01cd8c8560b8eef891871c7260f6cbe71d9' into eclair-plus-aosp

* commit '53a6c01cd8c8560b8eef891871c7260f6cbe71d9':
  Fix DecimalFormatTest#test_serializationHarmonyRICompatible.

14 years agoMerge "Fixing our default HTTP Accept header to be spec-compliant."
Jesse Wilson [Mon, 11 Jan 2010 20:43:04 +0000 (12:43 -0800)]
Merge "Fixing our default HTTP Accept header to be spec-compliant."

14 years agoSupport non-default negative patterns in NumberFormat.getIntegerInstance.
Elliott Hughes [Mon, 11 Jan 2010 18:55:28 +0000 (10:55 -0800)]
Support non-default negative patterns in NumberFormat.getIntegerInstance.

Spotted while rewriting the associated JNI recently.

14 years agoMerge "Allow DalvikRunner to run tests in core library packages."
Elliott Hughes [Mon, 11 Jan 2010 18:19:32 +0000 (10:19 -0800)]
Merge "Allow DalvikRunner to run tests in core library packages."

14 years agoFix DecimalFormatTest#test_serializationHarmonyRICompatible.
Brett Chabot [Fri, 8 Jan 2010 23:50:00 +0000 (15:50 -0800)]
Fix DecimalFormatTest#test_serializationHarmonyRICompatible.

Skip the test if required Locale is not present.

Bug 2343677

Change-Id: I0f2672bd4b56cc1685e7368921aaa1e9d4492cf0

14 years agoDeprecate fill_parent and introduce match_parent.
Romain Guy [Fri, 8 Jan 2010 23:05:25 +0000 (15:05 -0800)]
Deprecate fill_parent and introduce match_parent.
Bug: #2361749.

14 years agoFixing our default HTTP Accept header to be spec-compliant.
Jesse Wilson [Thu, 7 Jan 2010 21:41:30 +0000 (13:41 -0800)]
Fixing our default HTTP Accept header to be spec-compliant.

See bug http://code.google.com/p/android/issues/detail?id=5843

Also fixing a bug in the test webserver, where we weren't formatting
the headers properly. I'm dumbfounded how the tests passed previously;
although I fear that omitting the @TestTargetNew annotation might mean
that they weren't being run. I'll investigate that in a follow up.

14 years agoAllow DalvikRunner to run tests in core library packages.
Elliott Hughes [Fri, 8 Jan 2010 01:35:01 +0000 (17:35 -0800)]
Allow DalvikRunner to run tests in core library packages.

This is a bit of a hack, but I think it's not unreasonable, given the purpose
of this tool (and the fact that we both favor writing our tests in the package
they're testing).

Bug: 2362187

14 years agoThe SecurityManager doesn't work, so advertise that shouldn't be used.
Jesse Wilson [Fri, 8 Jan 2010 00:25:59 +0000 (16:25 -0800)]
The SecurityManager doesn't work, so advertise that shouldn't be used.

14 years agoMerge "Fix a typo in "dalvikvm --help" output."
Elliott Hughes [Thu, 7 Jan 2010 23:45:16 +0000 (15:45 -0800)]
Merge "Fix a typo in "dalvikvm --help" output."

14 years agoFix a typo in "dalvikvm --help" output.
Elliott Hughes [Thu, 7 Jan 2010 23:42:39 +0000 (15:42 -0800)]
Fix a typo in "dalvikvm --help" output.

14 years agoMerge "Tear down the code cache when it is full and restart from scratch."
Ben Cheng [Thu, 7 Jan 2010 22:05:13 +0000 (14:05 -0800)]
Merge "Tear down the code cache when it is full and restart from scratch."

14 years agoTear down the code cache when it is full and restart from scratch.
Ben Cheng [Mon, 4 Jan 2010 20:29:56 +0000 (12:29 -0800)]
Tear down the code cache when it is full and restart from scratch.

Because the code cache may be wiped out after safe points now the patching of
inline cache for predicted chains is done through the compiler thread's work
queue.

14 years agoFix String.toLowerCase/toUpperCase for Azeri, Greek (all locales), and Turkish.
Elliott Hughes [Wed, 6 Jan 2010 19:23:18 +0000 (11:23 -0800)]
Fix String.toLowerCase/toUpperCase for Azeri, Greek (all locales), and Turkish.

This patch fixes Greek final sigma in all locales, treats Azeri locales like
Turkish locales, and fixes our dotted/dotless-i/I behavior in Turkish locales
(and thus now Azeri locales too).

Still broken: behavior in Lithuanian locales, supplementary characters.

I've also removed String's own optimized-for-ASCII toLowerCase(char) and
toUpperCase(char): we've optimized Character's methods and don't want another
copy. I've removed the unused String.getValue which provided access to the
underlying char[] --- this wasn't used, and wouldn't work anyway without
some way to access String's 'offset' and 'count' fields too.

14 years agoInvert a conditional to make it correctly specified. Without this
Carl Shapiro [Wed, 6 Jan 2010 04:38:03 +0000 (20:38 -0800)]
Invert a conditional to make it correctly specified.  Without this
inversion the errant conditional would cause waitSetCheck to return a
false positive for certain non-circular lists that, in turn, lead to
VM aborts in builds with assertions enabled.

14 years agoLast bunch of NumberFormat speedups.
Elliott Hughes [Tue, 5 Jan 2010 19:24:56 +0000 (11:24 -0800)]
Last bunch of NumberFormat speedups.

Don't mess around with setCurrency in DecimalFormat.copySymbols when we're
going to override any effect that call will have had in the next few lines:
we always call setCurrencySymbol and setInternationalCurrencySymbol, so
setCurrency is just wasting time.

Replaces the NativeDecimalFormat.UNumberFormatSymbol enum -- which was only used
for getting ints to pass to native code, using Enum.ordinal -- with ints.

Adds a constructor to the java.text DecimalFormat so we can avoid cloning the
DecimalFormatSymbols object we create for its private use.

This is another 10% shaved off.

I've also removed an unused local from the icu4jni DecimalFormat, so I can
remove a then-unused getLocale method from the ICU DecimalFormatSymbols.

I've rewritten the icu4jni DecimalFormatSymbols.clone to remove the scary
constructor that took an arbitrary int and treated it as a uintptr_t when
talking to native code.

14 years agoMerge "Remove references to the old wait implementation in various comments. Also...
Carl Shapiro [Tue, 5 Jan 2010 18:18:30 +0000 (10:18 -0800)]
Merge "Remove references to the old wait implementation in various comments. Also, move the waitMutex above the values it guards to improve the readability of the Thread structure."

14 years agoFix a broken test.
Elliott Hughes [Tue, 5 Jan 2010 01:15:49 +0000 (17:15 -0800)]
Fix a broken test.

This test assumed Integer.toString has no caching.

14 years agoMerge "Speed up DecimalFormatSymbols."
Elliott Hughes [Tue, 5 Jan 2010 01:09:54 +0000 (17:09 -0800)]
Merge "Speed up DecimalFormatSymbols."

14 years agoRemove references to the old wait implementation in various comments.
Carl Shapiro [Tue, 5 Jan 2010 00:50:00 +0000 (16:50 -0800)]
Remove references to the old wait implementation in various comments.
Also, move the waitMutex above the values it guards to improve the
readability of the Thread structure.

14 years agoSpeed up DecimalFormatSymbols.
Elliott Hughes [Mon, 4 Jan 2010 23:23:25 +0000 (15:23 -0800)]
Speed up DecimalFormatSymbols.

We don't need to create temporary String objects; we can just pass a char
directly. We also don't need to initialize aspects of our native peer if
we know we're going to overwrite them straight away, and making copying
into ICU the responsibility of the icu4jni class rather than the java.text
is slightly cleaner.

Together, these changes make creating a new NumberFormat about 20% faster.

14 years agoMerge "Remove the case where we make it hard to tell that a GC takes a long time."
Barry Hayes [Tue, 5 Jan 2010 00:17:36 +0000 (16:17 -0800)]
Merge "Remove the case where we make it hard to tell that a GC takes a long time."

14 years agoRemove the case where we make it hard to tell that a GC takes a long time.
Barry Hayes [Tue, 5 Jan 2010 00:10:09 +0000 (16:10 -0800)]
Remove the case where we make it hard to tell that a GC takes a long time.

14 years agoMerge "New implementation of wait, notify, and notifyAll. Uses an explicit queue...
Carl Shapiro [Tue, 5 Jan 2010 00:08:53 +0000 (16:08 -0800)]
Merge "New implementation of wait, notify, and notifyAll.  Uses an explicit queue to represent the wait set instead of the implicit queue within the monitor condition variable."

14 years agoMerge "Percolate the reason for a GC up far enough to print out in logging messages."
Barry Hayes [Tue, 5 Jan 2010 00:02:35 +0000 (16:02 -0800)]
Merge "Percolate the reason for a GC up far enough to print out in logging messages."

14 years agoPercolate the reason for a GC up far enough to print out in logging messages.
Barry Hayes [Mon, 4 Jan 2010 18:33:46 +0000 (10:33 -0800)]
Percolate the reason for a GC up far enough to print out in logging messages.

14 years agoNew implementation of wait, notify, and notifyAll. Uses an explicit
Carl Shapiro [Fri, 25 Dec 2009 03:56:53 +0000 (19:56 -0800)]
New implementation of wait, notify, and notifyAll.  Uses an explicit
queue to represent the wait set instead of the implicit queue within
the monitor condition variable.

14 years agoFix build (accidental API leak).
Elliott Hughes [Mon, 4 Jan 2010 22:06:25 +0000 (14:06 -0800)]
Fix build (accidental API leak).

Move a couple of methods into LocaleData -- where they should have been from
the beginning -- so they're automatically hidden from our users.

14 years agoMerge "Stop using ResourceBundle for locale data."
Elliott Hughes [Mon, 4 Jan 2010 21:32:11 +0000 (13:32 -0800)]
Merge "Stop using ResourceBundle for locale data."

14 years agoStop using ResourceBundle for locale data.
Elliott Hughes [Wed, 23 Dec 2009 01:20:44 +0000 (17:20 -0800)]
Stop using ResourceBundle for locale data.

This offers an additional speed increase and gets rid of a lot of native code.

14 years agoI did not reconcile my change to remove the Lock structure from Object
Carl Shapiro [Wed, 23 Dec 2009 05:21:41 +0000 (21:21 -0800)]
I did not reconcile my change to remove the Lock structure from Object
after the JIT code generator was updated to accomodate the new format
of the lock work.  This change incorporates the changes that should
and would have gone it had I merged everything correctly.

14 years agoSupersede the Lock union type with a word-sized integer in the object
Carl Shapiro [Tue, 22 Dec 2009 04:23:45 +0000 (20:23 -0800)]
Supersede the Lock union type with a word-sized integer in the object
instance header.  An object's lock member is now just a bit-field.

14 years agoMerge change I71938023
Android (Google) Code Review [Wed, 23 Dec 2009 01:19:20 +0000 (17:19 -0800)]
Merge change I71938023

* changes:
  Assert that the incoming thread and monitor objects are not NULL.  The old implementation allowed monitors to be NULL when they were unlocked and otherwise unowned.  With the new lock word format, a NULL monitor object can only mean that an invariant has been lost.  Also, nix some trailing whitespace that crept into a comment.

14 years agoMerge change Ic4433c3d
Android (Google) Code Review [Wed, 23 Dec 2009 00:59:21 +0000 (16:59 -0800)]
Merge change Ic4433c3d

* changes:
  Jit: Update monitor lock/unlock to reflect thinlock changes (I34b20f49)

14 years agoJit: Update monitor lock/unlock to reflect thinlock changes (I34b20f49)
Bill Buzbee [Wed, 23 Dec 2009 00:15:39 +0000 (16:15 -0800)]
Jit: Update monitor lock/unlock to reflect thinlock changes (I34b20f49)

14 years agoMerge change I47ec52f4
Android (Google) Code Review [Tue, 22 Dec 2009 23:17:26 +0000 (15:17 -0800)]
Merge change I47ec52f4

* changes:
  The FANCY_REFERENCE_SUBCLASS code is based on a misconception of what the VM is permitted to do, and it would be buggy to ever turn it on.

14 years agoam d3b06457: am 6cdbef55: Merge change I1d9b205f into eclair
Brett Chabot [Tue, 22 Dec 2009 22:10:16 +0000 (14:10 -0800)]
am d3b06457: am 6cdbef55: Merge change I1d9b205f into eclair

Merge commit 'd3b0645772fd3364575b93c74428ae19f88c4238'

* commit 'd3b0645772fd3364575b93c74428ae19f88c4238':
  Skip locale dependent libcore tests if required locales are not present.

14 years agoam 6cdbef55: Merge change I1d9b205f into eclair
Brett Chabot [Tue, 22 Dec 2009 22:06:21 +0000 (14:06 -0800)]
am 6cdbef55: Merge change I1d9b205f into eclair

Merge commit '6cdbef55a948dffbeff211fb4e78066c053ecc2e' into eclair-plus-aosp

* commit '6cdbef55a948dffbeff211fb4e78066c053ecc2e':
  Skip locale dependent libcore tests if required locales are not present.

14 years agoMerge change I1d9b205f into eclair
Android (Google) Code Review [Tue, 22 Dec 2009 22:02:50 +0000 (14:02 -0800)]
Merge change I1d9b205f into eclair

* changes:
  Skip locale dependent libcore tests if required locales are not present.

14 years agoAssert that the incoming thread and monitor objects are not NULL. The
Carl Shapiro [Tue, 22 Dec 2009 21:49:53 +0000 (13:49 -0800)]
Assert that the incoming thread and monitor objects are not NULL.  The
old implementation allowed monitors to be NULL when they were unlocked
and otherwise unowned.  With the new lock word format, a NULL monitor
object can only mean that an invariant has been lost.  Also, nix some
trailing whitespace that crept into a comment.

14 years agoSkip locale dependent libcore tests if required locales are not present.
Brett Chabot [Fri, 18 Dec 2009 23:32:59 +0000 (15:32 -0800)]
Skip locale dependent libcore tests if required locales are not present.

Previously these tests were marked as KnownFailures - which is undesirable since
they can pass if the right Locale's are present on target.

Bug 2335906

Change-Id: I1d9b205f740b71880c57b48f069c302c5cec8792

14 years agoThe FANCY_REFERENCE_SUBCLASS code is based on a misconception of what the VM
Barry Hayes [Tue, 22 Dec 2009 19:01:38 +0000 (11:01 -0800)]
The FANCY_REFERENCE_SUBCLASS code is based on a misconception of what the VM
is permitted to do, and it would be buggy to ever turn it on.

14 years agoMerge change I23ada0f9
Android (Google) Code Review [Tue, 22 Dec 2009 18:46:45 +0000 (10:46 -0800)]
Merge change I23ada0f9

* changes:
  More ICU cleanup.

14 years agoMerge change I06f254ec
Android (Google) Code Review [Tue, 22 Dec 2009 05:49:54 +0000 (21:49 -0800)]
Merge change I06f254ec

* changes:
  Clean up some misunderstanding about what mspaces are: They are already pointers.

14 years agoMerge change I72a49a6f
Android (Google) Code Review [Tue, 22 Dec 2009 04:57:27 +0000 (20:57 -0800)]
Merge change I72a49a6f

* changes:
  Initialize the arg variables to avoid an uninitialized use compiler warning.  While this effects performance, with the native interpreter the speed of the portable interpreter is of diminished importance.

14 years agoInitialize the arg variables to avoid an uninitialized use compiler
Carl Shapiro [Tue, 22 Dec 2009 02:34:11 +0000 (18:34 -0800)]
Initialize the arg variables to avoid an uninitialized use compiler
warning.  While this effects performance, with the native interpreter
the speed of the portable interpreter is of diminished importance.

14 years agoMore ICU cleanup.
Elliott Hughes [Tue, 22 Dec 2009 04:24:12 +0000 (20:24 -0800)]
More ICU cleanup.

Don't duplicate SimpleDateFormat.patternChars in native code when we can just
access it directly.

Also remove a bit more duplication in the native code, and remove the early
scope closure in getCurrencyCodeNative. If we're going to waste space in
that function, let's waste it on an explanation of why a seemingly useless
assignment is actually totally necessary.

14 years agoMerge change I88786692
Android (Google) Code Review [Tue, 22 Dec 2009 02:34:06 +0000 (18:34 -0800)]
Merge change I88786692

* changes:
  Fix leaks in ICU JNI.

14 years agoMerge change I8cf2b8be
Android (Google) Code Review [Tue, 22 Dec 2009 02:25:06 +0000 (18:25 -0800)]
Merge change I8cf2b8be

* changes:
  Remove dead code from the garbage collector.  A previous commit eliminated all of the referencing code.

14 years agoMerge change I6f22b22e
Android (Google) Code Review [Tue, 22 Dec 2009 02:19:18 +0000 (18:19 -0800)]
Merge change I6f22b22e

* changes:
  Fixing BigDecimal.stripLeadingZeroes on "0e100", as discovered by jtreg.

14 years agoRemove dead code from the garbage collector. A previous commit
Carl Shapiro [Tue, 22 Dec 2009 02:05:29 +0000 (18:05 -0800)]
Remove dead code from the garbage collector.  A previous commit
eliminated all of the referencing code.