#include <stdio.h>

int
cas(int *ptr, int old_val, int new_val)
{
	return __sync_val_compare_and_swap(ptr, old_val, new_val);
}

int
tas(int *ptr, int new_val)
{
	return __sync_lock_test_and_set(ptr, new_val);
}

int
main(int argc, char **argv)
{
	int		var;

	(void) cas(&var, 1, 2);
	(void) tas(&var, 3);

	return 0;
}