[HN Gopher] Improving GDB register model compatibility in LLDB
       ___________________________________________________________________
        
       Improving GDB register model compatibility in LLDB
        
       Author : fcambus
       Score  : 44 points
       Date   : 2021-09-23 08:28 UTC (2 days ago)
        
 (HTM) web link (www.moritz.systems)
 (TXT) w3m dump (www.moritz.systems)
        
       | userbinator wrote:
       | As someone who started in the DOS/Windows world, both GDB and
       | (especially) LLDB feel very awkward to use and those screenshots
       | show a few good examples of why: in DEBUG/WinDbg/cdb the command
       | to show the registers is simply 'r', and more than one register
       | is shown on a line so you don't have to scroll up and down to
       | read them all. No "0x" prefixes adding noise everywhere since the
       | default is hex, nor extraneous '*' needed when setting
       | breakpoints. A disassemble ('u') command that does what you
       | expect instead of complaining
       | (https://stackoverflow.com/questions/39016138/how-to-force-
       | gd...). LLDB is even more verbose and perplexing. I could go on
       | and on, but all these little things add up to make debugging with
       | them extremely irritating. There's a classic quote about GDB
       | being written to make you think twice about introducing bugs in
       | your code, and I think whoever said that has a point...
        
         | DSMan195276 wrote:
         | Personally, having started with gdb and recently having to use
         | WinDbg a few times, I've had the opposite experience :P I think
         | in the end some of the complaints you've mentioned may be
         | valid, but most of it is overshadowed by simply getting used to
         | using the tool, since they're all reasonably complicated to get
         | a handle on.
        
           | userbinator wrote:
           | I think WinDbg has a steeper learning curve; but needing to
           | repeatedly and quickly type in the same (long) commands is
           | not something that "getting used to" will ever overcome. All
           | that happens is you get increasingly irritated and ask
           | yourself "why couldn't they make it shorter" every time.
           | Another example is showing the state of all threads:
           | GDB: i th         LLDB: th i         WinDbg: ~
        
         | lanza wrote:
         | Being unfamiliar with a tool doesn't make it awkward.
        
           | saurik wrote:
           | Maybe the better word to have used there is "cumbersome"? The
           | thought process seems to be "I am used to something that was
           | designed for short commands and high information density at a
           | terminal; having this perspective of knowing what is
           | possible, gdb and lldb are both cumbersome... maybe people
           | who haven't really experienced something better wouldn't
           | realize that", which I think is totally fair.
        
             | amelius wrote:
             | Aren't these tools designed such that others can build a
             | GUI on top of them?
        
         | k4st wrote:
         | I've always assumed that the `0x` prefix is to make copy &
         | paste easier, i.e. so that you can copy the number, then
         | immediate use it in a a C- or C++-like expression.
        
       | jes wrote:
       | How well supported is lldb (1) from within GNU Emacs on macOS?
        
       ___________________________________________________________________
       (page generated 2021-09-25 23:01 UTC)