diff options
author | Dan Willemsen <dwillemsen@google.com> | 2015-11-03 14:27:00 -0800 |
---|---|---|
committer | Dan Willemsen <dwillemsen@google.com> | 2015-11-03 14:30:12 -0800 |
commit | 6d11dd87c02fe078dd23832ac9aee61781683184 (patch) | |
tree | 1bcdbeb9013c7f0a7ecaac1a1f54f48e36bf602d /cc/arm_device.go | |
parent | 6d27f3428e1e452b935e55f576e37bafb80de4ab (diff) | |
download | build_soong-6d11dd87c02fe078dd23832ac9aee61781683184.tar.gz build_soong-6d11dd87c02fe078dd23832ac9aee61781683184.tar.bz2 build_soong-6d11dd87c02fe078dd23832ac9aee61781683184.zip |
cc: Filter out unknown clang cflags from InstructionSetFlags
-funswitch-loops is in the arm instruction set flags, but unsupported by
clang. Make removes clang unknown cflags from the instruction set flags.
This was producing a warning, causing -Werror to fail on libm.
Change-Id: Ibc69c9af04a738aa8adeb5549900e2b53ab754f0
Diffstat (limited to 'cc/arm_device.go')
-rw-r--r-- | cc/arm_device.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/cc/arm_device.go b/cc/arm_device.go index ce8a1cb8..8f3485e3 100644 --- a/cc/arm_device.go +++ b/cc/arm_device.go @@ -172,6 +172,10 @@ func init() { pctx.StaticVariable("armClangLdflags", strings.Join(clangFilterUnknownCflags(armLdflags), " ")) pctx.StaticVariable("armClangCppflags", strings.Join(clangFilterUnknownCflags(armCppflags), " ")) + // Clang ARM vs. Thumb instruction set cflags + pctx.StaticVariable("armClangArmCflags", strings.Join(clangFilterUnknownCflags(armArmCflags), " ")) + pctx.StaticVariable("armClangThumbCflags", strings.Join(clangFilterUnknownCflags(armThumbCflags), " ")) + // Clang cpu variant cflags pctx.StaticVariable("armClangArmv5TECflags", strings.Join(armClangArchVariantCflags["armv5te"], " ")) @@ -291,6 +295,17 @@ func (t *toolchainArm) ClangLdflags() string { return t.ldflags } +func (t *toolchainArm) ClangInstructionSetFlags(isa string) (string, error) { + switch isa { + case "arm": + return "${armClangArmCflags}", nil + case "thumb", "": + return "${armClangThumbCflags}", nil + default: + return t.toolchainBase.ClangInstructionSetFlags(isa) + } +} + func armToolchainFactory(archVariant string, cpuVariant string) Toolchain { var fixCortexA8 string switch cpuVariant { |