1*d21b3d34SFangrui Song // RUN: %clangxx_msan -O0 %s -o %t && %run %t 2>&1
2*d21b3d34SFangrui Song 
3*d21b3d34SFangrui Song #include <assert.h>
4*d21b3d34SFangrui Song #include <sys/eventfd.h>
5*d21b3d34SFangrui Song 
6*d21b3d34SFangrui Song #include <sanitizer/msan_interface.h>
7*d21b3d34SFangrui Song 
main(int argc,char * argv[])8*d21b3d34SFangrui Song int main(int argc, char *argv[]) {
9*d21b3d34SFangrui Song   int efd = eventfd(42, 0);
10*d21b3d34SFangrui Song   assert(efd >= 0);
11*d21b3d34SFangrui Song 
12*d21b3d34SFangrui Song   eventfd_t v;
13*d21b3d34SFangrui Song   int ret = eventfd_read(efd, &v);
14*d21b3d34SFangrui Song   assert(ret == 0);
15*d21b3d34SFangrui Song   __msan_check_mem_is_initialized(&v, sizeof(v));
16*d21b3d34SFangrui Song 
17*d21b3d34SFangrui Song   assert(v == 42);
18*d21b3d34SFangrui Song }
19