aboutsummaryrefslogtreecommitdiff
path: root/tests/functional/test_x86_64_reverse_debug.py
blob: d713e91e1446072164836b8fb156b94dd956c0fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env python3
#
# SPDX-License-Identifier: GPL-2.0-or-later
#
# Reverse debugging test
#
# Copyright (c) 2020 ISP RAS
#
# Author:
#  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
#
# This work is licensed under the terms of the GNU GPL, version 2 or
# later.  See the COPYING file in the top-level directory.

from qemu_test import skipIfMissingImports, skipFlakyTest
from reverse_debugging import ReverseDebugging


@skipIfMissingImports('avocado.utils')
class ReverseDebugging_X86_64(ReverseDebugging):

    REG_PC = 0x10
    REG_CS = 0x12
    def get_pc(self, g):
        return self.get_reg_le(g, self.REG_PC) \
            + self.get_reg_le(g, self.REG_CS) * 0x10

    @skipFlakyTest("https://gitlab.com/qemu-project/qemu/-/issues/2922")
    def test_x86_64_pc(self):
        self.set_machine('pc')
        # start with BIOS only
        self.reverse_debugging()


if __name__ == '__main__':
    ReverseDebugging.main()