git

My personal website source code
Log | Files | Refs | Submodules | README | LICENSE

d-saoc-2021-04.md (4181B)


      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://forum.dlang.org/thread/mailman.437.1632358782.21945.digitalmars-d@puremagic.com),
     92 and discuss there.
     93 
     94 Read about the [previous week](../d-saoc-2021-03/) and [next
     95 week](../d-saoc-2021-05/).