cmd/link: dwarf compression broke mips builder #25939
Comments
Sigh. I watched the builders, but I guess not for long enough. As best as I can tell, this is a bug in GDB on the mips builder. I built a binary on a mips gomote. On mips, GDB fails to read it, but readelf works fine. And everything I try (gdb, readelf, dwarfdump) on my amd64 workstation is happy too. @ianlancetaylor, I think you're somewhat familiar with libbfd, any guesses as to what's going on here? Invalid operation is
I think I'll just skip the test on mips? |
Change https://golang.org/cl/119539 mentions this issue: |
|
objdump -f:
readelf -e: ELF Header: Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, big endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: EXEC (Executable file) Machine: MIPS R3000 Version: 0x1 Entry point address: 0x6da10 Start of program headers: 52 (bytes into file) Start of section headers: 276 (bytes into file) Flags: 0x50001004, cpic, o32, mips32 Size of this header: 52 (bytes) Size of program headers: 32 (bytes) Number of program headers: 7 Size of section headers: 40 (bytes) Number of section headers: 24 Section header string table index: 3 |
Thanks. Unfortunately I don't see anything. It's somewhat surprising that objdump works if gdb fails in this way. I don't know what is going on. |
Thanks, all the other architectures are fine so I'm not inclined to stress about it. |
For what it is worth, attaching output from dumping an object compiled with "clang --target=mips-linux -c -g -gz=zlib-gnu". One difference is that the dwarf section types are MIPS_DWARF and not PROGBITS (no idea whether that actually matters). readelf -e: ELF Header: Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, big endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: REL (Relocatable file) Machine: MIPS R3000 Version: 0x1 Entry point address: 0x0 Start of program headers: 0 (bytes into file) Start of section headers: 2188 (bytes into file) Flags: 0x70001005, noreorder, cpic, o32, mips32r2 Size of this header: 52 (bytes) Size of program headers: 0 (bytes) Number of program headers: 0 Size of section headers: 40 (bytes) Number of section headers: 28 Section header string table index: 1 |
That's interesting but I don't get why objdump would be inconsistent about it depending on the host platform. I'm gonna wait for someone who actually has access to a mips machine to complain about this; working with gomote is pretty painful. |
Starting with https://go-review.googlesource.com/c/go/+/118276, the mips builder is red.
The text was updated successfully, but these errors were encountered: