summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTamas Berghammer <tberghammer@google.com>2015-04-02 11:07:55 +0000
committerTamas Berghammer <tberghammer@google.com>2015-04-02 11:07:55 +0000
commit2e16902084732f44f6f65e9630b3208eddc59314 (patch)
treef04c84528bc5ca073fc128de5383b296f8ce713d
parent1eeece1285e389c74f7adbee1610d140b9034d6a (diff)
downloadbcm5719-llvm-2e16902084732f44f6f65e9630b3208eddc59314.tar.gz
bcm5719-llvm-2e16902084732f44f6f65e9630b3208eddc59314.zip
Fix test expectation for aarch64 in several test case
These test cases check if they are able to read registers after the inferior is crashed. Previously they did it with reading the eax register what is only available on i386 and x86_64. Thic CL add code to do the check based on the target architecture (currently i386, x86_64 and aarch64 is supported) Differential revision: http://reviews.llvm.org/D8702 llvm-svn: 233907
-rw-r--r--lldb/test/functionalities/inferior-assert/TestInferiorAssert.py5
-rw-r--r--lldb/test/functionalities/inferior-crashing/TestInferiorCrashing.py8
-rw-r--r--lldb/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py8
-rw-r--r--lldb/test/lldbplatformutil.py11
4 files changed, 19 insertions, 13 deletions
diff --git a/lldb/test/functionalities/inferior-assert/TestInferiorAssert.py b/lldb/test/functionalities/inferior-assert/TestInferiorAssert.py
index 152bdf3ad4c..a862de40b3b 100644
--- a/lldb/test/functionalities/inferior-assert/TestInferiorAssert.py
+++ b/lldb/test/functionalities/inferior-assert/TestInferiorAssert.py
@@ -2,7 +2,7 @@
import os, time
import unittest2
-import lldb, lldbutil
+import lldb, lldbutil, lldbplatformutil
from lldbtest import *
class AssertingInferiorTestCase(TestBase):
@@ -149,8 +149,7 @@ class AssertingInferiorTestCase(TestBase):
self.check_stop_reason()
# lldb should be able to read from registers from the inferior after asserting.
- self.expect("register read eax",
- substrs = ['eax = 0x'])
+ lldbplatformutil.check_first_register_readable(self)
def inferior_asserting_disassemble(self):
"""Test that lldb can disassemble frames after asserting."""
diff --git a/lldb/test/functionalities/inferior-crashing/TestInferiorCrashing.py b/lldb/test/functionalities/inferior-crashing/TestInferiorCrashing.py
index ad51341d8f7..e64e07d20ba 100644
--- a/lldb/test/functionalities/inferior-crashing/TestInferiorCrashing.py
+++ b/lldb/test/functionalities/inferior-crashing/TestInferiorCrashing.py
@@ -2,7 +2,7 @@
import os, time
import unittest2
-import lldb, lldbutil
+import lldb, lldbutil, lldbplatformutil
from lldbtest import *
class CrashingInferiorTestCase(TestBase):
@@ -153,8 +153,7 @@ class CrashingInferiorTestCase(TestBase):
self.check_stop_reason()
# lldb should be able to read from registers from the inferior after crashing.
- self.expect("register read eax",
- substrs = ['eax = 0x'])
+ lldbplatformutil.check_first_register_readable(self)
def inferior_crashing_expr(self):
"""Test that the lldb expression interpreter can read symbols after crashing."""
@@ -193,8 +192,7 @@ class CrashingInferiorTestCase(TestBase):
substrs = ['= 0x0'])
# lldb should be able to read from registers from the inferior after crashing.
- self.expect("register read eax",
- substrs = ['eax = 0x'])
+ lldbplatformutil.check_first_register_readable(self)
# And it should report the correct line number.
self.expect("thread backtrace all",
diff --git a/lldb/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py b/lldb/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
index 054f64ee707..3946ba822b2 100644
--- a/lldb/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
+++ b/lldb/test/functionalities/inferior-crashing/recursive-inferior/TestRecursiveInferior.py
@@ -2,7 +2,7 @@
import os, time
import unittest2
-import lldb, lldbutil
+import lldb, lldbutil, lldbplatformutil
import sys
from lldbtest import *
@@ -157,8 +157,7 @@ class CrashingRecursiveInferiorTestCase(TestBase):
self.check_stop_reason()
# lldb should be able to read from registers from the inferior after crashing.
- self.expect("register read eax",
- substrs = ['eax = 0x'])
+ lldbplatformutil.check_first_register_readable(self)
def recursive_inferior_crashing_expr(self):
"""Test that the lldb expression interpreter can read symbols after crashing."""
@@ -192,8 +191,7 @@ class CrashingRecursiveInferiorTestCase(TestBase):
substrs = ['(int) $0 ='])
# lldb should be able to read from registers from the inferior after crashing.
- self.expect("register read eax",
- substrs = ['eax = 0x'])
+ lldbplatformutil.check_first_register_readable(self)
# And it should report the correct line number.
self.expect("thread backtrace all",
diff --git a/lldb/test/lldbplatformutil.py b/lldb/test/lldbplatformutil.py
new file mode 100644
index 00000000000..ef045bbe2eb
--- /dev/null
+++ b/lldb/test/lldbplatformutil.py
@@ -0,0 +1,11 @@
+""" This module contains functions used by the test cases to hide the
+architecture and/or the platform dependent nature of the tests. """
+
+def check_first_register_readable(test_case):
+ if test_case.getArchitecture() in ['x86_64', 'i386']:
+ test_case.expect("register read eax", substrs = ['eax = 0x'])
+ elif test_case.getArchitecture() in ['aarch64']:
+ test_case.expect("register read x0", substrs = ['x0 = 0x'])
+ else:
+ # TODO: Add check for other architectures
+ test_case.fail("Unsupported architecture for test case (arch: %s)" % test_case.getArchitecture())
OpenPOWER on IntegriCloud