diff options
author | Alexey Brodkin <abrodkin@synopsys.com> | 2015-07-16 21:45:38 +0300 |
---|---|---|
committer | Vineet Gupta <vgupta@synopsys.com> | 2015-07-20 13:33:30 +0300 |
commit | d05a76ab4d9ece9bd987a8c29e3f384ec9f7b211 (patch) | |
tree | 9d9dd4e73a0836a2702f98372bdb063341a01a6c /arch/arc | |
parent | aeec6cdad6cda5fdf26f937c0d15f101539d8185 (diff) | |
download | op-kernel-dev-d05a76ab4d9ece9bd987a8c29e3f384ec9f7b211.zip op-kernel-dev-d05a76ab4d9ece9bd987a8c29e3f384ec9f7b211.tar.gz |
ARCv2: add knob for DIV_REV in Kconfig
Being highly configurable core ARC HS among other features might be
configured with or without DIV_REM_OPTION (hardware divider).
That option when enabled adds following instructions: div, divu, rem, remu.
By default ARC HS38 has this option enabled. So we add here possibility
to disable usage of hardware divider by compiler.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r-- | arch/arc/Kconfig | 4 | ||||
-rw-r--r-- | arch/arc/Makefile | 10 |
2 files changed, 13 insertions, 1 deletions
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig index 91cf405..f7cfa7d 100644 --- a/arch/arc/Kconfig +++ b/arch/arc/Kconfig @@ -379,6 +379,10 @@ config ARC_HAS_LL64 dest operands with 2 possible source operands. default y +config ARC_HAS_DIV_REM + bool "Insn: div, divu, rem, remu" + default y + config ARC_HAS_RTC bool "Local 64-bit r/o cycle counter" default n diff --git a/arch/arc/Makefile b/arch/arc/Makefile index 46d8731..8a27a48 100644 --- a/arch/arc/Makefile +++ b/arch/arc/Makefile @@ -36,8 +36,16 @@ cflags-$(atleast_gcc44) += -fsection-anchors cflags-$(CONFIG_ARC_HAS_LLSC) += -mlock cflags-$(CONFIG_ARC_HAS_SWAPE) += -mswape +ifdef CONFIG_ISA_ARCV2 + ifndef CONFIG_ARC_HAS_LL64 -cflags-$(CONFIG_ISA_ARCV2) += -mno-ll64 +cflags-y += -mno-ll64 +endif + +ifndef CONFIG_ARC_HAS_DIV_REM +cflags-y += -mno-div-rem +endif + endif cflags-$(CONFIG_ARC_DW2_UNWIND) += -fasynchronous-unwind-tables |