From 6d308e11295d4a55375bfc97877fc5f1dda1f908 Mon Sep 17 00:00:00 2001 From: krcroft Date: Tue, 7 Apr 2020 12:12:27 -0700 Subject: [PATCH] Append to lists to avoid clobbering --- scripts/automator/build/clang-darwin_x86_64 | 5 +++++ scripts/automator/build/clang-defaults | 2 +- scripts/automator/build/clang-linux_x86_64 | 2 +- scripts/automator/build/gcc-darwin_x86_64 | 4 ++-- scripts/automator/build/gcc-defaults | 3 ++- scripts/automator/build/gcc-linux_x86_64 | 4 ++-- scripts/automator/build/machine-x86_64 | 5 +++-- 7 files changed, 16 insertions(+), 9 deletions(-) diff --git a/scripts/automator/build/clang-darwin_x86_64 b/scripts/automator/build/clang-darwin_x86_64 index a788cc40..2f4072a8 100644 --- a/scripts/automator/build/clang-darwin_x86_64 +++ b/scripts/automator/build/clang-darwin_x86_64 @@ -1,8 +1,13 @@ ld="ld" +# OS-and-processor customizations +cflags_release+=(-march=nehalem) + +# Build additions TYPES+=(msan usan) cflags_msan=("${cflags_debug[@]}" -fsanitize-recover=all -fsanitize=memory -fno-omit-frame-pointer) cflags_usan=("${cflags_debug[@]}" -fsanitize-recover=all -fsanitize=undefined) +# Modifier additions MODIFIERS+=(lto) cflags_lto=(-flto=thin) diff --git a/scripts/automator/build/clang-defaults b/scripts/automator/build/clang-defaults index d9e111a4..e36c2753 100644 --- a/scripts/automator/build/clang-defaults +++ b/scripts/automator/build/clang-defaults @@ -24,4 +24,4 @@ cflags_optinfo+=("${cflags_release[@]}" -Rpass-analysis=loop-vectorize # Modifier additions MODIFIERS=(fdo) -cflags_fdo=("-fprofile-sample-use=${FDO_FILE:-${repo_root}/current.afdo}") +cflags_fdo+=("-fprofile-sample-use=${FDO_FILE:-${repo_root}/current.afdo}") diff --git a/scripts/automator/build/clang-linux_x86_64 b/scripts/automator/build/clang-linux_x86_64 index e30db1fc..6a6370e3 100644 --- a/scripts/automator/build/clang-linux_x86_64 +++ b/scripts/automator/build/clang-linux_x86_64 @@ -10,4 +10,4 @@ cflags_usan=("${cflags_debug[@]}" -fsanitize-recover=all -fsanitize=undefined) # Modifier additions MODIFIERS+=(lto) -cflags_lto=(-O2 -flto=thin) +cflags_lto+=(-O2 -flto=thin) diff --git a/scripts/automator/build/gcc-darwin_x86_64 b/scripts/automator/build/gcc-darwin_x86_64 index 2fd3ed0f..ab1e4320 100644 --- a/scripts/automator/build/gcc-darwin_x86_64 +++ b/scripts/automator/build/gcc-darwin_x86_64 @@ -16,5 +16,5 @@ cflags_tsan=("${cflags_debug[@]}" -fsanitize=thread) # Modifier additions MODIFIERS+=(lto) -cflags_lto=(-flto) -ldflags_lto=("${cflags[@]}" -flto) +cflags_lto+=(-flto) +ldflags_lto+=("${cflags[@]}" -flto) diff --git a/scripts/automator/build/gcc-defaults b/scripts/automator/build/gcc-defaults index d85e1110..68b3a3ea 100644 --- a/scripts/automator/build/gcc-defaults +++ b/scripts/automator/build/gcc-defaults @@ -31,4 +31,5 @@ cflags_optinfo+=("${cflags_release[@]}" -fopt-info-missed # Modifier additions MODIFIERS=(fdo) # Override the prior optimization flag because O2 does better w/ feedback -cflags_fdo=("-O2 -fauto-profile=${FDO_FILE:-${repo_root}/current.afdo}") +cflags_fdo+=("-O2 -ftree-vectorize + -fauto-profile=${FDO_FILE:-${repo_root}/current.afdo}") diff --git a/scripts/automator/build/gcc-linux_x86_64 b/scripts/automator/build/gcc-linux_x86_64 index 2bac8d51..215ed739 100644 --- a/scripts/automator/build/gcc-linux_x86_64 +++ b/scripts/automator/build/gcc-linux_x86_64 @@ -15,5 +15,5 @@ cflags_tsan=("${cflags_debug[@]}" -fsanitize=thread) # Modifier additions MODIFIERS+=(lto) -cflags_lto=(-flto) -ldflags_lto=("${cflags[@]}" "-flto=$(( $(nproc) + 2 ))") +cflags_lto+=(-flto) +ldflags_lto+=("${cflags[@]}" "-flto=$(( $(nproc) + 2 ))") diff --git a/scripts/automator/build/machine-x86_64 b/scripts/automator/build/machine-x86_64 index 7d84d332..4cf70a5c 100644 --- a/scripts/automator/build/machine-x86_64 +++ b/scripts/automator/build/machine-x86_64 @@ -1,3 +1,4 @@ -# Modifier additions universal for gcc and clang, but specific to x86_64: +# Universal additions for gcc and clang, but specific to x86_64: + MODIFIERS+=(native) -cflags_native=(-march=native) +cflags_native+=(-march=native)