]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/c-family/c-target.h
tm.texi.in: Document C target hooks as separate from general target hooks.
[thirdparty/gcc.git] / gcc / c-family / c-target.h
diff --git a/gcc/c-family/c-target.h b/gcc/c-family/c-target.h
new file mode 100644 (file)
index 0000000..69ca4dd
--- /dev/null
@@ -0,0 +1,37 @@
+/* Data structure definitions for target-specific C-family behavior.
+   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+   2011
+   Free Software Foundation, Inc.
+
+   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, 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; see the file COPYING3.  If not see
+   <http://www.gnu.org/licenses/>.
+
+   In other words, you are welcome to use, share and improve this program.
+   You are forbidden to forbid anyone else to use, share and improve
+   what you give them.   Help stamp out software-hoarding!  */
+
+#ifndef GCC_C_TARGET_H
+#define GCC_C_TARGET_H
+
+#define DEFHOOKPOD(NAME, DOC, TYPE, INIT) TYPE NAME;
+#define DEFHOOK(NAME, DOC, TYPE, PARAMS, INIT) TYPE (* NAME) PARAMS;
+#define DEFHOOK_UNDOC DEFHOOK
+#define HOOKSTRUCT(FRAGMENT) FRAGMENT
+
+#include "c-target.def"
+
+/* Each target can provide their own.  */
+extern struct gcc_targetcm targetcm;
+
+#endif /* GCC_C_TARGET_H */