[PATCH] D36819: [XRay][tools] Support new kinds of instrumentation map entries

Dean Michael Berris via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 20 17:14:16 PDT 2017


dberris marked an inline comment as done.
dberris added inline comments.


================
Comment at: lib/XRay/InstrumentationMap.cpp:104-108
     static constexpr SledEntry::FunctionKinds Kinds[] = {
         SledEntry::FunctionKinds::ENTRY, SledEntry::FunctionKinds::EXIT,
         SledEntry::FunctionKinds::TAIL,
-    };
+        SledEntry::FunctionKinds::LOG_ARGS_ENTER,
+        SledEntry::FunctionKinds::CUSTOM_EVENT};
----------------
kpw wrote:
> It makes me sad that I couldn't find a good way to do this without duplicating the enum definitions.
> Why can't the stdlib define something like:
> 
>   template<underlying_t_value, enum_class_t>
>   struct is_enumerated {
>       static const bool value = <whether there is a value in the enum class defined for underlying_t_value>;
>   };
> 
> Even exploring TMP necromancy didn't make it much better :(
Yeah, unfortunately we're going to have to wait for static reflection in C++ to be able to "properly" do this.


https://reviews.llvm.org/D36819





More information about the llvm-commits mailing list