SAOC LLDB D integration: 12th Weekly Update
contact at lsferreira.net
Thu Dec 9 17:47:37 UTC 2021
Hi D community!
I'm here again, to describe what I've done during the twelfth
week of Symmetry
Autumn of Code.
## LLVM upstream follow up update
Two more patches in the D demangling patch train got merged!
After getting my testsuite working reasonably well, I self merged
accepted patches. I've contacted some LLVM members to figure out
were not reproducing my errors, and it seems some tests are not
their testsuite, hence the error.
I also amended some existing patches, accordingly with reviews.
## Finishing implementation of basic types and continuing
decoupling Clang-specific code
I finished the implementation I had in mind to support at least
one basic type
(I choose boolean, just for testing it, being straightforward to
rest) with a Type wrapper called `DType`. Although, I'm not
getting any output
from the DWARF parser and `ParseTypeFromDWARF` function is not
being called at
all. I checked other language implementations, like Golang, but
they are very
outdated. I assume there is yet another entangled clang-specific
stuff I still
need to figure out or something I'm missing.
You can see the changes here:
I made one more patch to move forward with clang-specific
decoupling, in order
to be able to support custom languages:
I have more changes uncommitted that needs some tuning, including
a DWARF to
LLDB encoding helper, needed by language DWARF AST Parsers.
## Simple Continuous Integration for LLDB-d
I've been tinkering with some custom continuous integration for
my llvm tree to
provide automated builds to the community to test. So, I moved
to a new organization just to be able to have organization-wide
machines on Github actions. I already have a successful action
working but it
takes around 4h to complete, not including the actual testsuite,
so I still
need to revaluate the workflow and probably choose self-hosted
fast builds. Here are the workflows, if you are interested:
## What is next?
I will try to figure out why my current approach is not working
as expected and
if I get a successful output, I will start working on the DWARF
You can read this also on my
More information about the Digitalmars-d