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: unassignedb...@nondot.org
          Reporter: apra...@apple.com
                CC: llvm-bugs@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.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to