-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig_definitions.sh
More file actions
23 lines (20 loc) · 1.22 KB
/
config_definitions.sh
File metadata and controls
23 lines (20 loc) · 1.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# config_definitions.sh
# This file defines the available memcached build configurations and their specific compiler flags.
# It is intended to be sourced by other scripts.
# List of available configuration types.
# Key is the configuration name, value is additional -mllvm flags (if any).
# For 'orig' and 'tsan' (basic TSan), the value is a special marker.
declare -A CONFIG_DETAILS
CONFIG_DETAILS["orig"]="FLAGS_COMMON_BASE" # Special marker for regular flags
CONFIG_DETAILS["tsan"]="FLAGS_TSAN_BASE" # Special marker for basic TSan flags
CONFIG_DETAILS["tsan-lo"]="-mllvm -tsan-use-lock-ownership"
#CONFIG_DETAILS["tsan-loub"]="-mllvm -tsan-use-lock-ownership-upperbound"
CONFIG_DETAILS["tsan-st"]="-mllvm -tsan-use-single-threaded"
CONFIG_DETAILS["tsan-stmt"]="-mllvm -tsan-use-active-thread-count"
CONFIG_DETAILS["tsan-swmr"]="-mllvm -tsan-use-swmr"
CONFIG_DETAILS["tsan-ea"]="-mllvm -tsan-use-escape-analysis-global"
CONFIG_DETAILS["tsan-dom"]="-mllvm -tsan-use-dominance-analysis"
CONFIG_DETAILS["tsan-dom_peeling"]="-mllvm -tsan-use-dominance-analysis -mllvm -tsan-use-loop-peeling=true"
# You can add more configurations here following the same pattern.
# Example:
# CONFIG_DETAILS["tsan-new-opt"]="-mllvm -tsan-new-optimization-flag"