vxworks-dummy.h (TARGET_VXWORKS): Define.

gcc/
	* config/vxworks-dummy.h (TARGET_VXWORKS): Define.
	* config/vxworks.h (TARGET_VXWORKS): Override.
	* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Don't define
	"mips" if TARGET_VXWORKS.

From-SVN: r127361
This commit is contained in:
Richard Sandiford 2007-08-11 16:52:47 +00:00 committed by Richard Sandiford
parent 3fb300196d
commit a7f051fe0b
4 changed files with 24 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2007-08-11 Richard Sandiford <richard@codesourcery.com>
* config/vxworks-dummy.h (TARGET_VXWORKS): Define.
* config/vxworks.h (TARGET_VXWORKS): Override.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Don't define
"mips" if TARGET_VXWORKS.
2007-08-11 Richard Sandiford <richard@codesourcery.com>
* calls.c (avoid_likely_spilled_reg): New function.

View File

@ -357,9 +357,14 @@ extern enum mips_code_readable_setting mips_code_readable;
builtin_define ("__mips__"); \
builtin_define ("_mips"); \
\
/* We do this here because __mips is defined below \
and so we can't use builtin_define_std. */ \
if (!flag_iso) \
/* We do this here because __mips is defined below and so we \
can't use builtin_define_std. We don't ever want to define \
"mips" for VxWorks because some of the VxWorks headers \
construct include filenames from a root directory macro, \
an architecture macro and a filename, where the architecture \
macro expands to 'mips'. If we define 'mips' to 1, the \
architecture macro expands to 1 as well. */ \
if (!flag_iso && !TARGET_VXWORKS) \
builtin_define ("mips"); \
\
if (TARGET_64BIT) \

View File

@ -17,6 +17,11 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
/* True if we're targetting VxWorks. */
#ifndef TARGET_VXWORKS
#define TARGET_VXWORKS 0
#endif
/* True if generating code for a VxWorks RTP. */
#ifndef TARGET_VXWORKS_RTP
#define TARGET_VXWORKS_RTP false

View File

@ -20,6 +20,10 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
/* Assert that we are targetting VxWorks. */
#undef TARGET_VXWORKS
#define TARGET_VXWORKS 1
/* In kernel mode, VxWorks provides all the libraries itself, as well as
the functionality of startup files, etc. In RTP mode, it behaves more
like a traditional Unix, with more external files. Most of our specs