[PATCH] D70293: Fix PR44001: assert failure in getFunctionLocalOffsetAfterInsn

Djordje Todorovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 14 23:56:02 PST 2019


djtodoro added a comment.

@thopre Thanks for the patch!

Can you please add another test case, by testing the Dwarf output produced by the `AsmPrinter` in this case (e.g. test the `DW_TAG_call_sites` and its attributes)?



================
Comment at: llvm/test/DebugInfo/Hexagon/bundled-call-pr44001.ll:23
+
+attributes #0 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="hexagonv66" "target-features"="-long-calls" "unsafe-fp-math"="false" "use-soft-float"="false" }
+attributes #1 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="hexagonv66" "target-features"="-long-calls" "unsafe-fp-math"="false" "use-soft-float"="false" }
----------------
Usually, we don't need the attributes.


================
Comment at: llvm/test/DebugInfo/Hexagon/bundled-call-pr44001.ll:32
+
+!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 10.0.0 (git at github.com:llvm/llvm-project.git 93767143147b7d765c6ce8123a4226d449228649)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3, nameTableKind: None)
+!1 = !DIFile(filename: "../test-hexagon-call.c", directory: "/home/thomasp/builds/llvm-projects/debug")
----------------
It is enough only producer: `"clang version 10.0.0"`.


================
Comment at: llvm/test/DebugInfo/Hexagon/bundled-call-pr44001.ll:33
+!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 10.0.0 (git at github.com:llvm/llvm-project.git 93767143147b7d765c6ce8123a4226d449228649)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3, nameTableKind: None)
+!1 = !DIFile(filename: "../test-hexagon-call.c", directory: "/home/thomasp/builds/llvm-projects/debug")
+!2 = !{}
----------------
Better `directory: "/"`? 


================
Comment at: llvm/test/DebugInfo/Hexagon/bundled-call-pr44001.ll:43
+!10 = !{i32 1, !"wchar_size", i32 4}
+!11 = !{!"clang version 10.0.0 (git at github.com:llvm/llvm-project.git 93767143147b7d765c6ce8123a4226d449228649)"}
+!12 = distinct !DISubprogram(name: "foo", scope: !1, file: !1, line: 4, type: !5, scopeLine: 4, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !13)
----------------
Same as above. (It is enough only producer: `"clang version 10.0.0"`.)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D70293/new/

https://reviews.llvm.org/D70293





More information about the llvm-commits mailing list