[lld] r193300 - [PassManager] add ReaderWriter{Native, YAML} to the Driver.
Shankar Easwaran
shankare at codeaurora.org
Thu Oct 24 09:04:50 PDT 2013
Hi Nick,
So I found the problem on Darwin when it tries to add a StubHelperAtom :-
X86_64StubHelperAtom(const File &file, const Atom &helperCommon)
: SimpleDefinedAtom(file) {
this->addReference(KindHandler_x86_64::lazyImmediate, 1, nullptr, 0);
this->addReference(KindHandler_x86_64::ripRel32, 6, &helperCommon, 0);
}
A reference is being added to point to a nullptr. This has to be fixed
to point to the right atom.
Thanks
Shankar Easwaran
On 10/24/2013 10:31 AM, Shankar Easwaran wrote:
> On 10/24/2013 12:23 AM, Rui Ueyama wrote:
>> I did not expect you were going to submit your change with disabling so
>> many tests. It disabled even pretty basic tests for COFF. This is really
>> bad. Please don't do that.
> The problem was not in the patch as what I see. The problem is because
> the relocation types have not been added by pecoff.
>
> ErrorOr<Reference::Kind>
> PECOFFLinkingContext::relocKindFromString(StringRef str) const {
> return make_error_code(YamlReaderError::illegal_value);
> }
>
> ErrorOr<std::string>
> PECOFFLinkingContext::stringFromRelocKind(Reference::Kind kind) const {
> return make_error_code(YamlReaderError::illegal_value);
> }
>
> These two are empty, this has to be fixed. This was the reason behind
> the failures for PECOFF. There are some more inherent assumptions that
> are being used which the new RoundTrip{YAML, Native} changes uncovered.
>
> *I am going to fix the ELF cases*, but I am going to leave it to the
> flavor owners for changes to their respective flavors as I dont have
> much knowledge on what kind of factors to be considered ( as these
> might be some assumptions that could break).
>
> Thanks
>
> Shankar Easwaran
>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the Linux Foundation
More information about the llvm-commits
mailing list