blob: b0281f7b389f141f17c08fdb76db8848d0e7c429 [file] [log] [blame]
/* { dg-do run } */
/* { dg-require-effective-target hwaddress_exec } */
/* { dg-additional-options "-lpthread" } */
/* Just ensure that a basic threaded program works while running with hwasan.
*/
#include <pthread.h>
extern int printf (const char *, ...);
typedef __UINTPTR_TYPE__ uintptr_t;
typedef __UINT64_TYPE__ uint64_t;
void *
successful_thread_function (void * argument)
{
int *deref = (int *)argument;
if (deref[0] == 100)
deref[1] = 10;
return (void *)0;
}
int
main (int argc, char **argv)
{
int argument[100] = {0};
argument[1] = 10;
pthread_t thread_index;
pthread_create (&thread_index, NULL, successful_thread_function, (void*)argument);
void *retval;
pthread_join (thread_index, &retval);
return (uintptr_t)retval;
}