[llvm-bugs] [Bug 35112] New: Wrong debug info for unrolled loop induction variable

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Oct 27 14:36:04 PDT 2017


https://bugs.llvm.org/show_bug.cgi?id=35112

            Bug ID: 35112
           Summary: Wrong debug info for unrolled loop induction variable
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: DebugInfo
          Assignee: unassignedbugs at nondot.org
          Reporter: aprantl at apple.com
                CC: llvm-bugs at lists.llvm.org

void f() {
  for (int i = 1; i <=32; i <<=2 )
    bar(i>>1);
}


clang -O3 -g -S -emit-llvm -o - /tmp/shiftloop.c

entry:
  tail call void @llvm.dbg.value(metadata i32 1, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 1, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 1, metadata !17, metadata
!DIExpression()), !dbg !20
  %call = tail call i32 (i32, ...) bitcast (i32 (...)* @bar to i32 (i32,
...)*)(i32 0) #3, !dbg !21
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 1, metadata !17, metadata
!DIExpression()), !dbg !20
  %call.1 = tail call i32 (i32, ...) bitcast (i32 (...)* @bar to i32 (i32,
...)*)(i32 2) #3, !dbg !21
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 1, metadata !17, metadata
!DIExpression()), !dbg !20
  %call.2 = tail call i32 (i32, ...) bitcast (i32 (...)* @bar to i32 (i32,
...)*)(i32 8) #3, !dbg !21
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  tail call void @llvm.dbg.value(metadata i32 4, metadata !17, metadata
!DIExpression()), !dbg !20
  ret void, !dbg !23
}

!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang
version 6.0.0 (trunk 316686) (llvm/trunk 316682)", isOptimized: true,
runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)

-- 
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/20171027/d20ffdb6/attachment.html>


More information about the llvm-bugs mailing list