<feed xmlns='http://www.w3.org/2005/Atom'>
<title>android_dalvik, branch froyo</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/'/>
<entry>
<title>Use GCC visibility to reduce the size of libdvm by 10%</title>
<updated>2010-11-20T07:14:14+00:00</updated>
<author>
<name>Jim Huang</name>
<email>jserv@0xlab.org</email>
</author>
<published>2010-09-13T12:04:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=51ab0adb191273f9e28441724f1384c31779c125'/>
<id>51ab0adb191273f9e28441724f1384c31779c125</id>
<content type='text'>
Originally, libdvm exports many ELF symbols, but Zygote and other
applications don't really depend on all of them.  This change hides
most of the symbols which would have previously (and unnecessarily)
been public.  This means, it improves load time of libdvm, and the
link optimizer could produce better code as well.

The technique is applied in the "Performance" profile.

Reference experimental results of Qualcomm MSM7x25: (524 MHz)

[before]
(1) number of ELF symbols (when WITH_JIT=true)
  # arm-eabi-nm --dynamic ./system/lib/libdvm.so | grep "T " | wc -l
  1222
(2) dlopen/dlsym time
  76906 us
(3) code size
  ./system/lib/libdvm.so 601480 bytes

[after]
(1) number of ELF symbols (when WITH_JIT=true)
  # arm-eabi-nm --dynamic ./system/lib/libdvm.so | grep "T " | wc -l
  58
(2) dlopen/dlsym time
  72296 us
(3) code size
  ./system/lib/libdvm.so 540016 bytes

* dlopen/dlsym time: the time consumption from dlopen "libdvm" to
                     dlsym "dvmPrepForDexOpt"

Change-Id: I47fcf0da1acd970ff136378661360d3328c9c6c0
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Originally, libdvm exports many ELF symbols, but Zygote and other
applications don't really depend on all of them.  This change hides
most of the symbols which would have previously (and unnecessarily)
been public.  This means, it improves load time of libdvm, and the
link optimizer could produce better code as well.

The technique is applied in the "Performance" profile.

Reference experimental results of Qualcomm MSM7x25: (524 MHz)

[before]
(1) number of ELF symbols (when WITH_JIT=true)
  # arm-eabi-nm --dynamic ./system/lib/libdvm.so | grep "T " | wc -l
  1222
(2) dlopen/dlsym time
  76906 us
(3) code size
  ./system/lib/libdvm.so 601480 bytes

[after]
(1) number of ELF symbols (when WITH_JIT=true)
  # arm-eabi-nm --dynamic ./system/lib/libdvm.so | grep "T " | wc -l
  58
(2) dlopen/dlsym time
  72296 us
(3) code size
  ./system/lib/libdvm.so 540016 bytes

* dlopen/dlsym time: the time consumption from dlopen "libdvm" to
                     dlsym "dvmPrepForDexOpt"

Change-Id: I47fcf0da1acd970ff136378661360d3328c9c6c0
</pre>
</div>
</content>
</entry>
<entry>
<title>dalvik: Finish armv6-vfp support</title>
<updated>2010-11-09T01:27:18+00:00</updated>
<author>
<name>Ricardo Cerqueira</name>
<email>cyanogenmod@cerqueira.org</email>
</author>
<published>2010-11-09T01:27:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=27ed151a61235e67a22629df8b66a01bc16e4502'/>
<id>27ed151a61235e67a22629df8b66a01bc16e4502</id>
<content type='text'>
Change-Id: Ie6f17e8b488c528e1c1900d7f4700110755f4dff
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ie6f17e8b488c528e1c1900d7f4700110755f4dff
</pre>
</div>
</content>
</entry>
<entry>
<title>dalvik: add support for armv6-vfp processor target</title>
<updated>2010-11-09T00:44:04+00:00</updated>
<author>
<name>Gary King</name>
<email>gking@nvidia.com</email>
</author>
<published>2009-11-18T22:07:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=c8257fdc5455bd26cc20f12e6c6cdb9377fda20a'/>
<id>c8257fdc5455bd26cc20f12e6c6cdb9377fda20a</id>
<content type='text'>
adds specialized support for ARMv6 w/ VFP to the Dalvik interpreter

Change-Id: I241f9bdd3e13657cc45449d3a28ecfca8d3f6e13
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
adds specialized support for ARMv6 w/ VFP to the Dalvik interpreter

Change-Id: I241f9bdd3e13657cc45449d3a28ecfca8d3f6e13
</pre>
</div>
</content>
</entry>
<entry>
<title>Rebuild generated files prior to changing armv5te to arvm6j.</title>
<updated>2010-09-14T18:51:25+00:00</updated>
<author>
<name>Koushik Dutta</name>
<email>koushd@gmail.com</email>
</author>
<published>2010-09-14T18:51:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=376ddee258342b7f1701d07badac0f470ed930cf'/>
<id>376ddee258342b7f1701d07badac0f470ed930cf</id>
<content type='text'>
Change-Id: Ib776c0ce7778e7f560fd1542d92c78370e82ce3b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ib776c0ce7778e7f560fd1542d92c78370e82ce3b
</pre>
</div>
</content>
</entry>
<entry>
<title>This breaks hero and heroc.</title>
<updated>2010-09-14T18:47:56+00:00</updated>
<author>
<name>Koushik Dutta</name>
<email>koushd@gmail.com</email>
</author>
<published>2010-09-14T18:47:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=02b6c04ba98113c3fe8b466dbff3c90368965229'/>
<id>02b6c04ba98113c3fe8b466dbff3c90368965229</id>
<content type='text'>
Revert "Enable armv6 support for armv5te (MSM7200A) arch"

