aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/options.texi
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@gcc.gnu.org>2005-04-13 08:47:23 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2005-04-13 08:47:23 +0000
commitfe609b0fdfb06ad13449ebf4fbec7bc148b5390a (patch)
tree6334f5d6c82986a5a8afac7939fe71286f4f8588 /gcc/doc/options.texi
parentc8de0f3babc7a07b8a867d23d8e6d42cef0a1e80 (diff)
downloadgcc-fe609b0fdfb06ad13449ebf4fbec7bc148b5390a.zip
gcc-fe609b0fdfb06ad13449ebf4fbec7bc148b5390a.tar.gz
gcc-fe609b0fdfb06ad13449ebf4fbec7bc148b5390a.tar.bz2
optc-gen.awk: Handle stand-alone Mask records.
* optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
Diffstat (limited to 'gcc/doc/options.texi')
-rw-r--r--gcc/doc/options.texi29
1 files changed, 23 insertions, 6 deletions
diff --git a/gcc/doc/options.texi b/gcc/doc/options.texi
index 959f952..ccc6c910 100644
--- a/gcc/doc/options.texi
+++ b/gcc/doc/options.texi
@@ -25,15 +25,17 @@ blank lines. Comments may appear on their own line anywhere within
the file and are preceded by semicolons. Whitespace is allowed before
the semicolon.
-The files can contain two types of record: language definitions and
-option definitions.
+The files can contain the following types of record:
-A language definition record has two fields: the string
-@samp{Language} and the name of the language. Once a language has
-been declared in this way, it can be used as an option property.
+@itemize @bullet
+@item
+A language definition record.  These records have two fields: the
+string @samp{Language} and the name of the language.  Once a language
+has been declared in this way, it can be used as an option property.
@xref{Option properties}.
-An option definition record has the following fields:
+@item
+An option definition record.  These records have the following fields:
@enumerate
@item
@@ -59,6 +61,21 @@ used instead of the option's name and the text to the right of the
tab forms the help text. This allows you to elaborate on what type
of argument the option takes.
+@item
+A target mask record.  These records have one field of the form
+@samp{Mask(@var{x})}.  The options-processing script will automatically
+allocate a bit in @code{target_flags} (@pxref{Run-time Target}) for
+each mask name @var{x} and set the macro @code{MASK_@var{x}} to the
+appropriate bitmask.  It will also declare a @code{TARGET_@var{x}}
+macro that has the value 1 when bit @code{MASK_@var{x}} is set and
+0 otherwise.
+
+They are primarily intended to declare target masks that are not
+associated with user options, either because these masks represent
+internal switches or because the options are not available on all
+configurations and yet the masks always need to be defined.
+@end itemize
+
@node Option properties
@section Option properties