mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Add some happy helper methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26046 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
62d1ade893
commit
5819342732
@ -17,6 +17,7 @@
|
||||
#define LLVM_CODEGEN_VALUETYPES_H
|
||||
|
||||
#include <cassert>
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
|
||||
namespace llvm {
|
||||
class Type;
|
||||
@ -108,6 +109,19 @@ namespace MVT { // MVT = Machine Value Types
|
||||
}
|
||||
}
|
||||
|
||||
/// getIntVTBitMask - Return an integer with 1's every place there are bits
|
||||
/// in the specified integer value type.
|
||||
static inline uint64_t getIntVTBitMask(ValueType VT) {
|
||||
assert(isInteger(VT) && !isVector(VT) && "Only applies to int scalars!");
|
||||
return ~0ULL >> (64-getSizeInBits(VT));
|
||||
}
|
||||
/// getIntVTSignBit - Return an integer with a 1 in the position of the sign
|
||||
/// bit for the specified integer value type.
|
||||
static inline uint64_t getIntVTSignBit(ValueType VT) {
|
||||
assert(isInteger(VT) && !isVector(VT) && "Only applies to int scalars!");
|
||||
return 1ULL << (getSizeInBits(VT)-1);
|
||||
}
|
||||
|
||||
/// MVT::getValueTypeString - This function returns value type as a string,
|
||||
/// e.g. "i32".
|
||||
const char *getValueTypeString(ValueType VT);
|
||||
|
Loading…
Reference in New Issue
Block a user