Merge branch 'upstream' into for-linus
[platform/adaptation/renesas_rcar/renesas_kernel.git] / scripts / gcc-goto.sh
1 #!/bin/sh
2 # Test for gcc 'asm goto' support
3 # Copyright (C) 2010, Jason Baron <jbaron@redhat.com>
4
5 cat << "END" | $@ -x c - -c -o /dev/null >/dev/null 2>&1 && echo "y"
6 int main(void)
7 {
8 #ifdef __arm__
9         /*
10          * Not related to asm goto, but used by jump label
11          * and broken on some ARM GCC versions (see GCC Bug 48637).
12          */
13         static struct { int dummy; int state; } tp;
14         asm (".long %c0" :: "i" (&tp.state));
15 #endif
16
17 entry:
18         asm goto ("" :::: entry);
19         return 0;
20 }
21 END