/* test segment register getting */
#include <stdio.h>

int main()
{
	unsigned short gsw;
	unsigned long  gsl;

	asm ("mov $~0, %0; movl %%gs, %0" : "=r" (gsl));
	asm ("mov $~0, %0; movw %%gs, %0" : "=r" (gsw));

	printf("%s\n", gsl == gsw ? "PASS" : "FAIL");

	return 0;
}