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

Reply via email to