[LLVMbugs] [Bug 9385] New: MC assembler doesn't accept segment override for movs/lods

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Mar 2 17:29:12 PST 2011


           Summary: MC assembler doesn't accept segment override for
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: -New Bugs
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: pageexec at freemail.hu
                CC: llvmbugs at cs.uiuc.edu, pageexec at freemail.hu
            Blocks: 4068

while compiling linux with PaX, i get the following error:

arch/x86/lib/usercopy_32.c:89:3: error: invalid operand for instruction
        __do_strncpy_from_user(dst, src, count, res);
arch/x86/lib/usercopy_32.c:46:4: note: instantiated from:
                "0:     lodsb " __copyuser_seg" (%%esi)\n"                 \
<inline asm>:3:10: note: instantiated into assembly here
0:      lodsb %gs: (%esi)

it appears that there's no form of movs where one could add a segment override
to the source operand. gas accepts the following:

  lodsb %gs:(%esi)
  movsb %gs:(%esi),(%edi)

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list