summaryrefslogtreecommitdiffstats
path: root/vm
Commit message (Collapse)AuthorAgeFilesLines
* Fix for use of UNPREDICTABLE register combinationeclairDave Butcher2010-06-075-10/+10
| | | | | | | | 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
* InterpAsm: Disable vfp in OP_CMPL and OP_CMPG for float and double operandsNaresh Babu Saladi2010-05-081-104/+260
| | | | | | | | | | | Use software floating point instructions in opcode implementations of OP_CMPL_FLOAT, OP_CMPG_FLOAT, OP_CMPL_DOUBLE, and OP_CMPG_DOUBLE. This is done to workaround the problem with comparison operation when one of the operand is NaN. CRs-fixed: 226903 Change-Id: I056c77510802536b3b7f6cefea6c0e241077a837
* Revert "Apply Dalvik ARM FPU handling optimizations."Steve Kondik2010-04-201-128/+40
| | | | This reverts commit 551399a95b2ceb3e382785f4d8165822f1491493.
* Merge branch 'master' of git://android.git.kernel.org/platform/dalvik into HEADSteve Kondik2010-03-30293-7/+32835
|\ | | | | | | | | | | Conflicts: libcore/regex/src/main/java/java/util/regex/Pattern.java vm/oo/Class.c
| * Merge "This is a contribution of x86-atom targeted assembly for the fast ↵Andy McFadden2010-02-23293-7/+32835
| |\ | | | | | | | | | byte-code interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build: Build: TARGET_SIMULATOR: true TARGET_BUILD_TYPE: release TARGET_PRODUCT: sim Environment: Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz PI = Portable Interpreter IA = Fast IA Interpreter Embedded CaffeineMark: (IA-PI)/PI: Average of 70% improvement on overall score SPECjbb2000*: (IA-PI)/PI: Average of 37% improvement on raw score SPECjvm98*: (PI/IA) Speedup: Mtrt: 1.2; Jess: 1.34; Compress: 1.57; Db: 1.46; Jack: 1.28 * SPECjbb2000 - 1 warehouse. Noncompliant - modified to run on Dalvik * SPECjvm98 - Noncompliant - modified to run on Dalivk"
| | * This is a contribution of x86-atom targeted assembly for the fast byte-code ↵Johnnie Birch2010-02-22293-7/+32835
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | interpreter engine. This is an initial contribution with minimal optimizations that target the Intel ATOM processor. We expect to continuously improve this code. It is expected that there will be a discussion on the potential merge of this code and similar efforts (i.e. the mterp/x86 directory first included with cupcake). While this code is intended to target ATOM and not a generic X-86 processor, we were able to show the following improvements over the c-portable interpreter using the simulator build: Build: TARGET_SIMULATOR: true TARGET_BUILD_TYPE: release TARGET_PRODUCT: sim Environment: Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz PI = Portable Interpreter IA = Fast IA Interpreter Embedded CaffeineMark: (IA-PI)/PI: Average of 70% improvement on overall score SPECjbb2000*: (IA-PI)/PI: Average of 37% improvement on raw score SPECjvm98*: (PI/IA) Speedup: Mtrt: 1.2; Jess: 1.34; Compress: 1.57; Db: 1.46; Jack: 1.28 * SPECjbb2000 - 1 warehouse. Noncompliant - modified to run on Dalvik * SPECjvm98 - Noncompliant - modified to run on Dalivk
| * | am 4a888b09: Two exception-related tweaks: (1) Make the dynamic exception ↵Dan Bornstein2009-12-071-13/+54
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | construction mechanism be able to handle exception constructors that take Object instead of String. (2) Add a convenience in JNIHelp to throw RuntimeExceptions. Merge commit '4a888b09be2ade9fc5bb0137f702b3be889679a9' into eclair-plus-aosp * commit '4a888b09be2ade9fc5bb0137f702b3be889679a9': Two exception-related tweaks: (1) Make the dynamic exception construction
| * \ \ am bb710e32: Remove ((noreturn)) from dvmAbort().Andy McFadden2009-09-241-5/+7
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'bb710e3294c57587f327c5e365353af81aa2cb5f' into eclair-plus-aosp * commit 'bb710e3294c57587f327c5e365353af81aa2cb5f': Remove ((noreturn)) from dvmAbort().
| * \ \ \ am bdfa9937: Merge change 25979 into eclairDavid 'Digit' Turner2009-09-211-0/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'bdfa9937a8fc8230ca109774ccc1eafaa20ba1a7' into eclair-plus-aosp * commit 'bdfa9937a8fc8230ca109774ccc1eafaa20ba1a7': Allow dalvik pre-optimization to run in ARMv7 emulator.
| * \ \ \ \ am da03242f: Merge change 24840 into eclairSan Mehat2009-09-143-74/+8
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'da03242fe03a5ab342a6310b1e754e131ea628c9' into eclair-plus-aosp * commit 'da03242fe03a5ab342a6310b1e754e131ea628c9': dalvik: Switch to common cutils sched_policy api
| * \ \ \ \ \ am efa0dcd5: Merge change 24508 into eclairBob Lee2009-09-116-137/+229
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'efa0dcd52c030d2ace844070902979dd09e2c881' into eclair-plus-aosp * commit 'efa0dcd52c030d2ace844070902979dd09e2c881': Addressed reviewer comments.
| * \ \ \ \ \ \ am 20677ed1: dalvik: Use common SchedPolicy type and fix getpid() vs. ↵San Mehat2009-09-103-14/+9
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gettid() bug Merge commit '20677ed1a7114a2aa51086d5097f6328cd4fb94d' into eclair-plus-aosp * commit '20677ed1a7114a2aa51086d5097f6328cd4fb94d': dalvik: Use common SchedPolicy type and fix getpid() vs. gettid() bug
| * \ \ \ \ \ \ \ am 03c7547c: Merge change 24425 into eclairSan Mehat2009-09-105-7/+47
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit '03c7547c40e6fc5b29b929b64f114e2dd3894e8e' into eclair-plus-aosp * commit '03c7547c40e6fc5b29b929b64f114e2dd3894e8e': vm: Add support for using scheduler policies instead of cgroups
| * \ \ \ \ \ \ \ \ am 500464de: DO NOT MERGE: Do not enable JIT_TUNING and assertion by default ↵Ben Cheng2009-09-091-4/+2
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with JIT. Merge commit '500464deb29dc8bfc7b5e51ab0fdffa6fa51b5d7' into eclair-plus-aosp * commit '500464deb29dc8bfc7b5e51ab0fdffa6fa51b5d7': DO NOT MERGE: Do not enable JIT_TUNING and assertion by default with JIT.
| * \ \ \ \ \ \ \ \ \ am 9dc72a3c: Modified Thread.c to allow sampling profiler thread in zygote. ↵Bob Lee2009-09-083-29/+198
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added a function that queries the native thread status. Modified the profiler to sample every thread at a fixed interval instead of adjusting the delay based on the number of threads. This wil Merge commit '9dc72a3c54af7201b6b85d96dba23a5f85309d9b' into eclair-plus-aosp * commit '9dc72a3c54af7201b6b85d96dba23a5f85309d9b': Modified Thread.c to allow sampling profiler thread in zygote. Added a function that
| * \ \ \ \ \ \ \ \ \ \ am ed974e9e: Merge change 23724 into eclairMarco Nelissen2009-09-021-1/+2
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'ed974e9ea6220b363d2f093d1a2d4bf4b8f3c429' into eclair-plus-aosp * commit 'ed974e9ea6220b363d2f093d1a2d4bf4b8f3c429': Fix x86 call bridge
| * \ \ \ \ \ \ \ \ \ \ \ am c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.Elliott Hughes2009-09-021-2/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'c19d2a1d798d8626f196d878abcf23a14bee40af' into eclair-plus-aosp * commit 'c19d2a1d798d8626f196d878abcf23a14bee40af': Fix two calls to memset(3) whose arguments were reversed.
| * \ \ \ \ \ \ \ \ \ \ \ \ merge from open-source masterJean-Baptiste Queru2009-09-012-43/+70
| |\ \ \ \ \ \ \ \ \ \ \ \ \
* | | | | | | | | | | | | | | Apply Dalvik ARM FPU handling optimizations.Jim Huang2010-03-221-40/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Float score improvements from 772 to 828. CaffeineMark Embedded (before) Sieve score = 950 (98) Loop score = 775 (2017) Logic score = 1104 (0) String score = 1898 (708) Float score = 772 (185) Method score = 1032 (166650) Overall score = 1034 (after) Sieve score = 951 (98) Loop score = 775 (2017) Logic score = 1105 (0) String score = 2042 (708) Float score = 828 (185) Method score = 1032 (166650) Overall score = 1060 Reference: http://blog.kmckk.com/archives/1475184.html http://blog.kmckk.com/archives/1486485.html (cherry picked from commit 563f2fec5832837244d9ef32b6e76e2041e646b4) Signed-off-by: Tick Chen <tick@0xlab.org>
* | | | | | | | | | | | | | | Merge branch 'eclair' of git://android.git.kernel.org/platform/dalvik into ↵Steve Kondik2010-02-011-0/+38
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | eclair
| * | | | | | | | | | | | | | Two exception-related tweaks: (1) Make the dynamic exception constructionDan Bornstein2009-12-071-13/+54
| | |_|_|_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mechanism be able to handle exception constructors that take Object instead of String. (2) Add a convenience in JNIHelp to throw RuntimeExceptions. Change-Id: Ie5ce680c30043a4b186e59d7c8883666648b2c87
| * | | | | | | | | | | | | Remove ((noreturn)) from dvmAbort().Andy McFadden2009-09-241-5/+7
| | |_|_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Functions that could call dvmAbort() from more than one place were merging the calls together, which is great until you need to decode a native stack trace. For 2144313.
| * | | | | | | | | | | | Allow dalvik pre-optimization to run in ARMv7 emulator.David 'Digit' Turner2009-09-211-0/+2
| | |_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This sad hack is used to allow the Dex preopt pass to run properly in ARMv7 emulation mode. Without it, the function dvmComputeWidths() aborts the VM in ways that are hard to properly understand. This issue has been discussed extensively with fadden, which provided the patch. It seems that adding both log lines fixes it, but only using one will not. I'm suspecting an emulation bug, or even worse, a C compiler bug that would generate invalid machine code. NOTE: The dex pre-optimization pass of user builds requires to run the DexOpt in the emulator for all -user builds. While this patch might not fix the underlying issue, it allows us to generate these images correctly (along with a few other system hacks).
| * | | | | | | | | | | dalvik: Switch to common cutils sched_policy apiSan Mehat2009-09-123-74/+8
| | |_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: San Mehat <san@google.com>
| * | | | | | | | | | Addressed reviewer comments.Bob Lee2009-09-116-137/+229
| | |_|_|_|_|_|_|/ / | |/| | | | | | | |
| * | | | | | | | | dalvik: Use common SchedPolicy type and fix getpid() vs. gettid() bugSan Mehat2009-09-103-14/+9
| | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: San Mehat <san@google.com>
| * | | | | | | | Merge change 24425 into eclairAndroid (Google) Code Review2009-09-105-7/+47
| |\ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | * changes: vm: Add support for using scheduler policies instead of cgroups
| | * | | | | | | vm: Add support for using scheduler policies instead of cgroupsSan Mehat2009-09-105-7/+47
| | | |_|_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | Signed-off-by: San Mehat <san@google.com>
| * / | | | | | DO NOT MERGE: Do not enable JIT_TUNING and assertion by default with JIT.Ben Cheng2009-09-091-4/+2
| |/ / / / / /
| * | | | / / Modified Thread.c to allow sampling profiler thread in zygote. Added a ↵Bob Lee2009-09-063-29/+198
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function that queries the native thread status. Modified the profiler to sample every thread at a fixed interval instead of adjusting the delay based on the number of threads. This will make it easier to compare results across apps. Added ability to shut down the profiler thread. Added code to track whether the method was a leaf or a caller.
| * | | | | Merge change 23724 into eclairAndroid (Google) Code Review2009-09-021-1/+2
| |\ \ \ \ \ | | |_|_|/ / | |/| | | | | | | | | | | | | | | | * changes: Fix x86 call bridge
| | * | | | Fix x86 call bridgeMarco Nelissen2009-09-021-1/+2
| | |/ / /
| * / / / Fix two calls to memset(3) whose arguments were reversed.Elliott Hughes2009-09-021-2/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | External bug 3358 reported the libcore/x-net instance. Manual inspection turned up another instance in vm, but nothing else in the dalvik package. Tested by booting sapphire-eng and running the x-net tests. Bug: 1999244
| * | | Expand indirect reference ifdefs.Andy McFadden2009-08-283-21/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This excludes some things that used to be common between the direct and indirect reference implementations. The goal is to restore the original method call performance. In particular, we no longer convert native method arguments to local references when USE_INDIRECT_REF is not defined.
| * | | Fix reporting of certain verify errors.Andy McFadden2009-08-284-26/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code was assuming that the reference type could always be inferred from the error code, but in two cases it couldn't. This resulted in a weird string appearing where the class name should be in the exception. The type is now explicitly stuffed into the replacement instruction. I added one additional test to 075; with this, plus 003 and 077, I think we have full coverage. For bug 2084560.
| * | | Fix some JNI indirect reference stuff.Andy McFadden2009-08-274-37/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert where needed, don't convert where not needed, and make sure we're using the right one. With this, my ad-hoc tests pass, and the boot proceeds until we hit a failure that looks like it might be due to logic outside the VM.
| * | | Another round of scary indirect ref changes.Andy McFadden2009-08-2531-415/+709
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds a not-really-working implementation to Jni.c, with various changes #ifdefed throughout the code. The ifdef is currently disabled, so the old behavior should continue. Eventually the old version will be stripped out and the ifdefs removed. This renames the stack's "localRefTop" field, which nudged a bunch of code. The name wasn't really right before (it's the *bottom* of the local references), and it's even less right now. This and one other mterp-visible constant were changed, which caused some ripples through mterp and the JIT, but the ifdeffing was limited to one in asm-constants.h (and the constant is the same both ways, so toggling the ifdef won't require rebuilding asm sources). Some comments and arg names in ReferenceTable were updated for the correct orientation of bottom vs. top. Some adjustments were made to the JNI code, e.g. dvmCallMethod now needs to understand if it needs to convert reference arguments from local/global refs to pointers (it's called from various places throughout the VM).
| * | | Use local references for native method args.Andy McFadden2009-08-246-123/+335
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the JNI method call mechanism to register all reference arguments as local refs, as well as the "this" argument (for virtual calls) and the class object (for static calls). Before now we skipped this part, because we're handing raw object pointers around, and we know that all of the arguments can be found by the GC on the interpreted stack. In fact, there's no need to add the arguments for GC-correctness; rather, we need to do this to rewrite the pointers we hand to native code. This change impacts JNI method call performance, especially for functions with a large number of reference arguments. To improve things a little, there are now four "call bridge" functions: (1) general handler (2) synchronized method handler (grabs lock, calls #1) (3) virtual method, no reference args (4) static method, no reference args While booting the system, the virtual/static no-ref handlers are used for about 70% of calls. Since these don't have to scan the method signature to look for reference arguments, they're a bit faster. At this point we're still passing raw pointers around, so nothing should really change.
| * | | Set os.arch property from uname().machine.Andy McFadden2009-08-211-8/+1
| | | | | | | | | | | | | | | | | | | | Not sure why we didn't just do this in the first place. I get "x86_64" on desktop and "armv6l" on a sapphire.
| * | | Move array pinning out of global references table.Andy McFadden2009-08-212-10/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to pin primitive arrays for certain JNI operations (it's that or return a copy of the contents). We don't move objects around in the virtual heap, so simply creating a global reference is enough to ensure the correct behavior of the calls. The global reference implementation is changing in a way that makes this approach inconvenient, so we now have a separate table for pinned primitive arrays. As a bonus, if GREF tracking is enabled, we will scan through the table when a pin entry is added. If there are 10 or more entries for the same array, a complaint is logged. This should allow us to find mismatched Get/Release sequences much more easily (before you had to wait until the global reference table exploded). We currently scan pin table entries at the same time as the JNI global references, so they'll still show up in hprof dumps as such. (Could also add a new Android-specific hprof root category, but that seems like more trouble than it's worth.)
| * | | Merge change 22183 into eclairAndroid (Google) Code Review2009-08-218-402/+563
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * changes: Progress toward indirect JNI references.
| | * | | Progress toward indirect JNI references.Andy McFadden2009-08-208-402/+563
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch from simple typecasts to conversion functions for the objects passed in and out of JNI calls. No real change here; object references are still just pointers. Use explicit pin/unpin calls for primitive arrays. For GetStringChars we now pin the char[] rather than the String object. (Which doesn't make much difference in the grand scheme of things, since you need to keep the String to pass into the release function anyway.)
| * | | | Merge change 22152 into eclairAndroid (Google) Code Review2009-08-202-4/+4
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * changes: Fix a couple of compiler warnings.
| | * | | | Fix a couple of compiler warnings.Andy McFadden2009-08-202-4/+4
| | |/ / /
| * / / / Update storage size after expansion.Andy McFadden2009-08-191-0/+1
| |/ / / | | | | | | | | | | | | | | | | We allow expansion in dvmSetBit(), but failed to update the capacity after doing so.
| * | | Enable IPv6.Lorenzo Colitti2009-08-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the system has IPv6 connectivity, query the DNS for IPv6 addresses as well as IPv4 addresses. If IPv6 addresses are returned, prefer them by default. Impact of this change: - If the device is on a network with IPv6 configured, is using wifi, and has obtained an IPv6 address using autoconfiguration, the network stack will request IPv6 addresses as well as IPv4 addresses when making DNS queries. This allows the device to connect to websites and services that declare themselves to be reachable over IPv6. If an IPv6 connection fails, the stack will fall back to IPv4. This is what Windows Vista, Mac OS 10.4 and above, and most Linux distributions do by default. - If the device is not on a network that supports IPv6, or is using 3G/EVDO, nothing will change. I have been testing this change on self-compiled builds of master and eclair on Dream and Sholes for several weeks with no breakage that I can see.
| * | | Merge change 21796 into eclairAndroid (Google) Code Review2009-08-184-10/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * changes: Turn down RegisterMap paranoia.
| | * | | Turn down RegisterMap paranoia.Andy McFadden2009-08-184-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This disables verification of RegisterMap contents and compressed output, as well as a GC-time check that double-checked the validity of a register known to hold a reference. For internal bug 1896437.
| * | | | Minor tweaks to JNI logging.Andy McFadden2009-08-181-3/+6
| |/ / / | | | | | | | | | | | | | | | | Reduced a LOGI to LOGD, normalized format, added a similar message for a field ID lookup that was failing (due to a bad flash, as it turns out).
| * | | Continuing evolution of Thumb2 support.Bill Buzbee2009-08-137-111/+434
| | | | | | | | | | | | | | | | | | | | Bug fix for local optimization Enable partial floating point store sinking (with significant perf gain!)