; Options for the OR1K port of the compiler ; This file is part of GCC. ; ; Copyright (C) 2010 Embecosm Limited ; ; 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 ; Software Foundation; either version 3, or (at your option) any later ; version. ; ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY ; WARRANTY; without even the implied warranty of MERCHANTABILITY or ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ; for more details. ; ; You should have received a copy of the GNU General Public License ; along with GCC; see the file COPYING3. If not see ; . HeaderInclude config/or1k/or1k-opts.h Variable enum or1k_delay or1k_delay_selected = OR1K_DELAY_DEFAULT mdelay Target RejectNegative Negative(mno-delay) Var(or1k_delay_selected, OR1K_DELAY_ON) Assume branches and jumps have a delay slot mno-delay Target RejectNegative Negative(mcompat-delay) Var(or1k_delay_selected, OR1K_DELAY_OFF) Assume branches and jumps do not have a delay slot mcompat-delay Target RejectNegative Negative(mdelay) Var(or1k_delay_selected, OR1K_DELAY_COMPAT) Assume branches and jumps have a delay slot, but fill them with nops mhard-float Target RejectNegative Mask(HARD_FLOAT) Use hardware floating point msoft-float Target RejectNegative InverseMask(HARD_FLOAT) Do not use hardware floating point mdouble-float Target Report RejectNegative Mask(DOUBLE_FLOAT) Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations mhard-div Target RejectNegative Mask(HARD_DIV) Use hardware division msoft-div Target RejectNegative InverseMask(HARD_DIV) Do not use hardware division mhard-mul Target RejectNegative Mask(HARD_MUL) Use hardware multiplication msoft-mul Target RejectNegative InverseMask(HARD_MUL) Do not use hardware multiplication msext Target Mask(MASK_SEXT) Use sign-extending instructions mcmov Target Mask(MASK_CMOV) Use conditional move instructions mror Target Mask(MASK_ROR) Emit ROR instructions mboard= Target RejectNegative Joined Link with libgloss configuration suitable for this board mnewlib Target Report RejectNegative Compile for the Linux/Gnu/newlib based toolchain ;; provide struct padding as in previous releases. ;; Note that this will only affect STRUCTURE_SIZE_BOUNDARY, in particular ;; make 2 byte structs 4-byte alignned and sized. ;; We still use ROUND_TYPE_ALIGN to increase alignment of larger structs. mpadstruct Target Report RejectNegative Mask(PADSTRUCT) Make structs a multiple of 4 bytes (warning: ABI altered) mredzone= Target RejectNegative Joined UInteger Var(or1k_redzone) Init(128) Set the size of the stack below sp that is assumed to be safe from interrupts.