# Copyright (C) 2013-2023 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # This test case is to test the speed of GDB when it is doing disassemble # some large functions in GDB. load_lib perftest.exp require allow_perf_tests global GDB standard_testfile .c # Overwrite $binfile set binfile $GDB PerfTest::assemble { # Don't have compilation step. return 0 } { global binfile clean_restart # When GDB is debugging GDB, the prompt is changed to "(top-gdb) ". # In order to avoid the confusion of pattern matching, set the # gdb_prompt to '(top-gdb)' temporarily. with_gdb_prompt "(top-gdb)" { gdb_load ${binfile} } # The prompt of both parent GDB and child GDB is '(gdb)', but # child GDB's prompt doesn't confuse pattern matching because but # we only run to main function of child GDB, so child GDB's # prompt can't be printed out. if ![runto_main] { return -1 } return 0 } { gdb_test_python_run "Disassemble\(\)" return 0 }