summaryrefslogtreecommitdiff
path: root/scripts/kconfig/expr.h
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2024-09-08 21:43:21 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2024-09-20 09:21:53 +0900
commit95573cac25c6b11f02d599d18e9a1c778706e838 (patch)
tree3659184dcba1d582b845854d326859fdc9048d64 /scripts/kconfig/expr.h
parentf93d6bfbd2f74d79041c153a59df5336f6e9a14a (diff)
kconfig: cache expression values
Cache expression values to avoid recalculating them repeatedly. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/kconfig/expr.h')
-rw-r--r--scripts/kconfig/expr.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/scripts/kconfig/expr.h b/scripts/kconfig/expr.h
index a398b2b2dbe0..21578dcd4292 100644
--- a/scripts/kconfig/expr.h
+++ b/scripts/kconfig/expr.h
@@ -39,12 +39,16 @@ union expr_data {
*
* @node: link node for the hash table
* @type: expressoin type
+ * @val: calculated tristate value
+ * @val_is_valid: indicate whether the value is valid
* @left: left node
* @right: right node
*/
struct expr {
struct hlist_node node;
enum expr_type type;
+ tristate val;
+ bool val_is_valid;
union expr_data left, right;
};