summaryrefslogtreecommitdiffstats
path: root/scripts/symbol.py
diff options
context:
space:
mode:
authorBrigid Smith <brigidsmith@google.com>2014-06-10 17:31:32 -0700
committerElliott Hughes <enh@google.com>2014-06-13 17:43:38 -0700
commit45a46c61388462c7f4bb826db544b6a1acf8524d (patch)
treea5adc9655b5a1e1ec2d9efb27247392e3ec03f3b /scripts/symbol.py
parent9649c415e7e959b67a8810cd17ab65b7994c0f71 (diff)
downloadandroid_development-45a46c61388462c7f4bb826db544b6a1acf8524d.tar.gz
android_development-45a46c61388462c7f4bb826db544b6a1acf8524d.tar.bz2
android_development-45a46c61388462c7f4bb826db544b6a1acf8524d.zip
Updating stack_core.py to recognize new ABI output from debuggerd.
Change-Id: Ib9736a0509edb97be15f5e89dbc3a5188e744416
Diffstat (limited to 'scripts/symbol.py')
-rwxr-xr-xscripts/symbol.py21
1 files changed, 11 insertions, 10 deletions
diff --git a/scripts/symbol.py b/scripts/symbol.py
index 3789fa2f0..a3fe03275 100755
--- a/scripts/symbol.py
+++ b/scripts/symbol.py
@@ -78,20 +78,21 @@ def FindToolchain():
if TOOLCHAIN_INFO is not None:
return TOOLCHAIN_INFO
+ # TODO: TARGET_GCC_VERSION is the version for the primary architecture.
+ gcc_version = os.environ["TARGET_GCC_VERSION"]
+
## Known toolchains, newer ones in the front.
- if ARCH == "arm64":
- gcc_version = os.environ["TARGET_GCC_VERSION"]
+ if ARCH == "arm":
known_toolchains = [
- ("aarch64-linux-android-" + gcc_version, "aarch64", "aarch64-linux-android")
+ ("arm-linux-androideabi-" + gcc_version, "arm", "arm-linux-androideabi"),
]
- elif ARCH == "arm":
- gcc_version = os.environ["TARGET_GCC_VERSION"]
+ elif ARCH == "arm64":
known_toolchains = [
- ("arm-linux-androideabi-" + gcc_version, "arm", "arm-linux-androideabi"),
+ ("aarch64-linux-android-" + gcc_version, "aarch64", "aarch64-linux-android")
]
- elif ARCH =="x86":
+ elif ARCH =="x86" or ARCH == "x86_64":
known_toolchains = [
- ("i686-android-linux-4.4.3", "x86", "i686-android-linux")
+ ("i686-android-linux" + gcc_version, "x86", "i686-android-linux")
]
else:
known_toolchains = []
@@ -101,10 +102,10 @@ def FindToolchain():
toolchain_info = (label, platform, target);
if os.path.exists(ToolPath("addr2line", toolchain_info)):
TOOLCHAIN_INFO = toolchain_info
- print "Using toolchain from :" + ToolPath("", TOOLCHAIN_INFO)
+ print "Using toolchain from: " + ToolPath("", TOOLCHAIN_INFO)
return toolchain_info
- raise Exception("Could not find tool chain")
+ raise Exception("Could not find tool chain for (%s, %s, %s)" % (label, platform, target))
def SymbolInformation(lib, addr):
"""Look up symbol information about an address.