Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.target/i386/mv15.C @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line source
/* Test case to check if Multiversioning works. */ /* { dg-do run } */ /* { dg-require-ifunc "" } */ /* { dg-options "-O2 -fPIC -march=x86-64" } */ #include <assert.h> /* Default version. */ int foo (); // Extra declaration that is merged with the second one. int foo () __attribute__ ((target("default"))); int foo () __attribute__ ((target("arch=nehalem"))); int (*p)() = &foo; int main () { int val = foo (); assert (val == (*p)()); /* Check in the exact same order in which the dispatching is expected to happen. */ if (__builtin_cpu_is ("corei7")) assert (val == 5); else assert (val == 0); return 0; } int __attribute__ ((target("default"))) foo () { return 0; } int __attribute__ ((target("arch=nehalem"))) foo () { return 5; }