diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2012-03-13 02:13:40 -0700 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2012-03-13 19:37:07 -0700 |
commit | c7389bd69e570a2c8432b37399aff1976b021f0f (patch) | |
tree | 26a2d56f6b9af09f83276358de1bfaf4ef8f91d7 /elff | |
parent | d4f5a3ae87a7246613188940c1667bf2880da402 (diff) | |
download | external_qemu-c7389bd69e570a2c8432b37399aff1976b021f0f.zip external_qemu-c7389bd69e570a2c8432b37399aff1976b021f0f.tar.gz external_qemu-c7389bd69e570a2c8432b37399aff1976b021f0f.tar.bz2 |
64-bit emulator
Patch to allow emulator searches for emulator64-${ARCH} first on
64-bit OS. If none is found, the original behavior which searchs
for 32-bit emulator-${ARCH} is performed as usual.
64-bit emulator (which still emulates Android built in 32-bit) offers
up to 20% speedup compared to its 32-bit counterpart.
Details:
android/main-emulator.c
1) search emulator64 based on the OS
2) dlopen lib64OpenglRender in 64-bit
Makefile.*
1) Rules to build 64-bit executable emulator64-{x86,arm} and libraries
emulator64-{libui,libqemu,target-i386,target-arm,libelff,common}
2) remove -Wa,-32
3) Changes prebuit toolchain path
android-configure.h
android/build/common.h
1) no longer force 32-bit build (because now prebuilts/tools/gcc-sdk/gcc
can now handle 64-bit
2) set ANDROID_PREBUILTS to correctly locate ccache
android/config/*/config-host.h
1) Detect HOST_X86_64 and HOST_X86_64/HOST_I386
Misc 64-bit porting clean-up
1) use %zx to print variable of type size_t in hex
2) use %zu to print variable of type size_t in dec
3) Initialize query_parm to NULL
4) use PRIu64 to replace PDUd64
5) use PRId64/PRIu64/PRIX64 to print 64-bit
6) drop PRUx64 because PRIx64 does the same
7) cast pointer arith to intptr_t before casting to int
8) fixed 1ULL<<63
Change-Id: Ife62a20063a6ec38d4a9b23977e840af1fce149a
Diffstat (limited to 'elff')
-rw-r--r-- | elff/dwarf_utils.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/elff/dwarf_utils.cc b/elff/dwarf_utils.cc index 1d84b66..3b998b4 100644 --- a/elff/dwarf_utils.cc +++ b/elff/dwarf_utils.cc @@ -14,7 +14,9 @@ * Contains implementation of misc. DWARF utility routines. */ -#include "stdio.h" +#include <stdio.h> +#define __STDC_FORMAT_MACROS 1 +#include <inttypes.h> #include "dwarf_utils.h" /* "Stringifies" the parameter. */ @@ -275,12 +277,12 @@ dump_value(const Dwarf_Value* attr_value) { break; case DWARF_VALUE_U64: - printf("XWORD) = %" FMT_I64 "u (x%" FMT_I64 "X)\n", attr_value->u64, + printf("XWORD) = %" PRIu64 " (x%" PRIX64 ")\n", attr_value->u64, attr_value->u64); break; case DWARF_VALUE_S64: - printf("SXWORD) = %" FMT_I64 "d (x%" FMT_I64 "X)\n", attr_value->s64, + printf("SXWORD) = %" PRId64 " (x%" PRIX64 ")\n", attr_value->s64, attr_value->s64); break; @@ -293,7 +295,7 @@ dump_value(const Dwarf_Value* attr_value) { break; case DWARF_VALUE_PTR64: - printf("PTR64) = x%08" FMT_I64 "X\n", attr_value->ptr64); + printf("PTR64) = x%08" PRIX64 "\n", attr_value->ptr64); break; case DWARF_VALUE_BLOCK: |