mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-04 17:56:53 +00:00
Use CHAR_BIT instead of hard-coding 8 in several places where it
is appropriate. This helps visually differentiate host-oriented calculations from target-oriented calculations. llvm-svn: 68227
This commit is contained in:
parent
3ba6a84085
commit
770f4158e5
@ -18,6 +18,7 @@
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
#include "llvm/Support/MathExtras.h"
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <cstring>
|
||||
#include <string>
|
||||
|
||||
@ -81,7 +82,8 @@ class APInt {
|
||||
/// This enum is used to hold the constants we needed for APInt.
|
||||
enum {
|
||||
/// Bits in a word
|
||||
APINT_BITS_PER_WORD = static_cast<unsigned int>(sizeof(uint64_t)) * 8,
|
||||
APINT_BITS_PER_WORD = static_cast<unsigned int>(sizeof(uint64_t)) *
|
||||
CHAR_BIT,
|
||||
/// Byte size of a word
|
||||
APINT_WORD_SIZE = static_cast<unsigned int>(sizeof(uint64_t))
|
||||
};
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "llvm/Support/MathExtras.h"
|
||||
#include <algorithm>
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <cstring>
|
||||
|
||||
namespace llvm {
|
||||
@ -24,7 +25,7 @@ namespace llvm {
|
||||
class BitVector {
|
||||
typedef unsigned long BitWord;
|
||||
|
||||
enum { BITWORD_SIZE = (unsigned)sizeof(BitWord) * 8 };
|
||||
enum { BITWORD_SIZE = (unsigned)sizeof(BitWord) * CHAR_BIT };
|
||||
|
||||
BitWord *Bits; // Actual bits.
|
||||
unsigned Size; // Size of bitvector in bits.
|
||||
|
@ -16,6 +16,7 @@
|
||||
#define LLVM_ADT_SPARSEBITVECTOR_H
|
||||
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <cstring>
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
@ -44,7 +45,7 @@ struct SparseBitVectorElement
|
||||
public:
|
||||
typedef unsigned long BitWord;
|
||||
enum {
|
||||
BITWORD_SIZE = sizeof(BitWord) * 8,
|
||||
BITWORD_SIZE = sizeof(BitWord) * CHAR_BIT,
|
||||
BITWORDS_PER_ELEMENT = (ElementSize + BITWORD_SIZE - 1) / BITWORD_SIZE,
|
||||
BITS_PER_ELEMENT = ElementSize
|
||||
};
|
||||
|
@ -16,6 +16,7 @@
|
||||
#define BITSTREAM_READER_H
|
||||
|
||||
#include "llvm/Bitcode/BitCodes.h"
|
||||
#include <climits>
|
||||
#include <vector>
|
||||
|
||||
namespace llvm {
|
||||
@ -114,7 +115,7 @@ public:
|
||||
|
||||
/// GetCurrentBitNo - Return the bit # of the bit we are reading.
|
||||
uint64_t GetCurrentBitNo() const {
|
||||
return (NextChar-FirstChar)*8 + ((32-BitsInCurWord) & 31);
|
||||
return (NextChar-FirstChar)*CHAR_BIT + ((32-BitsInCurWord) & 31);
|
||||
}
|
||||
|
||||
/// JumpToBit - Reset the stream to the specified bit number.
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "llvm/Support/Allocator.h"
|
||||
#include <iosfwd>
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
|
||||
namespace llvm {
|
||||
class MachineInstr;
|
||||
@ -115,7 +116,7 @@ namespace llvm {
|
||||
LiveInterval(unsigned Reg, float Weight, bool IsSS = false)
|
||||
: reg(Reg), weight(Weight), preference(0) {
|
||||
if (IsSS)
|
||||
reg = reg | (1U << (sizeof(unsigned)*8-1));
|
||||
reg = reg | (1U << (sizeof(unsigned)*CHAR_BIT-1));
|
||||
}
|
||||
|
||||
typedef Ranges::iterator iterator;
|
||||
@ -159,14 +160,14 @@ namespace llvm {
|
||||
/// isStackSlot - Return true if this is a stack slot interval.
|
||||
///
|
||||
bool isStackSlot() const {
|
||||
return reg & (1U << (sizeof(unsigned)*8-1));
|
||||
return reg & (1U << (sizeof(unsigned)*CHAR_BIT-1));
|
||||
}
|
||||
|
||||
/// getStackSlotIndex - Return stack slot index if this is a stack slot
|
||||
/// interval.
|
||||
int getStackSlotIndex() const {
|
||||
assert(isStackSlot() && "Interval is not a stack slot interval!");
|
||||
return reg & ~(1U << (sizeof(unsigned)*8-1));
|
||||
return reg & ~(1U << (sizeof(unsigned)*CHAR_BIT-1));
|
||||
}
|
||||
|
||||
bool hasAtLeastOneValue() const { return !valnos.empty(); }
|
||||
|
@ -17,6 +17,7 @@
|
||||
#define LLVM_CODEGEN_MACHINECONSTANTPOOL_H
|
||||
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <vector>
|
||||
|
||||
namespace llvm {
|
||||
@ -81,7 +82,7 @@ public:
|
||||
MachineConstantPoolEntry(MachineConstantPoolValue *V, unsigned A)
|
||||
: Alignment(A) {
|
||||
Val.MachineCPVal = V;
|
||||
Alignment |= 1 << (sizeof(unsigned)*8-1);
|
||||
Alignment |= 1 << (sizeof(unsigned)*CHAR_BIT-1);
|
||||
}
|
||||
|
||||
bool isMachineConstantPoolEntry() const {
|
||||
@ -89,7 +90,7 @@ public:
|
||||
}
|
||||
|
||||
int getAlignment() const {
|
||||
return Alignment & ~(1 << (sizeof(unsigned)*8-1));
|
||||
return Alignment & ~(1 << (sizeof(unsigned)*CHAR_BIT-1));
|
||||
}
|
||||
|
||||
const Type *getType() const;
|
||||
|
@ -32,6 +32,7 @@
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
#include "llvm/CodeGen/DebugLoc.h"
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
|
||||
namespace llvm {
|
||||
|
||||
@ -1864,7 +1865,7 @@ protected:
|
||||
getSDVTList(VT)), Offset(o), Alignment(0) {
|
||||
assert((int)Offset >= 0 && "Offset is too large");
|
||||
Val.MachineCPVal = v;
|
||||
Offset |= 1 << (sizeof(unsigned)*8-1);
|
||||
Offset |= 1 << (sizeof(unsigned)*CHAR_BIT-1);
|
||||
}
|
||||
ConstantPoolSDNode(bool isTarget, MachineConstantPoolValue *v,
|
||||
MVT VT, int o, unsigned Align)
|
||||
@ -1873,7 +1874,7 @@ protected:
|
||||
getSDVTList(VT)), Offset(o), Alignment(Align) {
|
||||
assert((int)Offset >= 0 && "Offset is too large");
|
||||
Val.MachineCPVal = v;
|
||||
Offset |= 1 << (sizeof(unsigned)*8-1);
|
||||
Offset |= 1 << (sizeof(unsigned)*CHAR_BIT-1);
|
||||
}
|
||||
public:
|
||||
|
||||
@ -1892,7 +1893,7 @@ public:
|
||||
}
|
||||
|
||||
int getOffset() const {
|
||||
return Offset & ~(1 << (sizeof(unsigned)*8-1));
|
||||
return Offset & ~(1 << (sizeof(unsigned)*CHAR_BIT-1));
|
||||
}
|
||||
|
||||
// Return the alignment of this constant pool object, which is either 0 (for
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "llvm/Support/Compiler.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <cstdarg>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
@ -1109,7 +1110,7 @@ class bits_storage {
|
||||
template<class T>
|
||||
static unsigned Bit(const T &V) {
|
||||
unsigned BitPos = reinterpret_cast<unsigned>(V);
|
||||
assert(BitPos < sizeof(unsigned) * 8 &&
|
||||
assert(BitPos < sizeof(unsigned) * CHAR_BIT &&
|
||||
"enum exceeds width of bit vector!");
|
||||
return 1 << BitPos;
|
||||
}
|
||||
@ -1150,7 +1151,7 @@ class bits_storage<DataType, bool> {
|
||||
template<class T>
|
||||
static unsigned Bit(const T &V) {
|
||||
unsigned BitPos = reinterpret_cast<unsigned>(V);
|
||||
assert(BitPos < sizeof(unsigned) * 8 &&
|
||||
assert(BitPos < sizeof(unsigned) * CHAR_BIT &&
|
||||
"enum exceeds width of bit vector!");
|
||||
return 1 << BitPos;
|
||||
}
|
||||
|
@ -1092,10 +1092,10 @@ GenericValue Interpreter::executeBitCastInst(Value *SrcVal, const Type *DstTy,
|
||||
Dest.PointerVal = Src.PointerVal;
|
||||
} else if (DstTy->isInteger()) {
|
||||
if (SrcTy == Type::FloatTy) {
|
||||
Dest.IntVal.zext(sizeof(Src.FloatVal) * 8);
|
||||
Dest.IntVal.zext(sizeof(Src.FloatVal) * CHAR_BIT);
|
||||
Dest.IntVal.floatToBits(Src.FloatVal);
|
||||
} else if (SrcTy == Type::DoubleTy) {
|
||||
Dest.IntVal.zext(sizeof(Src.DoubleVal) * 8);
|
||||
Dest.IntVal.zext(sizeof(Src.DoubleVal) * CHAR_BIT);
|
||||
Dest.IntVal.doubleToBits(Src.DoubleVal);
|
||||
} else if (SrcTy->isInteger()) {
|
||||
Dest.IntVal = Src.IntVal;
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include <map>
|
||||
#include <vector>
|
||||
#include <cassert>
|
||||
#include <climits>
|
||||
#include <cstdio>
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
@ -48,7 +49,7 @@ namespace {
|
||||
|
||||
/// BlockSize - This is the size in bytes of this memory block,
|
||||
/// including this header.
|
||||
uintptr_t BlockSize : (sizeof(intptr_t)*8 - 2);
|
||||
uintptr_t BlockSize : (sizeof(intptr_t)*CHAR_BIT - 2);
|
||||
|
||||
|
||||
/// getBlockAfter - Return the memory block immediately after this one.
|
||||
|
@ -1631,7 +1631,7 @@ void APInt::divide(const APInt LHS, unsigned lhsWords,
|
||||
// can't use 64-bit operands here because we don't have native results of
|
||||
// 128-bits. Furthermore, casting the 64-bit values to 32-bit values won't
|
||||
// work on large-endian machines.
|
||||
uint64_t mask = ~0ull >> (sizeof(unsigned)*8);
|
||||
uint64_t mask = ~0ull >> (sizeof(unsigned)*CHAR_BIT);
|
||||
unsigned n = rhsWords * 2;
|
||||
unsigned m = (lhsWords * 2) - n;
|
||||
|
||||
@ -1661,7 +1661,7 @@ void APInt::divide(const APInt LHS, unsigned lhsWords,
|
||||
for (unsigned i = 0; i < lhsWords; ++i) {
|
||||
uint64_t tmp = (LHS.getNumWords() == 1 ? LHS.VAL : LHS.pVal[i]);
|
||||
U[i * 2] = (unsigned)(tmp & mask);
|
||||
U[i * 2 + 1] = (unsigned)(tmp >> (sizeof(unsigned)*8));
|
||||
U[i * 2 + 1] = (unsigned)(tmp >> (sizeof(unsigned)*CHAR_BIT));
|
||||
}
|
||||
U[m+n] = 0; // this extra word is for "spill" in the Knuth algorithm.
|
||||
|
||||
@ -1670,7 +1670,7 @@ void APInt::divide(const APInt LHS, unsigned lhsWords,
|
||||
for (unsigned i = 0; i < rhsWords; ++i) {
|
||||
uint64_t tmp = (RHS.getNumWords() == 1 ? RHS.VAL : RHS.pVal[i]);
|
||||
V[i * 2] = (unsigned)(tmp & mask);
|
||||
V[i * 2 + 1] = (unsigned)(tmp >> (sizeof(unsigned)*8));
|
||||
V[i * 2 + 1] = (unsigned)(tmp >> (sizeof(unsigned)*CHAR_BIT));
|
||||
}
|
||||
|
||||
// initialize the quotient and remainder
|
||||
|
@ -2909,7 +2909,7 @@ SPUTargetLowering::computeMaskedBitsForTargetNode(const SDValue Op,
|
||||
const SelectionDAG &DAG,
|
||||
unsigned Depth ) const {
|
||||
#if 0
|
||||
const uint64_t uint64_sizebits = sizeof(uint64_t) * 8;
|
||||
const uint64_t uint64_sizebits = sizeof(uint64_t) * CHAR_BIT;
|
||||
|
||||
switch (Op.getOpcode()) {
|
||||
default:
|
||||
|
@ -425,7 +425,7 @@ static int AnalyzeBitcode() {
|
||||
|
||||
if (Dump) std::cerr << "\n\n";
|
||||
|
||||
uint64_t BufferSizeBits = Buffer->getBufferSize()*8;
|
||||
uint64_t BufferSizeBits = Buffer->getBufferSize()*CHAR_BIT;
|
||||
// Print a summary of the read file.
|
||||
std::cerr << "Summary of " << InputFilename << ":\n";
|
||||
std::cerr << " Total size: ";
|
||||
|
Loading…
Reference in New Issue
Block a user