xref: /aosp_15_r20/external/clang/test/Sema/builtins-decl.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=i686-mingw32
2*67e74705SXin Li // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=x86_64-mingw32
3*67e74705SXin Li // expected-no-diagnostics
4*67e74705SXin Li 
5*67e74705SXin Li // mingw-w64's intrin.h has decls below.
6*67e74705SXin Li // we should accept them.
7*67e74705SXin Li extern unsigned int __builtin_ia32_crc32qi (unsigned int, unsigned char);
8*67e74705SXin Li extern unsigned int __builtin_ia32_crc32hi (unsigned int, unsigned short);
9*67e74705SXin Li extern unsigned int __builtin_ia32_crc32si (unsigned int, unsigned int);
10*67e74705SXin Li 
11*67e74705SXin Li // GCC documents these as unsigned, but they are defined with a signed argument.
12*67e74705SXin Li extern int __builtin_ffs(int);
13*67e74705SXin Li extern int __builtin_ffsl(long);
14*67e74705SXin Li extern int __builtin_ffsll(long long);
15