mirror of
https://github.com/RPCS3/llvm.git
synced 2025-02-03 17:24:24 +00:00
Try to fix build after invalid pointer conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284428 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5a8c8ece66
commit
d4bb10c270
@ -31,6 +31,8 @@ enum class IntegerStyle {
|
||||
};
|
||||
enum class HexStyle { Upper, Lower, PrefixUpper, PrefixLower };
|
||||
|
||||
IntegerStyle hexStyleToIntHexStyle(HexStyle S);
|
||||
|
||||
size_t getDefaultPrecision(FloatStyle Style);
|
||||
size_t getDefaultPrecision(IntegerStyle Style);
|
||||
size_t getDefaultPrecision(HexStyle Style);
|
||||
|
@ -353,6 +353,20 @@ void llvm::write_double(raw_ostream &S, double N, FloatStyle Style,
|
||||
S << '%';
|
||||
}
|
||||
|
||||
IntegerStyle llvm::hexStyleToIntHexStyle(HexStyle S) {
|
||||
switch (S) {
|
||||
case HexStyle::Upper:
|
||||
return IntegerStyle::HexUpperNoPrefix;
|
||||
case HexStyle::Lower:
|
||||
return IntegerStyle::HexLowerNoPrefix;
|
||||
case HexStyle::PrefixUpper:
|
||||
return IntegerStyle::HexUpperPrefix;
|
||||
case HexStyle::PrefixLower:
|
||||
return IntegerStyle::HexLowerPrefix;
|
||||
}
|
||||
LLVM_BUILTIN_UNREACHABLE;
|
||||
}
|
||||
|
||||
size_t llvm::getDefaultPrecision(FloatStyle Style) {
|
||||
switch (Style) {
|
||||
case FloatStyle::Exponent:
|
||||
|
@ -36,8 +36,8 @@ template <typename T>
|
||||
typename std::enable_if<std::is_pointer<T>::value, std::string>::type
|
||||
format_number(T N, HexStyle Style, Optional<size_t> Precision = None,
|
||||
Optional<int> Width = None) {
|
||||
|
||||
return format_number(reinterpret_cast<uintptr_t>(N), Style, Precision, Width);
|
||||
IntegerStyle IS = hexStyleToIntHexStyle(Style);
|
||||
return format_number(reinterpret_cast<uintptr_t>(N), IS, Precision, Width);
|
||||
}
|
||||
|
||||
std::string format_number(unsigned long N, IntegerStyle Style,
|
||||
|
Loading…
x
Reference in New Issue
Block a user