[LLVMbugs] [Bug 1254] NEW: CBE handling of inline asm immediate operand broken

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Mon Mar 12 16:24:51 PDT 2007


http://llvm.org/bugs/show_bug.cgi?id=1254

           Summary: CBE handling of inline asm immediate operand broken
           Product: libraries
           Version: trunk
          Platform: Macintosh
        OS/Version: MacOS X
            Status: NEW
          Severity: major
          Priority: P2
         Component: Backend: C
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: evan.cheng at apple.com


define void @test4(i16 %S) {
       call i16 asm "rolw   $$8, ${0:w}", "=r,0,~{dirflag},~{fpsr},~{flags}"(
i16 %S )
       ret void
}

CBE produces:

void test4(unsigned short llvm_cbe_S) {
  unsigned short ltmp_0_1;

  __asm__ volatile ("rolw   %%8, %w0"
        :"=r"(ltmp_0_1)
        :"0"(llvm_cbe_S));
  return;
}

gcc compiles inline asm statement to:
rolw %8, %ax

It should have been rolw $8, %ax.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the llvm-bugs mailing list