llvm-project/lldb
Jason Molenda a18f7071c2 A messy bit of cleanup: Move towards more descriptive names
for eh_frame and stabs register numberings.  This is not
complete but it's a step in the right direction.  It's almost
entirely mechanical.

lldb informally uses "gcc register numbering" to mean eh_frame.
Why?  Probably because there's a notorious bug with gcc on i386
darwin where the register numbers in eh_frame were incorrect.
In all other cases, eh_frame register numbering is identical to
dwarf.

lldb informally uses "gdb register numbering" to mean stabs.
There are no official definitions of stabs register numbers
for different architectures, so the implementations of gdb
and gcc are the de facto reference source.

There were some incorrect uses of these register number types
in lldb already.  I fixed the ones that I saw as I made
this change.

This commit changes all references to "gcc" and "gdb" register
numbers in lldb to "eh_frame" and "stabs" to make it clear 
what is actually being represented.

lldb cannot parse the stabs debug format, and given that no
one is using stabs any more, it is unlikely that it ever will.
A more comprehensive cleanup would remove the stabs register
numbers altogether - it's unnecessary cruft / complication to
all of our register structures.

In ProcessGDBRemote, when we get register definitions from
the gdb-remote stub, we expect to see "gcc:" (qRegisterInfo)
or "gcc_regnum" (qXfer:features:read: packet to get xml payload).
This patch changes ProcessGDBRemote to also accept "ehframe:"
and "ehframe_regnum" from these remotes.

I did not change GDBRemoteCommunicationServerLLGS or debugserver
to send these new packets.  I don't know what kind of interoperability
constraints we might be working under.  At some point in the future
we should transition to using the more descriptive names.

Throughout lldb we're still using enum names like "gcc_r0" and "gdb_r0",
for eh_frame and stabs register numberings.  These should be cleaned
up eventually too.

The sources link cleanly on macosx native with xcode build.  I
don't think we'll see problems on other platforms but please let
me know if I broke anyone.

llvm-svn: 245141
2015-08-15 01:21:01 +00:00
..
cmake Use lowercase for local cmake variables. 2015-08-07 18:54:06 +00:00
docs Have debugserver send the OS version string plus 2015-08-12 03:27:33 +00:00
examples Fix process_events.py to auto continue the process if we attached so the process doesn't just sit there suspended. 2015-08-12 20:04:01 +00:00
include A messy bit of cleanup: Move towards more descriptive names 2015-08-15 01:21:01 +00:00
lib Bug 24332 - Fix the build of lldb under GNU/Linux when using autotools 2015-08-05 12:46:53 +00:00
lit Create a check-lldb-unit target to run unit tests. 2015-03-13 20:55:07 +00:00
lldb.xcodeproj A messy bit of cleanup: Move towards more descriptive names 2015-08-15 01:21:01 +00:00
lldb.xcworkspace Working on getting the OSX build green 2015-05-12 02:20:27 +00:00
resources Bump the version # in the xcode proj file from major number 340 to 350. 2015-08-04 03:14:49 +00:00
scripts First part of an attempt to indicate to the user when they are 2015-07-29 00:42:47 +00:00
source A messy bit of cleanup: Move towards more descriptive names 2015-08-15 01:21:01 +00:00
test Enable settings test for i686 as well as i386. 2015-08-14 23:29:32 +00:00
tools Add missing newline at EOF. 2015-08-13 02:44:40 +00:00
unittests Convert the ScriptInterpreter system to a plugin-based one. 2015-07-30 20:28:07 +00:00
utils LUI: Fix some issues causing crashes in the source view 2013-10-23 01:18:21 +00:00
www Update to new lists.llvm.org 2015-08-05 04:02:43 +00:00
.arcconfig Update .arcconfig to point to reviews.llvm.org 2014-05-20 21:24:59 +00:00
.clang-format Update build instructions / coding conventions. 2015-03-10 23:22:25 +00:00
.gitignore Fix .gitignore to ignore symlinks. 2015-03-31 00:03:00 +00:00
CMakeLists.txt Standalone cmake build improvements (bug #23889) 2015-07-17 15:50:48 +00:00
CODE_OWNERS.txt Convert CRLF to LF in CODE_OWNERS.txt 2015-03-23 14:00:54 +00:00
INSTALL.txt Revert the patch to Test Commit Access 2015-07-06 11:26:51 +00:00
LICENSE.TXT
Makefile Test commit 2015-07-22 08:41:18 +00:00