blob: 67fa906429bae840eb235cd80f6af4b83215e757 [file] [log] [blame]
Kristof Umannf1f351c2018-11-02 15:59:37 +00001// RUN: %clang_cc1 -analyzer-config-help 2>&1 | FileCheck %s
Kristof Umanne8df27d2019-05-23 20:47:28 +00002
Kristof Umannf1f351c2018-11-02 15:59:37 +00003// CHECK: OVERVIEW: Clang Static Analyzer -analyzer-config Option List
4//
Kristof Umanne8df27d2019-05-23 20:47:28 +00005// CHECK: USAGE: -analyzer-config <OPTION1=VALUE,OPTION2=VALUE,...>
Kristof Umannf1f351c2018-11-02 15:59:37 +00006//
Kristof Umanne8df27d2019-05-23 20:47:28 +00007// CHECK: -analyzer-config OPTION1=VALUE, -analyzer-config
8// CHECK-SAME: OPTION2=VALUE, ...
Kristof Umannf1f351c2018-11-02 15:59:37 +00009//
10// CHECK: OPTIONS:
11//
12// CHECK: aggressive-binary-operation-simplification
13// CHECK: (bool) Whether SValBuilder should rearrange
14// CHECK: comparisons and additive operations of symbolic
15// CHECK: expressions which consist of a sum of a
16// CHECK: symbol and a concrete integer into the format
17// CHECK: where symbols are on the left-hand side
18// CHECK: and the integer is on the right. This is
19// CHECK: only done if both symbols and both concrete
20// CHECK: integers are signed, greater than or equal
21// CHECK: to the quarter of the minimum value of the
22// CHECK: type and less than or equal to the quarter
Douglas Yungddcb0e42018-11-03 08:51:27 +000023// CHECK: of the maximum value of that type. A
24// CHECK: + n
Kristof Umannf1f351c2018-11-02 15:59:37 +000025// CHECK: <OP> B + m becomes A - B <OP> m - n, where
26// CHECK: A and B symbolic, n and m are integers.
27// CHECK: <OP> is any of '==', '!=', '<', '<=', '>',
28// CHECK: '>=', '+' or '-'. The rearrangement also
29// CHECK: happens with '-' instead of '+' on either
30// CHECK: or both side and also if any or both integers
31// CHECK: are missing. (default: false)