anza-xyz / move

Move compiler targeting llvm supported backends
https://discord.gg/wFgfjG9J
Apache License 2.0
109 stars 34 forks source link

WIP]] Adding DWARF to Solana Move compiler #383

Closed jcivlin closed 12 months ago

jcivlin commented 1 year ago

This is to set foot in Dwarf generating for Solana Move compiler. DIBuilder is created and will be used to accumulate more Dwarf information.

With this patch we have something as simple as:

sol@dev-equinix-new-york-2:~/tmp/090623:$ less ~/tmp/090623/0x1__unit_test.ll.debug_info

; ModuleID = '0x1__unit_test.dbg_info'
source_filename = "/home/sol/work/git/move-090523/language/move-stdlib/sources/unit_test.move"

!llvm.dbg.cu = !{!0}

!0 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !1, producer: "move-mv-llvm-compiler", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, splitDebugInlining: false, sysroot: "/")
!1 = !DIFile(filename: "unit_test.move", directory: "/home/sol/work/git/move-090523/language/move-stdlib/sources")

Since guessing the order and params to call the 'LLVM*' externs is all try and error process this still has some dbg!. This will be removed.

jcivlin commented 12 months ago

This is a bad merge. Closing it and opening instead #384.