This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Ada] powerpc, HAVE_save_stack_nonlocal and ada/misc.c
Commited. Tested by native i686-linux bootstrap plus cross to
powerpc-rtems (build of libgcc failed later on cross assembler
-mrelocatable complaints probably due with my cross setup unrelated to
this patch).
--
Laurent Guerby <guerby@acm.org>
2001-12-01 Graham Stott <grahams@redhat.com>
* Makefile.in (misc.o): Add missing $(srcdir) prefix
and add optabs.h dependency.
* misc.c: Include optabs.h
(gnat_tree_code_type): Make static and const.
(gnat_tree_code_length): Likewise.
(gnat_tree_code_name): Likewise.
(update_setjmp_buf): Obtain operands mode from insn_data.
Index: Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/Makefile.in,v
retrieving revision 1.11
diff -c -3 -p -r1.11 Makefile.in
*** Makefile.in 2001/11/27 16:17:56 1.11
--- Makefile.in 2001/12/01 02:02:16
*************** decl.o : decl.c $(CONFIG_H) $(TREE_H) $(
*** 2585,2593 ****
misc.o : misc.c $(CONFIG_H) $(TREE_H) $(RTL_H) $(srcdir)/../expr.h \
../insn-codes.h ../insn-flags.h ../insn-config.h $(srcdir)/../recog.h \
$(srcdir)/../flags.h $(srcdir)/../diagnostic.h $(srcdir)/../output.h \
! $(srcdir)/../except.h ../tm_p.h ../langhooks.h ada.h types.h atree.h \
! nlists.h elists.h sinfo.h einfo.h namet.h stringt.h uintp.h fe.h \
! $(ADA_TREE_H) gigi.h ../langhooks-def.h
targtyps.o : targtyps.c $(CONFIG_H) ada.h types.h atree.h nlists.h elists.h \
uintp.h sinfo.h einfo.h namet.h snames.h stringt.h urealp.h fe.h \
--- 2585,2593 ----
misc.o : misc.c $(CONFIG_H) $(TREE_H) $(RTL_H) $(srcdir)/../expr.h \
../insn-codes.h ../insn-flags.h ../insn-config.h $(srcdir)/../recog.h \
$(srcdir)/../flags.h $(srcdir)/../diagnostic.h $(srcdir)/../output.h \
! $(srcdir)/../except.h ../tm_p.h $(srcdir)/../langhooks.h ada.h types.h \
! atree.h nlists.h elists.h sinfo.h einfo.h namet.h stringt.h uintp.h fe.h \
! $(ADA_TREE_H) gigi.h $(srcdir)/../langhooks-def.h $(srcdir)/../optabs.h
targtyps.o : targtyps.c $(CONFIG_H) ada.h types.h atree.h nlists.h elists.h \
uintp.h sinfo.h einfo.h namet.h snames.h stringt.h urealp.h fe.h \
Index: misc.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/misc.c,v
retrieving revision 1.14
diff -c -3 -p -r1.14 misc.c
*** misc.c 2001/11/28 19:49:00 1.14
--- misc.c 2001/12/01 02:02:30
***************
*** 47,52 ****
--- 47,53 ----
#include "flags.h"
#include "insn-flags.h"
#include "insn-config.h"
+ #include "optabs.h"
#include "recog.h"
#include "toplev.h"
#include "output.h"
*************** extern char **save_argv;
*** 81,87 ****
#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE,
! char gnat_tree_code_type[] = {
'x',
#include "ada-tree.def"
};
--- 82,88 ----
#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE,
! static char const gnat_tree_code_type[] = {
'x',
#include "ada-tree.def"
};
*************** char gnat_tree_code_type[] = {
*** 93,99 ****
#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) LENGTH,
! int gnat_tree_code_length[] = {
0,
#include "ada-tree.def"
};
--- 94,100 ----
#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) LENGTH,
! static int const gnat_tree_code_length[] = {
0,
#include "ada-tree.def"
};
*************** int gnat_tree_code_length[] = {
*** 103,109 ****
Used for printing out the tree and error messages. */
#define DEFTREECODE(SYM, NAME, TYPE, LEN) NAME,
! const char *gnat_tree_code_name[] = {
"@@dummy",
#include "ada-tree.def"
};
--- 104,110 ----
Used for printing out the tree and error messages. */
#define DEFTREECODE(SYM, NAME, TYPE, LEN) NAME,
! static const char *gnat_tree_code_name[] = {
"@@dummy",
#include "ada-tree.def"
};
*************** update_setjmp_buf (buf)
*** 743,750 ****
#ifdef HAVE_save_stack_nonlocal
if (HAVE_save_stack_nonlocal)
! sa_mode = insn_operand_mode[(int) CODE_FOR_save_stack_nonlocal][0];
#endif
#ifdef STACK_SAVEAREA_MODE
sa_mode = STACK_SAVEAREA_MODE (SAVE_NONLOCAL);
#endif
--- 744,752 ----
#ifdef HAVE_save_stack_nonlocal
if (HAVE_save_stack_nonlocal)
! sa_mode = insn_data [(int) CODE_FOR_save_stack_nonlocal].operand[0].mode;
#endif
+
#ifdef STACK_SAVEAREA_MODE
sa_mode = STACK_SAVEAREA_MODE (SAVE_NONLOCAL);
#endif