summaryrefslogtreecommitdiffstats
path: root/clang/tools/driver/cc1as_main.cpp
diff options
context:
space:
mode:
authorMandeep Singh Grang <mgrang@codeaurora.org>2016-12-06 02:49:16 +0000
committerMandeep Singh Grang <mgrang@codeaurora.org>2016-12-06 02:49:16 +0000
commit6d1d36c4b7c3b2292f77008685eee23ea48f7903 (patch)
tree58d8356396cb8315706981bcbf8fc549016021a9 /clang/tools/driver/cc1as_main.cpp
parent0e613f7c652b0ad33bb6768bb419698fcd544124 (diff)
downloadbcm5719-llvm-6d1d36c4b7c3b2292f77008685eee23ea48f7903.tar.gz
bcm5719-llvm-6d1d36c4b7c3b2292f77008685eee23ea48f7903.zip
[clang] Fix D26214: Move error handling out of MC and to the callers.
Summary: Related llvm patch: https://reviews.llvm.org/D27359 Reviewers: echristo, t.p.northover, rengolin, grosbach, compnerd Subscribers: mehdi_amini, cfe-commits, llvm-commits Tags: #clang-c Differential Revision: https://reviews.llvm.org/D27360 llvm-svn: 288762
Diffstat (limited to 'clang/tools/driver/cc1as_main.cpp')
-rw-r--r--clang/tools/driver/cc1as_main.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/clang/tools/driver/cc1as_main.cpp b/clang/tools/driver/cc1as_main.cpp
index c9361541cdf..263751346b8 100644
--- a/clang/tools/driver/cc1as_main.cpp
+++ b/clang/tools/driver/cc1as_main.cpp
@@ -426,10 +426,13 @@ static bool ExecuteAssembler(AssemblerInvocation &Opts,
// Set values for symbols, if any.
for (auto &S : Opts.SymbolDefs) {
- if (Ctx.setSymbolValue(Parser->getStreamer(), S)) {
- Failed = true;
- break;
- }
+ auto Pair = StringRef(S).split('=');
+ auto Sym = Pair.first;
+ auto Val = Pair.second;
+ int64_t Value;
+ // We have already error checked this in the driver.
+ Val.getAsInteger(0, Value);
+ Ctx.setSymbolValue(Parser->getStreamer(), Sym, Value);
}
if (!Failed) {
OpenPOWER on IntegriCloud