xref: /illumos-gate/usr/src/tools/smatch/src/validation/linear/call-builtin.c (revision b531f6d16eb39863e7bbc34773fb7ef7a282a0a2)
1 typedef unsigned int u32;
2 
3 u32 ff(u32 a) { return __builtin_popcount(a); }
4 
5 u32 f0(u32 a) { return (__builtin_popcount)(a); }
6 u32 f1(u32 a) { return (*__builtin_popcount)(a); }	// C99,C11 6.5.3.2p4
7 u32 f2(u32 a) { return (**__builtin_popcount)(a); }	// C99,C11 6.5.3.2p4
8 u32 f3(u32 a) { return (***__builtin_popcount)(a); }	// C99,C11 6.5.3.2p4
9 
10 /*
11  * check-name: builtin calls
12  * check-command: test-linearize -Wno-decl $file
13  *
14  * check-output-ignore
15  * check-output-excludes: load
16  * check-output-pattern(5): call\\..*__builtin_.*, %arg1
17  */
18