| Index: gcc/gcc/config/rs6000/aix.h
|
| diff --git a/gcc/gcc/config/rs6000/aix.h b/gcc/gcc/config/rs6000/aix.h
|
| index 4e736ce3fc231589382dea907339c6bbc932d9a9..ec7add4c2e64242bd5a1a46f77107a29451a2324 100644
|
| --- a/gcc/gcc/config/rs6000/aix.h
|
| +++ b/gcc/gcc/config/rs6000/aix.h
|
| @@ -1,6 +1,6 @@
|
| /* Definitions of target machine for GNU compiler,
|
| for IBM RS/6000 POWER running AIX.
|
| - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
|
| + Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010
|
| Free Software Foundation, Inc.
|
|
|
| This file is part of GCC.
|
| @@ -43,6 +43,14 @@
|
| collect has a chance to see them, so scan the object files directly. */
|
| #define COLLECT_EXPORT_LIST
|
|
|
| +#if HAVE_AS_REF
|
| +/* Issue assembly directives that create a reference to the given DWARF table
|
| + identifier label from the current function section. This is defined to
|
| + ensure we drag frame frame tables associated with needed function bodies in
|
| + a link with garbage collection activated. */
|
| +#define ASM_OUTPUT_DWARF_TABLE_REF rs6000_aix_asm_output_dwarf_table_ref
|
| +#endif
|
| +
|
| /* Handle #pragma weak and #pragma pack. */
|
| #define HANDLE_SYSV_PRAGMA 1
|
|
|
| @@ -120,18 +128,10 @@
|
| /* #define ASM_SPEC "-u %(asm_cpu)" */
|
|
|
| /* Default location of syscalls.exp under AIX */
|
| -#ifndef CROSS_DIRECTORY_STRUCTURE
|
| -#define LINK_SYSCALLS_SPEC "-bI:/lib/syscalls.exp"
|
| -#else
|
| -#define LINK_SYSCALLS_SPEC ""
|
| -#endif
|
| +#define LINK_SYSCALLS_SPEC "-bI:%R/lib/syscalls.exp"
|
|
|
| /* Default location of libg.exp under AIX */
|
| -#ifndef CROSS_DIRECTORY_STRUCTURE
|
| -#define LINK_LIBG_SPEC "-bexport:/usr/lib/libg.exp"
|
| -#else
|
| -#define LINK_LIBG_SPEC ""
|
| -#endif
|
| +#define LINK_LIBG_SPEC "-bexport:%R/usr/lib/libg.exp"
|
|
|
| /* Define the options for the binder: Start text at 512, align all segments
|
| to 512 bytes, and warn if there is text relocation.
|
| @@ -152,11 +152,11 @@
|
| %{!shared:%{g*: %(link_libg) }} %{shared:-bM:SRE}"
|
|
|
| /* Profiled library versions are used by linking with special directories. */
|
| -#define LIB_SPEC "%{pg:-L/lib/profiled -L/usr/lib/profiled}\
|
| -%{p:-L/lib/profiled -L/usr/lib/profiled} %{!shared:%{g*:-lg}} -lc"
|
| +#define LIB_SPEC "%{pg:-L%R/lib/profiled -L%R/usr/lib/profiled}\
|
| +%{p:-L%R/lib/profiled -L%R/usr/lib/profiled} %{!shared:%{g*:-lg}} -lc"
|
|
|
| /* Static linking with shared libstdc++ requires libsupc++ as well. */
|
| -#define LIBSTDCXX_STATIC "-lstdc++ -lsupc++"
|
| +#define LIBSTDCXX_STATIC "-lsupc++"
|
|
|
| /* This now supports a natural alignment mode. */
|
| /* AIX word-aligns FP doubles but doubleword-aligns 64-bit ints. */
|
|
|