spu.opt revision 1.1.1.1.4.2
1; Options for the SPU port of the compiler 2; Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc. 3 4; This file is free software; you can redistribute it and/or modify it under 5; the terms of the GNU General Public License as published by the Free 6; Software Foundation; either version 3 of the License, or (at your option) 7; any later version. 8 9; This file is distributed in the hope that it will be useful, but WITHOUT 10; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12; for more details. 13; 14; You should have received a copy of the GNU General Public License 15; along with GCC; see the file COPYING3. If not see 16; <http://www.gnu.org/licenses/>. 17 18mwarn-reloc 19Target Report Mask(WARN_RELOC) 20Emit warnings when run-time relocations are generated 21 22merror-reloc 23Target Report Mask(ERROR_RELOC) 24Emit errors when run-time relocations are generated 25 26mbranch-cost= 27Target RejectNegative Joined UInteger Var(spu_branch_cost) Init(20) 28Specify cost of branches (Default 20) 29 30msafe-dma 31Target Report RejectNegative Mask(SAFE_DMA) 32Make sure loads and stores are not moved past DMA instructions 33 34munsafe-dma 35Target Report RejectNegative InverseMask(SAFE_DMA) 36volatile must be specified on any memory that is effected by DMA 37 38mdual-nops 39Target Report Var(spu_dual_nops,10) Init(10) 40Insert nops when it might improve performance by allowing dual issue (default) 41 42mdual-nops= 43Target RejectNegative Joined UInteger Var(spu_dual_nops) 44Insert nops when it might improve performance by allowing dual issue (default) 45 46mstdmain 47Target Report Mask(STD_MAIN) 48Use standard main function as entry for startup 49 50mbranch-hints 51Target Report Mask(BRANCH_HINTS) 52Generate branch hints for branches 53 54mhint-max-nops= 55Target RejectNegative Joined UInteger Var(spu_max_nops) Init(2) 56Maximum number of nops to insert for a hint (Default 2) 57 58mhint-max-distance= 59Target RejectNegative Joined Var(spu_max_distance_str) 60Approximate maximum number of instructions to allow between a hint and its branch [125] 61 62msmall-mem 63Target Report RejectNegative InverseMask(LARGE_MEM) 64Generate code for 18 bit addressing 65 66mlarge-mem 67Target Report RejectNegative Mask(LARGE_MEM) 68Generate code for 32 bit addressing 69 70mfixed-range= 71Target RejectNegative Joined Var(spu_fixed_range_string) 72Specify range of registers to make fixed 73 74msafe-hints 75Target Report Mask(SAFE_HINTS) 76Insert hbrp instructions after hinted branch targets to avoid the SPU hang issue 77 78march= 79Target RejectNegative Joined Var(spu_arch_string) 80Generate code for given CPU 81 82mtune= 83Target RejectNegative Joined Var(spu_tune_string) 84Schedule code for given CPU 85 86mea32 87Target Report RejectNegative Var(spu_ea_model,32) Init(32) 88Access variables in 32-bit PPU objects (default) 89 90mea64 91Target Report RejectNegative Var(spu_ea_model,64) VarExists 92Access variables in 64-bit PPU objects 93 94maddress-space-conversion 95Target Report Mask(ADDRESS_SPACE_CONVERSION) 96Allow conversions between __ea and generic pointers (default) 97 98mcache-size= 99Target Report RejectNegative Joined UInteger 100Size (in KB) of software data cache 101 102matomic-updates 103Target Report 104Atomically write back software data cache lines (default) 105 106