Skip to content

LLVM :: tools/dsymutil/ARM/stmt-seq-macho.test FAILs #137143

@rorth

Description

@rorth

The LLVM :: tools/dsymutil/ARM/stmt-seq-macho.test test FAILs on sparcv9-sun-solaris2.11:

/var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/bin/llvm-dwarfdump --debug-info --debug-line -v /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.dSYM | sort | /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/bin/FileCheck /vol/llvm/src/llvm-project/local/llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test -check-prefix=CHECK_DSYM # RUN: at line 7
+ /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/bin/llvm-dwarfdump --debug-info --debug-line -v /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.dSYM
+ sort
+ /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/bin/FileCheck /vol/llvm/src/llvm-project/local/llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test -check-prefix=CHECK_DSYM
error: /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.dSYM: truncated or malformed object (load command 3 extends past end of file)

Looking at how the .dSYM file is generated, I find lots of warnings:

+ /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/bin/dsymutil --flat --verify-dwarf=none -oso-prepend-path /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.exe -o /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.dSYM
warning: Invalid location attribute ignored.
note: while processing /var/llvm/local-sparcv9-release-stage2-A-flang-clang20/tools/clang/stage2-bins/test/tools/dsymutil/ARM/Output/stmt-seq-macho.test.tmp/stmt_seq_macho.o

and many more.

So it seems something is wrong with the .exe file generated by yaml2obj. And indeed if I take the .dSYM file generated on amd64-pc-solaris2.11 instead, the .dSYM creating step works without warnings , as does the llvm-dwarfdump invocation.

This seems like an endianess issue to me: cmp -l on the .exe files shows

    1 317 376
    2 372 355
    3 355 372
    4 376 317
    5  14   1
    8   1  14
   13   2   0
   16   0   2
   17  15   0
   20   0  15

and much more.

Metadata

Metadata

Assignees

Labels

llvm-toolsAll llvm tools that do not have corresponding tagtest-suite

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions