1 /* Copyright 2019-2020 Free Software Foundation, Inc. 2 3 This program is free software; you can redistribute it and/or modify 4 it under the terms of the GNU General Public License as published by 5 the Free Software Foundation; either version 3 of the License, or 6 (at your option) any later version. 7 8 This program is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License 14 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 15 16 volatile int global_var; 17 18 int __attribute__ ((noinline)) 19 bar () 20 { 21 return global_var; 22 } 23 24 static inline int __attribute__ ((always_inline)) 25 foo () 26 { 27 return bar (); 28 } 29 30 int 31 main () 32 { 33 int ans; 34 global_var = 0; 35 ans = foo (); 36 return ans; 37 } 38