summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-07 21:44:58 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2005-04-07 21:44:58 +0000
commit912a710685cb83a63c4b927f56d1a8c002dcbc01 (patch)
tree569f09affd10a8ba1efabf0bb32a2c978af23057
parent9cf1c244a71a14131d8106727fc689775b224427 (diff)
downloadppe42-gcc-912a710685cb83a63c4b927f56d1a8c002dcbc01.tar.gz
ppe42-gcc-912a710685cb83a63c4b927f56d1a8c002dcbc01.zip
* config/vax/vax.h (target_flags, MASK_UNIX_ASM, MASK_VAXC_ALIGNMENT)
(MASK_G_FLOAT, TARGET_UNIX_ASM, TARGET_VAXC_ALIGNMENT, TARGET_G_FLOAT) (TARGET_SWITCHES): Delete. * config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Override default. * config/vax/vax.opt: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97805 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/vax/vax.c3
-rw-r--r--gcc/config/vax/vax.h41
-rw-r--r--gcc/config/vax/vax.opt48
4 files changed, 59 insertions, 41 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f36da18b284..511f709dd69 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2005-04-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/vax/vax.h (target_flags, MASK_UNIX_ASM, MASK_VAXC_ALIGNMENT)
+ (MASK_G_FLOAT, TARGET_UNIX_ASM, TARGET_VAXC_ALIGNMENT, TARGET_G_FLOAT)
+ (TARGET_SWITCHES): Delete.
+ * config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Override default.
+ * config/vax/vax.opt: New file.
+
2005-04-07 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-dse.c (dse_optimize_stmt): Fix incorrect comment.
diff --git a/gcc/config/vax/vax.c b/gcc/config/vax/vax.c
index 995b1679203..f39bcbfbfd8 100644
--- a/gcc/config/vax/vax.c
+++ b/gcc/config/vax/vax.c
@@ -73,6 +73,9 @@ static rtx vax_struct_value_rtx (tree, int);
#undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
#define TARGET_ASM_CAN_OUTPUT_MI_THUNK default_can_output_mi_thunk_no_vcall
+#undef TARGET_DEFAULT_TARGET_FLAGS
+#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
+
#undef TARGET_RTX_COSTS
#define TARGET_RTX_COSTS vax_rtx_costs
#undef TARGET_ADDRESS_COST
diff --git a/gcc/config/vax/vax.h b/gcc/config/vax/vax.h
index 5efd790dde4..af3eab55cbf 100644
--- a/gcc/config/vax/vax.h
+++ b/gcc/config/vax/vax.h
@@ -60,50 +60,9 @@ Boston, MA 02111-1307, USA. */
/* Run-time compilation parameters selecting different hardware subsets. */
-extern int target_flags;
-
-#define MASK_UNIX_ASM 1
-#define MASK_VAXC_ALIGNMENT 2
-#define MASK_G_FLOAT 4
-
-
-/* Macros used in the machine description to test the flags. */
-
-/* Nonzero if compiling code that Unix assembler can assemble. */
-#define TARGET_UNIX_ASM (target_flags & MASK_UNIX_ASM)
-
-/* Nonzero if compiling with VAX-11 "C" style structure alignment */
-#define TARGET_VAXC_ALIGNMENT (target_flags & MASK_VAXC_ALIGNMENT)
-
-/* Nonzero if compiling with `G'-format floating point */
-#define TARGET_G_FLOAT (target_flags & MASK_G_FLOAT)
-
/* Nonzero if ELF. Redefined by vax/elf.h. */
#define TARGET_ELF 0
-/* Macro to define tables used to set the flags.
- This is a list in braces of pairs in braces,
- each pair being { "NAME", VALUE }
- where VALUE is the bits to set or minus the bits to clear.
- An empty string NAME is used to identify the default VALUE. */
-
-#define TARGET_SWITCHES \
- { {"unix", MASK_UNIX_ASM, \
- "Generate code for UNIX assembler"}, \
- {"gnu", -MASK_UNIX_ASM, \
- "Generate code for GNU assembler (gas)"}, \
- {"vaxc-alignment", MASK_VAXC_ALIGNMENT, \
- "Use VAXC structure conventions"}, \
- {"g", MASK_G_FLOAT, \
- "Generate GFLOAT double precision code"}, \
- {"g-float", MASK_G_FLOAT, \
- "Generate GFLOAT double precision code"}, \
- {"d", -MASK_G_FLOAT, \
- "Generate DFLOAT double precision code"}, \
- {"d-float", -MASK_G_FLOAT, \
- "Generate DFLOAT double precision code"}, \
- { "", TARGET_DEFAULT, 0}}
-
/* Default target_flags if no switches specified. */
#ifndef TARGET_DEFAULT
diff --git a/gcc/config/vax/vax.opt b/gcc/config/vax/vax.opt
new file mode 100644
index 00000000000..b51d2816f66
--- /dev/null
+++ b/gcc/config/vax/vax.opt
@@ -0,0 +1,48 @@
+; Options for the VAX port of the compiler.
+
+; Copyright (C) 2005 Free Software Foundation, Inc.
+;
+; This file is part of GCC.
+;
+; GCC 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 2, or (at your option) any later
+; version.
+;
+; GCC 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 GCC; see the file COPYING. If not, write to the Free
+; Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+; 02111-1307, USA.
+
+md
+Target RejectNegative InverseMask(G_FLOAT)
+Target DFLOAT double precision code
+
+md-float
+Target RejectNegative InverseMask(G_FLOAT)
+Target DFLOAT double precision code
+
+mg
+Target RejectNegative Mask(G_FLOAT)
+Generate GFLOAT double precision code
+
+mg-float
+Target RejectNegative Mask(G_FLOAT) MaskExists
+Generate GFLOAT double precision code
+
+mgnu
+Target RejectNegative InverseMask(UNIX_ASM)
+Generate code for GNU assembler (gas)
+
+munix
+Target RejectNegative Mask(UNIX_ASM)
+Generate code for UNIX assembler
+
+mvaxc-alignment
+Target RejectNegative Mask(VAXC_ALIGNMENT)
+Use VAXC structure conventions
OpenPOWER on IntegriCloud