diff options
Diffstat (limited to 'llvm/unittests/IR/DataLayoutTest.cpp')
| -rw-r--r-- | llvm/unittests/IR/DataLayoutTest.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/unittests/IR/DataLayoutTest.cpp b/llvm/unittests/IR/DataLayoutTest.cpp index e24e8e045db..de8ac253c45 100644 --- a/llvm/unittests/IR/DataLayoutTest.cpp +++ b/llvm/unittests/IR/DataLayoutTest.cpp @@ -7,6 +7,8 @@ //===----------------------------------------------------------------------===// #include "llvm/IR/DataLayout.h" +#include "llvm/IR/LLVMContext.h" +#include "llvm/IR/Type.h" #include "gtest/gtest.h" using namespace llvm; @@ -44,4 +46,14 @@ TEST(DataLayoutTest, FunctionPtrAlign) { EXPECT_EQ(a, c); } +TEST(DataLayoutTest, ValueOrABITypeAlignment) { + const DataLayout DL("Fi8"); + LLVMContext Context; + Type *const FourByteAlignType = Type::getInt32Ty(Context); + EXPECT_EQ(Align(16), + DL.getValueOrABITypeAlignment(MaybeAlign(16), FourByteAlignType)); + EXPECT_EQ(Align(4), + DL.getValueOrABITypeAlignment(MaybeAlign(), FourByteAlignType)); +} + } // anonymous namespace |

