summaryrefslogtreecommitdiff
path: root/llvm/lib/Support/DynamicAPInt.cpp
diff options
context:
space:
mode:
authorKoakuma <koachan@protonmail.com>2024-07-08 19:19:54 +0700
committerKoakuma <koachan@protonmail.com>2024-07-08 19:19:54 +0700
commit5c4fdc2fd5898ebd9e89999a4f4b8aa289ca637f (patch)
treef3b92a07f3dfc6e70f36d1000605f36a3c15af46 /llvm/lib/Support/DynamicAPInt.cpp
parentdbda8e2f2cd8764e0badd983915d62a2c3377f4d (diff)
parente9b8cd0c806db00f0981fb36717077c941426302 (diff)
Created using spr 1.3.5 [skip ci]
Diffstat (limited to 'llvm/lib/Support/DynamicAPInt.cpp')
-rw-r--r--llvm/lib/Support/DynamicAPInt.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/llvm/lib/Support/DynamicAPInt.cpp b/llvm/lib/Support/DynamicAPInt.cpp
new file mode 100644
index 000000000000..cae034cf6da6
--- /dev/null
+++ b/llvm/lib/Support/DynamicAPInt.cpp
@@ -0,0 +1,27 @@
+//===- DynamicAPInt.cpp - DynamicAPInt Implementation -----------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+#include "llvm/ADT/DynamicAPInt.h"
+#include "llvm/ADT/Hashing.h"
+#include "llvm/Support/Debug.h"
+#include "llvm/Support/raw_ostream.h"
+
+using namespace llvm;
+
+hash_code llvm::hash_value(const DynamicAPInt &X) {
+ if (X.isSmall())
+ return llvm::hash_value(X.getSmall());
+ return detail::hash_value(X.getLarge());
+}
+
+raw_ostream &DynamicAPInt::print(raw_ostream &OS) const {
+ if (isSmall())
+ return OS << ValSmall;
+ return OS << ValLarge;
+}
+
+void DynamicAPInt::dump() const { print(dbgs()); }