mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-31 01:15:36 +00:00
[unittest] Explicitly specify alignment when using BumpPtrAllocator.
r297310 began inserting red zones around allocations under ASan, which perturbs the alignment of subsequent allocations. Deliberately specify this in two places where it matters. Fixes failures when these tests are run under ASan and UBSan together. Reviewed by Duncan Exon Smith. rdar://problem/30980047 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@297540 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c32a57361b
commit
621f2c2cdd
@ -17,9 +17,9 @@ namespace {
|
||||
|
||||
TEST(AllocatorTest, Basics) {
|
||||
BumpPtrAllocator Alloc;
|
||||
int *a = (int*)Alloc.Allocate(sizeof(int), 1);
|
||||
int *b = (int*)Alloc.Allocate(sizeof(int) * 10, 1);
|
||||
int *c = (int*)Alloc.Allocate(sizeof(int), 1);
|
||||
int *a = (int*)Alloc.Allocate(sizeof(int), alignof(int));
|
||||
int *b = (int*)Alloc.Allocate(sizeof(int) * 10, alignof(int));
|
||||
int *c = (int*)Alloc.Allocate(sizeof(int), alignof(int));
|
||||
*a = 1;
|
||||
b[0] = 2;
|
||||
b[9] = 2;
|
||||
|
@ -686,7 +686,8 @@ TEST_F(BinaryStreamTest, BinaryItemStream) {
|
||||
std::vector<Foo> Foos = {{1, 1.0}, {2, 2.0}, {3, 3.0}};
|
||||
BumpPtrAllocator Allocator;
|
||||
for (const auto &F : Foos) {
|
||||
uint8_t *Ptr = Allocator.Allocate<uint8_t>(sizeof(Foo));
|
||||
uint8_t *Ptr = static_cast<uint8_t *>(Allocator.Allocate(sizeof(Foo),
|
||||
alignof(Foo)));
|
||||
MutableArrayRef<uint8_t> Buffer(Ptr, sizeof(Foo));
|
||||
MutableBinaryByteStream Stream(Buffer, llvm::support::big);
|
||||
BinaryStreamWriter Writer(Stream);
|
||||
|
Loading…
x
Reference in New Issue
Block a user