This patch moves directive sets defined internally in Semantics to a header accessible by other stages of the compiler to enable reuse. Some sets are renamed/rearranged and others are lifted from local definitions to provide a single source of truth.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
This looks OK. The only concern is whether we will lose the ability to inline the code for set membership. Can these sets be put in a header file with inline constexpr?
Comment Actions
Thank you for the suggestion. It's not possible to declare these as constexpr because EnumSet::set, called by the constructor, is not constexpr as well. But I have made them const inline and defined them in the header file. I hope that addresses your concerns.