1 /* 2 Copyright 2020 Free Software Foundation, Inc. 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 3 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 16 17 void 18 foo (int x) 19 { 20 21 } 22 23 void 24 bar1 (void) 25 { 26 asm ("bar1_label: .globl bar1_label"); 27 foo (1); 28 asm ("bar1_label_2: .globl bar1_label_2"); 29 foo (2); 30 asm ("bar1_label_3: .globl bar1_label_3"); 31 foo (3); 32 asm ("bar1_label_4: .globl bar1_label_4"); 33 foo (4); 34 asm ("bar1_label_5: .globl bar1_label_5"); 35 } 36 37 void 38 bar2 (void) 39 { 40 asm ("bar2_label: .globl bar2_label"); 41 foo (1); 42 asm ("bar2_label_2: .globl bar2_label_2"); 43 foo (2); 44 asm ("bar2_label_3: .globl bar2_label_3"); 45 foo (3); 46 asm ("bar2_label_4: .globl bar2_label_4"); 47 foo (4); 48 asm ("bar2_label_5: .globl bar2_label_5"); 49 } 50 51 int 52 main (void) 53 { 54 asm ("main_label: .globl main_label"); 55 56 bar1 (); 57 58 bar2 (); 59 60 return 0; 61 } 62 63