From cb2d2a04083dc812aabb9af7f46b59b014824131 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Tue, 22 Oct 2024 11:26:15 -0700 Subject: [PATCH] Reduce the overheads Signed-off-by: Anton Korobeynikov --- ir/base.def | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ir/base.def b/ir/base.def index 7b77cae1fa..3a90915dec 100644 --- a/ir/base.def +++ b/ir/base.def @@ -313,16 +313,18 @@ class Annotation { /// Annotations described as key-value pairs inline IndexedVector kv; +#emit /// Whether the annotation body needs to be parsed. /// Invariant: if this is true, then expr and kv must both be empty. If the /// annotation is compiler-generated (e.g., derived from a P4₁₄ pragma), /// then needsParsing will be false and the body will be empty, but expr or /// kv may be populated. - bool needsParsing; + bool needsParsing : 1; /// If this is true this is a structured annotation, and there are some /// constraints on its contents. - bool structured; + bool structured : 1; +#end } /// There can be several annotations with the same "name", so this is a vector.