Commit 2e1ed1e3 by John David Anglin Committed by John David Anglin

* pa/t-pa, pa/t-pro, pa/som.h: Revert last patch.

From-SVN: r49811
parent 604c75b2
2002-02-16 John David Anglin <dave@hiauly1.hia.nrc.ca> 2002-02-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
* pa/t-pa, pa/t-pro, som.h: Revert last patch.
2002-02-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
* pa/t-pa (LIB2FUNCS_EXTRA): Don't build lib2funcs.asm. * pa/t-pa (LIB2FUNCS_EXTRA): Don't build lib2funcs.asm.
* pa/t-pro (LIB2FUNCS_EXTRA): Likewise. * pa/t-pro (LIB2FUNCS_EXTRA): Likewise.
* som.h (DO_GLOBAL_DTORS_BODY): Delete define. * som.h (DO_GLOBAL_DTORS_BODY): Delete define.
......
...@@ -351,6 +351,22 @@ readonly_data () \ ...@@ -351,6 +351,22 @@ readonly_data () \
#define ASM_FILE_END(FILE) output_deferred_plabels (FILE) #define ASM_FILE_END(FILE) output_deferred_plabels (FILE)
/* We want __gcc_plt_call to appear in every program built by
gcc, so we make a reference to it out of __main.
We use the asm statement to fool the optimizer into not
removing the dead (but important) initialization of
REFERENCE. */
#define DO_GLOBAL_DTORS_BODY \
do { \
extern void __gcc_plt_call (); \
void (*reference)() = &__gcc_plt_call; \
func_ptr *p; \
__asm__ ("" : : "r" (reference)); \
for (p = __DTOR_LIST__ + 1; *p; ) \
(*p++) (); \
} while (0)
/* The .align directive in the HP assembler allows up to a 32 alignment. */ /* The .align directive in the HP assembler allows up to a 32 alignment. */
#define MAX_OFILE_ALIGNMENT 32768 #define MAX_OFILE_ALIGNMENT 32768
......
T_ADAFLAGS=-mdisable-indexing T_ADAFLAGS=-mdisable-indexing
LIB2FUNCS_EXTRA=quadlib.c LIB2FUNCS_EXTRA=lib2funcs.asm quadlib.c
lib2funcs.asm: $(srcdir)/config/pa/lib2funcs.asm
rm -f lib2funcs.asm
cp $(srcdir)/config/pa/lib2funcs.asm .
quadlib.c: $(srcdir)/config/pa/quadlib.c quadlib.c: $(srcdir)/config/pa/quadlib.c
rm -f quadlib.c rm -f quadlib.c
......
T_ADAFLAGS=-mdisable-indexing T_ADAFLAGS=-mdisable-indexing
LIB2FUNCS_EXTRA=lib2funcs.asm
# We want fine grained libraries, so use the new code to build the # We want fine grained libraries, so use the new code to build the
# floating point emulation libraries. # floating point emulation libraries.
FPBIT = fp-bit.c FPBIT = fp-bit.c
...@@ -11,3 +13,7 @@ dp-bit.c: $(srcdir)/config/fp-bit.c ...@@ -11,3 +13,7 @@ dp-bit.c: $(srcdir)/config/fp-bit.c
fp-bit.c: $(srcdir)/config/fp-bit.c fp-bit.c: $(srcdir)/config/fp-bit.c
echo '#define FLOAT' > fp-bit.c echo '#define FLOAT' > fp-bit.c
cat $(srcdir)/config/fp-bit.c >> fp-bit.c cat $(srcdir)/config/fp-bit.c >> fp-bit.c
lib2funcs.asm: $(srcdir)/config/pa/lib2funcs.asm
rm -f lib2funcs.asm
cp $(srcdir)/config/pa/lib2funcs.asm .
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