mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
Small modifications to tests.
Changed Keil & IAR tests to use new alignment classes.
This commit is contained in:
parent
10d88d3df7
commit
c0a244cd2f
@ -35,6 +35,10 @@ SOFTWARE.
|
||||
#include <string>
|
||||
#include <ostream>
|
||||
|
||||
void f(int a)
|
||||
{
|
||||
}
|
||||
|
||||
namespace
|
||||
{
|
||||
SUITE(test_alignment)
|
||||
@ -57,6 +61,32 @@ namespace
|
||||
{
|
||||
CHECK_EQUAL(0, size_t(&data32[1]) % expected);
|
||||
}
|
||||
|
||||
etl::aligned_storage<100, 8>::type data9;
|
||||
f(static_cast<int>(data9));
|
||||
}
|
||||
|
||||
//*************************************************************************
|
||||
TEST(test_aligned_storage_as)
|
||||
{
|
||||
size_t alignment;
|
||||
size_t expected;
|
||||
|
||||
typedef etl::aligned_storage_as<sizeof(uint16_t), uint32_t>::type storage32_t;
|
||||
static storage32_t data32[10];
|
||||
|
||||
alignment = etl::alignment_of<storage32_t>::value;
|
||||
expected = std::alignment_of<uint32_t>::value;
|
||||
|
||||
CHECK_EQUAL(expected, alignment);
|
||||
|
||||
for (int i = 0; i < 10; ++i)
|
||||
{
|
||||
CHECK_EQUAL(0, size_t(&data32[1]) % expected);
|
||||
}
|
||||
|
||||
etl::aligned_storage<100, 8>::type data9;
|
||||
f(static_cast<int>(data9));
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@ -90,23 +90,22 @@ void test_algorithm()
|
||||
//*****************************************************************************
|
||||
// alignment
|
||||
//*****************************************************************************
|
||||
etl::align_at<int, 16> data9;
|
||||
etl::align_at<char, 16> data10;
|
||||
etl::aligned_storage<100, 8>::type data9;
|
||||
etl::aligned_storage_as<100, double>::type data10;
|
||||
|
||||
void test_alignment()
|
||||
{
|
||||
data9.value = 0;
|
||||
data10.value = 0;
|
||||
int a = static_cast<int&>(data9);
|
||||
|
||||
etl::align_at<char, 1> data1;
|
||||
etl::align_at<char, 2> data2;
|
||||
etl::align_at<char, 4> data3;
|
||||
etl::align_at<char, 8> data4;
|
||||
etl::aligned_storage<1, 1>::type data1;
|
||||
etl::aligned_storage<1, 2>::type data2;
|
||||
etl::aligned_storage<1, 4>::type data3;
|
||||
etl::aligned_storage<1, 8>::type data4;
|
||||
|
||||
etl::align_as<char, char> data5;
|
||||
etl::align_as<char, short> data6;
|
||||
etl::align_as<char, int> data7;
|
||||
etl::align_as<char, double> data8;
|
||||
etl::aligned_storage_as<1, char>::type data5;
|
||||
etl::aligned_storage_as<1, short>::type data6;
|
||||
etl::aligned_storage_as<1, int>::type data7;
|
||||
etl::aligned_storage_as<1, double>::type data8;
|
||||
}
|
||||
|
||||
//*****************************************************************************
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user