OSDN Git Service

android-x86/dalvik.git
14 years agoMerge change 23384
Android (Google) Code Review [Wed, 2 Sep 2009 22:40:59 +0000 (15:40 -0700)]
Merge change 23384

* changes:
  Replaced existing Hashtable implementation with fast one.

14 years agoam 304fcb28: am 793f1423: Merge change 23675 into eclair
Lorenzo Colitti [Wed, 2 Sep 2009 22:18:59 +0000 (15:18 -0700)]
am 304fcb28: am 793f1423: Merge change 23675 into eclair

Merge commit '304fcb28d7b63219e9d52423d08a41b4f6be5df1'

* commit '304fcb28d7b63219e9d52423d08a41b4f6be5df1':
  Unbreak Dalvik VM initialization due to a native method that expects to be able

14 years agoam 793f1423: Merge change 23675 into eclair
Lorenzo Colitti [Wed, 2 Sep 2009 22:16:40 +0000 (15:16 -0700)]
am 793f1423: Merge change 23675 into eclair

Merge commit '793f142323c49818ad022a05cbfb931eefddae5b' into eclair-plus-aosp

* commit '793f142323c49818ad022a05cbfb931eefddae5b':
  Unbreak Dalvik VM initialization due to a native method that expects to be able

14 years agoMerge change 23675 into eclair
Android (Google) Code Review [Wed, 2 Sep 2009 22:14:38 +0000 (15:14 -0700)]
Merge change 23675 into eclair

