diff options
author | Cary Coutant <ccoutant@google.com> | 2015-04-09 11:52:21 -0700 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2015-04-09 11:53:01 -0700 |
commit | 437ddf0c4cb63fdb68c4bd1cc155144db344d0c5 (patch) | |
tree | 125d12fcbbc64bc9b76e629407a64c687ac12000 /gold/debug.h | |
parent | cd6faa73f8e3b888ee8b73a733382a5587aca202 (diff) | |
download | gdb-437ddf0c4cb63fdb68c4bd1cc155144db344d0c5.zip gdb-437ddf0c4cb63fdb68c4bd1cc155144db344d0c5.tar.gz gdb-437ddf0c4cb63fdb68c4bd1cc155144db344d0c5.tar.bz2 |
Improve ODR checking in gold.
gold/
* debug.h (DEBUG_LOCATION): New.
(DEBUG_ALL): Include DEBUG_LOCATION.
(debug_string_to_enum): Add DEBUG_LOCATION.
* dwarf_reader.cc (Sized_dwarf_line_info::read_lines): Fix debug
output to print correct context.
(Sized_dwarf_line_info::do_addr2line): Add debug output. Return
up to 4 more locations at the beginning of the function.
* symtab.cc (Symbol_table::detect_odr_violations): Get canonical
result before sorting list of line numbers.
* testsuite/debug_msg.sh: Allow range of line numbers for
canonical results on optimized code.
Diffstat (limited to 'gold/debug.h')
-rw-r--r-- | gold/debug.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gold/debug.h b/gold/debug.h index bca55f3..3fecbd8 100644 --- a/gold/debug.h +++ b/gold/debug.h @@ -38,9 +38,11 @@ const int DEBUG_SCRIPT = 0x2; const int DEBUG_FILES = 0x4; const int DEBUG_RELAXATION = 0x8; const int DEBUG_INCREMENTAL = 0x10; +const int DEBUG_LOCATION = 0x20; const int DEBUG_ALL = (DEBUG_TASK | DEBUG_SCRIPT | DEBUG_FILES - | DEBUG_RELAXATION | DEBUG_INCREMENTAL); + | DEBUG_RELAXATION | DEBUG_INCREMENTAL + | DEBUG_LOCATION); // Convert a debug string to the appropriate enum. inline int @@ -54,6 +56,7 @@ debug_string_to_enum(const char* arg) { "files", DEBUG_FILES }, { "relaxation", DEBUG_RELAXATION }, { "incremental", DEBUG_INCREMENTAL }, + { "location", DEBUG_LOCATION }, { "all", DEBUG_ALL } }; |