Add a simple helper function to create a 64-bit integer.
authorReid Kleckner <reid@kleckner.net>
Wed, 28 May 2014 22:49:12 +0000 (22:49 +0000)
committerReid Kleckner <reid@kleckner.net>
Wed, 28 May 2014 22:49:12 +0000 (22:49 +0000)
Add a function to combine two 32-bit integers into a 64-bit integer.
There are no calls to this function yet, although a subsequent change
will add some in LLDB.

Reviewers: rnk

Differential Revision: http://reviews.llvm.org/D3941

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209777 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/MathExtras.h

index f1f7b4feb5801246b2a082947cadc76382696387..6965faf8df8b96c472c57f4dae6d2dcd7ead23a5 100644 (file)
@@ -258,6 +258,12 @@ inline uint32_t Lo_32(uint64_t Value) {
   return static_cast<uint32_t>(Value);
 }
 
+/// Make_64 - This functions makes a 64-bit integer from a high / low pair of
+///           32-bit integers.
+inline uint64_t Make_64(uint32_t High, uint32_t Low) {
+  return ((uint64_t)High << 32) | (uint64_t)Low;
+}
+
 /// isInt - Checks if an integer fits into the given bit width.
 template<unsigned N>
 inline bool isInt(int64_t x) {