ftrace.c revision 1.9
1/* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2011-2020 Free Software Foundation, Inc. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18#include "trace-common.h" 19 20int globvar; 21 22static void 23begin (void) 24{} 25 26static void 27marker (int anarg) 28{ 29 FAST_TRACEPOINT_LABEL(set_point); 30 31 ++anarg; 32 33 /* Set up a known 4-byte instruction so we can try to set a shorter 34 fast tracepoint at it. */ 35 asm (" .global " SYMBOL(four_byter) "\n" 36 SYMBOL(four_byter) ":\n" 37#if (defined __i386__) 38 " cmpl $0x1,0x8(%ebp) \n" 39#endif 40 ); 41} 42 43static void 44end (void) 45{} 46 47int 48main () 49{ 50 begin (); 51 52 for (globvar = 1; globvar < 11; ++globvar) 53 { 54 marker (globvar * 100); 55 } 56 57 end (); 58 return 0; 59} 60