<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Nov 4, 2013 at 7:20 PM, Rui Ueyama <span dir="ltr"><<a href="mailto:ruiu@google.com" target="_blank">ruiu@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">LGTM. Thank you for doing this.<div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">
On Mon, Nov 4, 2013 at 4:09 PM, Rafael Espindola <span dir="ltr"><<a href="mailto:rafael.espindola@gmail.com" target="_blank">rafael.espindola@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: rafael<br>
Date: Mon Nov  4 18:09:36 2013<br>
New Revision: 194028<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=194028&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=194028&view=rev</a><br>
Log:<br>
Replace ErrorOr<void> with error_code.<br>
<br>
It was never transporting any value in addition to the error_code.<br>
<br>
Modified:<br>
    lld/trunk/include/lld/Core/PassManager.h<br>
    lld/trunk/include/lld/Driver/InputGraph.h<br>
    lld/trunk/lib/Core/PassManager.cpp<br>
    lld/trunk/lib/Driver/InputGraph.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/File.h<br>
    lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h<br>
    lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h<br>
    lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h<br>
    lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h<br>
    lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp<br>
    lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h<br>
    lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp<br>
<br>
Modified: lld/trunk/include/lld/Core/PassManager.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Core/PassManager.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Core/PassManager.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/include/lld/Core/PassManager.h (original)<br>
+++ lld/trunk/include/lld/Core/PassManager.h Mon Nov  4 18:09:36 2013<br>
@@ -32,7 +32,7 @@ public:<br>
     _passes.push_back(std::move(pass));<br>
   }<br>
<br>
-  ErrorOr<void> runOnFile(std::unique_ptr<MutableFile> &);<br>
+  error_code runOnFile(std::unique_ptr<MutableFile> &);<br>
<br>
 private:<br>
   /// \brief Passes in the order they should run.<br>
<br>
Modified: lld/trunk/include/lld/Driver/InputGraph.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Driver/InputGraph.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Driver/InputGraph.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/include/lld/Driver/InputGraph.h (original)<br>
+++ lld/trunk/include/lld/Driver/InputGraph.h Mon Nov  4 18:09:36 2013<br>
@@ -105,11 +105,11 @@ public:<br>
   virtual ErrorOr<InputElement *> getNextInputElement();<br>
<br>
   /// \brief Set the index on what inputElement has to be returned<br>
-  virtual ErrorOr<void> setNextElementIndex(uint32_t index = 0);<br>
+  virtual error_code setNextElementIndex(uint32_t index = 0);<br>
<br>
   /// \brief Reset the inputGraph for the inputGraph to start processing<br>
   /// files from the beginning<br>
-  virtual ErrorOr<void> reset() { return setNextElementIndex(0); }<br>
+  virtual error_code reset() { return setNextElementIndex(0); }<br>
<br>
 protected:<br>
   // Input arguments<br>
<br>
Modified: lld/trunk/lib/Core/PassManager.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Core/PassManager.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Core/PassManager.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/Core/PassManager.cpp (original)<br>
+++ lld/trunk/lib/Core/PassManager.cpp Mon Nov  4 18:09:36 2013<br>
@@ -15,7 +15,7 @@<br>
 #include "llvm/Support/ErrorOr.h"<br>
