xref: /qemu/tests/functional/test_ppc64_reverse_debug.py (revision b103cc6e74ac92f070a0e004bd84334e845c20b5)
1#!/usr/bin/env python3
2#
3# SPDX-License-Identifier: GPL-2.0-or-later
4#
5# Reverse debugging test
6#
7# Copyright (c) 2020 ISP RAS
8#
9# Author:
10#  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
11#
12# This work is licensed under the terms of the GNU GPL, version 2 or
13# later.  See the COPYING file in the top-level directory.
14
15from qemu_test import skipIfMissingImports, skipFlakyTest
16from reverse_debugging import ReverseDebugging
17
18
19@skipIfMissingImports('avocado.utils')
20class ReverseDebugging_ppc64(ReverseDebugging):
21
22    REG_PC = 0x40
23
24    @skipFlakyTest("https://gitlab.com/qemu-project/qemu/-/issues/1992")
25    def test_ppc64_pseries(self):
26        self.set_machine('pseries')
27        # SLOF branches back to its entry point, which causes this test
28        # to take the 'hit a breakpoint again' path. That's not a problem,
29        # just slightly different than the other machines.
30        self.endian_is_le = False
31        self.reverse_debugging()
32
33    @skipFlakyTest("https://gitlab.com/qemu-project/qemu/-/issues/1992")
34    def test_ppc64_powernv(self):
35        self.set_machine('powernv')
36        self.endian_is_le = False
37        self.reverse_debugging()
38
39
40if __name__ == '__main__':
41    ReverseDebugging.main()
42