diff options
author | Bob Wilson <bob.wilson@acm.org> | 2007-04-02 20:05:47 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@acm.org> | 2007-04-02 20:05:47 +0000 |
commit | 54c074261d5ee14540dccf5bd4832e8227aacc50 (patch) | |
tree | f041133dba511ea195cf673c9a13b2464c1f62c9 /gas/config/tc-xtensa.c | |
parent | 73f2ddd9d273e818d1483161589efbdceeb3dbb1 (diff) | |
download | binutils-redhat-54c074261d5ee14540dccf5bd4832e8227aacc50.tar.gz |
* config/tc-xtensa.c (xtensa_flush_pending_output): Check
outputting_stabs_line_debug.
Diffstat (limited to 'gas/config/tc-xtensa.c')
-rw-r--r-- | gas/config/tc-xtensa.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c index e8877ed714..ca0db1da50 100644 --- a/gas/config/tc-xtensa.c +++ b/gas/config/tc-xtensa.c @@ -5093,6 +5093,15 @@ xtensa_unrecognized_line (int ch) void xtensa_flush_pending_output (void) { + /* This line fixes a bug where automatically generated gstabs info + separates a function label from its entry instruction, ending up + with the literal position between the function label and the entry + instruction and crashing code. It only happens with --gstabs and + --text-section-literals, and when several other obscure relaxation + conditions are met. */ + if (outputting_stabs_line_debug) + return; + if (cur_vinsn.inside_bundle) as_bad (_("missing closing brace")); |