[LLVMbugs] [Bug 12193] New: Add support for 'outreg' parameter attribute

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Mar 5 18:48:33 PST 2012


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

             Bug #: 12193
           Summary: Add support for 'outreg' parameter attribute
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Common Code Generator Code
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: daniel at zuster.org
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


We currently have support for 'inreg' as a parameter attribute on calls.

There are situations in which front ends would benefit from having an 'outreg'
parameter attribute available.

For example, in Clang we occasionally would like to lower structs which should
be passed on the stack into scalar LLVM values (in order to avoid byval, which
tends to pessimize codeine).

On x86_64, for example, we currently are unable to (easily) do this in
situations in which the argument to be passed on the stack occurs before all
integer registers are exhausted, because turning it into a scalar value would
result in the argument occupying an integer register. We could reorder the
arguments to deal with this, but that would be much more complicated for the
frontend.

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