tools: repair Windows build

exp2 is not available on Windows.  Fortunately, we are calculating powers of 2
with expontents within the range of [4,12].  Simply use an equivalent bitshift
operation to repair compilation with MSVC which does not provide this standard
function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200454 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Saleem Abdulrasool 2014-01-30 05:20:31 +00:00
parent 17ca0f8f80
commit 5ecf81d8b0

View File

@ -321,7 +321,7 @@ void ARMAttributeParser::ABI_align_needed(AttrType Tag, const uint8_t *Data,
if (Value < countof(Strings)) if (Value < countof(Strings))
Description = StringRef(Strings[Value]); Description = StringRef(Strings[Value]);
else if (Value <= 12) else if (Value <= 12)
Description = Twine("8-byte alignment, ") + utostr(exp2(Value)) Description = Twine("8-byte alignment, ") + utostr(1 << Value)
+ Twine("-byte extended alignment"); + Twine("-byte extended alignment");
else else
Description = "Invalid"; Description = "Invalid";
@ -342,7 +342,7 @@ void ARMAttributeParser::ABI_align_preserved(AttrType Tag, const uint8_t *Data,
if (Value < countof(Strings)) if (Value < countof(Strings))
Description = StringRef(Strings[Value]); Description = StringRef(Strings[Value]);
else if (Value <= 12) else if (Value <= 12)
Description = Twine("8-byte stack alignment, ") + utostr(exp2(Value)) Description = Twine("8-byte stack alignment, ") + utostr(1 << Value)
+ Twine("-byte data alignment"); + Twine("-byte data alignment");
else else
Description = "Invalid"; Description = "Invalid";