[PATCH] D47653: [lit, pdb] Fix two failing PDB tests on Windows

Pavel Labath via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 5 01:20:31 PDT 2018


On Mon, 4 Jun 2018 at 17:52, Stella Stamenova via Phabricator
<reviews at reviews.llvm.org> wrote:
>
> stella.stamenova added a comment.
>
> In https://reviews.llvm.org/D47653#1120508, @labath wrote:
>
> > > newer DIA SDKs annotate the function names with their return type and inputs
> >
> > Does this mean that the tests will now fail for people who happen to have older/different versions of MSVS/DIA SDK installed?
>
>
> It should not fail for people with newer versions because I updated the matching pattern to include both.

That's great, thanks.

>
> One thing I did notice, though, is that the order in which some of the symbol sections are generated differs but FileCheck looks for matches in the order in the test file. Do you know of a way to make it match either order? Right now the section for FuncSymbols.cpp is sometimes before and sometimes after the section for FuncSymbolsTestMain.cpp

Another option would be to change the dumping code to always print out
the functions in the same order. What's the source of non-determinism
here? Is it that we store the info in some container which relies on
pointer comparisons or does the linker actually generate the debug
info in different order sometimes? If it's the latter then it kinda
makes sense to preserve the same order, but in the first case I think
it would make sense to just sort the entries before writing them out.
llvm does things like this in a number of places.


More information about the llvm-commits mailing list