1""" This module contains functions used by the test cases to hide the 2architecture and/or the platform dependent nature of the tests. """ 3 4def check_first_register_readable(test_case): 5 if test_case.getArchitecture() in ['x86_64', 'i386']: 6 test_case.expect("register read eax", substrs = ['eax = 0x']) 7 elif test_case.getArchitecture() in ['arm']: 8 test_case.expect("register read r0", substrs = ['r0 = 0x']) 9 elif test_case.getArchitecture() in ['aarch64']: 10 test_case.expect("register read x0", substrs = ['x0 = 0x']) 11 else: 12 # TODO: Add check for other architectures 13 test_case.fail("Unsupported architecture for test case (arch: %s)" % test_case.getArchitecture()) 14