diff options
author | Nick Desaulniers <ndesaulniers@google.com> | 2020-02-14 14:18:11 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-06-04 19:28:07 -0700 |
commit | 587f17018a2c6c414e41a312b002faaef60cf423 (patch) | |
tree | 881d00bb7269848b4601dd62baf5186e819e52de /init | |
parent | 886d7de631da71e30909980fdbf318f7caade262 (diff) | |
download | linux-587f17018a2c6c414e41a312b002faaef60cf423.tar.bz2 |
Kconfig: add config option for asm goto w/ outputs
This allows C code to make use of compilers with support for output
variables along the fallthrough path via preprocessor define:
CONFIG_CC_HAS_ASM_GOTO_OUTPUT
[ This is not used anywhere yet, and currently released compilers don't
support this yet, but it's coming, and I have some local experimental
patches to take advantage of it when it does - Linus ]
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/init/Kconfig b/init/Kconfig index 2d12d38cdd88..b5294bcba61d 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -36,6 +36,10 @@ config CC_CAN_LINK config CC_HAS_ASM_GOTO def_bool $(success,$(srctree)/scripts/gcc-goto.sh $(CC)) +config CC_HAS_ASM_GOTO_OUTPUT + depends on CC_HAS_ASM_GOTO + def_bool $(success,echo 'int foo(int x) { asm goto ("": "=r"(x) ::: bar); return x; bar: return 0; }' | $(CC) -x c - -c -o /dev/null) + config TOOLS_SUPPORT_RELR def_bool $(success,env "CC=$(CC)" "LD=$(LD)" "NM=$(NM)" "OBJCOPY=$(OBJCOPY)" $(srctree)/scripts/tools-support-relr.sh) |