History log of /external/qemu/target-arm/helper.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5285864985be9077e58e42235af6582dee72e841 03-Jun-2011 David 'Digit' Turner <digit@android.com> target-arm: integrate upstream ARM translator.

The new translator has the following benefits:

- faster emulation of ARMv5TE code (through improved JIT)
- proper support for ARMv7 and NEON
- rebuilding the full-eng platform images for ARMv7-A results
in additionnal speed increases (a.k.a. Thumb-2 rocks!).

Note that, as an interesting side effect, NEON machine code is generally
slower than the equivalent C code it is supposed to replace when run inside
the emulator. This can be explained by the fact that for now the translator
simply translates each NEON instruction into a series of sequential host
instructions (and also requires over-head for packing/unpacking/saturation/
etc...).

This change has been tested by running the "full-eng" platform image
rebuilt for ARMv7-A and Neon and using an appropriate kernel image
(prebuilt/android-arm/kernel/kernel-qemu-armv7). The system could boot
and seems to work perfectly. Not a single issue has been experienced
during testing. On a 2.4 GHz Xeon CPU, the image boots in about 25 seconds
(compared to 40 seconds for a vanilla one without this emulator patch).

Thanks to Peter Maydell at Linaro and ARM with his hard work to make this
happen (first in upstream, and now on Android).

This integration is based on the Meego git repository
(git://gitorious.org/qemu-maemo/qemu.git) using the following hash:

7e2d65b0c95c865b1fa6d3d4948e8e822b9ac2fd

On top of which, the following upstream patch has been applied
(with recommendation from Peter):

b7fa9214d8d4f57992c9acd0ccb125c54a095f00

(We chose this repository because it was the closest to the previous
integrate. We will probably use the Linaro ones for future work on this
part of the emulator).

Change-Id: I54837e3d2e908b2380d158411d7a9813630e7e4e
/external/qemu/target-arm/helper.c
406a59bd0a2e7a38cd840a5c08602e3a36bd2df8 12-May-2011 David 'Digit' Turner <digit@android.com> trace.h: rename to trace-android.h

This is done to allow for future integration of the
upstream auto-generated "trace.h" header file.

Change-Id: I9d1bba3320d9e8acfd7359540d3ed6695773061e
/external/qemu/target-arm/helper.c
288208c386810fef725aa448a9f46bd2772bec8c 11-May-2011 David 'Digit' Turner <digit@android.com> target-arm/translate.c: move Android-specific stuff out.

Change-Id: Id14c6b106dbac9b4016b7423327e9eb22e21fe75
/external/qemu/target-arm/helper.c
462564f31bbdc9939bf1d2376e2782defa7ef655 23-Feb-2011 David 'Digit' Turner <digit@android.com> Minor cleanups for core/ui Makefile separation.

This patch contains minor cleanups that will be needed by
a few future patches that will improve the way core and ui
sources are separated and built.

- remove a few compiler warnings
- formatting
- remove the memcheck CONFIG_MEMCHECK checks (they later get in the way)
- refine hw/hw.h inclusion's of cpu.h (this comes from upstream)
- add missing definitions for PRUd64 and PRUx64 (used later)
- remove CONFIG_SHAPER test, replace with CONFIG_ANDROID instead.
- add missing strdup() calls.

Change-Id: Ic7d6681a51af718c298f0ee4bd884b1d8750f28e
/external/qemu/target-arm/helper.c
fc8ed80ba1362d2ce500003625e1c9c39f765661 10-Feb-2011 Xavier Ducrohet <xav@android.com> Revert "Build arm and x86 binaries at the same time."

This fails to build on MacOS X

This reverts commit a39b10bd2574825a815d6ad854499dd127cfa9cb.
/external/qemu/target-arm/helper.c
a39b10bd2574825a815d6ad854499dd127cfa9cb 07-Feb-2011 David 'Digit' Turner <digit@android.com> Build arm and x86 binaries at the same time.

Change-Id: I105c5a097c988cb964b47b40b71c7a08af0d9210
/external/qemu/target-arm/helper.c
d9b6cb97a8a9e93f1bbe5351874b03f7faa81783 20-Oct-2010 David 'Digit' Turner <digit@android.com> Fix linux-x86_64 build.

Fix various 64-bitness issues in the source code to
make the --try-64 option work again on Linux. Note that
the generated binary is not faster than its 32-bit variant
when it comes to benchmarking the boot sequence.

Change-Id: Iad248e033757d4cd25524a438a5dbe1cf3aca6cf
/external/qemu/target-arm/helper.c
5389aa19033153c09556d1362a8b8a56abccb8f5 16-Feb-2010 Vladimir Chtchetkine <vchtchetkine@google.com> Merge memory checking from sandbox

Change-id: Ibce845d0
/external/qemu/target-arm/helper.c
a577fcadc0b365ee629aec313f57a65d54fe5d89 16-Oct-2009 David 'Digit' Turner <digit@google.com> Fix the -trace emulator option.

A critical test in the execution loop was missed in the latest huge integration.
Also optimize slightly the basic-block start recording helper interface.
/external/qemu/target-arm/helper.c
5d8f37ad78fc66901af50c762029a501561f3b23 14-Sep-2009 David 'Digit' Turner <digit@google.com> Merge upstream QEMU 10.0.50 into the Android source tree.

This change integrates many changes from the upstream QEMU sources.
Its main purpose is to enable correct ARMv6 and ARMv7 support to the
Android emulator. Due to the nature of the upstream code base, this
unfortunately also required changes to many other parts of the source.

Note that to ensure easier integrations in the future, some source files
and directories that have heavy Android-specific customization have been
renamed with an -android suffix. The original files are still there for
easier integration tracking, but *never* compiled. For example:

net.c net-android.c
qemu-char.c qemu-char-android.c
slirp/ slirp-android/
etc...

Tested on linux-x86, darwin-x86 and windows host machines.
/external/qemu/target-arm/helper.c
ab42ada6ecfb81d6e231d5997b5892efd0fde5ad 01-May-2009 Jack Veenstra <veenstra@android.com> Added tracing of exceptions to the emulator.

Exceptions used to be traced but that code was deleted during a large merge.
/external/qemu/target-arm/helper.c
8b23a6c7e1aee255004dd19098d4c2462b61b849 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/external/qemu/target-arm/helper.c
f721e3ac031f892af46f255a47d7f54a91317b30 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/external/qemu/target-arm/helper.c
c27f813900a3c114562efbb8df1065e94766fc48 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/external/qemu/target-arm/helper.c
55f4e4a5ec657a017e3bf75299ad71fd1c968dd3 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/external/qemu/target-arm/helper.c
413f05aaf54fa08c0ae7e997327a4f4a473c0a8d 12-Jan-1970 Upstream <upstream-import@none> external/qemu 0.8.2
/external/qemu/target-arm/helper.c