Commit a7f051fe by Richard Sandiford Committed by Richard Sandiford

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
parent 3fb30019
2007-08-11 Richard Sandiford <richard@codesourcery.com> 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. * calls.c (avoid_likely_spilled_reg): New function.
(expand_call): Use it. (expand_call): Use it.
......
...@@ -357,9 +357,14 @@ extern enum mips_code_readable_setting mips_code_readable; ...@@ -357,9 +357,14 @@ extern enum mips_code_readable_setting mips_code_readable;
builtin_define ("__mips__"); \ builtin_define ("__mips__"); \
builtin_define ("_mips"); \ builtin_define ("_mips"); \
\ \
/* We do this here because __mips is defined below \ /* We do this here because __mips is defined below and so we \
and so we can't use builtin_define_std. */ \ can't use builtin_define_std. We don't ever want to define \
if (!flag_iso) \ "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"); \ builtin_define ("mips"); \
\ \
if (TARGET_64BIT) \ if (TARGET_64BIT) \
......
...@@ -17,6 +17,11 @@ You should have received a copy of the GNU General Public License ...@@ -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 along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */ <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. */ /* True if generating code for a VxWorks RTP. */
#ifndef TARGET_VXWORKS_RTP #ifndef TARGET_VXWORKS_RTP
#define TARGET_VXWORKS_RTP false #define TARGET_VXWORKS_RTP false
......
...@@ -20,6 +20,10 @@ You should have received a copy of the GNU General Public License ...@@ -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 along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */ <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 /* In kernel mode, VxWorks provides all the libraries itself, as well as
the functionality of startup files, etc. In RTP mode, it behaves more the functionality of startup files, etc. In RTP mode, it behaves more
like a traditional Unix, with more external files. Most of our specs like a traditional Unix, with more external files. Most of our specs
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment