blob: af5af08a86df1a55bbf73448f01883bd0d55170e [file] [log] [blame]
Tamas Berghammer2e169022015-04-02 11:07:55 +00001""" This module contains functions used by the test cases to hide the
2architecture and/or the platform dependent nature of the tests. """
3
Zachary Turnerc1b7cd72015-11-05 19:22:28 +00004from __future__ import absolute_import
5
6# System modules
7
8# Third-party modules
9
10# LLDB modules
11
Tamas Berghammer2e169022015-04-02 11:07:55 +000012def check_first_register_readable(test_case):
Ed Maste0f434e62015-04-06 15:50:48 +000013 if test_case.getArchitecture() in ['x86_64', 'i386']:
Tamas Berghammer2e169022015-04-02 11:07:55 +000014 test_case.expect("register read eax", substrs = ['eax = 0x'])
Tamas Berghammer3215d042015-04-17 09:37:06 +000015 elif test_case.getArchitecture() in ['arm']:
16 test_case.expect("register read r0", substrs = ['r0 = 0x'])
Tamas Berghammer2e169022015-04-02 11:07:55 +000017 elif test_case.getArchitecture() in ['aarch64']:
18 test_case.expect("register read x0", substrs = ['x0 = 0x'])
19 else:
20 # TODO: Add check for other architectures
21 test_case.fail("Unsupported architecture for test case (arch: %s)" % test_case.getArchitecture())