"AR_FLAGS=$(AR_FLAGS)" \
"CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \
-$(start-sanitize-chill)\
"CHILLFLAGS=$(CHILLFLAGS)" \
"CHILL=$(CHILL)" \
"CHILL_LIB=$(CHILL_LIB)" \
-$(end-sanitize-chill)\
"CXX=$(CXX)" \
"CXXFLAGS=$(CXXFLAGS)" \
"RANLIB=$(RANLIB)" \
fi; \
fi`
-$(start-sanitize-chill)
CHILLFLAGS = $(CFLAGS)
CHILL = gcc
CHILL_FOR_TARGET = ` \
fi`
CHILL_LIB = -lchill
-$(end-sanitize-chill)
-
# The use of $$(x_FOR_TARGET) reduces the command line length by not
# duplicating the lengthy definition.
TARGET_FLAGS_TO_PASS = \
'CC=$$(CC_FOR_TARGET)' \
"CC_FOR_TARGET=$(CC_FOR_TARGET)" \
"CFLAGS=$(CFLAGS)" \
-$(start-sanitize-chill)\
"CHILLFLAGS=$(CHILLFLAGS)" \
'CHILL=$$(CHILL_FOR_TARGET)' \
"CHILL_FOR_TARGET=$(CHILL_FOR_TARGET)" \
"CHILL_LIB=$(CHILL_LIB)" \
-$(end-sanitize-chill)\
'CXX=$$(CXX_FOR_TARGET)' \
"CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
"CXXFLAGS=$(CXXFLAGS)" \
< y.tab.c > ././c-exp.tab.c
-rm y.tab.c
-# start-sanitize-chill
# ch-exp.tab.c is generated in target dir from ch-exp.y if it doesn't exist
# in srcdir, then compiled in target dir to ch-exp.tab.o.
# Remove bogus decls for malloc/realloc/free which conflict with everything
-e 's/realloc/xrealloc/g' \
< y.tab.c > ././ch-exp.tab.c
-rm y.tab.c
-# end-sanitize-chill
# m2-exp.tab.c is generated in target dir from m2-exp.y if it doesn't exist
# in srcdir, then compiled in target dir to m2-exp.tab.o.
# will remove them.
MAKEOVERRIDES=
-$(start-sanitize-chill)
## This is ugly, but I don't want GNU make to put these variables in
## the environment. Older makes will see this as a set of targets
## with no dependencies and no actions.
unexport CHILLFLAGS CHILL_LIB CHILL_FOR_TARGET :
-$(end-sanitize-chill)
# This is the end of "Makefile.in". When built into "Makefile"
# by the configure script, two things are added below this point:
type_print(type,"",stream,0);
break;
#endif
-/* start-sanitize-chill */
#ifdef _LANG_chill
case language_chill:
error ("Missing Chill support in function c_typedef_print."); /*FIXME*/
#endif
-/* end-sanitize-chill */
default:
error("Language not supported.");
}
language_auto, /* Placeholder for automatic setting */
language_c, /* C */
language_cplus, /* C++ */
- /* start-sanitize-chill */
language_chill, /* Chill */
- /* end-sanitize-chill */
language_m2 /* Modula-2 */
};
extern int
inside_main_func PARAMS ((CORE_ADDR pc));
-/* start-sanitize-chill */
/* From ch-lang.c, for the moment. (FIXME) */
extern char *
chill_demangle PARAMS ((const char *));
-/* end-sanitize-chill */
/* From libiberty.a */
gdb_printchar PARAMS ((int, FILE *, int));
extern void
-fprint_symbol PARAMS ((FILE *, char *));
-
-extern void
-fputs_demangled PARAMS ((char *, FILE *, int, enum language));
+fprintf_symbol_filtered PARAMS ((FILE *, char *, enum language, int));
extern void
perror_with_name PARAMS ((char *));
#define LCC_PRODUCER "NCR C/C++"
#endif
-/* start-sanitize-chill */
#ifndef CHILL_PRODUCER
#define CHILL_PRODUCER "GNU Chill "
#endif
-/* end-sanitize-chill */
/* Flags to target_to_host() that tell whether or not the data object is
expected to be signed. Used, for example, when fetching a signed
case LANG_C_PLUS_PLUS:
cu_language = language_cplus;
break;
- /* start-sanitize-chill */
case LANG_CHILL:
cu_language = language_chill;
break;
- /* end-sanitize-chill */
case LANG_MODULA2:
cu_language = language_m2;
break;
processing_gcc_compilation =
STREQN (producer, GPLUS_PRODUCER, strlen (GPLUS_PRODUCER))
- /* start-sanitize-chill */
|| STREQN (producer, CHILL_PRODUCER, strlen (CHILL_PRODUCER))
- /* end-sanitize-chill */
|| STREQN (producer, GCC_PRODUCER, strlen (GCC_PRODUCER));
/* Select a demangling style if we can identify the producer and if
extern struct type *builtin_type_m2_real;
extern struct type *builtin_type_m2_bool;
-/* start-sanitize-chill */
/* Chill types */
extern struct type *builtin_type_chill_bool;
extern struct type *builtin_type_chill_long;
extern struct type *builtin_type_chill_ulong;
extern struct type *builtin_type_chill_real;
-/* end-sanitize-chill */
/* LONG_LONG is defined if the host has "long long". */
printf ("local or auto Automatic setting based on source file\n");
printf ("c Use the C language\n");
printf ("c++ Use the C++ language\n");
- /* start-sanitize-chill */
printf ("chill Use the Chill language\n");
- /* end-sanitize-chill */
printf ("modula-2 Use the Modula-2 language\n");
/* Restore the silly string. */
set_language(current_language->la_language);
not needed. */
return l1 > l2 ? VALUE_TYPE(v1) : VALUE_TYPE(v2);
break;
- /* start-sanitize-chill */
- case language_chill:
+ case language_chill:
error ("Missing Chill support in function binop_result_check.");/*FIXME*/
- /* end-sanitize-chill */
}
abort();
return (struct type *)0; /* For lint */
(TYPE_CODE(type) != TYPE_CODE_ENUM) ? 0 : 1;
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_INT ? 0 : 1;
- /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function integral_type."); /*FIXME*/
- /* end-sanitize-chill */
default:
error ("Language not supported.");
}
{
switch(current_language->la_language)
{
- /* start-sanitize-chill */
case language_chill:
- /* end-sanitize-chill */
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_CHAR ? 0 : 1;
{
switch(current_language->la_language)
{
- /* start-sanitize-chill */
case language_chill:
- /* end-sanitize-chill */
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_STRING ? 0 : 1;
{
switch(current_language->la_language)
{
- /* start-sanitize-chill */
case language_chill:
- /* end-sanitize-chill */
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_BOOL ? 0 : 1;
return (TYPE_CODE(type) == TYPE_CODE_STRUCT) ||
(TYPE_CODE(type) == TYPE_CODE_SET) ||
(TYPE_CODE(type) == TYPE_CODE_ARRAY);
- /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function structured_type."); /*FIXME*/
- /* end-sanitize-chill */
default:
return (0);
}
return 0; /* BOOLEAN with value FALSE */
break;
- /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function value_type."); /*FIXME*/
- /* end-sanitize-chill */
default:
error ("Language not supported.");
}
#endif
-/* start-sanitize-chill */
#ifdef _LANG_chill
case language_chill:
error ("Missing Chill support in function binop_type_check.");/*FIXME*/
#endif
-/* end-sanitize-chill */
}
}
/* #include "lang_def.h" */
#define _LANG_c
#define _LANG_m2
-/* start-sanitize-chill */
#define _LANG_chill
-/* end-sanitize-chill */
/* range_mode ==
range_mode_auto: range_check set automatically to default of language.
section_offsets = (*objfile -> sf -> sym_offsets) (objfile, addr);
objfile->section_offsets = section_offsets;
+ /* This is a hack. As far as I can tell, section offsets are not
+ target dependent. They are all set to addr with a couple of
+ exceptions. The exceptions are sysvr4 shared libraries, whose
+ offsets are kept in solib structures anyway and rs6000 xcoff
+ which handles shared libraries in a completely unique way.
+
+ Section offsets are built similarly, except that they are built
+ by adding addr in all cases because there is no clear mapping
+ from section_offsets into actual sections. Note that solib.c
+ has a different algorythm for finding section offsets.
+
+ These should probably all be collapsed into some target
+ independent form of shared library support. FIXME. */
+
+ if (addr)
+ {
+ struct obj_section *s;
+
+ for (s = objfile->sections; s < objfile->sections_end; ++s)
+ {
+ s->addr -= s->offset;
+ s->addr += addr;
+ s->endaddr -= s->offset;
+ s->endaddr += addr;
+ s->offset += addr;
+ }
+ }
+
(*objfile -> sf -> sym_read) (objfile, section_offsets, mainline);
/* Don't allow char * to have a typename (else would get caddr_t.) */
return language_c;
else if(STREQ(c,".cc") || STREQ(c,".C"))
return language_cplus;
- /* start-sanitize-chill */
else if(STREQ(c,".ch") || STREQ(c,".c186") || STREQ(c,".c286"))
return language_chill;
- /* end-sanitize-chill */
return language_unknown; /* default */
}
#endif /* !INLINE_ADD_PSYMBOL */
-/* Returns a section whose range includes PC or NULL if none found. */
-
-struct section_table *
-find_pc_section(pc)
- CORE_ADDR pc;
-{
- struct section_table *s;
-
- s = find_pc_section_from_targets(pc);
- if (s == NULL)
- s = find_pc_section_from_so_list(pc);
-
- return(s);
-}
-
\f
void
_initialize_symfile ()
{
char *demangled_name;
} cplus_specific;
- /* start-sanitize-chill */
/* For Chill */
struct chill_specific
{
char *demangled_name;
} chill_specific;
- /* end-sanitize-chill */
} lang_u;
} lang_specific;
{ \
SYMBOL_CPLUS_DEMANGLED_NAME (symbol) = NULL; \
} \
- /* start-sanitize-chill */ \
else if (SYMBOL_LANGUAGE (symbol) == language_chill) \
{ \
SYMBOL_CHILL_DEMANGLED_NAME (symbol) = NULL; \
} \
- /* end-sanitize-chill */ \
else \
{ \
memset (&(symbol)->ginfo.lang_specific.lang_u, 0, \
SYMBOL_CPLUS_DEMANGLED_NAME (symbol) = NULL; \
} \
} \
- /* start-sanitize-chill */ \
if (demangled == NULL \
&& (SYMBOL_LANGUAGE (symbol) == language_chill \
|| SYMBOL_LANGUAGE (symbol) == language_auto)) \
SYMBOL_CHILL_DEMANGLED_NAME (symbol) = NULL; \
} \
} \
- /* end-sanitize-chill */ \
if (SYMBOL_LANGUAGE (symbol) == language_auto) \
{ \
SYMBOL_LANGUAGE (symbol) = language_unknown; \
/* Macro that returns the demangled name for a symbol based on the language
for that symbol. If no demangled name exists, returns NULL. */
-#define SYMBOL_DEMANGLED_NAME(symbol) \
- (SYMBOL_LANGUAGE (symbol) == language_cplus \
- ? SYMBOL_CPLUS_DEMANGLED_NAME (symbol) \
- : NULL)
-
-/* start-sanitize-chill */
-
-#define SYMBOL_CHILL_DEMANGLED_NAME(symbol) \
- (symbol)->ginfo.lang_specific.lang_u.chill_specific.demangled_name
-
-/* Redefine SYMBOL_DEMANGLED_NAME. This is simplier than trying to
- devise a macro for which part of it can be cleanly sanitized away. */
-
-#undef SYMBOL_DEMANGLED_NAME
#define SYMBOL_DEMANGLED_NAME(symbol) \
(SYMBOL_LANGUAGE (symbol) == language_cplus \
? SYMBOL_CPLUS_DEMANGLED_NAME (symbol) \
? SYMBOL_CHILL_DEMANGLED_NAME (symbol) \
: NULL))
-/* end-sanitize-chill */
+#define SYMBOL_CHILL_DEMANGLED_NAME(symbol) \
+ (symbol)->ginfo.lang_specific.lang_u.chill_specific.demangled_name
/* Macro that returns the "natural source name" of a symbol. In C++ this is
the "demangled" form of the name if demangle is on and the "mangled" form
Do-first:
-if ( echo $* | grep keep\-chill > /dev/null ) ; then
- keep_these_too="gdb.t30 gdb.t31"
-fi
-
# All files listed between the "Things-to-keep:" line and the
# "Do-last:" line will be kept. All other files will be removed.
# Directories listed in this section will have their own Sanitize
gdb.t21
gdb.t22
gdb.t23
+gdb.t30
+gdb.t31
+
lib
# are executed as a /bin/sh shell script after everything else is
Do-last:
-echo Thawing away the \"chill\"...
-
-# Don't try to clean directories here, as the 'mv' command will fail.
-# Also, grep fails on NFS mounted directories.
-if ( echo $* | grep keep\-chill > /dev/null ) ; then
- for i in * ; do
- if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
- echo Keeping chill stuff in $i
- fi
- done
-else
- for i in * ; do
- if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
- echo Thawing the \"chill\" out of $i...
- cp $i new
- sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
- if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
- echo Caching $i in .Recover...
- mv $i .Recover
- fi
- mv new $i
- fi
- done
- echo Thawing the \"chill\" out of configure.in...
- cp configure.in new
- sed -e '
- s/gdb.t30//g
- s/gdb.t31//g
- ' < configure.in > new
- if [ -n "${safe}" -a ! -f .Recover/configure.in ] ; then
- echo Caching configure.in in .Recover...
- mv configure.in .Recover
- fi
- mv new configure.in
- echo Thawing the \"chill\" out of Makefile.in...
- cp Makefile.in new
- sed -e '
- /CHILL=/d
- /CHILLFLAGS=/d
- s/gdb.t30//g
- s/gdb.t31//g
- ' < Makefile.in > new
- if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
- echo Caching Makefile.in in .Recover...
- mv Makefile.in .Recover
- fi
- mv new Makefile.in
fi
# eof
Wed Mar 24 09:48:03 1993 Fred Fish (fnf@cygnus.com)
- **** start-sanitize-chill ****
* gdb.t31/gdbme.ch: Re-enable code that previously caused
compiler to coredump.
* gdb.t31/chillvars.exp: Re-enable tests that depend on that
code.
- **** end-sanitize-chill ****
Tue Mar 23 08:53:42 1993 Fred Fish (fnf@cygnus.com)
- **** start-sanitize-chill ****
* gdb.t31/gdbme.ch: Comment out code that causes chill compiler
coredump.
* gdb.t31/chillvars.exp: Comment out tests that depend on that
code.
- **** end-sanitize-chill ****
Sun Mar 21 17:56:47 1993 Rob Savoye (rob at darkstar.cygnus.com)
setting sevenbit-strings.
* gdb.t04/setvar.exp, gdb.t13/bitfields.exp: Make commands
to set sevenbit-strings consistent across tests.
- **** start-sanitize-chill ****
gdb.t30/chexp.exp, gdb.t31/chillvars.exp: Make commands to
set sevenbit-strings consistent across tests.
- **** end-sanitize-chill ****
->>>>>>> 1.16
Fri Mar 12 08:47:20 1993 Fred Fish (fnf@cygnus.com)
* gdb.t21/demangle.exp (proc demangle): Adjust quotes in an
Wed Feb 24 08:03:38 1993 Fred Fish (fnf@cygnus.com)
- **** start-sanitize-chill ****
* gdb.t31/chillvars.exp (test_structs): New proc to test printing
of Chill STRUCT types and STRUCT values.
* gdb.t31/chillvars.exp (test_strings): Expect "CHAR" now, rather
* gdb.t31/in-gdbme.ch (simple_struct, nested_struct, struct1,
struct2): New struct definitions and initializations to test
simple Chill STRUCT types.
- **** end-sanitize-chill ****
Tue Feb 23 11:55:06 1993 Fred Fish (fnf@cygnus.com)
* gdb.t21/demangle.exp: Add many new test strings to demangle,
and fix a whole bunch that had incorrect expected output but were
passing anyway because of the bug in "proc demangle".
- **** start-sanitize-chill ****
* gdb.t31/chillvars.exp: Remove setup_xfail for printing string
type.
* gdb.t31/in-gdbme.ch: Uncomment string4, now compiles.
- **** end-sanitize-chill ****
Mon Feb 22 07:54:03 1993 Mike Werner (mtw@poseidon.cygnus.com)
INSTALL_DATA = $(INSTALL)
CFLAGS = -g
-$(start-sanitize-chill)
CHILLFLAGS = $(CFLAGS)
CHILL_LIB = -lchill
-$(end-sanitize-chill)
-CXXFLAGS = -g -O
+CXXFLAGS = -g
LINK= ln -s
SUBDIRS=
fi; \
fi`
-$(start-sanitize-chill)
CHILL = ` \
if [ -f $${rootme}../../gcc/Makefile ] ; then \
echo $${rootme}../../gcc/xgcc -B$${rootme}../../gcc/ -L$${rootme}../../chillrt/; \
t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
fi; \
fi`
-$(end-sanitize-chill)
CXX = ` \
if [ -f $${rootme}../../gcc/Makefile ] ; then \
"CXXFLAGS=$(CXXFLAGS)" \
"CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \
- $(start-sanitize-chill)\
"CHILLFLAGS=$(CHILLFLAGS)" \
"CHILL=$(CHILL)" \
"CHILL_LIB=$(CHILL_LIB)" \
- $(end-sanitize-chill)\
"INSTALL=$(INSTALL)" \
"INSTALL_DATA=$(INSTALL_DATA)" \
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
dvi:
install:
- -parent=`echo $(datadir)|sed -e 's@/[^/]*$$@@'`; \
- if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi
- -if [ -d $(datadir) ] ; then true ; else mkdir $(datadir) ; fi
- -parent=`echo $(targetdir)|sed -e 's@/[^/]*$$@@'`; \
- if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi
- -if [ -d $(targetdir) ] ; then true ; else mkdir $(targetdir) ; fi
- -for file in ./lib/*.exp; \
- do \
- $(INSTALL_DATA) $$file $(datadir) ; \
- done
- -for file in ./*-init.exp; \
- do \
- $(INSTALL_DATA) $$file $(targetdir) ; \
- done
uninstall: force
-# -rm -f $(datadir)/*.exp
- -rm -fr $(targetdir)
site.exp: ./config.status
@echo "Making a new config file..."
@rm -f ./tmp1 ./tmp0
installcheck:
-check: all site.exp
- $(RUNTEST) $(RUNTESTFLAGS) --tool gdb GDB=$(GDB)
+check: all
+ $(RUNTEST) $(RUNTESTFLAGS) --tool gdb GDB=$(GDB) --srcdir $(srcdir)
subdir_do: force
@for i in $(DODIRS); do \
Do-first:
-if ( echo $* | grep keep\-chill > /dev/null ) ; then
- keep_these_too=""
-fi
-
# All files listed between the "Things-to-keep:" line and the
# "Do-last:" line will be kept. All other files will be removed.
# Directories listed in this section will have their own Sanitize
# done.
Do-last:
-echo Thawing away the \"chill\"...
-
-# Don't try to clean directories here, as the 'mv' command will fail.
-# Also, grep fails on NFS mounted directories.
-if ( echo $* | grep keep\-chill > /dev/null ) ; then
- for i in * ; do
- if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
- echo Keeping chill stuff in $i
- fi
- done
-else
- for i in * ; do
- if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
- echo Thawing the \"chill\" out of $i...
- cp $i new
- sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
- if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
- echo Caching $i in .Recover...
- mv $i .Recover
- fi
- mv new $i
- fi
- done
-fi
# eof
-CVS
-mips-gdb.exp
-nind-gdb.exp
-udi-gdb.exp
-unix-gdb.exp
-vx-gdb.exp
case language_cplus:
demangled = cplus_demangle (name, arg_mode);
break;
- /* start-sanitize-chill */
case language_chill:
demangled = chill_demangle (name);
break;
- /* end-sanitize-chill */
default:
demangled = NULL;
break;