1169689Skan; Options for the ARM port of the compiler. 2169689Skan 3169689Skan; Copyright (C) 2005 Free Software Foundation, Inc. 4169689Skan; 5169689Skan; This file is part of GCC. 6169689Skan; 7169689Skan; GCC is free software; you can redistribute it and/or modify it under 8169689Skan; the terms of the GNU General Public License as published by the Free 9169689Skan; Software Foundation; either version 2, or (at your option) any later 10169689Skan; version. 11169689Skan; 12169689Skan; GCC is distributed in the hope that it will be useful, but WITHOUT ANY 13169689Skan; WARRANTY; without even the implied warranty of MERCHANTABILITY or 14169689Skan; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15169689Skan; for more details. 16169689Skan; 17169689Skan; You should have received a copy of the GNU General Public License 18169689Skan; along with GCC; see the file COPYING. If not, write to the Free 19169689Skan; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 20169689Skan; 02110-1301, USA. 21169689Skan 22169689Skanmabi= 23169689SkanTarget RejectNegative Joined Var(target_abi_name) 24169689SkanSpecify an ABI 25169689Skan 26169689Skanmabort-on-noreturn 27169689SkanTarget Report Mask(ABORT_NORETURN) 28169689SkanGenerate a call to abort if a noreturn function returns 29169689Skan 30169689Skanmapcs 31169689SkanTarget RejectNegative Mask(APCS_FRAME) MaskExists Undocumented 32169689Skan 33169689Skanmapcs-float 34169689SkanTarget Report Mask(APCS_FLOAT) 35169689SkanPass FP arguments in FP registers 36169689Skan 37169689Skanmapcs-frame 38169689SkanTarget Report Mask(APCS_FRAME) 39169689SkanGenerate APCS conformant stack frames 40169689Skan 41169689Skanmapcs-reentrant 42169689SkanTarget Report Mask(APCS_REENT) 43169689SkanGenerate re-entrant, PIC code 44169689Skan 45169689Skanmapcs-stack-check 46169689SkanTarget Report Mask(APCS_STACK) Undocumented 47169689Skan 48169689Skanmarch= 49169689SkanTarget RejectNegative Joined 50169689SkanSpecify the name of the target architecture 51169689Skan 52169689Skanmarm 53169689SkanTarget RejectNegative InverseMask(THUMB) Undocumented 54169689Skan 55169689Skanmbig-endian 56169689SkanTarget Report RejectNegative Mask(BIG_END) 57169689SkanAssume target CPU is configured as big endian 58169689Skan 59169689Skanmcallee-super-interworking 60169689SkanTarget Report Mask(CALLEE_INTERWORKING) 61169689SkanThumb: Assume non-static functions may be called from ARM code 62169689Skan 63169689Skanmcaller-super-interworking 64169689SkanTarget Report Mask(CALLER_INTERWORKING) 65169689SkanThumb: Assume function pointers may go to non-Thumb aware code 66169689Skan 67169689Skanmcirrus-fix-invalid-insns 68169689SkanTarget Report Mask(CIRRUS_FIX_INVALID_INSNS) 69169689SkanCirrus: Place NOPs to avoid invalid instruction combinations 70169689Skan 71169689Skanmcpu= 72169689SkanTarget RejectNegative Joined 73169689SkanSpecify the name of the target CPU 74169689Skan 75169689Skanmfloat-abi= 76169689SkanTarget RejectNegative Joined Var(target_float_abi_name) 77169689SkanSpecify if floating point hardware should be used 78169689Skan 79169689Skanmfp= 80169689SkanTarget RejectNegative Joined Undocumented Var(target_fpe_name) 81169689Skan 82169689Skan;; Now ignored. 83169689Skanmfpe 84169689SkanTarget RejectNegative Mask(FPE) Undocumented 85169689Skan 86169689Skanmfpe= 87169689SkanTarget RejectNegative Joined Undocumented Var(target_fpe_name) 88169689Skan 89169689Skanmfpu= 90169689SkanTarget RejectNegative Joined Var(target_fpu_name) 91169689SkanSpecify the name of the target floating point hardware/format 92169689Skan 93169689Skanmhard-float 94169689SkanTarget RejectNegative 95169689SkanAlias for -mfloat-abi=hard 96169689Skan 97169689Skanmlittle-endian 98169689SkanTarget Report RejectNegative InverseMask(BIG_END) 99169689SkanAssume target CPU is configured as little endian 100169689Skan 101169689Skanmlong-calls 102169689SkanTarget Report Mask(LONG_CALLS) 103169689SkanGenerate call insns as indirect calls, if necessary 104169689Skan 105169689Skanmpic-register= 106169689SkanTarget RejectNegative Joined Var(arm_pic_register_string) 107169689SkanSpecify the register to be used for PIC addressing 108169689Skan 109169689Skanmpoke-function-name 110169689SkanTarget Report Mask(POKE_FUNCTION_NAME) 111169689SkanStore function names in object code 112169689Skan 113169689Skanmsched-prolog 114169689SkanTarget Report Mask(SCHED_PROLOG) 115169689SkanPermit scheduling of a function's prologue sequence 116169689Skan 117169689Skanmsingle-pic-base 118169689SkanTarget Report Mask(SINGLE_PIC_BASE) 119169689SkanDo not load the PIC register in function prologues 120169689Skan 121169689Skanmsoft-float 122169689SkanTarget RejectNegative 123169689SkanAlias for -mfloat-abi=soft 124169689Skan 125169689Skanmstructure-size-boundary= 126169689SkanTarget RejectNegative Joined Var(structure_size_string) 127169689SkanSpecify the minimum bit alignment of structures 128169689Skan 129169689Skanmthumb 130169689SkanTarget Report Mask(THUMB) 131169689SkanCompile for the Thumb not the ARM 132169689Skan 133169689Skanmthumb-interwork 134169689SkanTarget Report Mask(INTERWORK) 135169689SkanSupport calls between Thumb and ARM instruction sets 136169689Skan 137169689Skanmtp= 138169689SkanTarget RejectNegative Joined Var(target_thread_switch) 139169689SkanSpecify how to access the thread pointer 140169689Skan 141169689Skanmtpcs-frame 142169689SkanTarget Report Mask(TPCS_FRAME) 143169689SkanThumb: Generate (non-leaf) stack frames even if not needed 144169689Skan 145169689Skanmtpcs-leaf-frame 146169689SkanTarget Report Mask(TPCS_LEAF_FRAME) 147169689SkanThumb: Generate (leaf) stack frames even if not needed 148169689Skan 149169689Skanmtune= 150169689SkanTarget RejectNegative Joined 151169689SkanTune code for the given processor 152169689Skan 153169689Skanmwords-little-endian 154169689SkanTarget Report RejectNegative Mask(LITTLE_WORDS) 155169689SkanAssume big endian bytes, little endian words 156