> Looking at the .rodata.str1.4 section, I see > > $ objdump -s -j .rodata.str1.8 allocatable_function_5.exe > > allocatable_function_5.exe: file format elf32-sparc-sol2 > > Contents of section .rodata.str1.8: > 10ba8 6d666f6f 2063616c 6c696e67 20000000 mfoo calling ... > 10bb8 666f6f00 00000000 6c687300 00000000 foo.....lhs..... > > This string table compression can be disabled with ld -z nocomprstrtab: > > -z nocompstrtab > > Disables the compression of ELF string tables, and comment > sec- tions. By default, string compression is applied to SHT_STRTAB sec- > tions, to SHT_PROGBITS sections that have their SHF_MERGE and > SHF_STRINGS section flags set, and to comment sections.
Thanks for tracking this down! > This isn't necessary on Solaris 11.4, and Solaris 11.3/x86 isn't > affected as well. I'm still determining what the best course of action > is: disable string merging support before Solaris 11.4 or enable the > workaround above instead. Out of curiosity, why isn't it necessary on Solaris 11.4? Is string compression disabled or does it respect alignment on Solaris 11.4? -- Eric Botcazou