X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfig%2Fpa%2Fpa-linux.h;h=5b3c7045165e8443097aa53894cfc915e3e3e260;hb=85eccb17c46d262a96982079e8f04b38df1877cb;hp=86dfabc77b79d8485c2262813c3118a24becd23a;hpb=5b6d07c4c4862c60dca5affaeaa4def15139b295;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/config/pa/pa-linux.h b/gcc/config/pa/pa-linux.h index 86dfabc77b7..5b3c7045165 100644 --- a/gcc/config/pa/pa-linux.h +++ b/gcc/config/pa/pa-linux.h @@ -18,10 +18,6 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* Use DWARF2 debugging info and unwind. */ -#undef PREFERRED_DEBUGGING_TYPE -#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG -#define DWARF2_ASM_LINE_DEBUG_INFO 1 /* A C expression whose value is RTL representing the location of the incoming return address at the beginning of any function, before the @@ -95,10 +91,6 @@ Boston, MA 02111-1307, USA. */ %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ %{static:-static}}" -/* Sibcalls, stubs, and elf sections don't play well. */ -#undef FUNCTION_OK_FOR_SIBCALL -#define FUNCTION_OK_FOR_SIBCALL(x) 0 - /* glibc's profiling functions don't need gcc to allocate counters. */ #define NO_PROFILE_COUNTERS 1 @@ -139,18 +131,6 @@ Boston, MA 02111-1307, USA. */ } \ while (0) -/* Output a definition */ -#define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \ - do \ - { \ - fprintf ((FILE), "\t%s\t", SET_ASM_OP); \ - assemble_name (FILE, LABEL1); \ - fprintf (FILE, ","); \ - assemble_name (FILE, LABEL2); \ - fprintf (FILE, "\n"); \ - } \ - while (0) - /* We want local labels to start with period if made with asm_fprintf. */ #undef LOCAL_LABEL_PREFIX #define LOCAL_LABEL_PREFIX "." @@ -200,6 +180,19 @@ Boston, MA 02111-1307, USA. */ } \ while (0) +/* As well as globalizing the label, we need to encode the label + to ensure a plabel is generated in an indirect call. */ + +#undef ASM_OUTPUT_EXTERNAL_LIBCALL +#define ASM_OUTPUT_EXTERNAL_LIBCALL(FILE, FUN) \ + do \ + { \ + if (!FUNCTION_NAME_P (XSTR (FUN, 0))) \ + hppa_encode_label (FUN); \ + (*targetm.asm_out.globalize_label) (FILE, XSTR (FUN, 0)); \ + } \ + while (0) + /* Linux always uses gas. */ #undef TARGET_GAS #define TARGET_GAS 1