From a9963c648e1646fe6fc1015a61a05b08a62d0aa8 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 23 Apr 2012 00:27:54 +0000 Subject: [PATCH] Don't die with an assertion if the Result bitwidth is already correct. This fixes an assert reading "1239123123123123" when the result is already 64-bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155329 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/StringRef.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Support/StringRef.cpp b/lib/Support/StringRef.cpp index 14d314b7697..97af0fff5ee 100644 --- a/lib/Support/StringRef.cpp +++ b/lib/Support/StringRef.cpp @@ -391,7 +391,7 @@ bool StringRef::getAsInteger(unsigned Radix, APInt &Result) const { unsigned BitWidth = Log2Radix * Str.size(); if (BitWidth < Result.getBitWidth()) BitWidth = Result.getBitWidth(); // don't shrink the result - else + else if (BitWidth > Result.getBitWidth()) Result = Result.zext(BitWidth); APInt RadixAP, CharAP; // unused unless !IsPowerOf2Radix