From 33b60d58316e0ce994c009e1a9bede277538b69e Mon Sep 17 00:00:00 2001 From: Luis Machado Date: Mon, 19 Aug 2013 16:54:11 +0000 Subject: [PATCH] gdb/ * Makefile.in (SFILES): Remove common/target-common.c and add target/waitstatus.c. (HFILES_NO_SRCDIR): Remove common/target-common.h and add target/resume.h, target/wait.h and target/waitstatus.h. (COMMON_OBS): Remove target-common.o and add waitstatus.o. (target-common.o): Remove. (waitstatus.o): New target object file. * common/target-common.c: Move contents to target/waitstatus.c and remove. * common/target-common.h: Move contents to other files and remove. (enum resume_kind: Move to target/resume.h. (TARGET_WNOHANG): Move to target/wait.h. (enum target_waitkind): Move to target/waitstatus.h. (struct target_waitstatus): Likewise. * target.h: Do not include target-common.h and include target/resume.h, target/wait.h and target/waitstatus.h. * target/resume.h: New file. * target/wait.h: New file. * target/waitstatus.h: New file. * target/waitstatus.c: New file. gdb/gdbserver/ * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../. (SFILES): Remove $(srcdir)/common/target-common.c and add $(srcdir)/target/waitstatus.c. (OBS): Remove target-common.o and add waitstatus.o. (server_h): Remove $(srcdir)/../common/target-common.h and add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h and $(srcdir)/../target/waitstatus.h. (target-common.o): Remove. (waitstatus.o): New target object file. * target.h: Do not include target-common.h and include target/resume.h, target/wait.h and target/waitstatus.h. --- gdb/ChangeLog | 26 +++++++++++ gdb/Makefile.in | 21 ++++++--- gdb/gdbserver/ChangeLog | 15 +++++++ gdb/gdbserver/Makefile.in | 12 ++--- gdb/gdbserver/target.h | 4 +- gdb/target.h | 4 +- gdb/target/resume.h | 37 +++++++++++++++ gdb/target/wait.h | 30 +++++++++++++ .../target-common.c => target/waitstatus.c} | 10 +---- .../target-common.h => target/waitstatus.h} | 45 +++++-------------- 10 files changed, 148 insertions(+), 56 deletions(-) create mode 100644 gdb/target/resume.h create mode 100644 gdb/target/wait.h rename gdb/{common/target-common.c => target/waitstatus.c} (90%) rename gdb/{common/target-common.h => target/waitstatus.h} (79%) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ef51a9f923..06e25dafb7 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,29 @@ +2013-08-19 Luis Machado + + * Makefile.in (SFILES): Remove common/target-common.c and + add target/waitstatus.c. + (HFILES_NO_SRCDIR): Remove common/target-common.h and add + target/resume.h, target/wait.h and target/waitstatus.h. + (COMMON_OBS): Remove target-common.o and add + waitstatus.o. + (target-common.o): Remove. + (waitstatus.o): New target object file. + * common/target-common.c: Move contents to + target/waitstatus.c and remove. + * common/target-common.h: Move contents to other files and + remove. + (enum resume_kind: Move to target/resume.h. + (TARGET_WNOHANG): Move to target/wait.h. + (enum target_waitkind): Move to target/waitstatus.h. + (struct target_waitstatus): Likewise. + * target.h: Do not include target-common.h and + include target/resume.h, target/wait.h and + target/waitstatus.h. + * target/resume.h: New file. + * target/wait.h: New file. + * target/waitstatus.h: New file. + * target/waitstatus.c: New file. + 2013-08-19 Pedro Alves * linux-nat.c (linux_test_for_tracefork) diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 917194007e..45cddafa3c 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -775,7 +775,7 @@ SFILES = ada-exp.y ada-lang.c ada-typeprint.c ada-valprint.c ada-tasks.c \ common/gdb_vecs.c common/common-utils.c common/xml-utils.c \ common/ptid.c common/buffer.c gdb-dlfcn.c common/agent.c \ common/format.c common/filestuff.c btrace.c record-btrace.c ctf.c \ - common/target-common.c + target/waitstatus.c LINTFILES = $(SFILES) $(YYFILES) $(CONFIG_SRCS) init.c @@ -854,7 +854,8 @@ common/common-utils.h common/xml-utils.h common/buffer.h common/ptid.h \ common/format.h common/host-defs.h utils.h common/queue.h common/gdb_string.h \ common/linux-osdata.h gdb-dlfcn.h auto-load.h probe.h stap-probe.h \ gdb_bfd.h sparc-ravenscar-thread.h ppc-ravenscar-thread.h common/linux-btrace.h \ -ctf.h common/i386-cpuid.h common/i386-gcc-cpuid.h common/target-common.h +ctf.h common/i386-cpuid.h common/i386-gcc-cpuid.h target/resume.h \ +target/wait.h target/waitstatus.h # Header files that already have srcdir in them, or which are in objdir. @@ -948,7 +949,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $(YYOBJ) \ inferior.o osdata.o gdb_usleep.o record.o record-full.o gcore.o \ gdb_vecs.o jit.o progspace.o skip.o probe.o \ common-utils.o buffer.o ptid.o gdb-dlfcn.o common-agent.o \ - format.o registry.o btrace.o record-btrace.o target-common.o + format.o registry.o btrace.o record-btrace.o waitstatus.o TSOBS = inflow.o @@ -2022,14 +2023,20 @@ linux-btrace.o: ${srcdir}/common/linux-btrace.c $(COMPILE) $(srcdir)/common/linux-btrace.c $(POSTCOMPILE) -target-common.o: ${srcdir}/common/target-common.c - $(COMPILE) $(srcdir)/common/target-common.c - $(POSTCOMPILE) - mips-linux-watch.o: ${srcdir}/common/mips-linux-watch.c $(COMPILE) $(srcdir)/common/mips-linux-watch.c $(POSTCOMPILE) +# +# gdb/target/ dependencies +# +# Need to explicitly specify the compile rule as make will do nothing +# or try to compile the object file into the sub-directory. + +waitstatus.o: ${srcdir}/target/waitstatus.c + $(COMPILE) $(srcdir)/target/waitstatus.c + $(POSTCOMPILE) + # # gdb/tui/ dependencies # diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 375eadaebc..93fdb87a41 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,18 @@ +2013-08-19 Luis Machado + + * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../. + (SFILES): Remove $(srcdir)/common/target-common.c and + add $(srcdir)/target/waitstatus.c. + (OBS): Remove target-common.o and add waitstatus.o. + (server_h): Remove $(srcdir)/../common/target-common.h and + add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h + and $(srcdir)/../target/waitstatus.h. + (target-common.o): Remove. + (waitstatus.o): New target object file. + * target.h: Do not include target-common.h and + include target/resume.h, target/wait.h and + target/waitstatus.h. + 2013-08-13 Luis Machado * linux-arm-low.c: Rename all occurrences of PTRACE_ARG3_TYPE diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in index e541497938..2cdbf47bff 100644 --- a/gdb/gdbserver/Makefile.in +++ b/gdb/gdbserver/Makefile.in @@ -101,7 +101,7 @@ GNULIB_H = $(GNULIB_BUILDDIR)/import/string.h @GNULIB_STDINT_H@ # -I${srcdir} for our headers. # -I$(srcdir)/../regformats for regdef.h. INCLUDE_CFLAGS = -I. -I${srcdir} -I$(srcdir)/../common \ - -I$(srcdir)/../regformats -I$(INCLUDE_DIR) \ + -I$(srcdir)/../regformats -I$(srcdir)/../ -I$(INCLUDE_DIR) \ $(INCGNU) # M{H,T}_CFLAGS, if defined, has host- and target-dependent CFLAGS @@ -157,7 +157,7 @@ SFILES= $(srcdir)/gdbreplay.c $(srcdir)/inferiors.c $(srcdir)/dll.c \ $(srcdir)/common/common-utils.c $(srcdir)/common/xml-utils.c \ $(srcdir)/common/linux-osdata.c $(srcdir)/common/ptid.c \ $(srcdir)/common/buffer.c $(srcdir)/common/linux-btrace.c \ - $(srcdir)/common/filestuff.c $(srcdir)/common/target-common.c \ + $(srcdir)/common/filestuff.c $(srcdir)/target/waitstatus.c \ $(srcdir)/common/mips-linux-watch.c DEPFILES = @GDBSERVER_DEPFILES@ @@ -168,7 +168,7 @@ SOURCES = $(SFILES) TAGFILES = $(SOURCES) ${HFILES} ${ALLPARAM} ${POSSLIBS} OBS = agent.o ax.o inferiors.o regcache.o remote-utils.o server.o signals.o \ - target.o target-common.o utils.o version.o vec.o gdb_vecs.o \ + target.o waitstatus.o utils.o version.o vec.o gdb_vecs.o \ mem-break.o hostio.o event-loop.o tracepoint.o xml-utils.o \ common-utils.o ptid.o buffer.o format.o filestuff.o dll.o notif.o \ tdesc.o $(XML_BUILTIN) $(DEPFILES) $(LIBOBJS) @@ -437,7 +437,9 @@ server_h = $(srcdir)/server.h $(regcache_h) $(srcdir)/target.h \ $(srcdir)/../common/buffer.h \ $(srcdir)/../common/gdb_assert.h \ $(srcdir)/../common/gdb_locale.h \ - $(srcdir)/../common/target-common.h \ + $(srcdir)/../target/resume.h \ + $(srcdir)/../target/wait.h \ + $(srcdir)/../target/waitstatus.h \ $(ptid_h) \ $(signals_h) \ $(libiberty_h) \ @@ -550,7 +552,7 @@ filestuff.o: ../common/filestuff.c agent.o: ../common/agent.c $(COMPILE) $< $(POSTCOMPILE) -target-common.o: ../common/target-common.c +waitstatus.o: ../target/waitstatus.c $(COMPILE) $< $(POSTCOMPILE) diff --git a/gdb/gdbserver/target.h b/gdb/gdbserver/target.h index d064b79ab5..7629b14a9a 100644 --- a/gdb/gdbserver/target.h +++ b/gdb/gdbserver/target.h @@ -21,7 +21,9 @@ #ifndef TARGET_H #define TARGET_H -#include "target-common.h" +#include "target/resume.h" +#include "target/wait.h" +#include "target/waitstatus.h" struct emit_ops; struct btrace_target_info; diff --git a/gdb/target.h b/gdb/target.h index 1d73bcd07f..d538e02864 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -57,7 +57,9 @@ struct expression; it goes into the file stratum, which is always below the process stratum. */ -#include "target-common.h" +#include "target/resume.h" +#include "target/wait.h" +#include "target/waitstatus.h" #include "bfd.h" #include "symtab.h" #include "memattr.h" diff --git a/gdb/target/resume.h b/gdb/target/resume.h new file mode 100644 index 0000000000..bb7a38c63c --- /dev/null +++ b/gdb/target/resume.h @@ -0,0 +1,37 @@ +/* Target resumption definitions and prototypes. + + Copyright (C) 1990-2013 Free Software Foundation, Inc. + + This file is part of GDB. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#ifndef RESUME_H +#define RESUME_H + +/* Ways to "resume" a thread. */ + +enum resume_kind +{ + /* Thread should continue. */ + resume_continue, + + /* Thread should single-step. */ + resume_step, + + /* Thread should be stopped. */ + resume_stop +}; + +#endif /* RESUME_H */ diff --git a/gdb/target/wait.h b/gdb/target/wait.h new file mode 100644 index 0000000000..a5f18b522d --- /dev/null +++ b/gdb/target/wait.h @@ -0,0 +1,30 @@ +/* Target wait definitions and prototypes. + + Copyright (C) 1990-2013 Free Software Foundation, Inc. + + This file is part of GDB. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#ifndef WAIT_H +#define WAIT_H + +/* Options that can be passed to target_wait. */ + +/* Return immediately if there's no event already queued. If this + options is not requested, target_wait blocks waiting for an + event. */ +#define TARGET_WNOHANG 1 + +#endif /* WAIT_H */ diff --git a/gdb/common/target-common.c b/gdb/target/waitstatus.c similarity index 90% rename from gdb/common/target-common.c rename to gdb/target/waitstatus.c index 2edbb2a1bd..e6b850268b 100644 --- a/gdb/common/target-common.c +++ b/gdb/target/waitstatus.c @@ -1,10 +1,7 @@ -/* Common target operations for GDB and gdbserver. +/* Target waitstatus implementations. Copyright (C) 1990-2013 Free Software Foundation, Inc. - Contributed by Cygnus Support. - Contributed by MontaVista Software. - This file is part of GDB. This program is free software; you can redistribute it and/or modify @@ -26,10 +23,7 @@ #include "defs.h" #endif -/* Return a pretty printed form of target_waitstatus. - Space for the result is malloc'd, caller must free. */ - -#include "target-common.h" +#include "waitstatus.h" /* Return a pretty printed form of target_waitstatus. Space for the result is malloc'd, caller must free. */ diff --git a/gdb/common/target-common.h b/gdb/target/waitstatus.h similarity index 79% rename from gdb/common/target-common.h rename to gdb/target/waitstatus.h index d4d73f6307..cafbf15e6e 100644 --- a/gdb/common/target-common.h +++ b/gdb/target/waitstatus.h @@ -1,10 +1,7 @@ -/* Interface between the debugger and target environments, including files - and processes, shared between GDB and gdbserver. +/* Target waitstatus definitions and prototypes. Copyright (C) 1990-2013 Free Software Foundation, Inc. - Contributed by Cygnus Support. Written by John Gilmore. - This file is part of GDB. This program is free software; you can redistribute it and/or modify @@ -20,27 +17,13 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef TARGET_COMMON_H -#define TARGET_COMMON_H +#ifndef WAITSTATUS_H +#define WAITSTATUS_H #include "common-utils.h" #include "ptid.h" #include "gdb_signals.h" -/* Ways to "resume" a thread. */ - -enum resume_kind -{ - /* Thread should continue. */ - resume_continue, - - /* Thread should single-step. */ - resume_step, - - /* Thread should be stopped. */ - resume_stop -}; - /* Stuff for target_wait. */ /* Generally, what has the program done? */ @@ -57,8 +40,8 @@ enum target_waitkind value.sig. */ TARGET_WAITKIND_SIGNALLED, - /* The program is letting us know that it dynamically loaded something - (e.g. it called load(2) on AIX). */ + /* The program is letting us know that it dynamically loaded + something (e.g. it called load(2) on AIX). */ TARGET_WAITKIND_LOADED, /* The program has forked. A "related" process' PTID is in @@ -85,13 +68,14 @@ enum target_waitkind /* The program has entered or returned from a system call. On HP-UX, this is used in the hardware watchpoint implementation. - The syscall's unique integer ID number is in value.syscall_id. */ + The syscall's unique integer ID number is in + value.syscall_id. */ TARGET_WAITKIND_SYSCALL_ENTRY, TARGET_WAITKIND_SYSCALL_RETURN, - /* Nothing happened, but we stopped anyway. This perhaps should be handled - within target_wait, but I'm not sure target_wait should be resuming the - inferior. */ + /* Nothing happened, but we stopped anyway. This perhaps should + be handled within target_wait, but I'm not sure target_wait + should be resuming the inferior. */ TARGET_WAITKIND_SPURIOUS, /* An event has occured, but we should wait again. @@ -133,17 +117,10 @@ struct target_waitstatus } value; }; -/* Options that can be passed to target_wait. */ - -/* Return immediately if there's no event already queued. If this - options is not requested, target_wait blocks waiting for an - event. */ -#define TARGET_WNOHANG 1 - /* Prototypes */ /* Return a pretty printed form of target_waitstatus. Space for the result is malloc'd, caller must free. */ extern char *target_waitstatus_to_string (const struct target_waitstatus *); -#endif /* TARGET_COMMON_H */ +#endif /* WAITSTATUS_H */ -- 2.34.1