summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000
diff options
context:
space:
mode:
authoramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2005-09-13 23:29:31 +0000
committeramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2005-09-13 23:29:31 +0000
commit5868ee880e43810190396f954d88e73d892fe51a (patch)
tree1f42cff0d0721132aea108e0a77ef163e565bf73 /gcc/config/rs6000
parentab4b7a8a92920d1c77e53e2a33bbee4a96fc0948 (diff)
downloadgcc-5868ee880e43810190396f954d88e73d892fe51a.tar.gz
* config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Treat function name
passed as NAME as if it were label at start of function code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104245 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000')
-rw-r--r--gcc/config/rs6000/linux64.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 31bf8ac86ed..1c4dc1f312a 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -494,10 +494,19 @@ while (0)
{ \
const char *s; \
dbxout_begin_stabn (BRAC); \
- assemble_name (FILE, NAME); \
- putc ('-', FILE); \
s = XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0); \
- rs6000_output_function_entry (FILE, s); \
+ /* dbxout_block passes this macro the function name as NAME, \
+ assuming that it is the function code start label. In our \
+ case, the function name is the OPD entry. dbxout_block is \
+ broken, hack around it here. */ \
+ if (NAME == s) \
+ putc ('0', FILE); \
+ else \
+ { \
+ assemble_name (FILE, NAME); \
+ putc ('-', FILE); \
+ rs6000_output_function_entry (FILE, s); \
+ } \
putc ('\n', FILE); \
} \
while (0)