summaryrefslogtreecommitdiff
path: root/gcc/config/mmix/mmix.h
diff options
context:
space:
mode:
authorhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-02 21:17:37 +0000
committerhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2005-05-02 21:17:37 +0000
commit1eb18897e44f2dbbed4c63f795bf54d0adb51c2a (patch)
treed9821c4e11c438b7f285a3e241b818cc8f2212bf /gcc/config/mmix/mmix.h
parentb943ebc02ca8c11b980f9d6f2c3d469c2e90bb63 (diff)
downloadgcc-1eb18897e44f2dbbed4c63f795bf54d0adb51c2a.tar.gz
* config/mmix/mmix.opt: New file.
* config/mmix/mmix.h: Move options-related comments to mmix.opt. (mmix_cc1_ignored_option): Don't declare. (TARGET_OPTIONS, TARGET_MASK_LIBFUNCS, TARGET_MASK_ABI_GNU) (TARGET_MASK_FCMP_EPSILON, TARGET_MASK_ZERO_EXTEND) (TARGET_MASK_KNUTH_DIVISION, TARGET_MASK_TOPLEVEL_SYMBOLS) (TARGET_MASK_BRANCH_PREDICT, TARGET_MASK_USE_RETURN_INSN) (TARGET_MASK_BASE_ADDRESSES, TARGET_LIBFUNC, TARGET_ABI_GNU, (TARGET_FCMP_EPSILON, TARGET_ZERO_EXTEND, TARGET_KNUTH_DIVISION) (TARGET_TOPLEVEL_SYMBOLS, TARGET_BRANCH_PREDICT) (TARGET_BASE_ADDRESSES, TARGET_USE_RETURN_INSN, TARGET_SWITCHES): Don't define. (TARGET_DEFAULT): Change TARGET_MASK_... to MASK_... * config/mmix/mmix.c (mmix_cc1_ignored_option): Remove. (TARGET_DEFAULT_TARGET_FLAGS): Override default. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99122 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mmix/mmix.h')
-rw-r--r--gcc/config/mmix/mmix.h83
1 files changed, 1 insertions, 82 deletions
diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h
index 627231747e8..52aa98cfc25 100644
--- a/gcc/config/mmix/mmix.h
+++ b/gcc/config/mmix/mmix.h
@@ -124,15 +124,6 @@ struct machine_function GTY(())
%{!r:--defsym __.MMIX.start..text=0x100}}}\
%{!melf:%{!r:-m mmo}}%{melf|r:-m elf64mmix}"
-/* Put unused option values here. */
-extern const char *mmix_cc1_ignored_option;
-
-#define TARGET_OPTIONS \
- {{"set-program-start=", &mmix_cc1_ignored_option, \
- N_("Set start-address of the program"), 0}, \
- {"set-data-start=", &mmix_cc1_ignored_option, \
- N_("Set start-address of data"), 0} }
-
/* FIXME: There's no provision for profiling here. */
#define STARTFILE_SPEC \
"crti%O%s crtbegin%O%s"
@@ -156,80 +147,8 @@ extern const char *mmix_cc1_ignored_option;
extern int target_flags;
-#define TARGET_MASK_LIBFUNCS 1
-#define TARGET_MASK_ABI_GNU 2
-#define TARGET_MASK_FCMP_EPSILON 4
-#define TARGET_MASK_ZERO_EXTEND 8
-#define TARGET_MASK_KNUTH_DIVISION 16
-#define TARGET_MASK_TOPLEVEL_SYMBOLS 32
-#define TARGET_MASK_BRANCH_PREDICT 64
-#define TARGET_MASK_USE_RETURN_INSN 128
-
-/* We use the term "base address" since that's what Knuth uses. The base
- address goes in a global register. When addressing, it's more like
- "base address plus offset", with the offset being 0..255 from the base,
- which itself can be a symbol plus an offset. The effect is like having
- a constant pool in global registers, code offsetting from those
- registers (automatically causing a request for a suitable constant base
- address register) without having to know the specific register or the
- specific offset. The setback is that there's a limited number of
- registers, and you'll not find out until link time whether you
- should have compiled with -mno-base-addresses. */
-#define TARGET_MASK_BASE_ADDRESSES 128
-
-/* FIXME: Get rid of this one. */
-#define TARGET_LIBFUNC (target_flags & TARGET_MASK_LIBFUNCS)
-#define TARGET_ABI_GNU (target_flags & TARGET_MASK_ABI_GNU)
-#define TARGET_FCMP_EPSILON (target_flags & TARGET_MASK_FCMP_EPSILON)
-#define TARGET_ZERO_EXTEND (target_flags & TARGET_MASK_ZERO_EXTEND)
-#define TARGET_KNUTH_DIVISION (target_flags & TARGET_MASK_KNUTH_DIVISION)
-#define TARGET_TOPLEVEL_SYMBOLS (target_flags & TARGET_MASK_TOPLEVEL_SYMBOLS)
-#define TARGET_BRANCH_PREDICT (target_flags & TARGET_MASK_BRANCH_PREDICT)
-#define TARGET_BASE_ADDRESSES (target_flags & TARGET_MASK_BASE_ADDRESSES)
-#define TARGET_USE_RETURN_INSN (target_flags & TARGET_MASK_USE_RETURN_INSN)
-
#define TARGET_DEFAULT \
- (TARGET_MASK_BRANCH_PREDICT | TARGET_MASK_BASE_ADDRESSES \
- | TARGET_MASK_USE_RETURN_INSN)
-
-/* FIXME: Provide a way to *load* the epsilon register. */
-#define TARGET_SWITCHES \
- {{"libfuncs", TARGET_MASK_LIBFUNCS, \
- N_("For intrinsics library: pass all parameters in registers")}, \
- {"no-libfuncs", -TARGET_MASK_LIBFUNCS, ""}, \
- {"abi=mmixware", -TARGET_MASK_ABI_GNU, \
- N_("Use register stack for parameters and return value")}, \
- {"abi=gnu", TARGET_MASK_ABI_GNU, \
- N_("Use call-clobbered registers for parameters and return value")}, \
- {"epsilon", TARGET_MASK_FCMP_EPSILON, \
- N_("Use epsilon-respecting floating point compare instructions")}, \
- {"no-epsilon", -TARGET_MASK_FCMP_EPSILON, ""}, \
- {"zero-extend", TARGET_MASK_ZERO_EXTEND, \
- N_("Use zero-extending memory loads, not sign-extending ones")}, \
- {"no-zero-extend", -TARGET_MASK_ZERO_EXTEND, ""}, \
- {"knuthdiv", TARGET_MASK_KNUTH_DIVISION, \
- N_("Generate divide results with reminder having the same sign as the\
- divisor (not the dividend)")}, \
- {"no-knuthdiv", -TARGET_MASK_KNUTH_DIVISION, ""}, \
- {"toplevel-symbols", TARGET_MASK_TOPLEVEL_SYMBOLS, \
- N_("Prepend global symbols with \":\" (for use with PREFIX)")}, \
- {"no-toplevel-symbols", -TARGET_MASK_TOPLEVEL_SYMBOLS, \
- N_("Do not provide a default start-address 0x100 of the program")}, \
- {"elf", 0, \
- N_("Link to emit program in ELF format (rather than mmo)")}, \
- {"branch-predict", TARGET_MASK_BRANCH_PREDICT, \
- N_("Use P-mnemonics for branches statically predicted as taken")}, \
- {"no-branch-predict", -TARGET_MASK_BRANCH_PREDICT, \
- N_("Don't use P-mnemonics for branches")}, \
- {"base-addresses", TARGET_MASK_BASE_ADDRESSES, \
- N_("Use addresses that allocate global registers")}, \
- {"no-base-addresses", -TARGET_MASK_BASE_ADDRESSES, \
- N_("Do not use addresses that allocate global registers")}, \
- {"single-exit", -TARGET_MASK_USE_RETURN_INSN, \
- N_("Generate a single exit point for each function")}, \
- {"no-single-exit", TARGET_MASK_USE_RETURN_INSN, \
- N_("Do not generate a single exit point for each function")}, \
- {"", TARGET_DEFAULT, ""}}
+ (MASK_BRANCH_PREDICT | MASK_BASE_ADDRESSES | MASK_USE_RETURN_INSN)
/* Unfortunately, this must not reference anything in "mmix.c". */
#define TARGET_VERSION \