mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Remove the SimpleTy enumerated type field from the MVT
value type union: this field was causing problems for some compilers on 64 bit systems, presumably because SimpleTy is 32 bits wide while the other fields are 64 bits wide. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69515 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0941b0f655
commit
4a930ecd2a
@ -107,7 +107,6 @@ namespace llvm {
|
|||||||
///
|
///
|
||||||
union {
|
union {
|
||||||
uintptr_t V;
|
uintptr_t V;
|
||||||
SimpleValueType SimpleTy;
|
|
||||||
const Type *LLVMTy;
|
const Type *LLVMTy;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -229,41 +228,36 @@ namespace llvm {
|
|||||||
/// isFloatingPoint - Return true if this is a FP, or a vector FP type.
|
/// isFloatingPoint - Return true if this is a FP, or a vector FP type.
|
||||||
bool isFloatingPoint() const {
|
bool isFloatingPoint() const {
|
||||||
return isSimple() ?
|
return isSimple() ?
|
||||||
((SimpleTy >= f32 && SimpleTy <= ppcf128) ||
|
((V >= f32 && V <= ppcf128) || (V >= v2f32 && V <= v2f64)) :
|
||||||
(SimpleTy >= v2f32 && SimpleTy <= v2f64)) :
|
|
||||||
isExtendedFloatingPoint();
|
isExtendedFloatingPoint();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// isInteger - Return true if this is an integer, or a vector integer type.
|
/// isInteger - Return true if this is an integer, or a vector integer type.
|
||||||
bool isInteger() const {
|
bool isInteger() const {
|
||||||
return isSimple() ?
|
return isSimple() ?
|
||||||
((SimpleTy >= FIRST_INTEGER_VALUETYPE &&
|
((V >= FIRST_INTEGER_VALUETYPE && V <= LAST_INTEGER_VALUETYPE) ||
|
||||||
SimpleTy <= LAST_INTEGER_VALUETYPE) ||
|
(V >= v2i8 && V <= v2i64)) : isExtendedInteger();
|
||||||
(SimpleTy >= v2i8 && SimpleTy <= v2i64)) :
|
|
||||||
isExtendedInteger();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// isVector - Return true if this is a vector value type.
|
/// isVector - Return true if this is a vector value type.
|
||||||
bool isVector() const {
|
bool isVector() const {
|
||||||
return isSimple() ?
|
return isSimple() ?
|
||||||
(SimpleTy >= FIRST_VECTOR_VALUETYPE &&
|
(V >= FIRST_VECTOR_VALUETYPE && V <= LAST_VECTOR_VALUETYPE) :
|
||||||
SimpleTy <= LAST_VECTOR_VALUETYPE) :
|
|
||||||
isExtendedVector();
|
isExtendedVector();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// is64BitVector - Return true if this is a 64-bit vector type.
|
/// is64BitVector - Return true if this is a 64-bit vector type.
|
||||||
bool is64BitVector() const {
|
bool is64BitVector() const {
|
||||||
return isSimple() ?
|
return isSimple() ?
|
||||||
(SimpleTy==v8i8 || SimpleTy==v4i16 || SimpleTy==v2i32 ||
|
(V==v8i8 || V==v4i16 || V==v2i32 || V==v1i64 || V==v2f32) :
|
||||||
SimpleTy==v1i64 || SimpleTy==v2f32) :
|
|
||||||
isExtended64BitVector();
|
isExtended64BitVector();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// is128BitVector - Return true if this is a 128-bit vector type.
|
/// is128BitVector - Return true if this is a 128-bit vector type.
|
||||||
bool is128BitVector() const {
|
bool is128BitVector() const {
|
||||||
return isSimple() ?
|
return isSimple() ?
|
||||||
(SimpleTy==v16i8 || SimpleTy==v8i16 || SimpleTy==v4i32 ||
|
(V==v16i8 || V==v8i16 || V==v4i32 ||
|
||||||
SimpleTy==v2i64 || SimpleTy==v4f32 || SimpleTy==v2f64) :
|
V==v2i64 || V==v4f32 || V==v2f64) :
|
||||||
isExtended128BitVector();
|
isExtended128BitVector();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -308,7 +302,7 @@ namespace llvm {
|
|||||||
/// simple MVT.
|
/// simple MVT.
|
||||||
SimpleValueType getSimpleVT() const {
|
SimpleValueType getSimpleVT() const {
|
||||||
assert(isSimple() && "Expected a SimpleValueType!");
|
assert(isSimple() && "Expected a SimpleValueType!");
|
||||||
return SimpleTy;
|
return SimpleValueType(V);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// getVectorElementType - Given a vector type, return the type of
|
/// getVectorElementType - Given a vector type, return the type of
|
||||||
|
Loading…
Reference in New Issue
Block a user