From 4efbeb2700506fa1cbbca5e487b57eaad05c60ed Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Thu, 22 Aug 2013 10:23:58 +0000 Subject: MemoryBufferTest.cpp: Tweak offset corresponding to the case that PageSize is greater than 8000. PageSize, aka AllocationGranularity, is 65536 on Win32 (and Cygwin). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188999 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index de1dbb7..4f17db2 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -128,7 +128,7 @@ void MemoryBufferTest::testGetOpenFileSlice(bool Reopen) { OwningBuffer Buf; error_code EC = MemoryBuffer::getOpenFileSlice(TestFD, TestPath.c_str(), Buf, 40000, // Size - 8000 // Offset + 80000 // Offset ); EXPECT_FALSE(EC); -- cgit v1.1 From a5bd3937ab34d88fe87f25f9c7d1f059445234b8 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Thu, 22 Aug 2013 12:00:44 +0000 Subject: Suppress MemoryBufferTest.cpp on win32 for now. Investigating. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189001 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index 4f17db2..ce0ff37 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -138,6 +138,9 @@ void MemoryBufferTest::testGetOpenFileSlice(bool Reopen) { EXPECT_EQ(BufData[9], '9'); } +#if !defined(_WIN32) +// FIXME: Investigating since r188998. + TEST_F(MemoryBufferTest, getOpenFileNoReopen) { testGetOpenFileSlice(false); } @@ -146,4 +149,6 @@ TEST_F(MemoryBufferTest, getOpenFileReopened) { testGetOpenFileSlice(true); } +#endif // _WIN32 + } -- cgit v1.1 From 37693da119853a4b2a31df4a6b7213043fe97e1a Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Thu, 22 Aug 2013 15:14:45 +0000 Subject: Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189020 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index ce0ff37..252d2b5 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -112,7 +112,7 @@ void MemoryBufferTest::testGetOpenFileSlice(bool Reopen) { SmallString<64> TestPath; // Create a temporary file and write data into it. sys::fs::createTemporaryFile("prefix", "temp", TestFD, TestPath); - // OF is responsible for closing the file; If the file is not + // OF is responsible for closing the file; If the file is not // reopened, it will be unbuffered so that the results are // immediately visible through the fd. raw_fd_ostream OF(TestFD, true, !Reopen); -- cgit v1.1 From 3f256c2e0b4417288e3191e67cb16177c8d8b2a7 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Thu, 22 Aug 2013 15:14:53 +0000 Subject: [Win32] mapped_file_region: Fix a bug in CreateFileMapping() that Size must contain Offset when Offset >= 65536. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189021 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 5 ----- 1 file changed, 5 deletions(-) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index 252d2b5..d9102e0 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -138,9 +138,6 @@ void MemoryBufferTest::testGetOpenFileSlice(bool Reopen) { EXPECT_EQ(BufData[9], '9'); } -#if !defined(_WIN32) -// FIXME: Investigating since r188998. - TEST_F(MemoryBufferTest, getOpenFileNoReopen) { testGetOpenFileSlice(false); } @@ -149,6 +146,4 @@ TEST_F(MemoryBufferTest, getOpenFileReopened) { testGetOpenFileSlice(true); } -#endif // _WIN32 - } -- cgit v1.1 From 072bd45a36e06dd9ae0a46ce4bb029bea0ca9eae Mon Sep 17 00:00:00 2001 From: Dmitri Gribenko Date: Wed, 4 Sep 2013 18:02:13 +0000 Subject: MemoryBufer: add a test: check that a file with size that is a multiple of the page size can be null terminated correctly by MemoryBuffer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189965 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index d9102e0..aa7ff6f 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -65,6 +65,28 @@ TEST_F(MemoryBufferTest, get) { EXPECT_EQ("this is some data", data); } +TEST_F(MemoryBufferTest, NullTerminator4K) { + // Test that a file with size that is a multiple of the page size can be null + // terminated correctly by MemoryBuffer. + int TestFD; + SmallString<64> TestPath; + sys::fs::createTemporaryFile("MemoryBufferTest_NullTerminator4K", "temp", + TestFD, TestPath); + raw_fd_ostream OF(TestFD, true, /*unbuffered=*/true); + for (unsigned i = 0; i < 4096 / 16; ++i) { + OF << "0123456789abcdef"; + } + OF.close(); + + OwningPtr MB; + error_code EC = MemoryBuffer::getFile(TestPath, MB); + ASSERT_FALSE(EC); + + const char *BufData = MB->getBufferStart(); + EXPECT_EQ('f', BufData[4095]); + EXPECT_EQ('\0', BufData[4096]); +} + TEST_F(MemoryBufferTest, copy) { // copy with no name OwningBuffer MBC1(MemoryBuffer::getMemBufferCopy(data)); -- cgit v1.1 From 76a74f72534452b53ba3ba054bd8ab27efc48487 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Fri, 25 Oct 2013 19:06:52 +0000 Subject: Change MemoryBuffer::getFile to take a Twine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193429 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/MemoryBufferTest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'unittests/Support/MemoryBufferTest.cpp') diff --git a/unittests/Support/MemoryBufferTest.cpp b/unittests/Support/MemoryBufferTest.cpp index aa7ff6f..2b8806c 100644 --- a/unittests/Support/MemoryBufferTest.cpp +++ b/unittests/Support/MemoryBufferTest.cpp @@ -79,7 +79,7 @@ TEST_F(MemoryBufferTest, NullTerminator4K) { OF.close(); OwningPtr MB; - error_code EC = MemoryBuffer::getFile(TestPath, MB); + error_code EC = MemoryBuffer::getFile(TestPath.c_str(), MB); ASSERT_FALSE(EC); const char *BufData = MB->getBufferStart(); -- cgit v1.1