mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 20:34:38 +00:00
Implemented generic serialization of APFloat.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43829 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
2e6452ca0c
commit
c47dfdde24
@ -102,6 +102,7 @@
|
||||
|
||||
// APInt contains static functions implementing bignum arithmetic.
|
||||
#include "llvm/ADT/APInt.h"
|
||||
#include "llvm/Bitcode/SerializationFwd.h"
|
||||
#include "llvm/CodeGen/ValueTypes.h"
|
||||
|
||||
namespace llvm {
|
||||
@ -181,6 +182,12 @@ namespace llvm {
|
||||
explicit APFloat(const APInt &, bool isIEEE = false);
|
||||
APFloat(const APFloat &);
|
||||
~APFloat();
|
||||
|
||||
/// @brief Used by the Bitcode serializer to emit APInts to Bitcode.
|
||||
void Emit(Serializer& S) const;
|
||||
|
||||
/// @brief Used by the Bitcode deserializer to deserialize APInts.
|
||||
static APFloat ReadVal(Deserializer& D);
|
||||
|
||||
/* Arithmetic. */
|
||||
opStatus add(const APFloat &, roundingMode);
|
||||
|
24
lib/Bitcode/Reader/DeserializeAPFloat.cpp
Normal file
24
lib/Bitcode/Reader/DeserializeAPFloat.cpp
Normal file
@ -0,0 +1,24 @@
|
||||
//===-- SerializeAPInt.cpp - Serialization for APFloat ---------*- C++ -*--===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file was developed by Ted Kremenek and is distributed under the
|
||||
// University of Illinois Open Source License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file implements deserialization of APFloat.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/ADT/APFloat.h"
|
||||
#include "llvm/Bitcode/Deserialize.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
APFloat APFloat::ReadVal(Deserializer& D) {
|
||||
APInt x;
|
||||
D.Read(x);
|
||||
return APFloat(x);
|
||||
}
|
||||
|
21
lib/Bitcode/Writer/SerializeAPFloat.cpp
Normal file
21
lib/Bitcode/Writer/SerializeAPFloat.cpp
Normal file
@ -0,0 +1,21 @@
|
||||
//===-- SerializeAPInt.cpp - Serialization for APFloat ---------*- C++ -*--===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file was developed by Ted Kremenek and is distributed under the
|
||||
// University of Illinois Open Source License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file implements serialization of APFloat.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/ADT/APFloat.h"
|
||||
#include "llvm/Bitcode/Serialize.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
void APFloat::Emit(Serializer& S) const {
|
||||
S.Emit(convertToAPInt());
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user