Mercurial > hg > CbC > CbC_gcc
diff gcc/config/sparc/sparc.opt @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | f6334be47118 |
children | 84e7813d76e9 |
line wrap: on
line diff
--- a/gcc/config/sparc/sparc.opt Sun Aug 21 07:07:55 2011 +0900 +++ b/gcc/config/sparc/sparc.opt Fri Oct 27 22:46:09 2017 +0900 @@ -1,6 +1,6 @@ ; Options for the SPARC port of the compiler ; -; Copyright (C) 2005, 2007, 2010 Free Software Foundation, Inc. +; Copyright (C) 2005-2017 Free Software Foundation, Inc. ; ; This file is part of GCC. ; @@ -18,92 +18,250 @@ ; along with GCC; see the file COPYING3. If not see ; <http://www.gnu.org/licenses/>. +HeaderInclude +config/sparc/sparc-opts.h + +;; Debug flags +TargetVariable +unsigned int sparc_debug + mfpu Target Report Mask(FPU) -Use hardware FP +Use hardware FP. mhard-float -Target RejectNegative Mask(FPU) MaskExists -Use hardware FP +Target RejectNegative Mask(FPU) +Use hardware FP. msoft-float Target RejectNegative InverseMask(FPU) -Do not use hardware FP +Do not use hardware FP. + +mflat +Target Report Mask(FLAT) +Use flat register window model. munaligned-doubles Target Report Mask(UNALIGNED_DOUBLES) -Assume possible double misalignment +Assume possible double misalignment. mapp-regs Target Report Mask(APP_REGS) -Use ABI reserved registers +Use ABI reserved registers. mhard-quad-float Target Report RejectNegative Mask(HARD_QUAD) -Use hardware quad FP instructions +Use hardware quad FP instructions. msoft-quad-float Target Report RejectNegative InverseMask(HARD_QUAD) -Do not use hardware quad fp instructions +Do not use hardware quad fp instructions. + +mlra +Target Report Mask(LRA) +Enable Local Register Allocation. mv8plus Target Report Mask(V8PLUS) -Compile for V8+ ABI +Compile for V8+ ABI. mvis Target Report Mask(VIS) -Use UltraSPARC Visual Instruction Set extensions +Use UltraSPARC Visual Instruction Set version 1.0 extensions. + +mvis2 +Target Report Mask(VIS2) +Use UltraSPARC Visual Instruction Set version 2.0 extensions. + +mvis3 +Target Report Mask(VIS3) +Use UltraSPARC Visual Instruction Set version 3.0 extensions. + +mvis4 +Target Report Mask(VIS4) +Use UltraSPARC Visual Instruction Set version 4.0 extensions. + +mvis4b +Target Report Mask(VIS4B) +Use additional VIS instructions introduced in OSA2017. + +mcbcond +Target Report Mask(CBCOND) +Use UltraSPARC Compare-and-Branch extensions. + +mfmaf +Target Report Mask(FMAF) +Use UltraSPARC Fused Multiply-Add extensions. + +mfsmuld +Target Report Mask(FSMULD) +Use Floating-point Multiply Single to Double (FsMULd) instruction. + +mpopc +Target Report Mask(POPC) +Use UltraSPARC Population-Count instruction. + +msubxc +Target Report Mask(SUBXC) +Use UltraSPARC Subtract-Extended-with-Carry instruction. mptr64 Target Report RejectNegative Mask(PTR64) -Pointers are 64-bit +Pointers are 64-bit. mptr32 Target Report RejectNegative InverseMask(PTR64) -Pointers are 32-bit +Pointers are 32-bit. m64 Target Report RejectNegative Mask(64BIT) -Use 64-bit ABI +Use 64-bit ABI. m32 Target Report RejectNegative InverseMask(64BIT) -Use 32-bit ABI +Use 32-bit ABI. mstack-bias Target Report Mask(STACK_BIAS) -Use stack bias +Use stack bias. mfaster-structs Target Report Mask(FASTER_STRUCTS) -Use structs on stronger alignment for double-word copies +Use structs on stronger alignment for double-word copies. mrelax Target -Optimize tail call instructions in assembler and linker +Optimize tail call instructions in assembler and linker. + +muser-mode +Target Report InverseMask(SV_MODE) +Do not generate code that can only run in supervisor mode (default). mcpu= -Target RejectNegative Joined -Use features of and schedule code for given CPU +Target RejectNegative Joined Var(sparc_cpu_and_features) Enum(sparc_processor_type) Init(PROCESSOR_V7) +Use features of and schedule code for given CPU. mtune= -Target RejectNegative Joined -Schedule code for given CPU +Target RejectNegative Joined Var(sparc_cpu) Enum(sparc_processor_type) Init(PROCESSOR_V7) +Schedule code for given CPU. + +Enum +Name(sparc_processor_type) Type(enum processor_type) + +EnumValue +Enum(sparc_processor_type) String(native) Value(PROCESSOR_NATIVE) DriverOnly + +EnumValue +Enum(sparc_processor_type) String(v7) Value(PROCESSOR_V7) + +EnumValue +Enum(sparc_processor_type) String(cypress) Value(PROCESSOR_CYPRESS) + +EnumValue +Enum(sparc_processor_type) String(v8) Value(PROCESSOR_V8) + +EnumValue +Enum(sparc_processor_type) String(supersparc) Value(PROCESSOR_SUPERSPARC) + +EnumValue +Enum(sparc_processor_type) String(hypersparc) Value(PROCESSOR_HYPERSPARC) + +EnumValue +Enum(sparc_processor_type) String(leon) Value(PROCESSOR_LEON) + +EnumValue +Enum(sparc_processor_type) String(leon3) Value(PROCESSOR_LEON3) + +EnumValue +Enum(sparc_processor_type) String(leon3v7) Value(PROCESSOR_LEON3V7) + +EnumValue +Enum(sparc_processor_type) String(sparclite) Value(PROCESSOR_SPARCLITE) + +EnumValue +Enum(sparc_processor_type) String(f930) Value(PROCESSOR_F930) + +EnumValue +Enum(sparc_processor_type) String(f934) Value(PROCESSOR_F934) + +EnumValue +Enum(sparc_processor_type) String(sparclite86x) Value(PROCESSOR_SPARCLITE86X) + +EnumValue +Enum(sparc_processor_type) String(sparclet) Value(PROCESSOR_SPARCLET) + +EnumValue +Enum(sparc_processor_type) String(tsc701) Value(PROCESSOR_TSC701) + +EnumValue +Enum(sparc_processor_type) String(v9) Value(PROCESSOR_V9) + +EnumValue +Enum(sparc_processor_type) String(ultrasparc) Value(PROCESSOR_ULTRASPARC) + +EnumValue +Enum(sparc_processor_type) String(ultrasparc3) Value(PROCESSOR_ULTRASPARC3) + +EnumValue +Enum(sparc_processor_type) String(niagara) Value(PROCESSOR_NIAGARA) + +EnumValue +Enum(sparc_processor_type) String(niagara2) Value(PROCESSOR_NIAGARA2) + +EnumValue +Enum(sparc_processor_type) String(niagara3) Value(PROCESSOR_NIAGARA3) + +EnumValue +Enum(sparc_processor_type) String(niagara4) Value(PROCESSOR_NIAGARA4) + +EnumValue +Enum(sparc_processor_type) String(niagara7) Value(PROCESSOR_NIAGARA7) + +EnumValue +Enum(sparc_processor_type) String(m8) Value(PROCESSOR_M8) mcmodel= Target RejectNegative Joined Var(sparc_cmodel_string) -Use given SPARC-V9 code model +Use given SPARC-V9 code model. + +mdebug= +Target RejectNegative Joined Var(sparc_debug_string) +Enable debug output. mstd-struct-return -Target Report RejectNegative Var(sparc_std_struct_return) +Target Report Var(sparc_std_struct_return) Enable strict 32-bit psABI struct return checking. -Mask(LITTLE_ENDIAN) -;; Generate code for little-endian +mfix-at697f +Target Report RejectNegative Var(sparc_fix_at697f) +Enable workaround for single erratum of AT697F processor +(corresponding to erratum #13 of AT697E processor). + +mfix-ut699 +Target Report RejectNegative Var(sparc_fix_ut699) +Enable workarounds for the errata of the UT699 processor. + +mfix-ut700 +Target Report RejectNegative Var(sparc_fix_ut700) +Enable workarounds for the errata of the UT699E/UT700 processor. + +mfix-gr712rc +Target Report RejectNegative Var(sparc_fix_gr712rc) +Enable workarounds for the errata of the GR712RC processor. + +;; Enable workaround for back-to-back store errata +TargetVariable +unsigned int sparc_fix_b2bst Mask(LONG_DOUBLE_128) ;; Use 128-bit long double +Mask(LEON) +;; Generate code for LEON + +Mask(LEON3) +;; Generate code for LEON3 + Mask(SPARCLITE) ;; Generate code for SPARClite @@ -119,3 +277,25 @@ Mask(DEPRECATED_V8_INSNS) ;; Generate code that uses the V8 instructions deprecated ;; in the V9 architecture. + +mmemory-model= +Target RejectNegative Joined Var(sparc_memory_model) Enum(sparc_memory_model) Init(SMM_DEFAULT) +Specify the memory model in effect for the program. + +Enum +Name(sparc_memory_model) Type(enum sparc_memory_model_type) + +EnumValue +Enum(sparc_memory_model) String(default) Value(SMM_DEFAULT) + +EnumValue +Enum(sparc_memory_model) String(rmo) Value(SMM_RMO) + +EnumValue +Enum(sparc_memory_model) String(pso) Value(SMM_PSO) + +EnumValue +Enum(sparc_memory_model) String(tso) Value(SMM_TSO) + +EnumValue +Enum(sparc_memory_model) String(sc) Value(SMM_SC)