aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Bitcode
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2007-11-07 18:24:34 +0000
committerTed Kremenek <kremenek@apple.com>2007-11-07 18:24:34 +0000
commit2e6452ca0ce5b5e5612059cc13c7ec28cc30e6ec (patch)
treefda98341bd5fb79b154394cfe27f87944eeda1dd /include/llvm/Bitcode
parent29121848b912b1e062760e5d14c6fbec63b16d9b (diff)
Implemented serialization of signed integers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43828 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Bitcode')
-rw-r--r--include/llvm/Bitcode/Deserialize.h2
-rw-r--r--include/llvm/Bitcode/Serialization.h5
-rw-r--r--include/llvm/Bitcode/Serialize.h4
3 files changed, 10 insertions, 1 deletions
diff --git a/include/llvm/Bitcode/Deserialize.h b/include/llvm/Bitcode/Deserialize.h
index 41347b5ca7..9808a152c0 100644
--- a/include/llvm/Bitcode/Deserialize.h
+++ b/include/llvm/Bitcode/Deserialize.h
@@ -95,6 +95,8 @@ public:
~Deserializer();
uint64_t ReadInt();
+ int64_t ReadSInt();
+
bool ReadBool() {
return ReadInt() ? true : false;
}
diff --git a/include/llvm/Bitcode/Serialization.h b/include/llvm/Bitcode/Serialization.h
index 2e738b0ed3..31220a6ec3 100644
--- a/include/llvm/Bitcode/Serialization.h
+++ b/include/llvm/Bitcode/Serialization.h
@@ -50,6 +50,11 @@ SERIALIZE_INT_TRAIT(unsigned char)
SERIALIZE_INT_TRAIT(unsigned short)
SERIALIZE_INT_TRAIT(unsigned int)
SERIALIZE_INT_TRAIT(unsigned long)
+
+SERIALIZE_INT_TRAIT(signed char)
+SERIALIZE_INT_TRAIT(signed short)
+SERIALIZE_INT_TRAIT(signed int)
+SERIALIZE_INT_TRAIT(signed long)
#undef SERIALIZE_INT_TRAIT
diff --git a/include/llvm/Bitcode/Serialize.h b/include/llvm/Bitcode/Serialize.h
index d73a92c59a..8431898deb 100644
--- a/include/llvm/Bitcode/Serialize.h
+++ b/include/llvm/Bitcode/Serialize.h
@@ -37,7 +37,9 @@ public:
template <typename T>
inline void Emit(const T& X) { SerializeTrait<T>::Emit(*this,X); }
- void EmitInt(unsigned X);
+ void EmitInt(uint64_t X);
+ void EmitSInt(int64_t X);
+
void EmitBool(bool X) { EmitInt(X); }
void EmitCStr(const char* beg, const char* end);
void EmitCStr(const char* cstr);