diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 |
commit | ef5d0b5e97ec8e6fa395d377b09aa7755e345b4f (patch) | |
tree | 27916256fdeeb57d10d2f3d6948be5d71a703215 /packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py | |
parent | 76e0736e7fcfeb179779e49c05604464b1ccd704 (diff) |
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py')
-rw-r--r-- | packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py b/packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py new file mode 100644 index 0000000000000..4ddda525537ce --- /dev/null +++ b/packages/Python/lldbsuite/test/arm/emulation/TestEmulations.py @@ -0,0 +1,57 @@ +""" +Test some ARM instruction emulation. +""" + +from __future__ import print_function + + +import os +import time +import lldb +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test import lldbutil + + +class ARMEmulationTestCase(TestBase): + + mydir = TestBase.compute_mydir(__file__) + + @no_debug_info_test + def test_thumb_emulations(self): + current_dir = os.getcwd() + test_dir = os.path.join(current_dir, "new-test-files") + files = os.listdir(test_dir) + thumb_files = list() + for f in files: + if '-thumb.dat' in f: + thumb_files.append(f) + + for f in thumb_files: + test_file = os.path.join(test_dir, f) + self.run_a_single_test(test_file) + + @no_debug_info_test + def test_arm_emulations(self): + current_dir = os.getcwd() + test_dir = os.path.join(current_dir, "new-test-files") + files = os.listdir(test_dir) + arm_files = list() + for f in files: + if '-arm.dat' in f: + arm_files.append(f) + + for f in arm_files: + test_file = os.path.join(test_dir, f) + self.run_a_single_test(test_file) + + def run_a_single_test(self, filename): + insn = lldb.SBInstruction() + stream = lldb.SBStream() + success = insn.TestEmulation(stream, filename) + output = stream.GetData() + if self.TraceOn(): + print('\nRunning test ' + os.path.basename(filename)) + print(output) + + self.assertTrue(success, 'Emulation test succeeded.') |