<br>
 namespace lld {<br>
-ErrorOr<void> PassManager::runOnFile(std::unique_ptr<MutableFile> &mf) {<br>
+error_code PassManager::runOnFile(std::unique_ptr<MutableFile> &mf) {<br>
   for (auto &pass : _passes) {<br>
     pass->perform(mf);<br>
   }<br>
<br>
Modified: lld/trunk/lib/Driver/InputGraph.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/InputGraph.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/InputGraph.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/Driver/InputGraph.cpp (original)<br>
+++ lld/trunk/lib/Driver/InputGraph.cpp Mon Nov  4 18:09:36 2013<br>
@@ -77,7 +77,7 @@ ErrorOr<InputElement *> InputGraph::getN<br>
 }<br>
<br>
 /// \brief Set the index on what inputElement has to be returned<br>
-ErrorOr<void> InputGraph::setNextElementIndex(uint32_t index) {<br>
+error_code InputGraph::setNextElementIndex(uint32_t index) {<br>
   if (index > _inputArgs.size())<br>
     return make_error_code(llvm::errc::invalid_argument);<br>
   _nextElementIndex = index;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/File.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/File.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/File.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/File.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/File.h Mon Nov  4 18:09:36 2013<br>
@@ -134,27 +134,27 @@ public:<br>
<br>
     // Read input sections from the input file that need to be converted to<br>
     // atoms<br>
-    if (auto err = createAtomizableSections()) ; else {<br>
+    if (auto err = createAtomizableSections()) {<br>
       EC = err;<br>
       return;<br>
     }<br>
<br>
     // For mergeable strings, we would need to split the section into various<br>
     // atoms<br>
-    if (auto err = createMergeableAtoms()) ; else {<br>
+    if (auto err = createMergeableAtoms()) {<br>
       EC = err;<br>
       return;<br>
     }<br>
<br>
     // Create the necessary symbols that are part of the section that we<br>
     // created in createAtomizableSections function<br>
-    if (auto err = createSymbolsFromAtomizableSections()) ; else {<br>
+    if (auto err = createSymbolsFromAtomizableSections()) {<br>
       EC = err;<br>
       return;<br>
     }<br>
<br>
     // Create the appropriate atoms from the file<br>
-    if (auto err = createAtoms()) ; else {<br>
+    if (auto err = createAtoms()) {<br>
       EC = err;<br>
       return;<br>
     }<br></blockquote><div><br></div></div></div><div>Wow, this use of "else" was confusing.</div></div></div></div></blockquote><div><br></div><div><br></div><div>It was some craziness Michael came up with IIRC.</div>
<div><br></div><div>-- Sean Silva</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>
<div class="h5"><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
@@ -162,7 +162,7 @@ public:<br>
<br>
   /// \brief Read input sections and populate necessary data structures<br>
   /// to read them later and create atoms<br>
-  ErrorOr<void> createAtomizableSections() {<br>
+  error_code createAtomizableSections() {<br>
     // Handle: SHT_REL and SHT_RELA sections:<br>
     // Increment over the sections, when REL/RELA section types are found add<br>
     // the contents to the RelocationReferences map.<br>
@@ -220,7 +220,7 @@ public:<br>
<br>
   /// \brief Create mergeable atoms from sections that have the merge attribute<br>
   /// set<br>
-  ErrorOr<void> createMergeableAtoms() {<br>
+  error_code createMergeableAtoms() {<br>
     // Divide the section that contains mergeable strings into tokens<br>
     // TODO<br>
     // a) add resolver support to recognize multibyte chars<br>
@@ -268,7 +268,7 @@ public:<br>
   /// \brief Add the symbols that the sections contain. The symbols will be<br>
   /// converted to atoms for<br>
   /// Undefined symbols, absolute symbols<br>
-  ErrorOr<void> createSymbolsFromAtomizableSections() {<br>
+  error_code createSymbolsFromAtomizableSections() {<br>
     // Increment over all the symbols collecting atoms and symbol names for<br>
     // later use.<br>
     auto SymI = _objFile->begin_symbols(),<br>
@@ -327,7 +327,7 @@ public:<br>
   }<br>
<br>
   /// \brief Create individual atoms<br>
-  ErrorOr<void> createAtoms() {<br>
+  error_code createAtoms() {<br>
     for (auto &i : _sectionSymbols) {<br>
       const Elf_Shdr *section = i.first;<br>
       std::vector<Elf_Sym_Iter> &symbols = i.second;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.cpp Mon Nov  4 18:09:36 2013<br>
@@ -213,7 +213,7 @@ int relocHexGOTREL_32(uint8_t *location,<br>
<br>
 } // end anon namespace<br>
<br>
-ErrorOr<void> HexagonTargetRelocationHandler::applyRelocation(<br>
+error_code HexagonTargetRelocationHandler::applyRelocation(<br>
     ELFWriter &writer, llvm::FileOutputBuffer &buf, const lld::AtomLayout &atom,<br>
     const Reference &ref) const {<br>
   uint8_t *atomContent = buf.getBufferStart() + atom._fileOffset;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonRelocationHandler.h Mon Nov  4 18:09:36 2013<br>
@@ -28,7 +28,7 @@ public:<br>
       const HexagonTargetLayout<HexagonELFType> &layout)<br>
       : _context(context), _targetHandler(tH), _targetLayout(layout) {}<br>
<br>
-  virtual ErrorOr<void><br>
+  virtual error_code<br>
   applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
                   const lld::AtomLayout &, const Reference &) const;<br>
 private:<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp Mon Nov  4 18:09:36 2013<br>
@@ -278,13 +278,13 @@ public:<br>
     return ga;<br>
   }<br>
<br>
-  ErrorOr<void> handleGOTREL(const Reference &ref) {<br>
+  error_code handleGOTREL(const Reference &ref) {<br>
     // Turn this so that the target is set to the GOT entry<br>
     const_cast<Reference &>(ref).setTarget(getGOTEntry(ref.target()));<br>
     return error_code::success();<br>
   }<br>
<br>
-  ErrorOr<void> handlePLT32(const Reference &ref) {<br>
+  error_code handlePLT32(const Reference &ref) {<br>
     // Turn this into a PC32 to the PLT entry.<br>
     const_cast<Reference &>(ref).setKind(R_HEX_B22_PCREL);<br>
     const_cast<Reference &>(ref).setTarget(getPLTEntry(ref.target()));<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.cpp Mon Nov  4 18:09:36 2013<br>
@@ -35,7 +35,7 @@ int relocB24PCREL(uint8_t *location, uin<br>
 }<br>
 } // end anon namespace<br>
<br>
-ErrorOr<void> PPCTargetRelocationHandler::applyRelocation(<br>
+error_code PPCTargetRelocationHandler::applyRelocation(<br>
     ELFWriter &writer, llvm::FileOutputBuffer &buf, const lld::AtomLayout &atom,<br>
     const Reference &ref) const {<br>
   uint8_t *atomContent = buf.getBufferStart() + atom._fileOffset;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/PPC/PPCTargetHandler.h Mon Nov  4 18:09:36 2013<br>
@@ -24,9 +24,9 @@ public:<br>
   PPCTargetRelocationHandler(const PPCLinkingContext &context)<br>
       : _context(context) {}<br>
<br>
-  virtual ErrorOr<void> applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
-                                        const lld::AtomLayout &,<br>
-                                        const Reference &)const;<br>
+  virtual error_code applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
+                                     const lld::AtomLayout &,<br>
+                                     const Reference &) const;<br>
<br>
 private:<br>
   const PPCLinkingContext &_context;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/TargetHandler.h Mon Nov  4 18:09:36 2013<br>
@@ -69,7 +69,7 @@ public:<br>
<br>
 template <class ELFT> class TargetRelocationHandler {<br>
 public:<br>
-  virtual ErrorOr<void><br>
+  virtual error_code<br>
   applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
                   const lld::AtomLayout &, const Reference &) const = 0;<br>
<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp Mon Nov  4 18:09:36 2013<br>
@@ -33,7 +33,7 @@ int relocPC32(uint8_t *location, uint64_<br>
 }<br>
 } // end anon namespace<br>
<br>
-ErrorOr<void> X86TargetRelocationHandler::applyRelocation(<br>
+error_code X86TargetRelocationHandler::applyRelocation(<br>
     ELFWriter &writer, llvm::FileOutputBuffer &buf, const lld::AtomLayout &atom,<br>
     const Reference &ref) const {<br>
   uint8_t *atomContent = buf.getBufferStart() + atom._fileOffset;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/X86/X86TargetHandler.h Mon Nov  4 18:09:36 2013<br>
@@ -24,9 +24,9 @@ public:<br>
   X86TargetRelocationHandler(const X86LinkingContext &context)<br>
       : _context(context) {}<br>
<br>
-  virtual ErrorOr<void> applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
-                                        const lld::AtomLayout &,<br>
-                                        const Reference &)const;<br>
+  virtual error_code applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
+                                     const lld::AtomLayout &,<br>
+                                     const Reference &) const;<br>
<br>
 private:<br>
   const X86LinkingContext &_context;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.cpp Mon Nov  4 18:09:36 2013<br>
@@ -59,7 +59,7 @@ int64_t X86_64TargetRelocationHandler::r<br>
   return 0;<br>
 }<br>
<br>
-ErrorOr<void> X86_64TargetRelocationHandler::applyRelocation(<br>
+error_code X86_64TargetRelocationHandler::applyRelocation(<br>
     ELFWriter &writer, llvm::FileOutputBuffer &buf, const lld::AtomLayout &atom,<br>
     const Reference &ref) const {<br>
   uint8_t *atomContent = buf.getBufferStart() + atom._fileOffset;<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationHandler.h Mon Nov  4 18:09:36 2013<br>
@@ -24,9 +24,9 @@ public:<br>
   X86_64TargetRelocationHandler(const X86_64LinkingContext &context)<br>
       : _tlsSize(0), _context(context) {}<br>
<br>
-  virtual ErrorOr<void> applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
-                                        const lld::AtomLayout &,<br>
-                                        const Reference &) const;<br>
+  virtual error_code applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,<br>
+                                     const lld::AtomLayout &,<br>
+                                     const Reference &) const;<br>
<br>
   virtual int64_t relocAddend(const Reference &) const;<br>
<br>
<br>
Modified: lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp?rev=194028&r1=194027&r2=194028&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp?rev=194028&r1=194027&r2=194028&view=diff</a><br>



==============================================================================<br>
--- lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp (original)<br>
+++ lld/trunk/lib/ReaderWriter/ELF/X86_64/X86_64RelocationPass.cpp Mon Nov  4 18:09:36 2013<br>
@@ -146,7 +146,7 @@ protected:<br>
   ///<br>
   /// This create a PLT and GOT entry for the IFUNC if one does not exist. The<br>
   /// GOT entry and a IRELATIVE relocation to the original target resolver.<br>
-  ErrorOr<void> handleIFUNC(const Reference &ref) {<br>
+  error_code handleIFUNC(const Reference &ref) {<br>
     auto target = dyn_cast_or_null<const DefinedAtom>(ref.target());<br>
     if (target && target->contentType() == DefinedAtom::typeResolver)<br>
       const_cast<Reference &>(ref).setTarget(getIFUNCPLTEntry(target));<br>
@@ -297,9 +297,9 @@ public:<br>
   StaticRelocationPass(const elf::X86_64LinkingContext &ctx)<br>
       : RelocationPass(ctx) {}<br>
<br>
-  ErrorOr<void> handlePlain(const Reference &ref) { return handleIFUNC(ref); }<br>
+  error_code handlePlain(const Reference &ref) { return handleIFUNC(ref); }<br>
<br>
-  ErrorOr<void> handlePLT32(const Reference &ref) {<br>
+  error_code handlePLT32(const Reference &ref) {<br>
     // __tls_get_addr is handled elsewhere.<br>
     if (ref.target() && ref.target()->name() == "__tls_get_addr") {<br>
       const_cast<Reference &>(ref).setKind(R_X86_64_NONE);<br>
@@ -315,7 +315,7 @@ public:<br>
     return error_code::success();<br>
   }<br>
<br>
-  ErrorOr<void> handleGOT(const Reference &ref) {<br>
+  error_code handleGOT(const Reference &ref) {<br>
     if (isa<UndefinedAtom>(ref.target()))<br>
       const_cast<Reference &>(ref).setTarget(getNullGOT());<br>
     else if (const DefinedAtom *da = dyn_cast<const DefinedAtom>(ref.target()))<br>
@@ -390,7 +390,7 @@ public:<br>
     return oa;<br>
   }<br>
<br>
-  ErrorOr<void> handlePlain(const Reference &ref) {<br>
+  error_code handlePlain(const Reference &ref) {<br>
     if (!ref.target())<br>
       return error_code::success();<br>
     if (auto sla = dyn_cast<SharedLibraryAtom>(ref.target())) {<br>
@@ -403,7 +403,7 @@ public:<br>
     return error_code::success();<br>
   }<br>
<br>
-  ErrorOr<void> handlePLT32(const Reference &ref) {<br>
+  error_code handlePLT32(const Reference &ref) {<br>
     // Turn this into a PC32 to the PLT entry.<br>
     const_cast<Reference &>(ref).setKind(R_X86_64_PC32);<br>
     // Handle IFUNC.<br>
@@ -432,7 +432,7 @@ public:<br>
     return got->second;<br>
   }<br>
<br>
-  ErrorOr<void> handleGOT(const Reference &ref) {<br>
+  error_code handleGOT(const Reference &ref) {<br>
     if (isa<UndefinedAtom>(ref.target()))<br>
       const_cast<Reference &>(ref).setTarget(getNullGOT());<br>
     else if (const DefinedAtom *da = dyn_cast<const DefinedAtom>(ref.target()))<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu" target="_blank">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div></div></div><br></div></div>
<br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div></div>