Commit 7830ba7b by John David Anglin Committed by John David Anglin

pa.c (hppa_encode_label): Don't drop '*' from function labels.

	* pa.c (hppa_encode_label): Don't drop '*' from function labels.
	(pa_strip_name_encoding): Strip '@' and '*', in that order.
	* pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
	there is a '*' prefix in NAME.

From-SVN: r57664
parent 344b78b8
2002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
* pa.c (hppa_encode_label): Don't drop '*' from function labels.
(pa_strip_name_encoding): Strip '@' and '*', in that order.
* pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
there is a '*' prefix in NAME.
Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
* reload.c (push_reload): Handle subregs and secondary memory.
......
......@@ -6487,11 +6487,6 @@ hppa_encode_label (sym)
char *newstr, *p;
p = newstr = alloca (len + 1);
if (str[0] == '*')
{
str++;
len--;
}
*p++ = '@';
strcpy (p, str);
......@@ -6523,7 +6518,9 @@ static const char *
pa_strip_name_encoding (str)
const char *str;
{
return str + (*str == '*' || *str == '@');
str += (*str == '@');
str += (*str == '*');
return str;
}
int
......
......@@ -1688,7 +1688,16 @@ do { \
`assemble_name' uses this. */
#define ASM_OUTPUT_LABELREF(FILE,NAME) \
fprintf ((FILE), "%s", (NAME) + (FUNCTION_NAME_P (NAME) ? 1 : 0))
do { \
const char *xname = (NAME); \
if (FUNCTION_NAME_P (NAME)) \
xname += 1; \
if (xname[0] == '*') \
xname += 1; \
else \
fputs (user_label_prefix, FILE); \
fputs (xname, FILE); \
} while (0)
/* This is how to output an internal numbered label where
PREFIX is the class of label and NUM is the number within the class. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment