[Openmp-commits] [PATCH] D51623: [libomptarget] PR38704: Fix erase of ShadowPtrMap
Jonas Hahnfeld via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Tue Sep 4 10:43:04 PDT 2018
Hahnfeld added a comment.
In https://reviews.llvm.org/D51623#1223437, @sdmitriev wrote:
> Not related to this patch, but I think there is one more potentially incorrect use of containers in RTLsTy::RegisterLib(). This function may increase size of the global vector Devices when it initializes a new RTL that has not been yet used (see rtl.cpp line 219). This may result in memory reallocation and thus all pointers to the Devices elements that are stored in RTLs (see rtl.cpp line 228) would become invalid. I am not sure if these pointers are really used by RTLs now, but if yes, than it is a problem. RTLsTy::RegisterLib may be called more than once and each call may potentially initialize new RTLs.
Hehe, turns out: Yes and no!
Yes, this is undoubtly incorrect. But no, this can never happen because nobody is accessing the `RTLInfoTy::Devices` :D
Do you want to submit a patch removing `Devices` from `RTLInfoTy`?
More information about the Openmp-commits