// D import file generated from '../../../../libphobos/libdruntime/core/bitop.d'
module core.bitop;
nothrow @safe 
{
	version (D_InlineAsm_X86_64)
	{
		version = AsmX86;
	}
	else
	{
		version (D_InlineAsm_X86)
		{
			version = AsmX86;
		}
	}
	version (X86_64)
	{
		version = AnyX86;
	}
	else
	{
		version (X86)
		{
			version = AnyX86;
		}
	}
	pure int bsf(size_t v);
	pure int bsr(size_t v);
	@system 
	{
		pure int bt(in size_t* p, size_t bitnum);
	}
	pure int btc(size_t* p, size_t bitnum);
	pure int btr(size_t* p, size_t bitnum);
	pure int bts(size_t* p, size_t bitnum);
	pure uint bswap(uint v);
	version (DigitalMars)
	{
		version (AnyX86)
		{
			@system 
			{
				ubyte inp(uint port_address);
				ushort inpw(uint port_address);
				uint inpl(uint port_address);
				ubyte outp(uint port_address, ubyte value);
				ushort outpw(uint port_address, ushort value);
				uint outpl(uint port_address, uint value);
			}
		}
	}
	pure int popcnt(uint x);
	@trusted pure uint bitswap(uint x);

}

