mirror of
https://github.com/bkaradzic/bx.git
synced 2026-02-17 20:52:37 +01:00
Removed alignment macros, and added functions instead.
This commit is contained in:
@@ -117,3 +117,35 @@ TEST_CASE("uint64_roX", "")
|
||||
REQUIRE(bx::uint64_rol(0x8000000000000000, 1) == 1);
|
||||
REQUIRE(bx::uint64_ror(1, 1) == 0x8000000000000000);
|
||||
}
|
||||
|
||||
TEST_CASE("align", "")
|
||||
{
|
||||
REQUIRE( bx::isAligned(0, 8) );
|
||||
REQUIRE(!bx::isAligned(7, 8) );
|
||||
REQUIRE( bx::isAligned(64, 8) );
|
||||
REQUIRE(!bx::isAligned(63, 8) );
|
||||
|
||||
REQUIRE( 0 == bx::alignUp( 0, 16) );
|
||||
REQUIRE( 16 == bx::alignUp( 1, 16) );
|
||||
REQUIRE( 16 == bx::alignUp( 15, 16) );
|
||||
REQUIRE( 16 == bx::alignUp( 16, 16) );
|
||||
REQUIRE(256 == bx::alignUp(255, 16) );
|
||||
REQUIRE( 0 == bx::alignUp(-1, 16) );
|
||||
REQUIRE(-16 == bx::alignUp(-31, 16) );
|
||||
|
||||
REQUIRE( 0 == bx::alignUp( 0, 256) );
|
||||
REQUIRE(256 == bx::alignUp( 1, 256) );
|
||||
REQUIRE(256 == bx::alignUp( 15, 256) );
|
||||
REQUIRE(256 == bx::alignUp(255, 256) );
|
||||
REQUIRE(256 == bx::alignUp(256, 256) );
|
||||
REQUIRE(256 == bx::alignUp(256, 256) );
|
||||
REQUIRE(512 == bx::alignUp(511, 256) );
|
||||
|
||||
REQUIRE( 0 == bx::alignDown( 0, 16) );
|
||||
REQUIRE( 0 == bx::alignDown( 1, 16) );
|
||||
REQUIRE( 0 == bx::alignDown( 15, 16) );
|
||||
REQUIRE( 16 == bx::alignDown( 16, 16) );
|
||||
REQUIRE(240 == bx::alignDown(255, 16) );
|
||||
REQUIRE(-16 == bx::alignDown(-1, 16) );
|
||||
REQUIRE(-32 == bx::alignDown(-31, 16) );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user