summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShankar Easwaran <shankare@codeaurora.org>2014-11-11 00:40:32 +0000
committerShankar Easwaran <shankare@codeaurora.org>2014-11-11 00:40:32 +0000
commit1987862287f7e222bf60b266c01be8c78bf661a6 (patch)
tree998f48faf4a999d7428c2fc696f547a935ef9f92
parent50d60be3ce72f8f1005895fa3e7d14ec1a1f385c (diff)
downloadbcm5719-llvm-1987862287f7e222bf60b266c01be8c78bf661a6.tar.gz
bcm5719-llvm-1987862287f7e222bf60b266c01be8c78bf661a6.zip
[Gnu][Driver] Use StringRef conversion functions
llvm-svn: 221648
-rw-r--r--lld/lib/Driver/GnuLdDriver.cpp20
1 files changed, 7 insertions, 13 deletions
diff --git a/lld/lib/Driver/GnuLdDriver.cpp b/lld/lib/Driver/GnuLdDriver.cpp
index 34c2da16c5d..9ca5a2073e8 100644
--- a/lld/lib/Driver/GnuLdDriver.cpp
+++ b/lld/lib/Driver/GnuLdDriver.cpp
@@ -15,7 +15,6 @@
#include "lld/Driver/Driver.h"
#include "lld/Driver/GnuLdInputGraph.h"
-#include "lld/Support/NumParse.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/Optional.h"
#include "llvm/ADT/STLExtras.h"
@@ -158,12 +157,8 @@ static bool parseZOption(StringRef opt, uint64_t &val) {
if (equalPos == 0 || equalPos == StringRef::npos)
return false;
StringRef value = opt.substr(equalPos + 1);
- ErrorOr<uint64_t> parsedVal = lld::parseNum(value, false /*No Extensions*/);
- if (!parsedVal)
- return false;
- // Dont allow a value of 0 for max-page-size.
- val = parsedVal.get();
- if (!val)
+ val = 0;
+ if (value.getAsInteger(0, val) || !val)
return false;
return true;
}
@@ -595,15 +590,14 @@ bool GnuLdDriver::parse(int argc, const char *argv[],
break;
case OPT_image_base: {
- ErrorOr<uint64_t> baseAddress =
- lld::parseNum(inputArg->getValue(), false);
- if (baseAddress && baseAddress.get())
- ctx->setBaseAddress(baseAddress.get());
- else {
- diagnostics << "invalid value for image base " << inputArg->getValue()
+ uint64_t baseAddress = 0;
+ StringRef inputValue = inputArg->getValue();
+ if ((inputValue.getAsInteger(0, baseAddress)) || !baseAddress) {
+ diagnostics << "invalid value for image base " << inputValue
<< "\n";
return false;
}
+ ctx->setBaseAddress(baseAddress);
break;
}
OpenPOWER on IntegriCloud