1 --- 2 title: 'SAOC LLDB D integration: 4th Weekly Update' 3 date: '2021-10-14T15:27:00+01:00' 4 tags: ['saoc', 'saoc2021', 'dlang', 'llvm', 'lldb', 'debug', 'debugging'] 5 description: "This post describes what I've done on the 4th week of the 6 Symmetry Autumn of Code 2021, including finishing the patch split, answering 7 reviews, discussion about implementation, announcement to the llvm-dev mailing 8 list, minor changes on the GCC patches and bugzilla" 9 --- 10 11 Hi D community! 12 13 I'm here again, to describe what I've done during the fourth week of Symmetry 14 Autumn of Code. 15 16 ## Finishing the patch split 17 18 I'm happy to announce the full list of patches since the split: 19 20 - https://reviews.llvm.org/D111414 21 - https://reviews.llvm.org/D111415 22 - https://reviews.llvm.org/D111416 23 - https://reviews.llvm.org/D111417 24 - https://reviews.llvm.org/D111419 25 - https://reviews.llvm.org/D111420 26 - https://reviews.llvm.org/D111421 27 - https://reviews.llvm.org/D111422 28 - https://reviews.llvm.org/D111423 29 - https://reviews.llvm.org/D111424 30 - https://reviews.llvm.org/D111425 31 - https://reviews.llvm.org/D111426 32 - https://reviews.llvm.org/D111428 33 - https://reviews.llvm.org/D111429 34 - https://reviews.llvm.org/D111430 35 - https://reviews.llvm.org/D111431 36 - https://reviews.llvm.org/D111432 37 38 This includes some little changes and it already have a ton of discussion! Some 39 things are little disappointing and other somewhat rigid, in my point of view, 40 since some patches are "too atomic" according to the reviewers. Some other 41 stuff, however I totally understand, since it increases the overall LLVM code 42 quality, even though being nit picking. I'm going to try to circumvent the 43 issues and strive to push this forward as much as I can. 44 45 ## Reflected GCC Patches 46 47 By reading the code twice, during the split, I found out some other stuff 48 considered interesting to change on the GCC side, so I made some patches: 49 50 - Usage of distinguishable tuple(), instead of wrong templated Tuple!(): 51 https://gcc.gnu.org/pipermail/gcc-patches/2021-October/581577.html 52 - Write distinguishable variadics and add missing tests to the test suite: 53 https://gcc.gnu.org/pipermail/gcc-patches/2021-October/581574.html 54 - Add test cases for missing coverage tests: 55 https://gcc.gnu.org/pipermail/gcc-patches/2021-October/581588.html and 56 https://gcc.gnu.org/pipermail/gcc-patches/2021-October/581590.html 57 58 I also generically answered previously submitted patches and resubmit some 59 malformed/wrong patches I made, with some help by Iain. 60 61 ## Announcement on the `llvm-dev` mailing list 62 63 I announced the D demangler change into llvm-dev mailing list, as requested by 64 LLVM reviewers. If you want to interact and discuss there, feel free to do it 65 so: https://lists.llvm.org/pipermail/llvm-dev/2021-October/153267.html 66 67 ## Minor updates on GCC bugzilla 68 69 I added this missing bugzilla report: 70 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102702 71 72 Since Eric Gallager added me to CC list for various fuzzing issues to GCC 73 demangler, I decided to create an issue about the time complexity problem, 74 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102732 , similar to what was 75 reported by c++ demangler (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80002). 76 77 ## What's next? 78 79 Next week I'm going to keep an eye on the patches and fix the suggested 80 changes, as usual. About the next milestone, I already have some drafts about 81 things to look at and differences between compilers DWARF generation. I also 82 have an hint of how to implement it, so probably I'm going to work on some 83 draft implementation. Because the demangler is already ported/implemented, just 84 reviewing is necessary, I think I can move forward with a draft implementation 85 of the next milestone, although this is something I need to discuss with my 86 mentor. On the meanwhile, I made my TODO list open and automatically deployed, 87 at least daily, so you can see what I'm doing during the week 88 [here](//tasks.lsferreira.net) . 89 90 You can also read this on the D programming language forum, 91 [here](https://firstname.lastname@example.org), 92 and discuss there. 93 94 Read about the [previous week](../d-saoc-2021-03/) and [next 95 week](../d-saoc-2021-05/).