aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>1995-05-15 21:41:11 -0600
committerJeff Law <law@gcc.gnu.org>1995-05-15 21:41:11 -0600
commit15ac8ba08683a5c483bbc9f56804ad0539f1f92e (patch)
tree06b2bc731dfdb806eada73cef858cca469e6680e /gcc
parent67cc5fec828262b53e84f18d8a30420587a68bbf (diff)
downloadgcc-15ac8ba08683a5c483bbc9f56804ad0539f1f92e.zip
gcc-15ac8ba08683a5c483bbc9f56804ad0539f1f92e.tar.gz
gcc-15ac8ba08683a5c483bbc9f56804ad0539f1f92e.tar.bz2
pa.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Make sure to encode section info for all libcalls.
* pa.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Make sure to encode section info for all libcalls. From-SVN: r9702
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/pa/pa.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h
index 0ae1c80..5c94311 100644
--- a/gcc/config/pa/pa.h
+++ b/gcc/config/pa/pa.h
@@ -1888,10 +1888,16 @@ readonly_data () \
/* The bogus HP assembler requires ALL external references to be
"imported", even library calls. They look a bit different, so
- here's this macro. */
+ here's this macro.
+
+ Also note not all libcall names are passed to ENCODE_SECTION_INFO
+ (__main for example). To make sure all libcall names have section
+ info recorded in them, we do it here. */
#define ASM_OUTPUT_EXTERNAL_LIBCALL(FILE, RTL) \
do { fputs ("\t.IMPORT ", FILE); \
+ if (!function_label_operand (RTL, VOIDmode)) \
+ hppa_encode_label (RTL); \
assemble_name (FILE, XSTR ((RTL), 0)); \
fputs (",CODE\n", FILE); \
} while (0)