Commit f24b26ed by Jeffrey A Law Committed by Jeff Law

h8300.c (h8300_encode_label): Use '&' for tiny data items.

        * h8300.c (h8300_encode_label): Use '&' for tiny data items.
        * h8300.h (TINY_DATA_NAME_P): Likewise.
        (STRIP_NAME_ENCODING): Handle '&'.

From-SVN: r21892
parent 1df7c0ee
Thu Aug 20 19:43:44 1998 Jeffrey A Law (law@cygnus.com)
* h8300.c (h8300_encode_label): Use '&' for tiny data items.
* h8300.h (TINY_DATA_NAME_P): Likewise.
(STRIP_NAME_ENCODING): Handle '&'.
* mn10200.h (REG_OK_FOR_INDEX_P): Do not check the mode of the
register (it could be accessed via an outer SUBREG).
(REG_OK_FOR_BASE_P): Likewwise.
......
......@@ -2996,7 +2996,7 @@ h8300_encode_label (decl)
newstr = obstack_alloc (saveable_obstack, len + 2);
strcpy (newstr + 1, str);
*newstr = '*';
*newstr = '&';
XSTR (XEXP (DECL_RTL (decl), 0), 0) = newstr;
}
......
......@@ -1117,7 +1117,7 @@ readonly_data() \
} \
}
#define TINY_DATA_NAME_P(NAME) (*(NAME) == '*')
#define TINY_DATA_NAME_P(NAME) (*(NAME) == '&')
/* If we are referencing a function that is supposed to be called
through the function vector, the SYMBOL_REF_FLAG in the rtl
......@@ -1138,7 +1138,7 @@ readonly_data() \
/* Store the user-specified part of SYMBOL_NAME in VAR.
This is sort of inverse to ENCODE_SECTION_INFO. */
#define STRIP_NAME_ENCODING(VAR,SYMBOL_NAME) \
(VAR) = (SYMBOL_NAME) + ((SYMBOL_NAME)[0] == '*' || (SYMBOL_NAME)[0] == '@');
(VAR) = (SYMBOL_NAME) + ((SYMBOL_NAME)[0] == '*' || (SYMBOL_NAME)[0] == '@' || SYMBOL_NAME[0] == '&')
/* How to refer to registers in assembler output.
This sequence is indexed by compiler's hard-register-number (see above). */
......
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