================ @@ -58,6 +60,22 @@ class GlobalTy { void setPtr(void *P) { Ptr = P; } }; +typedef void *IntPtrT; +struct __llvm_profile_data { +#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer) Type Name; +#include "llvm/ProfileData/InstrProfData.inc" +}; + +/// PGO profiling data extracted from a GPU device +struct GPUProfGlobals { + std::string names; + std::vector<std::vector<int64_t>> counts; + std::vector<__llvm_profile_data> data; + Triple targetTriple; + ---------------- EthanLuisMcDonough wrote:
I can't seem to use `SmallVector` for `__llvm_profile_data` because many of its defined fields are const qualified and it needs an assignment operator definition. I'm able to use `std::remove_const`, but that feels kind of hack-y. Not sure if the best solution is to use `std::vector`, `std::remove_const`, or remove the const qualifiers in [InstrProfData.inc](https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/ProfileData/InstrProfData.inc). https://github.com/llvm/llvm-project/pull/76587 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits