Fix bug in `AsanAllocatorASVT` (ASan) and `AllocatorASVT` (LSan) templated alias.

We forgot to pass `AddressSpaceView` to the `CombinedAllocator`
which meant we would always use `LocalAddressSpaceView` for the
`CombinedAllocator` leading to a static_assert failing when we
tried to do `AsanAllocatorASVT<RemoteAddressSpaceView>` or
`AllocatorASVT<RemoteAddressSpaceView>`.

rdar://problem/45284065

llvm-svn: 351689
This commit is contained in:
Dan Liew 2019-01-20 16:57:24 +00:00
parent 4fd2459c4d
commit 0e83f5dff1
2 changed files with 4 additions and 2 deletions

View File

@ -204,7 +204,8 @@ template <typename AddressSpaceView>
using AsanAllocatorASVT = using AsanAllocatorASVT =
CombinedAllocator<PrimaryAllocatorASVT<AddressSpaceView>, CombinedAllocator<PrimaryAllocatorASVT<AddressSpaceView>,
AllocatorCacheASVT<AddressSpaceView>, AllocatorCacheASVT<AddressSpaceView>,
SecondaryAllocatorASVT<AddressSpaceView>>; SecondaryAllocatorASVT<AddressSpaceView>,
AddressSpaceView>;
using AsanAllocator = AsanAllocatorASVT<LocalAddressSpaceView>; using AsanAllocator = AsanAllocatorASVT<LocalAddressSpaceView>;
struct AsanThreadLocalMallocStorage { struct AsanThreadLocalMallocStorage {

View File

@ -110,7 +110,8 @@ template <typename AddressSpaceView>
using AllocatorASVT = using AllocatorASVT =
CombinedAllocator<PrimaryAllocatorASVT<AddressSpaceView>, CombinedAllocator<PrimaryAllocatorASVT<AddressSpaceView>,
AllocatorCacheASVT<AddressSpaceView>, AllocatorCacheASVT<AddressSpaceView>,
SecondaryAllocatorASVT<AddressSpaceView>>; SecondaryAllocatorASVT<AddressSpaceView>,
AddressSpaceView>;
using Allocator = AllocatorASVT<LocalAddressSpaceView>; using Allocator = AllocatorASVT<LocalAddressSpaceView>;
AllocatorCache *GetAllocatorCache(); AllocatorCache *GetAllocatorCache();