diff options
Diffstat (limited to 'config/cc')
-rw-r--r-- | config/cc/gcc.in.2 | 12 | ||||
-rw-r--r-- | config/cc/gcc.in.mips | 34 |
2 files changed, 46 insertions, 0 deletions
diff --git a/config/cc/gcc.in.2 b/config/cc/gcc.in.2 index 6fbc39a..6071135 100644 --- a/config/cc/gcc.in.2 +++ b/config/cc/gcc.in.2 @@ -249,3 +249,15 @@ config CC_GCC_LNK_HASH_STYLE default "sysv" if CC_GCC_LNK_HASH_STYLE_SYSV default "gnu" if CC_GCC_LNK_HASH_STYLE_GNU default "both" if CC_GCC_LNK_HASH_STYLE_BOTH + +#----------------------------------------------------------------------------- + +config CC_GCC_HAS_ARCH_OPTIONS + bool + +comment "archictecture-specific options" + depends on CC_GCC_HAS_ARCH_OPTIONS + +if ARCH_mips +source "config/cc/gcc.in.mips" +endif # ARCH_mips diff --git a/config/cc/gcc.in.mips b/config/cc/gcc.in.mips new file mode 100644 index 0000000..71fb69a --- /dev/null +++ b/config/cc/gcc.in.mips @@ -0,0 +1,34 @@ +# MIPS specific options for gcc + +config CC_GCC_HAS_ARCH_OPTIONS + default y + +config CC_GCC_mips_llsc + tristate + prompt "Use llsc" + default m + help + This configures how gcc will emit load-link, store-conditional and + sync opcodes. Normally, you'd set this to 'M', and configure will do + the correct thing (ie. enable llsc for Linux-based targets, disable + for others). If you know better, you can force either using llsc or + not using it (resp. 'Y' or 'N'). + +config CC_GCC_mips_synci + tristate + prompt "Use synci" + default m + help + This configures how gcc will emit the synci opcode. Normally, you'd + set this to 'M', and configure will do the correct thing (ie. disable). + If you know better, you can force using synci (say 'Y'), or not using + it (say 'N'). + +config CC_GCC_mips_plt + bool + prompt "Use copy relocations & PLTs" + help + This configures gcc to use copy relocations & PLTs. These are + extensions to the traditional SVR4-based MIPS ABIs and require + support from GNU binutils and the runtime C library. + Say 'N' to keep the default and not use them, say 'Y' to use them. |