This reverts commit 4d013250edb74e4141ed6a4479fd8d6b9a035134.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Revert "Enable armv6 support for armv5te (MSM7200A) arch"

This reverts commit 4d013250edb74e4141ed6a4479fd8d6b9a035134.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for armv6j for MSM7200A boards.</title>
<updated>2010-09-04T16:54:41+00:00</updated>
<author>
<name>Koushik Dutta</name>
<email>koushd@gmail.com</email>
</author>
<published>2010-09-04T16:54:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=fac2eff5c5a04243832aee5498b6cd2c6c312c8e'/>
<id>fac2eff5c5a04243832aee5498b6cd2c6c312c8e</id>
<content type='text'>
Change-Id: I957e80eb89967068b238aee51c50a0f279693ffc
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I957e80eb89967068b238aee51c50a0f279693ffc
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable armv6 support for armv5te (MSM7200A) arch</title>
<updated>2010-08-24T11:44:04+00:00</updated>
<author>
<name>Alex Boag-Munroe</name>
<email>boagenator@gmail.com</email>
</author>
<published>2010-08-22T14:44:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=4d013250edb74e4141ed6a4479fd8d6b9a035134'/>
<id>4d013250edb74e4141ed6a4479fd8d6b9a035134</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add attempts to GC before failing external allocations.</title>
<updated>2010-07-27T00:52:56+00:00</updated>
<author>
<name>Johan Redestig</name>
<email>johan.redestig@sonyericsson.com</email>
</author>
<published>2010-01-20T15:17:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=8e822283c3b6376ab3577de4a89d2cca78925c41'/>
<id>8e822283c3b6376ab3577de4a89d2cca78925c41</id>
<content type='text'>
We were experience the same symptoms as described in http://code.google.com/p/android/issues/detail?id=2426
and here is a patch that solves the problems for us. The discussion on the bug mentions
that such a solution would not work due to the lack of a compacting GC but this turns
out not to be the case for us. The reason is that collecting a few small bitmap objects
really makes a huge difference for the external allocations.

Calling the GC prior failing allocations is really the normal way for the VM
to act so and managing external allocations should not be different.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We were experience the same symptoms as described in http://code.google.com/p/android/issues/detail?id=2426
and here is a patch that solves the problems for us. The discussion on the bug mentions
that such a solution would not work due to the lack of a compacting GC but this turns
out not to be the case for us. The reason is that collecting a few small bitmap objects
really makes a huge difference for the external allocations.

Calling the GC prior failing allocations is really the normal way for the VM
to act so and managing external allocations should not be different.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add/Remove Some @KnownFailure Annotations</title>
<updated>2010-07-22T21:24:52+00:00</updated>
<author>
<name>Brian Muramatsu</name>
<email>btmura@google.com</email>
</author>
<published>2010-07-12T22:17:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=e4437b2df77a9432f301cc8126866b0c35091cc2'/>
<id>e4437b2df77a9432f301cc8126866b0c35091cc2</id>
<content type='text'>
Bug 2639444 2564250 2639393

Remove the @KnownFailure annotations form tests now passing in
Froyo for Nexus One using the CTS test runner. Put on
@KnownFailure annotations for those that are failing but passing
with the run-core-tests test runner.

MultiSocketTest is an exception that doesn't seem to make sense,
and fails in both runners.

Change-Id: Id8eb6b5d6f2b04b77434411f2b04c56cd61acf85
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bug 2639444 2564250 2639393

Remove the @KnownFailure annotations form tests now passing in
Froyo for Nexus One using the CTS test runner. Put on
@KnownFailure annotations for those that are failing but passing
with the run-core-tests test runner.

MultiSocketTest is an exception that doesn't seem to make sense,
and fails in both runners.

Change-Id: Id8eb6b5d6f2b04b77434411f2b04c56cd61acf85
</pre>
</div>
</content>
</entry>
<entry>
<title>JIT: Fix for 2813841, use core regs for sub-word data</title>
<updated>2010-07-22T21:24:52+00:00</updated>
<author>
<name>Bill Buzbee</name>
<email>buzbee@google.com</email>
</author>
<published>2010-07-07T13:55:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/LineageOS/android_dalvik/commit/?id=4e42ca459243c03464223e139fc593f423b35e11'/>
<id>4e42ca459243c03464223e139fc593f423b35e11</id>
<content type='text'>
In an attempt to avoid unnecessary register copies, the JIT allows
data items to live in either floating point or core registers until
an instruction is used which requires one or the other.  The bug here
was that sub-word data was allowed to live in floating point registers
at the point of a load or store.  This cl forces the use of core registers
in those cases.

Change-Id: Iaee57545c6a62990186a5d0ab5bb22728d75dd60
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In an attempt to avoid unnecessary register copies, the JIT allows
data items to live in either floating point or core registers until
an instruction is used which requires one or the other.  The bug here
was that sub-word data was allowed to live in floating point registers
at the point of a load or store.  This cl forces the use of core registers
in those cases.

Change-Id: Iaee57545c6a62990186a5d0ab5bb22728d75dd60
</pre>
</div>
</content>
</entry>
</feed>
