[LLVMbugs] [Bug 3861] New: X86 only allocates one register for returning i8s, but two for other integer types

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sun Mar 22 16:30:36 PDT 2009


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

           Summary: X86 only allocates one register for returning i8s, but
                    two for other integer types
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: fvbommel at wxs.nl
                CC: llvmbugs at cs.uiuc.edu


In X86CallingConv.td, there's the following bit of code at the start of
RetCC_X86Common:
-----
  // Scalar values are returned in AX first, then DX.
  CCIfType<[i8] , CCAssignToReg<[AL]>>,
  CCIfType<[i16], CCAssignToReg<[AX, DX]>>,
  CCIfType<[i32], CCAssignToReg<[EAX, EDX]>>,
  CCIfType<[i64], CCAssignToReg<[RAX, RDX]>>,
-----
There seems to be no reason why there is only a single register for i8 but two
for other integer types. It's also inconsistent with the comment preceding it.


-- 
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