[llvm-bugs] [Bug 32358] New: inlinehint regression with redefinition of extern inline function.

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Mar 20 19:06:19 PDT 2017


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

            Bug ID: 32358
           Summary: inlinehint regression with redefinition of extern
                    inline function.
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Frontend
          Assignee: unassignedclangbugs at nondot.org
          Reporter: erich.keane at intel.com
                CC: llvm-bugs at lists.llvm.org

A very simple test in a C file.

__attribute__((gnu_inline)) extern inline void getline(int a, double b) {      
                                                                               
                                                                               
 b = a;                                                                        
               }
void getline(int a, double b) { b = a; }


Previously, the function attributes were: 
; Function Attrs: inlinehint nounwind
define void @getline(i32 %a, double %b) #0 {

Now, they are:
; Function Attrs: noinline nounwind
define void @getline(i32 %a, double %b) #0 {

Note the difference in "inlinehint" turning into "noinline".  My question is
whether this is intentional, or if this is a regression?

I got it down to r290398, which is Chandler's fix.  Looking at it, it seems
like this is supposed to be a cleanup patch, so I suspect this is a regression.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170321/b78af6e8/attachment.html>


More information about the llvm-bugs mailing list