sdmitriev marked an inline comment as done.
sdmitriev added inline comments.
================
Comment at: clang/tools/clang-offload-wrapper/ClangOffloadWrapper.cpp:74
+ IntegerType *getSizeTTy() {
+ switch (M.getDataLayout().getPointerTypeSize(Type::getInt8PtrTy(C))) {
+ case 4u:
----------------
grokos wrote:
> sdmitriev wrote:
> > ABataev wrote:
> > > sdmitriev wrote:
> > > > ABataev wrote:
> > > > > Same question as before: maybe better to make the size of size_t type
> > > > > a parameter of a tool?
> > > > As I remember you also had another suggestion - change size_t to
> > > > intptr_t. That will eliminate the need to an additional parameter for
> > > > size type. Will it be better?
> > > In thi case we'll need to change the type in the libomptarget.
> > Right. @grokos , do you see any potential problems in changing
> > __tgt_offload_entry::size type from size_t to intptr_t?
> As long as `intptr_t` has the same size as `size_t` it should be fine. Of
> course, if this is not the case, then if libomptarget tries to load an older
> image where `sizeof(__tgt_offload_entry::size) != sizeof(intptr_t)` then
> backwards compatibility will have been broken. Fortunately, on all platforms
> supported by released versions of libomptarget so far (x86_64, ppc64,
> aarch64) if I'm not mistaken `sizeof(size_t) == sizeof(initptr_t)`, so I
> don't think we'll break anything.
@ABataev, as I understand clang CG assumes that intptr_t, size_t, and ptrdiff_t
are the same types.
Please look at clang/lib/CodeGen/CodeGenTypeCache.h, lines 44-49
```
/// intptr_t, size_t, and ptrdiff_t, which we assume are the same size.
union {
llvm::IntegerType *IntPtrTy;
llvm::IntegerType *SizeTy;
llvm::IntegerType *PtrDiffTy;
};
```
So, I guess what we have here is Ok.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D68746/new/
https://reviews.llvm.org/D68746
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits