diff options
author | Zachary Turner <zturner@google.com> | 2017-11-16 22:39:55 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2017-11-16 22:39:55 +0000 |
commit | ab1ade496cabd5972c5eb622e3dc7271d2654bc3 (patch) | |
tree | 00e2198ca30a50614b3699ba55421e487cd2cfdf /llvm/lib/Support/Windows | |
parent | 9d59418f6b10d36851365b00fdb63979397f94d6 (diff) | |
download | bcm5719-llvm-ab1ade496cabd5972c5eb622e3dc7271d2654bc3.tar.gz bcm5719-llvm-ab1ade496cabd5972c5eb622e3dc7271d2654bc3.zip |
Fix some undefined beahvior in FileMapping.
This was broken when building a 32-bit native toolchain, as
shifting a size_t right by 32 is UB when sizeof(size_t) == 8.
llvm-svn: 318462
Diffstat (limited to 'llvm/lib/Support/Windows')
-rw-r--r-- | llvm/lib/Support/Windows/Path.inc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Support/Windows/Path.inc b/llvm/lib/Support/Windows/Path.inc index f65ed5c7337..dd42055e247 100644 --- a/llvm/lib/Support/Windows/Path.inc +++ b/llvm/lib/Support/Windows/Path.inc @@ -734,8 +734,8 @@ std::error_code mapped_file_region::init(int FD, uint64_t Offset, HANDLE FileMappingHandle = ::CreateFileMappingW(FileHandle, 0, flprotect, - Size >> 32, - Size & 0xffffffff, + Hi_32(Size), + Lo_32(Size), 0); if (FileMappingHandle == NULL) { std::error_code ec = mapWindowsError(GetLastError()); |