Le problème d'un compilateur à la volée est que c'est difficile à déboguer. La dernière version d'Unladen Swallow (qui utilise LLVM), la 2009Q3, inclut de symbole de debug pour gdb 7.0 :
"The Unladen Swallow team added support to gdb 7.0 that allow JIT compilers to emit DWARF debugging information so that gdb can function properly in the presence of JIT-compiled code. This interface should be sufficiently generic that any JIT compiler can take advantage of it." http://code.google.com/p/unladen-swallow/wiki/Release2009Q3
# Debug avec le JIT
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Sortie de LLVM 2.6. Évalué à 10.
"The Unladen Swallow team added support to gdb 7.0 that allow JIT compilers to emit DWARF debugging information so that gdb can function properly in the presence of JIT-compiled code. This interface should be sufficiently generic that any JIT compiler can take advantage of it."
http://code.google.com/p/unladen-swallow/wiki/Release2009Q3
Ça évite d'avoir juste des "???" dans gdb ;-)
La modif a été faite directement dans LLVM :
http://llvm.org/docs/DebuggingJITedCode.html