[llvm-dev] [LLD] Lack of REQUIRES causing test failures when not building with x86 support

via llvm-dev llvm-dev at lists.llvm.org
Mon Jun 4 08:58:31 PDT 2018



> -----Original Message-----
> From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Peter
> Smith via llvm-dev
> Sent: Monday, June 04, 2018 11:53 AM
> To: Joel Jones
> Cc: llvm-dev
> Subject: Re: [llvm-dev] [LLD] Lack of REQUIRES causing test failures when
> not building with x86 support
> 
> Hello Joel,
> 
> I don't think that there is a cunning plan with REQUIRES. I seem to
> remember that there was some debate over the testing strategy and
> platforms, but unfortunately I can't quickly find a link to it. In
> summary:
> - Much of the functionality of LLD is target independent, for example
> linker script support.
> - To write a test needs us to pick a target for these types of test
> and X86 was chosen as this was the most likely target to be compiled
> into build machines, for example the Arm and AArch64 buildbots include
> the X86 backend.
> 
> I think that the missing 117 "REQUIRES" are an oversight, or
> historical artefact, and I think patches would be welcome to add them
> back in; a bot that doesn't build in the X86 backend is probably
> needed to keep this maintained as it is easy to forget the REQUIRES.

A tactic used in some of the LLVM libraries is to create target-specific
subdirectories.  Tests that depend on a specific target go into the
corresponding subdirectory.  A small bit of lit code in the config file
for the subdirectory will implicitly mark all tests UNSUPPORTED unless
the correct target support is available.  This avoids having to remember
to add REQUIRES to the test, although you do still have to put it into
the correct subdirectory.
--paulr

> However I think that if the goal is to test the majority of the
> functionality of LLD it would be wise to compile in support for X86 as
> much of the generic functionality will go untested.
> 
> Peter
> 
> On 4 June 2018 at 15:49, Joel Jones via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
> > If I build lld without x86 support (i.e. with "cmake -
> DLLVM_TARGETS_TO_BUILD=AArch64”) there are 117 tests that fail “make
> check-lld”. Upon examination, all are x86 related.
> >
> > There are multiple (884) tests that have “REQUIRES:.*x86” in the tests
> directory. Was there a cunning plan regarding the use of REQUIRES that I
> couldn’t discern?
> >
> > It seems that either 117 “REQUIRES” need to be added or 884 need to be
> removed.
> >
> > Joel Jones
> > _______________________________________________
> > LLVM Developers mailing list
> > llvm-dev at lists.llvm.org
> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


More information about the llvm-dev mailing list