https://llvm.org/bugs/show_bug.cgi?id=28720
Bug ID: 28720 Summary: lld does not accept dot assignment in an output section Product: lld Version: unspecified Hardware: PC OS: FreeBSD Status: NEW Severity: normal Priority: P Component: ELF Assignee: unassignedb...@nondot.org Reporter: ema...@freebsd.org CC: llvm-bugs@lists.llvm.org Blocks: 23214 Classification: Unclassified FreeBSD/amd64's kernel ldscript assigns . in an output section like so: 6 SECTIONS 7 { ... 146 .bss : 147 { 148 *(.dynbss) 149 *(.bss .bss.* .gnu.linkonce.b.*) 150 *(COMMON) 151 /* Align here to ensure that the .bss section occupies space up to 152 _end. Align after .bss to ensure correct alignment even if the 153 .bss section disappears because there are no input sections. 154 FIXME: Why do we need it? When there is no .bss section, we don't 155 pad the .data section. */ 156 . = ALIGN(. != 0 ? 64 / 8 : 1); 157 } lld's parser does not accept this: line 156: unknown command . . = ALIGN(. != 0 ? 64 / 8 : 1); ^ For FreeBSD's uses we could just move the assignment out of that section but perhaps this is more commonly needed? -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs