OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.2.2/] [gcc/] [config/] [cris/] [cris.opt] - Diff between revs 38 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 38 Rev 154
; Options for the CRIS port of the compiler.
; Options for the CRIS port of the compiler.
; Copyright (C) 2005, 2007 Free Software Foundation, Inc.
; Copyright (C) 2005, 2007 Free Software Foundation, Inc.
;
;
; This file is part of GCC.
; This file is part of GCC.
;
;
; GCC is free software; you can redistribute it and/or modify it under
; 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
; the terms of the GNU General Public License as published by the Free
; Software Foundation; either version 3, or (at your option) any later
; Software Foundation; either version 3, or (at your option) any later
; version.
; version.
;
;
; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
; WARRANTY; without even the implied warranty of MERCHANTABILITY or
; WARRANTY; without even the implied warranty of MERCHANTABILITY or
; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
; for more details.
; for more details.
;
;
; You should have received a copy of the GNU General Public License
; 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
; .
; .
; TARGET_MUL_BUG: Whether or not to work around multiplication
; TARGET_MUL_BUG: Whether or not to work around multiplication
; instruction hardware bug when generating code for models where
; instruction hardware bug when generating code for models where
; it may be present.  From the trouble report for Etrax 100 LX:
; it may be present.  From the trouble report for Etrax 100 LX:
; "A multiply operation may cause incorrect cache behaviour
; "A multiply operation may cause incorrect cache behaviour
; under some specific circumstances. The problem can occur if
; under some specific circumstances. The problem can occur if
; the instruction following the multiply instruction causes a
; the instruction following the multiply instruction causes a
; cache miss, and multiply operand 1 (source operand) bits
; cache miss, and multiply operand 1 (source operand) bits
; [31:27] matches the logical mapping of the mode register
; [31:27] matches the logical mapping of the mode register
; address (0xb0....), and bits [9:2] of operand 1 matches the
; address (0xb0....), and bits [9:2] of operand 1 matches the
; TLB register address (0x258-0x25f).  There is such a mapping
; TLB register address (0x258-0x25f).  There is such a mapping
; in kernel mode or when the MMU is off.  Normally there is no
; in kernel mode or when the MMU is off.  Normally there is no
; such mapping in user mode, and the problem will therefore
; such mapping in user mode, and the problem will therefore
; probably not occur in Linux user mode programs."
; probably not occur in Linux user mode programs."
;
;
; We have no sure-fire way to know from within GCC that we're
; We have no sure-fire way to know from within GCC that we're
; compiling a user program.  For example, -fpic/PIC is used in
; compiling a user program.  For example, -fpic/PIC is used in
; libgcc which is linked into the kernel.  However, the
; libgcc which is linked into the kernel.  However, the
; workaround option -mno-mul-bug can be safely used per-package
; workaround option -mno-mul-bug can be safely used per-package
; when compiling programs.  The same goes for general user-only
; when compiling programs.  The same goes for general user-only
; libraries such as glibc, since there's no user-space
; libraries such as glibc, since there's no user-space
; driver-like program that gets a mapping of I/O registers (all
; driver-like program that gets a mapping of I/O registers (all
; on the same page, including the TLB registers).
; on the same page, including the TLB registers).
mmul-bug-workaround
mmul-bug-workaround
Target Report Mask(MUL_BUG)
Target Report Mask(MUL_BUG)
Work around bug in multiplication instruction
Work around bug in multiplication instruction
; TARGET_ETRAX4_ADD: Instruction-set additions from Etrax 4 and up.
; TARGET_ETRAX4_ADD: Instruction-set additions from Etrax 4 and up.
; (Just "lz", which we don't really generate from GCC -- yet).
; (Just "lz", which we don't really generate from GCC -- yet).
metrax4
metrax4
Target Report Mask(ETRAX4_ADD)
Target Report Mask(ETRAX4_ADD)
Compile for ETRAX 4 (CRIS v3)
Compile for ETRAX 4 (CRIS v3)
; See cris_handle_option.
; See cris_handle_option.
metrax100
metrax100
Target Report RejectNegative
Target Report RejectNegative
Compile for ETRAX 100 (CRIS v8)
Compile for ETRAX 100 (CRIS v8)
; See cris_handle_option.
; See cris_handle_option.
mno-etrax100
mno-etrax100
Target Report RejectNegative Undocumented
Target Report RejectNegative Undocumented
mpdebug
mpdebug
Target Report Mask(PDEBUG)
Target Report Mask(PDEBUG)
Emit verbose debug information in assembly code
Emit verbose debug information in assembly code
; TARGET_CCINIT: Whether to use condition-codes generated by
; TARGET_CCINIT: Whether to use condition-codes generated by
; insns other than the immediately preceding compare/test insn.
; insns other than the immediately preceding compare/test insn.
; Used to check for errors in notice_update_cc.
; Used to check for errors in notice_update_cc.
mcc-init
mcc-init
Target Report Mask(CCINIT)
Target Report Mask(CCINIT)
Do not use condition codes from normal instructions
Do not use condition codes from normal instructions
; TARGET_SIDE_EFFECT_PREFIXES: Whether to use side-effect
; TARGET_SIDE_EFFECT_PREFIXES: Whether to use side-effect
; patterns.  Used to debug the [rx=ry+i] type patterns.
; patterns.  Used to debug the [rx=ry+i] type patterns.
mside-effects
mside-effects
Target Report RejectNegative Mask(SIDE_EFFECT_PREFIXES) Undocumented
Target Report RejectNegative Mask(SIDE_EFFECT_PREFIXES) Undocumented
mno-side-effects
mno-side-effects
Target Report RejectNegative InverseMask(SIDE_EFFECT_PREFIXES)
Target Report RejectNegative InverseMask(SIDE_EFFECT_PREFIXES)
Do not emit addressing modes with side-effect assignment
Do not emit addressing modes with side-effect assignment
; TARGET_STACK_ALIGN: Whether to *keep* (not force) alignment of
; TARGET_STACK_ALIGN: Whether to *keep* (not force) alignment of
; stack at 16 (or 32, depending on TARGET_ALIGN_BY_32) bits.
; stack at 16 (or 32, depending on TARGET_ALIGN_BY_32) bits.
mstack-align
mstack-align
Target Report RejectNegative Mask(STACK_ALIGN) Undocumented
Target Report RejectNegative Mask(STACK_ALIGN) Undocumented
mno-stack-align
mno-stack-align
Target Report RejectNegative InverseMask(STACK_ALIGN)
Target Report RejectNegative InverseMask(STACK_ALIGN)
Do not tune stack alignment
Do not tune stack alignment
; TARGET_DATA_ALIGN: Whether to do alignment on individual
; TARGET_DATA_ALIGN: Whether to do alignment on individual
; modifiable objects.
; modifiable objects.
mdata-align
mdata-align
Target Report RejectNegative Mask(DATA_ALIGN) Undocumented
Target Report RejectNegative Mask(DATA_ALIGN) Undocumented
mno-data-align
mno-data-align
Target Report RejectNegative InverseMask(DATA_ALIGN)
Target Report RejectNegative InverseMask(DATA_ALIGN)
Do not tune writable data alignment
Do not tune writable data alignment
; TARGET_CONST_ALIGN: Whether to do alignment on individual
; TARGET_CONST_ALIGN: Whether to do alignment on individual
; non-modifiable objects.
; non-modifiable objects.
mconst-align
mconst-align
Target Report RejectNegative Mask(CONST_ALIGN) Undocumented
Target Report RejectNegative Mask(CONST_ALIGN) Undocumented
mno-const-align
mno-const-align
Target Report RejectNegative InverseMask(CONST_ALIGN)
Target Report RejectNegative InverseMask(CONST_ALIGN)
Do not tune code and read-only data alignment
Do not tune code and read-only data alignment
; See cris_handle_option.
; See cris_handle_option.
m32-bit
m32-bit
Target Report RejectNegative Undocumented
Target Report RejectNegative Undocumented
; See cris_handle_option.
; See cris_handle_option.
m32bit
m32bit
Target Report RejectNegative
Target Report RejectNegative
Align code and data to 32 bits
Align code and data to 32 bits
; See cris_handle_option.
; See cris_handle_option.
m16-bit
m16-bit
Target Report RejectNegative Undocumented
Target Report RejectNegative Undocumented
; See cris_handle_option.
; See cris_handle_option.
m16bit
m16bit
Target Report RejectNegative Undocumented
Target Report RejectNegative Undocumented
; See cris_handle_option.
; See cris_handle_option.
m8-bit
m8-bit
Target Report RejectNegative Undocumented
Target Report RejectNegative Undocumented
; See cris_handle_option.
; See cris_handle_option.
m8bit
m8bit
Target Report RejectNegative
Target Report RejectNegative
Don't align items in code or data
Don't align items in code or data
; TARGET_PROLOGUE_EPILOGUE: Whether or not to omit function
; TARGET_PROLOGUE_EPILOGUE: Whether or not to omit function
; prologue and epilogue.
; prologue and epilogue.
mprologue-epilogue
mprologue-epilogue
Target Report RejectNegative Mask(PROLOGUE_EPILOGUE) Undocumented
Target Report RejectNegative Mask(PROLOGUE_EPILOGUE) Undocumented
mno-prologue-epilogue
mno-prologue-epilogue
Target Report RejectNegative InverseMask(PROLOGUE_EPILOGUE)
Target Report RejectNegative InverseMask(PROLOGUE_EPILOGUE)
Do not emit function prologue or epilogue
Do not emit function prologue or epilogue
; We have to handle this m-option here since we can't wash it
; We have to handle this m-option here since we can't wash it
; off in both CC1_SPEC and CC1PLUS_SPEC.
; off in both CC1_SPEC and CC1PLUS_SPEC.
mbest-lib-options
mbest-lib-options
Target Report RejectNegative
Target Report RejectNegative
Use the most feature-enabling options allowed by other options
Use the most feature-enabling options allowed by other options
; FIXME: The following comment relates to gcc before cris.opt.
; FIXME: The following comment relates to gcc before cris.opt.
; Check it it's still valid:
; Check it it's still valid:
; We must call it "override-" since calling it "no-" will cause
; We must call it "override-" since calling it "no-" will cause
; gcc.c to forget it, if there's a "later" -mbest-lib-options.
; gcc.c to forget it, if there's a "later" -mbest-lib-options.
; Kludgy, but needed for some multilibbed files.
; Kludgy, but needed for some multilibbed files.
moverride-best-lib-options
moverride-best-lib-options
Target Report RejectNegative
Target Report RejectNegative
Override -mbest-lib-options
Override -mbest-lib-options
mcpu=
mcpu=
Target Report RejectNegative Joined Undocumented Var(cris_cpu_str)
Target Report RejectNegative Joined Undocumented Var(cris_cpu_str)
march=
march=
Target Report RejectNegative Joined Var(cris_cpu_str)
Target Report RejectNegative Joined Var(cris_cpu_str)
-march=ARCH     Generate code for the specified chip or CPU version
-march=ARCH     Generate code for the specified chip or CPU version
mtune=
mtune=
Target Report RejectNegative Joined Var(cris_tune_str)
Target Report RejectNegative Joined Var(cris_tune_str)
-mtune=ARCH     Tune alignment for the specified chip or CPU version
-mtune=ARCH     Tune alignment for the specified chip or CPU version
mmax-stackframe=
mmax-stackframe=
Target Report RejectNegative Joined Var(cris_max_stackframe_str)
Target Report RejectNegative Joined Var(cris_max_stackframe_str)
-mmax-stackframe=SIZE   Warn when a stackframe is larger than the specified size
-mmax-stackframe=SIZE   Warn when a stackframe is larger than the specified size
max-stackframe=
max-stackframe=
Target Report RejectNegative Joined Undocumented Var(cris_max_stackframe_str)
Target Report RejectNegative Joined Undocumented Var(cris_max_stackframe_str)
; TARGET_SVINTO: Currently this just affects alignment.  FIXME:
; TARGET_SVINTO: Currently this just affects alignment.  FIXME:
; Redundant with TARGET_ALIGN_BY_32, or put machine stuff here?
; Redundant with TARGET_ALIGN_BY_32, or put machine stuff here?
; This and the others below could just as well be variables and
; This and the others below could just as well be variables and
; TARGET_* defines in cris.h.
; TARGET_* defines in cris.h.
Mask(SVINTO)
Mask(SVINTO)
; TARGET_ALIGN_BY_32: Say that all alignment specifications say
; TARGET_ALIGN_BY_32: Say that all alignment specifications say
; to prefer 32 rather than 16 bits.
; to prefer 32 rather than 16 bits.
Mask(ALIGN_BY_32)
Mask(ALIGN_BY_32)
; TARGET_AVOID_GOTPLT is referred to in the .c and the .md so we
; TARGET_AVOID_GOTPLT is referred to in the .c and the .md so we
; need to allocate the flag and macros here.
; need to allocate the flag and macros here.
Mask(AVOID_GOTPLT)
Mask(AVOID_GOTPLT)
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.