[LLVMbugs] [Bug 1513] NEW: Wrong assignmend of attributes

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Fri Jun 15 08:24:39 PDT 2007


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

           Summary: Wrong assignmend of attributes
           Product: tools
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: llvm-gcc
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: rafael.espindola at gmail.com


consider the function

struct long s{
long a;
long b;
}

void f(struct s, char *, char);

In x86_64 the struct s is passed in registers, so the llvm type should be

f(i64, i64, i8 *, i8 sext)

The problem is that in TypeConvert::ConvertFunctionType, the Idx is only
incremented by one when passing by the first (C) argument. Because of this the
llvm type generated is invalid:

f(i64, i64, i8 * sext, i8)



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