* changes:
  Unbreak Dalvik VM initialization due to a native method that expects to be able to call an InetAddress no-args constructor. This constructor was package-private and was recently removed. This method is horribly complex and should go away (it probably doesn't even work, due to it attempting to find a class known as "java/io/FielDescriptor"), but it needs to be fixed for now.

14 years agoUnbreak Dalvik VM initialization due to a native method that expects to be able
Lorenzo Colitti [Wed, 2 Sep 2009 20:52:54 +0000 (13:52 -0700)]
Unbreak Dalvik VM initialization due to a native method that expects to be able
to call an InetAddress no-args constructor. This constructor was package-private
and was recently removed. This method is horribly complex and should go away (it
probably doesn't even work, due to it attempting to find a class known as
"java/io/FielDescriptor"), but it needs to be fixed for now.

Change-Id: I56b1e0e07f4c97af82e0a4f14dfd2d8af16f6b82

14 years agoam d679e7fb: am c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.
Elliott Hughes [Wed, 2 Sep 2009 21:01:07 +0000 (14:01 -0700)]
am d679e7fb: am c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.

Merge commit 'd679e7fbd5df8f178aa0751e107580fc51208373'

* commit 'd679e7fbd5df8f178aa0751e107580fc51208373':
  Fix two calls to memset(3) whose arguments were reversed.

14 years agoam c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.
Elliott Hughes [Wed, 2 Sep 2009 20:58:29 +0000 (13:58 -0700)]
am c19d2a1d: Fix two calls to memset(3) whose arguments were reversed.

Merge commit 'c19d2a1d798d8626f196d878abcf23a14bee40af' into eclair-plus-aosp

* commit 'c19d2a1d798d8626f196d878abcf23a14bee40af':
  Fix two calls to memset(3) whose arguments were reversed.

14 years agoFix two calls to memset(3) whose arguments were reversed.
Elliott Hughes [Wed, 2 Sep 2009 20:37:17 +0000 (13:37 -0700)]
Fix two calls to memset(3) whose arguments were reversed.

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

14 years agoam 0882b5ca: am 5ca29e14: Merge change 22629 into eclair
Elliott Hughes [Wed, 2 Sep 2009 20:34:43 +0000 (13:34 -0700)]
am 0882b5ca: am 5ca29e14: Merge change 22629 into eclair

Merge commit '0882b5ca179ef3ce0db861b99a038f45fa00a47d'

* commit '0882b5ca179ef3ce0db861b99a038f45fa00a47d':
  Fix "whatever".split(".") behavior.

14 years agoMerge change 23662
Android (Google) Code Review [Wed, 2 Sep 2009 20:28:48 +0000 (13:28 -0700)]
Merge change 23662

* changes:
  Reorder the taken and fallthroug blocks and remove dead branches.

14 years agoReorder the taken and fallthroug blocks and remove dead branches.
Ben Cheng [Wed, 2 Sep 2009 00:01:58 +0000 (17:01 -0700)]
Reorder the taken and fallthroug blocks and remove dead branches.

In the following example the order of the two chaining cells are reversed and
the branch to 0x42862ce4 is eliminated.

Before:

D/dalvikvm( 1550): 0x42862cd6 (000a): bge     0x42862cdc
D/dalvikvm( 1550): 0x42862cd8 (000c): b       0x42862ce4
D/dalvikvm( 1550): Exception_Handling:
D/dalvikvm( 1550): 0x42862cda (000e): .align4
D/dalvikvm( 1550): -------- chaining cell (normal): 0x0049
D/dalvikvm( 1550): 0x42862cdc (0010): ldr     r0, [r6, #76]
D/dalvikvm( 1550): 0x42862cde (0012): blx     r0
D/dalvikvm( 1550): 0x42862ce0 (0014): data    0x1512(5394)
D/dalvikvm( 1550): 0x42862ce2 (0016): data    0x42a7(17063)
D/dalvikvm( 1550): 0x42862ce4 (0018): .align4
D/dalvikvm( 1550): -------- chaining cell (normal): 0x001d
D/dalvikvm( 1550): 0x42862ce4 (0018): ldr     r0, [r6, #76]
D/dalvikvm( 1550): 0x42862ce6 (001a): blx     r0
D/dalvikvm( 1550): 0x42862ce8 (001c): data    0x14ba(5306)
D/dalvikvm( 1550): 0x42862cea (001e): data    0x42a7(17063)

After:

D/dalvikvm(  367): 0x42865c92 (000a): bge     0x42865c9c
D/dalvikvm(  367): Exception_Handling:
D/dalvikvm(  367): 0x42865c94 (000c): .align4
D/dalvikvm(  367): -------- chaining cell (normal): 0x001d
D/dalvikvm(  367): 0x42865c94 (000c): ldr     r0, [r6, #76]
D/dalvikvm(  367): 0x42865c96 (000e): blx     r0
D/dalvikvm(  367): 0x42865c98 (0010): data    0x44ba(17594)
D/dalvikvm(  367): 0x42865c9a (0012): data    0x42a7(17063)
D/dalvikvm(  367): 0x42865c9c (0014): .align4
D/dalvikvm(  367): -------- chaining cell (normal): 0x0049
D/dalvikvm(  367): 0x42865c9c (0014): ldr     r0, [r6, #76]
D/dalvikvm(  367): 0x42865c9e (0016): blx     r0
D/dalvikvm(  367): 0x42865ca0 (0018): data    0x4512(17682)
D/dalvikvm(  367): 0x42865ca2 (001a): data    0x42a7(17063)

14 years agoam 5ca29e14: Merge change 22629 into eclair
Elliott Hughes [Wed, 2 Sep 2009 19:38:55 +0000 (12:38 -0700)]
am 5ca29e14: Merge change 22629 into eclair

Merge commit '5ca29e142032b6559824e4f7d526bbc037b90c93' into eclair-plus-aosp

* commit '5ca29e142032b6559824e4f7d526bbc037b90c93':
  Fix "whatever".split(".") behavior.

14 years agoMerge change 22629 into eclair
Android (Google) Code Review [Wed, 2 Sep 2009 18:53:49 +0000 (11:53 -0700)]
Merge change 22629 into eclair

* changes:
  Fix "whatever".split(".") behavior.

14 years agoam 0f45017c: am 94e11fc4: InetAddress refactoring.
Lorenzo Colitti [Tue, 1 Sep 2009 23:44:56 +0000 (16:44 -0700)]
am 0f45017c: am 94e11fc4: InetAddress refactoring.

Merge commit '0f45017ce76906ed4c43b60a4538607e5171294f'

* commit '0f45017ce76906ed4c43b60a4538607e5171294f':
  InetAddress refactoring.

14 years agoam 94e11fc4: InetAddress refactoring.
Lorenzo Colitti [Tue, 1 Sep 2009 23:42:44 +0000 (16:42 -0700)]
am 94e11fc4: InetAddress refactoring.

Merge commit '94e11fc41d9bb7648932a21be7fa895c2432f610' into eclair-plus-aosp

* commit '94e11fc41d9bb7648932a21be7fa895c2432f610':
  InetAddress refactoring.

14 years agoReplaced existing Hashtable implementation with fast one.
Joshua Bloch [Tue, 1 Sep 2009 00:55:19 +0000 (17:55 -0700)]
Replaced existing Hashtable implementation with fast one.

14 years agoMerge change 23487
Android (Google) Code Review [Tue, 1 Sep 2009 21:58:46 +0000 (14:58 -0700)]
Merge change 23487

* changes:
  Fix implementation of Thread.isAlive().

14 years agoInetAddress refactoring.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
InetAddress refactoring.

1. Refactor all protocol-specific methods from InetAddress into Inet[46]Address.
2. Move all protocol-specific constants from InetAddress into Inet[46]Address.

This change should have no effect on the stack's behaviour but makes it easy to
find parts of the code that still have dependencies on IPv4 so they can be
examined and fixed.

Change-Id: I70860ee04cf7c01bffaa35c8c64199f69d99826f

14 years agoFix implementation of Thread.isAlive().
Andy McFadden [Tue, 1 Sep 2009 19:20:13 +0000 (12:20 -0700)]
Fix implementation of Thread.isAlive().

The implementation of Thread.isAlive() was changed a couple of years ago
as part of the Harmony integration.  The current version relies on the
thread's state value to determine its liveness, but the VM was
originally written to be like JamVM, which used GNU ClassPath, which
uses the vmThread field instead.

It looks like it's possible for Thread.join() to get stuck, though as
far as I know this hasn't happened.

We're essentially rolling back part of 27774-p9.  For internal bug 1966734.

Also: ran --update on test 044.

14 years agoam 9c92c48f: merge from open-source master
Jean-Baptiste Queru [Tue, 1 Sep 2009 19:15:40 +0000 (12:15 -0700)]
am 9c92c48f: merge from open-source master

Merge commit '9c92c48fee7d97e9218e780d32b872eb97962629'

* commit '9c92c48fee7d97e9218e780d32b872eb97962629':
  Add a bit-map encoding of Object-reference field offsets to ClassObject.
  Be more POSIXly correct in the use of expr.
  Fix broken link in docstring. issue 1194
  libcore/.../rg_apache_harmony_xml_ExpatParser: in C++, the return type

14 years agoImplement SSA-based loop optimizations.
Ben Cheng [Mon, 24 Aug 2009 23:32:22 +0000 (16:32 -0700)]
Implement SSA-based loop optimizations.

For traces of simple natural loops (ie no invokes/side exits) null and range
checks will be hoisted in to entry block.

For acyclic traces SSA representation will be formed but no optimizations are
 applied (for now).

SSA representation will be printed with the normal verbose output. For example:

D/dalvikvm( 1248): Dumping LIR insns
D/dalvikvm( 1248): installed code is at 0x428559d4
D/dalvikvm( 1248): total size is 324 bytes
D/dalvikvm( 1248): 0x428559d4 (0000): data    0x012c(300)
D/dalvikvm( 1248): -------- entry offset: 0x002b
D/dalvikvm( 1248): -------- MIR_OP_NULL_N_RANGE_UP_CHECK
D/dalvikvm( 1248): 0x428559d6 (0002): ldr     r0, [r5, #36]
D/dalvikvm( 1248): 0x428559d8 (0004): ldr     r1, [r5, #12]
D/dalvikvm( 1248): 0x428559da (0006): cbz     r0,0x42855a06
D/dalvikvm( 1248): 0x428559dc (0008): ldr     r0, [r0, #8]
D/dalvikvm( 1248): 0x428559de (000a): subs    r1, #1
D/dalvikvm( 1248): 0x428559e0 (000c): cmp     r1, r0
D/dalvikvm( 1248): 0x428559e2 (000e): bge     0x42855a06
D/dalvikvm( 1248): -------- MIR_OP_NULL_N_RANGE_UP_CHECK
D/dalvikvm( 1248): 0x428559e4 (0010): ldr     r0, [r5, #40]
D/dalvikvm( 1248): 0x428559e6 (0012): ldr     r1, [r5, #12]
D/dalvikvm( 1248): 0x428559e8 (0014): cbz     r0,0x42855a06
D/dalvikvm( 1248): 0x428559ea (0016): ldr     r0, [r0, #8]
D/dalvikvm( 1248): 0x428559ec (0018): subs    r1, #1
D/dalvikvm( 1248): 0x428559ee (001a): cmp     r1, r0
D/dalvikvm( 1248): 0x428559f0 (001c): bge     0x42855a06
D/dalvikvm( 1248): -------- MIR_OP_NULL_N_RANGE_UP_CHECK
D/dalvikvm( 1248): 0x428559f2 (001e): ldr     r0, [r5, #32]
D/dalvikvm( 1248): 0x428559f4 (0020): ldr     r1, [r5, #12]
D/dalvikvm( 1248): 0x428559f6 (0022): cbz     r0,0x42855a06
D/dalvikvm( 1248): 0x428559f8 (0024): ldr     r0, [r0, #8]
D/dalvikvm( 1248): 0x428559fa (0026): cmp     r1, r0
D/dalvikvm( 1248): 0x428559fc (0028): bge     0x42855a06
D/dalvikvm( 1248): -------- MIR_OP_LOWER_BOUND_CHECK
D/dalvikvm( 1248): 0x428559fe (002a): ldr     r0, [r5, #44]
D/dalvikvm( 1248): 0x42855a00 (002c): cmp     r0, #1
D/dalvikvm( 1248): 0x42855a02 (002e): blt     0x42855a06
D/dalvikvm( 1248): 0x42855a04 (0030): b       0x42855a08
D/dalvikvm( 1248): 0x42855a06 (0032): b       0x42855af0
D/dalvikvm( 1248): L0x002b:
D/dalvikvm( 1248): -------- MIR_OP_PHI
D/dalvikvm( 1248): -------- s20(v11_1) <- s11(v11_0) s46(v11_2)
D/dalvikvm( 1248): -------- dalvik offset: 0x002b @ aget-wide
D/dalvikvm( 1248): -------- s21(v12_1) s22(v13_1) <- s9(v9_0) s20(v11_1)
D/dalvikvm( 1248): 0x42855a08 (0034): ldr     r2, [r5, #36]
D/dalvikvm( 1248): 0x42855a0a (0036): ldr     r3, [r5, #44]
D/dalvikvm( 1248): 0x42855a0c (0038): adds    r2, r2, #16
D/dalvikvm( 1248): 0x42855a0e (003a): lsls    r3, r3, #3
D/dalvikvm( 1248): 0x42855a10 (003c): ldr     r0, [r2, r3]
D/dalvikvm( 1248): 0x42855a12 (003e): adds    r2, r2, #4
D/dalvikvm( 1248): 0x42855a14 (0040): ldr     r1, [r2, r3]
D/dalvikvm( 1248): -------- dalvik offset: 0x002d @ aget-wide
D/dalvikvm( 1248): -------- s23(v14_1) s24(v15_1) <- s10(v10_0) s20(v11_1)
D/dalvikvm( 1248): 0x42855a16 (0042): ldr     r3, [r5, #40]
D/dalvikvm( 1248): 0x42855a18 (0044): str     r0, [r5, #48]
D/dalvikvm( 1248): 0x42855a1a (0046): ldr     r0, [r5, #44]
D/dalvikvm( 1248): 0x42855a1c (0048): adds    r3, r3, #16
D/dalvikvm( 1248): 0x42855a1e (004a): lsls    r0, r0, #3
D/dalvikvm( 1248): 0x42855a20 (004c): str     r1, [r5, #52]
D/dalvikvm( 1248): 0x42855a22 (004e): ldr     r1, [r3, r0]
D/dalvikvm( 1248): 0x42855a24 (0050): adds    r3, r3, #4
D/dalvikvm( 1248): 0x42855a26 (0052): ldr     r2, [r3, r0]
D/dalvikvm( 1248): -------- dalvik offset: 0x002f @ add-double/2addr
D/dalvikvm( 1248): -------- s25(v12_2) s26(v13_2) <- s21(v12_1) s22(v13_1) s23(v14_1) s24(v15_1)
D/dalvikvm( 1248): 0x42855a28 (0054): str     r1, [r5, #56]
D/dalvikvm( 1248): 0x42855a2a (0056): str     r2, [r5, #60]
D/dalvikvm( 1248): 0x42855a2c (0058): vldr    d1, [r5, #48]
D/dalvikvm( 1248): 0x42855a30 (005c): vldr    d2, [r5, #56]
D/dalvikvm( 1248): 0x42855a34 (0060): vadd    d0, d1, d2
D/dalvikvm( 1248): -------- dalvik offset: 0x0030 @ const/4
D/dalvikvm( 1248): -------- s27(v14_2) <-
D/dalvikvm( 1248): 0x42855a38 (0064): movs    r2, #1
D/dalvikvm( 1248): -------- dalvik offset: 0x0031 @ sub-int
D/dalvikvm( 1248): -------- s28(v14_3) <- s20(v11_1) s27(v14_2)
D/dalvikvm( 1248): 0x42855a3a (0066): ldr     r3, [r5, #44]
D/dalvikvm( 1248): 0x42855a3c (0068): subs    r0, r3, r2
D/dalvikvm( 1248): -------- dalvik offset: 0x0033 @ aget-wide
D/dalvikvm( 1248): -------- s29(v14_4) s30(v15_2) <- s8(v8_0) s28(v14_3)
D/dalvikvm( 1248): 0x42855a3e (006a): ldr     r3, [r5, #32]
D/dalvikvm( 1248): 0x42855a40 (006c): adds    r3, r3, #16
D/dalvikvm( 1248): 0x42855a42 (006e): str     r0, [r5, #56]
D/dalvikvm( 1248): 0x42855a44 (0070): lsls    r0, r0, #3
D/dalvikvm( 1248): 0x42855a46 (0072): vstr    d0, [r5, #48]
D/dalvikvm( 1248): 0x42855a4a (0076): ldr     r1, [r3, r0]
D/dalvikvm( 1248): 0x42855a4c (0078): adds    r3, r3, #4
D/dalvikvm( 1248): 0x42855a4e (007a): ldr     r2, [r3, r0]
D/dalvikvm( 1248): -------- dalvik offset: 0x0035 @ add-double/2addr
D/dalvikvm( 1248): -------- s31(v12_3) s32(v13_3) <- s25(v12_2) s26(v13_2) s29(v14_4) s30(v15_2)
D/dalvikvm( 1248): 0x42855a50 (007c): str     r1, [r5, #56]
D/dalvikvm( 1248): 0x42855a52 (007e): str     r2, [r5, #60]
D/dalvikvm( 1248): 0x42855a54 (0080): vldr    d1, [r5, #48]
D/dalvikvm( 1248): 0x42855a58 (0084): vldr    d2, [r5, #56]
D/dalvikvm( 1248): 0x42855a5c (0088): vadd    d0, d1, d2
D/dalvikvm( 1248): -------- dalvik offset: 0x0036 @ add-int/lit8
D/dalvikvm( 1248): -------- s33(v14_5) <- s20(v11_1)
D/dalvikvm( 1248): 0x42855a60 (008c): ldr     r2, [r5, #44]
D/dalvikvm( 1248): 0x42855a62 (008e): adds    r2, r2, #1
D/dalvikvm( 1248): -------- dalvik offset: 0x0038 @ aget-wide
D/dalvikvm( 1248): -------- s34(v14_6) s35(v15_3) <- s8(v8_0) s33(v14_5)
D/dalvikvm( 1248): 0x42855a64 (0090): ldr     r1, [r5, #32]
D/dalvikvm( 1248): 0x42855a66 (0092): adds    r1, r1, #16
D/dalvikvm( 1248): 0x42855a68 (0094): str     r2, [r5, #56]
D/dalvikvm( 1248): 0x42855a6a (0096): lsls    r2, r2, #3
D/dalvikvm( 1248): 0x42855a6c (0098): vstr    d0, [r5, #48]
D/dalvikvm( 1248): 0x42855a70 (009c): ldr     r3, [r1, r2]
D/dalvikvm( 1248): 0x42855a72 (009e): adds    r1, r1, #4
D/dalvikvm( 1248): 0x42855a74 (00a0): ldr     r0, [r1, r2]
D/dalvikvm( 1248): -------- dalvik offset: 0x003a @ add-double/2addr
D/dalvikvm( 1248): -------- s36(v12_4) s37(v13_4) <- s31(v12_3) s32(v13_3) s34(v14_6) s35(v15_3)
D/dalvikvm( 1248): 0x42855a76 (00a2): str     r3, [r5, #56]
D/dalvikvm( 1248): 0x42855a78 (00a4): str     r0, [r5, #60]
D/dalvikvm( 1248): 0x42855a7a (00a6): vldr    d1, [r5, #48]
D/dalvikvm( 1248): 0x42855a7e (00aa): vldr    d2, [r5, #56]
D/dalvikvm( 1248): 0x42855a82 (00ae): vadd    d0, d1, d2
D/dalvikvm( 1248): 0x42855a86 (00b2): vstr    d0, [r5, #48]
D/dalvikvm( 1248): -------- dalvik offset: 0x003b @ mul-double/2addr
D/dalvikvm( 1248): -------- s38(v12_5) s39(v13_5) <- s36(v12_4) s37(v13_4) s4(v4_0) s5(v5_0)
D/dalvikvm( 1248): 0x42855a8a (00b6): vmov.f64 s2, s0
D/dalvikvm( 1248): 0x42855a8e (00ba): vldr    d2, [r5, #16]
D/dalvikvm( 1248): 0x42855a92 (00be): vmuld   d0, d1, d2
D/dalvikvm( 1248): -------- dalvik offset: 0x003c @ aget-wide
D/dalvikvm( 1248): -------- s40(v14_7) s41(v15_4) <- s8(v8_0) s20(v11_1)
D/dalvikvm( 1248): 0x42855a96 (00c2): ldr     r2, [r5, #32]
D/dalvikvm( 1248): 0x42855a98 (00c4): ldr     r3, [r5, #44]
D/dalvikvm( 1248): 0x42855a9a (00c6): adds    r2, r2, #16
D/dalvikvm( 1248): 0x42855a9c (00c8): lsls    r3, r3, #3
D/dalvikvm( 1248): 0x42855a9e (00ca): vstr    d0, [r5, #48]
D/dalvikvm( 1248): 0x42855aa2 (00ce): ldr     r0, [r2, r3]
D/dalvikvm( 1248): 0x42855aa4 (00d0): adds    r2, r2, #4
D/dalvikvm( 1248): 0x42855aa6 (00d2): ldr     r1, [r2, r3]
D/dalvikvm( 1248): 0x42855aa8 (00d4): str     r0, [r5, #56]
D/dalvikvm( 1248): 0x42855aaa (00d6): str     r1, [r5, #60]
D/dalvikvm( 1248): -------- dalvik offset: 0x003e @ mul-double
D/dalvikvm( 1248): -------- s42(v14_8) s43(v15_5) <- s40(v14_7) s41(v15_4) s16(v16_0) s17(v17_0)
D/dalvikvm( 1248): 0x42855aac (00d8): vldr    d1, [r5, #56]
D/dalvikvm( 1248): 0x42855ab0 (00dc): vldr    d2, [r5, #64]
D/dalvikvm( 1248): 0x42855ab4 (00e0): vmuld   d0, d1, d2
D/dalvikvm( 1248): 0x42855ab8 (00e4): vstr    d0, [r5, #56]
D/dalvikvm( 1248): -------- dalvik offset: 0x0040 @ add-double/2addr
D/dalvikvm( 1248): -------- s44(v12_6) s45(v13_6) <- s38(v12_5) s39(v13_5) s42(v14_8) s43(v15_5)
D/dalvikvm( 1248): 0x42855abc (00e8): vldr    d1, [r5, #48]
D/dalvikvm( 1248): 0x42855ac0 (00ec): vldr    d2, [r5, #56]
D/dalvikvm( 1248): 0x42855ac4 (00f0): vadd    d0, d1, d2
D/dalvikvm( 1248): 0x42855ac8 (00f4): vstr    d0, [r5, #48]
D/dalvikvm( 1248): -------- dalvik offset: 0x0041 @ aput-wide
D/dalvikvm( 1248): -------- s44(v12_6) s45(v13_6) s8(v8_0) s20(v11_1)
D/dalvikvm( 1248): 0x42855acc (00f8): ldr     r3, [r5, #32]
D/dalvikvm( 1248): 0x42855ace (00fa): ldr     r0, [r5, #44]
D/dalvikvm( 1248): 0x42855ad0 (00fc): adds    r3, r3, #16
D/dalvikvm( 1248): 0x42855ad2 (00fe): ldr     r1, [r5, #48]
D/dalvikvm( 1248): 0x42855ad4 (0100): ldr     r2, [r5, #52]
D/dalvikvm( 1248): 0x42855ad6 (0102): lsls    r0, r0, #3
D/dalvikvm( 1248): 0x42855ad8 (0104): str     r1, [r3, r0]
D/dalvikvm( 1248): 0x42855ada (0106): adds    r3, r3, #4
D/dalvikvm( 1248): 0x42855adc (0108): str     r2, [r3, r0]
D/dalvikvm( 1248): -------- dalvik offset: 0x0043 @ add-int/lit8
D/dalvikvm( 1248): -------- s46(v11_2) <- s20(v11_1)
D/dalvikvm( 1248): 0x42855ade (010a): ldr     r2, [r5, #44]
D/dalvikvm( 1248): 0x42855ae0 (010c): adds    r2, r2, #1
D/dalvikvm( 1248): 0x42855ae2 (010e): str     r2, [r5, #44]
D/dalvikvm( 1248): -------- dalvik offset: 0x0045 @ goto
D/dalvikvm( 1248): --------
D/dalvikvm( 1248): L0x0029:
D/dalvikvm( 1248): -------- dalvik offset: 0x0029 @ if-ge
D/dalvikvm( 1248): -------- s46(v11_2) s3(v3_0)
D/dalvikvm( 1248): 0x42855ae4 (0110): ldr     r0, [r5, #44]
D/dalvikvm( 1248): 0x42855ae6 (0112): ldr     r1, [r5, #12]
D/dalvikvm( 1248): 0x42855ae8 (0114): cmp     r0, r1
D/dalvikvm( 1248): 0x42855aea (0116): bge     0x42855aee
D/dalvikvm( 1248): 0x42855aec (0118): b       0x42855a08
D/dalvikvm( 1248): -------- exit offset: 0x0046
D/dalvikvm( 1248): 0x42855aee (011a): b       0x42855af8
D/dalvikvm( 1248): -------- reconstruct dalvik PC : 0x42a644d6 @ +0x002b
D/dalvikvm( 1248): 0x42855af0 (011c): ldr     r0, [pc, #32]
D/dalvikvm( 1248): Exception_Handling:
D/dalvikvm( 1248): 0x42855af2 (011e): ldr     r1, [r6, #84]
D/dalvikvm( 1248): 0x42855af4 (0120): blx     r1
D/dalvikvm( 1248): 0x42855af6 (0122): .align4
D/dalvikvm( 1248): -------- chaining cell (normal): 0x0046
D/dalvikvm( 1248): 0x42855af8 (0124): ldr     r0, [r6, #76]
D/dalvikvm( 1248): 0x42855afa (0126): blx     r0
D/dalvikvm( 1248): 0x42855afc (0128): data    0x450c(17676)
D/dalvikvm( 1248): 0x42855afe (012a): data    0x42a6(17062)
D/dalvikvm( 1248): 0x42855b14 (0140): .word (0x42a644d6)
D/dalvikvm( 1248): End Ljnt/scimark2/SOR;execute, 18 Dalvik instructions

14 years agomerge from open-source master
Jean-Baptiste Queru [Tue, 1 Sep 2009 17:08:49 +0000 (10:08 -0700)]
merge from open-source master

14 years agoMerge change 23362
Android (Google) Code Review [Tue, 1 Sep 2009 14:40:47 +0000 (07:40 -0700)]
Merge change 23362

* changes:
  Minor debugging tweaks to IndirectRefTable.

14 years agoam 2c23efcd: Update prefs to Harmony r772995.
Jesse Wilson [Mon, 31 Aug 2009 23:45:46 +0000 (16:45 -0700)]
am 2c23efcd: Update prefs to Harmony r772995.

Merge commit '2c23efcdb5bf7e055caa166e56cfdd50011f02df'

* commit '2c23efcdb5bf7e055caa166e56cfdd50011f02df':
  Update prefs to Harmony r772995.

14 years agoam b8f2972e: Merge change 23193 into eclair
Andy McFadden [Mon, 31 Aug 2009 23:43:20 +0000 (16:43 -0700)]
am b8f2972e: Merge change 23193 into eclair

Merge commit 'b8f2972e3ceef7e6bd5ae9763257dfae6fe06349'

* commit 'b8f2972e3ceef7e6bd5ae9763257dfae6fe06349':
  Expand indirect reference ifdefs.

14 years agoMinor debugging tweaks to IndirectRefTable.
Andy McFadden [Mon, 31 Aug 2009 23:39:23 +0000 (16:39 -0700)]
Minor debugging tweaks to IndirectRefTable.

Added serial number checks, fixed tests, updated logging.

14 years agoUpdate prefs to Harmony r772995.
Jesse Wilson [Mon, 31 Aug 2009 17:52:23 +0000 (10:52 -0700)]
Update prefs to Harmony r772995.

Notable changes:
 - exception handling has changed to cleanup more reliably
 - calls to Collection.toArray() size the array properly
 - lots of style tweaks (rewrapping Javadoc, reintending wrapped code, whitespace)
 - new PrefsTester class ensures tests store prefs in the tmp directory

Squashed commit of the following:

    commit 2157269d8ed39ccb8a71d735c12bbabcfd548243
    Merge: d287282 97818bf
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Wed Aug 5 11:14:26 2009 -0700

        Merge branch 'prefs_772995' into prefs_dalvik

        Conflicts:
         libcore/prefs/.classpath
         libcore/prefs/.settings/org.eclipse.jdt.core.prefs
         libcore/prefs/build.xml
         libcore/prefs/make/exclude.linux.x86_64.drl
         libcore/prefs/make/exclude.windows.x86.drl
         libcore/prefs/make/exclude.windows.x86_64.drl
         libcore/prefs/src/main/java/java/util/prefs/AbstractPreferences.java
         libcore/prefs/src/main/java/java/util/prefs/BackingStoreException.java
         libcore/prefs/src/main/java/java/util/prefs/FilePreferencesFactoryImpl.java
         libcore/prefs/src/main/java/java/util/prefs/FilePreferencesImpl.java
         libcore/prefs/src/main/java/java/util/prefs/InvalidPreferencesFormatException.java
         libcore/prefs/src/main/java/java/util/prefs/NodeChangeEvent.java
         libcore/prefs/src/main/java/java/util/prefs/NodeChangeListener.java
         libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeEvent.java
         libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeListener.java
         libcore/prefs/src/main/java/java/util/prefs/Preferences.java
         libcore/prefs/src/main/java/java/util/prefs/PreferencesFactory.java
         libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesFactoryImpl.java
         libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesImpl.java
         libcore/prefs/src/main/java/java/util/prefs/XMLParser.java
         libcore/prefs/src/main/java/org/apache/harmony/prefs/internal/nls/Messages.java
         libcore/prefs/src/main/native/prefs/windows/PreferencesImpl.c
         libcore/prefs/src/main/native/prefs/windows/hyprefs.rc
         libcore/prefs/src/main/native/prefs/windows/makefile
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AbstractPreferencesTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AllTests.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/FilePreferencesImplTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockAbstractPreferences.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockPreferencesFactory.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockSecurityManager.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/NodeChangeListenerTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferenceChangeListenerTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesFactoryTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
         libcore/prefs/src/test/java/tests/prefs/AllTests.java

    commit d287282b550d4a5d262f1d1703344ed61bdc6d15
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:36:36 2009 -0700

        Dalvik Prefs

    commit 97818bf21cfde744eeb5fbf1f9c31d9bd66f5a2e
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:35:52 2009 -0700

        Prefs 772995

    commit 9a506f93947938dad3b41e1393f53b766ba0319f
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:22:40 2009 -0700

        Prefs 527399

14 years agoMerge change 23193 into eclair
Android (Google) Code Review [Mon, 31 Aug 2009 14:23:31 +0000 (07:23 -0700)]
Merge change 23193 into eclair

* changes:
  Expand indirect reference ifdefs.

14 years agoExpand indirect reference ifdefs.
Andy McFadden [Fri, 28 Aug 2009 21:45:12 +0000 (14:45 -0700)]
Expand indirect reference ifdefs.

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.

14 years agoam 3f7a2590: Merge change 22992 into eclair
Lorenzo Colitti [Fri, 28 Aug 2009 21:20:37 +0000 (14:20 -0700)]
am 3f7a2590: Merge change 22992 into eclair

Merge commit '3f7a259014f94b6515f4a5668431656498705d59'

* commit '3f7a259014f94b6515f4a5668431656498705d59':
  Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.

14 years agoMerge change 22992 into eclair
Android (Google) Code Review [Fri, 28 Aug 2009 21:01:15 +0000 (14:01 -0700)]
Merge change 22992 into eclair

* changes:
  Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.

14 years agoam af0e8388: Fix reporting of certain verify errors.
Andy McFadden [Fri, 28 Aug 2009 18:13:18 +0000 (11:13 -0700)]
am af0e8388: Fix reporting of certain verify errors.

Merge commit 'af0e838887d3a2fa76e0d2716e39adf2bb0c01a1'

* commit 'af0e838887d3a2fa76e0d2716e39adf2bb0c01a1':
  Fix reporting of certain verify errors.

14 years agoMerge change 22527
Android (Google) Code Review [Fri, 28 Aug 2009 17:55:48 +0000 (10:55 -0700)]
Merge change 22527

* changes:
  More work on getting Dalvik to build on the host (particularly OSX).

14 years agoFix reporting of certain verify errors.
Andy McFadden [Fri, 28 Aug 2009 17:38:37 +0000 (10:38 -0700)]
Fix reporting of certain verify errors.

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.

14 years agoMerge change 23113
Android (Google) Code Review [Fri, 28 Aug 2009 17:35:07 +0000 (10:35 -0700)]
Merge change 23113

* changes:
  Improved codegen for inline, continuing codegen restructuring

14 years agoImproved codegen for inline, continuing codegen restructuring
Bill Buzbee [Thu, 27 Aug 2009 20:58:09 +0000 (13:58 -0700)]
Improved codegen for inline, continuing codegen restructuring

Added support for Thumb2 IT.  Moved compare-long and floating point
comparisons inline.  Temporarily disabled use of Thumb2 CBZ & CBNZ
because they were causing too many out-of-range assembly restarts.
Bug fix for LIR3 assert.

14 years agoMerge change 9368
Android Code Review [Fri, 28 Aug 2009 15:41:53 +0000 (08:41 -0700)]
Merge change 9368

* changes:
  libcore/.../rg_apache_harmony_xml_ExpatParser: in C++, the return type of strchr(const char*) is 'const char*' instead of 'char *'.

14 years agoAnnotate tests that are failing due to legacy IP address formats that have not been...
Lorenzo Colitti [Thu, 27 Aug 2009 22:32:55 +0000 (15:32 -0700)]
Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.

Change-Id: Ifdf236450007866f24c8b23d52617c41d4e9c324

14 years agoam 9495a944: Merge change 22965 into eclair
Andy McFadden [Thu, 27 Aug 2009 21:33:01 +0000 (14:33 -0700)]
am 9495a944: Merge change 22965 into eclair

Merge commit '9495a9449e2f429517bac0d35722b2e9f101f5a9'

* commit '9495a9449e2f429517bac0d35722b2e9f101f5a9':
  Fix some JNI indirect reference stuff.

14 years agoMerge change 22965 into eclair
Android (Google) Code Review [Thu, 27 Aug 2009 21:28:38 +0000 (14:28 -0700)]
Merge change 22965 into eclair

* changes:
  Fix some JNI indirect reference stuff.

14 years agoam a055db83: Update x-net to Harmony r802921.
Jesse Wilson [Thu, 27 Aug 2009 21:19:58 +0000 (14:19 -0700)]
am a055db83: Update x-net to Harmony r802921.

Merge commit 'a055db83f05034fcd5564ab5930e8d16d4ececfb'

* commit 'a055db83f05034fcd5564ab5930e8d16d4ececfb':
  Update x-net to Harmony r802921.

14 years agoUpdate x-net to Harmony r802921.
Jesse Wilson [Tue, 25 Aug 2009 23:30:17 +0000 (16:30 -0700)]
Update x-net to Harmony r802921.

Notable changes
 - synchronization added where it was needed!
 - try/finally added to reliably tear down in DefaultSSLContext
 - ContextImpl deleted, it wasn't necessary
 - methods reordered to make statics first in the class
 - PrivilegedActions parameterized with <Void>
 - DigitalSignature now throws AssertionErrors in impossible states
   and throws AlertExceptions on invalid keys (rather than dumping
   a stacktrace)
 - ValueKeys added to SSLSessionImpl instead of TwoKeyMaps
 - SSLSessionImpl.clone() simplified to do a traditional clone

Squashed commit of the following:

commit 2d9e43d542ab7086af271bf52e847c582decbab1
Merge: 8b79eb4 a8dc377
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 15:25:21 2009 -0700

    Merge branch 'x-net_802921' into x-net_dalvik

    Conflicts:
     libcore/x-net/.classpath
     libcore/x-net/.settings/org.eclipse.jdt.core.prefs
     libcore/x-net/build.xml
     libcore/x-net/src/main/java/javax/net/DefaultServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/DefaultSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/SocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/CertPathTrustManagerParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLContext.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedEvent.java
     libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedListener.java
     libcore/x-net/src/main/java/javax/net/ssl/HostnameVerifier.java
     libcore/x-net/src/main/java/javax/net/ssl/HttpsURLConnection.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactorySpi.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyStoreBuilderParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/ManagerFactoryParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLContext.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLContextSpi.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLEngine.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLEngineResult.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLHandshakeException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLKeyException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLPeerUnverifiedException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLPermission.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLProtocolException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocket.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSession.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingEvent.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingListener.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionContext.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSocket.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManager.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactorySpi.java
     libcore/x-net/src/main/java/javax/net/ssl/X509ExtendedKeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/X509KeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/X509TrustManager.java
     libcore/x-net/src/main/java/javax/net/ssl/package-info.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/ClientHandshakeImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/HandshakeProtocol.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/JSSEProvider.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/KeyManagerImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLSocketImplWrapper.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLContextImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketFactoryImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoryImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketInputStream.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketOutputStream.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/CertPathTrustManagerParametersTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HandshakeCompletedEventTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HttpsURLConnectionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/KeyStoreBuilderParametersTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLContext1Test.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLEngineTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLPermissionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLServerSocketTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLSocketTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/TrustManagerFactory1Test.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/HandshakeCompletedEventTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLHandshakeExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLKeyExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLPeerUnverifiedExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLProtocolExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLSessionBindingEventTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/SocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/HttpsURLConnection_ImplTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/CipherSuiteTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/DigitalSignatureTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/HandshakeProtocolTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/KeyManagerImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLEngineImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoriesTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFunctionalTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLStreamedInputTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/ServerHandshakeImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/TrustManagerImplTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/DigitalSignatureTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/KeyManagerFactoryImplTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/ProtocolVersionTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/TrustManagerFactoryImplTest.java
     libcore/x-net/src/test/java/javax/net/ssl/KeyManagerFactorySpiTests.java
     libcore/x-net/src/test/java/javax/net/ssl/MyKeyManagerFactorySpi.java
     libcore/x-net/src/test/java/javax/net/ssl/MySSLContextSpi.java
     libcore/x-net/src/test/java/javax/net/ssl/MyTrustManagerFactorySpi.java
     libcore/x-net/src/test/java/javax/net/ssl/SSLContextSpiTests.java
     libcore/x-net/src/test/java/javax/net/ssl/TrustManagerFactorySpiTests.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory1Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory2Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLContext2Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLSessionBindingEventTest.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/TrustManagerFactory2Test.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyKeyManagerFactorySpi.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MySSLContextSpi.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyTrustManagerFactorySpi.java

commit 8b79eb40a27f0b336d5516606d43162ecead09ca
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:58:17 2009 -0700

    x-net_dalvik

commit a8dc3778cd2a1a5d6d0cfff6eec22e7bfbdb9c14
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:56:55 2009 -0700

    x-net_802921

commit 07ca0ed8aa5927c909f880559c17d162c111608e
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:56:07 2009 -0700

    x-net_527399

commit 9b44ccfc38c2fc2a6cf2c3cc39a13cc5bce635ba
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 11:14:01 2009 -0700

    Small changes missed in the original submission of 22482.

14 years agoFix some JNI indirect reference stuff.
Andy McFadden [Wed, 26 Aug 2009 14:21:53 +0000 (07:21 -0700)]
Fix some JNI indirect reference stuff.

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.

14 years agoMerge change 10635
Android Code Review [Thu, 27 Aug 2009 18:40:51 +0000 (11:40 -0700)]
Merge change 10635

* changes:
  Add a bit-map encoding of Object-reference field offsets to ClassObject.

14 years agoam 3a9a1a10: Merge change 22845 into eclair
Lorenzo Colitti [Thu, 27 Aug 2009 17:42:49 +0000 (10:42 -0700)]
am 3a9a1a10: Merge change 22845 into eclair

Merge commit '3a9a1a10d85e7c26293ac8ea95de70763b9c317f'

* commit '3a9a1a10d85e7c26293ac8ea95de70763b9c317f':
  IPv6 fixes to java.net.InetAddress.

14 years agoMerge change 22845 into eclair
Android (Google) Code Review [Thu, 27 Aug 2009 17:38:52 +0000 (10:38 -0700)]
Merge change 22845 into eclair

* changes:
  IPv6 fixes to java.net.InetAddress.

14 years agoMerge change 22193
Android (Google) Code Review [Thu, 27 Aug 2009 17:30:27 +0000 (10:30 -0700)]
Merge change 22193

* changes:
  Replace existing HashMap and LinkedHashMap with faster versions. Among other optimizations, the new versions do no division and use a high-quality defensive hash function to minimize the odds of poor key distribution among buckets.  Third time's a charm.

14 years agoReplace existing HashMap and LinkedHashMap with faster versions.
Joshua Bloch [Fri, 21 Aug 2009 00:34:39 +0000 (17:34 -0700)]
Replace existing HashMap and LinkedHashMap with faster versions.
Among other optimizations, the new versions do no division and
use a high-quality defensive hash function to minimize the odds
of poor key distribution among buckets.  Third time's a charm.

14 years agoIPv6 fixes to java.net.InetAddress.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
IPv6 fixes to java.net.InetAddress.

1. Make hashCode() do something that makes sense for IPv6 addresses.
2. Expand coverage of hashCode unit test.
3. Fix failing regression test for getAllByName().
4. Document that the getByName test is broken. I will fix it in a future change.
5. Expand test coverage of the isMulticastAddress test to include IPv6 and
   non-multicast addresses.

All tests now pass.

Change-Id: I6f52c7c3213dd01bf773228b1ed5d44df813f877

14 years agoam d00ed329: am dfd0afbc: Each time we start an SSL session, we have to find the...
Bob Lee [Thu, 27 Aug 2009 00:32:57 +0000 (17:32 -0700)]
am d00ed329: am dfd0afbc: Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we\'re looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

Merge commit 'd00ed3291d6a2d84e14d5149826ccb4bd9de35b4'

* commit 'd00ed3291d6a2d84e14d5149826ccb4bd9de35b4':
  Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

14 years agoam dfd0afbc: Each time we start an SSL session, we have to find the trust anchor...
Bob Lee [Thu, 27 Aug 2009 00:28:52 +0000 (17:28 -0700)]
am dfd0afbc: Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we\'re looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

Merge commit 'dfd0afbcb08b871e224a28ecb4ed427a7693545c' into eclair

* commit 'dfd0afbcb08b871e224a28ecb4ed427a7693545c':
  Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

14 years agoMore work on getting Dalvik to build on the host (particularly OSX).
Dan Bornstein [Tue, 25 Aug 2009 00:50:34 +0000 (17:50 -0700)]
More work on getting Dalvik to build on the host (particularly OSX).

The dalvikvm executable still doesn't quite build (fails in linker), which
is probably due to the core library native code not getting compiled and
linked. Unfortunately, it looks like that will be pretty hairy to untangle.

Change-Id: Ib5de623e43a40116c4b7459a45a246d76886edf3

14 years agoam 7ae5f692: Update sql to Harmony 802921.
Jesse Wilson [Wed, 26 Aug 2009 23:46:19 +0000 (16:46 -0700)]
am 7ae5f692: Update sql to Harmony 802921.

Merge commit '7ae5f6927b1b186bb54b94e7907cb245f0979fde'

* commit '7ae5f6927b1b186bb54b94e7907cb245f0979fde':
  Update sql to Harmony 802921.

14 years agoUpdate sql to Harmony 802921.
Jesse Wilson [Wed, 26 Aug 2009 23:09:16 +0000 (16:09 -0700)]
Update sql to Harmony 802921.

Notable changes
 - ConnectionEvent field changed for serialization
 - Date toString classes no longer use SimpleDateFormat
 - Timestamp doesn't call through an overridable method in its constructor
 - Timestamp now checks the String passed to valueOf() using a regex
 - Properties now specifies a buffer size to avoid a user-inescapable warning

Squashed commit of the following:

commit dd9926cddda4db0227adbc174070791e5a9afa72
Merge: 8be3b27 4bed1fc
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 10:34:56 2009 -0700

    Merge branch 'sql_802921' into sql_dalvik

    Conflicts:
     libcore/sql/.classpath
     libcore/sql/META-INF/MANIFEST.MF
     libcore/sql/build.xml
     libcore/sql/src/main/java/java/sql/Array.java
     libcore/sql/src/main/java/java/sql/BatchUpdateException.java
     libcore/sql/src/main/java/java/sql/Blob.java
     libcore/sql/src/main/java/java/sql/CallableStatement.java
     libcore/sql/src/main/java/java/sql/Clob.java
     libcore/sql/src/main/java/java/sql/Connection.java
     libcore/sql/src/main/java/java/sql/DataTruncation.java
     libcore/sql/src/main/java/java/sql/DatabaseMetaData.java
     libcore/sql/src/main/java/java/sql/Date.java
     libcore/sql/src/main/java/java/sql/Driver.java
     libcore/sql/src/main/java/java/sql/DriverManager.java
     libcore/sql/src/main/java/java/sql/DriverPropertyInfo.java
     libcore/sql/src/main/java/java/sql/ParameterMetaData.java
     libcore/sql/src/main/java/java/sql/PreparedStatement.java
     libcore/sql/src/main/java/java/sql/Ref.java
     libcore/sql/src/main/java/java/sql/ResultSet.java
     libcore/sql/src/main/java/java/sql/ResultSetMetaData.java
     libcore/sql/src/main/java/java/sql/SQLData.java
     libcore/sql/src/main/java/java/sql/SQLException.java
     libcore/sql/src/main/java/java/sql/SQLInput.java
     libcore/sql/src/main/java/java/sql/SQLOutput.java
     libcore/sql/src/main/java/java/sql/SQLPermission.java
     libcore/sql/src/main/java/java/sql/SQLWarning.java
     libcore/sql/src/main/java/java/sql/Savepoint.java
     libcore/sql/src/main/java/java/sql/Statement.java
     libcore/sql/src/main/java/java/sql/Struct.java
     libcore/sql/src/main/java/java/sql/Time.java
     libcore/sql/src/main/java/java/sql/Timestamp.java
     libcore/sql/src/main/java/java/sql/Types.java
     libcore/sql/src/main/java/javax/sql/ConnectionEvent.java
     libcore/sql/src/main/java/javax/sql/ConnectionEventListener.java
     libcore/sql/src/main/java/javax/sql/ConnectionPoolDataSource.java
     libcore/sql/src/main/java/javax/sql/DataSource.java
     libcore/sql/src/main/java/javax/sql/PooledConnection.java
     libcore/sql/src/main/java/javax/sql/RowSet.java
     libcore/sql/src/main/java/javax/sql/RowSetEvent.java
     libcore/sql/src/main/java/javax/sql/RowSetInternal.java
     libcore/sql/src/main/java/javax/sql/RowSetListener.java
     libcore/sql/src/main/java/javax/sql/RowSetMetaData.java
     libcore/sql/src/main/java/javax/sql/RowSetReader.java
     libcore/sql/src/main/java/javax/sql/RowSetWriter.java
     libcore/sql/src/main/java/javax/sql/rowset/BaseRowSet.java
     libcore/sql/src/main/java/javax/sql/rowset/WebRowSet.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialClob.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialDatalink.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialException.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialJavaObject.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialRef.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialStruct.java
     libcore/sql/src/main/java/javax/sql/rowset/spi/SyncFactory.java
     libcore/sql/src/main/java/javax/sql/rowset/spi/SyncProvider.java
     libcore/sql/src/main/java/javax/transaction/xa/XAException.java
     libcore/sql/src/main/java/org/apache/harmony/sql/internal/nls/Messages.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/BatchUpdateExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ConnectionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DataTruncationTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DatabaseMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DateTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverManagerTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverPropertyInfoTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ParameterMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLPermissionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLWarningTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/StatementTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_ClassLoader.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_DriverManager.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimeTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimestampTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TypesTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/ConnectionEventTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/BaseRowSetTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialClobTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialJavaObjectTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialRefTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialStructTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/InvalidTransactionExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRequiredExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRolledbackExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAResourceTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XidTest.java

commit 8be3b27082122a5c5b650ad5aad6a70b45fd58d4
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:39:01 2009 -0700

    Dalvik SQL

commit 4bed1fc3972b50198299137dc152d46dd9d5d532
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:38:11 2009 -0700

    SQL 802921

commit 82f57ed5049955585aecfae659310b6bde3354d8
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:36:42 2009 -0700

    SQL 527399

14 years agoEach time we start an SSL session, we have to find the trust anchor. This used to...
Bob Lee [Wed, 26 Aug 2009 05:32:37 +0000 (22:32 -0700)]
Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

14 years agoMerge change 22370
Android (Google) Code Review [Wed, 26 Aug 2009 17:03:03 +0000 (10:03 -0700)]
Merge change 22370

* changes:
  Thumb/Thumb2 instruction selection rework.

14 years agoAdd a bit-map encoding of Object-reference field offsets to ClassObject.
Barry Hayes [Wed, 8 Jul 2009 17:01:56 +0000 (10:01 -0700)]
Add a bit-map encoding of Object-reference field offsets to ClassObject.

Class.c populates a new field with a bit for each of the first 32 instance
fields, to show if it is a reference or not, and an escape value if there is a
reference field beyond 32.

The GC uses the encoded bitmap -- if available -- to extract Object refererences
from DataObjects.

14 years agoam f7fb0086: Merge change 22659 into eclair
Andy McFadden [Wed, 26 Aug 2009 14:24:01 +0000 (07:24 -0700)]
am f7fb0086: Merge change 22659 into eclair

Merge commit 'f7fb00865dd05c32aab5b968fd79ae0ef63e9d6c'

* commit 'f7fb00865dd05c32aab5b968fd79ae0ef63e9d6c':
  Another round of scary indirect ref changes.

14 years agoMerge change 22659 into eclair
Android (Google) Code Review [Wed, 26 Aug 2009 14:19:51 +0000 (07:19 -0700)]
Merge change 22659 into eclair

* changes:
  Another round of scary indirect ref changes.

14 years agoFix "whatever".split(".") behavior.
Elliott Hughes [Tue, 25 Aug 2009 19:55:27 +0000 (12:55 -0700)]
Fix "whatever".split(".") behavior.

Two special cases in Pattern.split's behavior had been incorrectly combined
into one. Separate the two cases, and add tests. I've run the tests against
Java 1.5 and 1.6 too.

Bug: 1957900

14 years agoThumb/Thumb2 instruction selection rework.
Bill Buzbee [Thu, 13 Aug 2009 23:58:07 +0000 (16:58 -0700)]
Thumb/Thumb2 instruction selection rework.

Change-id: I7428278f07f49e675d0271c58b3cbf1f6a4e9da1

14 years agoAnother round of scary indirect ref changes.
Andy McFadden [Tue, 25 Aug 2009 14:19:34 +0000 (07:19 -0700)]
Another round of scary indirect ref changes.

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).

14 years agoam 9b44ccfc: Small changes missed in the original submission of 22482.
Jesse Wilson [Tue, 25 Aug 2009 18:19:50 +0000 (11:19 -0700)]
am 9b44ccfc: Small changes missed in the original submission of 22482.

Merge commit '9b44ccfc38c2fc2a6cf2c3cc39a13cc5bce635ba'

* commit '9b44ccfc38c2fc2a6cf2c3cc39a13cc5bce635ba':
  Small changes missed in the original submission of 22482.

14 years agoSmall changes missed in the original submission of 22482.
Jesse Wilson [Tue, 25 Aug 2009 18:14:01 +0000 (11:14 -0700)]
Small changes missed in the original submission of 22482.

14 years agoam 35e16314: Merge change 22482 into eclair
Jesse Wilson [Tue, 25 Aug 2009 18:11:25 +0000 (11:11 -0700)]
am 35e16314: Merge change 22482 into eclair

Merge commit '35e163146caf81f824641c4560b8e118697fab1b'

* commit '35e163146caf81f824641c4560b8e118697fab1b':
  Update java.text to Harmony r802921.

14 years agoMerge change 22482 into eclair
Android (Google) Code Review [Tue, 25 Aug 2009 18:07:15 +0000 (11:07 -0700)]
Merge change 22482 into eclair

* changes:
  Update java.text to Harmony r802921.

14 years agoBe more POSIXly correct in the use of expr.
Dan Bornstein [Wed, 12 Aug 2009 19:16:40 +0000 (12:16 -0700)]
Be more POSIXly correct in the use of expr.

14 years agoam 0083d37b: Use local references for native method args.
Andy McFadden [Mon, 24 Aug 2009 23:08:23 +0000 (16:08 -0700)]
am 0083d37b: Use local references for native method args.

Merge commit '0083d37b0e1c9e542f671cbca2e9db6819ecccba'

* commit '0083d37b0e1c9e542f671cbca2e9db6819ecccba':
  Use local references for native method args.

14 years agoUse local references for native method args.
Andy McFadden [Fri, 21 Aug 2009 21:44:04 +0000 (14:44 -0700)]
Use local references for native method args.

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.

14 years agoUpdate java.text to Harmony r802921.
Jesse Wilson [Mon, 24 Aug 2009 21:05:44 +0000 (14:05 -0700)]
Update java.text to Harmony r802921.

Notable changes:
 - Replaced some StringBuffers with StringBuilders
 - Harmony moved to ICU, we stayed with ResourceBundles
 - Harmony now uses ICU's Bidi, we continue to use BidiWrapper
 - Fixed DateFormat.readResolve()
 - Fixed DecimalFormat serialization for setMaximumIntegerDigits
 - Fixed currency to support "XXX" for null
 - Support for null in MessageFormat.format()
 - Rearranged methods in SimpleDateFormat. Body is the same.
 - Fixed tests for Bidi.getRunLimit(). These are new failures.

commit 112ab830475bc1a1fab9c7a16589b5525892e6a0
Merge: 39b03a1 62c2b2e
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 24 14:03:31 2009 -0700

    Merge dalvik and Harmony for java.text

    Conflicts:
     libcore/text/.classpath
     libcore/text/META-INF/MANIFEST.MF
     libcore/text/build.xml
     libcore/text/make/exclude.common
     libcore/text/make/run-test.xml
     libcore/text/src/main/java/java/text/Annotation.java
     libcore/text/src/main/java/java/text/AttributedCharacterIterator.java
     libcore/text/src/main/java/java/text/AttributedString.java
     libcore/text/src/main/java/java/text/Bidi.java
     libcore/text/src/main/java/java/text/BreakIterator.java
     libcore/text/src/main/java/java/text/CharacterIterator.java
     libcore/text/src/main/java/java/text/ChoiceFormat.java
     libcore/text/src/main/java/java/text/CollationElementIterator.java
     libcore/text/src/main/java/java/text/CollationKey.java
     libcore/text/src/main/java/java/text/Collator.java
     libcore/text/src/main/java/java/text/DateFormat.java
     libcore/text/src/main/java/java/text/DateFormatSymbols.java
     libcore/text/src/main/java/java/text/DecimalFormat.java
     libcore/text/src/main/java/java/text/DecimalFormatSymbols.java
     libcore/text/src/main/java/java/text/FieldPosition.java
     libcore/text/src/main/java/java/text/Format.java
     libcore/text/src/main/java/java/text/MessageFormat.java
     libcore/text/src/main/java/java/text/NumberFormat.java
     libcore/text/src/main/java/java/text/ParseException.java
     libcore/text/src/main/java/java/text/ParsePosition.java
     libcore/text/src/main/java/java/text/RuleBasedCollator.java
     libcore/text/src/main/java/java/text/SimpleDateFormat.java
     libcore/text/src/main/java/java/text/StringCharacterIterator.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/AttributedCharacterIteratorAttributeTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/CollationElementIteratorTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatSymbolsTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/FieldPositionTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/MessageFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/ParsePositionTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java

commit 39b03a1b2b150d468cc15d8ff8a92a07c9098a5c
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:36 2009 -0700

    text_dalvik

commit 62c2b2e932da51858998820fe2558631999c1241
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:23 2009 -0700

    text_802921

commit 2da8bc3457b9db827d96652e2bf159b7d5040ad1
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:08 2009 -0700

    text_527399

14 years agoMerge change 10758
Android Code Review [Mon, 24 Aug 2009 21:00:21 +0000 (14:00 -0700)]
Merge change 10758

* changes:
  Fix broken link in docstring. issue 1194

15 years agoFix jeffhao's build breakage by not including unnecessary header files.
Ben Cheng [Fri, 21 Aug 2009 23:18:46 +0000 (16:18 -0700)]
Fix jeffhao's build breakage by not including unnecessary header files.

15 years agoNew changes to enable self verification mode.
Jeff Hao [Wed, 12 Aug 2009 23:57:15 +0000 (16:57 -0700)]
New changes to enable self verification mode.

15 years agoam 48a96f51: Set os.arch property from uname().machine.
Andy McFadden [Fri, 21 Aug 2009 20:42:49 +0000 (13:42 -0700)]
am 48a96f51: Set os.arch property from uname().machine.

Merge commit '48a96f5133f33adaadbc0187503a35f03f1348ac'

* commit '48a96f5133f33adaadbc0187503a35f03f1348ac':
  Set os.arch property from uname().machine.

15 years agoSet os.arch property from uname().machine.
Andy McFadden [Fri, 21 Aug 2009 20:03:31 +0000 (13:03 -0700)]
Set os.arch property from uname().machine.

Not sure why we didn't just do this in the first place.  I get "x86_64"
on desktop and "armv6l" on a sapphire.

15 years agoam c26bb63b: Move array pinning out of global references table.
Andy McFadden [Fri, 21 Aug 2009 19:36:24 +0000 (12:36 -0700)]
am c26bb63b: Move array pinning out of global references table.

Merge commit 'c26bb63b50c7a855d25b396b1bf23a3aa6929b48'

* commit 'c26bb63b50c7a855d25b396b1bf23a3aa6929b48':
  Move array pinning out of global references table.

15 years agoMove array pinning out of global references table.
Andy McFadden [Fri, 21 Aug 2009 19:01:31 +0000 (12:01 -0700)]
Move array pinning out of global references table.

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.)

15 years agoam ecd31154: Merge change 22183 into eclair
Andy McFadden [Fri, 21 Aug 2009 14:28:18 +0000 (07:28 -0700)]
am ecd31154: Merge change 22183 into eclair

Merge commit 'ecd3115415793a6d39d3092bbba569bad77eb765'

* commit 'ecd3115415793a6d39d3092bbba569bad77eb765':
  Progress toward indirect JNI references.

15 years agoMerge change 22183 into eclair
Android (Google) Code Review [Fri, 21 Aug 2009 14:24:25 +0000 (07:24 -0700)]
Merge change 22183 into eclair

* changes:
  Progress toward indirect JNI references.

15 years agoam 79941ae1: am 2b2e488b: Exposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 02:37:58 +0000 (19:37 -0700)]
am 79941ae1: am 2b2e488b: Exposed default trust manager.

Merge commit '79941ae140b99de2676ce00c368c82cffbbb248b'

* commit '79941ae140b99de2676ce00c368c82cffbbb248b':
  Exposed default trust manager.

15 years agoam 2b2e488b: Exposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 02:33:27 +0000 (19:33 -0700)]
am 2b2e488b: Exposed default trust manager.

Merge commit '2b2e488b25922b0b34094305cac084073ffbd03c' into eclair

* commit '2b2e488b25922b0b34094305cac084073ffbd03c':
  Exposed default trust manager.

15 years agoExposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 00:34:58 +0000 (17:34 -0700)]
Exposed default trust manager.

15 years agoProgress toward indirect JNI references.
Andy McFadden [Wed, 19 Aug 2009 14:21:41 +0000 (07:21 -0700)]
Progress toward indirect JNI references.

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.)

15 years agoam 6070dfcb: Merge change 22152 into eclair
Andy McFadden [Thu, 20 Aug 2009 23:20:05 +0000 (16:20 -0700)]
am 6070dfcb: Merge change 22152 into eclair

Merge commit '6070dfcb6b216bd338874d7626aeb4c4ce93ea8e'

* commit '6070dfcb6b216bd338874d7626aeb4c4ce93ea8e':
  Fix a couple of compiler warnings.

15 years agoMerge change 22152 into eclair
Android (Google) Code Review [Thu, 20 Aug 2009 23:16:35 +0000 (16:16 -0700)]
Merge change 22152 into eclair

* changes:
  Fix a couple of compiler warnings.

15 years agoFix a couple of compiler warnings.
Andy McFadden [Thu, 20 Aug 2009 23:13:05 +0000 (16:13 -0700)]
Fix a couple of compiler warnings.

15 years agoam a537230a: Merge change 21907 into eclair
Andy McFadden [Wed, 19 Aug 2009 18:09:31 +0000 (11:09 -0700)]
am a537230a: Merge change 21907 into eclair

Merge commit 'a537230a989cd58570cdb5ebf0f75346fe79515b'

* commit 'a537230a989cd58570cdb5ebf0f75346fe79515b':
  Update storage size after expansion.

15 years agoMerge change 21907 into eclair
Android (Google) Code Review [Wed, 19 Aug 2009 18:03:58 +0000 (11:03 -0700)]
Merge change 21907 into eclair

* changes:
  Update storage size after expansion.

15 years agoam d1588bba: Merge change 21833 into eclair
Jesse Wilson [Wed, 19 Aug 2009 17:38:03 +0000 (10:38 -0700)]
am d1588bba: Merge change 21833 into eclair

Merge commit 'd1588bba601a319e6b6b99e797686b203822e8a6'

* commit 'd1588bba601a319e6b6b99e797686b203822e8a6':
  Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.

15 years agoMerge change 21833 into eclair
Android (Google) Code Review [Wed, 19 Aug 2009 17:33:42 +0000 (10:33 -0700)]
Merge change 21833 into eclair

* changes:
  Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.

15 years agoUpdate storage size after expansion.
Andy McFadden [Wed, 19 Aug 2009 17:32:01 +0000 (10:32 -0700)]
Update storage size after expansion.

We allow expansion in dvmSetBit(), but failed to update the capacity
after doing so.

15 years agoam fe79541b: Enable IPv6.
Lorenzo Colitti [Wed, 19 Aug 2009 01:06:21 +0000 (18:06 -0700)]
am fe79541b: Enable IPv6.

Merge commit 'fe79541b5cc5a490dd3a5b2e68f884fdfad4ca76'

* commit 'fe79541b5cc5a490dd3a5b2e68f884fdfad4ca76':
  Enable IPv6.

15 years agoFixing Unsafe.getUnsafe() to look up the stack the correct number of frames.
Jesse Wilson [Wed, 19 Aug 2009 00:21:31 +0000 (17:21 -0700)]
Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.

Also tests for Unsafe.getUnsafe() and all the requisite AllTests files
to make that show up in the continuous build.

15 years agoam 64520c8c: Merge change 21796 into eclair
Andy McFadden [Wed, 19 Aug 2009 00:19:55 +0000 (17:19 -0700)]
am 64520c8c: Merge change 21796 into eclair

Merge commit '64520c8c453b03190e33818306ffed3041133ea3'

* commit '64520c8c453b03190e33818306ffed3041133ea3':
  Turn down RegisterMap paranoia.

15 years agoam 03bd0d5b: Minor tweaks to JNI logging.
Andy McFadden [Wed, 19 Aug 2009 00:19:52 +0000 (17:19 -0700)]
am 03bd0d5b: Minor tweaks to JNI logging.

Merge commit '03bd0d5b9b9d769e6e5245274204fbfd470de7f0'

* commit '03bd0d5b9b9d769e6e5245274204fbfd470de7f0':
  Minor tweaks to JNI logging.

15 years agoEnable IPv6.
Lorenzo Colitti [Tue, 18 Aug 2009 23:14:33 +0000 (16:14 -0700)]
Enable IPv6.

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.

15 years agoMerge change 21796 into eclair
Android (Google) Code Review [Tue, 18 Aug 2009 22:37:06 +0000 (15:37 -0700)]
Merge change 21796 into eclair

* changes:
  Turn down RegisterMap paranoia.

15 years agoMinor tweaks to JNI logging.
Andy McFadden [Tue, 18 Aug 2009 22:32:27 +0000 (15:32 -0700)]
Minor tweaks to JNI logging.

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).

15 years agoTurn down RegisterMap paranoia.
Andy McFadden [Tue, 18 Aug 2009 22:11:35 +0000 (15:11 -0700)]
Turn down RegisterMap paranoia.

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.

15 years agoam d12092a5: am affecd77: Cleanup CTS core failing tests.
Brett Chabot [Tue, 18 Aug 2009 19:08:37 +0000 (12:08 -0700)]
am d12092a5: am affecd77: Cleanup CTS core failing tests.

Merge commit 'd12092a5b23c40a92ef51a46c3aa273af52587a3'

* commit 'd12092a5b23c40a92ef51a46c3aa273af52587a3':
  Cleanup CTS core failing tests.