[lld] r193881 - [PECOFF] Enable RoundTrip{YAML,Native}Pass.

Rui Ueyama ruiu at google.com
Fri Nov 1 13:51:22 PDT 2013


Why does the order matter? Does that mean there is some information loss in
RoundTripNativePass?


On Fri, Nov 1, 2013 at 1:46 PM, Shankar Easwaran <shankare at codeaurora.org>wrote:

> Yes, reverse the way the passes are called.
>
> #ifdef FIXME
>   pm.add(std::unique_ptr<Pass>(**new RoundTripNativePass(context)))**;
>   pm.add(std::unique_ptr<Pass>(**new RoundTripYAMLPass(context)));
> #endif
>
> to
>
> #ifdef FIXME
>   pm.add(std::unique_ptr<Pass>(**new RoundTripYAMLPass(context)));
>   pm.add(std::unique_ptr<Pass>(**new RoundTripNativePass(context)))**;
> #endif
>
> Thanks
>
> Shankar Easwaran
>
>
> On 11/1/2013 3:19 PM, Rui Ueyama wrote:
>
>> I replaced #ifdef FIXME with #ifndef NDEBUG in Driver.cpp and remove all
>> calls of pm.add() from each flavor's LinkerContext classes. All tests but
>> only one succeeded. The log of the failing test is this. Do you have any
>> idea what was going on?
>>
>> Exit Code: 1
>>
>> Command Output (stderr):
>> --
>> Name    :
>> /usr/local/google/home/ruiu/**src/llvm/tools/lld/test/elf/**
>> Inputs/foo.o.x86-64
>> Type    : ELF File
>> Ordinal : 0
>> Attributes :
>>    - wholeArchive : false
>>    - asNeeded : false
>>    contextPath : None
>> Undefined Symbol: command line option -entry : _start
>> symbol(s) not found
>> /usr/local/google/home/ruiu/**src/llvm/tools/lld/test/elf/**
>> roundtrip.test:10:7:
>> error: expected string not found in input
>> CHECK:path:{{.*}}.native
>>        ^
>> <stdin>:1:1: note: scanning from here
>> ---
>> ^
>> <stdin>:2:1: note: possible intended match here
>> path: ''
>> ^
>>
>> --
>>
>> ********************
>> Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
>> Testing Time: 0.63s
>> ********************
>> Failing Tests (1):
>>      lld :: elf/roundtrip.test
>>
>>
>>
>> --
>>
>>
>>
>> On Fri, Nov 1, 2013 at 1:12 PM, Shankar Easwaran <shankare at codeaurora.org
>> >**wrote:
>>
>>  Thanks for working and enabling this.
>>>
>>>
>>> On 11/1/2013 2:52 PM, Rui Ueyama wrote:
>>>
>>>  Author: ruiu
>>>> Date: Fri Nov  1 14:52:37 2013
>>>> New Revision: 193881
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-****project?rev=193881&view=rev<http://llvm.org/viewvc/llvm-**project?rev=193881&view=rev>
>>>> <ht**tp://llvm.org/viewvc/llvm-**project?rev=193881&view=rev<http://llvm.org/viewvc/llvm-project?rev=193881&view=rev>
>>>> >
>>>>
>>>> Log:
>>>> [PECOFF] Enable RoundTrip{YAML,Native}Pass.
>>>>
>>>> Modified:
>>>>       lld/trunk/lib/ReaderWriter/****PECOFF/PECOFFLinkingContext.****
>>>> cpp
>>>>
>>>> Modified: lld/trunk/lib/ReaderWriter/****PECOFF/PECOFFLinkingContext.**
>>>> **cpp
>>>> URL: http://llvm.org/viewvc/llvm-****project/lld/trunk/lib/**<http://llvm.org/viewvc/llvm-**project/lld/trunk/lib/**>
>>>> ReaderWriter/PECOFF/****PECOFFLinkingContext.cpp?rev=****
>>>> 193881&r1=193880&r2=193881&****view=diff<http://llvm.org/**
>>>> viewvc/llvm-project/lld/trunk/**lib/ReaderWriter/PECOFF/**
>>>> PECOFFLinkingContext.cpp?rev=**193881&r1=193880&r2=193881&**view=diff<http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp?rev=193881&r1=193880&r2=193881&view=diff>
>>>> >
>>>> ==============================****============================**==**
>>>> ==================
>>>> --- lld/trunk/lib/ReaderWriter/****PECOFF/PECOFFLinkingContext.****cpp
>>>> (original)
>>>> +++ lld/trunk/lib/ReaderWriter/****PECOFF/PECOFFLinkingContext.****cpp
>>>> Fri
>>>>
>>>> Nov  1 14:52:37 2013
>>>> @@ -12,15 +12,17 @@
>>>>    #include "IdataPass.h"
>>>>    #include "LinkerGeneratedSymbolFile.h"
>>>>    -#include "llvm/ADT/SmallString.h"
>>>> -#include "llvm/Support/Allocator.h"
>>>> -#include "llvm/Support/Path.h"
>>>>    #include "lld/Core/PassManager.h"
>>>>    #include "lld/Passes/LayoutPass.h"
>>>> +#include "lld/Passes/****RoundTripNativePass.h"
>>>> +#include "lld/Passes/RoundTripYAMLPass.****h"
>>>>    #include "lld/ReaderWriter/****PECOFFLinkingContext.h"
>>>>
>>>>    #include "lld/ReaderWriter/Reader.h"
>>>>    #include "lld/ReaderWriter/Simple.h"
>>>>    #include "lld/ReaderWriter/Writer.h"
>>>> +#include "llvm/ADT/SmallString.h"
>>>> +#include "llvm/Support/Allocator.h"
>>>> +#include "llvm/Support/Path.h"
>>>>      #include <bitset>
>>>>    #include <set>
>>>> @@ -208,5 +210,9 @@ void PECOFFLinkingContext::****addPasses(Pas
>>>>      pm.add(std::unique_ptr<Pass>(****new
>>>> pecoff::GroupedSectionsPass())****);
>>>>      pm.add(std::unique_ptr<Pass>(****new pecoff::IdataPass(*this)));
>>>>      pm.add(std::unique_ptr<Pass>(****new LayoutPass()));
>>>> +#ifndef NDEBUG
>>>> +  pm.add(std::unique_ptr<Pass>(****new RoundTripYAMLPass(*this)));
>>>> +  pm.add(std::unique_ptr<Pass>(****new RoundTripNativePass(*this)));
>>>>
>>>> +#endif
>>>>    }
>>>>    } // end namespace lld
>>>>
>>>>
>>>> ______________________________****_________________
>>>> llvm-commits mailing list
>>>> llvm-commits at cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/****mailman/listinfo/llvm-commits<http://lists.cs.uiuc.edu/**mailman/listinfo/llvm-commits>
>>>> <**http://lists.cs.uiuc.edu/**mailman/listinfo/llvm-commits<http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits>
>>>> >
>>>>
>>>>
>>>>
>>>>  --
>>> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
>>> by the Linux Foundation
>>>
>>>
>>>
>
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
> by the Linux Foundation
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131101/0ae87a7b/attachment.html>


More information about the llvm-commits mailing list